:root { color-scheme: light; }

/* O switch muda de fato a paleta; nenhuma imagem ou vídeo recebe filtro. */
html.theme-dark {
  color-scheme: dark;
  /* settings.js grava algumas cores no style inline do <html>; estas regras
     importantes mantêm a paleta escura ativa enquanto o tema estiver ligado. */
  --ink: #edf2f7 !important;
  --ink-soft: #a8b3bf !important;
  --concrete: #171d25 !important;
  --concrete-2: #29333f !important;
  --chalk: #10151b !important;
  --signal: #ff5b74 !important;
  --signal-dark: #ff8294 !important;
  --signal-soft: #45212b !important;
  --signal-tint: #29171d !important;
  --steel: #b1c0d0 !important;
  --olive: #51d18b !important;
  --olive-soft: #173b2b !important;
  --line: #2c3743 !important;
  --white: var(--chalk) !important;
}

html.theme-dark body {
  background-color: var(--chalk) !important;
  color: var(--ink) !important;
}
html.theme-dark .floating-city-search,
html.theme-dark .floating-city-suggestions {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
html.theme-dark .floating-city-search input {
  background: transparent !important;
  color: var(--ink) !important;
}
html.theme-dark .floating-city-suggestions button {
  background: transparent !important;
  color: var(--ink) !important;
}
html.theme-dark .floating-city-suggestions button:hover {
  background: var(--concrete-2) !important;
}
html.theme-dark .site-header {
  background-color: var(--chalk) !important;
  color: var(--ink) !important;
  border-bottom-color: var(--line) !important;
}
html.theme-dark .site-header .nav-links a { color: var(--ink-soft) !important; }
html.theme-dark .site-header .nav-links a:hover { color: var(--ink) !important; }
html.theme-dark .account-drawer,
html.theme-dark .dropdown-menu,
html.theme-dark .modal-content { background-color: var(--chalk); color: var(--ink); }
html.theme-dark .account-drawer { border-color: var(--line); }

html.theme-dark input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),
html.theme-dark select,
html.theme-dark textarea {
  color: var(--ink) !important;
  background-color: var(--concrete) !important;
  border-color: var(--line) !important;
}
html.theme-dark input::placeholder,
html.theme-dark textarea::placeholder { color: var(--ink-soft); opacity: .85; }
html.theme-dark option { color: var(--ink); background: var(--chalk); }

