@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2) format("woff2-variations");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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.woff2) format("woff2-variations");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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-vietnamese-wght-normal-Czsa-EzN.woff2) format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-ext-wght-normal-C-3rgBeH.woff2) format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-vietnamese-wght-italic-xAqemagA.woff2) format("woff2-variations");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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-ext-wght-italic-DFS986qL.woff2) format("woff2-variations");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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-italic-Bxi8ein9.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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-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+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-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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+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-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+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-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+0000-00FF,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-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+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-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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+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-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+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-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+0000-00FF,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-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff) format("woff");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-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");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-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff) format("woff");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-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff) format("woff");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-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff");unicode-range:U+0000-00FF,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}:root{--ink:#14110F;--ink-2:#221E1A;--rule-dark:#3A3630;--bone:#F7F2E8;--bone-2:#EDE6D8;--rule:#D6CDBB;--ink-soft:#4A443C;--ink-mute:#6E685E;--signal:#D93B2B;--earned:#2456C6;--earned-on-dark:#7FA6F0;--amber:#F0A038;--sky:#8FC0EC;--caution-bg:#F3E7C9;--caution-ink:#3E3208;--ice:#77A6A8;--sand:#C9A67E;--display:"Archivo Variable",system-ui,sans-serif;--serif:"Newsreader Variable",Georgia,serif;--mono:"IBM Plex Mono",ui-monospace,monospace;--d1:74px;--d2:50px;--d3:42px;--h1:26px;--prose-lg:19.5px;--prose:17.5px;--ui:16.5px;--ui-sm:14.5px;--mono-data:14px;--mono-label:10.5px;--gutter:40px}@media(max-width:640px){:root{--d1:48px;--d2:33px;--d3:26px;--h1:21px;--prose-lg:16.5px;--prose:16px;--ui:16px;--ui-sm:14px;--mono-label:10px;--gutter:18px}}*{box-sizing:border-box}body{margin:0;background:var(--bone);color:var(--ink);font-family:var(--display);font-size:var(--ui);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--ink);text-decoration-color:var(--rule);text-underline-offset:3px}a:hover{text-decoration-color:var(--ink)}:focus-visible{outline:2px solid var(--signal);outline-offset:2px}code{font-family:var(--mono);font-size:.88em;background:var(--bone-2);padding:2px 5px;border-radius:2px}.app{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.content{padding:var(--gutter);max-width:980px;width:100%}.rail{border-right:1px solid var(--rule);padding:30px 22px;display:flex;flex-direction:column;gap:30px;position:sticky;top:0;height:100vh;overflow-y:auto}.lockup{display:flex;flex-direction:column;gap:4px;text-decoration:none}.lockrow{display:flex;align-items:center;gap:10px}.wordmark{font-family:var(--display);font-weight:800;font-stretch:115%;letter-spacing:-.04em;font-size:34px;line-height:1}.mark{display:block}.mark-looking .lens{fill:none;stroke:var(--signal)}.mark-looking .bridge{fill:var(--signal)}.mark-earned .lens,.mark-earned .bridge{fill:var(--earned)}.mark-mono .lens{fill:none;stroke:currentColor}.mark-mono .bridge{fill:currentColor}.descriptor{font-family:var(--mono);font-size:var(--mono-label);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}.railnav{display:flex;flex-direction:column;position:relative;padding-left:14px}.railnav a{font-family:var(--display);font-weight:600;font-size:var(--ui);text-decoration:none;padding:9px 0;color:var(--ink-soft)}.railnav a[aria-current=page]{color:var(--ink)}.railnav .marker{position:absolute;left:0;top:0;width:3px;height:22px;background:var(--signal);transition:transform .14s ease}.railfoot{margin-top:auto;display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--rule);padding-top:18px}.datanote{font-family:var(--serif);font-size:13.5px;line-height:1.5;color:var(--ink-soft);margin:0}.staleline{font-family:var(--mono);font-size:12px;line-height:1.5;background:var(--caution-bg);color:var(--caution-ink);border-left:3px solid var(--amber);padding:8px 10px;margin:0;border-radius:2px}.databtns{display:flex;flex-wrap:wrap;gap:8px}.viewtabs,.view{display:none}.view.is-active{display:block;animation:viewfade .12s ease}@keyframes viewfade{0%{opacity:0}}.viewtitle{font-family:var(--display);font-weight:800;font-stretch:112%;letter-spacing:-.02em;font-size:var(--h1);margin:0 0 18px}h3{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);margin:40px 0 12px;font-weight:600}.lede{font-family:var(--serif);font-size:var(--prose-lg);line-height:1.48;color:var(--ink-soft);margin:0 0 22px;max-width:62ch}.lede-note{font-family:var(--serif);color:var(--ink-mute);font-size:14.5px;line-height:1.55;max-width:62ch;margin:-14px 0 22px}p{max-width:62ch}.directive{background:var(--ink);color:var(--bone);border-radius:2px;padding:30px 26px 22px;margin:0 0 26px;position:relative}.dirbird{position:absolute;right:-24px;bottom:0;pointer-events:none}.directive-bird{display:block;height:250px;width:auto}.directive .lbl{font-family:var(--mono);font-size:var(--mono-label);letter-spacing:.2em;text-transform:uppercase;color:var(--earned-on-dark);margin:0 0 12px}.directive h1{font-family:var(--display);font-weight:800;font-stretch:112%;font-size:var(--d2);letter-spacing:-.03em;line-height:1.02;margin:0 0 12px;color:var(--bone)}.directive .dbody{font-family:var(--serif);font-size:var(--prose);line-height:1.55;margin:0 0 18px;max-width:58ch;color:var(--bone-2)}.directive .daily2{font-family:var(--serif);font-size:14.5px;line-height:1.5;color:var(--bone-2);opacity:.85;margin:14px 0 0;max-width:58ch}.directive .daily2 a{color:var(--bone);text-decoration-color:var(--rule-dark)}.directive .prog{font-family:var(--mono);font-size:var(--mono-label);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);margin-top:16px;border-top:1px solid var(--rule-dark);padding-top:12px;color:var(--bone-2);opacity:.7}.directive.wipe h1,.directive.wipe .dbody{animation:wipeup .22s ease}@keyframes wipeup{0%{opacity:0;transform:translateY(12px)}}@media(min-width:901px){.directive{padding-right:190px}}@media(max-width:900px){.dirbird{right:12px;top:14px;bottom:auto}.directive-bird{height:44px;opacity:.9}.directive{padding-right:60px}}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.chip{font-family:var(--mono);font-size:12px;font-weight:600;background:var(--ink);color:var(--bone);padding:6px 11px;border-radius:2px;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.chip:hover{background:var(--signal)}.chip:after{content:"↗";font-size:10px;opacity:.65}.chips.drill .chip{background:var(--signal);color:var(--bone);font-size:var(--ui-sm);padding:13px 18px;min-height:52px}.chips.drill .chip:hover{background:var(--bone);color:var(--ink)}.logbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:var(--ink-2);border-radius:2px;padding:12px 14px;margin:0 0 26px}.logbar .lbl{font-family:var(--mono);font-size:var(--mono-label);letter-spacing:.16em;text-transform:uppercase;color:var(--bone-2)}.logbar input{font-family:var(--mono);font-size:var(--mono-data);padding:12px;border:1px solid var(--rule-dark);background:var(--bone);color:var(--ink);border-radius:2px;min-height:48px}.logbar .lb-id{width:112px}.logbar .lb-motif{flex:1;min-width:140px}.logbar .btn{min-height:48px}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:2px;overflow:hidden;margin:0 0 18px}.tile{background:var(--bone);padding:16px 18px;position:relative}.tile .k{font-family:var(--mono);font-size:var(--mono-label);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:8px}.tile .v{font-family:var(--display);font-weight:800;font-stretch:112%;font-size:var(--d3);letter-spacing:-.03em;line-height:1}.tile .d{font-family:var(--mono);font-size:12px;margin-top:8px;color:var(--ink-mute)}.tile .d.good{color:var(--earned);font-weight:600}.tile .d.bad{color:var(--signal);font-weight:600}.tile .bars{position:absolute;right:16px;bottom:16px;display:flex;gap:3px;align-items:flex-end;height:26px}.tile .bars i{display:block;width:7px;background:var(--rule);border-radius:1px}.ratingline{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-mute);margin:0 0 4px}.ratingwarn{font-family:var(--serif);font-size:13.5px;line-height:1.5;color:var(--ink-soft);border-left:3px solid var(--signal);padding-left:12px;margin:0 0 8px;max-width:62ch}.pipstrip{display:flex;gap:8px;align-items:center;margin:0 0 14px}.pip{width:16px;height:16px;border:1.5px solid var(--rule);border-radius:2px;background:linear-gradient(var(--ink),var(--ink)) left/0% 100% no-repeat;transition:background-size .4s ease}.pip.filled{background-size:100% 100%;border-color:var(--ink)}.pip.now{border-color:var(--signal)}.nowchip{display:inline-block;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;background:var(--signal);color:var(--bone);padding:2px 6px;border-radius:2px;margin-left:8px;vertical-align:2px}.sheet{background:var(--bone);color:var(--ink);border:1px solid var(--rule);border-radius:2px;overflow-x:auto;margin:0 0 22px}.sheet-head{background:var(--bone-2);border-bottom:2px solid var(--ink);padding:12px 18px;display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.sheet-head .t{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}.sheet-head .meta{font-family:var(--mono);font-size:11px;color:var(--ink-mute)}table{width:100%;border-collapse:collapse;font-size:var(--ui-sm)}.sheet th{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);text-align:left;padding:10px 18px;border-bottom:1px solid var(--rule);font-weight:600}.sheet td{padding:12px 18px;border-bottom:1px solid var(--rule);vertical-align:top;color:var(--ink)}.sheet tr:last-child td{border-bottom:none}.sheet td.num{font-family:var(--display);font-weight:800;font-size:20px;color:var(--ink-mute);width:44px;padding-right:0;line-height:1.2}.sheet .mv{font-family:var(--mono);font-weight:600;font-size:var(--mono-data);white-space:nowrap}.sheet .note{display:block;font-family:var(--serif);color:var(--ink-soft);font-size:14px;margin-top:3px;line-height:1.5}.sheet a:not(.chip):not(.pid-link):not(.pill){color:var(--ink);text-decoration-color:var(--ink-mute)}tr.is-done td{background:#2456c60f}tr.is-done td.num{color:var(--earned)}tr.is-now td{background:#d93b2b0f}tr.is-now td.num{color:var(--signal)}tr.row-in{animation:growin .18s ease}@keyframes growin{0%{opacity:0;transform:translateY(-6px)}}.wk{display:flex;align-items:center;gap:9px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);cursor:pointer;-webkit-user-select:none;user-select:none;margin-top:10px}.wk input{width:15px;height:15px;accent-color:var(--earned);cursor:pointer;margin:0}.audit-badge{font-weight:600}.audit-badge.is-pass{color:var(--earned)}.audit-badge.is-fail{color:var(--signal)}.audit-badge.is-null{color:var(--ink-soft)}.check{list-style:none;padding:0;margin:0;counter-reset:c}.check li{counter-increment:c;padding:12px 18px 12px 52px;border-bottom:1px solid var(--rule);position:relative;font-family:var(--serif);font-size:var(--prose)}.check li:last-child{border-bottom:none}.check li:before{content:counter(c);position:absolute;left:18px;top:14px;font-family:var(--mono);font-size:11px;font-weight:600;color:var(--signal)}.tasks{list-style:none;padding:0;margin:0}.tasks li{border-bottom:1px solid var(--rule)}.tasks li:last-child{border-bottom:none}.tasks label{display:flex;gap:12px;padding:13px 18px;cursor:pointer;align-items:flex-start}.tasks input{width:18px;height:18px;accent-color:var(--earned);margin:3px 0 0;flex:0 0 auto;cursor:pointer}.tasks .body{flex:1}.tasks .body>strong{display:block;font-size:var(--ui-sm);font-weight:600}.tasks .note{display:block;font-family:var(--serif);color:var(--ink-soft);font-size:14px;margin-top:3px;line-height:1.5}.tasks li.done .body>strong{text-decoration:line-through;color:var(--ink-mute)}.optline{font-family:var(--mono);font-size:var(--mono-label);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--bone-2);margin:0;padding:8px 18px}.glossline{font-family:var(--serif);font-size:14px;color:var(--ink-soft);padding:12px 18px;border-top:1px solid var(--rule);margin:0}.warn{border-left:3px solid var(--signal);padding:2px 0 2px 16px;margin:22px 0;font-family:var(--serif);color:var(--ink-soft);font-size:var(--prose);line-height:1.55;max-width:62ch}.warn strong{color:var(--ink)}.nope{list-style:none;padding:0;margin:0}.nope li{border-top:1px solid var(--rule);padding:14px 0 14px 34px;position:relative;font-family:var(--serif);color:var(--ink-soft);font-size:var(--prose)}.nope li:before{content:"×";position:absolute;left:0;top:14px;font-family:var(--mono);font-weight:600;font-size:14px;color:var(--signal)}.nope strong{color:var(--ink);font-weight:600}.bar{display:flex;flex-wrap:wrap;gap:10px;padding:14px 18px;background:var(--bone-2);border-bottom:1px solid var(--rule);align-items:flex-end}.bar input,.bar select{font-family:var(--mono);font-size:var(--mono-data);padding:10px 11px;border:1px solid var(--rule);background:var(--bone);color:var(--ink);border-radius:2px}.bar label.inl{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);display:flex;flex-direction:column;gap:4px}.btn{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;background:var(--ink);color:var(--bone);border:none;padding:12px 16px;border-radius:2px;cursor:pointer;position:relative}.btn:hover{background:var(--signal)}.btn.ghost{background:transparent;color:var(--ink-soft);border:1px solid var(--rule)}.btn.ghost:hover{background:var(--bone-2);color:var(--ink)}.btn.is-busy{color:transparent}.btn.is-busy:after{content:"";position:absolute;left:12px;right:12px;bottom:8px;height:2px;background:linear-gradient(90deg,transparent,currentColor,transparent) left/40% 100% no-repeat;color:var(--bone);animation:busyrule 1.2s linear infinite}.btn.ghost.is-busy:after{color:var(--ink-soft)}@keyframes busyrule{0%{background-position:-40% 0}to{background-position:140% 0}}.empty{padding:24px 18px;font-family:var(--serif);color:var(--ink-mute);font-size:var(--ui-sm)}.pid-link{font-family:var(--mono);font-weight:600;color:var(--signal);text-decoration:none;font-size:var(--mono-data)}.pid-link:hover{text-decoration:underline}.del{background:none;border:none;color:var(--ink-mute);cursor:pointer;font-size:16px;padding:14px 12px;margin:-14px -8px;line-height:1}.del:hover{color:var(--signal)}.status{font-family:var(--mono);font-size:12px;color:var(--ink-mute);margin-top:18px;min-height:16px}.count{font-family:var(--mono);font-size:11px;color:var(--ink-mute)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:1px;background:var(--rule)}.stat{background:var(--bone);padding:16px 18px}.stat .k{font-family:var(--mono);font-size:var(--mono-label);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:5px}.stat .v{font-family:var(--display);font-weight:800;font-stretch:112%;font-size:27px;line-height:1;letter-spacing:-.02em;color:var(--ink)}.stat .d{font-family:var(--mono);font-size:11px;margin-top:5px;color:var(--ink-mute)}.stat .d.good{color:var(--earned);font-weight:600}.stat .d.bad{color:var(--signal);font-weight:600}.imp{padding:14px 18px;background:var(--bone-2);border-bottom:1px solid var(--rule)}.imp textarea{width:100%;min-height:88px;font-family:var(--mono);font-size:12px;line-height:1.5;padding:10px;border:1px solid var(--rule);background:var(--bone);color:var(--ink);border-radius:2px;resize:vertical}.imp .row{display:flex;gap:8px;align-items:center;margin-top:8px;flex-wrap:wrap}.imp .hint{font-family:var(--mono);font-size:var(--mono-label);color:var(--ink-mute);letter-spacing:.04em;margin:0 0 8px}.prof{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px;align-items:center}.prof .pill{font-family:var(--mono);font-size:11.5px;font-weight:600;background:var(--ink);color:var(--bone);padding:5px 10px;border-radius:2px;display:inline-flex;gap:7px;align-items:center;text-decoration:none}.prof .pill b{background:#f7f2e838;padding:0 5px;border-radius:2px}.prof .pill.hot{background:var(--signal)}.extlinks{font-family:var(--mono);font-size:12px;color:var(--ink-mute)}.connect{border-top:1px solid var(--rule);background:var(--bone);color:var(--ink)}.connect summary{background:var(--bone-2);padding:12px 18px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:12px;-webkit-user-select:none;user-select:none}.connect summary::-webkit-details-marker{display:none}.connect summary:after{content:"+";margin-left:auto;font-family:var(--mono);font-size:13px;color:var(--ink-mute)}.connect[open] summary{border-bottom:2px solid var(--ink)}.connect[open] summary:after{content:"−"}.connect .cbody{padding:14px 18px 16px}.connect .cbody p{font-family:var(--serif);margin:0 0 10px;font-size:15px;line-height:1.55;max-width:62ch}.connect .chead{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);font-weight:600;margin:16px 0 4px}.connect .bar{border-top:1px solid var(--rule);border-bottom:none}.planwrap{display:grid;grid-template-columns:194px minmax(0,1fr);gap:var(--gutter);align-items:start}.contents{position:sticky;top:30px;display:flex;flex-direction:column;gap:2px}.contents .chead{font-family:var(--mono);font-size:var(--mono-label);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);margin:0 0 8px}.contents a{font-family:var(--display);font-weight:500;font-size:var(--ui-sm);color:var(--ink-soft);text-decoration:none;border-left:2px solid transparent;padding:5px 0 5px 10px}.contents a:hover{color:var(--ink);border-left-color:var(--rule)}.printhead,.printfoot,.printonly{display:none}.mast{margin:0 0 40px}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);margin:0 0 20px}.planmark{margin:0 0 18px}.planmark .wordmark{font-size:var(--d1);letter-spacing:-.04em;line-height:.95}.planmark .descriptor{display:block;font-family:var(--display);font-weight:500;font-size:var(--prose-lg);letter-spacing:0;text-transform:none;color:var(--ink-soft);margin-top:8px}.mast .sub{font-family:var(--serif);font-size:var(--prose-lg);line-height:1.48;color:var(--ink-soft);max-width:62ch;margin:0 0 18px}.plandoc h2{font-family:var(--display);font-weight:800;font-stretch:112%;font-size:var(--h1);letter-spacing:-.02em;line-height:1.12;margin:0 0 14px}.plansec{margin:0 0 56px;scroll-margin-top:26px}.plandoc p{font-family:var(--serif);font-size:var(--prose);line-height:1.55;max-width:62ch}.mech{border-top:1px solid var(--rule);padding:20px 0 4px;display:flex;gap:20px}.mech .idx{font-family:var(--display);font-weight:800;font-size:34px;line-height:.9;color:var(--ink-mute);flex:0 0 auto;min-width:38px}.mech h4{font-family:var(--display);font-weight:600;font-size:var(--prose);margin:0 0 6px}.mech p{margin:0;font-family:var(--serif);color:var(--ink-soft);font-size:var(--prose)}.formula{background:var(--ink);color:var(--bone);border-radius:2px;padding:24px 22px 18px;display:flex;flex-wrap:wrap;gap:8px 26px;align-items:flex-end;margin:0 0 30px}.fmove{display:flex;flex-direction:column;gap:2px}.fmove .n{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--bone-2);opacity:.7}.fmove .m{font-family:var(--display);font-weight:800;font-stretch:112%;font-size:clamp(24px,5vw,34px);line-height:1;letter-spacing:-.01em}.fmove .m .pc{color:var(--amber)}.formula .caption{flex-basis:100%;font-family:var(--mono);font-size:11px;color:var(--bone-2);opacity:.8;border-top:1px solid var(--rule-dark);padding-top:12px;margin-top:6px;letter-spacing:.04em}.milestone{position:fixed;inset:0;z-index:100;background:var(--sand);overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}.ms-labels{position:absolute;top:26px;left:22px;right:22px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#4a3924}.ms-col{width:min(440px,100%);display:flex;flex-direction:column;align-items:center;margin-top:70px}.ms-bird{display:block;height:min(430px,52vh);width:auto;margin-bottom:-30px;filter:drop-shadow(0 20px 34px rgba(60,40,20,.34))}.ms-card{position:relative;width:100%;background:var(--ink);color:var(--bone);padding:26px 22px 24px;border-radius:2px 2px 0 0}.ms-card h2{font-family:var(--display);font-weight:800;font-stretch:110%;font-size:40px;letter-spacing:-.035em;line-height:1;margin:0}.ms-card p{font-family:var(--serif);font-size:19px;line-height:1.45;color:var(--bone-2);margin:14px 0 20px}.ms-cta{display:block;width:100%;background:var(--signal);color:var(--bone);border:none;border-radius:2px;font-family:var(--display);font-weight:600;font-size:18px;padding:17px;min-height:52px;cursor:pointer}.ms-cta:hover{background:var(--bone);color:var(--ink)}.ms-foot{font-family:var(--mono);font-size:12px;color:var(--bone-2);opacity:.7;margin:14px 0 0;text-align:center}@media(max-width:900px){.app{display:flex;flex-direction:column}.viewtabs{display:flex;order:0;position:sticky;top:0;z-index:20;background:var(--bone);border-bottom:1px solid var(--rule)}.viewtabs a{flex:1;text-align:center;font-family:var(--display);font-weight:600;font-size:var(--ui-sm);color:var(--ink-soft);text-decoration:none;padding:14px 4px;border-bottom:2px solid transparent;min-height:48px}.viewtabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--signal)}.content{order:1;padding:var(--gutter);padding-bottom:96px}.rail{order:2;position:static;height:auto;border-right:none;border-top:1px solid var(--rule);padding:22px var(--gutter)}.railnav{display:none}.view.is-active .logbar{position:fixed;left:0;right:0;bottom:0;z-index:30;margin:0;border-radius:0}#view-plan .logbar{position:static}.planwrap{display:block}.contents{position:static;margin-bottom:30px}}@media(max-width:640px){.logbar .lbl{display:none}.logbar .lb-id{width:96px}.logbar .lb-motif{min-width:0}.sheet th,.sheet td{padding:10px 12px}.sheet td.num{width:32px;font-size:17px}.mech{gap:12px}.mech .idx{font-size:26px;min-width:26px}.hide-sm{display:none}.tasks label{padding:12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}@page{margin:14mm}@media print{.viewtabs,.rail,.logbar,.status,.milestone,.dirbird,.view{display:none!important}#view-plan{display:block!important}.contents{display:none}.planwrap,.app{display:block}.content{max-width:none;padding:0}body{background:#fff;color:#111;font-size:12pt}.printhead{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid #111;padding-bottom:8px;margin:0 0 20px;font-family:var(--mono);font-size:9pt;color:#111}.printhead .ph-left{display:inline-flex;align-items:center;gap:9px;letter-spacing:.18em;text-transform:uppercase}.printhead .ph-mark{width:26px;height:11px;color:#111;flex:0 0 auto}.printhead .ph-right{letter-spacing:.1em}.mast{margin:0 0 20px}.eyebrow{display:none}.planmark{margin:0 0 10px}.planmark .wordmark{font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:.98}.planmark .descriptor{font-family:var(--display);font-weight:500;font-size:12pt;color:#333;margin-top:6px}.mast .sub{font-size:16pt;line-height:1.4;color:#111;max-width:52ch;margin:0 0 10px}.mast .sub+.sub{font-size:12pt;line-height:1.5;color:#333;max-width:none;margin:0}.plandoc{color:#111}.plandoc p{font-size:12pt;line-height:1.5;color:#333;max-width:70ch}.plandoc .lede{font-size:16pt;line-height:1.4;color:#111;margin:0 0 10px;max-width:none}.plansec{margin:0 0 22px}.plandoc h2{font-size:14pt;letter-spacing:.02em;text-transform:uppercase;margin:0 0 12px;padding-bottom:7px;border-bottom:1px solid #111;break-after:avoid}h3{font-size:9.5pt;color:#333;margin:14px 0 8px;break-after:avoid}.warn{border-left:2px solid #111;font-size:10.5pt;line-height:1.5;color:#333;margin:14px 0}.warn strong{color:#111}.mech{border-top:1px solid #ddd;padding:10px 0 0;gap:14px}.mech .idx{font-size:20pt;color:#888;min-width:30px}.mech h4{font-size:12pt;break-after:avoid}.mech p{font-size:11pt;line-height:1.5;color:#333}.nope li{font-size:11pt;line-height:1.5;color:#333;border-color:#ddd;padding:8px 0 8px 24px}.nope li:before{color:#111;top:8px}.nope strong{color:#111}code{background:none;border:1px solid #ddd;font-size:.85em}.formula{background:#fff;color:#111;border:1px solid #111;border-radius:0;padding:16px 18px 12px;gap:4px 30px;margin:0 0 24px}.fmove .n{color:#555;opacity:1;font-size:9pt}.fmove .m{font-size:24pt;font-weight:700}.fmove .m .pc{color:#111}.formula .caption{color:#333;opacity:1;border-color:#bbb;font-size:9pt}.sheet{background:#fff;border:none;border-radius:0;overflow:visible;margin:0 0 16px}.sheet-head{background:#fff;border-bottom:2px solid #111;padding:0 0 6px;break-after:avoid}.sheet-head .t,.sheet-head .meta{font-size:9pt;color:#111}.sheet-head .meta{color:#444}table{line-height:1.4}.sheet th{font-size:9pt;color:#444;padding:5px 12px 5px 0;border-color:#ddd}.sheet td{font-size:11pt;padding:5px 12px 5px 0;border-color:#ddd;color:#111}.sheet td.num{font-size:13pt;color:#888;width:30px}.sheet .mv{font-size:9.5pt}.sheet .note{font-size:10pt;color:#444;line-height:1.35}tr,#plan-repertoire .sheet table{break-inside:avoid}.printonly{display:block}.printweeks{margin:0 0 8px}.printweeks td{padding:6px 0;border-bottom:1px solid #ddd;vertical-align:top}.printweeks td.num{width:26px;font-family:var(--display);font-size:13pt;font-weight:700;color:#888;line-height:1.3}.printweeks strong{font-family:var(--display);font-size:12pt;font-weight:600}.printweeks .note{display:block;font-family:var(--serif);font-size:10.5pt;color:#444;line-height:1.4;margin-top:2px}.printweeks td.theme{width:170px;padding-left:14px;font-family:var(--mono);font-size:9pt;color:#333;line-height:1.45}.printweeks td.tickcell{width:36px;text-align:right;padding-right:3px}.printweeks .tick{display:inline-block;width:15px;height:15px;border:1.2px solid #111}#plan-daily{display:grid;grid-template-columns:1fr 1fr;column-gap:34px;break-inside:avoid}#plan-daily>h2{grid-area:1/1}#plan-daily>h3{grid-area:1/2;font-family:var(--display);font-size:14pt;font-weight:800;font-stretch:112%;letter-spacing:.02em;text-transform:uppercase;color:#111;margin:0 0 12px;padding-bottom:7px;border-bottom:1px solid #111}#plan-daily>.sheet:nth-of-type(1){grid-area:2/1;margin:0}#plan-daily>.sheet:nth-of-type(2){grid-area:2/2;margin:0}#plan-daily>.warn{grid-area:3/1;align-self:start;margin:12px 0 0;border:none;padding:0}#plan-daily>.lede{grid-area:3/2;align-self:start;margin:12px 0 0;font-size:10.5pt;line-height:1.5;color:#333}.check li{font-size:11pt;line-height:1.5;padding:6px 0 6px 26px;border-color:#ddd}.check li:before{color:#111;left:0;top:8px;font-size:9pt}.printfoot{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #111;padding-top:8px;margin-top:10px;font-family:var(--mono);font-size:9pt;color:#444}}
