@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/93a6e477e1480c92-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c7e0cf6c760983e7-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/9d5a263311222317-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/93a6e477e1480c92-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c7e0cf6c760983e7-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/9d5a263311222317-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Bricolage Grotesque Fallback;src:local("Arial");ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.00%;size-adjust:105.43%}.__className_5ab089{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.__variable_5ab089{--font-display:"Bricolage Grotesque","Bricolage Grotesque Fallback"}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_d8a936{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.__variable_d8a936{--font-body:"IBM Plex Sans","IBM Plex Sans Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_46fe82{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_46fe82{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{color-scheme:light;--ground:#f2f3ef;--surface:#ffffff;--sunk:#e9ebe5;--ink:#1a1e1c;--muted:#646b67;--faint:#9aa09b;--line:#d9dcd5;--accent:#2b55c8;--accent-ink:#ffffff;--accent-soft:#e3e9f8;--doing:#2b55c8;--doing-bg:#e3e9f8;--waiting:#9a6a00;--waiting-bg:#fbf0d6;--done:#2e7a4b;--done-bg:#dff0e4;--todo:#4e5551;--todo-bg:#e9ebe5;--danger:#b3261e;--danger-bg:#fbe4e2;--p1:#b3261e;--p2:#646b67;--p3:#9aa09b;--shadow:0 1px 2px rgba(20,30,25,.06),0 4px 16px rgba(20,30,25,.05);--display:var(--font-display),ui-sans-serif,system-ui,sans-serif;--body:var(--font-body),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--mono:var(--font-mono),ui-monospace,"Cascadia Mono",Consolas,monospace}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--ground:#121514;--surface:#1a1e1c;--sunk:#232826;--ink:#e4e8e5;--muted:#9ba39e;--faint:#6a726d;--line:#2d3330;--accent:#7d9bf0;--accent-ink:#0e1426;--accent-soft:#1e2742;--doing:#8fa9f2;--doing-bg:#1e2742;--waiting:#e2b44f;--waiting-bg:#33290f;--done:#6cc690;--done-bg:#15301f;--todo:#b4bbb6;--todo-bg:#262b29;--danger:#f08a82;--danger-bg:#3a1b19;--p1:#f08a82;--p2:#9ba39e;--p3:#6a726d;--shadow:0 1px 2px rgba(0,0,0,.3),0 4px 16px rgba(0,0,0,.25)}}*{box-sizing:border-box}body,html{margin:0}body{background:var(--ground);color:var(--ink);font:14px/1.5 var(--body);padding-inline:16px;padding-block:20px 48px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:inherit}header.top{max-width:1120px;margin:0 auto 20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}h1{font:700 26px/1.1 var(--display);letter-spacing:-.01em;margin:0}.sync{font:12px var(--mono);color:var(--muted);display:flex;align-items:center;gap:6px;margin-left:auto}.sync i{width:7px;height:7px;border-radius:50%;background:var(--done);display:inline-block}.sync.err i{background:var(--danger)}.linkbtn{border:0;background:none;color:var(--muted);font-size:13px;padding:4px 0}.linkbtn:hover{color:var(--ink);text-decoration:underline}.wrap{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:220px minmax(0,1fr);grid-gap:28px;gap:28px}aside{display:flex;flex-direction:column;gap:6px;align-self:start;position:-webkit-sticky;position:sticky;top:16px}.side-label{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:0 10px 4px}.proj{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;border:0;background:none;text-align:left;width:100%}.proj:hover{background:var(--sunk)}.proj[aria-current=true]{background:var(--surface);box-shadow:var(--shadow)}.dot{width:10px;height:10px;border-radius:3px;flex:none;display:inline-block}.proj .nm{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.proj .ct{font:12px var(--mono);color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.addproj{margin-top:8px;border:1px dashed var(--line);background:none;border-radius:8px;padding:8px 10px;color:var(--muted);text-align:left}.addproj:hover{color:var(--ink);border-color:var(--faint)}.pform{flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px;margin-top:8px}.pform,.pform .row{display:flex;gap:8px}.pform .row .field{width:100%}.swatches{display:flex;gap:6px;flex-wrap:wrap}.sw{width:22px;height:22px;border-radius:6px;border:2px solid transparent;padding:0}.sw[aria-pressed=true]{border-color:var(--ink)}.field{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-width:0}.field:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.btn{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:8px 14px;font-weight:500}.btn:hover:not(:disabled){border-color:var(--faint)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.danger{color:var(--danger)}.btn.danger.armed{background:var(--danger);color:var(--surface);border-color:var(--danger)}.btn.small{padding:5px 10px;font-size:13px}form.quick{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto auto;grid-gap:8px;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:8px;box-shadow:var(--shadow)}form.quick .title{border:0;font-size:15px}form.quick .title:focus{box-shadow:none}.summary{gap:10px;margin:22px 0 14px;align-items:center;justify-content:space-between}.summary,.tabs{display:flex;flex-wrap:wrap}.tabs{gap:4px;background:var(--sunk);padding:3px;border-radius:9px}.tab{border:0;background:none;padding:6px 12px;border-radius:7px;color:var(--muted);font-weight:500;display:flex;gap:6px;align-items:center}.tab b{font:500 11px var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--faint)}.tab[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.tab[aria-selected=true] b{color:var(--muted)}.search{width:200px}.group{margin-bottom:26px}.ghead{display:flex;align-items:center;gap:10px;padding:0 4px 8px;border-bottom:1px solid var(--line);margin-bottom:4px;flex-wrap:wrap}.ghead h2{font:600 17px/1.2 var(--display);margin:0}.ghead .meta{margin-left:auto}.ghead .meta,.ghead a{font:12px var(--mono);color:var(--muted)}.ghead a{text-decoration:none}.ghead a:hover{color:var(--accent);text-decoration:underline}.task{border-bottom:1px solid var(--line)}.trow{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;grid-gap:10px;gap:10px;padding:9px 4px}.check{width:20px;height:20px;border-radius:6px;border:1.5px solid var(--faint);background:var(--surface);display:grid;place-items:center;padding:0}.check svg{width:12px;height:12px;opacity:0}.task.is-done .check{background:var(--done);border-color:var(--done)}.task.is-done .check svg{opacity:1;stroke:var(--surface)}.check:hover svg{opacity:.4}.ref{font:12px var(--mono);color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:44px}.ttl{border:0;background:none;text-align:left;padding:2px 0;min-width:0;overflow-wrap:anywhere;display:flex;flex-direction:column}.ttl .t{font-weight:500}.ttl .n{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task.is-done .ttl .t{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint)}.meta-m{display:flex;gap:10px;align-items:center}.meta-m .ref{display:none}.prio{font:500 11px var(--mono);padding:2px 6px;border-radius:5px;color:var(--p2);border:1px solid var(--line)}.prio.p1{color:var(--p1);border-color:currentColor}.prio.p3{color:var(--p3)}.src{font:11px var(--mono);color:var(--faint)}.due{font:12px var(--mono);color:var(--muted);white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.due.over{color:var(--danger);font-weight:500}.due.today{color:var(--waiting);font-weight:500}.stat{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:0;border-radius:999px;padding:3px 10px;font:500 12px var(--body);cursor:pointer}.stat.todo{background:var(--todo-bg);color:var(--todo)}.stat.doing{background:var(--doing-bg);color:var(--doing)}.stat.waiting{background:var(--waiting-bg);color:var(--waiting)}.stat.done{background:var(--done-bg);color:var(--done)}.stat option{background:var(--surface);color:var(--ink)}.editor{display:grid;grid-gap:10px;gap:10px;padding:4px 4px 16px 64px}.editor .row{display:flex;gap:8px;flex-wrap:wrap}.editor textarea{min-height:90px;resize:vertical;width:100%;line-height:1.5}.editor .foot{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.editor .stamp{margin-left:auto;font:11.5px var(--mono);color:var(--faint)}.empty{padding:14px 4px}.empty,.notice{color:var(--muted)}.notice{padding:40px 20px;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:12px}.toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:var(--ink);color:var(--ground);padding:8px 14px;border-radius:8px;font-size:13px;box-shadow:var(--shadow);z-index:10}.login{max-width:340px;margin:12vh auto 0;display:grid;grid-gap:20px;gap:20px}.login-card{display:grid;grid-gap:10px;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;box-shadow:var(--shadow)}.login-card label{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.login-error{color:var(--danger);margin:0;font-size:13px}@media (max-width:780px){.wrap{grid-template-columns:minmax(0,1fr);gap:16px}aside{position:static;flex-direction:row;overflow-x:auto;padding-bottom:4px;gap:6px}.side-label{display:none}.proj{width:auto;flex:none;border:1px solid var(--line)}.addproj{margin:0;flex:none}.pform{position:fixed;left:16px;right:16px;top:80px;z-index:5;box-shadow:var(--shadow)}form.quick{grid-template-columns:1fr 1fr 1fr}form.quick .btn,form.quick .title{grid-column:1/-1}.search{width:100%}.trow{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"c t s" ". m m"}.trow .check{grid-area:c}.trow .ttl{grid-area:t}.trow .stat{grid-area:s}.trow>.ref{display:none}.trow .meta-m{grid-area:m}.meta-m .ref{display:inline}.editor{padding-left:4px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}:root{--good:#2e7a4b;--bad:#b3261e}@media (prefers-color-scheme:dark){:root{--good:#6cc690;--bad:#f08a82}}nav.pages{display:flex;gap:2px;background:var(--sunk);padding:3px;border-radius:9px}nav.pages a{text-decoration:none;padding:5px 12px;border-radius:7px;color:var(--muted);font-weight:500}nav.pages a[aria-current=page]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.side-actions{display:flex;flex-direction:column;gap:6px}.side-actions .addproj{margin-top:0}.side-actions .addproj:first-child{margin-top:8px}.checkline{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--muted)}.field.num{width:84px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.field.cur{width:64px;text-transform:uppercase}.field.grow{flex:1 1 160px}.form-error{color:var(--danger);font-size:13px;margin:0}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.hrs{font:12px var(--mono);color:var(--muted);white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hrs.over{color:var(--danger)}.hours{display:grid;grid-gap:8px;gap:8px;background:var(--sunk);border-radius:10px;padding:10px 12px}.hours-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.hours-head label{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.hours .hint{font-size:12.5px;color:var(--muted);flex:1 1 220px}.hours-log{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.entries{list-style:none;margin:0;padding:0;display:grid;grid-gap:2px;gap:2px}.entries li{display:grid;grid-template-columns:96px 56px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;font-size:13px;padding:3px 0;border-top:1px solid var(--line)}.entries .d,.entries .h{font:12px var(--mono);color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.entries .n{overflow-wrap:anywhere}main.money{max-width:1120px;margin:0 auto;display:grid;grid-gap:14px;gap:14px}.money-head{gap:18px;flex-wrap:wrap}.money-head,.yearpick{display:flex;align-items:center}.yearpick{gap:8px}.yearpick b{font:600 20px var(--display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:52px;text-align:center}.lede{color:var(--muted);margin:0;max-width:62ch;font-size:13.5px}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.tile{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:grid;grid-gap:4px;gap:4px}.tile .tl{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.tile .tv{font:700 26px/1.1 var(--display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tile .ts{font-size:12.5px;color:var(--muted)}.tile.good .tv{color:var(--good)}.tile.bad .tv{color:var(--bad)}h2.sec{font:600 18px/1.2 var(--display);margin:18px 0 0;padding-bottom:8px;border-bottom:1px solid var(--line)}.cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr))}.cards,.icard{display:grid;grid-gap:10px;gap:10px}.icard{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px;align-content:start}.icard header{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.icard h3{font:600 16px var(--display);margin:0}.icard .figs{margin-left:auto;font-size:12.5px;color:var(--muted)}.icard .figs b{color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.icard .desc{margin:0;white-space:pre-wrap}.empty,.icard .desc.muted{color:var(--muted)}.rules{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px}.rules li{display:flex;gap:8px;align-items:baseline;font-size:13px}.kind{font:500 10.5px var(--mono);text-transform:uppercase;letter-spacing:.06em;padding:1px 6px;border-radius:5px;background:var(--sunk);flex:none}.kind,.now,.rnote{color:var(--muted)}.now{margin:0;font-size:13px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.actions .spacer{flex:1 1}.model{display:grid;grid-gap:8px;gap:8px}.model>label{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.model textarea{min-height:70px;resize:vertical;width:100%}.rule-row{gap:6px;border:1px solid var(--line);border-radius:10px;padding:8px;margin:0}.exp-form,.inline-form,.rule-row{display:flex;flex-wrap:wrap;align-items:center}.exp-form,.inline-form{gap:8px}.exp-form{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px}.exp-form .actions{flex-basis:100%}.mini{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--muted)}.table-wrap{overflow-x:auto}table.list,table.months{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.months td,table.months th{padding:7px 10px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}table.months th:first-child{text-align:left;font-weight:500}table.months thead th{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}table.months tr.now{background:var(--accent-soft)}table.months tr.future td{color:var(--muted)}table.months tfoot td,table.months tfoot th{font-weight:600;border-bottom:0}td.neg{color:var(--bad)}table.list td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}table.list td.d{font:12px var(--mono);color:var(--muted);white-space:nowrap}table.list td.act,table.list td.amt{text-align:right;white-space:nowrap}.conv,.vendor,table.list .note{color:var(--muted);font-size:12.5px}table.list tr.ended td{opacity:.55}.linkbtn.danger{color:var(--danger);font-weight:600}.exp-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.exp-head b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.exp-group{margin-top:12px}.exp-group h3{font:600 14px var(--display);margin:0 0 4px;display:flex;gap:8px;align-items:baseline}.exp-group h3 span{font:12px var(--mono);color:var(--muted);font-weight:400}.fx{font-size:12px;color:var(--faint);margin:18px 0 0}@media (max-width:780px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tile .tv{font-size:21px}.entries li{grid-template-columns:84px 48px minmax(0,1fr)}.entries li .linkbtn{grid-column:3;justify-self:start}}.exp-group table.list{table-layout:fixed;min-width:640px}.exp-group table.list td:nth-child(2){width:170px}.exp-group table.list td:nth-child(3){width:120px}.exp-group table.list td:nth-child(4){width:150px}.exp-group table.list td:nth-child(5){width:110px}