/* Tema global: sistema, claro e escuro.
   Mantem uma unica paleta por modo e reaproveita variaveis que CSS/JS ja usam. */

:root,
html[data-theme="light"] {
  --theme-bg: #f6f8fb;
  --theme-bg-soft: #eef3f7;
  --theme-surface: #ffffff;
  --theme-surface-soft: #f8fafc;
  --theme-elevated: #ffffff;
  --theme-border: #d9e2ea;
  --theme-text: #0f172a;
  --theme-text-muted: #64748b;
  --theme-text-strong: #020617;
  --theme-nav-bg: #ffffff;
  --theme-nav-text: #0f172a;
  --theme-shadow: 0 1.6rem 4rem rgba(15, 23, 42, 0.1);
  --theme-accent: #008c9e;
  --theme-accent-hover: #006f7d;
  --theme-accent-strong: #005a66;
  --theme-accent-soft: rgba(0, 140, 158, 0.12);
  --theme-price-badge: #9f1239;
  --theme-selected: #047857;
  --theme-warning-bg: #fff7ed;
  --theme-warning-text: #9a5d24;
  --theme-success: #059669;
  --theme-danger: #dc2626;

  --bg-branco: var(--theme-bg);
  --bg-cinza-claro: var(--theme-bg-soft);
  --bg-preto: var(--theme-nav-bg);
  --cor-texto: var(--theme-text);
  --cor-texto-mutado: var(--theme-text-muted);
  --cor-primaria: var(--theme-accent);
  --cor-primaria-hover: var(--theme-accent-hover);
  --cor-erro: var(--theme-danger);
  --cor-sucesso: var(--theme-success);
  --cor-borda: var(--theme-border);

  --bg-main: var(--theme-bg);
  --bg-card: var(--theme-surface);
  --bg-card-hover: var(--theme-surface-soft);
  --text-white: var(--theme-text);
  --text-muted: var(--theme-text-muted);
  --color-primary: var(--theme-accent);
  --color-primary-hover: var(--theme-accent-hover);
  --color-price-badge: var(--theme-price-badge);
  --color-selected: var(--theme-selected);
  --border-color: var(--theme-border);

  --bg-surface: var(--theme-surface);
  --bg-deep: var(--theme-bg);
  --bg-highlight: var(--theme-surface-soft);
  --bg-secondary: var(--theme-bg-soft);
  --bg-hover: var(--theme-surface-soft);
  --bg-active: var(--theme-accent-soft);
  --text-main: var(--theme-text);
  --text-primary: var(--theme-text);
  --text-secondary: var(--theme-text-muted);
  --text-light: #ffffff;
  --text-link: var(--theme-accent);
  --text-success: var(--theme-success);
  --primary: var(--theme-accent);
  --accent: var(--theme-price-badge);
  --success: var(--theme-success);
  --border-light: var(--theme-border);
  --border-medium: var(--theme-border);
  --border-focus: var(--theme-accent);
  --primary-color: var(--theme-accent);
  --primary-hover: var(--theme-accent-hover);
  --shadow-sm: 0 0.4rem 1.2rem rgba(15, 23, 42, 0.06);
  --shadow-md: 0 1rem 2.8rem rgba(15, 23, 42, 0.08);
  --shadow-hover: 0 1.2rem 2.8rem rgba(0, 140, 158, 0.12);

  --bg-pagina: var(--theme-bg);
  --bg-elemento: var(--theme-surface);
  --texto-principal: var(--theme-text);
  --texto-titulo: var(--theme-text-strong);
  --texto-secundario: var(--theme-text-muted);
  --cor-destaque: var(--theme-accent);
  --borda: var(--theme-border);
  --aviso-fundo: var(--theme-warning-bg);
  --aviso-ouro: var(--theme-warning-text);

  --gc-control-bg: var(--theme-surface);
  --gc-control-text: var(--theme-text);
  --gc-control-border: var(--theme-border);
  --gc-control-selected-bg: var(--theme-surface);
  --gc-control-selected-border: var(--theme-accent);
  --gc-control-selected-text: var(--theme-accent-strong);
  --gc-gender-selected-bg: #005a66;
  --gc-gender-selected-text: #ffffff;
  --gc-gender-idle-bg: var(--theme-surface);
  --gc-gender-idle-text: var(--theme-accent-strong);
  --gc-gender-muted-bg: var(--theme-surface-soft);
  --gc-gender-muted-text: var(--theme-text-muted);
  --gc-choice-selected-bg: var(--theme-surface);
  --gc-choice-selected-border: var(--theme-success);
  --gc-choice-selected-text: var(--theme-success);
  --gc-choice-text: var(--theme-text);
  --gc-choice-border: var(--theme-border);
  --gc-range-fill: var(--theme-success);
  --gc-range-rest: #9aeba3;
}

html[data-theme="dark"] {
  --theme-bg: #0f1117;
  --theme-bg-soft: #151821;
  --theme-surface: #191d27;
  --theme-surface-soft: #202636;
  --theme-elevated: #1d2230;
  --theme-border: rgba(226, 232, 240, 0.14);
  --theme-text: #e8edf5;
  --theme-text-muted: #a7b0c0;
  --theme-text-strong: #ffffff;
  --theme-nav-bg: #111010;
  --theme-nav-text: #f8fafc;
  --theme-shadow: 0 2.2rem 5rem rgba(0, 0, 0, 0.42);
  --theme-accent: #00bcd4;
  --theme-accent-hover: #0097a7;
  --theme-accent-strong: #67e8f9;
  --theme-accent-soft: rgba(0, 188, 212, 0.16);
  --theme-price-badge: #be185d;
  --theme-selected: #10b981;
  --theme-warning-bg: rgba(251, 146, 60, 0.1);
  --theme-warning-text: #fb923c;
  --theme-success: #10b981;
  --theme-danger: #f87171;

  --bg-branco: var(--theme-bg);
  --bg-cinza-claro: var(--theme-bg-soft);
  --bg-preto: var(--theme-nav-bg);
  --cor-texto: var(--theme-text);
  --cor-texto-mutado: var(--theme-text-muted);
  --cor-primaria: var(--theme-accent);
  --cor-primaria-hover: var(--theme-accent-hover);
  --cor-erro: var(--theme-danger);
  --cor-sucesso: var(--theme-success);
  --cor-borda: var(--theme-border);

  --bg-main: var(--theme-bg);
  --bg-card: var(--theme-surface);
  --bg-card-hover: var(--theme-surface-soft);
  --text-white: var(--theme-text);
  --text-muted: var(--theme-text-muted);
  --color-primary: var(--theme-accent);
  --color-primary-hover: var(--theme-accent-hover);
  --color-price-badge: var(--theme-price-badge);
  --color-selected: var(--theme-selected);
  --border-color: var(--theme-border);
  --bg-overlay: rgba(0, 0, 0, 0.72);

  --bg-surface: var(--theme-surface);
  --bg-deep: var(--theme-bg);
  --bg-highlight: var(--theme-surface-soft);
  --bg-secondary: var(--theme-surface-soft);
  --bg-hover: #252b3b;
  --bg-active: var(--theme-accent-soft);
  --text-main: var(--theme-text);
  --text-primary: var(--theme-text);
  --text-secondary: var(--theme-text-muted);
  --text-link: var(--theme-accent-strong);
  --text-success: var(--theme-success);
  --primary: var(--theme-accent);
  --accent: var(--theme-price-badge);
  --success: var(--theme-success);
  --border-light: var(--theme-border);
  --border-medium: var(--theme-border);
  --border-focus: var(--theme-accent);
  --primary-color: var(--theme-accent);
  --primary-hover: var(--theme-accent-hover);
  --shadow-sm: 0 0.8rem 2rem rgba(0, 0, 0, 0.18);
  --shadow-md: 0 1rem 2.8rem rgba(0, 0, 0, 0.24);
  --shadow-hover: 0 1rem 2.8rem var(--theme-accent-soft);

  --bg-pagina: var(--theme-bg);
  --bg-elemento: var(--theme-surface);
  --texto-principal: var(--theme-text);
  --texto-titulo: var(--theme-text-strong);
  --texto-secundario: var(--theme-text-muted);
  --cor-destaque: var(--theme-accent-strong);
  --borda: var(--theme-border);
  --aviso-fundo: var(--theme-warning-bg);
  --aviso-ouro: var(--theme-warning-text);

  --gc-control-bg: var(--theme-surface);
  --gc-control-text: var(--theme-text);
  --gc-control-border: var(--theme-border);
  --gc-control-selected-bg: var(--theme-surface);
  --gc-control-selected-border: var(--theme-accent);
  --gc-control-selected-text: var(--theme-accent-strong);
  --gc-gender-selected-bg: #052d33;
  --gc-gender-selected-text: #ffffff;
  --gc-gender-idle-bg: var(--theme-surface);
  --gc-gender-idle-text: var(--theme-accent-strong);
  --gc-gender-muted-bg: #171c26;
  --gc-gender-muted-text: #8fa3b8;
  --gc-choice-selected-bg: var(--theme-surface);
  --gc-choice-selected-border: var(--theme-success);
  --gc-choice-selected-text: var(--theme-success);
  --gc-choice-text: var(--theme-text);
  --gc-choice-border: var(--theme-border);
  --gc-range-fill: var(--theme-success);
  --gc-range-rest: rgba(154, 235, 163, 0.35);
}

