/* Shared theme tokens override the original automatic colours on every public page. */
html[data-theme="light"]{
  color-scheme:light;--bg:#f6f4f1;--fg:#201c19;--muted:#625b55;--card:#fff;--field:#fff;
  --line:#d9d2cb;--surface:#fff;--canvas:#f6f4f1;--ink:#201c19;--btn:#171412;--btnfg:#fff;
  --frame:#e8e3dd;--red:#d20c1a;--accent:#d20c1a;--theme-soft:#f1eae4;
}
html[data-theme="dark"]{
  color-scheme:dark;--bg:#0c0c0c;--fg:#efeee8;--muted:#b9b0aa;--card:#181615;--field:#211e1c;
  --line:#423b36;--surface:#181615;--canvas:#0c0c0c;--ink:#efeee8;--btn:#ef0606;--btnfg:#fff;
  --frame:#070707;--red:#ef0606;--accent:#ff6a72;--theme-soft:#251c1a;
}
html[data-theme]{background:var(--bg);color:var(--fg)}
html[data-theme] body{background:var(--bg);color:var(--fg)}
html[data-theme] body:has(main.app){background:var(--frame)}
html[data-theme] :is(.panel,.unit-main,.unit-information,.checkout-section,.enrollment-summary,.enrollment-result,.plan-options,.customer-dialog,.account-popover,.menu,.email-panel,.checkout-card,.checkout-summary-card){background:var(--surface);color:var(--fg);border-color:var(--line)}
html[data-theme] :is(.plans-section,.plans-slogan,.about-slogan,.privacy-main){background:var(--canvas);color:var(--fg)}
html[data-theme] :is(.plan-card,.privacy-card,.contact-card,.enrollment-plan){background:var(--surface);color:var(--fg);border-color:var(--line)}
html[data-theme] :is(.plan-icon,.contact-details,.email-panel-head,.cash-option,.policy-summary,.checkout-cash-option){background:var(--theme-soft);color:var(--fg);border-color:var(--line)}
html[data-theme] :is(.plan-icon span,.plan-info ul,.plan-kicker,.plans-heading>p:last-child,.contact-description,.contact-details>p,.contact-details>a,.contact-details address,.contact-kicker,.contact-form label,.contact-email-status,.email-panel label,.email-panel-head p,.email-note,.account-details span,.unit-description,.unit-address,.unit-features p,.unit-shop-visit,.privacy-updated){color:var(--muted)}
html[data-theme] :is(.field>span,.terms-option,.cash-option strong,.summary-payment strong,.enrollment-details strong,.checkout-card-body,.unit-information h1,.unit-information h2){color:var(--fg)}
html[data-theme] :is(.field>small,.field>span small,.cash-option small,.checkout-footnote,.checkout-section-heading p,.plan-facts small,.summary-payment span){color:var(--muted)}
html[data-theme] :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){background:var(--field);color:var(--fg);border-color:var(--line)}
html[data-theme] :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
html[data-theme] :is(.enrollment-plan.is-selected,.personal-trainer-option){background:var(--theme-soft);color:var(--fg)}
html[data-theme] .plan-action{background:var(--btn);color:var(--btnfg)}
html[data-theme] .plan-action:hover{background:var(--red);color:#fff}
html[data-theme] .plans-renewal-login{color:var(--accent)}
html[data-theme] .email-close{background:var(--surface);color:var(--fg)}
html[data-theme] .account-details{border-color:var(--line)}
html[data-theme] .privacy-card nav a{color:var(--fg)}
html[data-theme] .catalog-category-filter{color:var(--fg)}
html[data-theme] :is(.recovery section,#account-content>section){background:var(--surface);color:var(--fg);border-color:var(--line)}
html[data-theme] :is(#account-content article,.customer-conversation article){border-color:var(--line)}
html[data-theme] :is(.muted,.customer-conversation small){color:var(--muted)}
html[data-theme] .badge{background:var(--theme-soft);color:var(--accent)}
html[data-theme] #account-content button:not(:disabled),html[data-theme] .recovery button{background:var(--red);color:#fff}
html[data-theme] .customer-dialog button{background:var(--red);color:#fff}
html[data-theme="dark"] .checkout-status{background:var(--surface);color:var(--fg)!important;border-color:var(--line)}
html[data-theme="dark"] :is(.enrollment-details>span,.summary-line,.terms-option){border-color:var(--line)}
html[data-theme="light"] body>header{background:rgb(255 255 255 / 96%);color:var(--fg);border-color:var(--line)}
html[data-theme="light"] :is(.burger,.store-menu-toggle,.dd>button){color:var(--fg)}
html[data-theme="light"] :is(#store-navigation,header nav.open){background:var(--surface);color:var(--fg);border-color:var(--line)}
html[data-theme="light"] :is(.search,.search input){background:var(--theme-soft);color:var(--fg)}
html[data-theme="light"] :is(.search svg,.cart svg){color:var(--fg)}
html[data-theme="light"] :is(body>footer,#rodape){background:var(--surface);color:var(--fg)}
html[data-theme="light"] :is(footer p,footer .bot,footer .ct span,footer .store-mobile-account span){color:var(--muted);border-color:var(--line)}
html[data-theme="light"] .contact-main{background:linear-gradient(120deg,rgb(250 248 245 / 95%),rgb(245 240 235 / 92%)),url('../imagens/home-visual-1.jpg') center 48%/cover;color:var(--fg)}
html[data-theme="light"] .plans-section .eyebrow{color:var(--muted)}
html[data-theme="light"] .plans-status:not(:empty){color:#a30e1a}
html[data-theme="light"] :is(.plan-card,.contact-card,.privacy-card){box-shadow:0 12px 36px rgb(40 25 15 / 12%)}
html[data-theme] .panel .fl>label{background:var(--surface);color:var(--muted)}
html[data-theme="light"] :is(.hero,.store-hero,.plans-hero,.about-hero,.about-mission,.tile,.show){color:#efeee8}
html[data-theme="dark"] body>header:not(:has(.show)){background:rgb(12 12 12 / 96%);color:var(--fg);border-color:var(--line)}
html[data-theme="dark"] :is(body>footer,#rodape){background:#111;color:var(--fg)}
#site-theme-toggle{
  position:fixed;left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));z-index:35;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;min-height:44px;padding:10px 15px;
  border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--fg);
  box-shadow:0 4px 20px rgb(0 0 0 / 18%);font:600 13px/1.2 system-ui,sans-serif;cursor:pointer;
}
#site-theme-toggle [data-theme-icon]{font-size:19px;line-height:1}
#site-theme-toggle:hover{border-color:var(--red)}
#site-theme-toggle:focus-visible{outline:3px solid var(--red);outline-offset:3px}
@media print{#site-theme-toggle{display:none}}