/* Switch visível tanto na home quanto no painel. */
.theme-switch {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 36px;
  padding: 6px 10px;
  border: 1px solid var(--line, #d8dce1);
  border-radius: 999px;
  background: var(--chalk, #fff);
  color: var(--ink, #171b19);
  font: 700 12px/1.1 Inter, system-ui, sans-serif;
  white-space: nowrap;
  cursor: pointer;
}
.theme-switch:focus-visible { outline: 3px solid var(--signal, #6b7280); outline-offset: 2px; }
.theme-switch-track {
  position: relative;
  display: inline-block;
  width: 32px;
  height: 18px;
  flex: 0 0 32px;
  border-radius: 999px;
  background: #aeb7c1;
  transition: background .18s ease;
}
.theme-switch-thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px #0004;
  transition: transform .18s ease;
}
.theme-switch[aria-checked="true"] .theme-switch-track { background: var(--signal, #171b19); }
.theme-switch[aria-checked="true"] .theme-switch-thumb { transform: translateX(14px); }
.theme-switch-floating { position: fixed; top: 12px; right: 14px; z-index: 2147483001; }

/* Painel: neutraliza fundos claros fixos do layout administrativo. */
html.theme-dark .admin-page-heading { border-bottom-color: var(--line) !important; }
html.theme-dark .admin-page-heading h1,
html.theme-dark .admin-flat h1,
html.theme-dark .admin-flat h2,
html.theme-dark .admin-flat h3,
html.theme-dark .home-editor-shell h1,
html.theme-dark .home-editor-shell h2,
html.theme-dark .home-editor-shell h3,
html.theme-dark .footer-editor h1,
html.theme-dark .footer-editor h2,
html.theme-dark .footer-editor h3 { color: var(--ink) !important; }
html.theme-dark .admin-page-heading p,
html.theme-dark .admin-flat > p:first-of-type,
html.theme-dark .home-editor-shell > p:first-of-type,
html.theme-dark .footer-editor > p:first-of-type { color: var(--ink-soft) !important; }
html.theme-dark .admin-wrap,
html.theme-dark .admin-side,
html.theme-dark .admin-preview,
html.theme-dark .admin-flat,
html.theme-dark .home-editor-shell,
html.theme-dark .footer-editor,
html.theme-dark .flat-table,
html.theme-dark .plan-feature-picker,
html.theme-dark .admin-mfa-card,
html.theme-dark .preview-frame {
  background: var(--chalk) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
  box-shadow: 0 8px 24px #0003 !important;
}
html.theme-dark .admin-preview { background: var(--concrete) !important; }
html.theme-dark .preview-frame iframe { background: var(--chalk) !important; color-scheme: dark; }
html.theme-dark .admin-group h2,
html.theme-dark .admin-mfa-card label,
html.theme-dark .flat-table td { color: var(--ink) !important; }
html.theme-dark .admin-mfa-card > p,
html.theme-dark .plan-feature-choice small { color: var(--ink-soft) !important; }
html.theme-dark .admin-mfa-card [data-enrollment],
html.theme-dark .admin-mfa-card [data-confirm],
html.theme-dark .admin-mfa-card [data-recovery] { background: var(--concrete) !important; color: var(--ink) !important; }
html.theme-dark .flat-table th { background: var(--concrete) !important; color: var(--ink) !important; }
html.theme-dark .flat-table th,
html.theme-dark .flat-table td { border-color: var(--line) !important; }
html.theme-dark .flat-table tbody tr:hover { background: var(--concrete) !important; }
html.theme-dark .admin-site-link,
html.theme-dark .admin-heading-actions .admin-logout,
html.theme-dark .admin-app-layout .btn-outline,
html.theme-dark .trainer-actions .action-profile,
html.theme-dark .trainer-actions .action-pending,
html.theme-dark .plan-assignment-actions .plan-apply:not(.btn-signal) {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
html.theme-dark .plan-feature-choice:has(input:checked) {
  background: var(--signal-soft) !important;
  border-color: var(--signal) !important;
}
html.theme-dark .admin-panel [style*="background:#fff"],
html.theme-dark .admin-panel [style*="background: #fff"],
html.theme-dark .admin-panel [style*="background:#ffffff"],
html.theme-dark .admin-panel [style*="background:#fafbfc"] {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}

/* Páginas legais e componentes que ainda usam cores fixas. */
html.theme-dark .legal-wrap,
html.theme-dark .plan-benefits-box {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
html.theme-dark .legal-meta,
html.theme-dark .legal-footer { color: var(--ink-soft) !important; }
html.theme-dark .legal-footer { border-top-color: var(--line) !important; }
html.theme-dark .legal-empty { background: #3e321b !important; color: #ffe0a3 !important; }
html.theme-dark .plan-benefits-box button,
html.theme-dark .plan-benefits-box [data-list] > button,
html.theme-dark .plan-benefits-box [data-close] {
  background: var(--chalk) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
html.theme-dark .plan-benefits-box button[data-refresh],
html.theme-dark .plan-benefits-box form button[type="submit"] {
  background: var(--signal) !important;
  color: #fff !important;
  border-color: var(--signal) !important;
}
html.theme-dark #trainer-travel [role="switch"] { background: #667280; }
html.theme-dark #trainer-travel [role="switch"]:checked { background: var(--signal); }

@media (max-width: 860px) {
  .site-header .theme-switch { min-height: 34px; gap: 6px; padding: 5px 7px; font-size: 11px; }
  .admin-heading-actions { flex-wrap: wrap; }
}
@media (max-width: 380px) {
  .site-header .theme-switch-label { display: none; }
}


/* Home: superfícies fixas e cartões que não usam os tokens globais. */
html.theme-dark .popular-links {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
  box-shadow: none !important;
}
html.theme-dark .popular-links a {
  background: var(--concrete) !important;
  color: var(--ink-soft) !important;
  border-color: var(--line) !important;
}
html.theme-dark .regions-section,
html.theme-dark .trust-section,
html.theme-dark .trainer-promo {
  background: var(--chalk) !important;
  background-image: none !important;
  color: var(--ink) !important;
}
html.theme-dark .regions-card,
html.theme-dark .trust-cards article,
html.theme-dark .trainer-promo-benefits li,
html.theme-dark .trainer-promo-note,
html.theme-dark .visitor-dialog {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
  box-shadow: 0 10px 28px #0004 !important;
}
html.theme-dark .regions-arrows button,
html.theme-dark .regions-states button,
html.theme-dark .regions-cities a,
html.theme-dark .regions-dots button {
  background: var(--concrete-2) !important;
  color: var(--signal) !important;
  border-color: var(--line) !important;
}
html.theme-dark .regions-states button:hover,
html.theme-dark .regions-states button[aria-expanded="true"],
html.theme-dark .regions-cities a:hover,
html.theme-dark .regions-arrows button:hover {
  background: var(--signal-soft) !important;
  color: var(--signal) !important;
  border-color: var(--signal) !important;
}
html.theme-dark .regions-dots button[aria-current="true"] {
  background: var(--signal) !important;
}
html.theme-dark .trainer-promo::before,
html.theme-dark .trainer-promo::after {
  border-color: var(--line) !important;
}
html.theme-dark .trainer-promo-note > span {
  background: var(--signal-soft) !important;
  color: var(--signal) !important;
}
html.theme-dark .reviews-section .avatar-circle {
  background: var(--concrete-2) !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
}
html.theme-dark .trust-section h2,
html.theme-dark .trust-cards h3,
html.theme-dark .trust-cards p,
html.theme-dark .trainer-promo h2,
html.theme-dark .trainer-promo-benefits li,
html.theme-dark .trainer-promo-note p {
  color: var(--ink) !important;
}
html.theme-dark .trust-section p,
html.theme-dark .trainer-promo-benefits li > span + *,
html.theme-dark .trainer-promo-note {
  color: var(--ink-soft) !important;
}
html.theme-dark .visitor-dialog,
html.theme-dark .visitor-dialog label,
html.theme-dark .visitor-dialog h2,
html.theme-dark .visitor-dialog p,
html.theme-dark .visitor-dialog .visitor-login {
  color: var(--ink) !important;
}
html.theme-dark .visitor-top button {
  background: var(--concrete-2) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}

/* Cards that are populated dynamically after the home APIs respond. */
html.theme-dark .trainer-widget,
html.theme-dark .trainer-price-options,
html.theme-dark .trainer-price-option {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
  box-shadow: 0 10px 28px #0004 !important;
}
html.theme-dark .trainer-widget-details,
html.theme-dark .trainer-widget-toggle {
  background: var(--chalk) !important;
  color: var(--ink) !important;
}
html.theme-dark .trainer-widget-status,
html.theme-dark .trainer-price-option span {
  color: var(--ink-soft) !important;
}
html.theme-dark .trainer-price-option:hover,
html.theme-dark .trainer-price-option[aria-pressed="true"] {
  background: var(--signal-soft) !important;
  color: var(--signal) !important;
}
html.theme-dark .trainer-widget-media,
html.theme-dark #shots-strip .shot-card {
  background: #111820 !important;
  border-color: var(--line) !important;
}
html.theme-dark .trainer-widget-arrow {
  background: #10151bd9 !important;
  color: var(--ink) !important;
}
html.theme-dark .plan-news-tag {
  background: #173b2b !important;
  color: #a6f0c5 !important;
}
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .super-featured-head .eyebrow {
  background: var(--signal-soft) !important;
  color: var(--signal) !important;
}
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .super-featured-head p {
  color: var(--ink-soft) !important;
}
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .super-featured-slot > .trainer-widget,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-body,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-voice {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-media {
  background: #111820 !important;
}
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-body h3 a,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-voice-label,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-mini-bio,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-from strong,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-price-arrow,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-facts a,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-facts span,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-time {
  color: var(--ink) !important;
}
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-presence,
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-duration {
  color: var(--ink-soft) !important;
}
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-play {
  color: var(--ink) !important;
  border-color: var(--ink-soft) !important;
}
html.theme-dark :is(#super-destaque, #super-destaque-listagem) .trainer-widget-wave i {
  background: var(--ink-soft) !important;
}
html.theme-dark .site-footer,
html.theme-dark .editable-footer {
  background: var(--chalk) !important;
  color: var(--ink-soft) !important;
  border-top: 1px solid var(--line) !important;
}
html.theme-dark .site-footer h4,
html.theme-dark .editable-footer h4,
html.theme-dark .site-footer .logo,
html.theme-dark .editable-footer .editable-footer-logo {
  color: var(--ink) !important;
}

html.theme-dark .btn-outline:not(.btn-signal) {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}


/* Tema escuro: topo da home sem o brilho/degradê rosado do hero claro. */
html.theme-dark .hero {
  background: var(--chalk) !important;
  background-image: none !important;
}

/* Admin: editor de Stories patrocinados também acompanha o tema selecionado. */
html.theme-dark #sponsored-stories-admin > p[role="status"] {
  background: var(--concrete) !important;
  color: var(--ink-soft) !important;
}
html.theme-dark #sponsored-stories-admin > h2 {
  color: var(--ink) !important;
  border-top-color: var(--line) !important;
}
html.theme-dark .sponsored-editor,
html.theme-dark .sponsored-placement-options {
  background: var(--concrete) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
  box-shadow: 0 8px 24px #0003 !important;
}
html.theme-dark .sponsored-editor h3,
html.theme-dark .sponsored-editor label,
html.theme-dark .sponsored-editor legend,
html.theme-dark .sponsored-editor p[role="status"] {
  color: var(--ink-soft) !important;
}
html.theme-dark .sponsored-editor > img,
html.theme-dark .sponsored-editor > video {
  background: var(--chalk) !important;
  border-color: var(--line) !important;
}
html.theme-dark .sponsored-editor input:not([type="checkbox"]),
html.theme-dark .sponsored-editor textarea,
html.theme-dark .sponsored-editor input[type="file"] {
  background: var(--chalk) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
html.theme-dark .sponsored-editor input::placeholder,
html.theme-dark .sponsored-editor textarea::placeholder {
  color: var(--ink-soft) !important;
}
html.theme-dark .sponsored-editor button:not(.btn-signal) {
  color: var(--ink) !important;
  border-color: var(--line) !important;
}


/* 1.6.195 — cobertura global: superfícies das telas de conta, busca, pagamento,
   painéis, mídia, manutenção e erro seguem a mesma preferência. Fotos e vídeos
   são conteúdo e permanecem com suas cores originais. */
html:not(.theme-dark) { color-scheme: light; }
html.theme-dark {
  --theme-surface: #171d25;
  --theme-surface-raised: #202833;
}
html.theme-dark body {
  background-color: var(--chalk) !important;
  background-image: none !important;
  color: var(--ink) !important;
}
html.theme-dark body :is(h1,h2,h3,h4,h5,h6,p,li,label,legend,summary,strong,em,small,span,dt,dd,th,td,figcaption) {
  color: var(--ink) !important;
}
html.theme-dark body a:not(.btn-signal):not(.btn-primary):not(.btn-danger),
html.theme-dark body button:not(.btn-signal):not(.btn-primary):not(.btn-danger) {
  color: var(--ink) !important;
}
html.theme-dark body :is(main,section,article,aside,header,nav,footer,form,fieldset,details,[role="tabpanel"]) {
  border-color: var(--line);
}
html.theme-dark body :is(.auth-card,.login-card,[data-account-security],.finance-card,.plan-card,.checkout-summary,.checkout-notice,.trainer-plan-panel-card,.current-plan-banner,.card-brick-wrap,.pix-result,.finance-header,.service-place-card,.gender-editor,.sponsored-editor,.sponsored-placement-options,.trainer-social-panel,.popular-links,.visitor-dialog,.visitor-password,.report-form,.report-status,.legal-wrap,.admin-flat,.home-editor-shell,.footer-editor,.admin-wrap,.admin-side,.admin-preview,.preview-frame,.flat-table,.plan-feature-picker,.admin-mfa-card,.dashboard-overview article,.dashboard-sidebar,.trainer-dashboard .form-card,.trainer-dashboard #monetizacao-pane,.trainer-dashboard .dashboard-account,.trainer-dashboard .trainer-analytics,.trainer-analytics-table,.shots-toolbar,.shots-city-search,.shots-city-suggestions,.shots-filter,.shot-feed-item,.regions-card,.filter-toolbar,.gender-tabs,#f-cidade,#search-filters,#listing-city-suggestions,#filter-price-range) {
  background-color: var(--theme-surface) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
  box-shadow: none;
}
html.theme-dark body :is(.finance-page,.admin-content,.admin-app-layout,.panel-wrap,.dashboard-content,.shots-feed,.regions-section,.trust-section,.trainer-promo,.home-shots) {
  background-color: var(--chalk) !important;
  background-image: none !important;
  color: var(--ink) !important;
}
html.theme-dark body :is(.admin-sidebar,.admin-tab-menu,.visual-subnav,.dashboard-public-link,.dashboard-metric-icon,.trainer-dashboard .panel-tab,.trainer-dashboard .file-drop,.trainer-dashboard .field input,.trainer-dashboard .field select,.trainer-dashboard .field textarea,.trainer-dashboard .support-form input,.trainer-dashboard .support-form textarea,.trainer-dashboard .btn-outline,.trainer-analytics-table th,.trainer-analytics-table td,.listing-city-input,#search-filters header,#search-filters footer,#filter-options label:has(input:checked),.gender-tabs button[aria-pressed="true"],#listing-city-submit,#listing-city-suggestions button,#visitor-form input,.service-place-card>span,.account-security-grid input,.admin-app-layout .field input,.admin-app-layout .field select,.admin-app-layout .field textarea,.admin-mfa-card input,.admin-mfa-card textarea,.admin-mfa-card [data-enrollment],.admin-mfa-card [data-confirm],.admin-mfa-card [data-recovery],.sponsored-editor input,.sponsored-editor textarea,.sponsored-editor input[type="file"],.sponsored-placement-options,.shots-filter,.shots-city-search input,.shots-city-suggestions button) {
  background-color: var(--theme-surface-raised) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
html.theme-dark body :is(.admin-page-heading h1,.admin-flat h1,.admin-flat h2,.admin-flat h3,.home-editor-shell h1,.home-editor-shell h2,.home-editor-shell h3,.footer-editor h1,.footer-editor h2,.footer-editor h3,.admin-group h2,.admin-mfa-card label,.dashboard-overview strong,.dashboard-public-link,.dashboard-sidebar h2,.dashboard-hello,.trainer-dashboard .field>label,.trainer-dashboard .dashboard-hero p,.trainer-dashboard .dashboard-overview article>div>span,.trainer-dashboard .dashboard-overview small,.trainer-dashboard .hint,.trainer-dashboard .dashboard-sidebar-note p,.trainer-dashboard .trainer-analytics p,.trainer-dashboard .trainer-analytics-table th,.trainer-dashboard .trainer-analytics-table td,.trainer-dashboard .panel-tab,.trainer-dashboard .panel-tab.active,.trainer-dashboard .panel-tab:hover:not(.active),.trainer-widget-status,.trainer-price-option,.trainer-price-option span,.listing-city-suggestions p,#filter-options legend,#listing-city-suggestions>div,#listing-city-suggestions>p,.report-field label,.legal-meta,.legal-footer) {
  color: var(--ink-soft) !important;
}
html.theme-dark body :is(.admin-sidebar,.admin-tab,.admin-tab-group-toggle,.admin-sidebar-foot,.admin-brand strong,.admin-brand small,.admin-sidebar .admin-logout,.admin-sidebar .admin-site-link) {
  color: var(--ink) !important;
}
html.theme-dark .admin-sidebar { background: var(--theme-surface) !important; border-color: var(--line) !important; }
html.theme-dark .admin-brand-image { background: var(--theme-surface-raised) !important; }
html.theme-dark .admin-tab.active,
html.theme-dark .admin-tab.active:hover,
html.theme-dark .admin-tab-menu .admin-tab.active { background: var(--signal) !important; color: #fff !important; }
html.theme-dark .admin-heading-actions .admin-logout,
html.theme-dark .admin-site-link,
html.theme-dark .admin-app-layout .btn-outline,
html.theme-dark .trainer-dashboard .btn-outline { background: var(--theme-surface-raised) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .trainer-dashboard,
html.theme-dark .trainer-dashboard .site-header { background: var(--chalk) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .trainer-dashboard .dashboard-overview article,
html.theme-dark .trainer-dashboard .dashboard-sidebar,
html.theme-dark .trainer-dashboard .form-card,
html.theme-dark .trainer-dashboard #monetizacao-pane,
html.theme-dark .trainer-dashboard .dashboard-account { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .trainer-dashboard .panel-tab.active { background: var(--signal-soft) !important; color: var(--signal) !important; border-color: var(--signal) !important; }
html.theme-dark .trainer-dashboard .panel-tab:hover:not(.active) { background: var(--theme-surface-raised) !important; color: var(--ink) !important; }
html.theme-dark .trainer-dashboard .chip-check.checked,
html.theme-dark .gender-tabs button[aria-pressed="true"],
html.theme-dark #filter-options label:has(input:checked) { background: var(--signal-soft) !important; border-color: var(--signal) !important; color: var(--signal) !important; }
html.theme-dark .finance-alert.pending { background: #49391b !important; color: #ffe2a4 !important; }
html.theme-dark .finance-alert.error,
html.theme-dark .report-status[data-state="error"] { background: #451f29 !important; color: #ffc1ca !important; border-color: #793342 !important; }
html.theme-dark .finance-alert.success { background: #183e2b !important; color: #a6f0c5 !important; }
html.theme-dark .plan-news-tag { background: #173b2b !important; color: #a6f0c5 !important; }
html.theme-dark .regions-arrows button,
html.theme-dark .regions-states button,
html.theme-dark .regions-cities a,
html.theme-dark .regions-dots button { background: var(--theme-surface-raised) !important; color: var(--signal) !important; border-color: var(--line) !important; }
html.theme-dark .regions-states button:hover,
html.theme-dark .regions-states button[aria-expanded="true"],
html.theme-dark .regions-cities a:hover,
html.theme-dark .regions-arrows button:hover { background: var(--signal-soft) !important; color: var(--signal) !important; }
html.theme-dark .forja-stories { background: #10151b !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .forja-stories button,
html.theme-dark .forja-stories a { color: var(--ink) !important; }
html.theme-dark .fs-report { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .shots-toolbar { background: var(--chalk) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .shots-brand,
html.theme-dark .shots-count,
html.theme-dark .shots-close-top,
html.theme-dark .shots-empty,
html.theme-dark .shots-empty strong { color: var(--ink) !important; }
html.theme-dark .shots-filter.active { background: var(--signal) !important; color: #fff !important; border-color: var(--signal) !important; }
html.theme-dark .shots-status { color: var(--ink-soft) !important; }
html.theme-dark .shots-empty button { background: var(--signal) !important; color: #fff !important; }
html.theme-dark .shot-media-wrap,
html.theme-dark .shot-media { background: #000 !important; }
html.theme-dark .service-hours .today { background: var(--signal-soft) !important; color: var(--signal) !important; }
html.theme-dark .admin-app-layout [style*="background:#fff"],
html.theme-dark .admin-app-layout [style*="background: #fff"],
html.theme-dark body [style*="background:#fff"],
html.theme-dark body [style*="background: #fff"],
html.theme-dark body [style*="background:white"],
html.theme-dark body [style*="background: white"] { background-color: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }

/* No modo claro, também removemos fundos escuros fixos de telas especiais. */
html:not(.theme-dark) .admin-sidebar { background: #f3f5f8 !important; color: #26343d !important; border-color: #dfe5eb !important; }
html:not(.theme-dark) .admin-brand strong { color: #25323b !important; }
html:not(.theme-dark) .admin-brand small,
html:not(.theme-dark) .admin-sidebar-foot,
html:not(.theme-dark) .admin-tab-group-toggle { color: #65727d !important; }
html:not(.theme-dark) .admin-tab { color: #53616c !important; }
html:not(.theme-dark) .admin-tab.active,
html:not(.theme-dark) .admin-tab.active:hover { background: #fce8ee !important; color: #ad2c50 !important; }
html:not(.theme-dark) .visual-subnav,
html:not(.theme-dark) .admin-tab-menu { background: #fff !important; color: #26343d !important; border-color: #dfe5eb !important; box-shadow: 0 8px 24px #14202b12; }
html:not(.theme-dark) .visual-subnav .admin-tab.active { background: #fce8ee !important; color: #ad2c50 !important; }
html:not(.theme-dark) .admin-sidebar .admin-logout { background: #fff !important; color: #34424e !important; border-color: #dfe4e9 !important; }
html:not(.theme-dark) body.shots-page { --shots-bg: #fff; background: #fff !important; color: #202a30 !important; }
html:not(.theme-dark) .shots-toolbar { background: #fff !important; color: #202a30 !important; border-color: #e2e7ec !important; }
html:not(.theme-dark) .shots-brand,
html:not(.theme-dark) .shots-count,
html:not(.theme-dark) .shots-close-top,
html:not(.theme-dark) .shots-empty,
html:not(.theme-dark) .shots-empty strong { color: #202a30 !important; }
html:not(.theme-dark) .shots-city-search input,
html:not(.theme-dark) .shots-filter,
html:not(.theme-dark) .shots-city-suggestions,
html:not(.theme-dark) .shots-city-suggestions button { background: #f4f6f8 !important; color: #202a30 !important; border-color: #dfe4e8 !important; }
html:not(.theme-dark) .shots-filter.active { background: #e54873 !important; color: #fff !important; border-color: #e54873 !important; }
html:not(.theme-dark) .shots-empty button { background: #e54873 !important; color: #fff !important; }
html:not(.theme-dark) .home-shots { background: #f5f6f7 !important; color: #202a30 !important; }
html:not(.theme-dark) .home-shots-head h2 { color: #202a30 !important; }
html:not(.theme-dark) .forja-stories { background: #fff !important; color: #202a30 !important; border-color: #dfe4e8 !important; }
html:not(.theme-dark) .fs-report { background: #fff !important; color: #202a30 !important; border-color: #dfe4e8 !important; }
html:not(.theme-dark) body:has(.tag) { background: #fff !important; color: #202a30 !important; }

@media (max-width: 860px) {
  html.theme-dark .site-header .theme-switch,
  html:not(.theme-dark) .site-header .theme-switch { order: 1; }
}

/* Telas isoladas e componentes que não seguem os tokens legados. */
html.theme-dark body :is(.card,.box,.login,.trust-cards article,.admin-page-heading,.flat-table,.plan-benefits-box,.trainer-analytics-table,#listing-city-suggestions,.listing-city-input,.filter-toolbar,.gender-tabs,.gender-editor,.service-place-card,.visitor-dialog) {
  background-color: var(--theme-surface) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
html.theme-dark body:has(.tag) { background: var(--chalk) !important; color: var(--ink) !important; }
html.theme-dark body:has(.tag) .box,
html.theme-dark body:has(.tag) .login,
html.theme-dark body:has(.tag) input { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body:has(.tag) .tag { background: #49391b !important; color: #ffe2a4 !important; }
html.theme-dark .trust-section { background: var(--chalk) !important; border-color: var(--line) !important; }
html.theme-dark .trust-cards article { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .trust-section p,
html.theme-dark .trust-cards h3,
html.theme-dark .trust-cards p { color: var(--ink-soft) !important; }
html.theme-dark #listing-city-suggestions button,
html.theme-dark .filter-toolbar button,
html.theme-dark #f-cidade,
html.theme-dark #search-filters header,
html.theme-dark #search-filters footer,
html.theme-dark #filter-price-range { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .trainer-price-options,
html.theme-dark .trainer-price-option { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .trainer-price-option:hover,
html.theme-dark .trainer-price-option[aria-pressed="true"] { background: var(--signal-soft) !important; color: var(--signal) !important; }
html.theme-dark .card-brick-wrap,
html.theme-dark .pix-result { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark .finance-page { background: var(--chalk) !important; background-image: none !important; }
html.theme-dark .checkout-summary { background: var(--theme-surface-raised) !important; color: var(--ink) !important; }
html.theme-dark .checkout-summary .muted { color: var(--ink-soft) !important; }
html.theme-dark .method-option:has(input:checked) { background: var(--signal-soft) !important; border-color: var(--signal) !important; }
html.theme-dark .account-security-grid input,
html.theme-dark .visitor-dialog input,
html.theme-dark .visitor-dialog textarea,
html.theme-dark .visitor-dialog select { background: var(--theme-surface-raised) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html:not(.theme-dark) body:has(.tag) { background: #fff !important; color: #202a30 !important; }
html:not(.theme-dark) .trust-section { background: #fff !important; }
html:not(.theme-dark) .forja-stories .fs-report { background: #fff !important; color: #202a30 !important; border-color: #dfe4e8 !important; }

html:not(.theme-dark) .checkout-summary { background: #f4f6f8 !important; color: #202a30 !important; border: 1px solid #dfe4e8 !important; }
html:not(.theme-dark) .checkout-summary .muted { color: #626d77 !important; }
html.theme-dark body [style*="background-color:#fff" i],
html.theme-dark body [style*="background-color: #fff" i],
html.theme-dark body [style*="background-color:white" i],
html.theme-dark body [style*="background-color: white" i],
html.theme-dark body [style*="background-color:rgb(255" i],
html.theme-dark body [style*="background-color: rgb(255" i] { background-color: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }

.finance-header .theme-switch { margin: 0 12px; }
@media (max-width: 760px) {
  .finance-header .wrap { flex-wrap: wrap; justify-content: space-between; row-gap: 8px; }
  .finance-header .theme-switch { order: 1; margin: 0 0 0 auto; }
  .finance-header .nav-actions { order: 2; flex: 1 0 100%; justify-content: flex-end; }
}

.finance-header .nav-actions { display: flex; align-items: center; }
@media (max-width: 760px) {
  .finance-header .nav-actions { display: flex !important; flex-direction: row !important; align-items: center; justify-content: flex-end; width: 100%; flex: 1 0 100%; padding: 0 !important; gap: 8px; }
  .finance-header .nav-actions > * { width: auto !important; flex: 0 1 auto; justify-content: center; text-align: center; }
}

/* 1.6.253 — acabamentos de contraste para componentes legados no modo escuro. */
html.theme-dark body :is(.visual-subnav .admin-tab,.admin-tab-menu .admin-tab,.admin-tabs>.admin-tab:not(.active),.admin-tab-group-toggle) {
  background: var(--theme-surface-raised) !important;
  color: var(--ink-soft) !important;
  border-color: var(--line) !important;
  box-shadow: none !important;
}
html.theme-dark body :is(.visual-subnav .admin-tab:hover,.admin-tab-menu .admin-tab:hover,.admin-tabs>.admin-tab:hover,.admin-tab-group-toggle:hover) {
  background: var(--signal-soft) !important;
  color: var(--ink) !important;
}
html.theme-dark body :is(.admin-tab.active,.visual-subnav .admin-tab.active,.admin-tab-menu .admin-tab.active) {
  background: var(--signal) !important;
  color: #fff !important;
  border-color: var(--signal) !important;
}
html.theme-dark body :is(.status-pill,.tab-badge) { color: #fff !important; }
html.theme-dark body .status-pill.verificado { background: #1b573a !important; color: #c7f4d8 !important; }
html.theme-dark body .status-pill.pendente { background: #664313 !important; color: #ffe3a7 !important; }
html.theme-dark body .status-pill.rejeitado { background: #642b32 !important; color: #ffd0d3 !important; }
html.theme-dark body :is(.trainer-actions .action-approve,.btn-approve) { background: #155b3b !important; border-color: #287b56 !important; color: #e5fff0 !important; }
html.theme-dark body :is(.trainer-actions .action-reject,.btn-reject) { background: #642b32 !important; border-color: #87404a !important; color: #ffe3e6 !important; }
html.theme-dark body :is(.trainer-actions .action-pending,.trainer-actions .action-delete,.trainer-actions .action-detail,.trainer-actions .action-profile) { background: var(--theme-surface-raised) !important; border-color: var(--line) !important; color: var(--ink) !important; }
html.theme-dark body :is(.admin-panel[data-panel="suporte"],#support-admin-list,#support-admin-detail,.client-support-card,.support-dashboard,.support-inbox,.support-conversation,.support-empty-state) { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body :is(.admin-panel[data-panel="suporte"] .char-type-block,#support-admin-detail>div,#support-admin-detail textarea) { background: var(--theme-surface-raised) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body :is(.client-alert-card,.client-quick-card,.client-alert-row,.client-bonus-card,.client-city-manager,.client-city-lock,.client-support-card,.support-panel,.support-ticket-card,.support-empty-state) { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body :is(.client-alert-row,.client-city-add input,.client-bonus-action select,.support-panel input,.support-panel textarea,.support-panel select) { background: var(--theme-surface-raised) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body :is(.service-place-card,.service-place-card>span,.location-help-link,.location-permission-dialog .location-help-intro,.location-permission-dialog .location-privacy,.location-permission-dialog .location-help-links a,.location-actions .location-action) { background: var(--theme-surface-raised) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body :is(.service-place-card p,.service-place-hint,.price-box .meta-line,.trainer-widget-fact,.trainer-widget-mini-bio,.trainer-widget-time) { color: var(--ink-soft) !important; }
html.theme-dark body :is(.trainer-widget-voice,.trainer-widget-play,.trainer-widget-wave,.trainer-widget-price-main,.trainer-widget-price-arrow) { background: var(--theme-surface-raised) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body :is(.customer-trust,.customer-trust-grid,.customer-trust-grid div) { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body .customer-trust-grid span { color: var(--ink-soft) !important; }
html.theme-dark body .plan-checkout-bar { background: #202833 !important; color: var(--ink) !important; border-color: var(--line) !important; box-shadow: 0 -8px 26px #0008 !important; }
html.theme-dark body .plan-bar-info span { color: var(--ink-soft) !important; }
html.theme-dark body .customer-plans-page .customer-trust strong { color: var(--ink) !important; }
html.theme-dark body .customer-plans-page .customer-trust span { color: var(--ink-soft) !important; }
html.theme-dark body :is(.story-viewer,.story-viewer-overlay) { color: #fff; }
html.theme-dark body .admin-credential-settings .password-strength,
html.theme-dark body .admin-credential-settings .password-strength li,
html.theme-dark body .admin-credential-settings .password-match { color: var(--ink-soft) !important; }
html.theme-dark body .admin-credential-settings .password-strength li::before { border-color: #667482 !important; }
html.theme-dark body .admin-credential-settings .password-strength-bars i { background: #3a4652 !important; }
html.theme-dark body .admin-tab-menu { padding: 6px !important; border-radius: 13px !important; }
html.theme-dark body .admin-tab-menu .admin-tab { margin: 2px 0; border-radius: 8px !important; }
html:not(.theme-dark) body .admin-tab-menu { padding: 6px !important; border-radius: 13px !important; }
html:not(.theme-dark) body .admin-tab-menu .admin-tab { margin: 2px 0; border-radius: 8px !important; }
html.theme-dark body :is(.support-center,.support-ticket,.support-chat,.support-chat-empty,.support-chat-pane,.support-detail-pane,.support-main-panel,.support-thread,#support-list,#support-center,#support-workspace) { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body :is(.support-message,.support-msg,.support-ticket:hover,.support-form input,.support-form textarea) { background: var(--theme-surface-raised) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body .char-type-block button:not(.btn-signal) { background: var(--theme-surface-raised) !important; border-color: var(--line) !important; border-radius: 8px !important; color: var(--ink) !important; }
html.theme-dark body .char-type-block button:focus-visible { outline: 2px solid var(--signal) !important; outline-offset: 2px; }
html.theme-dark body :is(.account-drawer-profile,.account-drawer-list,.account-drawer-item,.account-drawer-logout,.drawer-menu-button,.account-subscription-card,.client-progress-card,.client-profile-card,.client-dashboard-card,.client-setting-card,.client-account-card,.client-verification-card) { background: var(--theme-surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
html.theme-dark body :is(.account-drawer-item:hover,.account-drawer-logout:hover,.drawer-menu-button:hover) { background: var(--theme-surface-raised) !important; color: var(--ink) !important; }
html.theme-dark body .account-drawer-icon { background: #332a42 !important; color: #d2b4ff !important; }
html.theme-dark body .account-drawer-profile :is(small,span),html.theme-dark body .account-drawer-item :is(small,span),html.theme-dark body .account-drawer-footer a { color: var(--ink-soft) !important; }
.inline-arrow-icon{display:inline-block;width:16px;height:16px;flex:none;vertical-align:middle;margin-left:4px}
.btn:has(.inline-arrow-icon){display:inline-flex;align-items:center;justify-content:center;gap:5px}
.plan-features{align-content:start!important;gap:12px!important}

/* Janela de escolha de perfil: cards legíveis no tema claro e no tema escuro. */
.modal{max-width:700px!important;border:1px solid var(--line)!important;border-radius:22px!important;color:var(--ink)!important;background:var(--chalk)!important}
.modal-head{padding:24px 26px 0!important}.modal-head h3{color:var(--ink)!important}.modal p.sub{padding:5px 26px 0!important;color:var(--ink-soft)!important}
.modal-options{padding:20px 26px 26px!important;gap:14px!important}
.modal-option{position:relative;display:grid!important;grid-template-columns:56px minmax(0,1fr) 46px;grid-template-rows:auto auto;column-gap:16px!important;row-gap:14px!important;align-items:center!important;padding:18px!important;border:1px solid var(--line)!important;border-radius:22px!important;background:var(--chalk)!important;color:var(--ink)!important;text-decoration:none!important}
.modal-option.is-aluno{border-color:#d7c8ff!important;background:linear-gradient(135deg,#fbf9ff,var(--chalk))!important}
.modal-option.is-trainer{border-color:#f3c3d7!important;background:linear-gradient(135deg,#fff7fb,var(--chalk))!important}
.opt-icon{grid-column:1;grid-row:1;width:56px!important;height:56px!important;border-radius:18px!important;background:#eee7ff!important;color:#7c3aed!important}
.opt-icon svg{width:25px;height:25px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.modal-option.is-trainer .opt-icon{background:#ffe4f0!important;color:#e83282!important}
.opt-copy{grid-column:2;grid-row:1;min-width:0}.opt-copy strong{font-size:18px!important;line-height:1.3;color:var(--ink)!important}.opt-copy>span:not(.opt-benefits){display:block;font-size:14px!important;line-height:1.5;color:var(--ink-soft)!important}
.opt-benefits{grid-column:1/4;grid-row:2;display:flex!important;flex-wrap:wrap;gap:7px!important;padding-top:12px;border-top:1px solid var(--line);color:var(--ink-soft)!important}
.opt-benefits span{display:inline-flex;align-items:center;min-height:29px;padding:4px 10px;border:1px solid var(--line);border-radius:999px;background:var(--chalk);font-size:11px!important;line-height:1.2;color:var(--ink-soft)!important;box-shadow:0 2px 5px #0000000a}
.opt-arrow{grid-column:3;grid-row:1;width:46px;height:46px;margin:0!important;display:grid;place-items:center;border-radius:50%;background:#7c3aed;color:white!important}
.modal-option.is-trainer .opt-arrow{background:#e83282}
.opt-arrow svg{width:20px;height:20px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.modal-option:hover{transform:translateY(-1px);box-shadow:0 8px 22px #171b1912!important}
@media(max-width:540px){.modal-overlay{padding:14px!important}.modal-head{padding:20px 18px 0!important}.modal p.sub{padding:5px 18px 0!important}.modal-options{padding:16px 18px 20px!important}.modal-option{grid-template-columns:46px minmax(0,1fr) 38px;column-gap:11px!important;padding:14px!important;border-radius:18px!important}.opt-icon{width:46px!important;height:46px!important;border-radius:15px!important}.opt-arrow{width:38px;height:38px}.opt-copy strong{font-size:16px!important}.opt-copy>span:not(.opt-benefits){font-size:12px!important}.opt-benefits{gap:5px!important}.opt-benefits span{font-size:10px!important;padding:4px 8px}}
html.theme-dark .modal-option.is-aluno{border-color:#634b91!important;background:linear-gradient(135deg,#241d33,var(--chalk))!important}
html.theme-dark .modal-option.is-trainer{border-color:#754259!important;background:linear-gradient(135deg,#301c28,var(--chalk))!important}
html.theme-dark .opt-benefits span{background:#202832!important;border-color:var(--line)!important;color:var(--ink-soft)!important}
html.theme-dark .opt-benefits{border-color:var(--line)!important}

/* 1.6.291: surfaces and controls in dark mode. */
html.theme-dark body :is(.client-dashboard-hero,.account-danger-card,.drawer-client-vip,.drawer-client-progress,.drawer-summary-card,.drawer-shortcuts a,.drawer-client-task,.support-widget-head,.support-new-form,.support-reply-form,.plan-opt){background:#171d25!important;border-color:#354251!important;color:#edf3f8!important}
html.theme-dark body :is(.drawer-feature-card,.support-priority-note,.client-city-tag,.client-plan-pill,.drawer-client-task em,.drawer-client-progress-head>b){background:#342537!important;border-color:#73516c!important;color:#ffd7e3!important}
html.theme-dark body :is(.client-city-tag button,.client-plan-pill,.drawer-client-task em,.drawer-client-progress-head>b){color:#ffd7e3!important}
html.theme-dark body :is(.drawer-client-vip-icon,.drawer-client-task-icon,.drawer-client-progress-icon,.drawer-feature-icon,.drawer-shortcuts a>span,.support-widget-icon,.support-ticket-icon,.account-danger-icon,.opt-icon){background:#382b49!important;color:#e3c9ff!important}
html.theme-dark body :is(.account-drawer-close,.delete-account-button){background:#202833!important;color:#ffd7e3!important;border-color:#a3657b!important}
html.theme-dark body :is(.client-dashboard-hero,.account-danger-card,.account-drawer,.client-support-widget) :is(p,small){color:#b9c7d6!important}
html.theme-dark body .plan-opt.is-current{opacity:1;background:#252e39!important;border-style:dashed;color:#bac7d4!important}
html.theme-dark body .plan-opt.is-current :is(span,strong,small){color:#bac7d4!important}
html.theme-dark body .plan-opt.is-selected{background:#32212a!important;border-color:#ff4d67!important;box-shadow:0 0 0 1px #ff4d67}
html.theme-dark body .status-banner.verificado{background:#193b2a!important;border:1px solid #387b56;color:#d7f7e3!important}
html.theme-dark body .status-banner.verificado :is(strong,p,span){color:#d7f7e3!important}
html.theme-dark body .status-banner.pendente{background:#42331d!important;color:#ffe3ad!important}
html.theme-dark body .status-banner.rejeitado{background:#46272b!important;color:#ffdae0!important}
html.theme-dark body .status-banner:is(.pendente,.rejeitado) :is(strong,p){color:inherit!important}
html.theme-dark body :is(.audio-tab-btn.active,.auth-tab.active,.role-tab.active){background:#ff4d67!important;color:#23131a!important;border-color:#ff4d67!important}
html.theme-dark body :is(.btn-steel,.btn-signal,.support-refresh){background:#ff4d67!important;border-color:#ff4d67!important;color:#23131a!important}
html.theme-dark body :is(.btn-steel,.btn-signal,.support-refresh) :is(span,strong){color:#23131a!important}
html.theme-dark body :is(.btn-steel,.btn-signal,.support-refresh):hover{background:#ff7186!important}


/* 1.6.292: account drawer actions and publication status. */
html body .account-drawer .drawer-app-btn{background:#ff4d67!important;color:#23131a!important;box-shadow:0 8px 20px #ff4d6726}
html body .account-drawer .drawer-app-btn:hover{background:#ff7186!important}
html.theme-dark body .account-drawer .drawer-logout-btn{background:#202833!important;border-color:#b86b84!important;color:#ffd7e3!important}
html.theme-dark body .account-drawer .drawer-logout-btn:hover{background:#352633!important;border-color:#ff8aa0!important}
html.theme-dark body .account-drawer .drawer-status-pill{background:#193b2a!important;color:#d7f7e3!important;border:1px solid #387b56}
html.theme-dark body .account-drawer .drawer-status-pill :is(span,small,strong){color:#d7f7e3!important}
html.theme-dark body .account-drawer .drawer-app-btn :is(span,strong){color:#23131a!important}
html.theme-dark body .account-drawer .drawer-logout-btn :is(span,strong){color:#ffd7e3!important}
html body .account-drawer :is(.drawer-app-btn,.drawer-logout-btn):focus-visible{outline:3px solid #ff8aa0;outline-offset:3px}

html.theme-dark body :is(.login-switch,.identity-switch){background:#10161d!important;border:1px solid #445365}
html.theme-dark body :is(.login-switch,.identity-switch) button{background:transparent!important;color:#c6d3e0!important;border:1px solid transparent}
html.theme-dark body :is(.login-switch button.active,.identity-switch button[aria-pressed="true"]){background:#ff4d67!important;color:#23131a!important;border-color:#ff7186;box-shadow:0 2px 8px #0003}
html.theme-dark body :is(.login-switch,.identity-switch) button:focus-visible{outline:2px solid #ff8aa0;outline-offset:2px}
html.theme-dark body :is(.modal-close,.photo-close,.gallery-close){background:#202833!important;color:#fff!important;border:1px solid #8393a5!important}
/* Empty punch circles are decoration, not a remove action. */
html body .card-photo>.punch:empty{display:none!important}
/* Shots keeps its dark toolbar in both themes, so the close icon must stay light. */
html body.shots-page .shots-close-top{background:#303b43!important;color:#fff!important;border:1px solid #ffffff40!important}