html[data-theme] body {
  background: var(--theme-bg);
  color: var(--theme-text);
}

html[data-theme] input,
html[data-theme] textarea,
html[data-theme] select {
  background-color: var(--gc-control-bg);
  border-color: var(--gc-control-border);
  color: var(--gc-control-text);
}

html[data-theme] input::placeholder,
html[data-theme] textarea::placeholder {
  color: var(--theme-text-muted);
}

html[data-theme] #globalSidebar,
html[data-theme] .user-sidebar {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: var(--theme-shadow);
}

html[data-theme] #globalSidebar > .sidebar-header h3,
html[data-theme] .user-sidebar > .sidebar-header h3,
html[data-theme] #sidebarTitle,
html[data-theme] .sidebar-label,
html[data-theme] .user-name {
  color: var(--theme-text-strong);
}

html[data-theme] .close-btn,
html[data-theme] .avatar-texto-pequeno {
  color: var(--theme-text-muted);
}

html[data-theme] .close-btn:hover {
  color: var(--theme-text-strong);
}

html[data-theme] .sidebar-input,
html[data-theme] .input-group,
html[data-theme] .input-transparente {
  background: var(--theme-bg-soft);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .sidebar-input::placeholder,
html[data-theme] .input-transparente::placeholder {
  color: var(--theme-text-muted);
}

html[data-theme] .sidebar-input:focus,
html[data-theme] .input-group:focus-within {
  background: var(--theme-surface);
  border-color: var(--theme-accent);
  box-shadow: 0 0 0 2px var(--theme-accent-soft);
}

html[data-theme] .prefixo,
html[data-theme] .input-transparente,
html[data-theme] .input-transparente:-webkit-autofill,
html[data-theme] .input-transparente:-webkit-autofill:hover,
html[data-theme] .input-transparente:-webkit-autofill:focus,
html[data-theme] .input-transparente:-webkit-autofill:active {
  color: var(--theme-text);
  -webkit-text-fill-color: var(--theme-text) !important;
}

html[data-theme] .sidebar-action-btn {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .sidebar-action-btn:hover {
  background: var(--theme-accent-hover);
}

html[data-theme] .sidebar-link {
  color: var(--theme-accent-strong);
}

html[data-theme] .sidebar-link:hover {
  color: var(--theme-accent);
}

html[data-theme] #sidebarContent::-webkit-scrollbar-thumb,
html[data-theme] .sidebar-content::-webkit-scrollbar-thumb,
html[data-theme] #sidebarHeaderDrag::before {
  background: var(--theme-border);
}

html[data-theme] .avatar-img {
  border-color: var(--theme-border);
}

html[data-theme] #messageFriendError,
html[data-theme] #messageUserError,
html[data-theme] #messageError {
  color: var(--theme-danger);
}

html[data-theme] #messageError.auth-login-error {
  background: color-mix(in srgb, var(--theme-danger) 12%, transparent);
  border-color: color-mix(in srgb, var(--theme-danger) 34%, transparent);
  color: var(--theme-danger);
}

html[data-theme] .sidebar-input.auth-input-error {
  border-color: var(--theme-danger) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--theme-danger) 16%, transparent);
}

html[data-theme] .cabecalho,
html[data-theme] .cabecalho--black,
html[data-theme] .cabecalho__navegacao,
html[data-theme] .cabecalho__lista,
html[data-theme] .cabecalho__expansao-tipos,
html[data-theme] .cabecalho__informacoes-perfil {
  background: var(--theme-nav-bg);
  color: var(--theme-nav-text);
  border-color: var(--theme-border);
}

html[data-theme] .cabecalho__link,
html[data-theme] .cabecalho__link--tipo,
html[data-theme] .cabecalho__texto,
html[data-theme] .cabecalho__link-icone,
html[data-theme] .cabecalho__link--perfil {
  color: var(--theme-nav-text);
}

html[data-theme] .cabecalho__link-icone--suporte {
  background: color-mix(in srgb, var(--theme-surface) 92%, transparent);
  border-color: color-mix(in srgb, var(--theme-border) 82%, transparent);
  color: var(--theme-text-strong);
}

html[data-theme] .cabecalho__link-icone--suporte:hover {
  background: color-mix(in srgb, var(--theme-accent-soft) 56%, var(--theme-surface));
  border-color: color-mix(in srgb, var(--theme-accent) 34%, var(--theme-border));
  color: var(--theme-text-strong);
}

html[data-theme] .cabecalho__icone-ajuda {
  background: transparent;
  border-color: transparent;
  color: inherit;
}

html[data-theme] .gc-nav {
  background:
    radial-gradient(circle at 50% 0%, var(--theme-accent-soft), transparent 34rem),
    color-mix(in srgb, var(--theme-nav-bg) 94%, transparent);
  color: var(--theme-nav-text);
  border-bottom-color: var(--theme-border);
}

html[data-theme="light"] .gc-nav {
  box-shadow: 0 1rem 2.8rem rgba(15, 23, 42, 0.08);
}

html[data-theme] .gc-nav__menu-button {
  background: var(--theme-surface-soft);
  border-color: var(--theme-border);
  color: var(--theme-text-strong);
}

html[data-theme="dark"] .gc-nav__menu-button {
  background: rgba(15, 23, 42, 0.76);
  color: #ffffff;
}

html[data-theme] .gc-desktop-menu__tab {
  color: var(--theme-nav-text);
  text-shadow: none;
}

html[data-theme] .gc-desktop-menu__tab:hover,
html[data-theme] .gc-desktop-menu__tab.is-active,
html[data-theme] .gc-desktop-menu__tab:focus-visible {
  border-color: var(--theme-accent);
  color: var(--theme-accent-strong);
}

html[data-theme] .gc-desktop-menu__panel {
  background:
    radial-gradient(circle at 50% 0%, var(--theme-accent-soft), transparent 28rem),
    color-mix(in srgb, var(--theme-elevated) 97%, transparent);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: var(--theme-shadow);
}

html[data-theme] .gc-desktop-menu__panel-pointer {
  background: color-mix(in srgb, var(--theme-elevated) 97%, transparent);
  border-color: var(--theme-border);
}

html[data-theme] .gc-desktop-menu__panel-head h2,
html[data-theme] .gc-desktop-menu__links a strong,
html[data-theme] .gc-mobile-menu__section-body a strong {
  color: var(--theme-text-strong);
}

html[data-theme] .gc-desktop-menu__panel-head p,
html[data-theme] .gc-mobile-menu__section-body p {
  color: var(--theme-text-muted);
}

html[data-theme] .gc-desktop-menu__links {
  border-top-color: var(--theme-border);
}

