:root{--bg:#f3f5f4;--surface:#fff;--sunk:#e8ecea;--ink:#15211f;--muted:#5a6965;--line:#d3dbd8;--accent:#0d6e5f;--accent-ink:#fff;--accent-soft:#d9eeea;--good:#1d7a3e;--good-soft:#e1f3e6;--bad:#b23a2b;--bad-soft:#f8e3df;--flag:#a86a00;--flag-soft:#fbefd6;--people:#7a4fb5;--process:#0d6e5f;--biz:#b0570f;--f-display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;--f-body:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;--f-mono:"IBM Plex Mono",ui-monospace,Consolas,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1514;--surface:#16201e;--sunk:#1d2927;--ink:#e4ece9;--muted:#97a7a3;--line:#2b3936;--accent:#3fb8a3;--accent-ink:#06201b;--accent-soft:#163b35;--good:#5cc983;--good-soft:#15301f;--bad:#f08a7b;--bad-soft:#3a1c18;--flag:#f0b54a;--flag-soft:#3a2c10;--people:#b593e6;--process:#3fb8a3;--biz:#ee9b55;color-scheme:dark}}:root[data-theme=dark]{--bg:#0e1514;--surface:#16201e;--sunk:#1d2927;--ink:#e4ece9;--muted:#97a7a3;--line:#2b3936;--accent:#3fb8a3;--accent-ink:#06201b;--accent-soft:#163b35;--good:#5cc983;--good-soft:#15301f;--bad:#f08a7b;--bad-soft:#3a1c18;--flag:#f0b54a;--flag-soft:#3a2c10;--people:#b593e6;--process:#3fb8a3;--biz:#ee9b55;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.55}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0);z-index:10;background:var(--surface)}.wrap{max-width:820px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}header{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:5;background:var(--surface);border-bottom:1px solid var(--line)}.hrow{align-items:center;justify-content:space-between;gap:12px;padding-block:12px 0}.brand,.hrow{display:flex;flex-wrap:wrap}.brand{align-items:baseline;gap:4px 10px}.brand h1{font-family:var(--f-display);font-size:22px;margin:0;letter-spacing:-.01em}.brand span{font-size:12px}.brand span,.count{font-family:var(--f-mono);color:var(--muted)}.count{font-size:12.5px;display:flex;gap:14px;flex-wrap:wrap}.count b{color:var(--ink);font-weight:500}.count .days{all:unset;color:var(--accent);font-weight:600;background:var(--accent-soft);padding:3px 10px;border-radius:999px}.count .days.set{cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:3px}.count .days.set:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[hidden]{display:none!important}.hright{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;flex-direction:row-reverse}.thm{all:unset;cursor:pointer;font-size:12.5px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;color:var(--ink);display:inline-flex;gap:6px;align-items:center;background:var(--bg)}.rdy:focus-visible,.thm:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.count{align-items:center}.rdy{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.rdy b{color:var(--ink);font-weight:500}.ring{display:block;flex:none}.ring .tk{stroke:var(--sunk)}.ring text{fill:var(--ink);font-family:var(--f-mono);font-weight:500}.rcard{display:grid;grid-template-columns:auto 1fr;grid-gap:20px 24px;gap:20px 24px;align-items:center;margin-bottom:22px}.rcard .band{font-family:var(--f-display);font-size:22px;margin:0 0 4px}.rparts{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.rparts div{display:grid;grid-template-columns:150px 1fr 44px;grid-gap:10px;gap:10px;align-items:center;font-size:13.5px}.rparts .meter{margin:0}@media (max-width:560px){.rcard{grid-template-columns:1fr;justify-items:start}.rparts div{grid-template-columns:110px 1fr 40px}}.who-btn{all:unset;cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:3px}.who-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ovl .lock input#nmI{text-transform:none;letter-spacing:0;font-family:var(--f-body)}.support{border-top:1px solid var(--line);padding-block:18px 28px;font-size:13.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}.support b{color:var(--ink);font-family:var(--f-mono);font-weight:500;-webkit-user-select:all;-moz-user-select:all;user-select:all}.lock .contact a,.support a{color:var(--accent);font-weight:600}.ovl{position:fixed;inset:0;z-index:20;background:rgba(8,14,13,.55);display:grid;place-items:center;padding:16px}.ovl .lock{margin:0;width:100%}.ovl input[type=date]{text-transform:none;letter-spacing:0}nav{display:flex;gap:4px;overflow-x:auto;padding-block:10px 0}nav button{all:unset;cursor:pointer;padding:8px 12px 10px;font-weight:500;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}nav button[aria-selected=true]{color:var(--ink);border-color:var(--accent)}button:focus-visible,nav button:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}main{padding-block:20px 60px}.bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.chip{all:unset;cursor:pointer;padding:6px 12px;border-radius:999px;border:1px solid var(--line);font-size:13.5px;background:var(--surface)}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}select{font:inherit;font-size:14px;padding:7px 10px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);max-width:100%}.btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:8px;font-weight:600;font-size:14px;background:var(--accent);color:var(--accent-ink)}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn[disabled]{opacity:.45;cursor:default}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px}.meta{display:flex;flex-wrap:wrap;gap:8px 12px;font-family:var(--f-mono);font-size:12px;color:var(--muted);margin-bottom:14px}.dom,.meta{align-items:center}.dom{display:inline-flex;gap:6px;font-weight:500}.dom i{width:8px;height:8px;border-radius:2px;background:var(--c)}.stem p{margin:0 0 10px;font-size:16.5px;line-height:1.6;max-width:68ch}.stem p:last-child{font-weight:600}.opts{display:grid;grid-gap:10px;gap:10px;margin-top:18px}.opt{all:unset;cursor:pointer;display:grid;grid-template-columns:28px 1fr;grid-gap:10px;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.opt:hover:not(.locked){border-color:var(--accent)}.opt .k{font-family:var(--f-mono);font-weight:500;width:26px;height:26px;border-radius:6px;display:grid;place-items:center;background:var(--sunk);font-size:13px}.opt .t{min-width:0}.opt.sel{border-color:var(--accent);background:var(--accent-soft)}.opt.locked{cursor:default}.opt.right{border-color:var(--good);background:var(--good-soft)}.opt.right .k{background:var(--good);color:var(--surface)}.opt.wrong{border-color:var(--bad);background:var(--bad-soft)}.opt.wrong .k{background:var(--bad);color:var(--surface)}.why{font-size:13.5px;color:var(--muted);margin-top:6px;line-height:1.5}.verdict{margin-top:18px;padding:14px 16px;border-radius:10px;background:var(--sunk);font-size:14.5px}.verdict b{font-family:var(--f-display);font-size:16px}.verdict.ok b{color:var(--good)}.verdict.no b{color:var(--bad)}.actions{justify-content:space-between;align-items:center;margin-top:18px}.actions,.actions .grp{display:flex;flex-wrap:wrap;gap:10px}.kbd{font-family:var(--f-mono);font-size:11.5px;color:var(--muted)}.flagged{color:var(--flag)}.grid-nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));grid-gap:6px;gap:6px;margin-top:16px}.grid-nav button{all:unset;cursor:pointer;text-align:center;font-family:var(--f-mono);font-size:12px;padding:6px 0;border-radius:6px;border:1px solid var(--line);background:var(--surface)}.grid-nav button.ans{background:var(--sunk)}.grid-nav button.fl{border-color:var(--flag);color:var(--flag)}.grid-nav button.cur{outline:2px solid var(--accent)}.grid-nav button.r{background:var(--good-soft);border-color:var(--good)}.grid-nav button.w{background:var(--bad-soft);border-color:var(--bad)}.timer{font-family:var(--f-mono);font-size:20px;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.timer.low{color:var(--bad)}h2{font-size:24px;margin:0 0 6px;text-wrap:balance}h2,h3{font-family:var(--f-display)}h3{font-size:17px;margin:24px 0 10px}.sub{color:var(--muted);margin:0 0 18px;max-width:65ch}.big{font-family:var(--f-display);font-size:48px;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:12px;gap:12px}.stat{padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.stat .l{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.stat .v{font-family:var(--f-display);font-size:26px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meter{height:8px;border-radius:4px;background:var(--sunk);overflow:hidden;margin-top:8px}.meter i{display:block;height:100%;background:var(--c,var(--accent))}.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface)}table{border-collapse:collapse;width:100%;font-size:13.5px}td,th{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:500}td.n{font-family:var(--f-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}tr:last-child td{border-bottom:none}.pill{display:inline-block;font-family:var(--f-mono);font-size:11.5px;padding:2px 8px;border-radius:999px}.pill.g{background:var(--good-soft);color:var(--good)}.pill.b{background:var(--bad-soft);color:var(--bad)}.pill.f{background:var(--flag-soft);color:var(--flag)}.pill.n{background:var(--sunk);color:var(--muted)}.mind{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.mind li{display:grid;grid-template-columns:auto 1fr;grid-gap:12px;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.mind li b{font-family:var(--f-mono);font-size:12px;color:var(--accent);padding-top:2px}.list{display:grid;grid-gap:8px;gap:8px}.mrow{all:unset;cursor:pointer;display:grid;grid-template-columns:1fr auto;grid-gap:12px;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.mrow .q{min-width:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mrow small{display:block;font-family:var(--f-mono);font-size:11.5px;color:var(--muted);margin-bottom:3px}.empty{padding:28px;text-align:center;border:1px dashed var(--line);border-radius:12px}.empty,.note{color:var(--muted)}.note{font-size:13px;margin-top:24px;max-width:70ch}.lock{max-width:520px;margin:20px auto 0;text-align:left}.lock .ico{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-size:22px;margin-bottom:14px}.lock input{font:inherit;font-family:var(--f-mono);font-size:16px;letter-spacing:.06em;text-transform:uppercase;width:100%;padding:11px 12px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink);margin:6px 0 12px}.lock input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.lock .err{color:var(--bad);font-size:13.5px;min-height:20px;margin-top:8px}.lock .contact{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:13.5px;color:var(--muted)}.lock .contact b{color:var(--ink);font-family:var(--f-mono);font-weight:500;-webkit-user-select:all;-moz-user-select:all;user-select:all}nav button.lk:after{content:" 🔒";font-size:11px}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}@media (max-width:520px){.card{padding:16px}.stem p{font-size:15.5px}.big{font-size:40px}}@media (prefers-reduced-motion:no-preference){.btn,.chip,.opt{transition:background .12s,border-color .12s}}nav a.navlink{padding:8px 12px 10px;font-weight:500;color:var(--muted);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent}nav a.navlink:hover{color:var(--ink)}.mob-only,nav .ico,nav .short{display:none}.filt-toggle{all:unset;cursor:pointer;box-sizing:border-box;width:100%;justify-content:space-between;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:14px;margin-bottom:12px}.filt-toggle b{font-weight:600}.filt-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.more-btn{all:unset;cursor:pointer;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);place-items:center;font-size:18px;line-height:1;color:var(--ink);flex:none}.more-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.filt-toggle.mob-only,.more-btn.mob-only{display:none}@media (max-width:700px){.mob-only{display:inline-grid}.filt-toggle.mob-only{display:flex}.more-btn.mob-only{display:inline-grid}header:not(.site-head) .hrow{flex-wrap:nowrap;align-items:center;gap:8px;padding-block:8px}.brand{flex:1 1;min-width:0}.brand h1{font-size:18px}#who{display:none}.hright{flex-direction:row;flex-wrap:nowrap;gap:8px;order:2}.more-btn{order:3}.hright>.thm{display:none}.count{gap:8px}.count>span,.rdy>span{display:none}.count .days{font-size:12px;padding:3px 8px}body.mob-more header:not(.site-head) .hrow{flex-wrap:wrap}body.mob-more #who{display:block;margin-top:2px}body.mob-more .hright{order:4;flex-basis:100%;flex-wrap:wrap;padding:10px 0 4px;border-top:1px solid var(--line)}body.mob-more .hright>.thm{display:inline-flex}body.mob-more .count>span,body.mob-more .rdy>span{display:inline}.filt{display:none}.filt.open{display:block}nav[role=tablist]{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--surface);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(6,1fr);grid-gap:0;gap:0;padding:4px max(4px,env(safe-area-inset-left,0px)) calc(4px + env(safe-area-inset-bottom,0px)) max(4px,env(safe-area-inset-right,0px));overflow:visible}nav[role=tablist] a.navlink,nav[role=tablist] button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0 4px;border-bottom:none;border-top:2px solid transparent;font-size:11px;font-weight:500;color:var(--muted);text-align:center;min-width:0}nav[role=tablist] button[aria-selected=true]{color:var(--accent);border-top-color:var(--accent)}nav .ico,nav .short{display:block}nav .short{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}nav .full{display:none}nav button.lk:after{content:"🔒";font-size:9px;position:absolute;margin-left:22px;margin-top:-2px}nav button.lk{position:relative}main#main{padding-bottom:calc(150px + env(safe-area-inset-bottom,0px))}footer.support{padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}#main .card .actions{position:fixed;left:0;right:0;bottom:calc(58px + env(safe-area-inset-bottom,0px));z-index:19;margin:0;padding:10px max(16px,env(safe-area-inset-left,0px)) 10px max(16px,env(safe-area-inset-right,0px));background:var(--surface);border-top:1px solid var(--line)}#main .card .actions,#main .card .actions .grp{flex-wrap:nowrap;gap:8px}#main .card .actions .kbd{display:none}#main .card .actions .btn{padding:10px 14px}body.in-study .chat-fab{bottom:calc(58px + 62px + 12px + env(safe-area-inset-bottom,0px));right:12px;padding:12px;border-radius:50%}body.in-study .chat-fab .fab-label{display:none}}a{color:var(--accent)}.site-head .hrow{padding-block:12px}.site-head nav.sn{display:flex;gap:6px 16px;align-items:center;flex-wrap:wrap;padding:0;overflow:visible}.sn a{color:var(--ink);text-decoration:none;font-weight:500;font-size:14px}.sn a.btn{color:var(--accent-ink)}.logo{font-family:var(--f-display);font-size:21px;font-weight:700;color:var(--ink);text-decoration:none;letter-spacing:-.01em}.logo span{color:var(--accent)}.hero{padding-block:56px 40px;display:grid;grid-template-columns:1.1fr .9fr;grid-gap:36px;gap:36px;align-items:center}.hero h1{font-family:var(--f-display);font-size:clamp(32px,5vw,48px);line-height:1.05;margin:0 0 16px;text-wrap:balance;letter-spacing:-.02em}.hero p.lead{font-size:17px;color:var(--muted);max-width:52ch;margin:0 0 24px}.eyebrow{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.demo{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 10px 30px rgba(10,30,26,.08)}.demo .opt{cursor:default}.wide{max-width:1080px}.section{padding-block:40px}.section h2{font-size:28px}.feat{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px;margin-top:20px}.feat .stat h4{margin:0 0 6px;font-family:var(--f-display);font-size:17px}.feat .stat p{margin:0;color:var(--muted);font-size:14px}.weights{display:grid;grid-gap:10px;gap:10px;max-width:560px;margin-top:16px}.weights div{display:grid;grid-template-columns:170px 1fr 48px;grid-gap:12px;gap:12px;align-items:center;font-size:14px}.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:16px;gap:16px;margin-top:20px;align-items:stretch}.plan{display:flex;flex-direction:column;gap:12px}.plan.featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.plan .price{font-family:var(--f-display);font-size:36px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.plan .price small{font-family:var(--f-body);font-size:14px;color:var(--muted);font-weight:400}.plan ul{margin:0;padding-left:18px;color:var(--ink);font-size:14px;display:grid;grid-gap:6px;gap:6px}.plan .btn{justify-content:center;margin-top:auto}.form{max-width:420px;margin:48px auto}.form label{display:block;font-size:13px;font-weight:600;margin:14px 0 4px}.form input{font:inherit;width:100%;padding:11px 12px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink)}.form input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.form .btn{margin-top:18px;width:100%;justify-content:center;box-sizing:border-box}.err{color:var(--bad);font-size:13.5px;min-height:20px;margin-top:8px}.okmsg{color:var(--good);font-size:14px;margin-top:10px}.site-foot{border-top:1px solid var(--line);padding-block:24px 36px;margin-top:40px;font-size:13.5px;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}.site-foot,.site-foot a{color:var(--muted)}.prose{max-width:70ch;padding-block:32px 20px}.prose h1{font-family:var(--f-display);font-size:32px;margin:0 0 8px}.prose h2{font-size:20px;margin:28px 0 8px}.prose li,.prose p{color:var(--ink);line-height:1.65}.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);padding:10px 16px;z-index:30;max-width:calc(100% - 32px)}.keys,.toast{border-radius:8px;font-size:14px}.keys{font-family:var(--f-mono);white-space:pre-wrap;background:var(--sunk);padding:12px;-webkit-user-select:all;-moz-user-select:all;user-select:all}.adm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px;margin-bottom:20px}@media (max-width:760px){.hero{grid-template-columns:1fr;padding-block:32px 20px}.weights div{grid-template-columns:120px 1fr 40px}}.res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:14px;gap:14px;margin-top:20px}.res{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--ink)}.res h3{margin:4px 0 0;font-size:18px}.res p{margin:0;color:var(--muted);font-size:14px}a.res:hover{border-color:var(--accent)}.res.locked{opacity:.85}.res.soon{border-style:dashed;background:transparent}.prose-body li,.prose-body p{line-height:1.65}.prose-body ul{padding-left:20px;display:grid;grid-gap:6px;gap:6px}.prose-body .tbl{margin:12px 0}.prose section h2{font-family:var(--f-display);font-size:21px;margin:30px 0 8px}.deck{max-width:860px;margin:24px auto 40px}.deck-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.deck-top a{color:var(--muted);text-decoration:none}.slide{min-height:min(60vh,520px);padding:clamp(20px,4vw,44px);display:flex;flex-direction:column;justify-content:center}.slide h2{font-size:clamp(24px,3.4vw,36px);margin-bottom:14px}.slide .prose-body{font-size:clamp(15px,1.6vw,18px)}.dots{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.dots button{all:unset;cursor:pointer;width:9px;height:9px;border-radius:50%;background:var(--line)}.dots button.on{background:var(--accent)}.dots button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat-fab{all:unset;cursor:pointer;position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:40;background:var(--accent);color:var(--accent-ink);font-weight:600;font-size:15px;padding:12px 18px;border-radius:999px;box-shadow:0 8px 24px rgba(0,0,0,.25);display:inline-flex;gap:8px;align-items:center}.chat-fab:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.chat-panel{position:fixed;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:40;width:min(380px,calc(100vw - 32px));height:min(560px,calc(100dvh - 100px));background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.3);display:flex;flex-direction:column;overflow:hidden}.chat-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:var(--accent);color:var(--accent-ink)}.chat-head b{display:block;font-family:var(--f-display);font-size:16px}.chat-head span{font-size:12px;opacity:.85}.chat-head button{all:unset;cursor:pointer;font-size:16px;padding:4px 8px;border-radius:6px}.chat-head button:focus-visible{outline:2px solid var(--accent-ink)}.chat-body{flex:1 1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.chat-msg{max-width:88%;padding:9px 12px;border-radius:12px;font-size:14px;line-height:1.5}.chat-msg p{margin:0 0 6px}.chat-msg p:last-child{margin:0}.chat-msg ul{margin:4px 0;padding-left:18px}.chat-msg.assistant{background:var(--sunk);align-self:flex-start;border-bottom-left-radius:4px}.chat-msg.user{background:var(--accent);color:var(--accent-ink);align-self:flex-end;border-bottom-right-radius:4px}.chat-msg.typing{color:var(--muted);font-style:italic}.chat-sugs{display:flex;flex-wrap:wrap;gap:6px}.chat-sugs button{all:unset;cursor:pointer;font-size:13px;padding:6px 10px;border-radius:999px;border:1px solid var(--accent);color:var(--accent)}.chat-sugs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat-form{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line)}.chat-form input{flex:1 1;min-width:0;font:inherit;font-size:16px;padding:9px 10px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink)}.chat-form input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (hover:hover){.btn:hover:not([disabled]){filter:brightness(1.08)}.btn.ghost:hover:not([disabled]),.chip:hover{background:var(--accent-soft);border-color:var(--accent)}.site-foot a:hover,.sn a:not(.btn):hover{color:var(--accent)}.plan:hover,.stat:hover,a.res:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 35%,var(--surface))}.opt:hover:not(.locked){background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}.mrow:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 35%,var(--surface))}}@media (prefers-reduced-motion:no-preference){.btn,.chip,.mrow,.plan,.stat,a.res{transition:background .15s,border-color .15s,filter .15s,transform .15s}.plan:hover,a.res:hover{transform:translateY(-2px)}}.carousel{display:flex;flex-direction:column}.car-inner{transition:opacity .22s ease;height:500px;overflow:hidden}.car-inner.out{opacity:0}.car-stem p{-webkit-line-clamp:5}.car-clamp,.car-stem p{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.car-clamp{-webkit-line-clamp:3}.car-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}.car-arrow{all:unset;cursor:pointer;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-size:18px;color:var(--ink)}.car-arrow:hover{border-color:var(--accent);color:var(--accent)}.car-arrow:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cursor-glow{position:fixed;left:0;top:0;width:34px;height:34px;border-radius:50%;pointer-events:none;z-index:60;opacity:0;transition:opacity .25s,width .2s,height .2s;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 45%,transparent) 0,transparent 70%);mix-blend-mode:normal;will-change:transform}@media (max-width:760px){.car-inner{height:560px}}@media (max-width:400px){.car-inner{height:600px}}.jprog{margin:18px 0 6px;display:grid;grid-gap:10px;gap:10px}.jbar{height:10px;background:var(--line);overflow:hidden}.jbar,.jbar span{border-radius:99px}.jbar span{display:block;height:100%;background:var(--accent)}.jmap{list-style:none;padding:0;margin:20px 0;display:grid;grid-gap:12px;gap:12px;counter-reset:none}.jstage a.card{display:flex;gap:16px;align-items:flex-start;text-decoration:none;color:inherit}.jstage a.card:hover{border-color:var(--accent)}.jstage h3{margin:6px 0 4px;font-size:17px}.jstage p{margin:0;color:var(--muted);font-size:14px}.jnum{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-family:var(--f-mono);font-weight:700;border:2px solid var(--accent);color:var(--accent)}.jstage.done .jnum{background:var(--accent);color:var(--accent-ink)}.jstage.locked{opacity:.62}.jstage.locked .jnum{border-color:var(--line);color:var(--muted)}.jmeta{display:grid;grid-gap:6px;gap:6px;font-size:14px;margin:16px 0}.jquiz{display:grid;grid-gap:12px;gap:12px}.jq .jqq{margin:6px 0 10px;font-weight:600}.jopts{display:grid;grid-gap:8px;gap:8px}.jopt{all:unset;box-sizing:border-box;cursor:pointer;display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;line-height:1.45}.jopt b{font-family:var(--f-mono);color:var(--muted)}.jopt:hover:not(:disabled){border-color:var(--accent)}.jopt:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.jopt.sel{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.jopt.right{border-color:var(--good);box-shadow:0 0 0 1px var(--good)}.jopt.wrong{border-color:var(--bad);box-shadow:0 0 0 1px var(--bad)}.jopt:disabled{cursor:default}.jexp{margin:10px 0 0;font-size:14.5px;line-height:1.6}.verdict.ok{border-color:var(--good)}.verdict.no{border-color:var(--bad)}.apply{display:grid;grid-gap:16px;gap:16px;max-width:900px;margin:18px 0 10px}.apply h2{font-family:var(--f-display);font-size:20px;margin:0 0 12px}.apply h3{font-size:15px;margin:16px 0 8px}.asum{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center}.asum b{font-size:18px}.ok{color:var(--good)}.no{color:var(--bad)}.agrid{grid-template-columns:repeat(3,1fr);grid-gap:10px 12px;gap:10px 12px;margin-bottom:8px}.af,.agrid{display:grid}.af{grid-gap:4px;gap:4px;font-size:13px;color:var(--muted)}.af.wide{grid-column:1/-1}.af em{font-style:normal;opacity:.8}.af input,.af select,.af textarea{font:inherit;font-size:14.5px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:9px 10px;width:100%;box-sizing:border-box}.af textarea{resize:vertical;line-height:1.5}.af input:focus-visible,.af select:focus-visible,.af textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.aproj{border-top:1px solid var(--line);padding-top:14px;margin-top:14px;display:grid;grid-gap:10px;gap:10px}.btn.sm{padding:6px 10px;font-size:13px}@media (max-width:700px){.agrid{grid-template-columns:1fr 1fr}}@media print{.asum .row,.btn,.site-foot,.site-head{display:none!important}}.plan .price small{white-space:nowrap}@media (max-width:430px){.site-head nav.sn{gap:6px 11px}.sn a,.sn a.btn{font-size:13px}.sn a.btn{padding:8px 11px}}