@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/8a053b136321ec99-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:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/2a8fe189f1a8dd0c-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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/c214ffb7f5362987-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:Archivo Fallback;src:local("Arial");ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.00%;size-adjust:98.70%}.__className_7347c0{font-family:Archivo,Archivo Fallback;font-style:normal}.__variable_7347c0{--font-archivo:"Archivo","Archivo Fallback"}@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/5ece437c7024c161-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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/9cc5b37ab1350db7-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:"Instrument Serif Fallback";src:local("Times New Roman");ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.00%;size-adjust:83.94%}.__className_64b68a{font-family:"Instrument Serif","Instrument Serif Fallback";font-weight:400;font-style:italic}.__variable_64b68a{--font-instrument:"Instrument Serif","Instrument Serif Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_4dc837{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_4dc837{--font-jetbrains:"JetBrains Mono","JetBrains Mono Fallback"}:root,[data-theme=dark]{--bg:#0A0A0A;--surface:#141414;--surface-2:#1B1B1B;--surface-3:#232323;--line:#2A2A2A;--line-strong:#3A3A3A;--text:#FFFFFF;--text-2:#EDEDED;--muted:#A6A6A6;--subtle:#8C8C8C;--accent:#FFC20E;--accent-ink:#0A0A0A;--accent-soft:rgba(255,194,14,.12);--accent-line:rgba(255,194,14,.45);--pos:#3FB97A;--pos-soft:rgba(63,185,122,.12);--neg:#F06A5A;--neg-soft:rgba(240,106,90,.12);--info:#6FA8F5;--info-soft:rgba(111,168,245,.12);--focus:0 0 0 3px rgba(255,194,14,.55);--shadow-1:0 1px 0 rgba(255,255,255,.03) inset;--shadow-2:0 12px 32px rgba(0,0,0,.45)}[data-theme=light]{--bg:#F6F6F4;--surface:#FFFFFF;--surface-2:#F2F2F0;--surface-3:#EAEAE7;--line:#E2E2DE;--line-strong:#CFCFCA;--text:#0A0A0A;--text-2:#1F1F1F;--muted:#5E5E5E;--subtle:#6E6E6E;--accent:#FFC20E;--accent-ink:#0A0A0A;--accent-soft:rgba(255,194,14,.18);--accent-line:#C79500;--pos:#1D7F4E;--pos-soft:rgba(29,127,78,.1);--neg:#B83A2C;--neg-soft:rgba(184,58,44,.1);--info:#2D63B8;--info-soft:rgba(45,99,184,.1);--shadow-1:none;--shadow-2:0 12px 32px rgba(0,0,0,.08)}.lp{--r-1:6px;--r-2:10px;--r-3:14px;--r-4:20px;background:var(--bg);color:var(--text);font-family:Archivo,system-ui,sans-serif;font-size:15px;line-height:1.5;font-variation-settings:"wdth" 100;-webkit-font-smoothing:antialiased;min-height:100%}.lp *{box-sizing:border-box}.lp a{color:inherit}.lp :focus-visible{outline:none;box-shadow:var(--focus)}.d1{font-weight:900;font-variation-settings:"wdth" 118;font-size:clamp(40px,5.4vw,76px);line-height:.98;letter-spacing:-.02em}.d1,.d2{margin:0}.d2{font-weight:900;font-variation-settings:"wdth" 115;font-size:clamp(30px,3.4vw,44px);line-height:1.04;letter-spacing:-.015em}.h1{font-weight:800;font-variation-settings:"wdth" 110;font-size:28px;line-height:1.15}.h1,.h2{margin:0}.h2{font-weight:800;font-variation-settings:"wdth" 108;font-size:20px;line-height:1.25}.h3{font-weight:700;font-size:16px;line-height:1.3;margin:0}.body-l{font-size:17px;line-height:1.6}.small{font-size:13px}.serif{font-family:"Instrument Serif",serif;font-style:italic;font-weight:400;color:var(--accent);letter-spacing:0}.mono{font-family:JetBrains Mono,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.label{font-family:JetBrains Mono,monospace;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500}.label,.muted{color:var(--muted)}.accent{color:var(--accent)}.num{font-family:JetBrains Mono,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.shell{display:flex;flex-wrap:wrap;min-height:100%}.side{flex:1 1 248px;max-width:100%;background:var(--surface);border-right:1px solid var(--line);padding:20px 14px;flex-direction:column;gap:4px}.main,.side{display:flex}.main{flex:999 1 560px;min-width:0;flex-direction:column}.topbar{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:14px 28px;border-bottom:1px solid var(--line);background:var(--bg)}.content{padding:28px;display:flex;flex-direction:column;gap:24px;max-width:1360px;width:100%}.row{flex-wrap:wrap;gap:16px;align-items:center}.row,.stack{display:flex}.stack{flex-direction:column;gap:12px}.grid{display:grid;grid-gap:16px;gap:16px}.g2{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.g4{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}.spacer{flex:1 1}.brand{display:flex;align-items:center;gap:10px;padding:6px 10px 18px;text-decoration:none}.brand .dot{width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft),0 0 18px rgba(255,194,14,.55)}.brand b{font-weight:900;font-variation-settings:"wdth" 122;letter-spacing:.04em;font-size:17px}.brand span{font-family:"Instrument Serif",serif;font-style:italic;color:var(--accent);font-size:19px}.nav-sec{padding:16px 10px 6px}.nav{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:var(--r-2);color:var(--text-2);text-decoration:none;font-weight:500;font-size:14.5px}.nav svg{width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.nav:hover{background:var(--surface-2)}.nav.on{background:var(--accent-soft);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent-line)}.nav.on svg{stroke:var(--accent)}.nav .count{margin-left:auto;font-family:JetBrains Mono,monospace;font-size:11px;color:var(--muted)}.crumbs{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--muted);flex-wrap:wrap}.crumbs b{font-weight:600}.btn,.crumbs b{color:var(--text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--r-2);border:1px solid var(--line-strong);background:var(--surface-2);font:600 14.5px Archivo,sans-serif;text-decoration:none;cursor:pointer;white-space:nowrap}.btn:hover{background:var(--surface-3)}.btn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.pri:hover{filter:brightness(1.06)}.btn.ghost{background:transparent;border-color:transparent}.btn.ghost:hover{background:var(--surface-2)}.btn.out{background:transparent}.btn.danger{background:var(--neg-soft);border-color:var(--neg);color:var(--neg)}.btn.sm{min-height:36px;padding:0 12px;font-size:13px}.btn.dis,.btn[disabled]{opacity:.45;cursor:not-allowed}.icon-btn{width:44px;height:44px;padding:0}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{font-size:13px;font-weight:600;color:var(--text-2)}.field .hint{font-size:12.5px;color:var(--muted)}.field .err{font-size:12.5px;color:var(--neg);display:flex;gap:6px;align-items:center}.input,.select{min-height:44px;width:100%;padding:0 14px;border-radius:var(--r-2);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:15px Archivo,sans-serif}.input::placeholder{color:var(--subtle)}.input.money{font-family:JetBrains Mono,monospace;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.input.is-err{border-color:var(--neg);box-shadow:0 0 0 3px var(--neg-soft)}.input.is-ok{border-color:var(--pos)}.money-wrap{position:relative}.money-wrap .cur{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-family:JetBrains Mono,monospace;font-size:12px;color:var(--muted)}.money-wrap .input{padding-left:40px}textarea.input{min-height:120px;padding:12px 14px;line-height:1.55;resize:vertical}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-3);padding:20px;box-shadow:var(--shadow-1);min-width:0}.card.flat{background:transparent}.card.lit{border-color:var(--accent-line);box-shadow:0 0 0 1px var(--accent-line) inset}.card-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.kpi .v{font-family:JetBrains Mono,monospace;font-size:30px;font-weight:600;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi .d{font-size:12.5px;color:var(--muted)}.divider{height:1px;background:var(--line);border:0;margin:0}.badge{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:999px;font:600 11.5px Archivo,sans-serif;border:1px solid var(--line-strong);color:var(--text-2);background:var(--surface-2);white-space:nowrap}.badge svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.badge.acc{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}[data-theme=light] .badge.acc{color:#7A5A00}.badge.pos{background:var(--pos-soft);color:var(--pos)}.badge.neg,.badge.pos{border-color:transparent}.badge.neg{background:var(--neg-soft);color:var(--neg)}.badge.info{background:var(--info-soft);border-color:transparent;color:var(--info)}.badge.mono{font-family:JetBrains Mono,monospace;letter-spacing:.06em}.diff{display:inline-flex;gap:3px;align-items:center}.diff i{width:6px;height:14px;border-radius:2px;background:var(--line-strong);display:block}.diff i.on{background:var(--accent)}.bar{height:8px;background:var(--surface-3);overflow:hidden}.bar,.bar>i{border-radius:999px}.bar>i{display:block;height:100%;background:var(--accent)}.bar.thin{height:4px}.ring{--p:60;width:64px;height:64px;background:conic-gradient(var(--accent) calc(var(--p)*1%),var(--surface-3) 0);place-items:center}.ring,.ring>span{border-radius:50%;display:grid}.ring>span{width:50px;height:50px;background:var(--surface);place-items:center;font:600 13px JetBrains Mono,monospace}.steps{display:flex;gap:6px}.steps i{flex:1 1;height:4px;border-radius:2px;background:var(--surface-3)}.steps i.on{background:var(--accent)}.steps i.cur{background:var(--text)}.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-3)}.tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}.tbl th{font:500 11px JetBrains Mono,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:left;padding:12px 14px;background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap}.tbl th.num{text-align:right}.tbl td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle}.tbl tr:last-child td{border-bottom:0}.tbl tfoot td{background:var(--surface-2);font-weight:700}.tbl tr.me td{background:var(--accent-soft)}.acct{font-family:JetBrains Mono,monospace;font-size:13px;color:var(--accent);font-weight:600}[data-theme=light] .acct{color:#7A5A00}.alert{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--r-2);border:1px solid var(--line-strong);background:var(--surface-2);font-size:14px}.alert svg{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}.alert.pos{border-color:var(--pos);background:var(--pos-soft)}.alert.pos svg{stroke:var(--pos)}.alert.neg{border-color:var(--neg);background:var(--neg-soft)}.alert.neg svg{stroke:var(--neg)}.alert.info{border-color:var(--info);background:var(--info-soft)}.alert.info svg{stroke:var(--info)}.alert.acc{border-color:var(--accent-line);background:var(--accent-soft)}.alert.acc svg{stroke:var(--accent)}.alert b{display:block;margin-bottom:2px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);flex-wrap:wrap}.tab{min-height:44px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--muted);text-decoration:none;margin-bottom:-1px;background:none;border:0;border-bottom:2px solid transparent;cursor:pointer}.tab.on{color:var(--text);border-bottom-color:var(--accent)}.seg{display:inline-flex;padding:4px;border-radius:var(--r-2);background:var(--surface-2);border:1px solid var(--line);gap:2px;flex-wrap:wrap}.seg button{min-height:36px;padding:0 12px;border-radius:7px;border:0;background:none;color:var(--muted);font:600 13px Archivo,sans-serif;cursor:pointer}.seg button.on{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--line-strong)}.chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--line-strong);font-size:13px;font-weight:600;background:transparent;color:var(--text-2);cursor:pointer}.chip.on{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.timer{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:var(--r-2);border:1px solid var(--line-strong);background:var(--surface)}.timer .t{font:600 22px JetBrains Mono,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em}.timer.warn{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.timer.crit{border-color:var(--neg);box-shadow:0 0 0 3px var(--neg-soft)}.timer .src{font:500 10px JetBrains Mono,monospace;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}.rank-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;grid-gap:14px;gap:14px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line)}.rank-row .pos{font:700 15px JetBrains Mono,monospace;text-align:center}.rank-row.top .pos{color:var(--accent)}.rank-row.me{background:var(--accent-soft)}.avatar{width:34px;height:34px;border-radius:50%;background:var(--surface-3);border:1px solid var(--line-strong);display:grid;place-items:center;font:700 12px Archivo,sans-serif;color:var(--text-2);flex:none}.move-up{color:var(--pos)}.move-dn,.move-up{font:600 12px JetBrains Mono,monospace}.move-dn{color:var(--neg)}.task{display:flex;gap:12px;align-items:center;min-height:48px;padding:8px 12px;border-radius:var(--r-2);text-decoration:none;color:var(--text-2);font-size:14px}.task .st{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line-strong);display:grid;place-items:center;flex:none;font:600 11px JetBrains Mono,monospace;color:var(--muted)}.task.done .st{background:var(--pos);border-color:var(--pos);color:#0A0A0A}.task.cur{background:var(--surface-2);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent-line)}.task.cur .st{border-color:var(--accent);color:var(--accent)}.task.lock{opacity:.5}.sk{background:linear-gradient(90deg,var(--surface-2),var(--surface-3),var(--surface-2));background-size:200% 100%;border-radius:8px}.scrim{background:rgba(0,0,0,.6);padding:40px 16px;display:grid;place-items:center;border-radius:var(--r-3)}.modal{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-4);padding:24px;max-width:480px;width:100%}.modal,.toast{box-shadow:var(--shadow-2)}.toast{display:flex;gap:12px;align-items:center;padding:12px 16px;border-radius:var(--r-2);background:var(--surface-3);border:1px solid var(--line-strong);font-size:14px;max-width:420px}.toast .ic{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;flex:none}.toast svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.foot{padding:18px 28px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.sim-ribbon{display:flex;gap:10px;align-items:center;padding:8px 14px;border:1px dashed var(--accent-line);border-radius:var(--r-2);background:var(--accent-soft);font:600 12px JetBrains Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--text)}.sim-ribbon svg{width:16px;height:16px;stroke:var(--accent);fill:none;stroke-width:2}.spec{border:1px dashed var(--line-strong);border-radius:var(--r-2);padding:12px 14px;font-size:12.5px;color:var(--muted);background:transparent}.spec b{color:var(--text-2)}.legend{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.legend i{width:10px;height:10px;border-radius:2px;display:block}@media (max-width:720px){.content{padding:18px}.topbar{padding:12px 18px}.side{border-right:0;border-bottom:1px solid var(--line)}}@media (prefers-reduced-motion:reduce){.lp *{transition:none!important;animation:none!important}}:root{--dur-1:120ms;--dur-2:200ms;--dur-3:320ms;--ease-out:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--font-ui:var(--font-archivo),"Archivo",system-ui,sans-serif;--font-serif:var(--font-instrument),"Instrument Serif",serif;--font-mono:var(--font-jetbrains),"JetBrains Mono",monospace}body,html{margin:0;padding:0;min-height:100%;background:var(--bg)}body.lp{font-family:var(--font-ui)}.lp .serif{font-family:var(--font-serif)}.lp .acct,.lp .badge.mono,.lp .input.money,.lp .kpi .v,.lp .label,.lp .mono,.lp .nav .count,.lp .num,.lp .rank-row .pos,.lp .tbl th,.lp .timer .t{font-family:var(--font-mono)}.lp .badge,.lp .btn,.lp .input,.lp .seg button,.lp .select{font-family:var(--font-ui)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:var(--accent);color:var(--accent-ink);padding:10px 14px;border-radius:var(--r-2);font-weight:700;text-decoration:none}.skip-link:focus{top:12px}.lp [tabindex]:focus-visible,.lp a:focus-visible,.lp button:focus-visible,.lp input:focus-visible,.lp select:focus-visible,.lp textarea:focus-visible{outline:none;box-shadow:var(--focus)}.btn,.chip,.nav,.seg button,.tab,.task{transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.badge{transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.bar>i{transition:width var(--dur-3) var(--ease-out)}h1,h2,h3,p{margin:0}.lp .muted{color:var(--muted)}.lp ul.plain{list-style:none;margin:0;padding:0}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}.input:disabled{opacity:.6;cursor:not-allowed}.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;cursor:pointer;min-height:44px;padding-top:10px}.check input{width:20px;height:20px;accent-color:var(--accent);margin:0;flex:none}.option{display:flex;gap:14px;align-items:center;min-height:52px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:var(--r-2);background:var(--surface);cursor:pointer;text-align:left;color:var(--text);font:15px var(--font-ui);width:100%}.option:hover{background:var(--surface-2)}.option.on{border-color:var(--accent);background:var(--accent-soft)}.option .k{width:28px;height:28px;border-radius:7px;border:1px solid var(--line-strong);display:grid;place-items:center;font:600 13px var(--font-mono);flex:none}.option.on .k{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.option.ok{border-color:var(--pos);background:var(--pos-soft)}.option.bad{border-color:var(--neg);background:var(--neg-soft)}.icon{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.param{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:var(--accent-soft);border-bottom:1px solid var(--accent-line);padding:0 4px;border-radius:4px}.param,.tbc{white-space:nowrap}.tbc{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:1px dashed var(--line-strong);border-radius:6px;padding:1px 6px;margin-left:6px;vertical-align:middle}.prose p{margin:0 0 10px}.prose p:last-child{margin-bottom:0}.prose ul{margin:0 0 10px;padding-left:20px}.prose strong{font-weight:700}.toast-region{position:fixed;right:16px;bottom:16px;z-index:60;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast-region .toast{pointer-events:auto;animation:toast-in var(--dur-3) var(--ease-out)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}dialog.modal-dialog{border:0;padding:0;background:transparent;max-width:calc(100vw - 32px);color:var(--text)}dialog.modal-dialog::-webkit-backdrop{background:rgba(0,0,0,.6)}dialog.modal-dialog::backdrop{background:rgba(0,0,0,.6)}.offline-banner{position:-webkit-sticky;position:sticky;top:0;z-index:40;display:flex;gap:10px;align-items:center;justify-content:center;padding:10px 16px;background:var(--neg-soft);border-bottom:1px solid var(--neg);color:var(--text);font-size:14px}.sk{animation:sk 1.4s ease-in-out infinite}@keyframes sk{0%{background-position:100% 0}to{background-position:-100% 0}}.app-side{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;flex:0 0 248px}.state-box{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:28px}.state-box.center{align-items:center;text-align:center}.journal-cards,.mobile-nav{display:none}.top-search{width:min(320px,100%)}.ex-grid{grid-template-columns:minmax(0,1fr) 300px;grid-gap:24px}.ex-grid,.room-grid{display:grid;gap:24px;align-items:start}.room-grid{grid-template-columns:280px minmax(0,1fr);grid-gap:24px}.stmt-grid{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);grid-gap:20px;gap:20px;align-items:start}.qnav{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:6px;gap:6px}.qnav button{min-height:44px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:600 13px var(--font-mono);cursor:pointer}.qnav button.answered{background:var(--surface-3)}.qnav button.marked{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.qnav button.cur{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.countdown{display:flex;gap:12px;flex-wrap:wrap}.countdown .u{min-width:88px;padding:14px 10px;border:1px solid var(--line-strong);border-radius:var(--r-3);background:var(--surface);text-align:center}.countdown .u b{display:block;font:600 40px var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.countdown.warn .u{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.rank-list .rank-row{transition:transform var(--dur-3) var(--ease-in-out)}@media (max-width:1079px){.ex-grid,.room-grid,.stmt-grid{grid-template-columns:minmax(0,1fr)}.app-side{position:static;height:auto;flex:1 1 100%}}@media (max-width:719px){.app-side{display:none}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a{min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:11px;font-weight:600;color:var(--muted);text-decoration:none}.mobile-nav a.on{color:var(--text)}.mobile-nav a.on .icon{stroke:var(--accent)}.main{padding-bottom:72px}.journal-table{display:none}.journal-cards{display:flex;flex-direction:column;gap:12px}.top-search{display:none}.countdown .u{min-width:68px}.countdown .u b{font-size:30px}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.lp .plain{list-style:none;margin:0;padding:0}.app-side{position:static;height:auto;align-self:stretch}.topbar .crumbs{flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow:hidden;white-space:nowrap}.topbar .crumbs>span{flex:none}.topbar .crumbs>span:last-child{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.topbar.app-top .spacer{flex:0 0}.mobile-brand{display:none}@media (min-width:720px){.topbar{flex-wrap:nowrap}}@media (max-width:719px){.g4{grid-template-columns:1fr 1fr}.mobile-brand{display:flex;padding:0}.topbar .crumbs{display:none}}.topbar .crumbs .row,.topbar .row{flex-wrap:nowrap}.top-search{flex:0 1 320px;min-width:160px}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes grow-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes draw{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}@keyframes pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.08);opacity:1}to{transform:scale(1)}}@keyframes glow{0%,to{box-shadow:0 0 0 5px var(--accent-soft),0 0 14px rgba(255,194,14,.45)}50%{box-shadow:0 0 0 7px var(--accent-soft),0 0 26px rgba(255,194,14,.7)}}@keyframes ring-fill{0%{--p:0}}@property --p{syntax:"<number>";inherits:false;initial-value:0}main.content>*{animation:fade-up var(--dur-3) var(--ease-out) both}main.content>:nth-child(2){animation-delay:40ms}main.content>:nth-child(3){animation-delay:80ms}main.content>:nth-child(4){animation-delay:.12s}main.content>:nth-child(5){animation-delay:.16s}main.content>:nth-child(n+6){animation-delay:.2s}.card{transition:border-color var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.card.hoverable:hover,a.card:hover{transform:translateY(-2px);border-color:var(--line-strong);box-shadow:var(--shadow-2)}.btn{transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),transform var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.btn:not([disabled]):hover{transform:translateY(-1px)}.btn:not([disabled]):active{transform:translateY(0) scale(.98)}.btn.pri:not([disabled]):hover{box-shadow:0 6px 20px rgba(255,194,14,.28)}.task{transition:background var(--dur-1) var(--ease-out),transform var(--dur-2) var(--ease-out)}a.task:hover{transform:translateX(2px)}.bar>i{transform-origin:left;animation:grow-x .7s var(--ease-out) both}.ring{animation:ring-fill .9s var(--ease-out) both}.badge.pos svg path,.task.done .st svg path{stroke-dasharray:24;animation:draw var(--dur-2) var(--ease-out) both}.task.done .st{animation:pop var(--dur-3) var(--ease-out) both}.brand .dot{animation:glow 3.2s ease-in-out infinite}.alert{animation:fade-up var(--dur-2) var(--ease-out) both}.badge{animation:fade-in var(--dur-2) var(--ease-out) both}.modal{animation:fade-up var(--dur-3) var(--ease-out) both}dialog.modal-dialog::-webkit-backdrop{animation:fade-in var(--dur-3) var(--ease-out) both}dialog.modal-dialog::backdrop{animation:fade-in var(--dur-3) var(--ease-out) both}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}.reveal.in{opacity:1;transform:none}.reveal.in .stagger>*{animation:fade-up .5s var(--ease-out) both}.reveal.in .stagger>:nth-child(2){animation-delay:70ms}.reveal.in .stagger>:nth-child(3){animation-delay:.14s}.reveal.in .stagger>:nth-child(4){animation-delay:.21s}.reveal.in .stagger>:nth-child(5){animation-delay:.28s}.reveal.in .stagger>:nth-child(6){animation-delay:.35s}.hero-line{display:block;animation:fade-up .7s var(--ease-out) both}.hero-line:nth-child(2){animation-delay:.12s}.hero-sub{animation:fade-up .7s var(--ease-out) .24s both}.hero-cta{animation:fade-up .7s var(--ease-out) .36s both}.demo{animation:fade-up .8s var(--ease-out) .3s both}.demo .tbl tbody tr{animation:fade-up .5s var(--ease-out) both}.demo .tbl tbody tr:first-child{animation-delay:.7s}.demo .tbl tbody tr:nth-child(2){animation-delay:1s}.demo .tbl tbody tr:nth-child(3){animation-delay:1.3s}.demo .alert{animation:fade-up .5s var(--ease-out) 1.75s both}.demo .badge-balance{animation:pop .4s var(--ease-out) 1.6s both}.public-top{position:-webkit-sticky;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);background:color-mix(in srgb,var(--bg) 82%,transparent)}.foot a{color:var(--muted);text-decoration:none}.foot a:hover{color:var(--text)}@media (max-width:719px){.public-top .public-nav{display:none}.public-top{gap:8px}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}.notif-btn,.notif-wrap{position:relative}.notif-count{position:absolute;top:6px;right:5px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--accent);color:var(--accent-ink);font-size:10.5px;font-weight:700;display:grid;place-items:center;line-height:1}.notif-panel{position:absolute;right:0;top:calc(100% + 8px);width:min(380px,calc(100vw - 24px));padding:0;z-index:60;box-shadow:var(--shadow-2);overflow:hidden}.notif-list{list-style:none;margin:0;padding:0;max-height:min(440px,70vh);overflow:auto}.notif-list li+li{border-top:1px solid var(--line)}.notif-item{display:grid;grid-template-columns:32px 1fr auto;grid-gap:10px;gap:10px;align-items:start;width:100%;padding:12px 14px;text-align:left;background:none;border:0;color:inherit;text-decoration:none;cursor:pointer;min-height:44px;font:inherit}.notif-item:hover{background:var(--surface-2)}.notif-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.notif-ic{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);color:var(--muted)}.unread .notif-ic{background:var(--accent-soft);color:var(--accent)}.notif-title{font-size:14px;line-height:1.35}.notif-body{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.notif-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);margin-top:6px}.stars{display:inline-flex;gap:2px;align-items:center}.stars .icon.star{color:var(--line-strong)}.stars .icon.star.on{color:var(--accent);fill:var(--accent)}.star-btn{width:44px;height:44px;display:grid;place-items:center;border:0;background:none;border-radius:var(--r-2);color:var(--line-strong);cursor:pointer}.star-btn .icon{width:26px;height:26px}.star-btn.on{color:var(--accent)}.star-btn.on .icon{fill:var(--accent)}.star-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:no-preference){.star-btn:hover .icon{transform:scale(1.12);transition:transform var(--dur-1,.12s) var(--ease-out,ease-out)}}.recovery-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin:0;padding:14px 14px 14px 34px;border:1px dashed var(--line-strong);border-radius:var(--r-2);background:var(--surface-2);font-size:15px;letter-spacing:.06em}.legal h2{margin-top:14px}.legal ul{margin:0;padding-left:20px;display:grid;grid-gap:6px;gap:6px}.legal li,.legal p{line-height:1.6}.stats-band{padding:22px 24px;border:1px solid var(--line);border-radius:var(--r-4);background:var(--surface)}.stat-v{font-size:clamp(30px,3.6vw,46px);font-weight:700;line-height:1;color:var(--text)}.photo-frame{border-radius:var(--r-4);overflow:hidden;border:1px solid var(--line);background:var(--surface-2)}.photo-frame img{display:block}.steps{counter-reset:none;margin:0}.step-n{color:var(--accent);font-size:13px;letter-spacing:.12em}.faq details{padding:0}.faq summary{cursor:pointer;padding:16px 18px;min-height:44px;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--font-mono,monospace);color:var(--accent)}.faq details[open] summary:after{content:"−"}.faq details>p{padding:0 18px 16px}.faq summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--r-3)}.credits{margin:-40px 0 0;text-align:center;font-size:11px;color:var(--muted);opacity:.55;letter-spacing:.02em}.password-wrap{position:relative}.password-wrap .password-input{padding-right:52px}.password-toggle{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:44px;height:44px;display:grid;place-items:center;border:0;background:none;color:var(--muted);cursor:pointer;border-radius:var(--r-2)}.password-toggle:hover{color:var(--text)}.password-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.tbl td.actions-cell{white-space:nowrap;text-align:right;width:1%}