/* Shared light/dark preference, loaded after each surface's styles. */
html{color-scheme:light}
.theme-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}.theme-toggle{width:36px;height:36px;min-width:36px;display:inline-flex;align-items:center;justify-content:center;padding:8px;border:1px solid #cddfe9;border-radius:9px;background:#fff;color:#033860;cursor:pointer;flex-shrink:0}.theme-toggle svg{display:block;width:20px;height:20px;pointer-events:none}.theme-toggle:hover{background:#e4f3fa}.theme-toggle:focus-visible{outline:3px solid #087ca7;outline-offset:3px}.setup-layout>.setup-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:45px}.setup-heading .brand{margin:0}
html[data-theme=dark]{color-scheme:dark;--bg:#071b2b;--panel:#0d293d;--text:#e4f2fa;--ink:#e4f2fa;--paper:#071b2b;--muted:#adc4d3;--line:#23475c;--accent:#05b2dc;--accent-soft:#11364a;--dark:#06172d;--green:#05b2dc;background:#071b2b;color:#e4f2fa}
html[data-theme=dark] body{background:#071b2b;color:#e4f2fa}
html[data-theme=dark] .brand,html[data-theme=dark] .public-brand,html[data-theme=dark] .sidebar .brand{color:#05b2dc}
html[data-theme=dark] .theme-toggle{background:#0d293d;border-color:#31576d;color:#bdefff}html[data-theme=dark] .theme-toggle:hover{background:#153d54}
html[data-theme=dark] .auth-page{background:linear-gradient(145deg,#071b2b,#0c2a42)}
html[data-theme=dark] .panel,html[data-theme=dark] .auth-card,html[data-theme=dark] .steps article,html[data-theme=dark] .sidebar,html[data-theme=dark] .block,html[data-theme=dark] .example-profile{background:#0d293d;border-color:#23475c;box-shadow:none}
html[data-theme=dark] .topbar,html[data-theme=dark] .public-header{background:#071b2bf2;border-color:#23475c}
html[data-theme=dark] .auth-story,html[data-theme=dark] .auth-card h2,html[data-theme=dark] .admin-metrics strong,html[data-theme=dark] .admin-platform li strong{color:#e4f2fa}
html[data-theme=dark] label,html[data-theme=dark] .auth-page label,html[data-theme=dark] .auth-page .auth-links a,html[data-theme=dark] .workspace-footer,html[data-theme=dark] .auth-footer,html[data-theme=dark] .main-nav a,html[data-theme=dark] .main-nav .nav-group,html[data-theme=dark] .sidebar .workspace-label,html[data-theme=dark] .admin-table th{color:#adc4d3}
html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea{background:#092235;border-color:#31576d;color:#e4f2fa}html[data-theme=dark] input[readonly]{background:#113247;color:#adc4d3}html[data-theme=dark] input:focus,html[data-theme=dark] select:focus,html[data-theme=dark] textarea:focus{outline-color:#05b2dc}
html[data-theme=dark] .button.primary,html[data-theme=dark] .public-button{background:#087ca7;color:#fff}html[data-theme=dark] .button.primary:hover,html[data-theme=dark] .public-button:hover{background:#00688f}
html[data-theme=dark] .button.secondary,html[data-theme=dark] .control-shortcuts .button,html[data-theme=dark] .public-button.outline{background:#0d293d;border-color:#31576d;color:#e4f2fa}html[data-theme=dark] .button.secondary:hover:enabled,html[data-theme=dark] .control-shortcuts .button:hover,html[data-theme=dark] .public-button.outline:hover{background:#153d54}
html[data-theme=dark] .languages button[aria-pressed=true],html[data-theme=dark] .public-languages button[aria-pressed=true]{background:#05b2dc;color:#071b2b}
html[data-theme=dark] .languages button,html[data-theme=dark] .text-button{color:#adc4d3}
html[data-theme=dark] .badge,html[data-theme=dark] .badge.subtle,html[data-theme=dark] .status.neutral,html[data-theme=dark] .demo-page .status{background:#11364a;color:#bdefff}
html[data-theme=dark] .main-nav a[aria-current=page]{color:#bdefff;background:#11364a;box-shadow:inset 3px 0 #05b2dc}html[data-theme=dark] .main-nav a:hover,html[data-theme=dark] .sidebar nav a:hover{background:#153d54;color:#e4f2fa}
html[data-theme=dark] .avatar,html[data-theme=dark] .empty-art{background:#11364a;color:#bdefff}
html[data-theme=dark] .next-panel{background:linear-gradient(120deg,#11364a,#0d293d);border-color:#31576d}html[data-theme=dark] .next-panel h2>span{color:#67d6ef}html[data-theme=dark] .next-panel p:not(.eyebrow){color:#adc4d3}
html[data-theme=dark] .identity-art>span{background:#0d293d;color:#bdefff}
html[data-theme=dark] .notice{background:#11364a;border-color:#31576d;color:#bdefff}html[data-theme=dark] .notice.error{background:#351e2a;border-color:#784153;color:#ffb6bc}html[data-theme=dark] .form-error{color:#ffb6bc}html[data-theme=dark] .form-error:empty{margin:0}html[data-theme=dark] .form-error:not(:empty){margin-bottom:18px}
html[data-theme=dark] .badge.good{background:#173f38;color:#a6e9c5}html[data-theme=dark] .form-error:not(.error).success{color:#a6e9c5}
html[data-theme=dark] .delete-panel{border-color:#784153}html[data-theme=dark] .delete-panel summary{color:#ffb6bc}html[data-theme=dark] .button.danger{background:#a83136;color:#fff}
html[data-theme=dark] .admin-table td,html[data-theme=dark] .sidebar-bottom,html[data-theme=dark] .form-footer{border-color:#23475c}
html[data-theme=dark] .setup-layout code{background:#11364a;color:#bdefff}
/* Public content surfaces; concept illustrations retain their deliberate colors. */
html[data-theme=dark] .mobile-menu,html[data-theme=dark] .platform-strip,html[data-theme=dark] .project-panel,html[data-theme=dark] .access-strip,html[data-theme=dark] .closing{background:#0d293d;border-color:#23475c}
html[data-theme=dark] .project-story>p,html[data-theme=dark] .access-strip p,html[data-theme=dark] .closing-note,html[data-theme=dark] .closing .eyebrow,html[data-theme=dark] .example-heading p,html[data-theme=dark] .example-label,html[data-theme=dark] .example-profile dt,html[data-theme=dark] .footer-bottom p>span{color:#adc4d3}
html[data-theme=dark] .project-topics span,html[data-theme=dark] .example-profile dl>div,html[data-theme=dark] .access-icon{border-color:#31576d;color:#adc4d3}
html[data-theme=dark] .project-tabs button[aria-selected=true]{background:#05b2dc;color:#071b2b}html[data-theme=dark] .project-tabs button:hover:not(.active){background:#11364a}
html[data-theme=dark] .public-languages,html[data-theme=dark] .languages{border-color:#31576d}html[data-theme=dark] .menu-toggle span{background:#e4f2fa}
@media(max-width:520px){.theme-controls{gap:7px}.theme-toggle{width:32px;height:32px;min-width:32px;padding:6px}.header-actions{gap:6px}.header-actions .public-button.compact{min-width:32px;padding:8px}.header-actions .public-button.compact [data-copy=enter]{display:none}.auth-header{padding:20px;gap:12px}.auth-header .brand{font-size:25px;gap:8px}.auth-header .brand img{width:32px;height:32px}.setup-layout>.setup-heading{margin-bottom:32px}.topbar-actions{gap:9px}}
@media(max-width:360px){.auth-header{padding-inline:16px}.auth-header .brand{font-size:23px}.auth-header .brand img{width:28px;height:28px}.theme-controls{gap:5px}.theme-controls .languages button{padding:7px 6px}}

html[data-theme=dark] .desktop-nav,html[data-theme=dark] .project-tabs,html[data-theme=dark] .approach-grid article,html[data-theme=dark] .faq-list details{background:#0d293d;border-color:#31576d;color:#e4f2fa}
html[data-theme=dark] .desktop-nav a,html[data-theme=dark] .platform-names,html[data-theme=dark] .platform-names b{color:#adc4d3}
html[data-theme=dark] .hero-art .identity-card,html[data-theme=dark] .hero-art .floating-tag{--ink:#033860;--muted:#45677b;color:#033860}
html[data-theme=dark] .hero-art .identity-heading h2,html[data-theme=dark] .hero-art .identity-line span{color:#033860}
html[data-theme=dark] .project-topics span,html[data-theme=dark] .platform-status{background:#11364a;border-color:#31576d;color:#adc4d3}
html[data-theme=dark] .hero-copy>.eyebrow{background:#11364a;border-color:#31576d;color:#67d6ef}
html[data-theme=dark] .project-tabs button[aria-selected=true]:hover{background:#05b2dc}
html[data-theme=dark] .hero-copy .accent-word{color:#05b2dc}
