:root { color-scheme:light; }
.theme-toggle {
  display:inline-flex;
  align-items:center;
  flex-shrink:0;
  gap:3px;
  min-height:44px;
  padding:4px;
  border:1px solid #e1e5ee;
  border-radius:999px;
  background:#eff1f6;
  color:#68758b;
  font-size:14px;
  font-weight:500;
  line-height:1;
}
.theme-option {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:34px;
  padding:7px 11px;
  border-radius:999px;
}
.theme-option svg { display:block; width:16px; height:16px; flex-shrink:0; }
html:not([data-theme="dark"]) .theme-light {
  color:#33415e;
  background:#fff;
  box-shadow:0 1px 4px #29386616;
}
.theme-toggle:hover { border-color:#a9b5d6; }

html[data-theme="dark"] {
  color-scheme:dark;
  --ink:#ebedf5;
  --muted:#a4adbe;
  --blue:#a3b1ff;
  --blue-dark:#bcc7ff;
  --line:#343944;
  --paper:#15171c;
}
html[data-theme="dark"] .site-header {
  background:rgba(21,23,28,.94);
  border-color:var(--line);
}
html[data-theme="dark"] .brand-logo-light { display:none; }
html[data-theme="dark"] .brand-logo-dark { display:block; }
html[data-theme="dark"] .header-contact { border-color:#41495b; }
html[data-theme="dark"] .header-contact:hover { background:#252c3a; border-color:#66739a; }
html[data-theme="dark"] .menu-toggle span { background:#c1cbe3; }
html[data-theme="dark"] .mobile-nav a { color:#c1cbe3; }
html[data-theme="dark"] .skip-link { color:var(--paper); }
html[data-theme="dark"] :is(.hero .eyebrow,.section-heading .eyebrow,.studio-copy .eyebrow,.approach-heading .eyebrow,.contact-card .eyebrow) {
  color:#b0bad1;
}
html[data-theme="dark"] :is(.hero-copy>p,.section-heading>p,.product-content>p,.studio-copy>p,.approach-grid p,.contact-card>p,.product-dialog>p,.product-dialog ul,.product-dialog li) {
  color:#b8c1d2;
}
html[data-theme="dark"] :is(.hero-footnote,.principle-strip>span,.principle-strip>div>span,.collection-note,.product-bottom>span,.preview-note,.studio-registration,.studio-registration small,.approach-number,.contact-email,.footer-top>div>p,.footer-bottom,.product-dialog .dialog-note) {
  color:#a4aec2;
}
html[data-theme="dark"] :is(.principle-strip .icon,.collection-note>span) { color:#9cadd6; }
html[data-theme="dark"] .button-primary { background:#95a5f5; color:#171c30; box-shadow:none; }
html[data-theme="dark"] .button-primary:hover { background:#b4c0ff; }

/* Product illustrations keep their own app palettes in either theme. */
html[data-theme="dark"] :is(.hero-window,.product-visual) { color:#242d43; }
html[data-theme="dark"] .hero-art { background:radial-gradient(ellipse at 50% 48%,#272e43,transparent 67%); }
html[data-theme="dark"] .art-grid {
  background-image:linear-gradient(#3b435580 1px,transparent 1px),linear-gradient(90deg,#3b435580 1px,transparent 1px);
}
html[data-theme="dark"] .art-orbit { border-color:#3d465b; }
html[data-theme="dark"] .art-label { color:#aab7d5; }
html[data-theme="dark"] .hero-window { box-shadow:0 18px 45px #0005; }
html[data-theme="dark"] .product-card { background:#1d2027; border-color:var(--line); }
html[data-theme="dark"] .product-card:hover { box-shadow:0 9px 27px #0003; }
html[data-theme="dark"] .product-visual { border-color:var(--line); }
html[data-theme="dark"] .visual-note { background:linear-gradient(130deg,#322c40,#292735); }
html[data-theme="dark"] .visual-apps { background:linear-gradient(135deg,#29334a,#252d40); }
html[data-theme="dark"] .visual-meo { background:linear-gradient(130deg,#293d36,#24332f); }
html[data-theme="dark"] .visual-todo { background:linear-gradient(135deg,#41372c,#352d27); }
html[data-theme="dark"] .product-visual .visual-caption { color:#bec3d3; }
html[data-theme="dark"] .product-bottom { border-color:var(--line); }
html[data-theme="dark"] :is(.product-bottom>a,.product-bottom>button) { color:#aabaff; }
html[data-theme="dark"] :is(.product-bottom>a:hover,.product-bottom>button:hover) { color:#d3dcff; }
html[data-theme="dark"] .product-filters { background:#20242d; border-color:var(--line); }
html[data-theme="dark"] .filter { color:#b1bacd; }
html[data-theme="dark"] .filter.active { background:#353d53; color:#e0e6ff; box-shadow:none; }
html[data-theme="dark"] .filter:hover { color:#e0e6ff; }
html[data-theme="dark"] .status-live { color:#b5d9c0; background:#273c30; }
html[data-theme="dark"] .status-development { color:#c1cdff; background:#2a3450; }
html[data-theme="dark"] .status-upcoming { color:#e4c6a1; background:#403329; }
html[data-theme="dark"] .note-icon { color:#c4aee1; background:#362e45; }
html[data-theme="dark"] .apps-icon { color:#b8c7ff; background:#2b3653; }
html[data-theme="dark"] .meo-icon { color:#a7d6bf; background:#2a3f36; }
html[data-theme="dark"] .todo-icon { color:#e4bb94; background:#43352b; }

html[data-theme="dark"] .studio-art { background:#202530; border-color:var(--line); }
html[data-theme="dark"] .studio-art-grid {
  background-image:linear-gradient(#3b455b 1px,transparent 1px),linear-gradient(90deg,#3b455b 1px,transparent 1px);
}
html[data-theme="dark"] :is(.studio-orbit,.studio-orbit::before,.studio-orbit::after) { border-color:#414c65; }
html[data-theme="dark"] .studio-symbol { box-shadow:9px 14px 0 #3a4563,14px 23px 0 #2c3449,0 25px 42px #0003; }
html[data-theme="dark"] .studio-dot { border-color:#202530; }
html[data-theme="dark"] .studio-coordinate { color:#a6b4d4; }
html[data-theme="dark"] :is(.studio-registration,.approach-grid article+article) { border-color:var(--line); }
html[data-theme="dark"] .approach-icon { background:#252d3d; border-color:#414b62; color:#b6c5f0; }
html[data-theme="dark"] .contact-card {
  border-color:#394259;
  background:#202636 radial-gradient(ellipse at 50% 10%,#2c3550,transparent 80%);
}
html[data-theme="dark"] .contact-decoration { color:#3d4967; }
html[data-theme="dark"] :is(.footer-links a,.footer-product) { color:#b5c0d5; }
html[data-theme="dark"] :is(.footer-links a:hover,.footer-product:hover) { color:#d3dcff; }
html[data-theme="dark"] .footer-links h2 { color:#a9b4ca; }
html[data-theme="dark"] .footer-links a>span { color:#a3b1d2; }
html[data-theme="dark"] .footer-soon { background:#3a3029; color:#dfc29c; }
html[data-theme="dark"] .footer-wordmark { color:#404858; }
html[data-theme="dark"] .theme-toggle { background:#20242d; border-color:#41495b; color:#aeb9ce; }
html[data-theme="dark"] .theme-dark { background:#414b65; color:#f1f4ff; box-shadow:0 1px 5px #0003; }
html[data-theme="dark"] .theme-toggle:hover { border-color:#8495be; }

html[data-theme="dark"] .product-dialog { background:#1d222c; border-color:#414b61; box-shadow:0 25px 100px #0006; }
html[data-theme="dark"] .product-dialog::backdrop { background:#080b13b3; }
html[data-theme="dark"] .dialog-close { background:#30394a; color:#c5cee1; }
html[data-theme="dark"] .dialog-close:hover { background:#44506a; color:#fff; }
html[data-theme="dark"] .product-dialog li::before { color:#a7d6bf; }
