:root{--bg:#F3F5F4;--surface:#FCFDFD;--fg:#1E2B2A;--muted:#5A6B68;--line:#D8DEDC;--accent:#2E6E66;--accent-ink:#FFFFFF;--chip-ink:#FFFFFF;--start:#5B6B8C;--s1:#9A7B2E;--s2:#B05C42;--s3:#9A5273;--s4:#6D5BA0;--s5:#3B6FA8;--s6:#2E7D74;--maint:#5C7D4C;--display:"Fraunces",Georgia,serif;--body:"Public Sans",-apple-system,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#111917;--surface:#182220;--fg:#E4EBE9;--muted:#93A29E;--line:#2B3733;--accent:#5FB3A5;--accent-ink:#0E1A18;--chip-ink:#13201D;--start:#8FA3C9;--s1:#CBAA55;--s2:#D98B70;--s3:#C983A4;--s4:#A08FD1;--s5:#7BA6D9;--s6:#63B0A6;--maint:#8FAF7E;color-scheme:dark}}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:15.5px;line-height:1.55;min-height:100vh;display:flex;flex-direction:column}main{flex:1 1}h1,h2,h3,h4{font-family:var(--display);font-weight:500;line-height:1.15;margin:0;text-wrap:balance}p{margin:0}button,input,select,textarea{font-family:var(--body)}.wrap{max-width:980px;margin:0 auto;padding-inline:18px}.appbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 90%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.appbar .inner{max-width:980px;margin:0 auto;padding:11px 18px;display:flex;align-items:center;gap:12px}.brand{font-family:var(--display);font-size:17px}.brand small{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.appbar .spacer{flex:1 1}.homelink{font-size:12.5px;color:var(--accent);background:none;border:0;cursor:pointer;padding:6px 10px;border-radius:8px}.homelink:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.screen{padding-block:34px 60px}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px 24px}.btn{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:var(--accent-ink);border:0;border-radius:10px;padding:11px 20px;font-size:14.5px;font-weight:600;cursor:pointer}.btn:hover{filter:brightness(1.06)}.btn:disabled{opacity:.55;cursor:default}.btn.ghost{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}.btn.small{padding:7px 14px;font-size:13px}.btn.danger{background:transparent;color:var(--s2);border:1.5px solid var(--s2)}.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:9px 12px;font-size:14px;color:var(--fg)}textarea{resize:vertical;min-height:56px}label{font-size:11.5px;font-weight:600;display:block;margin-bottom:4px;letter-spacing:.02em}.mut,label{color:var(--muted)}.small,footer.crisis{font-size:12.5px}footer.crisis{border-top:1px solid var(--line);padding:20px 18px 24px;text-align:center;color:var(--muted)}footer.crisis b{color:var(--fg)}.logincard{max-width:440px;margin:8vh auto 0}.logincard h1{font-size:30px;margin-bottom:8px}.logincard p.lead{color:var(--muted);font-size:14px;margin-bottom:20px}.devnote{margin-top:16px;font-size:12px;color:var(--muted);border-top:1px dashed var(--line);padding-top:12px}.formerr{margin-top:12px;font-size:13px;color:var(--s2)}.hello{margin-bottom:24px}.hello h1{font-size:clamp(26px,5vw,36px)}.hello p{color:var(--muted);margin-top:6px;max-width:60ch}.modgrid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:14px;gap:14px;margin-top:18px}@media(max-width:640px){.modgrid{grid-template-columns:1fr}}.modcard{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:8px;min-width:0}.modcard .k{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.modcard h3{font-size:18px}.modcard p{font-size:13px;color:var(--muted)}.modcard .row{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:8px}.modcard.open{border-top:4px solid var(--s5)}.modcard.locked{opacity:.75}.lock{font-family:var(--mono);font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:99px;padding:3px 10px}.gatecardhome{margin-top:22px;background:color-mix(in srgb,var(--s6) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--s6) 35%,var(--line));border-radius:12px;padding:16px 20px;font-size:13.5px;color:var(--muted)}.gatecardhome b{color:var(--fg)}.subslist{margin-top:22px}.subslist h3{font-family:var(--display);font-size:18px;margin-bottom:10px}.subrow{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 16px;margin-top:8px;font-size:13.5px;flex-wrap:wrap}.subrow .when{font-family:var(--mono);font-size:11px;color:var(--muted)}.modhead{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:6px}.modhead h1{font-size:clamp(24px,4.5vw,32px)}.modhead .ed{font-family:var(--mono);font-size:11px;color:var(--muted)}.modsub{color:var(--muted);max-width:62ch}.chapters,.modsub{margin-bottom:22px}.chapters{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.chapters::-webkit-scrollbar{display:none}.chap{flex:none;gap:7px;border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:99px;padding:7px 14px 7px 8px;font-size:13px;cursor:pointer}.chap,.chap .dot{display:flex;align-items:center}.chap .dot{width:22px;height:22px;border-radius:7px;justify-content:center;font-family:var(--mono);font-size:10px;color:var(--chip-ink);background:var(--c)}.chap[aria-current=true]{border-color:var(--c);background:color-mix(in srgb,var(--c) 10%,var(--surface));font-weight:600}.pane h2{font-size:22px;margin-bottom:4px}.pane .stepline{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--c);margin-bottom:14px}.pane p{margin-bottom:12px;max-width:66ch}.pane p.mut{font-size:14px}.callout{border-left:3px solid var(--c);background:color-mix(in srgb,var(--c) 7%,var(--surface));border-radius:0 10px 10px 0;padding:12px 16px;font-size:13.5px;color:var(--muted);margin-bottom:14px;max-width:66ch}.callout b{color:var(--fg)}.pagenav{display:flex;justify-content:space-between;gap:10px;margin-top:28px}.record{background:var(--surface);border:1.5px solid color-mix(in srgb,var(--c) 45%,var(--line));border-radius:12px;padding:18px 20px;margin-block:18px}.record .tb{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--c);margin-bottom:8px}.record h3{font-size:17px;margin-bottom:12px}.formgrid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:10px;gap:10px;background:color-mix(in srgb,var(--c) 5%,var(--surface));border:1px dashed color-mix(in srgb,var(--c) 40%,var(--line));border-radius:10px;padding:14px}.formgrid .fw{min-width:0}.span12{grid-column:span 12}.span8{grid-column:span 8}.span6{grid-column:span 6}.span4{grid-column:span 4}.span3{grid-column:span 3}@media(max-width:700px){.span6,.span8{grid-column:span 12}.span3,.span4{grid-column:span 6}}.formactions{grid-column:span 12;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.formactions .editing{font-family:var(--mono);font-size:10.5px;color:var(--c)}.dtable{overflow-x:auto;margin-top:14px;border:1px solid var(--line);border-radius:10px}.dtable table{border-collapse:collapse;width:100%;min-width:660px;font-size:13px}.dtable th{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--c) 6%,var(--surface));white-space:nowrap}.dtable td{padding:9px 12px;border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent);vertical-align:top;min-width:0}.dtable tr:last-child td{border-bottom:0}.dtable tbody tr{cursor:pointer}.dtable tbody tr:hover{background:color-mix(in srgb,var(--c) 5%,transparent)}.dtable tbody tr.rowsent{cursor:default;opacity:.72}.dtable tbody tr.rowedit{outline:2px solid var(--c);outline-offset:-2px}.dtable .when{font-family:var(--mono);font-size:10.5px;color:var(--muted);white-space:nowrap}.dtable .num{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.chip{font-family:var(--mono);font-size:9px;letter-spacing:.06em;border-radius:99px;padding:2px 8px;border:1px solid;white-space:nowrap}.chip.sent{color:var(--maint);border-color:color-mix(in srgb,var(--maint) 55%,transparent)}.chip.trial{color:var(--s2);border-color:color-mix(in srgb,var(--s2) 55%,transparent)}.chip.kept{color:var(--maint);border-color:color-mix(in srgb,var(--maint) 55%,transparent)}.chip.testing{color:var(--s5);border-color:color-mix(in srgb,var(--s5) 55%,transparent)}.chip.retired{color:var(--muted);border-color:var(--line);text-decoration:line-through}.chip.active{color:var(--fg);border-color:var(--line)}.chip.open{color:var(--s1);border-color:color-mix(in srgb,var(--s1) 55%,transparent)}.chip.done{color:var(--s6);border-color:color-mix(in srgb,var(--s6) 55%,transparent)}.emptyrow{font-size:13px;color:var(--muted);font-style:italic;padding:12px 14px}.recnote{font-family:var(--mono);font-size:10.5px;color:var(--muted);margin-top:10px;letter-spacing:.02em}.needthreat{background:color-mix(in srgb,var(--s2) 9%,transparent)!important}.harvest{border-left:3px solid var(--s6);background:color-mix(in srgb,var(--s6) 6%,var(--surface));border-radius:0 9px 9px 0;padding:10px 14px;margin-top:10px;font-size:14px}.harvest .when{font-family:var(--mono);font-size:10.5px;color:var(--muted);display:block;margin-bottom:3px}.timerbox{text-align:center;padding:10px 0}.timerbox .clock{font-family:var(--mono);font-size:44px;letter-spacing:.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.timerbox .line{font-style:italic;color:var(--muted);font-size:14px;max-width:46ch;margin:10px auto 14px}.constats{display:flex;gap:14px;flex-wrap:wrap;margin-block:16px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 18px;min-width:120px}.stat .n{font-family:var(--mono);font-size:22px}.stat .l{font-size:11px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.credbox{border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface));border-radius:0 10px 10px 0;padding:14px 16px;margin-top:14px;font-size:14px}.credbox code{font-family:var(--mono);font-size:13.5px;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:2px 8px}.overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--fg) 40%,transparent);display:flex;align-items:center;justify-content:center;padding:18px;z-index:50}.gatebox{background:var(--surface);border-radius:14px;max-width:460px;width:100%;padding:24px 26px;border-top:5px solid var(--s6);max-height:85vh;overflow-y:auto}.gatebox h3{font-size:20px;margin-bottom:6px}.gatebox p{margin-bottom:14px}.gatebox p,.gatebox ul{font-size:13.5px;color:var(--muted)}.gatebox ul{margin:0 0 14px;padding-left:20px}.gatebox li b{color:var(--fg)}.fearscale{display:grid;grid-template-columns:repeat(11,1fr);grid-gap:4px;gap:4px;margin-bottom:6px}.fearscale button{aspect-ratio:1;border-radius:8px;border:1px solid var(--line);background:var(--bg);font-family:var(--mono);font-size:13px;color:var(--fg);cursor:pointer;min-width:0}.fearscale button:hover{border-color:var(--accent)}.fearscale button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.scalelabels{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px}.containbox,.scalelabels{color:var(--muted);margin-bottom:14px}.containbox{border-left:3px solid var(--s2);background:color-mix(in srgb,var(--s2) 7%,var(--surface));border-radius:0 10px 10px 0;padding:12px 16px;font-size:13.5px}.containbox b{color:var(--fg)}.gateactions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--fg);color:var(--bg);border-radius:99px;padding:9px 18px;font-size:13px;z-index:60;max-width:90vw;text-align:center}@media (prefers-reduced-motion:no-preference){.toast{animation:tin .2s ease}}@keyframes tin{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.loadingline{padding:60px 0;text-align:center;color:var(--muted);font-size:14px}