@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300..800&display=swap");:root{--ground:#F5F6F5;--card:#FEFEFE;--raised:#FAFBFA;--sunken:#EEF0F0;--hair:#E6E9E8;--track:#E6E9E8;--hatch:#A1ACA9;--t1:#2F463F;--t2:#5D6F69;--t3:#7E8C88;--ink:#0F1918;--acc:#237D2C;--accFill:#2F463F;--mark:#48AE4F;--accT:#EDF7ED;--accT2:#D3EFD2;--posI:#237D2C;--posF:#E9F5EA;--attI:#A16500;--attF:#FAF1E0;--ovdI:#CD303A;--ovdF:#F9E6E7;--road:#CBD1CF;--lock:#A1ACA9;--r-check:6px;--r-tile:12px;--r-row:16px;--r-card:20px;--r-sec:24px;--r-pill:999px;--rail:200px;--topbar:64px;--row1:52px;--row2:64px;--trow:48px;--icon:40px;--avatar:40px;--progress:6px;--content:1180px;--do:720px;--ease:cubic-bezier(.4,0,.2,1)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--ground);color:var(--t1);font:400 14px/1.5 Montserrat,system-ui,-apple-system,Segoe UI,sans-serif;font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums;-webkit-font-smoothing:antialiased}img{max-width:100%}:root :focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--ink)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.app{width:1440px;height:1024px;margin:0 auto;display:grid;grid-template-columns:var(--rail) 1fr;background:var(--ground);overflow:hidden}.rail{background:var(--card);padding:20px 12px;display:flex;flex-direction:column;gap:2px}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 20px}.mark{width:28px;height:28px;border-radius:var(--r-pill);background:var(--acc)}.brandname{font-weight:600;font-size:14px;letter-spacing:-.01em}.nav{display:flex;align-items:center;gap:10px;height:var(--icon);padding:0 12px;border-radius:var(--r-pill);color:var(--t2);font-size:13px;font-weight:500;cursor:default}.nav.on{background:var(--ink);color:#fff}.nav .dot{width:6px;height:6px;border-radius:var(--r-pill);background:currentColor;opacity:.55}.nav.on .dot{opacity:1}.railfoot{margin-top:auto;padding:12px 8px;border-top:1px solid var(--hair);display:flex;gap:10px;align-items:center}.av{width:var(--avatar);height:var(--avatar);border-radius:var(--r-pill);background:var(--accT);color:var(--acc);display:grid;place-items:center;font-weight:600;font-size:13px;flex:0 0 var(--avatar)}.railname{font-size:12px;font-weight:500;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.railrole{font-size:11px;color:var(--t2)}.main{flex-direction:column;min-width:0}.main,.top{display:flex}.top{height:var(--topbar);align-items:center;justify-content:space-between;padding:0 32px;background:var(--ground)}.crumb{font-size:13px;color:var(--t2)}.crumb b{font-weight:500;color:var(--t1)}.topright{gap:12px}.pill,.topright{display:flex;align-items:center}.pill{height:32px;padding:0 14px;border-radius:var(--r-pill);background:var(--card);gap:8px;font-size:12px;font-weight:500;color:var(--t2)}.pill .n{color:var(--t1);font-weight:600}.scroll{flex:1 1;overflow-y:auto;padding:8px 32px 48px}.wrap{max-width:var(--content);margin:0 auto;display:flex;flex-direction:column;gap:20px}.card{background:var(--card);border-radius:var(--r-card);padding:20px}h1{font-size:30px;letter-spacing:-.01em;line-height:1.15}h1,h2{font-weight:600}h2{font-size:20px;letter-spacing:-.005em}h3{font-size:16px;font-weight:600}.eyebrow{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--t2)}.cardsub{font-size:12px;color:var(--t2);margin-top:2px}.row{height:var(--row2);display:grid;grid-template-columns:var(--icon) 1fr 160px 84px;align-items:center;grid-gap:16px;gap:16px;padding:0 12px;border-radius:var(--r-row)}.row:hover{background:var(--raised)}.tile{width:var(--icon);height:var(--icon);border-radius:var(--r-tile);background:var(--sunken);color:var(--t2);display:grid;place-items:center}.tile.done{background:var(--posF);color:var(--posI)}.tile.active{background:var(--accT);color:var(--acc)}.tile.review{background:var(--attF);color:var(--attI)}.tile.overdue{background:var(--ovdF);color:var(--ovdI)}.tile.locked{background:var(--sunken);color:var(--lock)}.rowtext{min-width:0}.rowtitle{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row.locked .rowtitle,.rowsub{color:var(--t2)}.rowsub{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.bar{background:var(--track);overflow:hidden}.bar,.bar i{height:var(--progress);border-radius:var(--r-pill)}.bar i{display:block;background:var(--acc)}.bar.empty{background:transparent;background-image:repeating-linear-gradient(45deg,transparent 0 4px,var(--hatch) 4px 6px);box-shadow:inset 0 0 0 1px var(--hatch)}.row.done .bar.empty{background-image:none;background:var(--posF)}.frac{font-size:13px;font-weight:500;text-align:right}.frac.quiet{color:var(--t2);font-weight:400;font-size:12px}.hatchchip{width:22px;height:14px;border-radius:var(--r-check);flex:0 0 22px;background-image:repeating-linear-gradient(45deg,transparent 0 4px,var(--hatch) 4px 6px);box-shadow:inset 0 0 0 1px var(--hatch)}.notyet{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--t2);padding:4px 12px 16px}