@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");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{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--canvas:#fbfbfa;--surface:#fff;--ink:#16181b;--text:#26292d;--soft:#4a4e54;--muted:#6b6f76;--faint:#8b8f96;--line:#e6e6e2;--hover:#f4f4f1;--accent:#1f4fd1;--on-accent:#fff;--primary:#16181b;--on-primary:#fff;--green:#2f6b3a;--tint-green:#edf3ec;--blue:#1f4fd1;--tint-blue:#e8eefc;--red:#a62f2d;--tint-red:#fdebec;--yellow:#8f6100;--tint-yellow:#fbf3db;--purple:#5b4bb4;--tint-purple:#efedfa;--bg:var(--canvas);--font:"Geist Variable",system-ui,-apple-system,"Segoe UI",sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--canvas:#101214;--surface:#17191c;--ink:#eeeff0;--text:#d9dbde;--soft:#b3b6bb;--muted:#92969c;--faint:#6f7379;--line:#2a2d31;--hover:#1e2024;--accent:#86a3ff;--on-accent:#0e1116;--primary:#eeeff0;--on-primary:#101214;--green:#7fcb8c;--tint-green:#16271b;--blue:#86a3ff;--tint-blue:#171f35;--red:#f08a88;--tint-red:#2c1718;--yellow:#e3b54d;--tint-yellow:#2a2312;--purple:#a99bf0;--tint-purple:#201c38}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);min-height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-weight:500}a{color:inherit;text-decoration:none}button,input,select{font-family:inherit}button{cursor:pointer}.ic{flex:none;display:block}h1{color:var(--ink);margin:0;font-size:24px;font-weight:650;line-height:32px}h2,h3{margin:0}.page{max-width:984px;margin:0 auto;padding:20px}.page.center{text-align:center}.page.has-tabs{padding-bottom:112px}.page.with-foot{padding-bottom:124px}.lead{max-width:520px;color:var(--muted);text-align:center;margin:12px auto 0;font-size:14px;font-weight:500;line-height:22.75px}.lead.left{text-align:left;margin:6px 0 0}.body{color:var(--muted);margin:0;font-size:14px;line-height:22.75px}.sec-title{color:var(--ink);text-align:left;margin:28px 0 12px;font-size:18px;font-weight:500;line-height:28px}.stack{flex-direction:column;gap:8px;display:flex}.empty{text-align:center;color:var(--muted);grid-column:1/-1;padding:30px;font-weight:500}.bar{z-index:5;background:var(--bg);align-items:center;gap:10px;padding:12px 20px;display:flex;position:sticky;top:0}.bar h2{min-width:0;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:18px;font-weight:500;line-height:28px;overflow:hidden}.bar.test{gap:12px}.bar.test .progress{flex:1;margin:0}.count{color:var(--muted);white-space:nowrap;font-size:14px;font-weight:500}.icon-btn{border:1px solid var(--line);width:40px;height:40px;color:var(--soft);background:0 0;border-radius:8px;flex:none;place-items:center;display:grid}.icon-btn:active{transform:scale(.96)}.lang-pill{border:1px solid var(--line);height:40px;color:var(--blue);border-radius:8px;flex:none;align-items:center;gap:6px;padding:0 10px;display:flex}.lang-pill select{color:var(--soft);appearance:none;cursor:pointer;background:0 0;border:0;outline:0;font-size:13px;font-weight:500}.lang-pill option{background:var(--surface);color:var(--text)}.tile-ico{--s:56px;width:var(--s);height:var(--s);border-radius:calc(var(--s)*.35);flex:none;place-items:center;max-width:100%;display:grid}.tile-ico.green{background:var(--tint-green);color:var(--green)}.tile-ico.blue{background:var(--tint-blue);color:var(--blue)}.tile-ico.red{background:var(--tint-red);color:var(--red)}.tile-ico.yellow{background:var(--tint-yellow);color:var(--yellow)}.tile-ico.purple{background:var(--tint-purple);color:var(--purple)}.ob{max-width:1024px;margin:0 auto;padding:24px 20px 150px}.segs{gap:6px;display:flex}.segs i{background:var(--line);border-radius:99px;flex:1;height:6px;transition:background .25s}.segs i.on{background:var(--green)}.ob-help{justify-content:flex-end;margin-top:18px;display:flex}.ob-help a{color:var(--faint);align-items:center;gap:6px;padding:0 4px;font-size:12px;font-weight:500;line-height:16px;display:flex}.ob-help .ic{color:var(--blue)}.ob-body{text-align:center;margin-top:26px}.ob-hero{margin-bottom:12px;display:inline-block;position:relative}.ob-hero.big{margin:8px 0 24px}.badge{width:40px;height:40px;color:var(--ink);border-radius:12px;place-items:center;display:grid;position:absolute}.badge.green{background:var(--green)}.badge.blue{background:var(--blue)}.badge.tr{top:-8px;right:-8px}.badge.br{bottom:-8px;right:-8px}.choices{text-align:left;flex-direction:column;gap:8px;margin-top:40px;display:flex}.choice{border:1px solid var(--line);background:var(--bg);width:100%;height:72px;color:var(--ink);border-radius:12px;align-items:center;gap:16px;padding:0 18px;font-size:18px;line-height:28px;display:flex}.choice b{text-align:left;flex:1;font-weight:500}.choice .flag{font-size:30px;line-height:36px}.choice.on{border-color:var(--green);background:var(--tint-green)}.choice-ok{background:var(--green);width:24px;height:24px;color:var(--ink);border-radius:50%;flex:none;place-items:center;display:grid}.stat-row{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;display:grid}.stat{border:1px solid var(--line);text-align:center;background:var(--bg);border-radius:12px;min-width:0;padding:12px 6px}.stat b{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:20px;font-weight:650;line-height:28px;display:block;overflow:hidden}.stat small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:500;line-height:16px;display:block}.stat-row.purple .stat b{color:var(--purple)}.stat.green b{color:var(--green)}.stat.red b{color:var(--red)}.stat.blue b{color:var(--blue)}.promo{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:12px;align-items:center;gap:16px;margin-top:24px;padding:16px;display:flex}.promo>span:not(.tile-ico):not(.choice-ok){flex:1;min-width:0}.promo b{color:var(--ink);font-size:18px;font-weight:650;line-height:24px;display:block}.promo small{color:var(--soft);margin-top:2px;font-size:14px;font-weight:500;line-height:20px;display:block}.promo.hero{margin-top:20px;transition:transform 80ms}.promo.hero:active{transform:scale(.99)}.btn{background:var(--green);min-height:60px;box-shadow:none;color:var(--ink);-webkit-user-select:none;user-select:none;border:1px solid #fff3;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:0 24px;font-size:16px;font-weight:650;line-height:24px;transition:transform 80ms,box-shadow 80ms;display:flex}.btn:disabled{opacity:.4;cursor:default}.btn.sec{background:var(--surface);border-color:var(--line);box-shadow:none;color:var(--soft);font-weight:600}.btn.sec:active:not(:disabled){transform:scale(.98)}.btn.red{background:var(--red);box-shadow:none}.btn.blue{background:var(--blue);box-shadow:none}.btn.grow{flex:1;min-width:0}.btn.wide{width:100%;margin-top:24px}.btn-row{gap:12px;display:flex}.btn-row .btn{flex:1;min-width:0;padding:0 12px}.foot{z-index:6;padding:16px 20px calc(24px + env(safe-area-inset-bottom));background:var(--canvas);border-top:1px solid var(--line);position:fixed;bottom:0;left:0;right:0}.foot-in{gap:12px;max-width:632px;margin:0 auto;display:flex}.tabs{z-index:6;background:var(--bg);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0}.tabs-in{max-width:632px;margin:0 auto;padding:8px 8px 6px;display:flex}.tab{min-width:0;color:var(--faint);border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 2px;font-size:11px;font-weight:600;line-height:14px;display:flex}.tab span{white-space:nowrap}.home-top{align-items:flex-start;gap:12px;display:flex}.home-top>div:first-child{flex:1;min-width:0}.home-actions{gap:8px;display:flex}.progress{background:var(--line);border-radius:99px;height:8px;margin:16px 0 0;overflow:hidden}.progress i{background:var(--green);border-radius:99px;height:100%;transition:width .25s;display:block}.row-card{border:1px solid var(--line);background:var(--bg);border-radius:12px;align-items:center;gap:14px;min-width:0;min-height:80px;padding:12px;transition:transform 80ms,background .15s;display:flex}a.row-card:active{transform:scale(.985)}a.row-card:hover{background:var(--hover)}.row-txt{flex:1;min-width:0}.row-txt b{color:var(--ink);font-size:16px;font-weight:500;line-height:22px;display:block}.row-txt small{color:var(--muted);margin-top:2px;font-size:13px;font-weight:500;line-height:18px;display:block}.row-go{color:var(--faint);flex:none}.num-tile{background:var(--tint-green);width:48px;height:48px;color:var(--green);border-radius:12px;flex:none;place-items:center;font-size:18px;font-weight:650;display:grid}.tkt-sum{color:var(--muted);align-items:baseline;gap:6px;font-size:14px;font-weight:500;display:flex}.tkt-sum b{color:var(--ink);font-size:24px;font-weight:650}.grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:12px;margin-top:20px;display:grid}.tile{border:1px solid var(--line);background:var(--bg);text-align:center;border-radius:12px;padding:14px 6px;transition:transform 80ms}.tile:active{transform:scale(.97)}.tile b{color:var(--ink);font-size:20px;font-weight:650;line-height:28px;display:block}.tile small{color:var(--muted);margin-top:2px;font-size:12px;font-weight:500;line-height:16px;display:block}.tile.full{border-color:var(--green);background:var(--tint-green)}.tile.full b{color:var(--green)}.tile.part{border-color:var(--yellow);background:var(--tint-yellow)}.tile.part b{color:var(--yellow)}.timer{background:var(--tint-yellow);height:40px;color:var(--yellow);font-variant-numeric:tabular-nums;border-radius:8px;align-items:center;gap:4px;padding:0 10px;font-size:14px;font-weight:650;display:flex}.nav{scrollbar-width:none;gap:8px;max-width:984px;margin:0 auto;padding:4px 20px 12px;display:flex;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.n{border:1px solid var(--line);background:var(--bg);width:44px;height:44px;color:var(--soft);border-radius:12px;flex:none;font-size:15px;font-weight:600}.n.ok{border-color:var(--green);background:var(--tint-green);color:var(--green)}.n.no{border-color:var(--red);background:var(--tint-red);color:var(--red)}.qbox{max-width:760px;margin:0 auto;padding:0 20px 130px}.qmeta{color:var(--faint);margin:0 0 8px;font-size:12px;font-weight:500;line-height:16px}.qimg{object-fit:contain;border:1px solid var(--line);background:var(--surface);cursor:zoom-in;border-radius:12px;width:100%;max-height:300px;display:block}.lb{width:100%;max-width:none;height:100%;max-height:none;color:var(--text);background:0 0;border:0;padding:12px}.lb[open]{justify-content:center;align-items:center;display:flex}.lb::backdrop{background:#000000bf}.lb-card{border:1px solid var(--line);background:var(--bg);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:8px;width:min(720px,100%);max-height:100%;padding:24px;display:flex;position:relative;overflow:auto}.lb-img{object-fit:contain;width:100%;max-height:60vh;display:block}.lb-title{color:var(--ink);font-size:24px;font-weight:650}.lb-sub{color:var(--soft);font-size:16px;font-weight:500}.lb-text{color:var(--muted);margin:0;font-size:14px;line-height:22px}.lb-x{position:absolute;top:12px;right:12px}.lb-nav{color:var(--muted);align-items:center;gap:16px;font-weight:600;display:flex}.lb-nav button:disabled{opacity:.35;cursor:default}.qtext{color:var(--ink);margin:16px 0;font-size:18px;font-weight:500;line-height:26px}.opts{flex-direction:column;gap:8px;display:flex}.opt{border:1px solid var(--line);background:var(--bg);width:100%;min-height:64px;color:var(--text);text-align:left;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;font-size:15px;font-weight:500;line-height:21px;transition:transform 80ms;display:flex}.opt:active:not(:disabled){transform:scale(.99)}.opt:disabled{cursor:default}.opt .t{flex:1;min-width:0}.opt .num{background:var(--surface);width:32px;height:32px;color:var(--muted);border-radius:12px;flex:none;place-items:center;font-size:12px;font-weight:650;display:grid}.opt.sel{border-color:var(--blue);background:var(--tint-blue);color:var(--ink)}.opt.sel .num{background:var(--blue);color:var(--ink);border-radius:50%}.opt.ok{border-color:var(--green);background:var(--tint-green);color:var(--ink)}.opt.ok .num{background:var(--green);color:var(--ink);border-radius:50%}.opt.no{border-color:var(--red);background:var(--tint-red);color:var(--ink)}.opt.no .num{background:var(--red);color:var(--ink);border-radius:50%}.opt.dim{opacity:.6}.review{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.sheet-wrap{z-index:50;background:#0009;justify-content:center;align-items:flex-end;animation:.15s fade;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:632px;padding:24px 20px calc(30px + env(safe-area-inset-bottom));background:var(--bg);border:1px solid var(--line);text-align:center;border-bottom:0;border-radius:12px 28px 0 0;animation:.2s up}.sheet h3{color:var(--ink);font-size:20px;font-weight:650;line-height:28px}.sheet p{color:var(--muted);margin:8px 0 20px;font-size:14px;line-height:22px}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes up{0%{transform:translateY(30px)}to{transform:none}}.search{border:1px solid var(--line);height:56px;color:var(--faint);border-radius:12px;align-items:center;gap:10px;padding:0 16px;display:flex}.search input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:15px;font-weight:500}.search input::placeholder{color:var(--faint)}.chips{scrollbar-width:none;gap:8px;margin:12px -20px 0;padding:0 20px 4px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line);height:40px;color:var(--soft);white-space:nowrap;background:0 0;border-radius:8px;flex:none;padding:0 14px;font-size:13px;font-weight:500}.signs{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:16px;display:grid}.sign{border:1px solid var(--line);background:var(--bg);text-align:center;color:var(--muted);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;font-size:12px;font-weight:500;line-height:16px;transition:border-color .12s;display:flex}.sign img{object-fit:contain;max-width:100%;height:80px;margin-bottom:6px}.sign b{color:var(--ink);font-size:14px;font-weight:650}.select-wrap{margin-top:12px;display:block}.select-wrap select{border:1px solid var(--line);background:var(--bg);width:100%;height:56px;color:var(--ink);border-radius:12px;padding:0 14px;font-size:14px;font-weight:600}.prose{max-width:760px;color:var(--text);margin:16px auto 0;font-size:15px;font-weight:500;line-height:24px}.prose h3{color:var(--ink);font-size:18px;font-weight:650;line-height:26px}.prose small{color:var(--blue);font-weight:600}.note{border:1px solid var(--line);color:var(--soft);border-radius:12px;margin-bottom:12px;padding:16px;font-size:14px;line-height:22px}.note>b{color:var(--ink);font-size:16px;font-weight:650}.note p{margin:6px 0 0}.note.blue{border-color:var(--line);background:var(--tint-blue)}.note.yellow{border-color:var(--line);background:var(--tint-yellow)}.pens{border:1px solid var(--line);border-radius:12px;overflow:hidden}.pen{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 14px;font-size:14px;line-height:20px;display:flex}.pen:last-child{border-bottom:0}.pen-n{width:26px;color:var(--faint);flex:none;font-weight:600}.pen-t{min-width:0;color:var(--text);flex:1}.pen-t em{color:var(--muted);font-style:normal}.pen>b{background:var(--tint-yellow);min-width:40px;color:var(--yellow);text-align:center;border-radius:10px;flex:none;padding:2px 8px;font-weight:650}.pen.bad>b{background:var(--tint-red);color:var(--red)}@media (width>=768px){.stack.two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.choices{max-width:none}}.topnav{z-index:7;background:var(--bg);border-bottom:1px solid var(--line);display:none;position:sticky;top:0}.topnav-in{align-items:center;gap:6px;max-width:1120px;margin:0 auto;padding:8px 20px;display:flex}.tn-brand{color:var(--green);align-items:center;gap:8px;margin-right:14px;font-size:17px;font-weight:650;display:flex}.tn-link{height:38px;color:var(--muted);white-space:nowrap;border-radius:8px;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:500;display:flex}.tn-link:hover{color:var(--ink)}.tn-link.on{color:var(--green);background:var(--tint-green)}.tn-gap{flex:1}@media (width>=900px){.topnav{display:block}.tabs{display:none}.page.has-tabs{padding-bottom:48px}.bar{position:static}.page{max-width:1120px}}.page.narrow{max-width:720px}.home-progress{border:1px solid var(--line);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px}.hp-days{color:var(--muted);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:600;display:flex}.hp-streak{color:var(--yellow);align-items:center;gap:4px;font-size:13px;font-weight:650;display:flex}.hp-mid{margin-top:4px}.hp-mid>b{color:var(--ink);font-size:26px;font-weight:650;line-height:32px}.hp-count{gap:10px;font-size:12px;font-weight:600;display:flex}.hp-count em{color:var(--green);align-items:center;gap:3px;font-style:normal;display:flex}.hp-count i{color:var(--muted);font-style:normal}.home-progress .progress{margin-top:8px}.grid-2,.grid-3,.grid-heroes{gap:12px;margin-top:14px;display:grid}.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.grid-heroes{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.home-card{border-bottom-width:1px;min-height:68px;padding:10px 12px}.hero-card{min-height:96px;color:var(--ink);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;transition:transform 80ms;display:flex}.hero-card:active{transform:translateY(4px)}.hero-card b{font-size:22px;font-weight:650;line-height:28px;display:block}.hero-card small{opacity:.92;margin-top:2px;font-size:13px;font-weight:500;display:block}.hero-card i{background:#fff;border-radius:50%;flex:none;place-items:center;width:52px;height:52px;display:grid}.hero-card.blue{background:var(--blue);box-shadow:none}.hero-card.blue i{color:var(--blue)}.hero-card.green{background:var(--green);box-shadow:none}.hero-card.green i{color:var(--green)}.home-foot{justify-content:flex-end;margin-top:16px;display:flex}.date-in{border:1px solid var(--line);background:var(--bg);width:100%;height:56px;color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:12px;margin-bottom:16px;padding:0 14px;font-size:16px;font-weight:500}.sec-title.small{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:22px 0 10px;font-size:13px;font-weight:650;line-height:18px}.topic-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.topic{border:1px solid var(--line);background:var(--bg);border-radius:12px;flex-direction:column;gap:3px;min-height:76px;padding:12px 14px 16px;display:flex;position:relative;overflow:hidden}.topic:hover{background:var(--hover)}.topic b{color:var(--ink);font-size:14px;font-weight:500;line-height:19px}.topic small{color:var(--muted);font-size:12px;font-weight:500}.topic-bar{background:var(--line);height:4px;position:absolute;bottom:0;left:0;right:0}.topic-bar i{background:var(--green);height:100%;display:block}.stack.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;display:grid}.grid.wide{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.module{margin-top:22px}.module-head{background:var(--red);box-shadow:none;color:var(--ink);border-radius:12px;padding:14px 16px}.module:nth-of-type(3n+1) .module-head{background:var(--blue);box-shadow:none}.module:nth-of-type(3n+2) .module-head{background:var(--purple);box-shadow:none}.module-head small{opacity:.9;text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:500;display:block}.module-head b{font-size:18px;font-weight:650;line-height:24px;display:block}.path{border-left:3px dashed var(--line);flex-direction:column;gap:8px;margin:12px 0 0 22px;padding-left:20px;display:flex;position:relative}.path-step{border:1px solid var(--line);background:var(--bg);min-height:56px;color:var(--muted);border-radius:12px;align-items:center;gap:12px;padding:8px 12px;display:flex}.path-step:hover{background:var(--hover)}.path-dot{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--ink);border-radius:50%;flex:none;place-items:center;margin-left:-42px;font-size:14px;font-weight:650;display:grid}.path-step{margin-left:0}.path-step.seen .path-dot{background:var(--green);border-color:var(--green)}.path-txt{min-width:0;color:var(--ink);flex:1;margin-left:14px;font-size:14px;font-weight:600;line-height:19px}.cheat{border:1px solid var(--line);border-radius:12px;margin-top:14px;overflow:hidden}.cheat-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.cheat-row:last-child{border-bottom:0}.cheat-k{min-width:0;color:var(--soft);flex:1;font-size:14px;font-weight:500;line-height:20px}.cheat-k small{color:var(--faint);font-size:11px;font-weight:500;display:block}.cheat-row>b{color:var(--green);white-space:nowrap;flex:none;font-size:15px;font-weight:650}.hit{border:1px solid var(--line);background:var(--bg);color:var(--soft);border-radius:12px;padding:12px 14px;font-size:14px;font-weight:500;line-height:21px;display:block}a.hit:hover{background:var(--hover)}.hit small{color:var(--blue);font-weight:600}.hit mark{background:var(--tint-yellow);color:var(--yellow);border-radius:4px;padding:0 2px}.link{color:var(--blue);font-weight:600}@media (width>=900px){.qbox{max-width:1120px}.qbox.has-img{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:24px;display:grid}.q-right{position:sticky;top:76px}.q-right .qimg{max-height:calc(100vh - 220px)}.bar.test,.nav{max-width:1120px;margin-left:auto;margin-right:auto}.qtext{margin-top:0}}html,body{letter-spacing:-.005em;font-size:16px;font-weight:400}h1{letter-spacing:-.02em;color:var(--ink);font-weight:600}.page{max-width:1080px}.btn{background:var(--primary);min-height:48px;color:var(--on-primary);box-shadow:none;border:0;border-radius:8px;font-size:15px;font-weight:550;transition:background .15s,transform .1s}.btn:hover:not(:disabled){opacity:.9}.btn:active:not(:disabled){box-shadow:none;transform:scale(.985)}.btn.sec{border:1px solid var(--line);color:var(--ink);background:0 0;font-weight:500}.btn.sec:hover:not(:disabled){background:var(--hover);opacity:1}.btn.red{background:var(--red);color:#fff}.btn.blue{background:var(--accent);color:var(--on-accent)}.btn.danger{color:var(--red)}.icon-btn{border:1px solid var(--line);color:var(--soft);border-radius:8px}.icon-btn:hover{background:var(--hover)}.icon-btn.saved{color:var(--accent);border-color:var(--accent)}.tile-ico{border-radius:8px}.tile-ico[style*="128px"],.tile-ico[style*="80px"]{border-radius:16px}.tile-ico.plain{background:var(--surface);border:1px solid var(--line);color:var(--ink)}.badge{color:var(--on-accent);background:var(--accent)!important}.segs i.on,.progress i{background:var(--accent)}.progress{background:var(--line);height:6px}.progress.thin{height:6px}.row-card{background:var(--surface);min-height:64px;transition:background .15s}.tab.on{color:var(--ink);background:0 0}.tabs{background:var(--surface)}.tn-link{color:var(--muted);border-radius:8px}.tn-link:hover,.tn-link.on{color:var(--ink);background:var(--hover)}.topnav{background:color-mix(in srgb,var(--canvas) 88%,transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.tn-brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:8px;margin-right:14px;font-size:17px;font-weight:650;display:flex}.tn-brand .ic{color:var(--accent)}.n{background:var(--surface);border-radius:8px;width:40px;height:40px;font-size:14px;font-weight:500}.n.cur{border-color:var(--ink);color:var(--ink);background:var(--surface)}.n.cur.ok,.n.cur.no,.n.cur.done{box-shadow:0 0 0 1px var(--ink)}.n.done{background:var(--hover);color:var(--ink)}.opt{background:var(--surface);border-radius:10px;min-height:56px;font-weight:450}.opt:hover:not(:disabled){background:var(--hover)}.opt .num{background:var(--hover);border-radius:6px;font-weight:550}.opt.sel,.opt.ok,.opt.no{color:var(--ink)}.opt.sel{border-color:var(--ink)}.opt.sel .num{background:var(--ink);color:var(--canvas)}.opt.ok .num{background:var(--green);color:var(--canvas)}.opt.no .num{background:var(--red);color:var(--canvas)}.qtext{letter-spacing:-.01em;color:var(--ink);font-weight:550}.qimg{border-radius:12px}.timer{border-radius:8px}.tile{background:var(--surface)}.tile:hover{background:var(--hover)}.stat{background:var(--surface)}.stat b{font-variant-numeric:tabular-nums;font-weight:600}.sign{background:var(--surface)}.sign:hover{border-color:var(--ink)}.chip.on{border-color:var(--ink);background:var(--ink);color:var(--canvas)}.promo,.note.blue,.note.yellow{background:var(--surface)}.sec-title{letter-spacing:-.01em;font-weight:600}.sec-title.small{color:var(--muted);text-transform:none;letter-spacing:0;font-size:14px;font-weight:500}.module-head,.module:nth-of-type(3n+1) .module-head,.module:nth-of-type(3n+2) .module-head{background:var(--surface);border:1px solid var(--line);color:var(--ink);box-shadow:none}.module-head small{color:var(--muted);text-transform:none;letter-spacing:0;opacity:1;font-size:12px;font-weight:500}.path{border-left:1px solid var(--line)}.path-dot{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.path-step.seen .path-dot{background:var(--ink);border-color:var(--ink);color:var(--canvas)}.sheet,.lb-card{background:var(--surface)}.date-in{background:var(--surface);color:var(--ink)}.search{background:var(--surface);border-radius:10px;height:48px}.search:focus-within{border-color:var(--ink)}.search input{color:var(--ink)}.foot{padding-top:12px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ui-select{width:100%;position:relative}.ui-select-btn{border:1px solid var(--line);background:var(--surface);width:100%;height:48px;color:var(--ink);font:500 14px var(--font);cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;transition:background .15s;display:flex}.ui-select-btn:hover{background:var(--hover)}.ui-select-btn svg{color:var(--muted);flex:none;transition:transform .16s}.ui-select.open .ui-select-btn svg{transform:rotate(180deg)}.ui-select-list{background:var(--surface);border:1px solid var(--line);z-index:30;border-radius:10px;max-height:300px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 12px 32px #0000001f}.ui-select.up .ui-select-list{top:auto;bottom:calc(100% + 4px)}.ui-select-list li{color:var(--soft);cursor:pointer;border-radius:6px;padding:9px 10px;font-size:14px}.ui-select-list li.hot,.ui-select-list li:hover{background:var(--hover);color:var(--ink)}.ui-select-list li[aria-selected=true]{color:var(--ink);font-weight:550}.ui-select.small{width:auto;min-width:104px}.ui-select.small .ui-select-btn{height:40px}.ui-select.small .ui-select-list{min-width:120px;left:auto}.dash{grid-template-columns:1fr;gap:12px;display:grid}.dash-main{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;gap:18px;padding:24px;display:flex}.dash-head{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.dash-head button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:flex}.dash-head button:hover{color:var(--ink)}.dash-streak{color:var(--ink);align-items:center;gap:5px;font-weight:500;display:flex}.dash-pct{align-items:baseline;gap:12px;display:flex}.dash-pct b{letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums;font-size:56px;font-weight:600;line-height:1}.dash-pct span{color:var(--muted);font-size:14px;line-height:1.4}.dash-main .progress{margin:0}.dash-actions{flex-wrap:wrap;gap:8px;display:flex}.dash-actions .btn{flex:150px}.dash-sim{border:1px solid var(--line);color:#fff;background:#20262b 50%/cover no-repeat;border-radius:12px;flex-direction:column;justify-content:flex-end;min-height:220px;transition:transform .2s;display:flex;position:relative;overflow:hidden}.dash-sim:after{content:"";background:linear-gradient(#080a0c00 38%,#080a0cb8);position:absolute;inset:0}.dash-sim>span{z-index:1;padding:20px 22px;position:relative}.dash-sim b{letter-spacing:-.02em;font-size:22px;font-weight:600;display:block}.dash-sim small{color:#ffffffd1;margin-top:3px;font-size:14px;display:block}.dash-sim:hover{transform:translateY(-1px)}.dash-quick{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.quick{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;gap:14px;padding:16px;transition:background .15s;display:flex}.quick:hover{background:var(--hover)}.quick b{color:var(--ink);font-size:15px;font-weight:550}.quick small{color:var(--muted);margin-top:2px;font-size:13px;display:block}.dash-lists{grid-template-columns:1fr;gap:28px;margin-top:36px;display:grid}.dash-list h3{color:var(--muted);margin:0 0 6px;font-size:14px;font-weight:500}.dash-list a{border-bottom:1px solid var(--line);color:var(--ink);justify-content:space-between;align-items:center;gap:10px;padding:11px 0;font-size:15px;transition:color .15s;display:flex}.dash-list a:last-child{border-bottom:0}.dash-list a:hover{color:var(--accent)}.dash-list a .ic{color:var(--faint)}.dash-foot{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:28px;padding-top:16px;font-size:13px;display:flex}.dash-foot a{color:inherit;text-underline-offset:3px;text-decoration:underline}@media (width>=760px){.dash{grid-template-columns:7fr 5fr}.dash-quick{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.dash-lists{grid-template-columns:repeat(3,1fr);gap:40px}}.next-bar{background:var(--green);transform-origin:0;height:2px;margin-top:8px;animation:2s linear forwards nextbar}@keyframes nextbar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.login{grid-template-columns:1fr;min-height:100dvh;display:grid}.login-side{flex-direction:column;justify-content:center;gap:18px;width:100%;max-width:480px;margin:0 auto;padding:40px 24px;display:flex}.login-brand{letter-spacing:-.02em;color:var(--ink);align-items:center;gap:8px;font-size:20px;font-weight:650;display:flex}.login-brand .ic{color:var(--accent)}.login h1{letter-spacing:-.03em;font-size:34px;line-height:1.12}.login p{color:var(--muted);margin:0;line-height:1.55}.login .btn{width:100%}.login-wait{color:var(--muted);align-items:center;gap:10px;font-size:14px;display:flex}.login-spin{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-note{font-size:13px}.login-err{border:1px solid var(--line);background:var(--tint-red);color:var(--red);border-radius:8px;padding:10px 12px;font-size:14px}.login-or{color:var(--faint);align-items:center;gap:12px;font-size:13px;display:flex}.login-or:before,.login-or:after{content:"";background:var(--line);flex:1;height:1px}.code-form{flex-direction:column;gap:8px;display:flex}.code-form label{color:var(--ink);font-size:14px;font-weight:500}.code-row{gap:8px;display:flex}.code-row input{border:1px solid var(--line);background:var(--surface);min-width:0;height:48px;color:var(--ink);font:500 20px var(--font);letter-spacing:.18em;font-variant-numeric:tabular-nums;border-radius:8px;flex:1;padding:0 14px}.code-row input::placeholder{color:var(--faint);letter-spacing:.18em}.code-row input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}.code-row .btn{flex:none;width:auto;padding:0 18px}.code-err{color:var(--red);margin:0;font-size:14px}.code-help{color:var(--muted);margin:0;font-size:13px}.code-help a{color:var(--accent)}.login-pic{background:#20262b 50%/cover no-repeat;display:none}@media (width>=900px){.login{grid-template-columns:5fr 6fr}.login-pic{display:block}}.account{border:1px solid var(--line);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.account b{color:var(--ink);font-weight:550}.account small{color:var(--muted);font-size:13px;display:block}.account .btn{min-height:38px;padding:0 12px;font-size:14px}.credits{white-space:pre-wrap;color:var(--soft);font-size:13px;line-height:1.6}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}.next-bar{display:none}}.tn-user{border-left:1px solid var(--line);height:38px;color:var(--ink);white-space:nowrap;align-items:center;gap:6px;margin-left:6px;padding:0 4px 0 14px;font-size:13px;font-weight:500;display:flex}.tn-user .ic{color:var(--muted)}.tn-out{cursor:pointer;background:0 0;border:0;font-family:inherit}.dash-foot-r{align-items:center;gap:16px;display:flex}.link-btn{color:var(--muted);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}.link-btn:hover{color:var(--ink)}
