:root{--page:#f3f6fb;--surface:#fff;--text:#152b49;--muted:#73839a;--line:#dce4ef;--accent:#245ae8;--soft:#eaf0ff;--on-accent:#fff;--field:#fcfdff;--sidebar:#fff}
:root[data-theme="dark"]{color-scheme:dark;--page:#081321;--surface:#132338;--text:#edf5ff;--muted:#a2b4cc;--line:#34485f;--accent:#a4ef24;--soft:#193e4a;--on-accent:#102100;--field:#0c1b2e;--sidebar:#0b192a}
:root[data-theme="green"]{--page:#f7f3eb;--surface:#fffdf8;--text:#163e2b;--muted:#6e7f6c;--line:#d8decd;--accent:#255c3c;--soft:#e3e8d6;--on-accent:#fff;--field:#fcfaf4;--sidebar:#1b4531}
html,body{background:var(--page);color:var(--text)}aside{background:var(--sidebar);border-color:var(--line)}.panel,.stats article,.auth{background:var(--surface);border-color:var(--line)}.stats article:first-child{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}button{background:var(--accent);color:var(--on-accent)}.nav,.profile button{background:transparent;color:var(--muted)}.nav.active,.secondary,.pill,.avatar,.project-icon{background:var(--soft);color:var(--accent)}input,select,textarea{background:var(--field);color:var(--text);border-color:var(--line)}p,label,.total,header,td small,.person small,.profile small{color:var(--muted)}th{background:var(--soft);color:var(--text)}td,.person,header,.profile{border-color:var(--line)}.brand,.eyebrow{color:var(--accent)}dialog{background:var(--surface);color:var(--text);border-color:var(--line)}.theme-switch{position:fixed;bottom:16px;left:16px;z-index:6;border:1px solid var(--line);background:var(--surface);padding:9px;border-radius:12px;box-shadow:0 3px 15px #0002;display:flex;gap:6px;align-items:center}.theme-switch label{display:block;font-size:11px;margin-right:3px}.theme-switch button{padding:8px 10px;font-size:12px;background:var(--page);color:var(--text);border:2px solid transparent;min-height:36px}.theme-switch button[aria-pressed="true"]{border-color:var(--accent);font-weight:700}.theme-switch button:focus-visible{outline:2px solid var(--text);outline-offset:2px}:root[data-theme="dark"] .stats article{border-radius:6px}:root[data-theme="dark"] .stats article:first-child{background:#153a46;color:#eaffff;border-color:#00c9df}:root[data-theme="dark"] .brand,:root[data-theme="dark"] .eyebrow{color:#17d2e2}:root[data-theme="green"] aside .brand,:root[data-theme="green"] aside .nav,:root[data-theme="green"] aside .profile,:root[data-theme="green"] aside .profile small,:root[data-theme="green"] aside .profile button{color:#e9efdf}:root[data-theme="green"] aside .nav.active{color:#214b32}:root[data-theme="green"] .stats article{background:#e3e8d6}:root[data-theme="green"] .stats article:first-child{background:#255c3c}:root[data-theme="green"] .entry{background:#e9eddf}@media(max-width:650px){.theme-switch{bottom:calc(10px + env(safe-area-inset-bottom));left:8px;gap:2px;padding:5px}.theme-switch label{display:none}.theme-switch button{padding:6px;font-size:11px}.install-app{font-size:11px;padding:11px;right:8px}}@media(display-mode:standalone){body{padding-bottom:75px}}

/* Fill the viewport even when the selected page has little content. */
:root{background:var(--page)}html{min-height:100%}body,#app{min-height:100vh;min-height:100dvh}main{min-height:100vh;min-height:100dvh;background:var(--page)}@media(max-width:650px){main{min-height:calc(100dvh - 180px)}}
