@font-face{font-family:Spectral;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/spectral-cyrillic-ext-400-normal-B4-YHs9i.woff2)format("woff2"),url(/assets/spectral-cyrillic-ext-400-normal--n_iQ4wr.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Spectral;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/spectral-cyrillic-400-normal-Bx9Tn3WZ.woff2)format("woff2"),url(/assets/spectral-cyrillic-400-normal-X3p2PSzL.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Spectral;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/spectral-vietnamese-400-normal-C7CRHYqk.woff2)format("woff2"),url(/assets/spectral-vietnamese-400-normal-CWkMWCzb.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Spectral;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/spectral-latin-ext-400-normal-XDLFwhqg.woff2)format("woff2"),url(/assets/spectral-latin-ext-400-normal-BHbqXr-7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Spectral;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/spectral-latin-400-normal-CTVgUekv.woff2)format("woff2"),url(/assets/spectral-latin-400-normal-D34IWA1h.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Spectral;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/spectral-cyrillic-ext-600-normal-CvRHnPuy.woff2)format("woff2"),url(/assets/spectral-cyrillic-ext-600-normal-BVATWin6.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Spectral;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/spectral-cyrillic-600-normal-Dl75bDKp.woff2)format("woff2"),url(/assets/spectral-cyrillic-600-normal-veT-ELBO.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Spectral;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/spectral-vietnamese-600-normal-ZNiwCzjU.woff2)format("woff2"),url(/assets/spectral-vietnamese-600-normal-esmjhrFa.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Spectral;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/spectral-latin-ext-600-normal-DKlDBbgb.woff2)format("woff2"),url(/assets/spectral-latin-ext-600-normal-DnKmvInL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Spectral;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/spectral-latin-600-normal-DE3OxvnQ.woff2)format("woff2"),url(/assets/spectral-latin-600-normal-DXnQJnYb.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff)format("woff");unicode-range:U+460-52F,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff)format("woff");unicode-range:U+460-52F,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-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#171310;--walnut:#211a14;--walnut-raised:#2a221a;--line:#3a2f25;--boxwood:#e8dcc7;--boxwood-dim:#9a8c7a;--sienna:#c96f3b;--sienna-soft:#c96f3b29;--laurel:#7ba05b;--laurel-soft:#7ba05b29;--claret:#b0413e;--claret-soft:#b0413e2e;--gold:#c9a227;--font-display:"Spectral", Georgia, serif;--font-body:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--board-light:#d8c9a3;--board-dark:#7d6a4f;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--radius-s:6px;--radius-m:10px;--radius-l:14px;--tabbar-h:58px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}html,body{background:var(--ink);color:var(--boxwood);font-family:var(--font-body);margin:0;padding:0;font-size:16px;line-height:1.5}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-display);letter-spacing:.01em;margin:0 0 .5rem;font-weight:600}h1{font-size:clamp(1.5rem,4.5vw,1.8rem)}h2{font-size:1.25rem}h3{font-size:1.05rem}a{color:var(--sienna)}button{font-family:var(--font-body);color:var(--boxwood);background:var(--walnut-raised);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:.5rem .9rem;font-size:.92rem;transition:border-color .12s,background .12s}button:hover{border-color:var(--sienna)}button:focus-visible{outline:2px solid var(--sienna);outline-offset:2px}button:disabled{opacity:.45;cursor:default}button:active,.option-btn:active,.task-row:active{transform:scale(.99)}button.primary{background:var(--sienna);border-color:var(--sienna);color:#1c120a;font-weight:600}button.primary:hover{background:#d97f4a}button.ghost{background:0 0}input,select{font-family:var(--font-body);color:var(--boxwood);background:var(--ink);border:1px solid var(--line);border-radius:6px;padding:.45rem .6rem;font-size:.92rem}input:focus-visible,select:focus-visible{outline:2px solid var(--sienna);outline-offset:1px}.shell{grid-template-columns:208px 1fr;min-height:100dvh;display:grid}.rail{border-right:1px solid var(--line);background:var(--walnut);flex-direction:column;gap:.2rem;padding:1.1rem .8rem;display:flex}.rail .brand{font-family:var(--font-display);color:var(--boxwood);padding:.2rem .6rem .9rem;font-size:1.12rem}.rail .brand em{font-family:var(--font-mono);color:var(--sienna);letter-spacing:.14em;text-transform:uppercase;margin-top:2px;font-size:.68rem;font-style:normal;display:block}.rail button{text-align:left;width:100%;color:var(--boxwood-dim);background:0 0;border:none;border-left:2px solid #0000;border-radius:6px;padding:.5rem .6rem;font-size:.94rem;display:block}.rail button+button{margin-top:.2rem}.rail button:hover{color:var(--boxwood);background:var(--walnut-raised)}.rail button.active{color:var(--boxwood);background:var(--sienna-soft);border-left:2px solid var(--sienna);border-radius:0 6px 6px 0}.rail-group{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--boxwood-dim);opacity:.7;margin:var(--space-4) .6rem var(--space-1);font-size:.6rem}.rail .foot{color:var(--boxwood-dim);font-size:.72rem;font-family:var(--font-mono);margin-top:auto;padding:.6rem}.main{width:100%;min-width:0;max-width:1200px;margin-inline:auto;padding:1.4rem 1.8rem 3rem}.panel{background:var(--walnut);border:1px solid var(--line);border-radius:10px;padding:1rem 1.1rem}.panel+.panel{margin-top:.9rem}.muted{color:var(--boxwood-dim)}.mono{font-family:var(--font-mono)}.small{font-size:.82rem}.mono,.tag,.metric .value,.clock,td.mono{font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--sienna);margin-bottom:.35rem;font-size:.68rem}.grid2{grid-template-columns:1fr 1fr;gap:.9rem;display:grid}.grid3{grid-template-columns:repeat(3,1fr);gap:.9rem;display:grid}.row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.spread{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.tag{font-family:var(--font-mono);border:1px solid var(--line);color:var(--boxwood-dim);border-radius:999px;padding:.12rem .5rem;font-size:.7rem;display:inline-block}.tag.good{color:var(--laurel);border-color:var(--laurel)}.tag.bad{color:var(--claret);border-color:var(--claret)}.tag.accent{color:var(--sienna);border-color:var(--sienna)}.stack>*+*{margin-top:var(--space-4)}.measure{max-width:68ch}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.delta{font-family:var(--font-mono);font-size:.78rem}.delta.up{color:var(--laurel)}.delta.down{color:var(--claret)}.seg{background:var(--walnut-raised);border:1px solid var(--line);border-radius:8px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--boxwood-dim);background:0 0;border:none;border-radius:6px;min-height:38px;padding:.42rem .8rem;font-size:.88rem}.seg button.active{background:var(--walnut);color:var(--boxwood);box-shadow:inset 0 0 0 1px var(--line)}.scroll-y{overscroll-behavior:contain;overflow-y:auto;-webkit-mask-image:linear-gradient(#000 calc(100% - 18px),#0000);mask-image:linear-gradient(#000 calc(100% - 18px),#0000)}.board-page{grid-template-columns:minmax(320px,560px) minmax(300px,1fr);align-items:start;gap:1.2rem;display:grid}.board-wrap{position:relative}.scoresheet{background:var(--walnut);border:1px solid var(--line);border-radius:10px;flex-direction:column;max-height:700px;display:flex;overflow:hidden}.scoresheet header{border-bottom:1px dashed var(--line);font-family:var(--font-display);justify-content:space-between;align-items:baseline;padding:.7rem 1rem .55rem;display:flex}.scoresheet .sheet{min-height:0;font-family:var(--font-mono);flex:auto;padding:.6rem 1rem .8rem;font-size:.86rem;overflow-y:auto}.sheet .moverow{grid-template-columns:2.2em 5.2em 5.2em;gap:.4em;padding:.1rem 0;display:grid}.sheet .num{color:var(--boxwood-dim)}.sheet .glyph-blunder{color:var(--claret);font-weight:700}.sheet .glyph-mistake{color:var(--claret)}.sheet .glyph-inaccuracy{color:var(--gold)}.sheet .glyph-good{color:var(--laurel)}.sheet .verdict{font-family:var(--font-body);color:var(--boxwood-dim);margin:.1rem 0 .35rem .6rem;padding-left:.7rem;font-size:.84rem;line-height:1.45}.sheet .verdict .who{font-family:var(--font-mono);color:var(--boxwood)}.sheet .verdict.good{color:var(--boxwood-dim)}.sheet .verdict.good .eval-chip{border-color:var(--laurel);color:var(--laurel)}.sheet .verdict.bad{color:var(--claret)}.sheet .verdict.bad .eval-chip{border-color:var(--claret);color:var(--claret)}.sheet .eval-chip{font-family:var(--font-mono);border:1px solid var(--line);color:var(--boxwood-dim);border-radius:4px;margin-right:.45rem;padding:0 .3rem;font-size:.7rem;display:inline-block}.sheet .margin-note{border-left:2px solid var(--sienna);font-family:var(--font-body);color:var(--boxwood);margin:.25rem 0 .55rem .6rem;padding:.2rem 0 .2rem .7rem;font-size:.87rem;line-height:1.5}.sheet .margin-note.bad{border-left-color:var(--claret)}.sheet .margin-note.good{border-left-color:var(--laurel)}.sheet .margin-note .actions{margin-top:.3rem}.sheet .margin-note .actions button{padding:.25rem .6rem;font-size:.78rem}.coach-strip{flex-direction:column;justify-content:center;min-height:5.4rem;max-height:5.4rem;margin-bottom:.8rem;display:flex}.coach-strip>*{max-height:5.4rem;overflow-y:auto;margin-bottom:0!important}.coach-strip .coach-tip{border:1px dashed var(--line);border-radius:8px;padding:.6rem .9rem;font-size:.88rem}@keyframes gate-pulse{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.gate-pulse{animation:.32s gate-pulse}.won-banner{background:var(--laurel-soft);border:1px solid var(--laurel);border-radius:8px;margin-bottom:.8rem;padding:.6rem .9rem;font-size:.88rem}.won-banner strong{color:var(--laurel)}.alert{background:var(--claret-soft);border:1px solid var(--claret);border-radius:8px;margin-bottom:.8rem;padding:.6rem .9rem;font-size:.88rem}.notice{background:var(--sienna-soft);border:1px solid var(--sienna);border-radius:8px;margin-bottom:.8rem;padding:.6rem .9rem;font-size:.88rem}.metric{flex-direction:column;gap:.15rem;display:flex}.metric .value{font-family:var(--font-display);font-size:1.5rem}.metric .target{color:var(--boxwood-dim);font-size:.72rem;font-family:var(--font-mono)}.metric.ok .value{color:var(--laurel)}.metric.warn .value{color:var(--gold)}.metric.bad .value{color:var(--claret)}.progressbar{background:var(--walnut-raised);border-radius:3px;height:6px;overflow:hidden}.progressbar>div{background:var(--sienna);border-radius:3px;height:100%;transition:width .2s}.clickable-card{cursor:pointer;transition:border-color .12s}.clickable-card:hover{border-color:var(--sienna)}.line-chips{flex-wrap:wrap;gap:.35rem;display:flex}.line-chips .chip{font-family:var(--font-mono);background:var(--walnut-raised);border:1px solid var(--line);border-radius:6px;padding:.2rem .55rem;font-size:.9rem}.option-btn{text-align:left;width:100%;margin-top:.45rem;display:block}.option-btn.correct{border-color:var(--laurel);background:var(--laurel-soft)}.option-btn.wrong{border-color:var(--claret);background:var(--claret-soft)}.clock{font-family:var(--font-mono);border:1px solid var(--line);background:var(--ink);border-radius:6px;padding:.2rem .7rem;font-size:1.3rem}.clock.low{color:var(--claret);border-color:var(--claret)}.mobile-top{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--walnut);border-bottom:1px solid var(--line);padding:max(.5rem, env(safe-area-inset-top)) max(var(--space-4), env(safe-area-inset-right)) .5rem max(var(--space-4), env(safe-area-inset-left));display:none}.mobile-top .brand{font-family:var(--font-display);color:var(--boxwood);font-size:1.05rem}.tabbar{inset-inline:0;z-index:30;background:var(--walnut);border-top:1px solid var(--line);padding:6px max(6px, env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left));display:none;position:fixed;bottom:0}.tabbar button{color:var(--boxwood-dim);background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:3px;min-height:48px;padding:6px 2px 4px;display:flex}.tabbar button.active{color:var(--sienna)}.tabbar .tb-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem}.tabbar svg{width:23px;height:23px}.sheet-backdrop{z-index:40;background:#0a07058c;position:fixed;inset:0}.more-sheet{inset-inline:0;z-index:41;background:var(--walnut);border-top:1px solid var(--line);border-radius:var(--radius-l) var(--radius-l) 0 0;padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));animation:.18s sheet-up;position:fixed;bottom:0}@keyframes sheet-up{0%{opacity:0;transform:translateY(24px)}}.more-sheet .sheet-row{align-items:center;gap:var(--space-3);width:100%;color:var(--boxwood);text-align:left;background:0 0;border:none;border-radius:8px;min-height:48px;padding:.8rem .6rem;font-size:1rem;display:flex}.more-sheet .sheet-row:active{background:var(--walnut-raised)}.more-sheet .sheet-row svg{width:22px;height:22px;color:var(--boxwood-dim)}.morning-card{border-left:none}.task-row:focus{outline:none}.task-row:focus-visible{background:var(--walnut-raised);outline:none}.tabbar button:focus,.sheet-row:focus,.drawer-bar:focus,.brand:focus{outline:none}.tabbar button:focus-visible,.sheet-row:focus-visible,.drawer-bar:focus-visible,.brand:focus-visible{outline:2px solid var(--sienna);outline-offset:-2px}button.brand{cursor:pointer;text-align:left;font-family:var(--font-display);color:var(--boxwood);background:0 0;border:none;padding:0}.mobile-top button.brand{font-size:1.05rem}.rail button.brand{padding:.2rem .6rem .9rem;font-size:1.12rem}.rail button.brand:hover{color:var(--boxwood);background:0 0}.sheet-desktop{display:block}.sheet-drawer{display:none}@media (width<=900px){.sheet-desktop{display:none}.sheet-drawer{display:block}.drawer-backdrop{z-index:27;background:#0a070573;position:fixed;inset:0}.drawer-panel{inset-inline:0;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));z-index:28;position:fixed}.drawer-bar{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:.55rem max(.9rem, env(safe-area-inset-right)) .55rem max(.9rem, env(safe-area-inset-left));background:var(--walnut);border:none;border-top:1px solid var(--line);color:var(--boxwood);border-radius:0;display:flex}.drawer-panel .scoresheet{border-bottom:none;border-left:none;border-right:none;border-radius:0;height:min(46dvh,430px);max-height:none}.board-page.has-drawer{padding-bottom:56px}}.scoresheet .sheet{overscroll-behavior:contain}.review-viewer{gap:var(--space-3);flex-direction:column;display:flex}.rv-bar{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.rv-back{font-size:.95rem;text-decoration:none}.rv-frame-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border:1px solid var(--line);border-radius:var(--radius-m);background:#171410;height:calc(100dvh - 170px);overflow-y:auto}.rv-frame-wrap iframe{border:0;width:100%;height:100%;display:block}@media (width<=900px){.rv-frame-wrap{height:calc(100dvh - var(--tabbar-h) - env(safe-area-inset-bottom) - 150px)}}.steps{margin:var(--space-2) 0 0;counter-reset:step;gap:var(--space-2);padding:0;list-style:none;display:grid}.steps li{counter-increment:step;gap:var(--space-3);align-items:baseline;font-size:.92rem;line-height:1.5;display:flex}.steps li:before{content:counter(step);font-family:var(--font-mono);color:var(--sienna);border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:.72rem;display:grid;transform:translateY(2px)}.keyrule{font-family:var(--font-display);border-left:3px solid var(--sienna);margin:var(--space-2) 0;padding:.2rem 0 .2rem .7rem;font-size:1.02rem;font-style:italic}.note-more{margin-top:var(--space-3)}.note-more summary{cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sienna);font-size:.72rem;list-style:none}.note-more summary:before{content:"▸ ";transition:transform .12s;display:inline-block}.note-more[open] summary:before{transform:rotate(90deg)}.note-more>p{margin:var(--space-2) 0 0}.morning-status{align-items:center;gap:var(--space-4);margin:var(--space-4) 0 var(--space-3);flex-wrap:wrap;display:flex}.morning-status svg{flex:none}.morning-status button{min-height:44px}.task-row{align-items:center;gap:var(--space-3);border:none;border-top:1px solid var(--line);text-align:left;width:100%;color:var(--boxwood);background:0 0;min-height:52px;padding:.7rem .2rem;display:flex}.task-row .tcheck{border:1.5px solid var(--line);color:#0000;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;display:grid}.task-row.done .tcheck{background:var(--laurel);border-color:var(--laurel);color:var(--ink)}.task-row.done .t-title{color:var(--boxwood-dim)}.task-row .t-min{font-family:var(--font-mono);color:var(--boxwood-dim);flex:none;margin-left:auto;font-size:.72rem}.task-row .tcheck{cursor:pointer}.task-row .tcheck svg{width:15px;height:15px}.puzzle-dots{gap:4px;display:flex}.puzzle-dots span{background:var(--walnut-raised);border-radius:2px;flex:1;height:4px}.puzzle-dots span.current{background:var(--sienna)}.puzzle-dots span.solved{background:var(--laurel)}.puzzle-dots span.failed{background:var(--claret)}.unread-dot{background:var(--sienna);border-radius:50%;flex:none;width:7px;height:7px}.review-hero{color:var(--boxwood);text-decoration:none;transition:border-color .12s;display:block}.review-hero:hover{border-color:var(--sienna)}.review-hero h3{margin:.4rem 0 .3rem;font-size:1.3rem}.review-card{color:var(--boxwood);margin-top:var(--space-2);padding:.75rem .9rem;text-decoration:none;transition:border-color .12s;display:block}.review-card:hover{border-color:var(--sienna)}.review-card+.review-card{margin-top:var(--space-2)}.review-row{align-items:center;gap:var(--space-3);border-top:1px solid var(--line);min-height:48px;color:var(--boxwood);padding:.55rem .2rem;text-decoration:none;display:flex}.review-row:active{background:var(--walnut-raised)}.review-row .r-date{font-family:var(--font-mono);color:var(--boxwood-dim);flex:none;font-size:.74rem}.review-row .r-headline{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;flex:1;min-width:0;display:-webkit-box;overflow:hidden}.month-group summary{align-items:center;gap:var(--space-3);border-top:1px solid var(--line);min-height:48px;color:var(--boxwood);cursor:pointer;padding:.55rem .2rem;list-style:none;display:flex}.month-group summary::-webkit-details-marker{display:none}.month-group summary:before{content:"▸";color:var(--boxwood-dim);transition:transform .12s}.month-group[open] summary:before{transform:rotate(90deg)}@media (width<=900px){.shell{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.rail{display:none}.mobile-top,.tabbar{display:flex}.main{padding:1rem .9rem;padding-left:max(.9rem, env(safe-area-inset-left));padding-right:max(.9rem, env(safe-area-inset-right));padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 24px)}.board-page,.grid2,.grid3{grid-template-columns:1fr}.spread{flex-wrap:wrap}.coach-strip{min-height:6.2rem;max-height:6.2rem}.coach-strip>*{max-height:6.2rem}.clock{padding:.15rem .5rem;font-size:1.05rem}.scoresheet{max-height:46vh}.board-wrap{max-width:100%!important}}button,.board-wrap,.clickable-card,.option-btn{touch-action:manipulation}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media (width<=900px){.option-btn{padding:.7rem .9rem}.scoresheet .sheet{font-size:.92rem}.metric .value{font-size:1.3rem}.hide-mobile{display:none}}.option-btn.current{border-color:var(--sienna);background:var(--sienna-soft)}.task-row .t-body{flex:1;min-width:0}.task-row .t-detail{color:var(--boxwood-dim);font-size:.78rem;display:block}.inline-icon{vertical-align:-2px;width:14px;height:14px;margin-right:4px}.metric .delta{margin-left:.4rem}.puzzle-progress{align-items:center;gap:.6rem;margin-bottom:.6rem;display:flex}.puzzle-progress .puzzle-dots{flex:1}.missed-list{margin-top:.6rem}.missed-row{border-top:1px solid var(--line);align-items:baseline;gap:.5rem;padding:.5rem .2rem;font-size:.85rem;display:flex}.puzzle-summary{max-width:560px}.summary-hero{align-items:center;gap:var(--space-4);margin-top:.6rem;display:flex}.summary-hero h2{margin:0}.result-ring{flex:none}.result-ring text{font-family:var(--font-mono);font-variant-numeric:tabular-nums;fill:var(--boxwood);font-size:13px}.summary-actions{margin-top:var(--space-4)}.review-archive>*+*{margin-top:var(--space-3)}.seg.small button{padding:.3rem .6rem;font-size:.78rem}.month-head{align-items:center;gap:var(--space-3);border-top:1px solid var(--line);min-height:48px;padding:.55rem .2rem;display:flex}.review-card.weekly{padding:.55rem .75rem}.review-row svg,.review-meta svg{width:14px;height:14px;color:var(--boxwood-dim);flex:none}
