/* Light cosmic production theme — Void Scriptor
   Scope: body.theme-light. Loaded after /assets/site.css and after each page's
   inline <style>, so equal-specificity rules here win by source order and
   body.theme-light.<x> wins by specificity. */

body.theme-light{
  --ls-bg:#f2f6fb;
  --ls-bg-2:#e8eef8;
  --ls-surface:#ffffff;
  --ls-glass:rgba(255,255,255,.72);
  --ls-glass-2:rgba(255,255,255,.55);
  --ls-ink:#0b1b2b;
  --ls-muted:#41556b;
  --ls-faint:#5c6f85;
  --ls-line:rgba(19,45,74,.12);
  --ls-line-2:rgba(19,45,74,.2);
  --ls-violet:#6b4bd6;
  --ls-violet-2:#8a6bf0;
  --ls-violet-pale:#e6ddff;
  --ls-cyan:#0e8fb8;
  --ls-cyan-pale:#d6f1fb;
  --ls-shadow:0 18px 44px rgba(19,45,74,.12);
  /* retune the legacy dark-theme tokens so page-level inline rules that still
     reference them (footer, quiz surfaces, hairline borders) stay readable */
  --muted:#41556b;
  --faint:#5c6f85;
  --ash:#41556b;
  --fog:#41556b;
  --silver:#41556b;
  --cloud:#0b1b2b;
  --white:#0b1b2b;
  --pure:#0b1b2b;
  --primary-pale:#3f2aa8;
  --cyan:#087895;
  --signal:#087895;
  --line:rgba(19,45,74,.14);
  --quiz-surface:rgba(255,255,255,.72);
  --quiz-surface-strong:rgba(255,255,255,.92);
  background:var(--ls-bg);
  color:var(--ls-ink);
}

/* ---------- page artwork band (one unique artwork per page) ---------- */
body.theme-light .page-art{
  position:absolute;top:0;left:0;right:0;height:clamp(340px,56vh,600px);
  background-image:var(--page-art);background-size:cover;background-position:right center;
  background-repeat:no-repeat;pointer-events:none;z-index:0;
}
body.theme-light .page-art::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(242,246,251,.94) 0,rgba(242,246,251,.78) 30%,rgba(242,246,251,.34) 58%,rgba(242,246,251,0) 80%);
}
body.theme-light .page-art::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(242,246,251,.28) 0,rgba(242,246,251,.5) 58%,var(--ls-bg) 100%);
}
body.theme-light > main,body.theme-light > footer,
body.theme-light > .backdrop,body.theme-light > .toast,body.theme-light > .byte-panel,
body.theme-light > .byte-assistant{position:relative;z-index:1}