html[data-theme] .gc-desktop-menu__links a,
html[data-theme] .gc-mobile-menu__section-body a {
  background: color-mix(in srgb, var(--theme-surface-soft) 82%, transparent);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .gc-desktop-menu__links a:hover,
html[data-theme] .gc-mobile-menu__section-body a:hover {
  background: color-mix(in srgb, var(--theme-accent-soft) 56%, var(--theme-surface));
  border-color: var(--theme-accent);
  box-shadow: 0 1.4rem 2.8rem var(--theme-accent-soft);
}

html[data-theme] .gc-desktop-menu__links a > .material-symbols-outlined:first-child,
html[data-theme] .gc-mobile-menu__section-body a > .material-symbols-outlined:first-child,
html[data-theme] .gc-nav__xp-icon {
  background: color-mix(in srgb, var(--theme-accent-soft) 56%, var(--theme-surface));
  border-color: color-mix(in srgb, var(--theme-accent) 34%, var(--theme-border));
  color: var(--theme-accent-strong);
}

html[data-theme] .gc-desktop-menu__links a > .material-symbols-outlined:last-child,
html[data-theme] .gc-mobile-menu__section-body a > .material-symbols-outlined:last-child {
  color: var(--theme-accent);
}

html[data-theme] .gc-nav .cabecalho__link-icone {
  color: var(--theme-nav-text);
}

html[data-theme] .gc-nav .cabecalho__link-icone:hover,
html[data-theme] .gc-nav .cabecalho__link-icone:focus-visible,
html[data-theme] .gc-nav .cabecalho__link-icone:active {
  background: var(--theme-accent-soft);
  color: var(--theme-text-strong);
  outline: none;
}

html[data-theme="dark"] .gc-nav .cabecalho__link-icone:hover,
html[data-theme="dark"] .gc-nav .cabecalho__link-icone:focus-visible,
html[data-theme="dark"] .gc-nav .cabecalho__link-icone:active {
  color: #ffffff;
}

html[data-theme] .gc-nav__help {
  min-width: 9.4rem;
  height: 3.8rem;
  padding: 0 1.22rem 0 1.05rem;
  border-radius: 1.15rem !important;
  background: color-mix(in srgb, var(--theme-surface) 90%, transparent) !important;
  border-color: color-mix(in srgb, var(--theme-accent) 18%, var(--theme-border)) !important;
  color: var(--theme-text-strong) !important;
  box-shadow: 0 0.6rem 1.6rem rgba(15, 23, 42, 0.08);
}

html[data-theme] .gc-nav__help:hover,
html[data-theme] .gc-nav__help:focus-visible,
html[data-theme] .gc-nav__help:active {
  background: color-mix(in srgb, var(--theme-accent-soft) 64%, var(--theme-surface)) !important;
  border-color: color-mix(in srgb, var(--theme-accent) 42%, var(--theme-border)) !important;
  color: var(--theme-text-strong) !important;
  box-shadow: 0 0.8rem 1.8rem color-mix(in srgb, var(--theme-accent) 18%, transparent);
}

html[data-theme] .gc-nav .cabecalho__icone-ajuda {
  width: 1.95rem;
  height: 1.95rem;
  background: transparent !important;
  border-color: transparent !important;
  color: var(--theme-accent-strong);
  box-shadow: none !important;
}

html[data-theme] .gc-nav .cabecalho__texto-ajuda {
  color: inherit;
}

html[data-theme] .gc-nav .cabecalho__informacoes-perfil {
  background: color-mix(in srgb, var(--theme-elevated) 98%, transparent);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: var(--theme-shadow);
}

html[data-theme] .gc-nav .cabecalho__informacoes-perfil .cabecalho__texto,
html[data-theme] .gc-nav .cabecalho__informacoes-perfil .cabecalho__link {
  color: var(--theme-text);
}

html[data-theme] .gc-nav .cabecalho__informacoes-perfil .cabecalho__texto span {
  color: var(--theme-text-strong);
}

html[data-theme] .gc-nav .cabecalho__informacoes-perfil .cabecalho__link:hover {
  background: var(--theme-accent-soft);
  color: var(--theme-accent-strong);
}

html[data-theme] .gc-nav .cabecalho__informacoes-perfil hr {
  border-color: var(--theme-border);
  opacity: 1;
}

html[data-theme="light"] .gc-mobile-backdrop {
  background: rgba(15, 23, 42, 0.32);
}

html[data-theme="light"] .gc-mobile-menu {
  background:
    radial-gradient(circle at 12% 0%, var(--theme-accent-soft), transparent 22rem),
    color-mix(in srgb, var(--theme-elevated) 97%, transparent);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: var(--theme-shadow);
}

html[data-theme="light"] .gc-mobile-menu__header {
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--theme-elevated) 98%, transparent) 0%,
      color-mix(in srgb, var(--theme-elevated) 90%, transparent) 82%,
      transparent 100%
    );
}

html[data-theme="light"] .gc-mobile-menu__header button {
  color: var(--theme-text-strong);
}

html[data-theme="light"] .gc-mobile-menu__header strong,
html[data-theme="light"] .gc-mobile-menu__section-head,
html[data-theme="light"] .gc-mobile-menu__section-head span:nth-child(2) {
  color: var(--theme-text-strong);
}

html[data-theme="light"] .gc-mobile-menu__section {
  background: color-mix(in srgb, var(--theme-surface-soft) 72%, transparent);
  border-color: var(--theme-border);
  box-shadow: var(--shadow-sm);
}

html[data-theme="light"] .gc-mobile-menu__section.is-open {
  border-color: var(--theme-accent);
  box-shadow:
    0 1.5rem 3.4rem var(--theme-accent-soft),
    inset 0 0 0 1px color-mix(in srgb, var(--theme-accent) 18%, transparent);
}

html[data-theme="light"] .gc-mobile-menu__section-head .material-symbols-outlined {
  color: var(--theme-text-muted);
}

html[data-theme="light"] .gc-mobile-menu__section.is-open .gc-mobile-menu__section-head .material-symbols-outlined {
  color: var(--theme-accent);
}

html[data-theme] .campo-busca {
  background: var(--theme-surface);
  border-color: var(--theme-border);
}

html[data-theme] .campo-busca input#busca,
html[data-theme] .campo-busca input#busca-desktop {
  background: transparent !important;
  border: 0;
  box-shadow: none;
  color: var(--theme-text);
  padding: 0;
}

html[data-theme] .campo-busca input#busca::placeholder,
html[data-theme] .campo-busca input#busca-desktop::placeholder {
  color: transparent;
  opacity: 0;
}

html[data-theme] .campo-busca input#busca + label,
html[data-theme] .campo-busca input#busca-desktop + label {
  color: var(--theme-text-muted);
  background: transparent;
  opacity: 1;
}

html[data-theme] .campo-busca input#busca:focus + label,
html[data-theme] .campo-busca input#busca:not(:placeholder-shown) + label,
html[data-theme] .campo-busca input#busca-desktop:focus + label,
html[data-theme] .campo-busca input#busca-desktop:not(:placeholder-shown) + label {
  color: var(--theme-accent);
  background: var(--theme-bg);
}

@media (max-width: 59.375em) {
  html[data-theme] .cabecalho__informacoes-perfil .cabecalho__link--perfil {
    justify-content: flex-start;
  }

  html[data-theme] .cabecalho__informacoes-perfil .cabecalho__link--perfil::after {
    content: none;
    display: none;
  }
}

html[data-theme="light"] .cabecalho__menu-icone {
  filter: none;
}

html[data-theme="light"] .cabecalho--black .cabecalho__menu-icone {
  filter: invert(1);
}

html[data-theme="dark"] .cabecalho__menu-icone {
  filter: invert(1);
}

html[data-theme="dark"] .cabecalho--black .cabecalho__menu-icone {
  filter: none;
}

html[data-theme] .cabecalho__painel-notificacoes,
html[data-theme] #globalSidebar,
html[data-theme] .modal-content-wrapper,
html[data-theme] .site-footer,
html[data-theme] .conta__container,
html[data-theme] .conta__form,
html[data-theme] .conta__codigo-email,
html[data-theme] .conta__notificacoes,
html[data-theme] .legal-page__card,
html[data-theme] .legal-page__notice,
html[data-theme] .acesso__card,
html[data-theme] .acesso__bloco,
html[data-theme] .acesso__codigo-resumo,
html[data-theme] .acesso__contato-box,
html[data-theme] .acesso__status {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .acesso__card {
  background:
    linear-gradient(180deg, var(--theme-surface), var(--theme-elevated));
  box-shadow: var(--theme-shadow);
}

html[data-theme] .acesso__bloco,
html[data-theme] .acesso__codigo-resumo,
html[data-theme] .acesso__contato-box,
html[data-theme] .acesso__status {
  background: var(--theme-surface-soft);
}

html[data-theme] .acesso__bloco--principal {
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--theme-accent) 10%, var(--theme-surface-soft)),
      var(--theme-surface-soft)
    );
  border-color: color-mix(in srgb, var(--theme-accent) 30%, var(--theme-border));
}

html[data-theme] .acesso__bloco--secundario {
  background: var(--theme-surface);
}

html[data-theme] .acesso__card-badge,
html[data-theme] .acesso__codigo-icone {
  background: var(--theme-accent-soft);
  border: 1px solid color-mix(in srgb, var(--theme-accent) 26%, transparent);
  color: var(--theme-accent-strong);
}

html[data-theme] .acesso__card-titulo,
html[data-theme] .acesso__subtitulo,
html[data-theme] .acesso__field label,
html[data-theme] .acesso__codigo-email,
html[data-theme] .acesso__contato-titulo,
html[data-theme] .acesso__status-valor {
  color: var(--theme-text-strong);
}

html[data-theme] .acesso__card-texto,
html[data-theme] .acesso__ajuda,
html[data-theme] .acesso__codigo-label,
html[data-theme] .acesso__contato-texto,
html[data-theme] .acesso__google-legenda,
html[data-theme] .acesso__modo-secundario span,
html[data-theme] .acesso__links span,
html[data-theme] .acesso__status-label {
  color: var(--theme-text-muted);
}

html[data-theme] .acesso__field input {
  background: var(--theme-surface-soft);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .acesso__field input::placeholder {
  color: var(--theme-text-muted);
}

html[data-theme] .acesso__field input:focus-visible {
  background: var(--theme-surface);
  border-color: var(--theme-accent);
  box-shadow: 0 0 0 0.35rem var(--theme-accent-soft);
}

html[data-theme] .acesso__divisor {
  color: var(--theme-text-muted);
}

html[data-theme] .acesso__divisor::before,
html[data-theme] .acesso__divisor::after {
  background: var(--theme-border);
}

html[data-theme] .acesso__google,
html[data-theme] .acesso__contato-link {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text-strong);
}

