:root{color-scheme:light;--bg:#f3f3ee;--card:#fff;--ink:#203638;--muted:#5b6b6c;--line:#d7dfda;--accent:#23634e;--soft:#e9f1eb;--hero:#193f36;--hero-text:#f6f5e9;--warn:#785314;--warn-bg:#fff3d3;--danger:#9c342d;--danger-bg:#fcece7;--shadow:0 6px 25px #14332806}
:root[data-theme=dark]{color-scheme:dark;--bg:#111c1d;--card:#1a292a;--ink:#e3ebe4;--muted:#adbdb7;--line:#364a45;--accent:#a0d6b4;--soft:#293d34;--hero:#284b40;--hero-text:#f6f5e9;--warn:#f6d18b;--warn-bg:#433822;--danger:#ffb8a9;--danger-bg:#492b28;--shadow:none}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#111c1d;--card:#1a292a;--ink:#e3ebe4;--muted:#adbdb7;--line:#364a45;--accent:#a0d6b4;--soft:#293d34;--hero:#284b40;--hero-text:#f6f5e9;--warn:#f6d18b;--warn-bg:#433822;--danger:#ffb8a9;--danger-bg:#492b28;--shadow:none}}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}[hidden]{display:none!important}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{min-height:44px;padding:9px 16px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font-size:14px;font-weight:600}button:hover{border-color:var(--accent);background:var(--soft)}button:disabled{cursor:not-allowed;opacity:.55}.primary{background:var(--accent);color:var(--card);border-color:var(--accent)}.primary:hover{background:var(--ink);color:var(--bg)}button.quiet{background:transparent}a{color:var(--accent);text-underline-offset:3px}a,pre,p,li{overflow-wrap:anywhere}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,4vw,42px);line-height:1.17;letter-spacing:-1.2px;font-weight:650;margin-bottom:18px}h2{font-size:19px;letter-spacing:-.35px;margin-bottom:12px}h3{font-size:17px}.small,small{font-size:13px;color:var(--muted)}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.8px;margin-bottom:13px;color:var(--muted)}.intro{max-width:650px;color:var(--muted);margin-bottom:24px}.layout{max-width:1600px;margin:auto}.sidebar{padding:26px 20px 0}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;font-size:20px;font-weight:650;color:var(--ink);letter-spacing:-.5px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:var(--hero);color:var(--hero-text);font-size:25px}.brand small{display:block;font-size:9px;letter-spacing:1.6px;margin-top:2px}.sidebar-note{display:none}.workspace{padding:0 18px 100px;min-width:0}.topbar{min-height:80px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid var(--line)}#todayLabel{font-size:13px;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.status{font-size:12px;color:var(--muted);padding:12px 0 22px;min-height:48px}.hero{background:var(--hero);color:var(--hero-text);border-radius:20px;padding:26px;display:flex;justify-content:space-between;gap:16px;margin-bottom:22px}.hero .eyebrow{color:#c1d6c6}.hero h1{font-size:clamp(27px,3.6vw,39px);max-width:580px}.hero p:last-child{font-size:14px;margin-bottom:0;max-width:530px;color:#d9e7de}.hero-count{align-self:center;min-width:80px;text-align:center}.hero-count strong{display:block;font-size:64px;font-weight:450;line-height:1.1;letter-spacing:-3px}.hero-count span{display:block;font-size:11px;max-width:90px;line-height:1.4;margin:9px auto 0}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:18px;box-shadow:var(--shadow);min-width:0}.section-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}.section-head h2{margin-bottom:0}.date-label{max-width:165px;font-size:11px;color:var(--muted)}input,select,textarea{display:block;width:100%;max-width:100%;min-width:0;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:10px 12px;min-height:44px}label{display:block;font-size:13px;margin-bottom:12px}label>input,label>select,label>textarea{margin-top:5px}textarea{resize:vertical}form{min-width:0}.form-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.form-row label{flex:1;min-width:110px}.form-row>button{margin-bottom:12px}.banner{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:18px;font-size:14px}.warning{background:var(--warn-bg);color:var(--warn);border-color:var(--warn)}.danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.banner button{margin-top:8px}.task{display:flex;gap:10px;align-items:flex-start;border-top:1px solid var(--line);padding:17px 0}.task:first-child{border-top:0}.task-check{min-width:44px;min-height:44px;display:grid;place-items:center;margin:0;cursor:pointer}.task-check input,.criterion input{width:22px;height:22px;min-height:22px;accent-color:var(--accent);margin:0}.task-main{flex:1;min-width:0}.task-main p{margin:5px 0 0;font-size:15px}.task.done .task-main p{text-decoration:line-through;color:var(--muted)}.tag{font-size:10px;letter-spacing:.6px;font-weight:750;color:var(--accent);padding:3px 7px;background:var(--soft);border-radius:5px}.tag.p0{color:var(--warn);background:var(--warn-bg)}.task-meta{font-size:11px;color:var(--muted);margin-left:7px}.task-delete{padding:4px;min-width:44px;color:var(--muted);background:transparent;border-color:transparent}.add-task{border-top:1px solid var(--line);margin-top:18px;padding-top:12px}summary{min-height:44px;padding:9px 0;font-weight:600}details form{padding-top:12px}.clock{font-size:clamp(52px,9vw,72px);font-weight:400;font-variant-numeric:tabular-nums;line-height:1.25;letter-spacing:-3px;margin:20px 0 6px}.focus-card{text-align:center}.focus-card .actions{justify-content:center}.timer-presets{display:flex;justify-content:center;gap:5px;margin:18px 0}.timer-presets button{padding:8px 11px;font-size:12px}.timer-presets [aria-pressed=true]{background:var(--soft);border-color:var(--accent)}.dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.stats{margin:0}.stats div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.stats dd{margin:0;font-weight:700}.gate-card{border-left:5px solid var(--line)}.gate-card.failed{border-left-color:var(--danger)}.gate-card.passed{border-left-color:var(--accent)}.gate-status{font-size:12px;font-weight:750;letter-spacing:.7px;margin-bottom:8px}.gate-card.failed .gate-status{color:var(--danger)}.gate-card.passed .gate-status{color:var(--accent)}.criterion{display:flex;align-items:flex-start;gap:13px;padding:12px 0;margin:0;font-size:14px;cursor:pointer}.criterion input{flex:none;margin-top:3px}.gate-evidence{margin-top:16px}.prose{font-size:15px}.prose h2{margin-top:28px}.prose p{margin-bottom:15px}.prose ul{padding-left:22px}.prose li{padding:5px 0}.prose code{background:var(--soft);padding:1px 4px;border-radius:3px}.opportunity{margin-top:18px}.opportunity .meta{font-size:13px;color:var(--muted)}.opportunity .due{color:var(--danger);font-weight:600}dialog{max-width:560px;width:calc(100% - 24px);max-height:90dvh;border:1px solid var(--line);border-radius:18px;padding:24px;background:var(--card);color:var(--ink)}dialog::backdrop{background:#101c1cc9}pre{font-size:11px;white-space:pre-wrap;background:var(--bg);padding:12px;max-height:300px;overflow:auto}footer{font-size:11px;color:var(--muted);padding:22px 0}footer span{display:block}#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);max-width:calc(100% - 28px);width:max-content;background:var(--ink);color:var(--bg);padding:14px 20px;border-radius:12px;box-shadow:0 5px 30px #0003;z-index:20;font-size:14px}.skip{position:absolute;left:-9999px;top:0}.skip:focus{left:20px;z-index:30;background:var(--card);padding:12px}nav{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);background:var(--card);border-top:1px solid var(--line);padding:7px 6px calc(7px + env(safe-area-inset-bottom));z-index:10}nav button{font-size:11px;font-weight:600;padding:7px 2px;border:0;background:none;border-radius:8px;min-width:0}nav span{display:block;font-size:10px;color:var(--muted);margin-bottom:3px}nav [aria-current=page]{background:var(--soft);color:var(--accent)}.empty{padding:15px 0;color:var(--muted);font-size:14px}
@media(min-width:800px){.layout{display:grid;grid-template-columns:220px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:34px 22px}.brand{font-size:17px}.brand-mark{width:37px;height:37px}.brand small{font-size:8px}nav{position:static;display:flex;flex-direction:column;background:none;border:0;padding:45px 0;gap:8px}nav button{text-align:left;font-size:14px;padding:12px 14px}nav span{display:inline;margin-right:16px;font-size:11px}.sidebar-note{display:block;margin-top:40px;padding:0 10px}.sidebar-note p{font-size:19px;line-height:1.6;letter-spacing:-.5px}.workspace{padding:0 32px 30px}.today-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(255px,1fr);gap:20px}.hero{padding:34px}.hero-count{padding:0 12px}.hero-count strong{font-size:85px}#toast{bottom:28px}}
@media(max-width:400px){.workspace{padding-left:12px;padding-right:12px}.hero{padding:20px;gap:8px}.hero-count strong{font-size:49px}.hero-count{min-width:58px}.hero-count span{font-size:10px;max-width:60px}.card{padding:17px}.date-label{max-width:140px}.topbar .actions button{font-size:12px;padding:8px 10px}}
@media(prefers-reduced-motion:no-preference){.gate-card.passed{animation:passed .6s ease-out}@keyframes passed{from{box-shadow:0 0 0 5px var(--accent)}to{box-shadow:var(--shadow)}}}
