/* v1.1.2 complete theme layer — public, case-study, installer, login and admin. */
.theme-toggle{appearance:none;-webkit-appearance:none;flex:0 0 auto;min-width:86px;height:42px;padding:0 14px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#17131c;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font:inherit;box-shadow:0 10px 28px rgba(0,0,0,.18);transition:transform .25s ease,background .25s ease,border-color .25s ease,color .25s ease}
.theme-toggle:hover{transform:translateY(-2px);border-color:#9b75ff}.theme-toggle:focus-visible{outline:3px solid #7aa7ff;outline-offset:3px}.theme-toggle span{font-size:18px;line-height:1}.theme-toggle small{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.theme-toggle-floating{position:fixed;z-index:150;top:18px;right:18px}.theme-toggle-login{position:absolute;top:22px;right:22px}.login-card{position:relative}
html[data-theme="dark"]{color-scheme:dark}
html[data-theme="light"]{color-scheme:light;--bg:#f5f2ec;--surface:#fff;--surface2:#ebe6de;--text:#18141e;--muted:#625b6b;--line:rgba(24,20,30,.16);--violet:#6841d5;--lime:#789d10}
html[data-theme="light"] body{background:#f5f2ec;color:#18141e}
html[data-theme="light"] body:before{opacity:.018}
html[data-theme="light"] .theme-toggle{background:#fff;color:#18141e;border-color:rgba(24,20,30,.2);box-shadow:0 10px 28px rgba(45,34,63,.1)}

/* Public header, hero and shared typography */
html[data-theme="light"] .site-header,html[data-theme="light"] .logo,html[data-theme="light"] .site-header nav,html[data-theme="light"] .text-link{color:#18141e}
html[data-theme="light"] .logo span{background:#18141e;color:#fff}
html[data-theme="light"] .site-header nav{color:#494250}
html[data-theme="light"] .button.ghost{background:rgba(255,255,255,.82);color:#18141e;border-color:rgba(24,20,30,.18)}
html[data-theme="light"] .menu-toggle span{background:#18141e}
html[data-theme="light"] .hero h1,html[data-theme="light"] .hero h1::first-line{color:#18141e}
html[data-theme="light"] .eyebrow,html[data-theme="light"] .kicker{color:#5e5669}
html[data-theme="light"] .hero-intro,html[data-theme="light"] .section-heading>p,html[data-theme="light"] .project-meta p,html[data-theme="light"] .timeline-item p:last-child,html[data-theme="light"] .principles p,html[data-theme="light"] .contact-copy>p:not(.kicker),html[data-theme="light"] footer span,html[data-theme="light"] footer small{color:#625b6b}
html[data-theme="light"] .section-heading h2 em,html[data-theme="light"] .about-sticky h2 em,html[data-theme="light"] .contact-copy h2 em{color:#6e6578}
html[data-theme="light"] .hero-metrics span,html[data-theme="light"] .float-card small{color:#625b6b}
html[data-theme="light"] .float-card{background:rgba(255,255,255,.95);color:#18141e;border-color:rgba(24,20,30,.13);box-shadow:0 24px 55px rgba(55,43,80,.16)}
html[data-theme="light"] .marquee{background:#e8e2d9;color:#18141e}
html[data-theme="light"] .filter-row button{color:#514a59;border-color:rgba(24,20,30,.18)}
html[data-theme="light"] .filter-row button.active,html[data-theme="light"] .filter-row button:hover{background:#18141e;color:#fff}
html[data-theme="light"] .about-section,html[data-theme="light"] .experience-section,html[data-theme="light"] .contact-section,html[data-theme="light"] footer{background-color:#f5f2ec}
html[data-theme="light"] .skill-panel{background:#fff;color:#18141e;box-shadow:0 28px 70px rgba(40,31,55,.08)}
html[data-theme="light"] .skill-bar{background:rgba(24,20,30,.12)}
html[data-theme="light"] .contact-section{background-image:radial-gradient(circle at 0 80%,rgba(104,65,213,.12),transparent 35%)}
html[data-theme="light"] input,html[data-theme="light"] textarea,html[data-theme="light"] select{color:#18141e;border-color:rgba(24,20,30,.2)}
html[data-theme="light"] input::placeholder,html[data-theme="light"] textarea::placeholder{color:#77707e;opacity:1}

/* Artwork intentionally remains dark in both modes. */
.portrait-caption b,.portrait-topline,.project-art .art-shape b,.case-art .art-shape b,.project-art .project-no,.project-art .open-project{color:#fff}
html[data-theme="light"] .project-art,html[data-theme="light"] .case-art{color:#fff}

/* Process section and case-study pages */
html[data-theme="light"] .process-section{background:#eee9e1;color:#18141e}
html[data-theme="light"] .process-section .kicker,html[data-theme="light"] .process-step p{color:#5f5864}
html[data-theme="light"] .process-track,html[data-theme="light"] .process-step{border-color:rgba(24,20,30,.2)}
html[data-theme="dark"] .process-section{background:#12101c;color:#f8f5ff}
html[data-theme="dark"] .process-section .kicker,html[data-theme="dark"] .process-step p{color:#aaa4b7}
html[data-theme="dark"] .process-track,html[data-theme="dark"] .process-step{border-color:rgba(255,255,255,.14)}
html[data-theme="dark"] .step-icon:after{border-color:#12101c}
html[data-theme="light"] .case-hero>p:not(.eyebrow),html[data-theme="light"] .case-body p{color:#625b6b}
html[data-theme="light"] .case-tags span,html[data-theme="light"] .next-project{border-color:rgba(24,20,30,.16)}

/* Installer also follows the saved theme. */
html[data-theme="light"] .install-page{background:radial-gradient(circle at 20% 10%,rgba(104,65,213,.11),transparent 32%),#f5f2ec;color:#18141e}
html[data-theme="light"] .install-page .panel{background:rgba(255,255,255,.94);border-color:rgba(24,20,30,.14);box-shadow:0 26px 70px rgba(45,34,63,.08)}
html[data-theme="light"] .install-page .lede,html[data-theme="light"] .install-brand small,html[data-theme="light"] .form-grid label{color:#625b6b}

@media(max-width:720px){
  .site-header>.theme-toggle{min-width:42px;width:42px;height:42px;padding:0}.site-header>.theme-toggle small{display:none}.theme-toggle-login{top:18px;right:18px}
  html[data-theme="light"] .site-header nav{background:#fff;border-color:rgba(24,20,30,.15);box-shadow:0 22px 55px rgba(45,34,63,.12)}
}