html[data-theme] .acesso__google:hover,
html[data-theme] .acesso__contato-link:hover {
  background: var(--theme-surface-soft);
  border-color: var(--theme-accent);
}

html[data-theme] .acesso__links a,
html[data-theme] .acesso__modo-secundario a,
html[data-theme] .acesso__codigo-trocar,
html[data-theme] .acesso__acao-secundaria {
  color: var(--theme-accent-strong);
}

html[data-theme] .acesso__alerta {
  background: color-mix(in srgb, var(--theme-danger) 12%, var(--theme-surface));
  border-color: color-mix(in srgb, var(--theme-danger) 30%, transparent);
  color: var(--theme-danger);
}

html[data-theme] .acesso__alerta--sucesso {
  background: color-mix(in srgb, var(--theme-success) 12%, var(--theme-surface));
  border-color: color-mix(in srgb, var(--theme-success) 30%, transparent);
  color: var(--theme-success);
}

html[data-theme] .cabecalho__painel-notificacoes {
  background: color-mix(in srgb, var(--theme-surface) 98%, transparent);
  box-shadow: var(--theme-shadow);
}

html[data-theme] .cabecalho__notificacoes-acao {
  color: var(--theme-text);
}

html[data-theme] .cabecalho__notificacoes-acao:hover {
  color: var(--theme-accent-strong);
}

html[data-theme] .cabecalho__painel-notificacoes-lista {
  gap: 0.8rem;
  padding-right: 0.8rem;
  scrollbar-color: var(--theme-text-muted) transparent;
}

html[data-theme] .cabecalho__notificacao-item {
  background: var(--theme-surface);
  border: 1px solid var(--theme-border);
  border-radius: 1.2rem;
  color: var(--theme-text);
  padding: 1.25rem;
  margin-bottom: 0;
  box-shadow: 0 0.8rem 1.8rem rgba(15, 23, 42, 0.04);
}

html[data-theme] .cabecalho__notificacao-item:hover {
  background: var(--theme-surface-soft);
}

html[data-theme] .cabecalho__notificacao-item--nova {
  background: linear-gradient(
    180deg,
    var(--theme-accent-soft),
    var(--theme-surface)
  );
}

html[data-theme] .cabecalho__notificacao-item--lida {
  background: var(--theme-surface-soft);
  opacity: 0.9;
}

html[data-theme] .cabecalho__painel-notificacoes-titulo,
html[data-theme] .cabecalho__notificacao-item strong,
html[data-theme] .cabecalho__notificacao-titulo-evento,
html[data-theme] .cabecalho__notificacao-vazia strong {
  color: var(--theme-text-strong);
}

html[data-theme] .cabecalho__painel-notificacoes-subtitulo,
html[data-theme] .cabecalho__notificacao-subtitulo-evento,
html[data-theme] .cabecalho__notificacao-vazia {
  color: var(--theme-text-muted);
}

html[data-theme] .cabecalho__notificacao-item p {
  color: var(--theme-text);
  opacity: 0.82;
}

html[data-theme] .cabecalho__notificacao-data {
  color: var(--theme-text-muted);
  font-weight: 700;
}

html[data-theme="dark"] .cabecalho__painel-notificacoes {
  background: #111722;
  border: 1px solid rgba(148, 163, 184, 0.2);
  box-shadow: 0 2.4rem 5.2rem rgba(0, 0, 0, 0.52);
}

html[data-theme="dark"] .cabecalho__painel-notificacoes-lista {
  scrollbar-color: rgba(203, 213, 225, 0.7) transparent;
}

html[data-theme="dark"] .cabecalho__notificacao-item {
  background: #1a2231;
  border-color: rgba(148, 163, 184, 0.22);
  box-shadow: none;
  opacity: 1;
}

html[data-theme="dark"] .cabecalho__notificacao-item:hover {
  background: #202a3b;
}

html[data-theme="dark"] .cabecalho__notificacao-item--nova {
  background:
    linear-gradient(180deg, rgba(0, 188, 212, 0.12), rgba(26, 34, 49, 0) 46%),
    #1a2231;
}

html[data-theme="dark"] .cabecalho__notificacao-item--lida {
  background: #18202d;
  opacity: 1;
}

html[data-theme="dark"] .cabecalho__notificacao-item--campanha-informativo {
  background: #1a2231;
}

html[data-theme="dark"] .cabecalho__notificacao-item--campanha-novidade {
  background:
    linear-gradient(180deg, rgba(59, 130, 246, 0.14), rgba(26, 34, 49, 0) 48%),
    #1a2231;
  border-color: rgba(96, 165, 250, 0.28);
}

html[data-theme="dark"] .cabecalho__notificacao-item--campanha-oferta {
  background:
    linear-gradient(180deg, rgba(249, 115, 22, 0.14), rgba(26, 34, 49, 0) 48%),
    #1a2231;
  border-color: rgba(251, 146, 60, 0.28);
}

html[data-theme="dark"] .cabecalho__painel-notificacoes-titulo,
html[data-theme="dark"] .cabecalho__notificacao-item strong,
html[data-theme="dark"] .cabecalho__notificacao-titulo-evento,
html[data-theme="dark"] .cabecalho__notificacao-vazia strong {
  color: #f8fafc;
}

html[data-theme="dark"] .cabecalho__painel-notificacoes-subtitulo,
html[data-theme="dark"] .cabecalho__notificacao-subtitulo-evento,
html[data-theme="dark"] .cabecalho__notificacao-vazia,
html[data-theme="dark"] .cabecalho__notificacao-data {
  color: #aeb9ca;
}

html[data-theme="dark"] .cabecalho__notificacao-item p {
  color: #c8d2e1;
  opacity: 1;
}

html[data-theme="dark"] .cabecalho__notificacao-tag {
  border: 1px solid currentColor;
}

html[data-theme="dark"] .cabecalho__notificacao-tag--pedido_concluido,
html[data-theme="dark"] .cabecalho__notificacao-tag--verde {
  background: rgba(16, 185, 129, 0.16);
  color: #34d399;
}

html[data-theme="dark"] .cabecalho__notificacao-tag--novo_produto,
html[data-theme="dark"] .cabecalho__notificacao-tag--azul {
  background: rgba(59, 130, 246, 0.16);
  color: #93c5fd;
}

html[data-theme="dark"] .cabecalho__notificacao-tag--desconto_loja,
html[data-theme="dark"] .cabecalho__notificacao-tag--laranja {
  background: rgba(249, 115, 22, 0.16);
  color: #fdba74;
}

html[data-theme="dark"] .cabecalho__notificacao-tag--sistema,
html[data-theme="dark"] .cabecalho__notificacao-tag--cinza {
  background: rgba(148, 163, 184, 0.16);
  color: #cbd5e1;
}

html[data-theme="dark"] .cabecalho__notificacao-tag--rosa {
  background: rgba(236, 72, 153, 0.16);
  color: #f9a8d4;
}

html[data-theme="dark"] .cabecalho__notificacao-tag--vermelho {
  background: rgba(248, 113, 113, 0.16);
  color: #fca5a5;
}

html[data-theme] .cabecalho__notificacao-midia {
  background: transparent;
}

html[data-theme] .painel-permissao-fomo {
  background:
    linear-gradient(135deg, var(--theme-accent-soft), transparent 58%),
    var(--theme-surface-soft);
  border-color: color-mix(in srgb, var(--theme-accent) 38%, var(--theme-border));
  color: var(--theme-text);
  opacity: 1;
  box-shadow: 0 1rem 2.4rem rgba(15, 23, 42, 0.08);
}

html[data-theme] .painel-permissao-fomo:hover {
  background:
    linear-gradient(135deg, var(--theme-accent-soft), transparent 48%),
    var(--theme-surface);
}

html[data-theme] .painel-permissao-fomo .icone-apagado span {
  color: var(--theme-accent-strong);
  filter: drop-shadow(0 0.4rem 1rem var(--theme-accent-soft));
}

html[data-theme] .painel-permissao-fomo .texto-persuasivo {
  color: var(--theme-text-muted);
}

html[data-theme] .painel-permissao-fomo .texto-persuasivo strong,
html[data-theme] .painel-permissao-fomo__titulo {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--theme-text-strong);
  font-size: 1.14rem;
  font-weight: 800;
  line-height: 1.18;
}

html[data-theme] .painel-permissao-fomo__texto {
  display: block;
  color: var(--theme-text);
  font-size: 0.96rem;
  font-weight: 600;
  line-height: 1.42;
  opacity: 0.9;
}

html[data-theme] .btn-toggle-simulado {
  background: var(--theme-accent);
  color: #ffffff;
  box-shadow: 0 0.9rem 1.8rem var(--theme-accent-soft);
}

html[data-theme] .btn-toggle-simulado:hover {
  background: var(--theme-accent-hover);
  color: #ffffff;
}

