/* Canonical palette. Legacy paint adapters fall back to their original colors in dark mode. */
:root {
  color-scheme:light;
  --talion-color-bg:#f4f6fa;
  --talion-color-panel:#ffffff;
  --talion-color-raised:#eef2f8;
  --talion-color-text:#183153;
  --talion-color-muted:#60718a;
  --talion-color-line:#dce4ef;
  --talion-color-accent:#356ae6;
  --talion-color-on-accent:#ffffff;
  --talion-color-info:#315fcc;
  --talion-color-success:#21755b;
  --talion-color-warning:#966019;
  --talion-color-danger:#bf3947;
  --talion-color-purple:#7252ad;
  --talion-color-shadow:0 12px 36px #1831530b;
  --talion-paint-surface:var(--talion-color-panel);
  --talion-paint-raised:var(--talion-color-raised);
  --talion-paint-canvas:var(--talion-color-bg);
  --talion-paint-text:var(--talion-color-text);
  --talion-paint-muted:var(--talion-color-muted);
  --talion-paint-line:var(--talion-color-line);
  --talion-paint-accent:var(--talion-color-accent);
  --talion-paint-accent-text:#2858c5;
  --talion-paint-info:var(--talion-color-info);
  --talion-paint-success:var(--talion-color-success);
  --talion-paint-warning:var(--talion-color-warning);
  --talion-paint-danger:var(--talion-color-danger);
  --talion-paint-purple:var(--talion-color-purple);
  --talion-paint-on-accent:var(--talion-color-on-accent);
  --talion-paint-accent-tint:#edf3ff;
  --talion-paint-info-tint:#edf3ff;
  --talion-paint-success-tint:#eaf6f0;
  --talion-paint-warning-tint:#fff6e7;
  --talion-paint-danger-tint:#fff0f2;
  --talion-paint-purple-tint:#f3effb;
  --talion-paint-accent-line:#b6cafa;
  --talion-paint-info-line:#b6cafa;
  --talion-paint-success-line:#b8decd;
  --talion-paint-warning-line:#ead2aa;
  --talion-paint-danger-line:#edbbc3;
  --talion-paint-purple-line:#d6c8ef;
  --talion-paint-shadow:rgba(24,49,83,.09);
  --talion-paint-overlay:rgba(24,37,60,.36);
  --talion-paint-grid:rgba(24,49,83,.07);
  --talion-paint-selection:#dfeaff;
  --talion-native-scheme:light;
}
html[data-talion-theme="dark"] {
  color-scheme:dark;
  --talion-color-bg:#0a0d0b;
  --talion-color-panel:#111512;
  --talion-color-raised:#171b18;
  --talion-color-text:#f2f0e8;
  --talion-color-muted:#9da69f;
  --talion-color-line:#29332d;
  --talion-color-accent:#c8ff3d;
  --talion-color-on-accent:#10150d;
  --talion-color-info:#84a7ff;
  --talion-color-success:#8bd450;
  --talion-color-warning:#ffc66d;
  --talion-color-danger:#e56b6b;
  --talion-color-purple:#b79bff;
  --talion-color-shadow:0 24px 70px #0007;
  --talion-paint-surface:initial;
  --talion-paint-raised:initial;
  --talion-paint-canvas:initial;
  --talion-paint-text:initial;
  --talion-paint-muted:initial;
  --talion-paint-line:initial;
  --talion-paint-accent:initial;
  --talion-paint-accent-text:initial;
  --talion-paint-info:initial;
  --talion-paint-success:initial;
  --talion-paint-warning:initial;
  --talion-paint-danger:initial;
  --talion-paint-purple:initial;
  --talion-paint-on-accent:initial;
  --talion-paint-accent-tint:initial;
  --talion-paint-info-tint:initial;
  --talion-paint-success-tint:initial;
  --talion-paint-warning-tint:initial;
  --talion-paint-danger-tint:initial;
  --talion-paint-purple-tint:initial;
  --talion-paint-accent-line:initial;
  --talion-paint-info-line:initial;
  --talion-paint-success-line:initial;
  --talion-paint-warning-line:initial;
  --talion-paint-danger-line:initial;
  --talion-paint-purple-line:initial;
  --talion-paint-shadow:initial;
  --talion-paint-overlay:initial;
  --talion-paint-grid:initial;
  --talion-paint-selection:initial;
  --talion-native-scheme:dark;
}
html { background:var(--talion-color-bg); }
html .talion-theme-toggle {
  appearance:none;display:inline-grid;place-items:center;flex:0 0 42px;
  width:42px;height:42px;min-width:42px;min-height:42px;padding:0;
  border:1px solid var(--talion-color-line);border-radius:11px;
  background:var(--talion-color-panel);color:var(--talion-color-text);
  box-shadow:none;cursor:pointer;line-height:1;vertical-align:middle;
  transition:background .15s,border-color .15s,color .15s;
}
html .talion-theme-toggle:hover {background:var(--talion-color-raised);border-color:var(--talion-color-accent);color:var(--talion-color-accent);transform:none;box-shadow:none;}
html .talion-theme-toggle:focus-visible {outline:3px solid var(--talion-color-accent);outline-offset:3px;}
.talion-theme-toggle svg {width:20px;height:20px;pointer-events:none;}
html .talion-theme-sun {display:none;}
html[data-talion-theme="dark"] .talion-theme-sun {display:block;}
html[data-talion-theme="dark"] .talion-theme-moon {display:none;}
.talion-auth-theme {position:absolute;right:24px;top:22px;z-index:4;}
.talion-brand-light {display:none;}
.talion-legacy-mark {display:inline-grid;place-items:center;flex:0 0 auto;}
.talion-legacy-mark img {display:block;object-fit:contain;}
#audit-form .choice label {position:relative;min-width:0;}
#audit-form .choice input {width:1px;height:1px;padding:0;margin:0;clip-path:inset(50%);overflow:hidden;}
#audit-form .choice input:focus-visible+span {outline:3px solid var(--talion-color-accent);outline-offset:3px;}
html .login-submit {background:var(--talion-color-accent);color:var(--talion-color-on-accent);border-radius:11px;}
html .login-submit :is(.chatgpt-mark,i) {color:inherit;}
html[data-talion-theme="dark"] :is(.admin-app,.admin-login-page,.admin-state-page) {
  --admin-ink:var(--talion-color-text);--admin-paper:var(--talion-color-bg);--admin-white:var(--talion-color-panel);--admin-line:var(--talion-color-line);--admin-muted:var(--talion-color-muted);
}
html:not([data-talion-theme="dark"]) .brand-lockup>img {display:none;}
html:not([data-talion-theme="dark"]) .talion-brand-light {display:flex;align-items:center;gap:10px;font-size:23px;font-weight:800;letter-spacing:.08em;color:var(--talion-color-text);height:100%;}
html:not([data-talion-theme="dark"]) .talion-brand-light img {position:static;display:block;width:32px;height:32px;}
html:not([data-talion-theme="dark"]) img[src*="/brand/talion-symbol.png"] {filter:brightness(0) saturate(100%) invert(36%) sepia(98%) saturate(1890%) hue-rotate(211deg) brightness(94%) contrast(94%);}
html:not([data-talion-theme="dark"]) :is(.site-shell,.dispatch-short,.px) {background:var(--talion-color-bg);}
html:not([data-talion-theme="dark"]) .intro-curtain {display:none;}
html:not([data-talion-theme="dark"]) .hero-glow {opacity:.2;}
html:not([data-talion-theme="dark"]) .auth-art::after {box-shadow:0 0 0 70px #356ae605,0 0 0 140px #356ae603;}
html:not([data-talion-theme="dark"]) .hero-copy h1 {font-size:clamp(44px,6.1vw,84px);line-height:1.02;letter-spacing:-.055em;}
html:not([data-talion-theme="dark"]) :is(.button,.header-cta,.control-entry,.px-btn,.ds-cta,.contact-card-link) {border-radius:10px;}
html:not([data-talion-theme="dark"]) .header-cta {background:var(--talion-color-accent);padding:12px 16px;}
html:not([data-talion-theme="dark"]) .contact-section {background:var(--talion-color-raised);color:var(--talion-color-text);}
html:not([data-talion-theme="dark"]) .contact-card {background:var(--talion-color-panel);color:var(--talion-color-text);border:1px solid var(--talion-color-line);}
html:not([data-talion-theme="dark"]) .contact-button {background:var(--talion-color-accent);color:var(--talion-color-on-accent);border:1px solid var(--talion-color-accent);}
html:not([data-talion-theme="dark"]) .contact-button:hover {background:#2858c5;color:var(--talion-color-on-accent);}
html:not([data-talion-theme="dark"]) .px .px-plans article.featured :is(li,.px-price span,.px-limit) {color:var(--talion-color-on-accent);}
html:not([data-talion-theme="dark"]) {--control-scroll-thumb:#bac7da;--control-scroll-track:#f4f6fa;scrollbar-color:#bac7da #f4f6fa;}
html:not([data-talion-theme="dark"]) .control-topbar-actions>button b {color:#fff;}
html:not([data-talion-theme="dark"]) .control-kicker {color:var(--talion-paint-accent-text);}
html:not([data-talion-theme="dark"]) :is(.site-header,.hero-copy,.hero-product) {animation-delay:0s;opacity:1;}
html:not([data-talion-theme="dark"]) :is(.site-header,.ds-header,.px-header) {background:var(--talion-color-panel);}
html:not([data-talion-theme="dark"]) :is(.sidebar,.topbar,.admin-sidebar,.admin-topbar) {background:var(--talion-color-panel);box-shadow:none;}
html:not([data-talion-theme="dark"]) :is(body,.auth-panel,.audit-page,.admin-app,.admin-login-page,.admin-state-page) {background:var(--talion-color-bg);}
html:not([data-talion-theme="dark"]) :is(.panel,.metric,.th-company-card,.th-service-support,.ds-price-card,.px-demo,.px-score-card,.px-ui-card,.px-insights,.px-crm-board,.px-brief-card,.contact-card) {box-shadow:var(--talion-color-shadow);}
html:not([data-talion-theme="dark"]) :is(.th-company-card,.ds-price-card,.px-demo,.px-score-card,.px-ui-card,.px-insights,.px-crm-board,.px-brief-card,.contact-card) {border-radius:14px;}
html:not([data-talion-theme="dark"]) :is(.th-company-logo,.th-technician-avatar,.nav button.active,.admin-nav a.active) {background:var(--talion-paint-accent-tint);color:var(--talion-paint-accent-text);}
html:not([data-talion-theme="dark"]) :is(.dw-primary,.tw-primary,.header-cta,.button-primary,.ds-cta,.px-btn.primary,.px-leads button,.px-brief-card button,.audit-submit,.login-submit,.admin-primary,.buttons .next,.home,.ds-novaflex,.ds-extra,.px-alert,.px-credit-grid .positive,.px-insights>p) {color:var(--talion-color-on-accent)!important;}
html:not([data-talion-theme="dark"]) :is(.th-company footer>.primary,.tw-entity-card>footer button.primary,.tw-related-list article>button,.tw-row-actions button.primary) {color:var(--talion-paint-accent-text);}
html:not([data-talion-theme="dark"]) .th-company footer>.primary:hover {color:var(--talion-color-on-accent);}
html:not([data-talion-theme="dark"]) :is(.ds-novaflex,.ds-extra,.px-alert,.px-credit-grid .positive,.px-insights>p) :is(p,li,span,strong,b) {color:inherit;}
html:not([data-talion-theme="dark"]) :is(.primary,.dw-primary,.tw-primary,.header-cta,.button-primary,.ds-cta,.px-btn.primary) svg {color:inherit;}
html:not([data-talion-theme="dark"]) :is(.px-header .px-lang,.ds-header nav) {align-items:center;}
html .control-topbar-actions .talion-theme-toggle {flex:0 0 42px;}
@media(max-width:640px) {
  html .talion-theme-toggle {width:40px;height:40px;min-width:40px;min-height:40px;flex-basis:40px;}
  html:not([data-talion-theme="dark"]) .header-cta {width:40px;height:40px;padding:0;gap:0;flex:0 0 40px;}
  .site-header .header-actions {gap:9px;}
  .site-header .brand-lockup {width:127px;}
  html:not([data-talion-theme="dark"]) .talion-brand-light {font-size:19px;gap:7px;}
  html:not([data-talion-theme="dark"]) .talion-brand-light img {width:27px;height:27px;}
  .px-header .px-lang {gap:5px;}
  .px-header .talion-theme-toggle {margin-left:5px;}
  html:not([data-talion-theme="dark"]) .hero-copy h1 {font-size:clamp(38px,10.8vw,56px);}
}
@media(prefers-reduced-motion:reduce) {.talion-theme-toggle {transition:none!important;}}
@media(forced-colors:active) {.talion-theme-toggle {border:1px solid ButtonText;}html:not([data-talion-theme="dark"]) img[src*="/brand/talion-symbol.png"] {filter:none;}}
/* Exact brand pigment; avoids platform-dependent hue rotation of the lime artwork. */
html:not([data-talion-theme="dark"]) :is(.talion-brand-light,.talion-mark){position:relative}
html:not([data-talion-theme="dark"]) .talion-brand-light:before,html:not([data-talion-theme="dark"]) .talion-mark:before{content:"";display:block;flex:0 0 auto;width:32px;height:32px;background:#356ae6;-webkit-mask:url('/brand/talion-symbol.png') center/contain no-repeat;mask:url('/brand/talion-symbol.png') center/contain no-repeat}
html:not([data-talion-theme="dark"]) .talion-mark:before{position:absolute;inset:0;width:100%;height:100%}
html:not([data-talion-theme="dark"]) .talion-brand-light img{display:none}
html:not([data-talion-theme="dark"]) .talion-mark img{visibility:hidden}
@media(max-width:720px){html:not([data-talion-theme="dark"]) .talion-brand-light:before{width:27px;height:27px}}
@media(forced-colors:active){html:not([data-talion-theme="dark"]) :is(.talion-brand-light,.talion-mark):before{background:CanvasText}}
