:root,.t-dark{--today:#ff5a1f;--on-today:#111110;--today-hover:#ff7443;--today-press:#e64d14;--ink:#f2f0ea;--ink-2:#9c9a93;--ink-3:#6b6963;--ground:#0e0e0d;--surface:#151514;--surface-2:#1c1c1a;--line:#262624;--line-2:#3b3a37;--ok:#3dba73;--err:#ff6a5a;--on-err:#111110;--e1:none;--e2:0 0 0 1px #3b3a37, 0 12px 32px -12px #000000b3;--e3:0 0 0 1px #3b3a37, 0 32px 80px -24px #000000d9;--scrim:#0000009e;--hatch:#3b3a37;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.t-light{--ink:#111110;--ink-2:#5f5d57;--ink-3:#9a9891;--ground:#f4f3f0;--surface:#fff;--surface-2:#ecebe7;--line:#e3e1dc;--line-2:#c9c7c1;--ok:#1f8a4c;--err:#d4321f;--on-err:#fff;--e2:0 0 0 1px #e3e1dc, 0 8px 24px -12px #11111047;--e3:0 0 0 1px #e3e1dc, 0 24px 64px -24px #11111066;--scrim:#1111106b;--hatch:#c9c7c1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--ink:#111110;--ink-2:#5f5d57;--ink-3:#9a9891;--ground:#f4f3f0;--surface:#fff;--surface-2:#ecebe7;--line:#e3e1dc;--line-2:#c9c7c1;--ok:#1f8a4c;--err:#d4321f;--on-err:#fff;--e2:0 0 0 1px #e3e1dc, 0 8px 24px -12px #11111047;--e3:0 0 0 1px #e3e1dc, 0 24px 64px -24px #11111066;--scrim:#1111106b;--hatch:#c9c7c1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-theme=light]{--ink:#111110;--ink-2:#5f5d57;--ink-3:#9a9891;--ground:#f4f3f0;--surface:#fff;--surface-2:#ecebe7;--line:#e3e1dc;--line-2:#c9c7c1;--ok:#1f8a4c;--err:#d4321f;--on-err:#fff;--e2:0 0 0 1px #e3e1dc, 0 8px 24px -12px #11111047;--e3:0 0 0 1px #e3e1dc, 0 24px 64px -24px #11111066;--scrim:#1111106b;--hatch:#c9c7c1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{--u:4px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--r0:0;--r1:4px;--r2:8px;--r3:12px;--t1:80ms;--t2:.16s;--t3:.24s;--ease:cubic-bezier(.2, 0, 0, 1);--display:"Funnel Display", "Funnel Sans", system-ui, sans-serif;--sans:"Funnel Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Martian Mono", ui-monospace, "SF Mono", Menlo, monospace;--rail:52px;--topbar:52px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--ground);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}h1,h2,h3,h4{text-wrap:balance;margin:0;font-weight:600}p{margin:0}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--today);outline-offset:2px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.num{font-variant-numeric:tabular-nums}.lbl{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-size:11px;font-weight:500;line-height:1.2}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--today);color:var(--on-today);padding:var(--s3) var(--s5);font-weight:600;position:absolute;top:0;left:-9999px}.skip-link:focus{left:var(--s4);top:var(--s4)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.auth{min-height:100dvh;padding:var(--s5);background:var(--ground);place-items:center;display:grid}.auth-card{width:100%;max-width:380px}.auth h1{margin-top:var(--s5);font-family:var(--display);letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:1}.auth-sub{margin-top:var(--s2);color:var(--ink-2);font-size:14px;line-height:1.5}.auth-form{gap:var(--s3);margin-top:var(--s5);display:grid}.auth-foot{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-size:11px}.auth-wait{background:var(--ground);min-height:100dvh;color:var(--ink-3);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;place-items:center;font-size:11px;display:grid}@media (width<=420px){.auth{padding:var(--s4);padding-top:var(--s8);place-items:start center}}.badge{height:22px;padding:0 var(--s2);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;background:var(--surface-2);color:var(--ink);white-space:nowrap;border-radius:3px;align-items:center;gap:6px;font-size:11px;font-weight:500;display:inline-flex}.badge i{background:var(--ink);flex:none;width:7px;height:7px}.badge.now{background:var(--today);color:var(--on-today)}.badge.now i{background:var(--on-today)}.badge.ok{color:var(--ok)}.badge.ok i{background:var(--ok)}.badge.err{color:var(--err)}.badge.err i{background:var(--err)}.badge.late{color:var(--today)}.badge.late i{background:repeating-linear-gradient(135deg, transparent 0 1.5px, var(--today) 1.5px 3px);box-shadow:inset 0 0 0 1px var(--today)}.badge.soon{color:var(--ink-3);box-shadow:inset 0 0 0 1px var(--line);background:0 0}.badge.soon i{box-shadow:inset 0 0 0 1px var(--line-2);background:0 0}.t-light .badge.late,:root[data-theme=light] .badge.late{color:var(--ink)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .badge.late{color:var(--ink)}}.wk-load{gap:calc(var(--u,4px) / 4);display:inline-flex}.wk-load i{width:var(--u,4px);height:var(--u,4px);box-shadow:inset 0 0 0 1.5px var(--line-2);animation:1.4s step-end infinite fillwk;display:block}.wk-load i:first-child{animation-delay:0s}.wk-load i:nth-child(2){animation-delay:.2s}.wk-load i:nth-child(3){animation-delay:.4s}.wk-load i:nth-child(4){animation-delay:.6s}.wk-load i:nth-child(5){animation-delay:.8s}.wk-load i:nth-child(6){animation-delay:1s}.wk-load i:nth-child(7){animation-delay:1.2s}@keyframes fillwk{0%{background:0 0}.1%{background:var(--ink);box-shadow:none}92%{background:var(--ink);box-shadow:none}to{background:0 0}}.skel{gap:6px;display:grid}.skel i{background:var(--surface-2);height:12px;animation:1.2s steps(2,end) infinite skel;display:block}@keyframes skel{50%{background:var(--line)}}@media (prefers-reduced-motion:reduce){.wk-load i{background:var(--ink);box-shadow:none;animation:none}.wk-load i:nth-child(n+5){box-shadow:inset 0 0 0 1.5px var(--line-2);background:0 0}.skel i{animation:none}}.btn{justify-content:center;align-items:center;gap:var(--s2);border-radius:var(--r1);cursor:pointer;height:36px;transition:background var(--t2) var(--ease), transform var(--t1) var(--ease);white-space:nowrap;background:0 0;border:1.5px solid #0000;padding:0 14px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.btn.sm{height:30px;padding:0 10px;font-size:13px}.btn.lg{height:44px;padding:0 20px;font-size:15px}.btn kbd{font-family:var(--mono);background:color-mix(in srgb, var(--on-today) 14%, transparent);border-radius:3px;padding:1px 5px;font-size:10.5px;font-weight:500}.btn.pri{background:var(--today);color:var(--on-today);border-color:var(--today)}.btn.pri:hover,.btn.pri.is-hover{background:var(--today-hover);border-color:var(--today-hover)}.btn.pri:active,.btn.pri.is-active{background:var(--today-press);border-color:var(--today-press);transform:translateY(1px)}.btn.sec{background:var(--surface);border-color:var(--line-2);color:var(--ink)}.btn.sec:hover,.btn.sec.is-hover{background:var(--surface-2)}.btn.sec:active,.btn.sec.is-active{background:var(--line)}.btn.ghost{color:var(--ink)}.btn.ghost:hover,.btn.ghost.is-hover{background:var(--surface-2)}.btn.ghost kbd,.btn.sec kbd,.btn.dng kbd{background:var(--surface-2);color:var(--ink-2)}.btn.ink{background:var(--ink);color:var(--ground);border-color:var(--ink)}.btn.ink:hover,.btn.ink.is-hover{background:color-mix(in srgb, var(--ink) 90%, var(--ground));border-color:color-mix(in srgb, var(--ink) 90%, var(--ground))}.btn.ink kbd{background:color-mix(in srgb, var(--ground) 22%, transparent);color:inherit}.btn.dng{color:var(--err);border-color:var(--err);background:0 0}.btn.dng:hover,.btn.dng.is-hover{background:var(--err);color:var(--on-err)}.btn.dng:hover kbd,.btn.dng.is-hover kbd{background:color-mix(in srgb, var(--on-err) 22%, transparent);color:inherit}.btn.is-focus{outline:2px solid var(--today);outline-offset:2px}.btn.pri:focus-visible,.btn.pri.is-focus{outline-color:var(--ink)}.btn[disabled],.btn.is-disabled{opacity:.4;cursor:not-allowed;transform:none}.btn.is-loading{pointer-events:none}.btn .wk-load{--u:5px}.btn.pri .wk-load i,.btn.ink .wk-load i{box-shadow:inset 0 0 0 1.5px color-mix(in srgb, currentColor 45%, transparent);animation-name:fillwk-on}@keyframes fillwk-on{0%{background:0 0}.1%{box-shadow:none;background:currentColor}92%{box-shadow:none;background:currentColor}to{background:0 0}}@media (prefers-reduced-motion:reduce){.btn.pri .wk-load i,.btn.ink .wk-load i{box-shadow:none;background:currentColor;animation:none}.btn.pri .wk-load i:nth-child(n+5),.btn.ink .wk-load i:nth-child(n+5){box-shadow:inset 0 0 0 1.5px color-mix(in srgb, currentColor 45%, transparent);background:0 0}}.cell{width:var(--cw,24px);height:var(--ch,24px);background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line-2);border-radius:var(--r0);flex:none;display:inline-block;position:relative}.cell.done,.cell.given{background:var(--ink);box-shadow:none}.cell.given:after{content:"";background:var(--surface);width:25%;height:25%;margin:auto;position:absolute;inset:0}.cell.now{background:var(--today);box-shadow:none}.cell.missed{background:repeating-linear-gradient(135deg, transparent 0 3px, var(--hatch) 3px 4.5px);box-shadow:inset 0 0 0 1.5px var(--line-2)}.cell.late{background:repeating-linear-gradient(135deg, transparent 0 3px, var(--today) 3px 4.5px);box-shadow:inset 0 0 0 1.5px var(--today)}.cell.off{box-shadow:none;outline:1px dotted var(--line-2);outline-offset:-1px;background:0 0}.cell.ghost{background:var(--surface-2);box-shadow:none}.cell.blank{visibility:hidden}.chk{cursor:pointer;align-items:center;gap:10px;min-width:0;font-size:14px;display:inline-flex}.chk input{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chk .cell{--cw:18px;--ch:18px}.chk .cell.done:after{content:"";border-right:2px solid var(--ground);border-bottom:2px solid var(--ground);width:5px;height:9px;position:absolute;top:2px;left:5px;transform:rotate(45deg)}.chk .cell.given:after{border:0;width:5px;height:5px;top:0;left:0;transform:none}.chk.is-focus .cell{outline:2px solid var(--today);outline-offset:2px}.chk:has(input:focus-visible) .cell{outline:2px solid var(--today);outline-offset:2px}.chk.is-disabled{opacity:.4;cursor:not-allowed}.chk:has(input:disabled){opacity:.4;cursor:not-allowed}.chk .note{color:var(--ink-2);font-size:12px}.mk{grid-template-columns:repeat(4, var(--u,4px));grid-auto-rows:var(--u,4px);gap:calc(var(--u,4px) / 4);vertical-align:middle;color:var(--ink);flex:none;display:inline-grid}.mk i{display:block}.mk .f{background:currentColor}.mk .o{box-shadow:inset 0 0 0 max(1px, calc(var(--u,4px) / 5)) currentColor}.mk .T{background:var(--today)}.mk .h{background:currentColor;position:relative}.mk .h:after{content:"";background:var(--surface);width:34%;height:34%;margin:auto;position:absolute;inset:0}.mk .x{background:repeating-linear-gradient(135deg, transparent 0 calc(var(--u,4px) / 3), currentColor calc(var(--u,4px) / 3) calc(var(--u,4px) / 2));box-shadow:inset 0 0 0 max(1px, calc(var(--u,4px) / 6)) currentColor}.mk .L{height:max(1.5px, calc(var(--u,4px) / 4));background:currentColor;grid-column:1/-1;align-self:center}.logo{align-items:flex-end;gap:calc(var(--u,4px) / 4);height:calc(var(--u,4px) * 4 + var(--u,4px) * 3 / 4);color:var(--ink);flex:none;display:inline-flex}.logo b{width:var(--u,4px);background:currentColor;display:block}.logo b:first-child{height:100%}.logo b:nth-child(2){height:calc(var(--u,4px) * 3 + var(--u,4px) / 2)}.logo b:nth-child(3){height:calc(var(--u,4px) * 2 + var(--u,4px) / 4);background:var(--today)}.logo b:nth-child(4){height:var(--u,4px)}.logo b:nth-child(5){height:100%;width:max(1.5px, calc(var(--u,4px) / 4));margin-left:calc(var(--u,4px) / 4)}.wordmark{font-family:var(--display);letter-spacing:-.02em;font-weight:700;line-height:1}.lockup{align-items:center;gap:calc(var(--u,4px) * 1.2);display:inline-flex}.fav{background:var(--ground);border:1px solid var(--line-2);border-radius:6px;place-items:center;width:32px;height:32px;display:inline-grid}.fav .logo{color:var(--ink)}.cmdk-scrim{background:var(--scrim);padding:120px var(--s4) var(--s4);z-index:60;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.cmdk{background:var(--surface);border-radius:var(--r3);width:600px;max-width:100%;max-height:calc(100vh - 160px);box-shadow:var(--e3);text-align:left;flex-direction:column;display:flex;overflow:hidden}.cmdk .q{align-items:center;gap:var(--s3);padding:14px var(--s4);border-bottom:1px solid var(--line);flex:none;font-size:16px;display:flex}.cmdk .q .cell{--cw:12px;--ch:12px;background:var(--today);box-shadow:none}.cmdk .q input{min-width:0;color:var(--ink);font:inherit;caret-color:var(--today);background:0 0;border:0;flex:1;font-size:16px}.cmdk .q input:focus{outline:none}.cmdk .q input::placeholder{color:var(--ink-3)}.cmdk .q .caret{background:var(--today);flex:none;width:1.5px;height:20px}.cmdk .q kbd,.cmdk .it kbd,.cmdk .ft kbd{font-family:var(--mono);color:var(--ink-2);border:1px solid var(--line-2);border-radius:3px;flex:none;padding:1px 5px;font-size:10.5px}.cmdk .q kbd{margin-left:auto}.cmdk .results{min-height:0;padding-bottom:var(--s1);flex:1;overflow-y:auto}.cmdk .g{padding:6px var(--s2) var(--s1)}.cmdk .g .lbl{padding:var(--s2) var(--s2) var(--s1)}.cmdk .it{align-items:center;gap:var(--s3);padding:var(--s2);border-radius:var(--r1);cursor:pointer;color:var(--ink);font-size:14px;display:flex}.cmdk .it .mk{--u:4px}.cmdk .it .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cmdk .it .sub{color:var(--ink-2);font-size:12.5px;font-family:var(--mono);white-space:nowrap;margin-left:auto}.cmdk .it kbd{border-color:var(--line);margin-left:auto}.cmdk .it .sub+kbd{margin-left:0}.cmdk .it.on{background:var(--surface-2);box-shadow:inset 2px 0 0 var(--today)}.cmdk .none{padding:var(--s5) var(--s4);color:var(--ink-2);font-size:14px}.cmdk .ft{gap:var(--s4);padding:var(--s2) var(--s4);border-top:1px solid var(--line);font-family:var(--mono);color:var(--ink-2);flex-wrap:wrap;flex:none;font-size:10.5px;display:flex}.cmdk .ft kbd{margin-right:var(--s1)}@media (width<=560px){.cmdk-scrim{padding:var(--s7) var(--s3) var(--s3)}.cmdk .it .sub{display:none}}.field{gap:6px;min-width:0;display:grid}.field>label{font-size:13px;font-weight:600}.field .help{color:var(--ink-2);font-size:12.5px}.field .err{color:var(--err);font-size:12.5px}.inp{border:1.5px solid var(--line-2);border-radius:var(--r1);background:var(--ground);height:36px;color:var(--ink);align-items:center;gap:var(--s2);min-width:0;padding:0 12px;font-size:14px;display:flex}.inp>input,.inp>select{min-width:0;height:100%;color:inherit;font:inherit;background:0 0;border:0;flex:1;margin:0;padding:0;font-size:14px}.inp>input:focus,.inp>select:focus{outline:none}.inp>input::placeholder,.inp .ph{color:var(--ink-3)}.inp:focus-within,.inp.is-focus{border-color:var(--ink);outline:2px solid var(--today);outline-offset:2px}.inp.is-err{border-color:var(--err)}.inp .kbd,.inp kbd{font-family:var(--mono);color:var(--ink-2);border:1px solid var(--line-2);border-radius:3px;flex:none;margin-left:auto;padding:1px 5px;font-size:10.5px}.inp .caret{background:var(--today);flex:none;width:1.5px;height:16px}.inp.sel{cursor:pointer;justify-content:space-between;position:relative}.inp.sel>select{appearance:none;cursor:pointer;padding-right:16px}.inp.sel:after{content:"";border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);pointer-events:none;flex:none;width:7px;height:7px;transform:translateY(-2px)rotate(45deg)}.dtwrap{min-width:0;overflow-x:auto}.dt{border-collapse:collapse;width:100%;font-size:13px}.dt th{text-align:left;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);border-bottom:1px solid var(--line-2);white-space:nowrap;padding:0;font-size:10.5px;font-weight:500}.dt th>span,.dt th>button{width:100%;padding:var(--s2) 10px;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;text-align:inherit;background:0 0;border:0;display:block}.dt th>button{cursor:pointer}.dt th>button:hover{color:var(--ink)}.dt th.r>span,.dt th.r>button{text-align:right}.dt th.sort>button{color:var(--ink)}.dt th.sort>button:after{content:"";width:5px;height:5px;margin-left:var(--s2);border-right:1.5px solid var(--today);border-bottom:1.5px solid var(--today);display:inline-block;transform:translateY(-3px)rotate(45deg)}.dt th.sort.asc>button:after{transform:translateY(1px)rotate(225deg)}.dt td{border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle;padding:7px 10px}.dt td.m{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:12px}.dt td.r,.dt th.r{text-align:right}.dt tbody tr:hover td,.dt tr.hov td{background:var(--surface-2)}.dt tr.sel td{background:var(--surface-2);box-shadow:inset 2px 0 0 var(--today)}.dt tr.clickable{cursor:pointer}.dt tr:focus-visible{outline:2px solid var(--today);outline-offset:-2px}.dt .pct{align-items:center;gap:var(--s2);font-family:var(--mono);font-size:12px;display:inline-flex}.dt .pct i{background:var(--surface-2);flex:none;width:48px;height:5px;position:relative}.dt .pct i:after{content:"";width:var(--p);background:var(--ink);position:absolute;top:0;bottom:0;left:0}.dt .pct.hot i:after{background:var(--today)}.dt .cell{--cw:12px;--ch:12px;vertical-align:middle}.dt .chk .cell{--cw:14px;--ch:14px}.pager{font-family:var(--mono);color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:14px;padding:10px 0 0;font-size:11px;display:flex}.pager .pg{gap:3px;margin-left:auto;display:flex}.pager .pg button,.pager .pg span{border:1px solid var(--line);min-width:24px;height:24px;color:inherit;font:inherit;border-radius:var(--r0);background:0 0;place-items:center;padding:0 6px;display:grid}.pager .pg button{cursor:pointer}.pager .pg button:hover{background:var(--surface-2);color:var(--ink)}.pager .pg button[aria-current=page]{background:var(--ink);color:var(--ground);border-color:var(--ink)}.pager .pg button[disabled]{opacity:.4;cursor:not-allowed}.pager .inp{height:24px;padding:0 var(--s2);font-size:11px;font-family:var(--mono);border-width:1px;border-color:var(--line);background:0 0;gap:10px}.pager .inp>select{font-size:11px;font-family:var(--mono)}.empty{text-align:center;padding:var(--s6) var(--s4);border:1px dashed var(--line-2);border-radius:var(--r2);justify-items:center;gap:10px;display:grid}.empty .mk{--u:10px;color:var(--line-2)}.empty b{font-family:var(--display);font-size:18px;font-weight:600}.empty p{color:var(--ink-2);max-width:34ch;font-size:14px}.scrim{background:var(--scrim);padding:var(--s6) var(--s4);z-index:50;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.scrim.static{border-radius:var(--r2);z-index:auto;padding:var(--s6);position:static}.modal{background:var(--surface);border-radius:var(--r3);box-shadow:var(--e3);width:420px;max-width:100%;padding:var(--s5);margin-top:10vh}.scrim.static .modal{margin-top:0}.modal h3{font-family:var(--display);margin:0 0 6px;font-size:20px}.modal p{color:var(--ink-2);font-size:14px}.modal .acts{justify-content:flex-end;gap:var(--s2);margin-top:var(--s5);flex-wrap:wrap;display:flex}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r2);padding:var(--s4);min-width:0}.panel>.ph{justify-content:space-between;align-items:center;gap:var(--s3);margin-bottom:var(--s3);display:flex}.panel>.ph b{align-items:center;gap:10px;min-width:0;font-size:14px;font-weight:600;display:flex}.panel>.ph b .mk{--u:4px}.panel>.ph .lbl{white-space:nowrap;font-size:10.5px}.panel.raise{box-shadow:var(--e2);border-color:#0000}.pgrid{gap:var(--s3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.pgrid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.pgrid.four{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=860px){.pgrid,.pgrid.two,.pgrid.four{grid-template-columns:minmax(0,1fr)}}.sec-h{align-items:center;gap:var(--s3);margin:20px 0 var(--s3);flex-wrap:wrap;display:flex}.sec-h h2{font-family:var(--display);letter-spacing:-.01em;font-size:18px;font-weight:600}.sec-h .sub{color:var(--ink-2);font-size:12.5px}.ctrl{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.range{align-items:center;gap:var(--s2);border:1px solid var(--line-2);border-radius:var(--r1);height:30px;font-family:var(--mono);color:var(--ink);background:var(--surface);white-space:nowrap;padding:0 10px;font-size:11.5px;display:inline-flex}.range i{background:var(--today);flex:none;width:7px;height:7px}button.range{cursor:pointer;transition:background var(--t2) var(--ease)}button.range:hover{background:var(--surface-2)}.seg{background:var(--surface-2);border-radius:var(--r1);scrollbar-width:none;gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg button{appearance:none;cursor:pointer;color:var(--ink-2);white-space:nowrap;transition:background var(--t2) var(--ease);background:0 0;border:0;border-radius:3px;align-items:center;gap:7px;padding:5px 12px;font-size:13px;font-weight:600;display:inline-flex}.seg button:hover{color:var(--ink)}.seg button.on{background:var(--ground);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2)}.seg button .cell{--cw:9px;--ch:9px}.seg.sm button{padding:3px 9px;font-size:12px}.sp .lbl{align-items:center;gap:6px;display:flex}.sp .lbl .info{border:1px solid var(--line-2);width:12px;height:12px;font-size:8px;font-family:var(--sans);text-transform:none;letter-spacing:0;color:var(--ink-3);cursor:help;border-radius:50%;flex:none;place-items:center;display:grid}.sp big{font-family:var(--display);letter-spacing:-.03em;margin:10px 0 var(--s2);font-variant-numeric:tabular-nums;font-size:40px;font-weight:700;line-height:1;display:block}.sp big small{color:var(--ink-2);letter-spacing:0;font-size:15px;font-weight:500;font-family:var(--mono);margin-left:5px}.sp big.now{color:var(--today)}.sp .sub{color:var(--ink-2);font-size:12.5px}.sp .sub b{color:var(--ink);font-weight:600}.sp .spark{height:28px;margin-top:var(--s3);align-items:flex-end;gap:2px;display:flex}.sp .spark i{background:var(--line-2);flex:1}.sp .spark i.on{background:var(--ink)}.sp .spark i.now{background:var(--today)}.sp .spark i.o{box-shadow:inset 0 0 0 1px var(--line-2);background:0 0}.sp .cellrow{margin-top:var(--s3);flex-wrap:wrap;gap:3px;display:flex}.sp .cellrow .cell{--cw:10px;--ch:10px}.tabs{gap:var(--s5);border-bottom:1px solid var(--line);scrollbar-width:none;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs button{appearance:none;cursor:pointer;color:var(--ink-2);white-space:nowrap;transition:color var(--t2) var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 0;font-size:14px;font-weight:500}.tabs button:hover{color:var(--ink)}.tabs button.on{color:var(--ink);border-color:var(--ink)}.tabs button .cnt{font-family:var(--mono);color:var(--ink-3);margin-left:6px;font-size:11px}.tabs button.on .cnt{color:var(--ink-2)}.tip{background:var(--ink);color:var(--ground);padding:5px var(--s2);border-radius:var(--r1);white-space:nowrap;font-size:12.5px;display:inline-block;position:relative}.tip:after{content:"";width:var(--s2);height:var(--s2);background:var(--ink);position:absolute;bottom:-4px;left:14px;transform:rotate(45deg)}.tip.r:after{top:calc(50% - 4px);bottom:auto;left:-4px}.tip kbd{font-family:var(--mono);background:color-mix(in srgb, var(--ground) 25%, transparent);padding:1px var(--s1);border-radius:3px;margin-left:6px;font-size:10.5px}.tipwrap{display:inline-flex;position:relative}.tipwrap>.tip{z-index:3;opacity:0;pointer-events:none;transition:opacity var(--t2) var(--ease);box-shadow:var(--e2);position:absolute}.tipwrap[data-side=right]>.tip{left:calc(100% + var(--s2));top:50%;transform:translateY(-50%)}.tipwrap[data-side=top]>.tip{bottom:calc(100% + var(--s2));left:0}.tipwrap:hover>.tip,.tipwrap:focus-within>.tip,.tipwrap.is-open>.tip{opacity:1}.toast{align-items:center;gap:var(--s3);background:var(--ink);color:var(--ground);padding:10px var(--s3) 10px 14px;border-radius:var(--r2);box-shadow:var(--e2);max-width:100%;font-size:14px;display:inline-flex}.toast .cell{--cw:12px;--ch:12px;background:var(--today);box-shadow:none}.toast .cell.ok{background:var(--ok)}.toast button.act{appearance:none;color:inherit;font:inherit;margin-left:var(--s2);opacity:.8;cursor:pointer;background:0 0;border:0;font-weight:600;text-decoration:none}.toast button.act:hover{opacity:1}.toast button.x{appearance:none;color:inherit;margin-left:var(--s1);opacity:.5;font-family:var(--mono);cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:12px;line-height:1}.toast button.x:hover{opacity:1}.shell{grid-template-columns:var(--rail) minmax(0, 1fr);background:var(--ground);height:100dvh;color:var(--ink);font-size:14px;display:grid}.shell .main{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.shell .content{padding:20px var(--s5);gap:var(--s3);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden auto}.ph-head{align-items:flex-end;gap:var(--s5);flex-wrap:wrap;display:flex}.ph-head h1{font-family:var(--display);letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:1}.ph-head .sub{color:var(--ink-2);margin-top:6px;font-size:13px}@media (width<=860px){.shell{grid-template-columns:minmax(0,1fr)}.shell>.rail{display:none}.shell .content{padding:var(--s4) var(--s3)}.ph-head{gap:var(--s3)}.ph-head h1{font-size:24px}.ctrl{margin-left:0}}.rail{background:var(--surface);border-right:1px solid var(--line);padding:var(--s3) 0 10px;scrollbar-width:none;flex-direction:column;align-items:center;gap:2px;min-height:0;display:flex;overflow:hidden auto}.rail::-webkit-scrollbar{display:none}.rail .lg{--u:6px;flex:none;margin-bottom:14px}.rail .ri{border-radius:var(--r1);width:36px;height:36px;color:var(--ink-2);cursor:pointer;transition:background var(--t2) var(--ease);background:0 0;border:0;flex:none;place-items:center;padding:0;text-decoration:none;display:grid;position:relative}.rail .ri .mk{--u:4.5px;color:inherit}.rail .ri:hover,.rail .ri.on{background:var(--surface-2);color:var(--ink)}.rail .ri.on:before{content:"";background:var(--today);width:2px;position:absolute;top:10px;bottom:10px;left:-8px}.rail .ri .dot{background:var(--today);width:6px;height:6px;position:absolute;top:6px;right:6px}.rail hr{border:0;border-top:1px solid var(--line-2);flex:none;width:20px;margin:6px 0}.rail .bot{padding-top:var(--s2);flex-direction:column;align-items:center;gap:2px;margin-top:auto;display:flex}.rail .av{background:var(--ink);width:28px;height:28px;color:var(--ground);font-family:var(--mono);cursor:pointer;border-radius:var(--r0);border:0;flex:none;place-items:center;margin-top:6px;padding:0;font-size:10px;font-weight:500;text-decoration:none;display:grid}.rail-tip{left:var(--tip-left);top:var(--tip-top);z-index:40;box-shadow:var(--e2);pointer-events:none;position:fixed;transform:translateY(-50%)}.ptab{border-top:1px solid var(--line);padding:10px var(--s2) calc(18px + env(safe-area-inset-bottom,0px));background:var(--surface);flex:none;grid-template-columns:repeat(5,minmax(0,1fr));display:none}.ptab a,.ptab button{border-radius:var(--r1);cursor:pointer;min-width:0;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);transition:color var(--t2) var(--ease);background:0 0;border:0;align-content:start;justify-items:center;gap:6px;padding:6px 2px;font-size:8.5px;font-weight:500;line-height:1;text-decoration:none;display:grid}.ptab .mk{--u:4.5px;color:inherit}.ptab .t{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.ptab .on{color:var(--ink)}.ptab .slot{justify-items:center;display:grid;position:relative}.ptab .dot{background:var(--today);width:5px;height:5px;position:absolute;top:2px;right:calc(50% - 14px)}@media (width<=860px){.ptab{display:grid}}.topbar{height:var(--topbar);border-bottom:1px solid var(--line);background:var(--surface);flex:none;align-items:center;gap:14px;min-width:0;padding:0 20px;display:flex}.topbar .crumb{align-items:center;gap:var(--s2);color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13.5px;display:flex;overflow:hidden}.topbar .crumb b{color:var(--ink);font-weight:600}.topbar .right{align-items:center;gap:14px;min-width:0;margin-left:auto;display:flex}.topbar .days{font-family:var(--mono);color:var(--ink-2);gap:var(--s2);white-space:nowrap;align-items:center;font-size:11.5px;display:flex}.topbar .days b{color:var(--today);font-weight:500}.topbar .search{width:300px;height:32px;padding:0 var(--s2) 0 var(--s3);border:1px solid var(--line-2);border-radius:var(--r1);background:var(--ground);color:var(--ink-3);cursor:text;text-align:left;transition:border-color var(--t2) var(--ease);flex:none;align-items:center;gap:10px;font-size:13.5px;display:flex}.topbar .search:hover{border-color:var(--ink-3)}.topbar .search .mk{--u:3.5px;color:var(--ink-3)}.topbar .search kbd{font-family:var(--mono);color:var(--ink-2);border:1px solid var(--line-2);border-radius:3px;margin-left:auto;padding:1px 5px;font-size:10.5px}@media (width<=860px){.topbar{padding:0 var(--s3);gap:10px}.topbar .crumb,.topbar .days{display:none}.topbar .search{justify-content:center;width:32px;padding:0}.topbar .search .txt,.topbar .search kbd{display:none}}.t-light .topbar .days b,:root[data-theme=light] .topbar .days b{color:var(--ink);font-weight:600}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .topbar .days b{color:var(--ink);font-weight:600}}.rm-stats{flex:none}.rm-body{gap:var(--s3);flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.rm-body.with-aside{grid-template-columns:minmax(0,1fr) 340px}.rm-panel{flex-direction:column;min-height:0;display:flex;overflow:hidden}.rm-panel>.ph{flex:none}.rm-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow:auto}.rm-next{flex-direction:column;min-height:0;display:flex;overflow:hidden}.rm-short{display:none}.plot{--cu:16px;--cb:14px;gap:var(--s1);font-family:var(--sans);grid-template-columns:minmax(0,1fr);min-width:322px;display:grid}.plot.dense{--cu:6px;--cb:14px}.plot.dense .c{padding:3px 5px}.plot.dense .c .dn{font-size:10px}.plot.dense .c .dn small{font-size:9px}.plot.dense .c .dl{white-space:nowrap;text-overflow:ellipsis;padding-right:46px;font-size:10px;line-height:1.3;display:block}.plot.dense .c .ld{bottom:4px;right:4px}.plot .dow{gap:var(--s1);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:2px;font-size:10px;display:grid}.plot .dow span{padding-left:6px}.plot .wk{gap:var(--s1);grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;display:grid}.plot .c{height:calc(var(--cb) + var(--l,1) * var(--cu));background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line-2);border-radius:var(--r0);color:var(--ink);text-align:left;cursor:pointer;transition:background var(--t1) steps(1, end);flex-direction:column;padding:6px;font-size:11.5px;line-height:1.25;display:flex;position:relative;overflow:hidden}.plot[aria-readonly=true] .c{cursor:default}.plot .c:focus-visible{z-index:2}.plot .c:hover{background:var(--surface-2)}.plot .c .dn{font-family:var(--mono);letter-spacing:.02em;justify-content:space-between;align-items:baseline;gap:4px;font-size:11px;font-weight:500;display:flex}.plot .c .dn .dnl{align-items:center;min-width:0;display:inline-flex}.plot .c .dn small{color:var(--ink-3);letter-spacing:.06em;font-size:9.5px;font-weight:400}.plot .c .dl{color:var(--ink-2);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-top:auto;font-size:11px;display:-webkit-box;overflow:hidden}.plot .c .ld{gap:2px;display:flex;position:absolute;bottom:6px;right:6px}.plot .c .ld i{opacity:.3;background:currentColor;width:4px;height:4px}.plot .c .ld i.on{opacity:1}.plot .c.done,.plot .c.given{background:var(--ink);color:var(--ground);box-shadow:none}.plot .c.done:hover,.plot .c.given:hover{background:var(--ink)}.plot .c.done .dl,.plot .c.given .dl{color:var(--ground);opacity:.6}.plot .c.done .dn small,.plot .c.given .dn small{color:var(--ground);opacity:.5}.plot .c .hole{background:var(--surface);flex:none;align-self:center;width:6px;height:6px;margin-left:6px}.plot .c.today{background:var(--today);color:var(--on-today);box-shadow:none}.plot .c.today:hover{background:var(--today)}.plot .c.today .dl,.plot .c.today .dn small{color:var(--on-today);opacity:.75}.plot .c.today .ld i{opacity:.45}.plot .c.today .ld i.on{opacity:1}.plot .c.missed{background:repeating-linear-gradient(135deg, var(--surface) 0 4px, var(--hatch) 4px 5.5px);box-shadow:inset 0 0 0 1.5px var(--line-2)}.plot .c.missed .dl{color:var(--ink-2)}.plot .c.rest{box-shadow:none;outline:1px dotted var(--line-2);outline-offset:-1px;color:var(--ink-3);background:0 0}.plot .c.rest .dl{color:var(--ink-3)}.plot .c.next{box-shadow:inset 0 0 0 2px var(--ink)}.plot .xl-row{grid-column:1/-1}.plot .xl{align-items:center;gap:10px;height:22px;margin:2px 0;display:flex}.plot .xl:before,.plot .xl:after{content:"";background:var(--ink);flex:1;height:2px}.plot .xl.sec:before,.plot .xl.sec:after{border-top:1.5px dashed var(--ink-3);background:0 0;height:0}.plot .xl b{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:10.5px;font-weight:500}.plot .xl.sec b{color:var(--ink-2)}.plot .xl b em{color:var(--ink-2);margin-left:6px;font-style:normal}.plot.compact{--cu:10px;--cb:10px;gap:3px;min-width:260px}.plot.compact .wk{gap:3px}.plot.compact .c{padding:3px 4px;font-size:9px}.plot.compact .c .dn{font-size:9px}.plot.compact .c .dl,.plot.compact .c .dn small,.plot.compact .c .ld{display:none}.plot.compact .xl{height:14px}.plot.compact .xl b{font-size:8.5px}.plot.mini{--cu:2px;--cb:4px;gap:2px;min-width:0}.plot.mini .wk{gap:2px}.plot.mini .c{padding:0;font-size:0}.plot.mini .c *{display:none}.plot.mini .c.given:after{content:"";background:var(--surface);width:3px;height:3px;display:block;position:absolute;top:2px;right:2px}.plot.mini .xl{height:6px;margin:0}.plot.mini .xl b{display:none}.plot.mini .xl:before,.plot.mini .xl:after{height:1.5px}.plot.phone-p{--cu:6px;--cb:18px;gap:var(--s1);min-width:0}.plot.phone-p .c{padding:4px 5px;font-size:9px}.plot.phone-p .c .dn{font-size:10px}.plot.phone-p .c .dn small,.plot.phone-p .c .dl{display:none}.plot.phone-p .c .ld{gap:1.5px;bottom:4px;right:4px}.plot.phone-p .c .ld i{width:3px;height:3px}.plot.phone-p .xl{height:18px}.plot.phone-p .xl b,.plot.phone-p .dow{font-size:9px}.plot.phone-p .dow span{padding-left:4px}.plot.dl .wk{align-items:start}.plot.dl .day{min-height:34px;box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;flex-direction:column;gap:3px;padding:3px;display:flex}.plot.dl .day:hover{background:var(--surface)}.plot.dl .day.today{box-shadow:inset 0 0 0 2px var(--today)}.plot.dl .day.rest{box-shadow:none;outline:1px dotted var(--line-2);outline-offset:-1px}.plot.dl .day .dh{font-family:var(--mono);color:var(--ink-3);justify-content:space-between;gap:4px;padding:2px 3px 3px;font-size:10px;display:flex}.plot.dl .day.today .dh{color:var(--today);font-weight:500}.plot.dl .day .t{background:var(--surface);height:22px;box-shadow:inset 0 0 0 1.5px var(--line-2);border-radius:var(--r0);white-space:nowrap;text-overflow:ellipsis;color:var(--ink);flex:none;padding:0 6px;font-size:10.5px;line-height:22px;overflow:hidden}.plot.dl .day .t.done,.plot.dl .day .t.given{background:var(--ink);color:var(--ground);box-shadow:none;position:relative}.plot.dl .day .t.given:after{content:"";background:var(--surface);width:5px;height:5px;position:absolute;top:8px;right:5px}.plot.dl .day .t.late{background:repeating-linear-gradient(135deg, var(--surface) 0 3px, var(--today) 3px 4.5px);box-shadow:inset 0 0 0 1.5px var(--today);color:var(--ink);font-weight:600}.plot.dl .day .t.late span{background:var(--surface);padding:0 3px}.plot.dl .day .t.now{box-shadow:inset 0 0 0 1.5px var(--today)}.plot-turn{animation:rm-turn var(--t2) steps(2, end)}@keyframes rm-turn{0%{opacity:.25}to{opacity:1}}@media (prefers-reduced-motion:reduce){.plot-turn{animation:none}}.cell.due-today{box-shadow:inset 0 0 0 1.5px var(--today)}.rm-legend{justify-content:flex-end;gap:6px var(--s4);font-family:var(--sans);letter-spacing:0;text-transform:none;color:var(--ink-2);flex-wrap:wrap;align-items:center;font-size:12px;display:flex}.rm-legend span{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.rm-legend .cell{--cw:13px;--ch:13px}.rm-legend .rule{background:var(--ink);width:16px;height:2px;display:inline-block}.rm-legend .rule.sec{border-top:1.5px dashed var(--ink-3);background:0 0;height:0}.rm-due{align-content:start;gap:0;min-height:0;display:grid;overflow:auto}.rm-due .r{padding:var(--s2) 0;border:0;border-bottom:1px solid var(--line);text-align:left;color:inherit;cursor:pointer;background:0 0;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;font-family:inherit;font-size:13px;display:grid}.rm-due .r:hover{background:var(--surface-2)}.rm-due .r .cell{--cw:14px;--ch:14px}.rm-due-body{min-width:0}.rm-due .r b{text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.rm-due .r small{font-family:var(--mono);color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10.5px;display:block;overflow:hidden}.rm-due .r .when{color:var(--ink-2);white-space:nowrap;font-size:10.5px}.rm-due .r.late b{color:var(--today)}.ph-head h1[tabindex]:focus,.ph-head h1[tabindex]:focus-visible{outline:none}.rm-day{gap:var(--s4);flex:1;grid-template-columns:minmax(0,1fr) 400px;min-height:0;display:grid}.rm-tasks{gap:var(--s2);min-height:0;padding-right:var(--s1);align-content:start;display:grid;overflow:auto}.rm-task{padding:14px var(--s4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r2);grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:14px;display:grid}.rm-task.has-plug{border-color:var(--ink)}.rm-task>.chk{margin-top:1px}.rm-task>.chk .cell{--cw:22px;--ch:22px}.rm-task>.chk .cell.done:after{width:5px;height:10px;top:3px;left:7px}.rm-task-body{min-width:0}.rm-task b{font-size:15px;font-weight:600;display:block}.rm-task .why{color:var(--ink-2);margin-top:3px;font-size:13px}.rm-task .meta{color:var(--ink-2);white-space:nowrap;font-size:11px}.rm-task .plug{border-top:1px solid var(--line);grid-column:2/-1;min-width:0;margin-top:10px;padding-top:10px}.rm-task .plug .dt{font-size:12.5px}.rm-task .plug .dt td,.rm-task .plug .dt th{padding:6px var(--s2)}.rm-task .plug .chk .cell{--cw:14px;--ch:14px}.rm-task .plug .chk .cell.done:after{border-width:1.5px;width:4px;height:7px;top:1px;left:4px}.rm-task .plug-foot{gap:var(--s2);flex-wrap:wrap;align-items:center;margin-top:10px;display:flex}.rm-task .plug-foot .count{color:var(--ink-2);margin-left:auto;font-size:10.5px}.rm-aside{gap:var(--s3);flex-direction:column;min-height:0;display:flex;overflow:auto}.rm-author{color:var(--ink-2);font-size:13.5px;line-height:1.55}.rm-weekstrip{display:none}@media (width<=860px){.rm-stats.pgrid{gap:var(--s2);grid-template-columns:repeat(3,minmax(0,1fr))}.rm-stats .panel{padding:10px}.rm-stats .sp big{margin:6px 0 4px;font-size:26px}.rm-stats .sp big small{font-size:12px}.rm-stats .sp .sub{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:11px;display:-webkit-box;overflow:hidden}.rm-long{display:none}.rm-short{display:inline}.rm-legend{display:none}.rm-panel{padding:var(--s2);overflow:visible}.rm-body{flex:none}.rm-scroll{flex:none;overflow:auto hidden}.plot{min-width:0}.rm-body.with-aside{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.rm-next{max-height:40vh}.rm-day{gap:var(--s3);flex:none;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr);overflow:visible}.rm-tasks,.rm-aside{overflow:visible}.rm-task{padding:var(--s3);grid-template-columns:22px minmax(0,1fr)}.rm-task .meta{grid-column:2;margin-top:6px}.rm-task .plug{grid-column:1/-1}.rm-weekstrip{flex:none;display:block}.plot.dl .day{gap:2px;min-height:26px;padding:2px}.plot.dl .day .dh{padding:1px 2px 2px;font-size:9px}.plot.dl .day .t{text-indent:-999em;height:10px;padding:0;font-size:0;line-height:0}.plot.dl .day .t.given:after{width:4px;height:4px;top:2.5px;right:2px}}.ob{background:var(--ground);min-height:100dvh;color:var(--ink);flex-direction:column;display:flex}.ob-head{align-items:center;gap:var(--s4);height:var(--topbar);padding:0 var(--s5);border-bottom:1px solid var(--line);flex:none;display:flex}.ob-rail{align-items:center;gap:var(--s1);margin:0 auto 0 0;padding:0;list-style:none;display:flex}.ob-rail li{display:flex}.ob-count{font-variant-numeric:tabular-nums}.ob-body{gap:var(--s8);width:100%;max-width:1200px;padding:var(--s7) var(--s5) var(--s8);flex:1;grid-template-columns:minmax(0,7fr) minmax(0,6fr);align-content:center;align-items:center;margin:0 auto;display:grid}.ob-ask{align-items:flex-start;gap:var(--s3);flex-direction:column;min-width:0;display:flex}.ob-sentence{margin:var(--s2) 0 0;font-family:var(--display);letter-spacing:-.03em;text-wrap:balance;max-width:18ch;font-size:clamp(28px,1rem + 2.4vw,52px);font-weight:700;line-height:1.04}.ob-sentence:focus-visible{outline:2px solid var(--today);outline-offset:6px}.ob-sentence em{color:var(--ink-3);box-shadow:inset 0 -2px 0 0 var(--line-2);transition:color var(--t2) var(--ease);font-style:normal}.ob-sentence em[data-filled]{color:var(--today);box-shadow:inset 0 -2px 0 0 var(--today)}.ob-payoff em{font-variant-numeric:tabular-nums}.ob-aside{max-width:46ch;color:var(--ink-2);font-size:14px;line-height:1.5}.ob-aside strong{color:var(--ink);font-weight:600}.ob-err{color:var(--err);font-size:14px}.ob-hint{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-size:11px;line-height:1.2}.ob-options{gap:var(--s2);margin-top:var(--s3);flex-wrap:wrap;width:100%;display:flex}.ob-opt{align-items:center;gap:var(--s2);padding:var(--s3) var(--s4);background:var(--surface);color:var(--ink);border-radius:var(--r0);box-shadow:inset 0 0 0 1.5px var(--line-2);text-align:left;cursor:pointer;transition:background var(--t2) var(--ease), box-shadow var(--t2) var(--ease), color var(--t2) var(--ease);border:0;font-size:15px;font-weight:500;display:inline-flex}.ob-opt:hover{background:var(--surface-2);box-shadow:inset 0 0 0 1.5px var(--ink-3)}.ob-opt:active{transform:translateY(1px)}.ob-opt-cell{background:var(--surface);width:14px;height:14px;box-shadow:inset 0 0 0 1.5px var(--line-2);border-radius:var(--r0);transition:background var(--t1) steps(1, end);flex:none}.ob-opt[aria-pressed=true]{background:var(--ink);color:var(--ground);box-shadow:none}.ob-opt[aria-pressed=true] .ob-opt-cell{background:var(--today);box-shadow:none}.ob-nav{gap:var(--s2);margin-top:var(--s5);display:flex}.ob-side{gap:var(--s5);min-width:0;padding:var(--s4);border:1px solid var(--line);border-radius:var(--r2);background:var(--surface);flex-direction:column;display:flex}.pp{min-width:0;margin:0}.pp-cap{justify-content:space-between;gap:var(--s3);margin-bottom:var(--s3);display:flex}.pp-count{color:var(--ink-3)}.pp-plot{min-height:var(--pp-tall);border-bottom:1px solid var(--line-2);align-items:flex-end;gap:2px;padding-bottom:2px;display:flex}.pp-col{flex-direction:column;flex:1 1 0;justify-content:flex-end;gap:0;min-width:3px;display:flex}.pp-exam{background:var(--ink);flex:none;align-self:stretch;width:2px}.ob-legend{align-items:center;gap:var(--s2);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-size:10px;line-height:1;display:flex}.ob-key{border-radius:var(--r0);flex:none;width:10px;height:10px}.ob-key[data-k=todo]{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line-2)}.ob-key[data-k=given]{background:var(--ink);position:relative}.ob-key[data-k=given]:after{content:"";background:var(--surface);width:4px;height:4px;margin:auto;position:absolute;inset:0}.ob-legend .ob-key:not(:first-child){margin-left:var(--s3)}@media (width<=860px){.ob-head{padding:0 var(--s4);gap:var(--s3)}.ob-body{gap:var(--s5);padding:var(--s5) var(--s4) var(--s7);grid-template-columns:minmax(0,1fr);align-content:start}.ob-sentence{max-width:none}.ob-options{flex-direction:column;align-items:stretch}.ob-opt,.ob-nav{width:100%}.ob-nav>*{flex:1}.ob-side{padding:var(--s3);order:-1}}@media (prefers-reduced-motion:reduce){.ob-opt:active{transform:none}}.st{--gut:var(--s4);--col:1360px;background:var(--ground);color:var(--ink);min-height:100%;overflow-x:hidden}.st-nav{align-items:center;gap:var(--s5);padding-block:var(--s4);max-width:var(--col);padding-inline:var(--gut);margin-inline:auto;display:flex}.st-brand{flex:none;text-decoration:none;display:inline-flex}.st-links{gap:var(--s5);color:var(--ink-2);font-size:14px;font-weight:500;display:none}.st-links a{padding-block:var(--s1);text-decoration:none}.st-links a:hover{color:var(--ink)}.st-nav-do{gap:var(--s2);flex:none;align-items:center;margin-left:auto;display:flex}.st-hero{padding-bottom:var(--s7);position:relative}.st-hero:before{content:"";pointer-events:none;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.7;-webkit-mask-image:linear-gradient(180deg, transparent 0, var(--ink) 25%, transparent 92%);mask-image:linear-gradient(180deg, transparent 0, var(--ink) 25%, transparent 92%);-webkit-mask-image:linear-gradient(180deg, transparent 0, var(--ink) 25%, transparent 92%);background-size:48px 48px;position:absolute;inset:0}.st-hero-grid{gap:var(--s6);max-width:var(--col);padding-inline:var(--gut);padding-top:var(--s5);grid-template-areas:"copy""plot""proof";margin-inline:auto;display:grid;position:relative}.st-hero-copy{grid-area:copy}.st-hero h1{font-family:var(--display);letter-spacing:-.04em;max-width:10ch;font-size:clamp(42px,8.6vw,92px);font-weight:700;line-height:.92}.st-hero h1 em{color:var(--today);font-style:normal}.st-lede{color:var(--ink-2);max-width:46ch;margin-top:var(--s4);font-size:17px;line-height:1.5}.st-do{gap:var(--s3);margin-top:var(--s5);flex-wrap:wrap;align-items:center;display:flex}.st-do-note{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-size:11px}.st-hero-plot{grid-area:plot;min-width:0}.st-hero-plot .plot.compact{--cu:9px;--cb:12px}.st-cap{margin-top:var(--s3);color:var(--ink-2);letter-spacing:.03em;font-size:11.5px;line-height:1.5}.st-legend{gap:var(--s2) var(--s4);margin:var(--s4) 0 0;color:var(--ink-2);flex-wrap:wrap;align-items:center;padding:0;font-size:12px;list-style:none;display:flex}.st-legend li{align-items:center;gap:var(--s2);display:inline-flex}.st-legend .cell{--cw:12px;--ch:12px}.st-rule{background:var(--ink);width:18px;height:2px;display:inline-block}.st-proof{gap:var(--s4);grid-area:proof;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.st-proof dt{font-family:var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(28px,6vw,40px);font-weight:700;line-height:1}.st-proof dd{margin:var(--s2) 0 0;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-size:10px;line-height:1.35}.st-ticker{border-top:1px solid var(--line);margin-top:var(--s7);background:var(--ground);display:grid;position:relative}.st-ticker p{padding:var(--s3) var(--gut);color:var(--ink-2);border-bottom:1px solid var(--line);font-size:13px}.st-ticker p b{color:var(--ink);font-weight:600}.st-sec{max-width:var(--col);padding:var(--s8) var(--gut) 0;margin-inline:auto}.st-sec h2{font-family:var(--display);letter-spacing:-.03em;max-width:22ch;margin-top:var(--s3);font-size:clamp(26px,3.6vw,42px);font-weight:700;line-height:1.05}.st-sec .st-lede{margin-top:var(--s4);max-width:62ch}.st-modes{gap:var(--s3);margin-top:var(--s6);display:grid}.st-mode{flex-direction:column;display:flex}.st-mode-sub{color:var(--ink-2);font-size:13.5px;line-height:1.5}.st-mode-head{margin-top:var(--s4);padding-bottom:var(--s2);border-bottom:1px solid var(--line);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-size:10.5px}.st-rows{margin:0;padding:0;list-style:none}.st-rows li{gap:var(--s3);padding:var(--s3) 0;border-bottom:1px solid var(--line);grid-template-columns:18px minmax(0,1fr) auto;align-items:start;display:grid}.st-row-body b{font-size:13.5px;font-weight:600;line-height:1.35;display:block}.st-row-body small{color:var(--ink-2);margin-top:2px;font-size:12px;line-height:1.4;display:block}.st-row-end{color:var(--ink-2);white-space:nowrap;padding-top:1px;font-size:11px}.st-rows li.late{background:var(--surface-2)}.st-mode-foot{padding-top:var(--s4);color:var(--ink-2);margin-top:auto;font-size:12.5px;line-height:1.5}.st-stats{margin-top:var(--s6)}.st-table{margin-top:var(--s3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r2);padding:var(--s4);min-width:0}.st-note{margin-top:var(--s3);color:var(--ink-2);font-size:12.5px}.st-short{display:none}@media (width<=700px){.st-table{padding:var(--s3)}.st-long{display:none}.st-short{display:inline}.st-table .dt th:nth-child(2),.st-table .dt td:nth-child(2),.st-table .dt th:nth-child(4),.st-table .dt td:nth-child(4){display:none}}.st-author{gap:var(--s4);margin-top:var(--s6);display:grid}.st-author-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r2);padding:var(--s5);align-self:start}.st-author-score{font-family:var(--display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:80px;font-weight:700;line-height:.85;display:block}.st-author-card .lbl{margin-top:var(--s3)}.st-author-name{font-family:var(--display);letter-spacing:-.01em;margin-top:var(--s4);font-size:22px;font-weight:600}.st-author-meta{color:var(--ink-2);margin-top:var(--s2);font-size:11.5px;line-height:1.6}.st-author-card .lockup{margin-top:var(--s5);opacity:.6}.st-author-words{gap:var(--s4);align-content:start;display:grid}.st-author-words p{max-width:54ch;font-size:17px;line-height:1.55}.st-placeholder{color:var(--ink-2);border-left:2px solid var(--today);padding-left:var(--s4);font-size:13px;line-height:1.55}.st-placeholder b{color:var(--ink)}.st-plain{gap:var(--s4);margin-top:var(--s5);max-width:68ch;display:grid}.st-plain p{color:var(--ink-2);font-size:16px;line-height:1.6}.st-close{max-width:var(--col);margin:var(--s9) auto 0;padding:var(--s7) var(--gut);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.st-close h2{font-family:var(--display);letter-spacing:-.03em;max-width:18ch;font-size:clamp(26px,4vw,44px);font-weight:700;line-height:1.02}.st-close .st-do{margin-top:var(--s5)}.st-foot{max-width:var(--col);padding:var(--s7) var(--gut) var(--s8);margin-inline:auto}.st-foot-top{gap:var(--s4);padding-bottom:var(--s5);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;display:flex}.st-fine{gap:var(--s3);margin-top:var(--s5);max-width:88ch;display:grid}.st-fine p{color:var(--ink-2);font-size:12px;line-height:1.6}.st-fine a{color:var(--ink-2)}@media (width>=861px){.st{--gut:var(--s6)}.st-links{display:flex}.st-hero-grid{align-content:start;gap:var(--s7) var(--s7);padding-top:var(--s6);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:"copy plot""proof plot"}.st-lede{font-size:19px}.st-proof{align-self:end;gap:var(--s6)}.st-ticker{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}.st-ticker p{padding:var(--s4) var(--s5);border-bottom:0;border-right:1px solid var(--line)}.st-ticker p:first-child{padding-left:var(--gut)}.st-ticker p:last-child{border-right:0}.st-modes{grid-template-columns:repeat(2,minmax(0,1fr))}.st-author{gap:var(--s7);grid-template-columns:260px minmax(0,1fr)}}@media (width>=1200px){.st{--gut:var(--s7)}}.kitchen{background:var(--ground);min-height:100dvh;color:var(--ink)}.kitchen-top{z-index:30;align-items:center;gap:var(--s4);padding:var(--s3) var(--s5);background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex;position:sticky;top:0}.kitchen-top .lockup{flex:none}.kitchen-top .lbl{margin-right:auto}.kitchen-panes{gap:var(--s5);padding:var(--s5);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.kitchen-pane{border:1px solid var(--line);border-radius:var(--r2);padding:var(--s5);background:var(--ground);color:var(--ink);min-width:0}.kitchen-pane>h2{font-family:var(--display);letter-spacing:-.02em;justify-content:space-between;align-items:baseline;gap:var(--s3);font-size:20px;font-weight:700;display:flex}.kitchen-pane>h2 span{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-size:10.5px;font-weight:500}.kitchen-shell{padding:0 var(--s5) var(--s5)}.kitchen-shell>div{border:1px solid var(--line);border-radius:var(--r2);height:640px;overflow:hidden}.kitchen-shell .shell{height:100%}.sheet{margin-top:var(--s5);gap:0;display:grid}.sheet .row{gap:var(--s4);padding-block:var(--s4);border-top:1px solid var(--line);grid-template-columns:130px minmax(0,1fr);align-items:start;display:grid}.sheet .row>.lbl{padding-top:6px}.sheet .demo{gap:var(--s3);flex-wrap:wrap;align-items:center;min-width:0;display:flex}.sheet .demo.col{flex-flow:column;align-items:stretch}.sheet .demo.col>*{min-width:0;max-width:100%}.sheet .demo>small{font-family:var(--mono);color:var(--ink-3);width:100%;font-size:10.5px;line-height:1.4}.sheet .demo .w{width:240px;max-width:100%}.sheet .demo .w2{width:100%;min-width:0}.marksgrid{gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));width:100%;display:grid}.mkcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r2);padding:18px var(--s4) 14px;align-content:start;justify-items:start;gap:14px;display:grid}.mkcard .mk{--u:11px}.mkcard b{font-size:13.5px;font-weight:600;display:block}.mkcard .map{font-family:var(--mono);color:var(--ink-2);white-space:pre;margin-top:3px;font-size:10.5px;line-height:1.3;display:block}.sizes{gap:var(--s5);flex-wrap:wrap;align-items:flex-end;display:flex}.sizes>div{gap:var(--s2);justify-items:center;display:grid}.sizes small{font-family:var(--mono);color:var(--ink-2);font-size:10px}.alphabet{border-collapse:collapse;width:100%;font-size:13px}.alphabet th{text-align:left;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);padding:var(--s2) 10px;border-bottom:1px solid var(--line-2);font-size:10.5px;font-weight:500}.alphabet td{border-bottom:1px solid var(--line);vertical-align:middle;padding:9px 10px}.alphabet td:first-child{font-family:var(--mono);font-size:12px}.alphabet .cell{--cw:18px;--ch:18px}.legend{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:10px 20px;font-size:12px;display:flex}.legend span{align-items:center;gap:var(--s2);display:inline-flex}.legend .cell{--cw:13px;--ch:13px}@media (width<=1100px){.kitchen-panes{grid-template-columns:minmax(0,1fr)}}@media (width<=700px){.kitchen-top,.kitchen-panes,.kitchen-shell{padding-left:var(--s3);padding-right:var(--s3)}.kitchen-pane{padding:var(--s4)}.sheet .row{gap:var(--s2);grid-template-columns:minmax(0,1fr)}.kitchen-shell>div{height:560px}}