/* ---------- base surfaces ---------- */
html{background:#f2f6fb}
body.theme-light{background:var(--ls-bg)}
body.theme-light h1,body.theme-light h2,body.theme-light h3,
body.theme-light h1 span,body.theme-light .code{color:var(--ls-ink)}
body.theme-light p,body.theme-light li,body.theme-light .lede,body.theme-light .desc{color:var(--ls-muted)}
body.theme-light a{color:var(--ls-violet)}
body.theme-light a:hover{color:var(--ls-ink)}
body.theme-light .eyebrow,body.theme-light .kicker{color:var(--ls-violet)}
body.theme-light .eyebrow::before{background:var(--ls-violet)}
body.theme-light ::selection{background:var(--ls-violet);color:#fff}
body.theme-light :focus-visible{outline-color:var(--ls-violet)!important}

body.theme-light > header{
  position:sticky!important;top:0!important;z-index:60!important;
  background:rgba(255,255,255,.9)!important;
  background-image:none!important;
  border:0!important;
  border-bottom:1px solid var(--ls-line)!important;
  box-shadow:0 8px 24px rgba(19,45,74,.05)!important;
  backdrop-filter:blur(14px)!important;
}
body.theme-light header .brand,body.theme-light header .brand span{color:var(--ls-ink)}
body.theme-light nav a{color:var(--ls-muted)}
body.theme-light nav a:hover,body.theme-light nav a[aria-current=page]{color:var(--ls-ink)}
@media(max-width:1100px){
  body.theme-light header nav.open{
    background:#fff!important;
    border-color:var(--ls-line-2)!important;
    box-shadow:0 18px 45px rgba(35,53,82,.22)!important;
  }
  body.theme-light header:has(nav.open) nav.open{
    background:#fff!important;
    border-top-color:var(--ls-line-2)!important;
  }
  body.theme-light header nav.open a{
    color:var(--ls-ink)!important;
    background:transparent!important;
  }
  body.theme-light header nav.open a:hover,
  body.theme-light header nav.open a:focus-visible{
    color:var(--ls-ink)!important;
    background:var(--ls-violet-pale)!important;
  }
}
body.theme-light .btn-lang,body.theme-light .back,body.theme-light .outline,body.theme-light .btn-out,body.theme-light .outline-gate,body.theme-light .plain,body.theme-light .plain-gate{
  background:rgba(255,255,255,.72);border:1px solid var(--ls-line-2);color:var(--ls-ink)}
body.theme-light .btn-lang:hover,body.theme-light .back:hover,body.theme-light .outline:hover,body.theme-light .btn-out:hover{background:#fff;border-color:var(--ls-violet);color:var(--ls-ink)}
body.theme-light .brand img{filter:none}
body.theme-light .hamb i{background:var(--ls-ink)}
body.theme-light .hamb::after{background:transparent;color:var(--ls-ink)}
@media(max-width:1100px){
  body.page-dashboard.theme-light .footlinks{max-width:100%;min-width:0;overflow-wrap:anywhere}
}

/* generic cards / read surfaces used across pages */
body.theme-light .card,body.theme-light .hero-card,body.theme-light .grid article,
body.theme-light .c,body.theme-light .form,body.theme-light .note,body.theme-light .law,
body.theme-light .preview-card,body.theme-light .leaderboard,body.theme-light .canon,
body.theme-light .lockcard,body.theme-light .clear-box,body.theme-light .profile-card,
body.theme-light .docs-card,body.theme-light .status-item,body.theme-light .changelog-grid,
body.theme-light .panel,body.theme-light .dash-center-card,body.theme-light .dash-op,
body.theme-light .dash-readiness,body.theme-light .dash-settings-panel,body.theme-light .dash-command{
  background:var(--ls-glass);border:1px solid var(--ls-line);color:var(--ls-ink);
  box-shadow:var(--ls-shadow);backdrop-filter:blur(10px)}
body.theme-light .rule{border-top:1px solid var(--ls-line)}
body.theme-light .links a,body.theme-light .docnav a,body.theme-light .company-links a{
  border:1px solid var(--ls-line-2);background:rgba(255,255,255,.6);color:var(--ls-ink)}
body.theme-light .links a:hover,body.theme-light .docnav a:hover{background:#fff;border-color:var(--ls-violet)}
body.theme-light .fld input,body.theme-light .fld select,body.theme-light .fld textarea,
body.theme-light .form input,body.theme-light .form textarea,body.theme-light .form select,
body.theme-light .dash-settings-grid select{
  background:#fff;border:1px solid var(--ls-line-2);color:var(--ls-ink)}
body.theme-light .fld input:focus,body.theme-light .fld textarea:focus,body.theme-light .fld select:focus{
  border-color:var(--ls-violet);outline:3px solid var(--ls-violet-pale);outline-offset:1px}
body.theme-light .primary,body.theme-light .caro-cta--primary,body.theme-light .status-primary,
body.theme-light .cardfoot button,body.theme-light .form button,body.theme-light .gh{
  background:var(--ls-ink);color:#fff;border:1px solid var(--ls-ink)}
body.theme-light .primary:hover,body.theme-light .caro-cta--primary:hover,body.theme-light .gh:hover{background:#16324d;color:#fff}
body.theme-light .secondary,body.theme-light .ghost,body.theme-light .caro-cta,body.theme-light .caro-cta--secondary{
  background:rgba(255,255,255,.72);border:1px solid var(--ls-line-2);color:var(--ls-ink)}
body.theme-light .secondary:hover,body.theme-light .ghost:hover,body.theme-light .caro-cta:hover{background:#fff;border-color:var(--ls-violet)}
body.theme-light .badge,body.theme-light .status-tag,body.theme-light .status-state{
  background:var(--ls-violet-pale);color:#3c2a86;border:1px solid rgba(107,75,214,.28)}
body.theme-light code,body.theme-light pre,body.theme-light .status-verify pre{
  background:#fff;border:1px solid var(--ls-line);color:#173a5e}
body.theme-light .metrics strong,body.theme-light .release-facts strong,body.theme-light .release-facts code{color:var(--ls-ink)}
body.theme-light table{border-color:var(--ls-line)}
body.theme-light th,body.theme-light td{border-color:var(--ls-line);color:var(--ls-muted)}
body.theme-light footer{border-top:1px solid var(--ls-line);background:rgba(255,255,255,.5)}
body.theme-light .foot,body.theme-light .foot a,body.theme-light .copyline{color:var(--ls-muted)}
body.theme-light .foot a:hover{color:var(--ls-ink)}
body.theme-light .footbrand span,body.theme-light .copyline,body.theme-light .footlinks{color:var(--ls-muted)}
.social-link{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.social-logo{width:17px;height:17px;display:block;flex:none}.social-link:hover .social-logo{transform:translateY(-1px)}
@media (prefers-reduced-motion:reduce){.social-link:hover .social-logo{transform:none}}
body.theme-light .copyline{color:var(--ls-muted)}

/* kill the legacy dark page washes on read surfaces */
body.theme-light.page-legal::before,body.theme-light.page-legal::after,
body.theme-light.page-quiz::before,body.theme-light.page-quiz::after,
body.theme-light.page-home::before,body.theme-light.page-home::after{background:none;content:none}
/* profile ships the site's only dark body scrim plus near-white copy literals */
body.theme-light.page-profile::before,
body.theme-light.page-profile::after{background:none;content:none}
body.theme-light.page-profile .bio,
body.theme-light.page-profile .qowner{color:var(--ls-ink)}
body.theme-light.page-quiz .hero{background:transparent}
body.theme-light.page-quiz .hero::before,body.theme-light.page-quiz .hero::after{background:none;content:none}
/* neutralize the legacy dark scrim painted on the main column (site.css:440/443) */
body.theme-light main,
body.theme-light.page-home main,body.theme-light.page-dashboard main,
body.theme-light.page-contact main,body.theme-light.page-legal main{background-image:none}
body.theme-light .products,body.theme-light .metrics,body.theme-light .company-wrap{background-image:none}

/* ---------- homepage: new reference sections ---------- */
body.theme-light .eco,body.theme-light .flow,body.theme-light .caps,body.theme-light .gallery{
  padding:clamp(40px,6vw,78px) 0;position:relative;z-index:1}
body.theme-light .sec-head{max-width:760px;margin:0 auto clamp(24px,3.5vw,40px);text-align:center}
body.theme-light .sec-head h2{font-family:var(--font-display);font-size:clamp(24px,3.2vw,40px);margin:10px 0 10px;letter-spacing:-.02em}
body.theme-light .sec-head p{font-size:15px;margin:0}

body.theme-light .eco-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,24px)}
body.theme-light .eco-card{background:var(--ls-glass);border:1px solid var(--ls-line);border-radius:20px;overflow:hidden;box-shadow:var(--ls-shadow);display:flex;flex-direction:column}
body.theme-light .eco-card figure{margin:0;aspect-ratio:16/9;overflow:hidden;background:var(--ls-bg-2)}
body.theme-light .eco-card img{width:100%;height:100%;object-fit:cover;display:block}
body.theme-light .eco-body{padding:18px 20px 22px}
body.theme-light .eco-body .tag{font:700 10px var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ls-cyan)}
body.theme-light .eco-body h3{font-family:var(--font-display);font-size:22px;margin:8px 0 8px}
body.theme-light .eco-body p{font-size:14px;margin:0 0 14px}
body.theme-light .eco-state{display:inline-block;font:700 10px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:var(--ls-violet-pale);color:#3c2a86;margin-bottom:14px}
body.theme-light .eco-cta{display:inline-block;font-weight:650;font-size:13px;color:var(--ls-violet)}

body.theme-light .flow-rail{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;counter-reset:flow}
body.theme-light .flow-step{background:var(--ls-glass);border:1px solid var(--ls-line);border-radius:18px;padding:14px;box-shadow:var(--ls-shadow)}
body.theme-light .flow-step figure{margin:0 0 12px;aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:var(--ls-bg-2)}
body.theme-light .flow-step img{width:100%;height:100%;object-fit:cover;display:block}
body.theme-light .flow-step .n{font:700 11px var(--font-mono);color:var(--ls-violet);letter-spacing:.14em}
body.theme-light .flow-step h3{font-size:16px;margin:6px 0 6px;font-family:var(--font-display)}
body.theme-light .flow-step p{font-size:12.5px;margin:0}

body.theme-light .caps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,22px)}
body.theme-light .cap-card{background:var(--ls-glass);border:1px solid var(--ls-line);border-radius:18px;overflow:hidden;box-shadow:var(--ls-shadow)}
body.theme-light .cap-card figure{margin:0;aspect-ratio:16/9;overflow:hidden;background:var(--ls-bg-2)}
body.theme-light .cap-card img{width:100%;height:100%;object-fit:cover;display:block}
body.theme-light .cap-body{padding:14px 16px 18px}
body.theme-light .cap-body h3{font-size:17px;margin:0 0 6px;font-family:var(--font-display)}
body.theme-light .cap-body p{font-size:13px;margin:0}

body.theme-light .gallery-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
body.theme-light .gallery-card{grid-column:span 2;background:var(--ls-glass);border:1px solid var(--ls-line);border-radius:18px;overflow:hidden;box-shadow:var(--ls-shadow)}
body.theme-light .gallery-card:nth-child(4),body.theme-light .gallery-card:nth-child(5){grid-column:span 3}
body.theme-light .gallery-card figure{margin:0;aspect-ratio:16/9;overflow:hidden;background:var(--ls-bg-2)}
body.theme-light .gallery-card img{width:100%;height:100%;object-fit:cover;display:block}
body.theme-light .gallery-body{padding:14px 16px 18px}
body.theme-light .gallery-body .label{font:700 10px var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ls-cyan)}
body.theme-light .gallery-body h3{font-size:16px;margin:7px 0 6px;font-family:var(--font-display)}
body.theme-light .gallery-body p{font-size:12.5px;margin:0}
body.theme-light .gallery-note{max-width:760px;margin:18px auto 0;text-align:center;font-size:12px;color:var(--ls-faint)}

@media(max-width:1020px){
  body.theme-light .flow-rail{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.theme-light .gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  body.theme-light .gallery-card,body.theme-light .gallery-card:nth-child(4),body.theme-light .gallery-card:nth-child(5){grid-column:span 2}
}
@media(max-width:760px){
  body.theme-light .eco-grid,body.theme-light .caps-grid{grid-template-columns:1fr}
  body.theme-light .flow-rail{grid-template-columns:1fr 1fr}
  body.theme-light .gallery-grid{grid-template-columns:1fr 1fr}
  body.theme-light .gallery-card,body.theme-light .gallery-card:nth-child(4),body.theme-light .gallery-card:nth-child(5){grid-column:span 1}
  body.theme-light .page-art{background-image:var(--page-art-sm,var(--page-art))}
}
@media(max-width:430px){
  body.theme-light .flow-rail,body.theme-light .gallery-grid{grid-template-columns:1fr}
}

/* 404: keep the decorative glow inside the viewport on small screens */
body.theme-light.page-404{overflow-x:clip}
body.theme-light.page-404 .glow{width:min(640px,100vw);height:min(640px,100vw)}

/* ---------- legacy dark surfaces → light (theme authority) ----------
   These elements keep hard-coded dark fills in site.css or in a page's own
   inline <style> that can load after this file, so the theme layer wins
   explicitly. Intentional dark accents (navy primary buttons, active tab,
   the violet 404 numerals) are deliberately NOT in this list. */
body.theme-light .carousel,
body.theme-light .company,
body.theme-light .proof-frame,
body.theme-light .proof-frame figure,
body.theme-light .proof-frame figcaption,
body.theme-light .proof-media,
body.theme-light .status-rail,
body.theme-light .c,
body.theme-light .qowner-waitlist,
body.theme-light .guidance-card,
body.theme-light .report-form,
body.theme-light .status-row,
body.theme-light .modal,
body.theme-light .toast,
body.theme-light .skip-link,
body.theme-light .state,
body.theme-light .release-facts span,
body.theme-light .preview-card,
body.theme-light .changelog-card,
body.theme-light .release-card,
body.theme-light .proof-frame figcaption small,
body.theme-light .proof-frame figcaption strong{
  background-image:none!important;
  background-color:var(--ls-glass)!important;
  border-color:var(--ls-line)!important;
  color:var(--ls-ink)!important;
}
body.theme-light .proof-frame figcaption small,
body.theme-light .proof-frame figcaption b,
body.theme-light .proof-frame .proof-label{color:var(--ls-muted)!important}
body.theme-light .backdrop{background:rgba(242,246,251,.72)!important}
body.theme-light .qowner-waitlist input,body.theme-light .qowner-waitlist select,
body.theme-light .qowner-waitlist textarea,body.theme-light .report-form input,
body.theme-light .report-form select,body.theme-light .report-form textarea,
body.theme-light .guidance-card input,body.theme-light .guidance-card textarea{
  background:#fff!important;border:1px solid var(--ls-line-2)!important;color:var(--ls-ink)!important}
body.theme-light .status-rail .status-item,body.theme-light .status-row{
  background-color:var(--ls-glass)!important;border-color:var(--ls-line)!important}
body.theme-light .status-row .status-row__state,
body.theme-light .status-row strong,body.theme-light .status-row b{color:var(--ls-ink)!important}
body.theme-light .status-row p,body.theme-light .status-row small{color:var(--ls-muted)!important}

/* ---------- brand hero (homepage) ----------
   A brand-level opening stage: full-bleed light cosmic artwork on the right,
   navy copy plus four capability entries on the left. It sits above the
   product presentation switch so the homepage opens as a universe, not as a
   single product. */
body.theme-light .brand-hero{position:relative;overflow:hidden;isolation:isolate;
  padding:clamp(30px,5.2vw,66px) 0 clamp(30px,5.4vw,68px)}
body.theme-light .brand-hero-art{position:absolute;inset:0;z-index:0}
body.theme-light .brand-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}
body.theme-light .brand-hero-art::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(242,246,251,0) 74%,rgba(242,246,251,.5) 90%,rgba(242,246,251,.94) 100%),
    linear-gradient(90deg,rgba(242,246,251,.97) 0,rgba(242,246,251,.93) 40%,rgba(242,246,251,.64) 60%,rgba(242,246,251,.16) 78%,rgba(242,246,251,0) 93%)}
body.theme-light .brand-hero-inner{position:relative;z-index:1}
body.theme-light .brand-hero-title{margin:10px 0 0;font-size:clamp(44px,7.4vw,88px);line-height:1.02;letter-spacing:-.025em;
  background-image:linear-gradient(96deg,#0a1a29 0%,#3b23a8 32%,#6b4bd6 54%,#0e8fb8 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
body.theme-light .brand-hero-tagline{margin:14px 0 0;max-width:520px;font-size:clamp(17px,1.6vw,21px);
  line-height:1.5;color:var(--ls-ink);font-weight:600}
body.theme-light .brand-hero-body{margin:10px 0 0;max-width:540px;font-size:15px;line-height:1.7;color:var(--ls-muted)}
body.theme-light .brand-hero-start{margin:16px 0 0;max-width:540px;font-size:13px;line-height:1.6;color:var(--ls-ink)}
body.theme-light .brand-hero-start strong{font-weight:750}
body.theme-light .brand-hero-start a{color:var(--ls-violet);font-weight:700;text-decoration:underline;text-underline-offset:3px}
body.theme-light .brand-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 0}
body.theme-light .brand-hero-actions .btn{display:inline-flex;align-items:center;gap:8px;min-height:46px;
  padding:0 22px;border-radius:999px;font-size:13px;font-weight:700;text-decoration:none}
body.theme-light .brand-hero-actions .btn.primary{background:linear-gradient(135deg,var(--ls-violet),var(--ls-violet-2));border:1px solid transparent;color:#fff;box-shadow:0 12px 26px rgba(107,75,214,.3)}
body.theme-light .brand-hero-actions .btn.primary:hover{background:linear-gradient(135deg,#5a3bc4,#7b5ae8);color:#fff}
body.theme-light .bh-arrow{width:17px;height:17px;flex:0 0 auto}
body.theme-light .brand-hero-actions .btn.ghost{background:rgba(255,255,255,.72);border:1px solid var(--ls-line-2);color:var(--ls-ink)}
body.theme-light .brand-hero-actions .btn.ghost:hover{background:#fff;border-color:var(--ls-cyan);color:var(--ls-ink)}
body.theme-light .bh-play{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(14,143,184,.16);color:var(--ls-cyan)}
body.theme-light .bh-play svg{width:12px;height:12px}
body.theme-light .brand-hero-caps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;
  margin:30px 0 0;padding:20px 0 0;list-style:none;max-width:790px;border-top:1px solid var(--ls-line)}
body.theme-light .brand-hero-caps li{display:flex;flex-direction:column;align-items:flex-start;gap:7px;
  padding:0 16px;border-left:1px solid var(--ls-line)}
body.theme-light .brand-hero-caps li:first-child{border-left:0;padding-left:0}
body.theme-light .bh-ico{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;
  background:linear-gradient(135deg,var(--ls-violet-pale),var(--ls-cyan-pale));color:var(--ls-violet)}
body.theme-light .brand-hero-caps li:nth-child(even) .bh-ico{background:linear-gradient(135deg,var(--ls-cyan-pale),#eaf5ff);color:var(--ls-cyan)}
body.theme-light .bh-ico svg{width:19px;height:19px}
body.theme-light .brand-hero-caps strong{font-size:13px;font-weight:700;line-height:1.25;color:var(--ls-ink)}
body.theme-light .brand-hero-caps small{font-size:11.5px;line-height:1.42;color:var(--ls-faint)}
@media(max-width:1000px){body.theme-light .brand-hero-caps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}body.theme-light .brand-hero-caps li:nth-child(odd){border-left:0;padding-left:0}}
@media(max-width:760px){
  body.theme-light .brand-hero{padding:22px 0 30px}
  body.theme-light .brand-hero-art img{object-position:72% center}
  body.theme-light .brand-hero-art::after{background:linear-gradient(180deg,rgba(242,246,251,.95) 0,rgba(242,246,251,.88) 44%,rgba(242,246,251,.52) 72%,rgba(242,246,251,.78) 100%)}
  body.theme-light .brand-hero-title{font-size:clamp(38px,11vw,54px)}
}
@media(max-width:520px){body.theme-light .brand-hero-caps{grid-template-columns:1fr}body.theme-light .brand-hero-caps li{border-left:0;padding-left:0}}
body.theme-light header .account .outline{background:linear-gradient(135deg,var(--ls-violet),var(--ls-violet-2));border-color:transparent;color:#fff}
body.theme-light header .account .outline:hover{background:linear-gradient(135deg,#5a3bc4,#7b5ae8);color:#fff}

/* Keep the product showcase cinematic without reintroducing a dark half-page.
   The source art stays intact; this light-theme treatment lifts its luminance
   and lets the pale page surface carry the transition. */
body.theme-light.page-home .carousel .caro-art img{filter:brightness(1.42) saturate(.82) contrast(.88)}
body.theme-light.page-home .carousel .caro-art::before{background:linear-gradient(90deg,rgba(242,246,251,.99) 0%,rgba(242,246,251,.9) 35%,rgba(242,246,251,.48) 61%,rgba(242,246,251,.12) 86%,rgba(242,246,251,0) 100%)}
body.theme-light.page-home .carousel .caro-slide::after{background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.03));box-shadow:inset 0 0 150px rgba(48,67,91,.06)}
body.theme-light.page-home .carousel .caro-viewport,
body.theme-light.page-home .carousel .caro-slide{background:#eef3f9}
body.theme-light.page-home .carousel{background:transparent!important}
body.theme-light.page-home .carousel::before{content:"";position:absolute;left:0;right:0;top:0;
  height:clamp(88px,11vw,150px);z-index:4;pointer-events:none;
  background:linear-gradient(180deg,rgba(242,246,251,1) 0%,rgba(242,246,251,.82) 34%,rgba(242,246,251,.34) 68%,rgba(242,246,251,0) 100%)}
body.theme-light.page-home .carousel::after{content:"";position:absolute;left:0;right:0;bottom:0;
  height:clamp(88px,11vw,150px);z-index:4;pointer-events:none;
  background:linear-gradient(0deg,rgba(242,246,251,1) 0%,rgba(242,246,251,.82) 34%,rgba(242,246,251,.34) 68%,rgba(242,246,251,0) 100%)}
body.theme-light.page-home .carousel .caro-nav .caro-dot{
  background:linear-gradient(rgba(23,41,64,.42),rgba(23,41,64,.42)) center/100% 3px no-repeat}
body.theme-light.page-home .carousel .caro-nav .caro-dot.on{
  background:linear-gradient(var(--ls-violet),var(--ls-violet)) center/100% 3px no-repeat;box-shadow:none}
body.theme-light.page-home .carousel .caro-nav .caro-dot:focus-visible{outline:2px solid var(--ls-violet);outline-offset:3px}
@media(max-width:760px){
  body.theme-light.page-home .carousel .caro-art img{filter:brightness(1.48) saturate(.8) contrast(.88)}
  body.theme-light.page-home .carousel .caro-art::before{background:linear-gradient(0deg,rgba(242,246,251,.98) 0%,rgba(242,246,251,.76) 54%,rgba(242,246,251,.22) 100%)}
}


/* ---------- contrast corrections for the light production surface ---------- */
body.theme-light .docs-card,
body.theme-light .docs-card p,
body.theme-light .docs-card strong,
body.theme-light .docs-card li,
body.theme-light .docs-card dd,
body.theme-light .docs-card code,
body.theme-light .docs-facts dd{color:var(--ls-ink)}
body.theme-light .docs-card dt,
body.theme-light .docs-card small,
body.theme-light .docs-card .muted,
body.theme-light .docs-card .faint{color:var(--ls-muted)}
body.theme-light .docnav a,
body.theme-light .docnav a[aria-current=page]{color:var(--ls-ink)}
body.theme-light .docs-steps span,
body.theme-light .docs-steps strong{color:#fff}
body.theme-light.page-home .caro-arrow{color:#31527a!important}
body.theme-light.page-home .proof-link,
body.theme-light.page-home .release-link,
body.theme-light .page-home a:not(.btn):not(.caro-cta){color:#3f2aa8!important}
body.theme-light.page-home .tag,
body.theme-light.page-home .label{color:#006b84!important}
body.theme-light.page-home .status-state,
body.theme-light.page-home .status-item--live .status-state{color:#3f2aa8!important}
body.theme-light.page-home .proof-stamp{color:#f5f7ff!important;background:rgba(5,5,7,.88)}

body.theme-light.page-home .status-item a:not(.btn){color:#3f2aa8!important}
body.theme-light.page-home .status-item a:not(.btn):hover{color:#24176f!important}

body.theme-light.page-home .gallery-note{color:#41556b!important}
body.theme-light.page-home .brand-hero small,
body.theme-light.page-home .hero-note{color:#41556b!important}

/* ---------- pages that still ship their own dark palette ---------- */
body.theme-light.page-legal,
body.theme-light.page-contact,
body.theme-light.page-report,
body.theme-light.page-status,
body.theme-light.page-quiz,
body.theme-light.page-dashboard,
body.theme-light.page-profile{
  --void:#f2f6fb;--abyss:#f2f6fb;--obsidian:#ffffff;--graphite:#e8eef8;
  --white:#0b1b2b;--silver:#41556b;--ash:#41556b;--fog:#41556b;--cloud:#0b1b2b;
  --muted:#41556b;--faint:#5c6f85;
  --purple:#5a3fc0;--purple-rgb:90,63,192;--purple-soft:#4b32a8;--purple-bright:#3f2aa8;
  --violet:#4b32a8;--primary:#5a3fc0;--primary-pale:#3f2aa8;
  --cyan:#0a6f8c;--signal:#0a6f8c;--accent:#0a6f8c;
  --accent-dim:rgba(10,111,140,.35);--accent-bg:rgba(10,111,140,.08);
}
body.theme-light.page-legal main a,
body.theme-light.page-contact main a,
body.theme-light.page-quiz main a,
body.theme-light.page-report main a,
body.theme-light.page-status main a{color:#3f2aa8}
body.theme-light.page-legal main a:hover,
body.theme-light.page-contact main a:hover,
body.theme-light.page-quiz main a:hover{color:#24176f}
body.theme-light.page-legal main .card b,
body.theme-light.page-contact main .card b,
body.theme-light.page-quiz main .canon b{color:#3f2aa8!important}
body.theme-light.page-legal main p strong,
body.theme-light.page-legal main li strong,
body.theme-light.page-contact main p strong,
body.theme-light.page-contact main li strong{color:var(--ls-ink)}
body.theme-light.page-report main strong{color:#8a4a12}
body.theme-light .status-primary,
body.theme-light a.status-primary,
body.theme-light button.status-primary{
  background:var(--ls-ink)!important;color:#fff!important;border-color:var(--ls-ink)!important}
body.theme-light .status-pill{
  color:#0a5c3c!important;background:#dcf7ea!important;border-color:rgba(10,92,60,.28)!important}
body.theme-light .report-form button,
body.theme-light .report-actions button,
body.theme-light .cardfoot button{
  background:var(--ls-ink)!important;color:#fff!important;border-color:var(--ls-ink)!important}
body.theme-light.page-quiz .answer-toggle,
body.theme-light.page-quiz .qowner-waitlist-status,
body.theme-light.page-quiz .qowner-waitlist small{color:#0a6f8c!important}

/* ---------- mobile/compact light-theme contrast hardening ---------- */
body.theme-light .eyebrow,
body.theme-light .kicker{color:#5137b5!important}
body.theme-light .presentation-switch__tab,
body.theme-light .presentation-switch__tab[aria-selected="true"]{color:var(--ls-ink)!important;background:var(--ls-surface)!important;border-color:var(--ls-line-2)!important}
body.theme-light .presentation-switch__tab[aria-selected="true"]{background:var(--ls-ink)!important;color:#fff!important}
body.theme-light .proof-stamp{color:#f5f7ff!important;background:rgba(5,5,7,.92)!important}
body.theme-light .qowner-card .n,
body.theme-light .qowner-card .num{color:#07566e!important}
body.theme-light .form-note{color:var(--ls-muted)!important}
body.theme-light .report-form button,
body.theme-light .report-form .button,
body.theme-light button[data-action="compose"]{color:#fff!important;background:var(--ls-ink)!important;border-color:var(--ls-ink)!important}

/* Account dropdown: override the legacy dark menu on the light dashboard. */
body.theme-light.page-dashboard .profile-menu{
  background:#fff!important;
  border-color:var(--ls-line-2)!important;
  box-shadow:0 18px 45px rgba(35,53,82,.22)!important;
}
body.theme-light.page-dashboard .profile-menu a,
body.theme-light.page-dashboard .profile-menu button{
  color:var(--ls-ink)!important;
  background:transparent!important;
}
body.theme-light.page-dashboard .profile-menu a:hover,
body.theme-light.page-dashboard .profile-menu button:hover,
body.theme-light.page-dashboard .profile-menu a:focus-visible,
body.theme-light.page-dashboard .profile-menu button:focus-visible{
  color:var(--ls-ink)!important;
  background:var(--ls-violet-pale)!important;
}
/* The dashboard art is intentionally kept intact: the requested purple
   square/dots are not separate DOM layers or part of dashboard.webp. */

/* ---------- dashboard light-theme contrast contract ----------
   The dashboard owns a large legacy dark component palette in site.css. Keep
   its readable light surfaces and dark ink together; otherwise retuned navy
   tokens can land on inherited near-black cards. */
body.theme-light.page-dashboard .dash-center-tabs,
body.theme-light.page-dashboard .dash-center-card,
body.theme-light.page-dashboard .dash-op,
body.theme-light.page-dashboard .dash-readiness,
body.theme-light.page-dashboard .dash-settings-panel,
body.theme-light.page-dashboard .dash-command,
body.theme-light.page-dashboard .panel,
body.theme-light.page-dashboard .dash-center-provider-tile,
body.theme-light.page-dashboard .dash-provider-tile,
body.theme-light.page-dashboard .dash-advanced,
body.theme-light.page-dashboard .dash-profile-editor{
  background:var(--ls-glass)!important;
  border-color:var(--ls-line-2)!important;
  color:var(--ls-ink)!important;
  box-shadow:var(--ls-shadow)!important;
}
body.theme-light.page-dashboard .dash-center-auth,
body.theme-light.page-dashboard .dash-center-summary{
  background:linear-gradient(145deg,#fff,#eef4fb)!important;
  color:var(--ls-ink)!important;
}
body.theme-light.page-dashboard .dash-command,
body.theme-light.page-dashboard .dash-settings-panel{
  background:linear-gradient(120deg,#fff,#f1f5fb)!important;
}
body.theme-light.page-dashboard .dash-center-tabs a,
body.theme-light.page-dashboard .dash-center-live,
body.theme-light.page-dashboard .dash-center-state,
body.theme-light.page-dashboard .dash-center-card h2,
body.theme-light.page-dashboard .dash-center-card h3,
body.theme-light.page-dashboard .dash-center-stats b,
body.theme-light.page-dashboard .dash-center-cloud-facts b,
body.theme-light.page-dashboard .dash-center-summary dd,
body.theme-light.page-dashboard .dash-provider-tile strong,
body.theme-light.page-dashboard .dash-center-usage b,
body.theme-light.page-dashboard .dash-workspace-facts b,
body.theme-light.page-dashboard .dash-workspace-list li,
body.theme-light.page-dashboard .dash-settings-head h2,
body.theme-light.page-dashboard .dash-command-copy h2,
body.theme-light.page-dashboard .dash-bridge-help strong,
body.theme-light.page-dashboard .dash-readiness-head h2,
body.theme-light.page-dashboard .dash-op h2,
body.theme-light.page-dashboard .panel h2,
body.theme-light.page-dashboard .panel h3,
body.theme-light.page-dashboard .panel dt,
body.theme-light.page-dashboard .panel dd,
body.theme-light.page-dashboard .dash-profile-editor>summary strong{
  color:var(--ls-ink)!important;
}
body.theme-light.page-dashboard .dash-center-copy,
body.theme-light.page-dashboard .dash-center-identity p,
body.theme-light.page-dashboard .dash-center-stats small,
body.theme-light.page-dashboard .dash-center-cloud-facts small,
body.theme-light.page-dashboard .dash-center-note,
body.theme-light.page-dashboard .dash-provider-tile small,
body.theme-light.page-dashboard .dash-center-usage small,
body.theme-light.page-dashboard .dash-workspace-facts small,
body.theme-light.page-dashboard .dash-workspace-note,
body.theme-light.page-dashboard .dash-workspace-list li small,
body.theme-light.page-dashboard .dash-settings-note,
body.theme-light.page-dashboard .dash-command-copy p,
body.theme-light.page-dashboard .dash-bridge-help p,
body.theme-light.page-dashboard .dash-op p,
body.theme-light.page-dashboard .dash-op small,
body.theme-light.page-dashboard .dash-readiness p,
body.theme-light.page-dashboard .panel p,
body.theme-light.page-dashboard .panel small,
body.theme-light.page-dashboard .panel .note,
body.theme-light.page-dashboard .dash-profile-editor>summary small,
body.theme-light.page-dashboard .lead{
  color:var(--ls-muted)!important;
}
body.theme-light.page-dashboard .dash-center-tabs a{color:var(--ls-muted)!important}
body.theme-light.page-dashboard .dash-center-tabs a:hover,
body.theme-light.page-dashboard .dash-center-tabs a:focus-visible,
body.theme-light.page-dashboard .dash-center-tabs a.is-active{color:var(--ls-ink)!important;background:#fff!important}
body.theme-light.page-dashboard .dash-center-link,
body.theme-light.page-dashboard .panel a,
body.theme-light.page-dashboard .dash-workspace-plan h3{color:#3f2aa8!important}
body.theme-light.page-dashboard .dash-center-state.is-ready{color:#075c3f!important;background:#e2f7ed!important;border-color:#75c6a0!important}
body.theme-light.page-dashboard .dash-center-state.is-offline{color:#7a3b12!important;background:#fff0e5!important;border-color:#d9a174!important}
body.theme-light.page-dashboard .dash-op-diagnostics pre{background:#eef4fb!important;color:#164b5c!important;border-color:var(--ls-line-2)!important}
body.theme-light.page-dashboard .dash-download-warning{color:#704b08!important;background:#fff7df!important;border-color:#d6b45a!important}
body.theme-light.page-dashboard .step .txt b{color:var(--ls-ink)!important}
body.theme-light.page-dashboard .step .txt small,
body.theme-light.page-dashboard .onboard-note,
body.theme-light.page-dashboard dt{color:var(--ls-muted)!important}
body.theme-light.page-dashboard .step .txt a,
body.theme-light.page-dashboard .onboard-note button,
body.theme-light.page-dashboard .plinks a,
body.theme-light.page-dashboard .ghost,
body.theme-light.page-dashboard .copy{color:#3f2aa8!important}
body.theme-light.page-dashboard .badge{color:#3c2a86!important;background:var(--ls-violet-pale)!important}
body.theme-light.page-dashboard .primary,
body.theme-light.page-dashboard .status-primary,
body.theme-light.page-dashboard .cardfoot button,
body.theme-light.page-dashboard .form button{
  background:linear-gradient(135deg,var(--ls-violet),var(--ls-violet-2))!important;
  color:#fff!important;border-color:var(--ls-violet)!important;
  box-shadow:0 10px 24px rgba(107,75,214,.22)!important}
body.theme-light.page-dashboard .primary:hover,
body.theme-light.page-dashboard .status-primary:hover,
body.theme-light.page-dashboard .cardfoot button:hover,
body.theme-light.page-dashboard .form button:hover{
  background:linear-gradient(135deg,#5a3bc4,#7b5ae8)!important;color:#fff!important}
body.theme-light.page-dashboard .secondary,
body.theme-light.page-dashboard .ghost,
body.theme-light.page-dashboard .filepick{
  background:rgba(255,255,255,.86)!important;color:var(--ls-ink)!important;
  border-color:var(--ls-line-2)!important}
body.theme-light.page-dashboard .secondary:hover,
body.theme-light.page-dashboard .ghost:hover,
body.theme-light.page-dashboard .filepick:hover{
  background:#fff!important;color:var(--ls-ink)!important;border-color:var(--ls-violet)!important}
body.theme-light.page-dashboard .danger{
  color:#8a2525!important;background:#fff1f1!important;border-color:#c77b7b!important}
body.theme-light.page-dashboard .danger:hover{
  color:#721c24!important;background:#ffe4e4!important;border-color:#a94b55!important}
body.theme-light.page-dashboard .dash-center-card :is(a,button):focus-visible{outline-color:var(--ls-violet)!important}

/* Round 2 — per-view computed audit findings (local stub-session sweep):
   sync/activity panels, profile editor, provider marks, statuses. */
body.theme-light.page-dashboard main.dash::after{content:none!important}
body.theme-light.page-dashboard .dash-sync-panel,
body.theme-light.page-dashboard .dash-activity-panel{
  background:var(--ls-glass)!important;border-color:var(--ls-line-2)!important;
  color:var(--ls-ink)!important;box-shadow:var(--ls-shadow)!important}
body.theme-light.page-dashboard .dash-sync-summary b,
body.theme-light.page-dashboard .dash-sync-state,
body.theme-light.page-dashboard .dash-activity-state{color:var(--ls-ink)!important}
body.theme-light.page-dashboard .dash-sync-state.is-ready{color:#075c3f!important;background:#e2f7ed!important;border-color:#75c6a0!important}
body.theme-light.page-dashboard .dash-sync-state.is-offline{color:#7a3b12!important;background:#fff0e5!important;border-color:#d9a174!important}
body.theme-light.page-dashboard .dash-activity-state.is-error{color:#7a3b12!important;background:#fff0e5!important;border-color:#d9a174!important}
body.theme-light.page-dashboard .dash-center-avatar i,
body.theme-light.page-dashboard .panel.profile .ini{color:#fff!important}
body.theme-light.page-dashboard .dash-provider-mark{color:#fff!important}
body.theme-light.page-dashboard .dash-provider-mark.github{background:#24292f!important}
body.theme-light.page-dashboard .dash-provider-mark:not(.github){background:#1a73e8!important}
body.theme-light.page-dashboard .profile-field>span,
body.theme-light.page-dashboard .profile-check,
body.theme-light.page-dashboard .session-info strong,
body.theme-light.page-dashboard .connection-info strong{color:var(--ls-ink)!important}
body.theme-light.page-dashboard .profile-field input,
body.theme-light.page-dashboard .profile-field textarea,
body.theme-light.page-dashboard .profile-field select{
  background:#fff!important;color:var(--ls-ink)!important;
  border-color:var(--ls-line-2)!important}
body.theme-light.page-dashboard .profile-summary-action,
body.theme-light.page-dashboard .filepick,
body.theme-light.page-dashboard .profile-public-link,
body.theme-light.page-dashboard .hashrow code{color:#3f2aa8!important}
body.theme-light.page-dashboard .session-current,
body.theme-light.page-dashboard .connection-current,
body.theme-light.page-dashboard .profile-status.ok,
body.theme-light.page-dashboard .vmsg.ok{color:#075c3f!important}
body.theme-light.page-dashboard .profile-status.bad,
body.theme-light.page-dashboard .vmsg.bad{color:#8a2525!important}
body.theme-light.page-dashboard .profile-status.warn{color:#704b08!important}
body.theme-light.page-dashboard .dash-local-status{color:#087895!important}
body.theme-light.page-dashboard .hamb{color:var(--ls-ink)!important}