html[data-theme] .conta,
html[data-theme] .legal-page,
html[data-theme] .acesso,
html[data-theme] .pedidos-wrapper,
html[data-theme] .principal,
html[data-theme] .loja,
html[data-theme] .main-container,
html[data-theme] .app-vitrine,
html[data-theme] .troca-nome-wrapper,
html[data-theme] .mod-wrapper {
  background: var(--theme-bg);
  color: var(--theme-text);
}

html[data-theme] .checkout__titulo,
html[data-theme] .conta__codigo-textos,
html[data-theme] .conta__notificacoes-titulo,
html[data-theme] .conta__notificacoes-status,
html[data-theme] .legal-page h1,
html[data-theme] .legal-page h2,
html[data-theme] .legal-page strong,
html[data-theme] .acesso__title,
html[data-theme] .acesso__subtitle strong,
html[data-theme] .site-footer__legal a,
html[data-theme] .site-footer__social-link,
html[data-theme] .header-section h1,
html[data-theme] .titulo-sessao,
html[data-theme] .titulo-genero,
html[data-theme] .titulo-Carrinho,
html[data-theme] .product-name {
  color: var(--theme-text-strong);
}

html[data-theme] .conta__ajuda,
html[data-theme] .conta__codigo-textos span,
html[data-theme] .conta__notificacoes-descricao,
html[data-theme] .conta__notificacoes-dispositivos,
html[data-theme] .legal-page__lead,
html[data-theme] .legal-page li,
html[data-theme] .legal-page p,
html[data-theme] .acesso__subtitle,
html[data-theme] .site-footer__note,
html[data-theme] .header-section p,
html[data-theme] .termos-container,
html[data-theme] .price-info,
html[data-theme] .btn-user-name {
  color: var(--theme-text-muted);
}

html[data-theme] .conta__item label,
html[data-theme] .form_control {
  background: var(--theme-surface);
  color: var(--theme-text);
}

html[data-theme] .checkout__botao,
html[data-theme] .subtotal__botao,
html[data-theme] .s-produto__adicicionar,
html[data-theme] .conta__notificacoes-botao,
html[data-theme] .btn-pagar,
html[data-theme] .botao-aplicar {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .checkout__botao:hover,
html[data-theme] .subtotal__botao:hover,
html[data-theme] .s-produto__adicicionar:hover,
html[data-theme] .btn-pagar:hover,
html[data-theme] .botao-aplicar:hover {
  background: var(--theme-accent-hover);
}

html[data-theme] .conta__botao-secundario,
html[data-theme] .footer-input,
html[data-theme] .select-full-width,
html[data-theme] .input-qtd-manual,
html[data-theme] .input-custom,
html[data-theme] .select-box,
html[data-theme] .select-options,
html[data-theme] .option-item,
html[data-theme] .btn-preset,
html[data-theme] .segment-btn,
html[data-theme] .menu__select,
html[data-theme] .menu__btn-user,
html[data-theme] #boxClick button {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .conta__botao-secundario:hover,
html[data-theme] .footer-input:hover,
html[data-theme] .btn-preset:hover,
html[data-theme] .segment-btn:hover,
html[data-theme] .option-item:hover,
html[data-theme] .menu__btn-user:hover,
html[data-theme] #boxClick button:hover {
  background: var(--theme-surface-soft);
  border-color: var(--theme-accent);
  color: var(--theme-accent-strong);
}

html[data-theme] input[type="radio"]:checked + .segment-btn,
html[data-theme] input[type="radio"]:checked + .btn-preset,
html[data-theme] #boxClick .btn-selecionado,
html[data-theme] .btn-toggle.active {
  background: var(--gc-control-selected-bg) !important;
  border-color: var(--gc-control-selected-border, var(--theme-accent)) !important;
  color: var(--gc-control-selected-text) !important;
  box-shadow: inset 0 0 0 1px var(--gc-control-selected-border, var(--theme-accent));
}

html[data-theme] .caixa-aviso,
html[data-theme] .garantia-box,
html[data-theme] .aviso-importante {
  background: var(--theme-warning-bg);
  border-color: var(--theme-warning-text);
  color: var(--theme-text);
}

html[data-theme] .caixa-aviso-cabecalho,
html[data-theme] .caixa-aviso-cabecalho svg,
html[data-theme] .caixa-aviso-titulo,
html[data-theme] .garantia-title,
html[data-theme] .aviso-importante strong {
  color: var(--theme-warning-text);
  stroke: var(--theme-warning-text);
}

html[data-theme] .caixa-aviso-texto,
html[data-theme] .caixa-aviso-texto p,
html[data-theme] .caixa-aviso-lista,
html[data-theme] .caixa-aviso-lista li,
html[data-theme] .aviso-importante p {
  color: var(--theme-text) !important;
}

html[data-theme] .menu {
  background: var(--theme-bg);
  color: var(--theme-text);
}

html[data-theme] .menu__titulo,
html[data-theme] .menu__subtitulo,
html[data-theme] .menu__label,
html[data-theme] .menu__custom-checkbox-label {
  color: var(--theme-text);
}

html[data-theme] .menu__filtros-grupo:not(:last-child) {
  border-bottom-color: var(--theme-border);
}

html[data-theme] .container-grid {
  background: var(--theme-bg);
}

html[data-theme] .product-card {
  background: var(--theme-surface);
  border: 1px solid var(--theme-border);
  border-radius: 16px;
  color: var(--theme-text);
  box-shadow: var(--shadow-sm);
}

html[data-theme] .image-container {
  background: var(--theme-bg-soft);
  border: 1px solid var(--theme-border);
}

html[data-theme] .category-icon {
  background: var(--theme-surface);
  border: 1px solid var(--theme-border);
}

html[data-theme] .product-card:not(.product-cardSelect):hover,
html[data-theme] .product-cardSelect {
  background: var(--theme-surface-soft);
}

html[data-theme] .btn-moeda {
  background: var(--theme-surface);
  border-color: var(--theme-border);
}

html[data-theme] .btn-moeda:hover {
  background: var(--theme-surface-soft);
  border-color: var(--theme-accent);
}

html[data-theme] .avacoins-selecionado {
  background: var(--theme-surface) !important;
  border-color: #f59e0b !important;
  box-shadow: inset 0 0 0 1px #f59e0b;
}

html[data-theme] .crowns-selecionado {
  background: var(--theme-surface) !important;
  border-color: #a855f7 !important;
  box-shadow: inset 0 0 0 1px #a855f7;
}

html[data-theme] .gems-selecionado {
  background: var(--theme-surface) !important;
  border-color: #06b6d4 !important;
  box-shadow: inset 0 0 0 1px #06b6d4;
}

html[data-theme] #search-input {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .produtos__cabecalho {
  background: var(--theme-surface) !important;
  border-top-color: var(--theme-border);
}

html[data-theme] .botoes-genero {
  background: var(--gc-gender-idle-bg);
  border-color: var(--theme-accent);
}

html[data-theme] .btn-toggle {
  background: var(--gc-gender-idle-bg);
  color: var(--gc-gender-idle-text);
  font-weight: 700;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    opacity 0.18s ease;
}

html[data-theme] .btn-toggle:first-child {
  border-right-color: var(--theme-accent);
}

html[data-theme] .botoes-genero.has-selection .btn-toggle:not(.active) {
  background: var(--gc-gender-muted-bg);
  color: var(--gc-gender-muted-text);
  opacity: 0.78;
}

html[data-theme] .botoes-genero .btn-toggle.active {
  background: var(--gc-gender-selected-bg) !important;
  border-color: var(--theme-accent) !important;
  color: var(--gc-gender-selected-text) !important;
  box-shadow: inset 0 0 0 1px var(--theme-accent) !important;
  opacity: 1;
}

html[data-theme] .botoes-genero .btn-toggle:focus,
html[data-theme] .botoes-genero .btn-toggle:focus-visible,
html[data-theme] .botoes-genero .btn-toggle:active {
  outline: none !important;
}

html[data-theme] .premium-card,
html[data-theme] .editor-card,
html[data-theme] .card-option,
html[data-theme] .img-wrapper {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: var(--theme-shadow);
}

