/* Shared light/dark surfaces. Artwork and file-type colors keep their identity. */
:root{color-scheme:light}
:root[data-theme="dark"]{--paper:#111827;--surface:#192336;--ink:#edf2fb;--muted:#b1bdd1;--accent:#8ba6ff;--accent-strong:#adc1ff;--accent-soft:#263655;--line:#36435a;color-scheme:dark}
.theme-toggle{display:grid;place-items:center;width:44px;height:44px;flex:none;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;touch-action:manipulation}
.theme-toggle:hover{background:var(--accent-soft);border-color:var(--accent)}
.theme-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}
.theme-toggle .theme-sun{display:none}
[data-theme="dark"] .theme-toggle .theme-sun{display:block}
[data-theme="dark"] .theme-toggle .theme-moon{display:none}
.theme-toggle:disabled{cursor:wait}
.site-header .header-inner{grid-template-columns:150px minmax(0,1fr) 44px}
.site-header .header-inner>.theme-toggle{grid-column:3;grid-row:1}
html[data-magicui-theme-vt="active"]::view-transition-old(root),html[data-magicui-theme-vt="active"]::view-transition-new(root){animation:none;mix-blend-mode:normal}
html[data-magicui-theme-vt="active"]::view-transition-group(root){animation-duration:var(--magicui-theme-toggle-vt-duration)}
html[data-magicui-theme-vt="active"].lenis.lenis-stopped{overflow-y:scroll}
html[data-magicui-theme-vt="active"]::view-transition-old(root){z-index:1}
html[data-magicui-theme-vt="active"]::view-transition-new(root){z-index:2;clip-path:var(--magicui-theme-vt-clip-from)}
/* The two snapshots own the transition: child color fades must finish before capture. */
html[data-magicui-theme-vt="active"] *,html[data-magicui-theme-vt="active"] *::before,html[data-magicui-theme-vt="active"] *::after{transition:none!important;animation-play-state:paused!important}
[data-theme="dark"] .button-dark,[data-theme="dark"] .contact-footer #contact-email{background:#315be8;color:#fff;border-color:#315be8}
[data-theme="dark"] .button-dark:hover,[data-theme="dark"] .contact-footer #contact-email:hover{background:#4268ed;border-color:#4268ed}
[data-theme="dark"] .experience-poster{background:#315be8}
[data-theme="dark"] .demo-tag,[data-theme="dark"] .folder-demo,[data-theme="dark"] .experience-type{border-color:#4b608a}
[data-theme="dark"] .footer-copy,[data-theme="dark"] .footer-socials .social-icon,[data-theme="dark"] .footer-back-top>span{border-color:var(--line)}
[data-theme="dark"] .hero-info-card{box-shadow:none}
[data-theme="dark"] .pl-print{background:#e9edf5;color:#18213a;border-color:#cad3e3;box-shadow:0 18px 28px -17px #0009}
[data-theme="dark"] .pl-print-number,[data-theme="dark"] .pl-expand{color:#5f6d86}
[data-theme="dark"] .pl-string path{stroke:#71809d}
[data-theme="dark"] .photo-dialog{color:#edf2fb}
[data-theme="dark"] .photo-dialog-close,[data-theme="dark"] .photo-lightbox-controls button{color:#edf2fb}
[data-theme="dark"] .project-dialog::backdrop{background:#030712bf}
[data-theme="dark"] .toast{background:#edf2fb;color:#18213a}
[data-theme="dark"] .skip{background:#edf2fb;color:#18213a}
@media(min-width:1001px) and (max-width:1180px){.site-header .header-inner{grid-template-columns:110px minmax(0,1fr) 44px;gap:16px}.site-header .nav-links{gap:16px}}
@media(max-width:1000px){
  .site-header .header-inner{grid-template-columns:1fr 44px 90px;gap:16px}
  .site-header .header-inner>.theme-toggle{grid-column:2;grid-row:1}
  .site-header .menu-toggle{grid-column:3;grid-row:1}
}
@media(max-width:420px){.site-header .header-inner{gap:10px;grid-template-columns:1fr 44px 80px}.site-header .menu-toggle{width:80px}}
@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none}}
