:root{color-scheme:light;--page:#fff;--surface:#fff;--text:#171717;--border:#ddd;--secondary:#666}
:root[data-theme=dark]{color-scheme:dark;--page:#12151b;--surface:#1c212b;--text:#edf0f7;--border:#414958;--secondary:#b3bdcd;--ink:#edf0f7;--line:#414958;--muted:#b3bdcd}
body{background:var(--page);color:var(--text)}.theme-toggle{display:inline-grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border:1px solid var(--border);border-radius:50%;padding:0;background:var(--surface);color:var(--text);font-size:25px;cursor:pointer}.theme-toggle:focus-visible{outline:2px solid #d44738;outline-offset:3px}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;min-width:0}
body>header{position:relative;z-index:10;height:auto;min-height:78px;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;padding-block:14px}
body>header #site-nav{justify-self:center;gap:clamp(16px,2.5vw,42px)}body>header #site-nav a{padding:15px 0;white-space:nowrap}
body>header #site-nav a:after{bottom:6px}.header-actions .member-entry{display:block;white-space:nowrap;flex-shrink:0;margin:0;font-size:14px}.header-actions .admin-entry{margin:0;white-space:nowrap;font-size:14px}
@media(max-width:1100px){body>header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-inline:20px}body>header .menu-button{display:block;margin:0 0 0 auto;background:var(--surface);color:var(--text);border:1px solid var(--border);padding:8px 12px;border-radius:6px}body>header #site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--border);padding:16px 24px;flex-direction:column;gap:8px}body>header #site-nav.open{display:flex}.header-actions{gap:8px}.header-actions .member-entry{padding:10px 12px}}
@media(max-width:480px){body>header{padding:12px 16px}.header-actions{width:100%;justify-content:flex-end;border-top:1px solid var(--border);padding-top:10px}.header-actions .admin-entry{margin-right:auto}.theme-toggle{width:36px;height:36px;flex-basis:36px}}
@media(max-width:380px){.hero-copy h1{font-size:clamp(40px,12vw,54px)}}
:root[data-theme=dark] header,:root[data-theme=dark] nav,:root[data-theme=dark] dialog,:root[data-theme=dark] .card,:root[data-theme=dark] .card>.card-cta,:root[data-theme=dark] .values,:root[data-theme=dark] .profile-panel,:root[data-theme=dark] .table-wrap{background:var(--surface);color:var(--text);border-color:var(--border)}
:root[data-theme=dark] input,:root[data-theme=dark] button:not(.auth-submit):not(.member-entry):not(#confirm){background:var(--surface);color:var(--text);border-color:var(--border)}
:root[data-theme=dark] .auth-tabs button.active{color:#ff9385}:root[data-theme=dark] .auth-consent a,:root[data-theme=dark] .auth-note a,:root[data-theme=dark] .admin-entry,:root[data-theme=dark] .auth-message,:root[data-theme=dark] #status,:root[data-theme=dark] #edit-message{color:#ffad9f}
:root[data-theme=dark] .note,:root[data-theme=dark] .values span,:root[data-theme=dark] footer,:root[data-theme=dark] .auth-note,:root[data-theme=dark] .eyebrow{color:var(--secondary)}
:root[data-theme=dark] .hero-copy h1{text-shadow:none}:root[data-theme=dark] .hero-copy h1:after{background:linear-gradient(90deg,#edf0f7 0 80%,transparent)}
:root[data-theme=dark] th{background:#262d3a;color:var(--secondary)}:root[data-theme=dark] td{border-color:var(--border)}:root[data-theme=dark] .member-entry.signed-in{background:#3b4457}