html[data-theme] .premium-input,
html[data-theme] .btn-outline-neon,
html[data-theme] .upload-label,
html[data-theme] .img-container,
html[data-theme] .mask-selector,
html[data-theme] .btn-editar-topo {
  background: var(--theme-bg-soft);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .btn-outline-neon.input-com-usuario {
  background: var(--theme-surface);
  border-color: var(--theme-accent);
  color: var(--theme-text);
  box-shadow: inset 0 0 0 1px var(--theme-accent-soft);
}

html[data-theme] .btn-outline-neon.input-com-usuario .btn-user-name {
  color: var(--theme-text-strong);
}

html[data-theme] .mask-option input:checked + .mask-label {
  background: var(--theme-accent);
  color: #ffffff;
  box-shadow: 0 10px 24px var(--theme-accent-soft);
}

html[data-theme] .mask-option input:focus-visible + .mask-label {
  outline: 2px solid var(--theme-accent);
  outline-offset: 2px;
}

html[data-theme] .title-neon,
html[data-theme] .premium-card #qnati-tiket,
html[data-theme] .card-option span {
  color: var(--theme-text-strong);
}

html[data-theme] .subtitle,
html[data-theme] .input-label,
html[data-theme] .premium-card #text-Tiket,
html[data-theme] .mask-label,
html[data-theme] .label-form,
html[data-theme] .label-custom,
html[data-theme] .field-label {
  color: var(--theme-text-muted);
}

html[data-theme] .label-custom {
  background: var(--theme-bg);
}

html[data-theme] .card-option.active {
  border-color: var(--theme-accent);
  box-shadow: inset 0 0 0 1px var(--theme-accent);
}

html[data-theme] .skeleton-img,
html[data-theme] .skeleton-text,
html[data-theme] .skeleton-title,
html[data-theme] .skeleton-sub,
html[data-theme] .skeleton-badge {
  background: var(--theme-surface-soft);
}

html[data-theme] .btn-glow-primary {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .btn-glow-primary:hover {
  background: var(--theme-accent-hover);
}

html[data-theme] .support-widget__panel,
html[data-theme] .support-widget__header,
html[data-theme] .support-widget__body,
html[data-theme] .support-widget__content,
html[data-theme] .support-widget__composer,
html[data-theme] .support-widget__guest,
html[data-theme] .support-widget__intro,
html[data-theme] .support-widget__thread-card,
html[data-theme] .support-widget__thread-note,
html[data-theme] .support-page__card,
html[data-theme] .support-page__sidebar-card {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .support-widget__content {
  background: var(--theme-bg);
}

html[data-theme] .support-widget__title,
html[data-theme] .support-widget__intro h3,
html[data-theme] .support-widget__guest h3,
html[data-theme] .support-widget__field label,
html[data-theme] .support-widget__fieldset-label {
  color: var(--theme-text-strong);
}

html[data-theme] .support-widget__eyebrow,
html[data-theme] .support-widget__header-link,
html[data-theme] .support-widget__ghost-link,
html[data-theme] .support-widget__intro p,
html[data-theme] .support-widget__guest p,
html[data-theme] .support-widget__thread-note p,
html[data-theme] .support-widget__summary-line,
html[data-theme] .support-widget__helper,
html[data-theme] .support-widget__upload-name {
  color: var(--theme-text-muted);
}

html[data-theme] .support-widget__close,
html[data-theme] .support-widget__floating {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text-strong);
}

html[data-theme] .support-widget__field input,
html[data-theme] .support-widget__field textarea,
html[data-theme] .support-widget__upload-picker {
  background: var(--theme-surface-soft);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .support-widget__field input::placeholder,
html[data-theme] .support-widget__field textarea::placeholder {
  color: var(--theme-text-muted);
}

html[data-theme] .support-widget__choice span,
html[data-theme] .support-widget__tag,
html[data-theme] .support-widget__ghost,
html[data-theme] .support-widget__upload-trigger,
html[data-theme] .support-widget__optional {
  background: var(--theme-surface-soft);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .support-widget__optional summary {
  color: var(--theme-text-strong);
}

html[data-theme] .support-widget__choice input:checked + span,
html[data-theme] .support-widget__upload-trigger--active {
  background: var(--theme-accent);
  border-color: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .support-widget__upload-note {
  background: var(--theme-accent-soft);
  color: var(--theme-accent-strong);
}

html[data-theme] .support-widget__message {
  background: var(--theme-surface-soft);
  color: var(--theme-text);
}

html[data-theme] .support-widget__message--cliente,
html[data-theme] .support-widget__primary {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .support-widget__message--equipe {
  background: var(--theme-surface-soft);
  color: var(--theme-text);
}

@media (max-width: 640px) {
  html[data-theme] .support-widget__header-link {
    background: var(--theme-surface-soft);
    border-color: var(--theme-border);
    color: var(--theme-text-strong);
  }

  html[data-theme] .support-widget__actions,
  html[data-theme] .support-widget__composer-actions {
    background:
      linear-gradient(
        180deg,
        transparent 0%,
        var(--theme-bg) 28%,
        var(--theme-bg) 100%
      );
  }

  html[data-theme] .cabecalho__link-icone--suporte {
    width: 3.8rem !important;
    min-width: 3.8rem;
    height: 3.8rem;
    padding: 0 !important;
    border-radius: 1rem !important;
    border-color: color-mix(in srgb, var(--theme-accent) 24%, var(--theme-border)) !important;
    background: color-mix(in srgb, var(--theme-surface) 90%, transparent) !important;
    box-shadow: 0 0.55rem 1.3rem rgba(15, 23, 42, 0.08);
  }

  html[data-theme] .cabecalho__link-icone--suporte .cabecalho__icone-ajuda {
    width: 2rem;
    height: 2rem;
    background: transparent !important;
    border-color: transparent !important;
    color: color-mix(in srgb, var(--theme-accent-strong) 76%, var(--theme-text-strong));
    box-shadow: none !important;
  }

  html[data-theme] .support-widget__primary {
    background:
      linear-gradient(
        180deg,
        color-mix(in srgb, var(--theme-accent) 76%, #0f172a) 0%,
        color-mix(in srgb, var(--theme-accent-hover) 78%, #0f172a) 100%
      );
    color: #ffffff;
  }
}

html[data-theme] .support-desk,
html[data-theme] .painel-notificacoes-admin {
  background:
    radial-gradient(circle at top right, var(--theme-accent-soft), transparent 26rem),
    var(--theme-bg);
  color: var(--theme-text);
}

html[data-theme] .support-desk__hero,
html[data-theme] .support-desk__sidebar,
html[data-theme] .support-desk__thread,
html[data-theme] .support-desk__empty-list,
html[data-theme] .support-desk__empty-thread,
html[data-theme] .support-desk__summary,
html[data-theme] .support-desk__alert,
html[data-theme] .support-desk__ticket,
html[data-theme] .support-desk__meta-item,
html[data-theme] .support-desk__feedback,
html[data-theme] .painel-notificacoes-admin__hero,
html[data-theme] .painel-notificacoes-admin__bloco,
html[data-theme] .painel-notificacoes-admin__alerta,
html[data-theme] .painel-notificacoes-admin__tema-card,
html[data-theme] .painel-notificacoes-admin__modo,
html[data-theme] .painel-notificacoes-admin__cliente,
html[data-theme] .painel-notificacoes-admin__vazio {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: var(--theme-shadow);
}

html[data-theme] .support-desk__empty-list,
html[data-theme] .support-desk__empty-thread,
html[data-theme] .support-desk__summary,
html[data-theme] .support-desk__meta-item,
html[data-theme] .painel-notificacoes-admin__vazio {
  background: var(--theme-surface-soft);
}

html[data-theme] .support-desk__title,
html[data-theme] .support-desk__sidebar-head h2,
html[data-theme] .support-desk__thread-head h2,
html[data-theme] .support-desk__empty-list strong,
html[data-theme] .support-desk__empty-thread strong,
html[data-theme] .support-desk__summary strong,
html[data-theme] .support-desk__ticket-top strong,
html[data-theme] .support-desk__meta-item strong,
html[data-theme] .support-desk__feedback-head h3,
html[data-theme] .support-desk__reply-form label,
html[data-theme] .painel-notificacoes-admin__titulo,
html[data-theme] .painel-notificacoes-admin__cabecalho-bloco h2,
html[data-theme] .painel-notificacoes-admin__cabecalho-bloco h3,
html[data-theme] .painel-notificacoes-admin__campo label,
html[data-theme] .painel-notificacoes-admin__tema-titulo,
html[data-theme] .painel-notificacoes-admin__modo strong,
html[data-theme] .painel-notificacoes-admin__cliente strong,
html[data-theme] .painel-notificacoes-admin__vazio strong {
  color: var(--theme-text-strong);
}

html[data-theme] .support-desk__eyebrow,
html[data-theme] .support-desk__thread-eyebrow,
html[data-theme] .support-desk__description,
html[data-theme] .support-desk__sidebar-head p,
html[data-theme] .support-desk__thread-head p,
html[data-theme] .support-desk__empty-list p,
html[data-theme] .support-desk__empty-thread p,
html[data-theme] .support-desk__summary p,
html[data-theme] .support-desk__ticket p,
html[data-theme] .support-desk__ticket small,
html[data-theme] .support-desk__ticket-date,
html[data-theme] .support-desk__meta-item span,
html[data-theme] .support-desk__feedback-comment,
html[data-theme] .painel-notificacoes-admin__descricao,
html[data-theme] .painel-notificacoes-admin__cabecalho-bloco p,
html[data-theme] .painel-notificacoes-admin__ajuda,
html[data-theme] .painel-notificacoes-admin__tema-descricao,
html[data-theme] .painel-notificacoes-admin__modo small,
html[data-theme] .painel-notificacoes-admin__cliente small,
html[data-theme] .painel-notificacoes-admin__vazio p {
  color: var(--theme-text-muted);
}

html[data-theme] .support-desk__tab,
html[data-theme] .support-desk__close-button,
html[data-theme] .support-desk__feedback-pending,
html[data-theme] .painel-notificacoes-admin__botao--secundario {
  background: var(--theme-surface-soft);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .support-desk__tab--active,
html[data-theme] .support-desk__send-button,
html[data-theme] .support-desk__toggle-button,
html[data-theme] .painel-notificacoes-admin__botao {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .painel-notificacoes-admin__botao--secundario {
  background: var(--theme-surface-soft);
  color: var(--theme-text);
}

html[data-theme] .support-desk__tab span {
  background: var(--theme-surface);
  color: var(--theme-text);
}

html[data-theme] .support-desk__tab--active span {
  background: rgba(255, 255, 255, 0.18);
  color: #ffffff;
}

html[data-theme] .support-desk__ticket--active {
  background: var(--theme-accent-soft);
  border-color: var(--theme-accent);
}

html[data-theme] .support-desk__ticket-badge {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .support-desk__message--cliente {
  background: var(--theme-surface-soft);
  color: var(--theme-text);
}

html[data-theme] .support-desk__message--cliente .support-desk__message-meta {
  color: var(--theme-text-muted);
}

html[data-theme] .support-desk__message--equipe {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .support-desk__message--equipe .support-desk__message-meta {
  color: rgba(255, 255, 255, 0.8);
}

html[data-theme] .support-desk__reply-form textarea,
html[data-theme] .painel-notificacoes-admin__campo input,
html[data-theme] .painel-notificacoes-admin__campo textarea,
html[data-theme] .painel-notificacoes-admin__campo select {
  background: var(--theme-surface-soft);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .support-desk__reply-form textarea::placeholder,
html[data-theme] .painel-notificacoes-admin__campo input::placeholder,
html[data-theme] .painel-notificacoes-admin__campo textarea::placeholder {
  color: var(--theme-text-muted);
}

html[data-theme] .support-desk__reply-form textarea:focus,
html[data-theme] .painel-notificacoes-admin__campo input:focus,
html[data-theme] .painel-notificacoes-admin__campo textarea:focus,
html[data-theme] .painel-notificacoes-admin__campo select:focus {
  border-color: var(--theme-accent);
  box-shadow: 0 0 0 0.3rem var(--theme-accent-soft);
}

html[data-theme] .painel-notificacoes-admin__tema-check {
  background: var(--theme-surface);
  border-color: var(--theme-border);
}

html[data-theme] .painel-notificacoes-admin__tema-card:has(input:checked),
html[data-theme] .painel-notificacoes-admin__modo:has(input:checked),
html[data-theme] .painel-notificacoes-admin__cliente:has(input:checked) {
  background: var(--theme-accent-soft);
  border-color: var(--theme-accent);
}

html[data-theme] .painel-notificacoes-admin__checkbox {
  color: var(--theme-text);
}

html[data-theme] .painel-notificacoes-admin__alerta--sucesso {
  background: color-mix(in srgb, var(--theme-success) 10%, var(--theme-surface));
  border-color: color-mix(in srgb, var(--theme-success) 28%, transparent);
  color: var(--theme-success);
}

html[data-theme] .painel-notificacoes-admin__alerta--erro {
  background: color-mix(in srgb, var(--theme-danger) 10%, var(--theme-surface));
  border-color: color-mix(in srgb, var(--theme-danger) 26%, transparent);
  color: var(--theme-danger);
}

html[data-theme] .cabecalho--black ~ .site-footer,
html[data-theme] .site-footer {
  background:
    radial-gradient(circle at top left, var(--theme-accent-soft), transparent 24rem),
    var(--theme-surface);
  border-top-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .cabecalho--black ~ .site-footer .site-footer__social-link,
html[data-theme] .cabecalho--black ~ .site-footer .site-footer__legal a,
html[data-theme] .site-footer .site-footer__social-link,
html[data-theme] .site-footer .site-footer__legal a {
  color: var(--theme-text-strong);
  opacity: 1;
}

html[data-theme] .cabecalho--black ~ .site-footer .site-footer__note,
html[data-theme] .site-footer .site-footer__note {
  color: var(--theme-text-muted);
  opacity: 1;
}

html[data-theme] .confirmacao-card {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: var(--theme-shadow);
}

html[data-theme] .confirm-img-container {
  background: var(--theme-bg-soft);
  border-color: var(--theme-accent);
}

html[data-theme] .confirm-texto-pequeno {
  color: var(--theme-text-muted);
}

html[data-theme] .confirm-nome {
  color: var(--theme-text-strong);
}

html[data-theme] .btn-circular {
  background: var(--theme-surface-soft);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .btn-circular:hover {
  background: var(--theme-surface);
}

html[data-theme] .btn-confirmar-principal {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .store-header,
html[data-theme] .header-title,
html[data-theme] .controls-bar {
  color: var(--theme-text);
}

html[data-theme] .header-title h1,
html[data-theme] .titulo-Carrinho,
html[data-theme] .prod-name,
html[data-theme] .u-name,
html[data-theme] .total-real,
html[data-theme] .total-num {
  background: none;
  color: var(--theme-text-strong);
  -webkit-background-clip: initial;
  background-clip: initial;
  -webkit-text-fill-color: currentColor;
}

html[data-theme] .header-title p,
html[data-theme] .u-label,
html[data-theme] .prod-type,
html[data-theme] .total-txt,
html[data-theme] .total-credits,
html[data-theme] .catalog-empty-state {
  color: var(--theme-text-muted);
}

html[data-theme] .controls-bar,
html[data-theme] .user-selector,
html[data-theme] .search-wrapper,
html[data-theme] .catalog-empty-state,
html[data-theme] .floating-dock {
  background: var(--theme-surface);
  border-color: var(--theme-border);
}

html[data-theme] .user-selector:hover,
html[data-theme] .search-wrapper:focus-within {
  background: var(--theme-surface-soft);
  border-color: var(--theme-accent);
}

html[data-theme] .avatar-circle,
html[data-theme] .img-box,
html[data-theme] .cart-icon-circle {
  background: var(--theme-bg-soft);
  border-color: var(--theme-border);
  color: var(--theme-text-muted);
}

html[data-theme] .user-selector > .material-symbols-outlined,
html[data-theme] .avatar-circle .material-symbols-outlined,
html[data-theme] .search-icon,
html[data-theme] .sell-icon {
  color: var(--theme-text-muted);
}

html[data-theme] .sell-icon:hover,
html[data-theme] .cart-icon-circle {
  color: var(--theme-accent);
}

html[data-theme] .search-wrapper input {
  color: var(--theme-text);
}

html[data-theme] .search-wrapper input::placeholder {
  color: var(--theme-text-muted);
}

html[data-theme] .price-tag-float {
  background: var(--theme-elevated);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .p-new {
  color: var(--theme-text-strong);
}

html[data-theme] .p-new-selec,
html[data-theme] .total-credits span {
  color: var(--theme-accent-strong);
}

html[data-theme] .btn-finish {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .btn-finish:hover {
  box-shadow: 0 0 20px var(--theme-accent-soft);
}

html[data-theme] .pedidos-wrapper {
  background: var(--theme-bg);
}

html[data-theme] .pedidos-filter-label {
  background: var(--theme-bg);
  color: var(--theme-text-muted);
}

html[data-theme] .pedidos-filter-list,
html[data-theme] .filter-selected,
html[data-theme] .filter-options,
html[data-theme] .filter-option {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .filter-selected {
  background: var(--theme-surface);
}

html[data-theme] .filter-options {
  box-shadow: var(--theme-shadow);
}

html[data-theme] .filter-option:hover {
  background: var(--theme-surface-soft);
  box-shadow: none;
}

html[data-theme] .filter-option.active {
  background: var(--theme-accent);
  color: #ffffff;
  box-shadow: 0 8px 18px var(--theme-accent-soft);
}

html[data-theme] .filter-chips-wrapper::after {
  background: linear-gradient(
    to right,
    transparent,
    var(--theme-bg) 70%
  );
}

html[data-theme] .filter-chips-wrapper::before {
  background: linear-gradient(
    to left,
    color-mix(in srgb, var(--theme-bg) 72%, transparent),
    transparent
  );
}

html[data-theme] .filter-chip {
  background: var(--theme-surface);
  border: 1px solid var(--theme-border);
  color: var(--theme-text);
}

html[data-theme] .filter-chip:hover {
  background: var(--theme-surface-soft);
}

html[data-theme] .filter-chip.active {
  background: var(--theme-accent);
  color: #ffffff;
}

html[data-theme] .pedido-row {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: var(--theme-shadow);
}

html[data-theme] .pedido-row:hover {
  background: var(--theme-surface-soft);
}

html[data-theme] .pedido-name {
  color: var(--theme-text-strong);
}

html[data-theme] .pedido-desc {
  color: var(--theme-text);
}

html[data-theme] .pedido-date {
  background: var(--theme-bg-soft);
  box-shadow: inset 0 0 0 1px var(--theme-border);
  color: var(--theme-text-muted);
}

html[data-theme] .pedido-date span,
html[data-theme] .pedido-arrow {
  color: var(--theme-text-muted);
}

html[data-theme] #detalhes-pedido-container,
html[data-theme] .pedido-detalhes-view {
  color: var(--theme-text);
}

html[data-theme] .detalhes-titulo {
  color: var(--theme-text-strong);
}

html[data-theme] .detalhes-subtitulo,
html[data-theme] .detalhes-footer,
html[data-theme] .likes-antes-info,
html[data-theme] .tempo-estimado,
html[data-theme] .imvu-detail-username,
html[data-theme] .imvu-username,
html[data-theme] .imvu-user-id {
  color: var(--theme-text-muted) !important;
}

html[data-theme] .detalhes-user-box,
html[data-theme] .likes-user-box,
html[data-theme] .imvu-user-box {
  background: var(--theme-surface);
  border: 1px solid var(--theme-border);
  box-shadow: var(--shadow-sm);
}

html[data-theme] .btn-avatar-img {
  border-color: var(--theme-border);
}

html[data-theme] .btn-user-name,
html[data-theme] .status-numbers,
html[data-theme] .imvu-display-name,
html[data-theme] .contest-box h3 {
  color: var(--theme-text-strong) !important;
}

html[data-theme] .detalhes-items-box,
html[data-theme] .likes-status-box,
html[data-theme] .username-request-box,
html[data-theme] .boost-status-box,
html[data-theme] .picture-request-box {
  background: color-mix(in srgb, var(--theme-surface) 58%, transparent);
  border-color: var(--theme-border);
}

html[data-theme] .item-card,
html[data-theme] .imvu-item-card,
html[data-theme] .contest-box {
  background: var(--theme-surface);
  border: 1px solid var(--theme-border);
  box-shadow: var(--shadow-sm);
}

html[data-theme] .item-img-wrapper,
html[data-theme] .imvu-img-container {
  background: var(--theme-bg-soft);
  border-color: var(--theme-border);
}

html[data-theme] .item-name,
html[data-theme] .imvu-item-name {
  color: var(--theme-text);
}

html[data-theme] .item-price-badge {
  background: var(--theme-elevated);
  border: 1px solid var(--theme-border);
  color: var(--theme-text-strong);
  box-shadow: var(--shadow-sm);
}

html[data-theme] .status-entregue {
  background: var(--theme-success);
  color: #ffffff;
}

html[data-theme] .status-pendente {
  background: var(--theme-warning-text);
  color: #ffffff;
}

html[data-theme] .status-error,
html[data-theme] .status-desconhecido {
  background: var(--theme-price-badge);
  color: #ffffff;
}

html[data-theme] .status-wait {
  background: var(--theme-warning-bg);
  border: 1px solid color-mix(in srgb, var(--theme-warning-text) 42%, transparent);
  color: var(--theme-warning-text);
}

html[data-theme] .status-ok {
  background: color-mix(in srgb, var(--theme-success) 18%, var(--theme-surface));
  border: 1px solid color-mix(in srgb, var(--theme-success) 44%, transparent);
  color: var(--theme-success);
}

html[data-theme] .username-request-box,
html[data-theme] .picture-request-box {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 24px 0;
  border-style: dashed;
  border-radius: 12px;
}

html[data-theme] .username-request-box {
  padding: 20px;
  font-size: 18px;
}

html[data-theme] .picture-request-box {
  padding: 40px 20px;
}

html[data-theme] .picture-request-image {
  width: 100%;
  max-width: 250px;
  height: auto;
  border: 4px solid var(--theme-elevated);
  box-shadow: var(--theme-shadow);
}

html[data-theme] .boost-status-box {
  position: relative;
  display: flex;
  min-height: 120px;
  margin: 24px 0;
  padding: 30px 20px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-style: dashed;
  border-radius: 12px;
}

html[data-theme] .boost-status-box .tempo-estimado {
  margin-bottom: 15px;
  font-size: 14px;
  align-self: center;
}

html[data-theme] .boost-progress-line {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 18px;
  font-weight: 700;
  color: var(--theme-text-strong);
}

html[data-theme] .boost-status-box > div {
  color: var(--theme-text-strong) !important;
}

html[data-theme] .boost-status-box > .tempo-estimado {
  color: var(--theme-text-muted) !important;
}

html[data-theme] .boost-status-box > div[style*="bottom"] {
  color: var(--theme-text-muted) !important;
}

html[data-theme] .boost-owned-note {
  position: absolute;
  bottom: 15px;
  left: 20px;
  font-size: 13px;
  color: var(--theme-text-muted) !important;
}

html[data-theme] .imvu-avatar-frame {
  width: 50px;
  height: 50px;
  flex: 0 0 auto;
}

html[data-theme] .imvu-detail-avatar {
  border-radius: 8px;
}

html[data-theme] .imvu-detail-user-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

html[data-theme] .imvu-detail-username {
  margin-top: -5px;
  font-size: 13px;
}

/* ==================================================
   Camada base para novas telas com tema claro/escuro
   Use o prefixo gc-theme-* em paginas novas para nao
   precisar escolher cores fixas manualmente.
================================================== */

.gc-theme-page {
  min-height: 100vh;
  background: var(--theme-bg);
  color: var(--theme-text);
}

.gc-theme-container {
  width: min(1200px, calc(100% - 32px));
  margin: 0 auto;
}

.gc-theme-section {
  padding: clamp(24px, 5vw, 56px) 0;
}

.gc-theme-card,
.gc-theme-panel {
  background: var(--theme-surface);
  border: 1px solid var(--theme-border);
  border-radius: 18px;
  color: var(--theme-text);
  box-shadow: var(--theme-shadow);
}

.gc-theme-card {
  padding: clamp(16px, 3vw, 28px);
}

.gc-theme-panel {
  padding: clamp(14px, 2.5vw, 22px);
}

.gc-theme-surface-soft {
  background: var(--theme-surface-soft);
  border: 1px solid var(--theme-border);
  color: var(--theme-text);
}

.gc-theme-title {
  color: var(--theme-text-strong);
  font-weight: 800;
}

.gc-theme-muted {
  color: var(--theme-text-muted);
}

.gc-theme-divider {
  border: 0;
  border-top: 1px solid var(--theme-border);
}

.gc-theme-input,
.gc-theme-select,
.gc-theme-textarea,
.gc-theme-button {
  border: 1px solid var(--theme-border);
  border-radius: 12px;
  font: inherit;
}

.gc-theme-input,
.gc-theme-select,
.gc-theme-textarea {
  width: 100%;
  background: var(--theme-surface);
  color: var(--theme-text);
  padding: 12px 14px;
  outline: none;
}

.gc-theme-input::placeholder,
.gc-theme-textarea::placeholder {
  color: var(--theme-text-muted);
}

.gc-theme-input:focus,
.gc-theme-select:focus,
.gc-theme-textarea:focus {
  border-color: var(--theme-accent);
  box-shadow: 0 0 0 3px var(--theme-accent-soft);
}

.gc-theme-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 16px;
  background: var(--theme-surface-soft);
  color: var(--theme-text);
  cursor: pointer;
  font-weight: 800;
  text-decoration: none;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.gc-theme-button:hover {
  background: var(--theme-accent-soft);
  border-color: var(--theme-accent);
  color: var(--theme-accent-strong);
  transform: translateY(-1px);
}

.gc-theme-button--primary {
  background: var(--theme-accent);
  border-color: var(--theme-accent);
  color: #ffffff;
}

.gc-theme-button--primary:hover {
  background: var(--theme-accent-hover);
  border-color: var(--theme-accent-hover);
  color: #ffffff;
}

.gc-theme-button--ghost {
  background: transparent;
}

.gc-theme-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  border: 1px solid var(--theme-border);
  background: var(--theme-surface-soft);
  color: var(--theme-text);
  padding: 6px 12px;
  font-weight: 800;
}

.gc-theme-list {
  display: grid;
  gap: 10px;
}

.gc-theme-row {
  background: var(--theme-surface);
  border: 1px solid var(--theme-border);
  border-radius: 16px;
  color: var(--theme-text);
  padding: 14px;
}

.gc-theme-scroll {
  scrollbar-color: var(--theme-text-muted) transparent;
}

.gc-theme-scroll::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

.gc-theme-scroll::-webkit-scrollbar-thumb {
  background: var(--theme-text-muted);
  border-radius: 999px;
  border: 3px solid transparent;
  background-clip: content-box;
}
