[data-theme-toggle]{font:inherit;font-size:12px;padding:9px 12px;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;cursor:pointer;white-space:nowrap;min-height:40px}
[data-theme-toggle]:focus-visible{outline:3px solid #65ac96;outline-offset:4px}
html[data-theme="light"]{--bg:#f7faf9;--panel:#edf3f1;--line:#b9cbc7;--text:#152e35;--muted:#465e67;--accent:#14675b;color-scheme:light}
html[data-theme="light"] body{background:var(--bg);color:var(--text)}
html[data-theme="light"] :is(header,footer,section,article,aside,details,summary,form,input,textarea,select,button,blockquote,.project-sidebar,.project-diagram,.contact-layout,.directory-card,.hero-console,.feature-map,.terminal,.architecture-static,.project-3d,.pathways>a,.filter-bar,.search-result){background-color:var(--bg);color:var(--text);border-color:var(--line)}
html[data-theme="light"] :is(h1,h2,h3,h4,p,li,dt,dd,label,figcaption,nav a,.role-title,.fine,.lead,.eyebrow,.chips span,.badge,.product-price){color:var(--text)}
html[data-theme="light"] :is(.primary,.signin){background:#14675b;color:#fff}
html[data-theme="light"] :is(.directory-card,.project-card,.engineering-depth article,.feature-map,.terminal,.chips span,.badge){background:#edf3f1;color:#152e35}
html[data-theme="light"] a:hover{color:#14675b}
@media(max-width:700px){header{flex-wrap:wrap}header [data-theme-toggle]{margin-left:auto}}
html[data-theme="light"] .portfolio-demo-context :is(a,strong){color:#14675b}
/* Keep inherited dark surfaces and fixed text colors aligned with the light palette. */
html[data-theme="light"] :is(.hero-console .visual-top,.hero-console .visual-bottom,.feature-map>span,.evidence-gallery figure,.product-shot figcaption,#contact-form,#contact-form input,#contact-form select,#contact-form textarea){background:var(--panel);color:var(--text);border-color:var(--line)}
html[data-theme="light"] :is(.card-action,.practice-card .source,.suite-footer strong,.explorer aside strong){color:var(--accent)}
html[data-theme="light"] #contact-form label{color:var(--text)}
