:root{--paper:#f6f7fb;--panel:#fff;--ink:#121826;--ink-soft:#5f6b7f;--line:#e4e7ee;--chip:#f0f2f8;--btn:#4f46e5;--btn-ink:#fff;--btn-edge:transparent;--hi:#dedbff;--hi-ink:#1e1b4b;--accent-ink:#fff;--accent-text:#4f46e5;--accent:#4f46e5;--accent-soft:#eef0ff;--margin:#e5484d;--next-a:#4f46e5;--next-b:#7c6cf0;--font-body:"Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", sans-serif;--font-head:"Lexend", system-ui, sans-serif;--radius:14px;--radius-sm:10px;--press:none;--carrot:#f2862e;--leaf:#3e9b4f;--soil:#9a6b45;--fur:#fff;--fur-line:#13294b;--fur-inner:#ffc7d3;--scarf:#4f46e5;--belly:#fff1e3;--ok-bg:#ddf3e3;--ok-ink:#1d6b35;--no-bg:#fde3d8;--no-ink:#a33a12;--k-blue:#3b82f6;--k-blue-d:#2563c9;--k-green:#22b07d;--k-green-d:#168a61;--k-yellow:#ffc93c;--k-yellow-d:#e0a800;--k-orange:#ee6a20;--k-orange-d:#c9551a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0f131c;--panel:#171c28;--ink:#eceff6;--ink-soft:#9aa3b5;--line:#272e3d;--chip:#1e2432;--btn:#7b74f2;--btn-ink:#0f131c;--hi:#a5a0ff;--hi-ink:#121826;--accent-ink:#0f131c;--accent-text:#a5a0ff;--accent:#a5a0ff;--accent-soft:#252a45;--margin:#f2727f;--next-a:#4c45c9;--next-b:#6a5ce0;--carrot:#f59a4e;--leaf:#5cc06e;--soil:#7a5638;--fur:#f4f1ea;--fur-line:#14211d;--fur-inner:#f2a9ba;--scarf:#7b74f2;--belly:#eadfcf;--ok-bg:#1f3d2a;--ok-ink:#8bdda2;--no-bg:#45261a;--no-ink:#f7a685;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#0f131c;--panel:#171c28;--ink:#eceff6;--ink-soft:#9aa3b5;--line:#272e3d;--chip:#1e2432;--btn:#7b74f2;--btn-ink:#0f131c;--hi:#a5a0ff;--hi-ink:#121826;--accent-ink:#0f131c;--accent-text:#a5a0ff;--accent:#a5a0ff;--accent-soft:#252a45;--margin:#f2727f;--next-a:#4c45c9;--next-b:#6a5ce0;--carrot:#f59a4e;--leaf:#5cc06e;--soil:#7a5638;--fur:#f4f1ea;--fur-line:#14211d;--fur-inner:#f2a9ba;--scarf:#7b74f2;--belly:#eadfcf;--ok-bg:#1f3d2a;--ok-ink:#8bdda2;--no-bg:#45261a;--no-ink:#f7a685;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-look=kids]{--paper:#fff7ee;--panel:#fff;--ink:#2a1e4a;--ink-soft:#6b5f86;--line:#f1dcc6;--chip:#fff0e0;--btn:#ee6a20;--btn-ink:#fff;--btn-edge:#c9551a;--hi:#ffc93c;--hi-ink:#2a1e4a;--accent-ink:#fff;--accent-text:#c2530f;--accent:#ee6a20;--accent-soft:#ffe9d6;--margin:#e5484d;--font-body:"Nunito", system-ui, sans-serif;--font-head:"Fredoka", "Nunito", system-ui, sans-serif;--radius:20px;--radius-sm:14px;--press:0 4px 0 var(--btn-edge);--scarf:#3b82f6}@media (prefers-color-scheme:dark){:root[data-look=kids]:not([data-theme=light]){--paper:#1b1530;--panel:#251d40;--ink:#f6f0ff;--ink-soft:#bfb3da;--line:#3a2f5c;--chip:#2e2550;--btn:#ff8a45;--btn-ink:#1b1530;--btn-edge:#c25a1a;--hi:#ffc93c;--hi-ink:#2a1e4a;--accent-ink:#1b1530;--accent-text:#ff9a5c;--accent:#ff9a5c;--accent-soft:#3a2b4f;--scarf:#6fa3ff}}:root[data-look=kids][data-theme=dark]{--paper:#1b1530;--panel:#251d40;--ink:#f6f0ff;--ink-soft:#bfb3da;--line:#3a2f5c;--chip:#2e2550;--btn:#ff8a45;--btn-ink:#1b1530;--btn-edge:#c25a1a;--hi:#ffc93c;--hi-ink:#2a1e4a;--accent-ink:#1b1530;--accent-text:#ff9a5c;--accent:#ff9a5c;--accent-soft:#3a2b4f;--scarf:#6fa3ff}*,:before,:after{box-sizing:inherit}html{height:100%;scroll-padding-top:env(safe-area-inset-top,0px)}body{min-height:100%;color:var(--ink);background:var(--paper);font:17px/1.6 var(--font-body);margin:0}.wrap{max-width:1100px;padding:16px max(20px,env(safe-area-inset-right,0px)) 64px max(20px,env(safe-area-inset-left,0px));margin:0 auto;position:relative}h1,h2,h3{font-family:var(--font-head);margin:0;font-weight:600;line-height:1.2}header{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px;display:flex}h1{letter-spacing:-.01em;font-size:clamp(1.7rem,4vw,2.4rem);font-weight:700}h1 span{background:linear-gradient(transparent 58%, var(--hi) 58% 92%, transparent 92%)}.sub{color:var(--ink-soft);max-width:60ch;margin:6px 0 0}.mode{border:1.5px solid var(--line);background:var(--panel);border-radius:999px;padding:3px;display:inline-flex}.mode button{color:var(--ink);font:700 .9375rem/1 var(--font-body);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:10px 18px}.mode button[aria-pressed=true]{background:var(--btn);color:var(--btn-ink)}.grid{grid-template-columns:320px 1fr;align-items:start;gap:28px;display:grid}@media (max-width:860px){.grid{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.step{margin-bottom:22px}.step h2{align-items:baseline;gap:8px;margin-bottom:10px;font-size:1rem;font-weight:700;display:flex}.step h2 b{background:var(--accent);width:24px;height:24px;color:var(--btn-ink);border-radius:50%;place-items:center;font-size:.8rem;display:inline-grid}.years{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.years button{border:2px solid var(--line);background:var(--chip);color:var(--ink);cursor:pointer;text-align:center;border-radius:10px;padding:8px 4px;font-family:inherit}.years button strong{font:700 1.4rem/1 var(--font-head);display:block}.years button small{color:var(--ink-soft);font-size:.75rem}.years button[aria-pressed=true]{border-color:var(--accent);background:var(--hi);color:var(--hi-ink)}.years button[aria-pressed=true] small{color:var(--hi-ink)}select,input,textarea{width:100%;font:inherit;color:var(--ink);background:var(--panel);border:1.5px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px}select:focus,input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.topics{flex-wrap:wrap;gap:6px;max-height:260px;margin-top:10px;display:flex;overflow:auto}.topics button{border:1px solid var(--line);background:var(--chip);color:var(--ink);font:inherit;cursor:pointer;text-align:left;border-radius:999px;padding:6px 12px;font-size:.88rem}.topics button[aria-pressed=true]{background:var(--btn);color:var(--btn-ink);border-color:var(--btn)}.hint{color:var(--ink-soft);margin:8px 0 0;font-size:.85rem}.link{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.88rem;text-decoration:underline}.actions{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.actions button,.primary{border:2px solid var(--btn);background:var(--btn);color:var(--btn-ink);border-radius:var(--radius-sm);font:700 .9375rem/1.2 var(--font-body);cursor:pointer;box-shadow:var(--press);padding:11px 16px;transition:transform 80ms}.actions button:active:not(:disabled),.primary:active:not(:disabled){transform:translateY(2px)}.actions button.alt{color:var(--ink);border-color:var(--line);box-shadow:none;background:0 0}button:disabled{opacity:.45;cursor:not-allowed}.context{color:var(--ink-soft);min-height:1.5em;margin-bottom:14px;font-size:.9rem}.context strong{color:var(--ink)}.out{min-height:220px}.out .empty{color:var(--ink-soft)}.md{max-width:72ch}.md h1,.md h2,.md h3{margin:1.2em 0 .4em}.md h1{font-size:1.6rem}.md h2{font-size:1.3rem}.md h3{font-size:1.1rem}.md table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.md th,.md td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 10px}.md code{background:var(--chip);border-radius:5px;padding:1px 5px}.md pre{background:var(--chip);border-radius:8px;padding:12px;overflow-x:auto}.md blockquote{border-left:4px solid var(--hi);margin:0;padding-left:14px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.status{color:var(--ink-soft);font-size:.88rem}.quiz ol{padding-left:1.2em}.quiz li{margin-bottom:20px}.quiz .opt{text-align:left;border:2px solid var(--line);background:var(--chip);width:100%;color:var(--ink);font:inherit;cursor:pointer;border-radius:10px;margin:6px 0;padding:9px 12px;display:block}.quiz .opt.right{background:#2e8b5722;border-color:#2e8b57}.quiz .opt.wrong{border-color:var(--margin);background:#d7263d1f}.quiz .why{color:var(--ink-soft);margin-top:6px;font-size:.92rem}.score{font:700 1.3rem var(--font-head)}.chat{border-top:2px dashed var(--line);margin-top:24px;padding-top:18px}.chat h3{margin-bottom:10px;font-size:1.05rem}.msgs{flex-direction:column;gap:10px;margin-bottom:12px;display:flex}.msg{border-radius:12px;max-width:85%;padding:10px 14px}.msg.user{background:var(--btn);color:var(--btn-ink);align-self:flex-end}.msg.bot{background:var(--chip);align-self:flex-start}.msg.bot p:first-child{margin-top:0}.msg.bot p:last-child{margin-bottom:0}.ask{gap:8px;display:flex}.ask input{flex:1}.note{color:var(--ink-soft);max-width:72ch;margin-top:28px;font-size:.82rem}.note a{color:var(--ink)}.tabs{border-bottom:2px solid var(--line);gap:4px;margin:-4px 0 18px;display:flex}.tabs button{color:var(--ink-soft);font:700 .9375rem/1 var(--font-body);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-2px;padding:10px 14px}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--margin)}.items{margin:0;padding:0;list-style:none}.items li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:12px;padding:12px 0;display:flex}.items .t{font-weight:700}.items .m{color:var(--ink-soft);font-size:.85rem}.items .acts{flex-shrink:0;gap:12px;display:flex}.bar{background:var(--chip);border-radius:5px;width:min(260px,60vw);height:10px;margin-top:6px;overflow:hidden}.bar i{background:var(--accent);height:100%;display:block}.bar.weak i{background:var(--margin)}.unavail{border:2px solid var(--margin);border-radius:10px;margin-bottom:16px;padding:12px 14px;display:none}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.badge{vertical-align:middle;border:1px solid var(--line);background:var(--chip);color:var(--ink-soft);border-radius:999px;margin-left:8px;padding:2px 10px;font-size:.78rem;display:inline-block}.badge.ok{color:#2e8b57;border-color:#2e8b57}.signin{text-align:left;max-width:440px;margin:60px auto}.signin .primary{width:100%;margin-top:10px;display:block}.stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:8px 0;display:grid}.stats div{border:1px solid var(--line);background:var(--chip);border-radius:10px;padding:10px 12px}.stats b{font:700 1.6rem/1.1 var(--font-head);display:block}.stats span{font-size:.88rem;display:block}.stats small{color:var(--ink-soft);font-size:.78rem;display:block}.items li>div:first-child{min-width:0}@media (max-width:860px){.wrap{padding:10px max(14px,env(safe-area-inset-right,0px)) 40px max(14px,env(safe-area-inset-left,0px))}header{gap:10px;margin-bottom:14px}h1{font-size:1.6rem}.mode{width:100%}.mode button{flex:1}.grid{gap:14px}.panel{padding:14px}.step{margin-bottom:16px}.years{grid-template-columns:repeat(6,1fr);gap:6px}.years button{padding:8px 0}.years button strong{font-size:1.25rem}.years button small{display:none}.topics{max-height:180px}.actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.actions button{padding:12px 6px;font-size:14px}.out{min-height:60px}.chat{margin-top:16px;padding-top:14px}.msg{max-width:100%}.signin{margin:24px auto}.items .acts{gap:10px}}.askbox{margin-bottom:22px}.askbox h2{margin-bottom:8px;font-size:1.15rem}.askbox textarea{resize:vertical;min-height:90px}.askbox .row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.askbox .row select{width:auto}.snap-btn{border-radius:var(--radius-sm);border:1.5px dashed var(--accent);color:var(--ink);background:var(--accent-soft);cursor:pointer;align-items:center;gap:6px;padding:10px 14px;font-size:.9375rem;font-weight:600;display:inline-flex;position:relative}.snap-btn input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.snap-btn:focus-within{outline:3px solid var(--accent);outline-offset:2px}.snap-btn.busy{opacity:.6;cursor:wait}.snap-preview{border:1px solid var(--line);background:var(--panel);border-radius:10px;align-items:center;gap:12px;margin-top:10px;padding:10px;display:flex}.snap-preview img{object-fit:cover;border:1px solid var(--line);border-radius:8px;flex:none;width:96px;height:96px}.reader{z-index:50;background:var(--paper);flex-direction:column;display:flex;position:fixed;inset:0}.reader-bar{border-bottom:1px solid var(--line);background:var(--panel);padding:10px 16px;padding-top:max(10px,env(safe-area-inset-top));align-items:center;gap:14px;display:flex}.reader-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:700;overflow:hidden}.reader-acts{gap:14px;display:flex}.reader-body{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.reader-page{max-width:760px;margin:0 auto;padding:22px 20px 40px;font-size:1.08rem;line-height:1.7}.reader-page .md{max-width:none}.reader-q{font:600 1.3rem/1.35 var(--font-head);background:var(--chip);border-left:4px solid var(--accent);white-space:pre-wrap;border-radius:8px;margin:0 0 14px;padding:12px 14px}.reader-q.follow{margin-top:24px;font-size:1rem}.reader-ask{border-top:1px solid var(--line);background:var(--panel);padding:10px 16px;padding-bottom:max(10px,env(safe-area-inset-bottom));gap:8px;display:flex}.reader-ask input{flex:1}@media (max-width:860px){.reader-page{padding:16px 16px 32px;font-size:1rem}.reader-q{font-size:1.1rem}.reader-acts{gap:10px}}.md table{border-collapse:collapse;max-width:100%;margin:12px 0;display:block;overflow-x:auto}.md th{background:var(--chip);font-weight:700}.md th,.md td{white-space:nowrap}.md .katex{font-size:1.08em}.md .katex-display{padding:4px 0;overflow:auto hidden}@media (max-width:860px){.reader-title{display:none}.reader-acts{flex:1;justify-content:flex-end}}.runbar{z-index:5;border:1px solid var(--line);background:var(--panel);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin:-6px 0 12px;padding:8px 12px;display:flex;position:sticky;top:0;box-shadow:0 4px 12px #00000014}.runbar span{font-weight:700}.runbar span:before{content:"";background:var(--margin);border-radius:50%;width:8px;height:8px;margin-right:8px;animation:1s infinite alternate pulse;display:inline-block}@keyframes pulse{0%{opacity:.3}to{opacity:1}}.contents{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 12px;font-size:.85rem;display:flex}.contents span{color:var(--ink-soft);margin-right:2px}.contents button{border:1px solid var(--line);background:var(--chip);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:4px 10px}.clip{max-height:900px;position:relative;overflow:hidden}.clip:after{content:"";background:linear-gradient(transparent,var(--panel));height:120px;position:absolute;bottom:0;left:0;right:0}.md h2{scroll-margin-top:70px}.viz{border:1px solid var(--line);background:var(--panel);border-radius:12px;margin:14px 0;padding:10px;overflow-x:auto}.viz svg{width:100%;max-width:640px;height:auto;color:var(--ink);margin:0 auto;display:block}.viz svg text{font-family:var(--font-body)}.viz .g-grid{stroke:var(--line);stroke-width:1px}.viz .g-axis{stroke:var(--ink-soft);stroke-width:1.5px}.viz .g-tick{fill:var(--ink-soft);font-size:15px}.viz .g-lbl{fill:var(--ink);font-size:16px}.viz .g-title{fill:var(--ink);font-size:18px;font-weight:700}.viz .g-pt{fill:var(--margin)}.viz-wait{color:var(--ink-soft);font-style:italic}@media (max-width:860px){.reader-acts .wide{display:none}.reader-acts{gap:12px}.viz{padding:4px}}.viz .g-legend{fill:var(--panel);opacity:.9;stroke:var(--line)}.videos{border-top:2px dashed var(--line);margin-top:20px;padding-top:14px}.videos-head{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.videos h3{font-size:1.05rem}.vgrid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.vgrid button{text-align:left;border:1px solid var(--line);background:var(--chip);width:100%;color:var(--ink);cursor:pointer;font:inherit;border-radius:10px;padding:0 0 8px;display:block;overflow:hidden}.vgrid img{aspect-ratio:16/9;object-fit:cover;background:var(--line);width:100%;display:block}.vgrid .vt{-webkit-line-clamp:2;-webkit-box-orient:vertical;padding:8px 10px 2px;font-size:.9rem;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.vgrid .vm{color:var(--ink-soft);padding:0 10px;font-size:.8rem;display:block}.player{margin-top:12px}.player iframe{aspect-ratio:16/9;background:#000;border:0;border-radius:10px;width:100%}@media (max-width:860px){.vgrid{grid-template-columns:1fr 1fr;gap:8px}.vgrid .vt{font-size:.82rem}}.primary.alt{color:var(--ink);background:0 0}.actions .video-btn{background:var(--margin);border-color:var(--margin);color:#fff;grid-column:1/-1}.explainer .xstage{padding-bottom:20px}.scene-no{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin:0 0 4px;font-size:.8rem}.scene-h{margin:0 0 14px;font-size:1.5rem}.steps{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.steps li{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:10px 14px;transition:opacity .35s,transform .35s,border-color .35s}.steps li .md p{margin:0}.steps li.later{opacity:0;pointer-events:none;transform:translateY(8px)}.steps li.now{border-color:var(--hi);box-shadow:0 0 0 2px var(--hi) inset}.steps li.seen{opacity:.75}.caption{text-align:center;color:#fff;background:#000000c7;margin:0;padding:8px 16px;font-size:1rem;line-height:1.4}.player-bar{border-top:1px solid var(--line);background:var(--panel);padding:8px 16px;padding-bottom:max(8px,env(safe-area-inset-bottom))}.progress{background:var(--chip);border-radius:2px;height:4px;margin-bottom:8px;overflow:hidden}.progress i{background:var(--margin);height:100%;transition:width .3s;display:block}.controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.controls .link{font-size:1.05rem;text-decoration:none}.controls .play{min-width:110px}.explainer .steps li{font-size:1.15rem}@media (min-width:861px){.explainer .scene-h{font-size:1.9rem}.explainer .steps li{padding:14px 18px;font-size:1.3rem}}.years-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:6px 0 4px;font-size:.75rem}.years.years-k6{grid-template-columns:repeat(7,1fr);gap:6px}.years.years-k6 button small{display:none}.test-setup{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.test-setup label{color:var(--ink-soft);flex-direction:column;gap:4px;font-size:.85rem;display:flex}.test-bar{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:.92rem;display:flex}.timer{font-variant-numeric:tabular-nums;font-weight:800}.timer.low{color:var(--margin)}.dots{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.dots button{border:1px solid var(--line);background:var(--chip);width:34px;height:34px;color:var(--ink);font:inherit;cursor:pointer;border-radius:50%;font-size:.85rem}.dots button.done{background:var(--ink-soft);color:var(--paper)}.dots button[aria-selected=true]{outline:3px solid var(--hi)}.tq .md{font-size:1.1rem}.tq .opt{text-align:left;border:2px solid var(--line);background:var(--chip);width:100%;color:var(--ink);font:inherit;cursor:pointer;border-radius:10px;margin:8px 0;padding:10px 14px;display:block}.tq .opt .md p{margin:0}.tq .opt.picked{border-color:var(--accent);background:var(--hi);color:var(--hi-ink)}.tq .tf{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tq .ans{align-items:center;gap:8px;margin-top:8px;display:flex}.review{padding-left:1.2em}.review>li{border-left:4px solid var(--line);border-radius:10px;margin-bottom:18px;padding:10px 12px}.review>li.right{border-left-color:#2e8b57}.review>li.wrong{border-left-color:var(--margin)}.review .mark{margin-right:6px;font-weight:800}.review>li.right .mark{color:#2e8b57}.review>li.wrong .mark{color:var(--margin)}.review .why{color:var(--ink-soft);border-top:1px dashed var(--line);margin-top:6px;padding-top:6px;font-size:.95rem}.optlist{margin:4px 0;padding-left:1.2em}.optlist .md p{margin:0}@media (max-width:860px){.test-setup{grid-template-columns:1fr 1fr}}.review .verdict{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.review .verdict .md p{margin:0}.hoppy{max-width:760px}.hp-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.hp-head h1{font-size:2rem}.hp-home,.hp-play,.hp-garden-panel{flex-direction:column;gap:16px;margin-bottom:18px;display:flex}.hp-stage{align-items:flex-end;gap:12px;display:flex}.hp-stage svg{flex:none}.hp-bubble{background:var(--chip);border:2px solid var(--line);border-radius:18px;flex:1;min-width:0;margin-bottom:40px;padding:14px 16px;font-size:1.2rem;line-height:1.45;position:relative}.hp-bubble:before{content:"";border:10px solid #0000;border-right-color:var(--line);border-left:0;position:absolute;bottom:22px;left:-12px}.hp-bubble p{margin:0}.hp-bubble .streak-chip{margin-top:8px}.hoppy-art .hp-fur{fill:var(--fur);stroke:var(--fur-line);stroke-width:3px}.hoppy-art .hp-inner{fill:var(--fur-inner)}.hoppy-art .hp-belly{fill:var(--belly)}.hoppy-art .hp-cheek{fill:var(--fur-inner);opacity:.8}.hoppy-art .hp-nose{fill:#e86a8a}.hoppy-art .hp-eye{fill:#13294b}.hoppy-art .hp-shine{fill:#fff}.hoppy-art .hp-mouth{fill:#13294b}.hoppy-art .hp-line{fill:none;stroke:#13294b;stroke-width:3.5px;stroke-linecap:round}.hoppy-art .hp-scarf{fill:var(--scarf)}.hoppy-art.buddy-joey{--fur:#e3a66b;--fur-inner:#f6cfa3;--belly:#fbe6cc}.hoppy-art.buddy-joey .hp-nose{fill:#5a3a2a}.hoppy-art.buddy-pip{--fur:#6cc56b;--fur-inner:#a8e39e;--belly:#ddf5c8}.hoppy-art.buddy-wally{--fur:#a8907c;--fur-inner:#d7c3b1;--belly:#e9dccf}.hoppy-art.buddy-wally .hp-nose{fill:#5a4336}.hoppy-art.buddy-buddy{--fur:#f2c86b;--fur-inner:#f8dfa2;--belly:#fbefd0;--scarf:#d9403b}.hoppy-art.buddy-buddy .hp-ear{fill:#d9a84a;stroke:var(--fur-line);stroke-width:3px}.hoppy-art.buddy-buddy .hp-nose{fill:#2b2b2b}.hoppy-art .hp-tongue{fill:#e86a8a}.hoppy-art .hp-tag{fill:#f7c948;stroke:var(--fur-line);stroke-width:2px}.hoppy-art.buddy-gucci{--fur:#c48e5c;--fur-inner:#e0b98f;--belly:#ebd2b4}.hoppy-art.buddy-gucci .hp-ear{fill:#a9734a;stroke:var(--fur-line);stroke-width:3px}.hoppy-art.buddy-gucci .hp-nose{fill:#2b2b2b}.hoppy-art .hp-bow{fill:#e86a8a;stroke:var(--fur-line);stroke-width:2px}.hoppy-art.tap{animation:.7s cubic-bezier(.3,1.6,.5,1) hp-bounce}@keyframes hp-bounce{0%{transform:scale(1)}30%{transform:scale(1.12,.9)translateY(4px)}60%{transform:scale(.95,1.08)translateY(-16px)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.hoppy-art.tap{animation:none}}.hoppy-art.hop{animation:.6s ease-out hp-hop}@keyframes hp-hop{0%,to{transform:translateY(0)}40%{transform:translateY(-18px)}70%{transform:translateY(2px)}}@media (prefers-reduced-motion:reduce){.hoppy-art.hop{animation:none}}.hp-years{flex-wrap:wrap;gap:8px;display:flex}.hp-years button{border:2px solid var(--line);background:var(--panel);min-height:48px;color:var(--ink);font:700 1rem var(--font-body);cursor:pointer;border-radius:999px;padding:8px 16px}.hp-years button.on{background:var(--hi);border-color:var(--ink);color:var(--hi-ink)}.hp-topics,.hp-choices{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px;display:grid}.hp-choices.two{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.hp-choice{border:2px solid var(--line);background:var(--panel);min-height:60px;color:var(--ink);text-align:left;cursor:pointer;border-radius:14px;padding:12px 16px;font-size:1.15rem;font-weight:700;line-height:1.3}.hp-choice .md p{margin:0}.hp-choice:hover:not(:disabled){border-color:var(--ink)}.hp-choice:focus-visible,.hp-years button:focus-visible{outline:3px solid var(--hi);outline-offset:2px}.hp-choice.picked{background:var(--hi);border-color:var(--ink);color:var(--hi-ink)}.hp-choice.big{text-align:center;min-height:72px;font-size:1.2rem}.hp-choice.ok{border-color:var(--ok-ink);color:var(--ok-ink)}.hp-choice.no{border-color:var(--no-ink);color:var(--no-ink)}.hp-choice.right{background:var(--ok-bg);border-color:var(--ok-ink);color:var(--ok-ink)}.hp-choice.wrong{background:var(--no-bg);border-color:var(--no-ink);color:var(--no-ink)}.hp-choice:disabled{cursor:default}.hp-next{border-radius:14px;align-self:flex-start;min-height:56px;padding:12px 28px;font-size:1.15rem}.hp-top{align-items:center;gap:12px;display:flex}.hp-progress{background:var(--chip);border-radius:999px;flex:1;height:12px;overflow:hidden}.hp-progress i{background:var(--carrot);height:100%;transition:width .3s;display:block}.hp-topic{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;max-width:40%;font-size:.95rem;font-weight:700;overflow:hidden}.hp-board{background:var(--panel);border:2px dashed var(--line);border-radius:16px;padding:16px 18px;font-size:1.25rem}.hp-board .md p{margin:0 0 6px}.hp-problem{font-weight:700}.hp-working{color:var(--ink-soft);margin:8px 0;padding-left:24px}.hp-answer{margin:8px 0 0}.hp-q{flex-direction:column;gap:12px;display:flex}.hp-q-text{font-size:1.35rem;font-weight:700}.hp-q-text .md p{margin:0}.hp-number{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hp-number input{text-align:center;border-radius:12px;width:9rem;padding:10px 14px;font-size:1.6rem}.hp-feedback{border-radius:14px;flex-direction:column;gap:8px;padding:14px 16px;font-size:1.1rem;display:flex}.hp-feedback p,.hp-feedback .md p{margin:0}.hp-feedback.ok{background:var(--ok-bg);color:var(--ok-ink)}.hp-feedback.no{background:var(--no-bg);color:var(--no-ink)}.hp-feedback .hp-next{margin-top:4px}.hp-card{background:var(--hi);color:var(--hi-ink);border-radius:16px;padding:18px 20px;font-size:1.4rem;font-weight:700}.hp-card .md p{margin:0}.hp-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.hp-summary div{background:var(--chip);text-align:center;border-radius:14px;padding:12px}.hp-summary b{font:700 1.8rem var(--font-head);display:block}.hp-summary span{color:var(--ink-soft);font-size:.9rem}.hp-tell{margin:0;font-size:1.1rem}.hp-garden{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px;display:grid}.plot{text-align:center;flex-direction:column;align-items:center;gap:4px;margin:0;display:flex}.plot svg{width:100%;max-width:110px;height:auto}.plot figcaption{color:var(--ink-soft);font-size:.85rem;line-height:1.25}.plot.s3 figcaption,.plot.s2 figcaption{color:var(--ink);font-weight:700}.plot .soil{fill:var(--soil)}.plot .seed{fill:#5a3a22}.plot .mound{fill:#6e4a2e}.plot .stem{stroke:var(--leaf);stroke-width:3px;fill:none;stroke-linecap:round}.plot.s0 .soil{opacity:.45}.plot .leaf{fill:var(--leaf)}.plot .carrot{fill:var(--carrot)}.hp-play>.plot{align-self:center;max-width:160px}@media (max-width:560px){.hp-bubble{margin-bottom:24px;font-size:1.05rem}.hoppy-art{width:90px;height:99px}.hp-head h1{font-size:1.6rem}.hp-summary b{font-size:1.4rem}}.topnav{border-bottom:1px solid var(--line);align-items:center;gap:20px;margin:0 0 22px;padding:6px 0 12px;font-size:.95rem;display:flex}.topnav .brand{color:var(--ink);text-decoration:none;display:flex}.navlinks{flex-wrap:wrap;gap:4px;display:flex}.navlinks a{color:var(--ink-soft);border-radius:999px;padding:7px 12px;font-weight:600;text-decoration:none}.navlinks a:hover{color:var(--ink);background:var(--chip)}.navlinks a[aria-current=page]{color:var(--accent-text);background:var(--accent-soft)}.topnav .spacer{flex:1}.admin-link{color:var(--accent-text);font-weight:700;text-decoration:none;display:none}.topnav .link{color:var(--ink-soft);white-space:nowrap;font-size:.85rem}.logo{font:700 1.3rem/1 var(--font-head);letter-spacing:-.01em;align-items:center;gap:9px;display:inline-flex}.logo b{color:var(--accent-text);font-weight:700}.app-icon{border-radius:22%;flex:none}.tabbar{display:none}@media (max-width:760px){.navlinks,.topnav .wide{display:none}.admin-link{display:inline}.topnav{gap:14px;margin-bottom:14px;padding:4px 0 10px}.logo{font-size:1.15rem}.wrap.has-tabs{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}.tabbar{z-index:40;background:var(--panel);border-top:1px solid var(--line);padding:6px max(6px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-left,0px));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #1218260f}.tabbar a{color:var(--ink-soft);border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-height:48px;padding:6px 0;font-size:.72rem;font-weight:600;text-decoration:none;display:flex}.tabbar svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.tabbar a[aria-current=page]{color:var(--accent-text)}.tabbar a[aria-current=page] svg{stroke-width:2.2px}.reader,.explainer{z-index:60}}:root[data-look=kids] .tabbar a[aria-current=page]{background:var(--accent-soft)}.home-head{align-items:center}.home-head .sub{margin-top:4px}.section-h{margin:26px 0 12px;font-size:1.15rem}.home-cards{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:14px;margin-top:16px;display:grid}.next-up{color:#fff;background:linear-gradient(135deg,var(--next-a),var(--next-b));border-radius:var(--radius);flex-direction:column;justify-content:center;gap:3px;min-height:120px;padding:18px 20px;text-decoration:none;display:flex}.next-up small{opacity:.85;font-size:.85rem}.next-up b{font:600 1.2rem/1.3 var(--font-head)}.home-cards .tiles{grid-template-columns:1fr 1fr;gap:10px;display:grid}.home-cards .tiles a{color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;justify-content:center;min-width:0;padding:10px 14px;text-decoration:none;display:flex}.home-cards .tiles a:hover{border-color:var(--accent)}.home-cards .tiles b{font:700 1.35rem/1.2 var(--font-head)}.home-cards .tiles span{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;overflow:hidden}@media (max-width:760px){.home-cards{grid-template-columns:1fr}.next-up{min-height:0}}.kids-hero{flex-direction:column;gap:14px;margin-bottom:20px;display:flex}.kids-hero .hp-bubble{margin-bottom:30px}.big-btn{text-align:center;background:var(--k-orange);color:#fff;font:700 1.6rem/1 var(--font-head);box-shadow:0 6px 0 var(--k-orange-d);border-radius:22px;padding:22px 16px;text-decoration:none;display:block}.big-btn:active{box-shadow:0 3px 0 var(--k-orange-d);transform:translateY(3px)}.kid-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.kid-tiles a{text-align:center;color:#fff;min-height:76px;font:600 1.1rem/1.25 var(--font-head);border-radius:20px;justify-content:center;align-items:center;padding:12px;text-decoration:none;display:flex}.kid-tiles .t-blue{background:var(--k-blue);box-shadow:0 5px 0 var(--k-blue-d)}.kid-tiles .t-green{background:var(--k-green);box-shadow:0 5px 0 var(--k-green-d)}.kid-tiles .t-yellow{background:var(--k-yellow);color:#2a1e4a;box-shadow:0 5px 0 var(--k-yellow-d)}@media (max-width:560px){.kid-tiles{grid-template-columns:1fr 1fr}.kid-tiles a:first-child{grid-column:1/-1}.big-btn{padding:20px 12px;font-size:1.4rem}}:root[data-look=kids] h1{font-weight:700}:root[data-look=kids] .panel{border-width:2px}:root[data-look=kids] .askbox h2{font-size:1.4rem}:root[data-look=kids] .years button{border-radius:14px}:root[data-look=kids] .topics button{padding:8px 14px;font-size:.95rem}.play{max-width:820px}.pl-group{margin-top:18px}.pl-group h2{margin-bottom:10px;font-size:1.35rem}.pl-topics{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:12px;display:grid}.pl-topic{color:#fff;min-height:78px;font:600 1.15rem/1.25 var(--font-head);cursor:pointer;text-align:left;background:var(--k-blue);box-shadow:0 5px 0 var(--k-blue-d);border:0;border-radius:20px;padding:12px 14px}.pl-topic.s-maths{background:var(--k-orange);box-shadow:0 5px 0 var(--k-orange-d)}.pl-topic.s-english{background:var(--k-blue);box-shadow:0 5px 0 var(--k-blue-d)}.pl-topic.s-science{background:var(--k-green);box-shadow:0 5px 0 var(--k-green-d)}.pl-topic:active:not(:disabled){box-shadow:none;transform:translateY(3px)}.pl-topic:disabled{opacity:.7}.pl-wait{align-items:center;gap:8px;display:flex}.pl-lesson{background:var(--panel);border:2px solid var(--line);border-radius:24px;flex-direction:column;gap:14px;padding:16px;display:flex}.pl-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.pl-carrots{gap:2px;font-size:1.25rem;display:flex}.pl-carrots span{filter:grayscale();opacity:.35;transition:all .3s}.pl-carrots span.on{filter:none;opacity:1}.pl-carrots span.now{filter:none;opacity:1;transform:scale(1.25)}.pl-hoppy{align-items:center;gap:10px;display:flex}.pl-hoppy svg{flex:none}.pl-say{background:var(--chip);border:2px solid var(--line);border-radius:20px;flex:1;align-items:center;gap:8px;min-width:0;padding:12px 14px;display:flex}.pl-say p{font:600 1.3rem/1.35 var(--font-head);flex:1;margin:0}.pl-again{background:var(--panel);cursor:pointer;border:0;border-radius:50%;flex:none;width:48px;height:48px;font-size:1.4rem}.pl-stage{flex-direction:column;align-items:center;gap:16px;padding:6px 0 4px;display:flex}.pl-next{background:var(--k-orange);color:#fff;min-height:64px;font:700 1.35rem var(--font-head);box-shadow:0 6px 0 var(--k-orange-d);cursor:pointer;border:0;border-radius:20px;padding:12px 34px}.pl-next.alt{background:var(--k-blue);box-shadow:0 6px 0 var(--k-blue-d)}.pl-next:active{box-shadow:0 3px 0 var(--k-orange-d);transform:translateY(3px)}.pl-end{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.pl-show{text-align:center}.pl-big-emoji{word-break:break-word;font-size:clamp(2.6rem,9vw,4rem);line-height:1.25}.pl-caption{font:700 clamp(2rem,7vw,3rem)/1.2 var(--font-head);margin-top:6px}.pl-items{flex-wrap:wrap;justify-content:center;gap:10px;max-width:640px;display:flex}.pl-items.count .pl-item{font-size:clamp(2.4rem,9vw,3.4rem);animation:.35s both pl-pop}.pl-item.btn{border:3px solid var(--line);background:var(--panel);cursor:pointer;border-radius:20px;place-items:center;width:clamp(68px,20vw,92px);height:clamp(68px,20vw,92px);font-size:clamp(2.4rem,9vw,3.2rem);line-height:1;display:grid}.pl-item.btn.got{border-color:var(--k-green);background:var(--ok-bg);transform:scale(1.06)}.pl-count-left{font:600 1.1rem var(--font-head);color:var(--ink-soft);margin:0}.pl-options{gap:12px;width:100%;max-width:560px;display:grid}.pl-options.nums{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.pl-options.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,96px),1fr))}.pl-opt{border:3px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;min-height:88px;box-shadow:0 5px 0 var(--line);border-radius:22px}.pl-opt.num{font:700 2.4rem var(--font-head)}.pl-opt.card{flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:10px;display:flex}.pl-opt.card .e{font-size:3rem;line-height:1.1}.pl-opt.card .l{font:600 1.05rem var(--font-head);color:var(--ink-soft)}.pl-opt.good,.pl-side.good,.pl-tick.good{box-shadow:0 5px 0 var(--k-green);border-color:var(--k-green)!important;background:var(--ok-bg)!important}.pl-opt:disabled{cursor:default}.shake{animation:.45s pl-shake}@keyframes pl-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}@keyframes pl-pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.pl-bigword{font:700 clamp(3.5rem,14vw,6rem)/1 var(--font-head);color:var(--accent-text)}.pl-sum{font:700 2.2rem var(--font-head)}.pl-line{scrollbar-width:thin;border-bottom:4px solid var(--ink-soft);gap:4px;width:100%;padding:52px 6px 8px;scroll-padding:0 40%;display:flex;position:relative;overflow-x:auto}.pl-tick{border:2px solid var(--line);background:var(--panel);min-height:56px;color:var(--ink);font:700 1.35rem var(--font-head);cursor:pointer;border-radius:14px;flex:1 0 46px;position:relative}.pl-tick.start{border-color:var(--k-blue)}.pl-bunny{pointer-events:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%,-2px)}.pl-bunny.jump{animation:.55s ease-out pl-jump}@keyframes pl-jump{0%{transform:translate(-120%,-2px)}50%{transform:translate(-80%,-30px)}to{transform:translate(-50%,-2px)}}.pl-sides{grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:640px;display:grid}.pl-side{border:3px solid var(--line);background:var(--panel);cursor:pointer;min-height:160px;box-shadow:0 5px 0 var(--line);border-radius:22px;flex-wrap:wrap;place-content:center;gap:4px;padding:12px;font-size:clamp(1.8rem,7vw,2.6rem);display:flex}.pl-seq{flex-wrap:wrap;justify-content:center;gap:8px;font-size:clamp(2.2rem,9vw,3.2rem);display:flex}.pl-seq .q{border:3px dashed var(--accent);min-width:1.4em;color:var(--accent-text);font:700 1em var(--font-head);border-radius:16px;place-items:center;display:inline-grid}.pl-seq .q.filled{border-style:solid;border-color:var(--k-green)}.pl-sort-item{min-height:1.1em;font-size:clamp(4rem,16vw,6rem);line-height:1}.pl-sort-item .pop{animation:.3s both pl-pop;display:inline-block}.pl-baskets{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:12px;width:100%;max-width:640px;display:grid}.pl-basket{border:3px solid var(--line);background:var(--chip);min-height:150px;color:var(--ink);cursor:pointer;box-shadow:0 5px 0 var(--line);border-radius:24px;flex-direction:column;align-items:center;gap:8px;padding:12px;display:flex}.pl-basket .bl{font:700 1.25rem var(--font-head)}.pl-basket .in{flex-wrap:wrap;justify-content:center;gap:2px;font-size:1.8rem;display:flex}.pl-basket.hintme{border-color:var(--k-yellow);box-shadow:0 0 0 4px var(--k-yellow)}.pl-party{flex-wrap:wrap;justify-content:center;gap:4px;max-width:100%;font-size:clamp(2rem,10vw,3rem);display:flex}.pl-party span{animation:.9s ease-out both pl-up}@keyframes pl-up{0%{opacity:0;transform:translateY(30px)scale(.4)}60%{opacity:1;transform:translateY(-14px)scale(1.15)}to{transform:translateY(0)scale(1)}}.pl-result{font:600 1.3rem var(--font-head);text-align:center;margin:0}.play-btn{color:#fff;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;background:var(--k-green)!important;border-color:var(--k-green)!important}@media (max-width:560px){.pl-lesson{border-radius:20px;padding:12px}.pl-say p{font-size:1.12rem}.pl-hoppy svg{width:64px;height:70px}.pl-next{min-height:58px;font-size:1.2rem}}@media (prefers-reduced-motion:reduce){.pl-items.count .pl-item,.pl-party span,.pl-bunny.jump,.shake{animation:none}}a.primary,a.video-btn{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.pl-opt:disabled,.pl-side:disabled,.pl-basket:disabled{opacity:1}.pl-bunny .hoppy-art{width:40px!important;height:44px!important}.pl-line{padding-top:58px}.pl-lesson,.pl-stage{min-width:0;max-width:100%}.grid>*,.home-cards>*,.panel,.askbox .row>*{min-width:0}select{text-overflow:ellipsis;min-width:0;max-width:100%}.wrap{overflow-x:clip}.sound-prompt{left:50%;bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:70;background:var(--k-orange);color:#fff;font:700 1.15rem var(--font-head);box-shadow:0 6px 0 var(--k-orange-d),0 10px 30px #00000040;cursor:pointer;white-space:nowrap;border:0;border-radius:999px;padding:16px 26px;animation:1.2s ease-in-out infinite sp-bounce;position:fixed;transform:translate(-50%)}@keyframes sp-bounce{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-6px)}}@media (prefers-reduced-motion:reduce){.sound-prompt{animation:none}}.sound-prompt.muted{animation:none}.learn{max-width:760px}.learn-pick{flex-direction:column;gap:10px;display:flex}.learn-pick h2{margin-top:6px;font-size:1rem}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1.5px solid var(--line);background:var(--panel);color:var(--ink);font:600 .95rem var(--font-body);cursor:pointer;border-radius:999px;min-height:42px;padding:8px 14px}.chip:hover{border-color:var(--accent)}.chip.on{background:var(--accent);border-color:var(--accent);color:var(--btn-ink)}.topic-list{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.topic-row{text-align:left;border:0;border-bottom:1px solid var(--line);background:var(--panel);width:100%;color:var(--ink);font:inherit;cursor:pointer;align-items:center;gap:12px;min-height:56px;padding:14px 16px;display:flex}.topic-row:last-child{border-bottom:0}.topic-row:hover{background:var(--chip)}.topic-row .dot{border:2px solid var(--line);border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:.8rem;font-weight:700;display:grid}.topic-row .dot.learning{border-color:var(--accent);background:conic-gradient(var(--accent) 50%,transparent 0)}.topic-row .dot.mastered{border-color:var(--ok-ink);background:var(--ok-ink);color:var(--panel)}.topic-row .tt{flex:1;min-width:0;font-weight:600}.topic-row .ts{color:var(--ink-soft);flex:none;font-size:.85rem}button.next-up{text-align:left;cursor:pointer;font:inherit;border:0}.review-card{text-align:left;border:1.5px solid var(--accent);background:var(--accent-soft);color:var(--ink);border-radius:var(--radius);cursor:pointer;font:inherit;flex-direction:column;justify-content:center;gap:2px;padding:16px 18px;display:flex}.review-card b{font:700 1.8rem/1 var(--font-head);color:var(--accent-text)}.review-card small{color:var(--ink-soft)}.ls{flex-direction:column;gap:12px;max-width:640px;margin:0 auto;display:flex}.ls-top{top:env(safe-area-inset-top,0px);z-index:5;background:var(--paper);align-items:center;gap:12px;padding:8px 0;display:flex;position:sticky}.ls-x{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;padding:6px;font-size:1.4rem}.ls-bar{background:var(--chip);border-radius:99px;flex:1;height:10px;overflow:hidden}.ls-bar i{background:var(--accent);border-radius:99px;height:100%;transition:width .35s;display:block}.ls-xp{font:600 .95rem var(--font-head);color:var(--k-orange-d);white-space:nowrap}.ls-kicker .md p{margin:0}.ls-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;flex-direction:column;gap:14px;min-width:0;padding:20px;animation:.28s ease-out ls-in;display:flex}@keyframes ls-in{0%{opacity:.001;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ls-card{animation:none}}.ls-card .md{max-width:none}.ls-card .md p{margin:0 0 .4em}.ls-card .md p:last-child{margin-bottom:0}.ls-h{margin:0;font-size:1.35rem}.ls-p{margin:0}.ls-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ls-text{font-size:1.08rem}.ls-criteria,.ls-recap{flex-direction:column;gap:8px;margin:0;padding-left:0;list-style:none;display:flex}.ls-criteria li,.ls-recap li{background:var(--chip);border-radius:12px;padding:10px 14px}.ls-criteria li:before{content:"☐ ";color:var(--accent-text)}.ls-recap li:before{content:"★ ";color:var(--k-orange)}.ls-q{font-size:1.15rem;font-weight:600}.ls-tag{font:600 .8rem var(--font-head);color:var(--accent-text);background:var(--accent-soft);border-radius:999px;align-self:flex-start;margin:0;padding:4px 10px}.ls-opts{gap:10px;display:grid}.ls-opt{border:2px solid var(--line);background:var(--panel);color:var(--ink);text-align:left;font:500 1.02rem var(--font-body);cursor:pointer;border-radius:14px;min-height:54px;padding:12px 16px}.ls-opt:hover:not(:disabled){border-color:var(--accent)}.ls-opt:disabled{cursor:default;opacity:1}.ls-opt.good{border-color:var(--ok-ink);background:var(--ok-bg);color:var(--ok-ink)}.ls-opt.bad{border-color:var(--no-ink);background:var(--no-bg);color:var(--no-ink)}.ls-fb{border-radius:14px;padding:12px 14px;font-size:1rem}.ls-fb .md,.ls-fb .md p{display:inline}.ls-fb.ok{background:var(--ok-bg);color:var(--ok-ink)}.ls-fb.no{background:var(--no-bg);color:var(--no-ink)}.ls-ans{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ls-ans input{width:8.5rem;font:600 1.25rem var(--font-head);text-align:center;padding:10px}.ls-btn{background:var(--btn);color:var(--btn-ink);font:600 1rem var(--font-head);cursor:pointer;min-height:48px;box-shadow:var(--press);border:0;border-radius:14px;justify-content:center;align-items:center;padding:12px 18px;text-decoration:none;display:inline-flex}.ls-btn.ghost{background:var(--accent-soft);color:var(--accent-text);box-shadow:none}.ls-btn.wide{width:100%;min-height:56px;font-size:1.1rem}.ls-btn:disabled{opacity:.4;cursor:default}.ls-link{color:var(--accent-text);font:600 .95rem var(--font-head);cursor:pointer;background:0 0;border:0;padding:4px 0}.ls-help{flex-direction:column;gap:8px;display:flex}.ls-hint{background:var(--accent-soft);border-radius:14px;padding:12px 14px}.ls-nudge{color:var(--ink-soft);margin:0;font-size:.95rem}.ls-steps{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.ls-steps li{background:var(--chip);border-radius:12px;padding:10px 14px;animation:.25s ease-out ls-in}.ls-steps small{color:var(--ink-soft);font-size:.8rem;display:block}.ls-yourturn{border:2px dashed var(--accent);border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.ls-yourturn p{margin:0}.ls-yourturn .md,.ls-yourturn .md p{display:inline}.ls-explain{min-height:110px;font-size:1.05rem}.ls-match{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ls-match>div{flex-direction:column;gap:8px;display:flex}.ls-side{border:2px solid var(--line);background:var(--panel);color:var(--ink);text-align:left;font:500 .98rem var(--font-body);cursor:pointer;border-radius:12px;min-height:52px;padding:10px 12px}.ls-side.sel{border-color:var(--accent);background:var(--accent-soft)}.ls-side.done{border-color:var(--ok-ink);background:var(--ok-bg);color:var(--ok-ink);cursor:default}.ls-side .md p,.ls-opt .md p{margin:0}.ls-order{flex-direction:column;gap:6px;margin:0;padding-left:1.4em;display:flex}.ls-order li{background:var(--ok-bg);color:var(--ok-ink);border-radius:10px;padding:8px 12px}.ls-slider label{font:600 1rem var(--font-head);justify-content:space-between;display:flex}.ls-slider label b{color:var(--k-orange)}.ls-slider input{width:100%;accent-color:var(--k-orange);background:0 0;border:0;height:32px;padding:0}.ls-foot{background:linear-gradient(transparent,var(--paper) 35%);padding:14px 0 6px;position:sticky;bottom:0}@media (max-width:760px){.ls-foot{bottom:calc(64px + env(safe-area-inset-bottom,0px))}}.ls-wait{text-align:center;align-items:center;padding:40px 20px}.ls-spinner{border:4px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:44px;height:44px;animation:.9s linear infinite ls-spin}@keyframes ls-spin{to{transform:rotate(360deg)}}.ls-finish{text-align:center;align-items:center}.ls-big{font:700 2.6rem var(--font-head);color:var(--k-orange)}.ls-sum{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;display:grid}.ls-sum div{background:var(--chip);border-radius:14px;padding:10px 6px}.ls-sum b{font:700 1.4rem var(--font-head);display:block}.ls-sum span{color:var(--ink-soft);font-size:.8rem}.check{cursor:pointer;align-items:flex-start;gap:10px;margin:14px 0 4px;font-size:.92rem;display:flex}.check input{flex:none;width:20px;height:20px;margin-top:2px}.signin a{color:var(--accent-text);font-weight:600}.fam-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.fam-welcome{background:var(--accent-soft);border-radius:12px;margin:6px 0 10px;padding:10px 14px}.fam-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.fam-row select{width:auto;min-width:150px}.fam-pin{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.fam-pin input{width:12rem}.fam-add{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin-top:10px;padding-top:12px;display:flex}.fam-add h4{font:600 1rem var(--font-head);margin:0}.fam-add .primary{align-self:flex-start}.fam-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.fam-grid label{color:var(--ink-soft);flex-direction:column;gap:4px;font-size:.85rem;display:flex}@media (max-width:560px){.fam-grid{grid-template-columns:1fr}}.fam-msg{margin:8px 0 0;font-weight:600}.fam-email{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.link.danger{color:var(--margin);font-weight:700}.fam-email .acts{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.own-topic{gap:8px;min-width:0;margin-top:12px;display:flex}.own-topic input{min-width:0;font:inherit;border:1px solid var(--line,#3334);color:inherit;background:0 0;border-radius:999px;flex:1;padding:10px 14px}.ls-progress{text-align:left;margin:14px 0 6px;max-width:280px;color:var(--ink-soft);gap:8px;margin-inline:auto;padding:0;list-style:none;display:grid}.ls-progress .did{color:var(--ink)}.ls-progress .now{color:var(--ink);font-weight:700}.table{border-collapse:collapse;width:100%;max-width:420px;margin:6px 0}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:6px 10px}.quiz .opt .md p,.quiz li>div .md p,.quiz .why .md p{margin:0}.buddy-pick{flex-direction:column;gap:14px;display:flex}.buddy-pick h1{margin:0;font-size:2rem}.buddy-pick .sub{color:var(--ink-soft);margin:0;font-size:1.1rem}.buddy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.buddy-card{border:3px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:22px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:14px 8px 12px;display:flex}.buddy-card.on{border-color:var(--k-orange);background:var(--chip);box-shadow:0 6px 0 var(--k-orange-d)}.buddy-card b{font:800 1.25rem var(--font-head)}.buddy-card small{color:var(--ink-soft)}.buddy-card span.bounce svg{animation:.7s cubic-bezier(.3,1.6,.5,1) hp-bounce}.big-btn:disabled{opacity:.5;box-shadow:none;transform:none}button.big-btn{cursor:pointer;border:0;width:100%}.kids-hero .hp-stage button.buddy-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;line-height:0}.kids-hero span.bounce svg{animation:.7s cubic-bezier(.3,1.6,.5,1) hp-bounce}.buddy-link{text-align:center;background:var(--chip);border:2px dashed var(--line);font:700 1.05rem var(--font-head);color:var(--ink);border-radius:18px;padding:12px;text-decoration:none;display:block}.pl-getting{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:30px 12px;display:flex}.pl-getting p{font:700 1.4rem var(--font-head);margin:0}.pl-getting svg{animation:.9s ease-in-out infinite hp-hop}.pl-next.soft{opacity:.75}.buddy-name{font:600 1rem var(--font-head);flex-direction:column;gap:6px;display:flex}.buddy-name input{font:700 1.4rem var(--font-head);border:2px solid var(--line);background:var(--panel);color:var(--ink);border-radius:16px;width:100%;min-width:0;padding:12px 16px}.rp-link{color:var(--ink-soft);font:600 .9rem var(--font-head);cursor:pointer;background:0 0;border:0;padding:6px 0}.rp-link.small{padding:0 6px;font-size:.8rem}.rp-box{background:var(--chip);border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.rp-box p{margin:0;font-weight:600}.rp-box textarea{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--ink);resize:vertical;border-radius:10px;width:100%;min-width:0;padding:8px 10px}.rp-done{color:var(--ink-soft);margin:0;font-size:.9rem}.pl-egg{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:6px 0;display:flex}.pl-egg .egg{font-size:5rem;line-height:1;animation:1s ease-in-out infinite egg-wobble}.pl-egg.crack .egg{animation:.9s ease-in-out egg-crack}.pl-egg .prize{font-size:5.5rem;line-height:1;animation:.6s cubic-bezier(.3,1.6,.5,1) prize-pop}.pl-fact{color:var(--ink-soft);max-width:34ch;margin:0;font-size:1.05rem}.pl-tally{font:700 .95rem var(--font-head);color:var(--k-orange-d);margin:0}@keyframes egg-wobble{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}@keyframes egg-crack{0%{transform:rotate(0)scale(1)}30%{transform:rotate(-14deg)scale(1.05)}60%{transform:rotate(14deg)scale(1.1)}to{opacity:.6;transform:rotate(0)scale(.9)}}@keyframes prize-pop{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.pl-egg .egg,.pl-egg .prize{animation:none}}.stickers{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.stickers h2{margin:0;font-size:1.5rem}.st-count{font:700 1rem var(--font-head);color:var(--k-orange-d)}.st-grid{grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:8px;display:grid}.st{aspect-ratio:1;border:2px solid var(--line);background:var(--chip);cursor:default;opacity:.5;border-radius:16px;justify-content:center;align-items:center;font-size:2rem;display:flex}.st.got{opacity:1;background:var(--panel);cursor:pointer;box-shadow:0 3px 0 var(--line)}.st-card{background:var(--panel);border:2px solid var(--line);border-radius:18px;padding:12px 14px}.st-card b{font:800 1.2rem var(--font-head)}.st-card p{margin:4px 0}.st-card small{color:var(--ink-soft)}.streak-chip{background:var(--chip);font:700 .95rem var(--font-head);color:var(--k-orange-d);border-radius:999px;padding:4px 12px;display:inline-block}.learn-year{font:700 1.15rem var(--font-head);margin:0 0 10px}.learn-year .ls-link{padding:0 6px;font-size:.9rem}.chip.more{color:var(--ink-soft);border-style:dashed}.passage{border:1px solid var(--line);background:var(--chip);border-radius:12px;margin:6px 0 10px;padding:8px 12px}.passage summary{cursor:pointer;font-weight:600}.tq textarea.ext{width:100%;min-width:0;font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--ink);resize:vertical;border-radius:12px;margin-top:8px;padding:10px 12px}.deck-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.deck-card{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:12px;min-width:0;padding:12px 14px;position:relative}.deck-card small{color:var(--ink-soft);font-weight:600;position:absolute;top:8px;right:12px}.deck-card b{font:700 1.05rem var(--font-head);display:block}.deck-card b .md p{margin:0}.deck-card ul{margin:6px 0 0;padding-left:1.2em}.deck-card li .md p,.deck-card details .md p{margin:0}.deck-card details{color:var(--ink-soft);margin-top:6px;font-size:.92rem}.deck-card.k-title{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.deck-card.k-title small{color:inherit;opacity:.85}.present{z-index:50;color:#fff;cursor:pointer;background:#0f131c;flex-direction:column;display:flex;position:fixed;inset:0}.present .slide{flex-direction:column;flex:1;justify-content:center;width:100%;min-width:0;max-width:1100px;margin:0 auto;padding:max(24px,6vw);display:flex}.present .slide h2{font:800 clamp(1.6rem,4.5vw,3rem) var(--font-head);margin:0 0 .5em}.present .slide h2 .md p{margin:0}.present .slide ul{margin:0;padding-left:1.1em;font-size:clamp(1.1rem,2.6vw,1.8rem);line-height:1.5}.present .slide li{margin:.3em 0}.present .slide li .md p{margin:0}.present .slide.k-title{text-align:center;background:var(--accent);align-items:center}.present .slide .sub{opacity:.85;font-size:1.2rem}.present-bar{cursor:default;background:#171c28;justify-content:center;align-items:center;gap:10px;padding:12px;display:flex}.present-bar button{font:600 1rem var(--font-head);color:#fff;cursor:pointer;background:#1e2432;border:1px solid #29344d;border-radius:999px;padding:8px 16px}.present-bar button:disabled{opacity:.4}.av-list{gap:8px;max-width:760px;margin-top:10px;display:grid}.av-row{border:1px solid var(--line);background:var(--panel);border-radius:14px;grid-template-columns:150px 1fr auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.av-row select{min-width:0;margin:0}.av-who{flex-direction:column;line-height:1.2;display:flex}.av-who b{font-size:1.05rem}.av-who .hint{margin:2px 0 0;font-size:.8rem}.av-btn{border:1px solid var(--line);background:var(--chip);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:999px;padding:9px 14px;font-weight:700}.av-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent-text)}.av-save{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.av-save:hover{color:#fff;filter:brightness(1.08)}.av-save.done{background:var(--accent-soft);color:var(--accent-text)}@media (max-width:600px){.av-row{grid-template-columns:1fr 1fr}.av-who,.av-row select{grid-column:1/-1}.av-btn{width:100%}}.ls-prize{background:var(--accent-soft);color:var(--ink);border-radius:14px;align-items:center;gap:10px;margin:10px 0 0;padding:10px 14px;font-size:.95rem;display:flex}.ls-prize-e{font-size:1.8rem;line-height:1}.legal{max-width:760px;margin:0 auto;line-height:1.6}.legal h1{margin:0 0 6px;font-size:1.7rem}.legal h2{margin:22px 0 6px;font-size:1.15rem}.legal h3{margin:14px 0 4px;font-size:1rem}.legal p,.legal li{margin:0 0 10px}.legal ul{padding-left:22px}:root{--tabbar-h:84px}.round-btn{border:2px solid var(--line);background:var(--panel);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:22px;flex:none;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.round-btn svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.round-btn:active{transform:scale(.96)}.page-head{align-items:center;gap:12px;min-height:44px;margin:0 0 16px;display:flex}.page-head h1{letter-spacing:0;flex:1;min-width:0;font-size:1.5rem}.page-head .mode{margin-left:auto}.cta{background:var(--btn);width:100%;height:56px;color:var(--btn-ink);font:700 1.05rem var(--font-body);cursor:pointer;box-shadow:var(--press);border:0;border-radius:16px}.cta:disabled{opacity:.5;cursor:default;box-shadow:none}.cta.ghost{background:var(--panel);color:var(--ink);border:2px solid var(--line);box-shadow:none}.pill-btn{border:2px solid var(--line);background:var(--panel);height:56px;color:var(--ink);font:600 1rem var(--font-body);cursor:pointer;border-radius:16px;padding:0 20px}.pill-btn:disabled{opacity:.4}.year-tag{background:var(--chip);border-radius:999px;align-items:center;height:44px;padding:0 14px;font-size:.95rem;font-weight:700;display:inline-flex}.wrap.focus{max-width:none;padding:0}.stage-page{min-height:100dvh;padding:calc(12px + env(safe-area-inset-top,0px)) 20px calc(16px + env(safe-area-inset-bottom,0px));flex-direction:column;width:100%;max-width:720px;margin:0 auto;display:flex}.stage{background:0 0;border:0;border-radius:0;flex-direction:column;flex:1;gap:14px;min-height:0;padding:0;display:flex}.stage-top{align-items:center;gap:12px;min-height:44px;display:flex}.stage-progress{flex:1;gap:5px;display:flex}.stage-progress i{background:var(--line);border-radius:5px;flex:1;height:10px}.stage-progress i.on{background:var(--accent)}.stage-progress i.now{background:var(--accent);opacity:.55}.stage-buddy{align-items:center;gap:12px;display:flex}.stage-buddy svg{flex:none}.stage-bubble{background:var(--panel);border:2px solid var(--line);min-width:0;font:600 1.2rem/1.25 var(--font-head);border-radius:20px;flex:1;padding:12px 16px}.stage-bubble p{margin:0}.stage-body{flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.stage-actions{gap:12px;padding-top:4px;display:grid}.stage-actions.row{grid-template-columns:auto 1fr;align-items:center}.stage-actions.sticky{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));background:linear-gradient(transparent,var(--paper) 30%);margin-top:auto;padding:16px 0 8px;position:sticky}@media (min-width:761px){.stage-actions.sticky{bottom:0}}.home{flex-direction:column;gap:14px;width:100%;max-width:720px;margin:0 auto;display:flex}.home-top{align-items:center;gap:12px;min-height:56px;display:flex}.home-top .who{flex:1;min-width:0}.home-top h1{letter-spacing:0;font-size:1.4rem;line-height:1.2}.home-top p{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:.95rem;font-weight:700;overflow:hidden}.home-top .buddy-btn{background:var(--chip);cursor:pointer;border:0;border-radius:30px;flex:none;justify-content:center;align-items:flex-end;width:60px;height:60px;padding:0;display:flex;overflow:hidden}.home-top .buddy-btn .hoppy-art{margin-bottom:-2px;width:48px!important;height:53px!important}.home-top .buddy-btn.bounce{animation:.7s bounce}.streak-chip{background:var(--accent-soft);height:36px;color:var(--accent-text);white-space:nowrap;border-radius:18px;align-items:center;gap:5px;padding:0 12px;font-size:.9rem;font-weight:800;display:inline-flex}.avatar{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-text);font:700 1.05rem var(--font-head);border-radius:22px;flex:none;justify-content:center;align-items:center;text-decoration:none;display:flex}.avatar.big{border-radius:28px;width:56px;height:56px;font-size:1.3rem}.big-tiles{flex-direction:column;flex:1;gap:14px;display:flex}.big-tile{color:#fff;border-radius:28px;flex:1;align-items:center;gap:18px;min-height:120px;padding:0 22px;text-decoration:none;display:flex;box-shadow:0 6px #00000038}.big-tile:active{transform:translateY(3px);box-shadow:0 3px #00000038}.big-tile svg{stroke-width:2px;flex:none}.big-tile span{flex-direction:column;min-width:0;display:flex}.big-tile b{font:700 1.7rem/1.1 var(--font-head)}.big-tile small{opacity:.92;font-size:1rem;font-weight:700}.big-tile.orange{background:var(--k-orange)}.big-tile.green{background:var(--k-green)}.big-tile.indigo{background:#4f46e5}.big-tile.small{text-align:center;flex-direction:column;justify-content:center;gap:8px;min-height:116px;padding:0 10px}.big-tile.small b{font-size:1.25rem}.two-tiles{grid-template-columns:1fr 1fr;gap:14px;display:grid}.strip{background:var(--panel);border:2px solid var(--line);min-height:64px;color:var(--ink);border-radius:20px;justify-content:space-between;align-items:center;gap:10px;padding:0 18px;text-decoration:none;display:flex}.strip>span{color:var(--ink-soft);font-size:1rem;font-weight:800}.strip>b{align-items:center;gap:6px;font-size:1.05rem;display:flex}.strip.card{border-width:1px;padding:14px 16px}.strip.card>span{color:var(--ink);flex-direction:column;display:flex}.strip.card small{color:var(--ink-soft);font-size:.9rem;font-weight:500}.strip.card em{background:var(--btn);height:36px;color:var(--btn-ink);border-radius:18px;align-items:center;padding:0 14px;font-size:.9rem;font-style:normal;font-weight:700;display:flex}.next-card{color:#fff;background:#4f46e5;border-radius:24px;align-items:center;gap:16px;min-height:120px;padding:18px 20px;text-decoration:none;display:flex}.next-card svg{flex:none}.next-card>span{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.next-card small{opacity:.85;font-size:.9rem}.next-card b{font:600 1.3rem/1.25 var(--font-head)}.next-card .bar{background:#ffffff4d;border-radius:3px;height:6px;margin-top:8px;display:block;overflow:hidden}.next-card .bar i{background:#fff;border-radius:3px;height:100%;display:block}.home.senior .next-card{min-height:0}.quick{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.quick a{background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:18px;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.quick a svg{stroke:var(--accent)}.home .section-h{margin:8px 0 -4px;font-size:1.05rem}.subjects{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.subjects a{background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:18px;flex-direction:column;justify-content:center;gap:3px;min-height:72px;padding:14px 16px;text-decoration:none;display:flex}.subjects a b{font:600 1rem var(--font-head)}.subjects a small{color:var(--ink-soft);font-size:.85rem}.subjects a.more{border-style:dashed}.me-head{margin-bottom:10px}.me-head .who{flex:1}.me-head h1{font-size:1.4rem}.me-head p{color:var(--ink-soft);margin:0;font-size:.95rem}.me-row{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.me-row .pill{border:1px solid var(--line);background:var(--panel);min-height:40px;color:var(--ink);border-radius:999px;align-items:center;padding:0 14px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.me-row .pill .link{color:inherit;font-size:inherit;text-decoration:none}.pl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.pl-tile{min-height:150px;font:800 1.05rem/1.2 var(--font-body);color:var(--ink);cursor:pointer;text-align:center;border:0;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:12px;display:flex;box-shadow:0 5px #00000014}.pl-tile .pl-ico{font-size:2.6rem;line-height:1}.pl-tile.s-maths{background:#ffe3c2}.pl-tile.s-english{background:#e0e7ff}.pl-tile.s-science{background:#d9f5e6}:root[data-theme=dark] .pl-tile,.pl-tile:where(:root:not([data-theme=light]) *){color:#1b1a3a}.pl-tile:active{box-shadow:none;transform:translateY(3px)}.pl-tile:disabled{opacity:.6}.stage.pl-lesson{background:0 0;border:0;padding:0}.pl-lesson .pl-stage{gap:14px}.pl-opt.num{min-height:84px;font-size:2.2rem}.pl-opt.card{min-height:72px}.pl-next{height:56px;font-size:1.05rem}.pl-getting{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;font-size:1.1rem;display:flex}.pl-getting small{color:var(--ink-soft)}.hp-plots{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.hp-plot{border:3px solid var(--line);background:var(--panel);color:var(--ink);font:800 1rem/1.2 var(--font-body);cursor:pointer;text-align:center;border-radius:22px;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;display:flex}.hp-plot.picked{border-color:var(--accent);background:var(--accent-soft)}.hp-q-text{font:600 1.35rem/1.25 var(--font-head)}.hp-board{border:3px solid var(--line);border-radius:22px;font-size:1.15rem}.hp-problem{font:700 1.8rem/1.2 var(--font-head);text-align:center}.hp-answer{text-align:center;font-size:1.15rem}.hp-card{font:600 1.3rem/1.3 var(--font-head);padding:18px 20px}.hp-choice{border-width:3px;border-radius:20px;min-height:64px;font-size:1.05rem}.hp-choice.big{min-height:72px;font-size:1.1rem}.hp-choices,.hp-choices.two{grid-template-columns:1fr}.hp-feedback{font-size:1.05rem}.hp-play>.plot{max-width:120px}.hp-progress{height:10px}.stage-page .ls{flex-direction:column;flex:1;min-height:0;display:flex}.stage-page .ls-card{flex:1;min-height:0;overflow:auto}.ls-top .ls-x{border:2px solid var(--line);background:var(--panel);border-radius:22px;width:44px;height:44px}.stage-top .dots{scrollbar-width:none;flex-wrap:nowrap;flex:1;gap:5px;margin:0;overflow:auto}.stage-top .dots button{flex:none;width:30px;height:30px;font-size:.8rem}.timer{font-variant-numeric:tabular-nums;border:1px solid var(--line);border-radius:18px;align-items:center;height:36px;padding:0 12px;font-weight:700;display:inline-flex}.timer.low{color:var(--margin);border-color:var(--margin)}.tq .opt{border-radius:16px;min-height:56px;font-size:1.05rem}.topic-row{border:1px solid var(--line);background:var(--panel);border-radius:18px;min-height:64px;padding:14px 16px}@media (max-width:760px){.wrap.student .topnav{display:none}.wrap.student{padding-top:calc(12px + env(safe-area-inset-top,0px))}.tabbar{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.home.little,.home.mid{min-height:calc(100dvh - var(--tabbar-h) - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}.wrap.student .note,.wrap.student .site-foot{display:none}}:root[data-look=kids] h1{font-size:1.5rem}:root[data-look=kids] .stage-bubble{font-size:1.15rem}.pl-say{font-size:1.1rem}.pl-sum{font-size:1.6rem}.pl-bigword,.pl-items.count .pl-item{font-size:3rem}.pl-items.tap .pl-item.btn{width:84px;height:84px;font-size:2.6rem}.pl-lesson .pl-stage{justify-content:space-evenly}.pl-lesson .pl-stage>.pl-next{margin:0 auto}.hp-play .hp-next,.hp-play .primary{border-radius:16px;width:100%;height:56px;margin-top:auto;font-size:1.05rem}.hp-choice{text-align:center;justify-content:center;font-size:1.25rem}.hp-choice.big{justify-content:center}.home.mid .next-card{min-height:140px}.home.mid .big-tile.small{min-height:136px}.tq .opt .md,.tq .opt{font-size:1.15rem}.tq .opt .katex{font-size:1.25em}@media (max-width:760px){.play .chips,.hoppy .chips,.learn .chips{scrollbar-width:none;flex-wrap:nowrap;margin:0 -20px;padding-bottom:2px;padding-left:20px;padding-right:20px;overflow-x:auto}.play .chips .chip,.hoppy .chips .chip,.learn .chips .chip{flex:none}.learn .chips.years{flex-wrap:wrap;margin:0;padding:0;overflow:visible}}.wrap.focus .sound-prompt{bottom:calc(16px + env(safe-area-inset-bottom,0px))}.today-card{background:#4f46e5;gap:14px;min-height:96px;padding:14px 18px}.today-card.compact{min-height:76px;padding:10px 16px}.today-card .ring{width:52px;height:52px;font:600 .95rem var(--font-head);background:#ffffff2e;border-radius:26px;flex:none;justify-content:center;align-items:center;display:flex}.today-card .ring b{margin-right:1px;font-size:1.3rem}.today-card>span:nth-child(2) b{font-size:1.15rem}.today-steps{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.today-steps li{background:var(--panel);border:2px solid var(--line);border-radius:18px;align-items:center;gap:12px;min-height:64px;padding:0 16px;display:flex}.today-steps li.next{border-color:var(--accent)}.today-steps li.done{opacity:.6}.today-steps .n{background:var(--chip);border-radius:18px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;display:flex}.today-steps li.done .n{background:var(--ok-bg);color:var(--ok-ink);font-weight:800}.today-steps .t{flex:1;font-weight:800}.home.little .big-tile{min-height:100px}.pl-read{text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;padding:4px 0 8px}.pl-read-title{font:800 1.35rem/1.2 var(--font-head);margin:0 0 6px}.pl-read-emoji{margin:4px 0 10px;font-size:clamp(4rem,22vw,6.5rem);line-height:1.15}.pl-read-text{font:600 clamp(1.35rem,5.6vw,1.7rem)/1.6 var(--font-body);max-width:30ch;color:var(--ink);margin:0 auto}.pl-read-text span{border-radius:8px;padding:0 4px;transition:background .2s,color .2s}.pl-read-text span.now{background:var(--hi);color:var(--hi-ink)}.pl-read-text span.was{opacity:.7}.pl-read-pages{justify-content:center;gap:6px;margin-top:14px;display:flex}.pl-read-pages i{background:var(--line);border-radius:50%;width:8px;height:8px;display:block}.pl-read-pages i.on{background:var(--btn);opacity:.5}.pl-read-pages i.now{background:var(--btn);border-radius:4px;width:22px}.paper-wait{margin-top:12px}.paper-bar{background:var(--chip);border-radius:99px;height:8px;overflow:hidden}.paper-bar i{background:var(--btn);border-radius:99px;height:100%;transition:width 1s linear;display:block}.status.error{color:var(--margin)}.hp-choice.num{font:800 1.8rem/1 var(--font-head);justify-content:center;min-height:72px}.acct{flex-direction:column;gap:6px;padding-bottom:24px;display:flex}.acct-h{font:700 .8rem/1 var(--font-body);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:18px 4px 6px}.acct-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.acct-who{align-items:center;gap:14px;padding:16px;display:flex}.acct-who h2{margin:0;font-size:1.25rem}.acct-who p{color:var(--ink-soft);word-break:break-word;margin:2px 0 0;font-size:.95rem}.acct-row{border:0;border-top:1px solid var(--line);width:100%;min-height:52px;font:inherit;color:var(--ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;text-decoration:none;display:flex}.acct-card>.acct-row:first-child{border-top:0}.acct-row>span{font-weight:600}.acct-row>b{color:var(--ink-soft);text-align:right;word-break:break-all;font-weight:500}.acct-row.col{flex-direction:column;align-items:stretch;gap:8px;padding-top:12px;padding-bottom:12px}.acct-row select{width:auto}.link-row{cursor:pointer}.link-row:active{background:var(--chip)}.acct-row.danger>span{color:var(--margin)}.acct-note{color:var(--ink-soft);margin:-2px 16px 10px;font-size:.88rem}.acct-form{border-top:1px solid var(--line);flex-direction:column;gap:12px;padding:14px 16px 16px;display:flex}.acct-form p{margin:0}.acct-form label{flex-direction:column;gap:6px;font-size:.92rem;font-weight:600;display:flex}.acct-form input{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--paper);min-height:46px;color:var(--ink);font:inherit;padding:0 12px;font-size:1rem}.acct-form .primary{min-height:46px}.acct-actions{flex-wrap:wrap;gap:10px;display:flex}.acct-actions .ghost{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--panel);min-height:46px;color:var(--ink);font:600 1rem var(--font-body);cursor:pointer;flex:1}.danger-btn{border-radius:var(--radius-sm);background:var(--margin);color:#fff;min-height:46px;font:700 1rem var(--font-body);cursor:pointer;border:0;flex:1}.danger-btn:disabled{opacity:.45;cursor:default}.acct-signout{border-radius:var(--radius);border:1px solid var(--line);background:var(--panel);min-height:52px;color:var(--ink);font:700 1rem var(--font-body);cursor:pointer;margin-top:14px}.acct-foot{text-align:center;color:var(--ink-soft);margin-top:18px;font-size:.85rem}.acct-foot a{color:inherit}.seg{background:var(--chip);border-radius:12px;gap:3px;padding:3px;display:flex}.seg button{min-height:40px;color:var(--ink-soft);font:600 .95rem var(--font-body);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1}.seg button.on{background:var(--panel);color:var(--ink);box-shadow:0 1px 3px #0000001f}.switch{background:var(--line);cursor:pointer;border:0;border-radius:16px;flex:none;width:52px;height:32px;transition:background .2s;position:relative}.switch i{background:#fff;border-radius:13px;width:26px;height:26px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch.on{background:var(--btn)}.switch.on i{transform:translate(20px)}.me-links{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;margin-bottom:16px;display:flex;overflow:hidden}.me-link{min-height:56px;color:var(--ink);border-top:1px solid var(--line);grid-template-rows:auto auto;grid-template-columns:32px 1fr auto;align-items:center;column-gap:10px;padding:8px 16px;text-decoration:none;display:grid}.me-link:first-child{border-top:0}.me-link span{grid-row:1/3;font-size:1.3rem}.me-link b{font-weight:700}.me-link small{color:var(--ink-soft);grid-column:2;font-size:.85rem}.me-link i{color:var(--ink-soft);grid-area:1/3/3;font-size:1.4rem;font-style:normal}.topnav .acct-link{min-height:44px;color:var(--ink-soft);align-items:center;gap:8px;font-size:.9rem;text-decoration:none;display:inline-flex}.topnav .acct-link span{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-text);font:700 .95rem var(--font-head);border-radius:17px;justify-content:center;align-items:center;display:flex}.topnav .acct-link em{font-style:normal}@media (pointer:coarse),(max-width:760px){button.link,a.ls-link,button.ls-link,.topnav .admin-link,.today-steps a,.today-steps button,.items .acts button,.items .acts a{align-items:center;min-height:44px;display:inline-flex}.chips.years .chip{justify-content:center;min-width:48px;min-height:48px}.me-row .pill{min-height:44px}footer a{padding:10px 2px;display:inline-block}}.today-steps li{position:relative}.today-steps li button.link:after{content:"";position:absolute;inset:0}.acct-row>span{white-space:nowrap}.bud{display:block;overflow:visible}.bud .b-all{transform-box:view-box;transform-origin:100px 214px;animation:3.4s ease-in-out infinite bud-breathe}.bud .b-eye{transform-box:fill-box;transform-origin:50%;animation:5s infinite bud-blink}.bud .b-ear-l{transform-box:fill-box;transform-origin:50% 100%;animation:7s ease-in-out infinite bud-ear}.bud .b-ear-r{transform-box:fill-box;transform-origin:50% 100%;animation:7s ease-in-out 3.3s infinite bud-ear}.bud .m-open{opacity:0}html[data-speaking] .bud .m-open,.bud.talking .m-open{animation:.32s step-end infinite bud-talk-o}html[data-speaking] .bud .m-closed,.bud.talking .m-closed{animation:.32s step-end infinite bud-talk-c}.bud.mood-proud .b-all{animation:1.1s cubic-bezier(.3,0,.4,1) infinite bud-hop}.bud.mood-proud .b-arm-l{transform-box:fill-box;transform-origin:80% 90%;animation:.55s ease-in-out infinite alternate bud-wave}.bud.mood-proud .b-arm-r{transform-box:fill-box;transform-origin:20% 90%;animation:.55s ease-in-out .27s infinite alternate bud-wave}.bud .b-spark{transform-box:fill-box;transform-origin:50%;animation:1.1s ease-in-out infinite bud-spark}.bud .b-think circle{animation:1.6s ease-in-out infinite bud-dot}.bud .b-think circle:nth-child(2){animation-delay:.2s}.bud .b-think circle:nth-child(3){animation-delay:.4s}.bud .b-zzz{animation:2.6s ease-in-out infinite bud-zzz}.bud .b-sweat{animation:1.4s ease-in infinite bud-sweat}.bud.mood-sleepy .b-all{animation-duration:5s}@keyframes bud-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.018,.982)}}@keyframes bud-blink{0%,94%,to{transform:scaleY(1)}96%{transform:scaleY(.08)}}@keyframes bud-ear{0%,88%,to{transform:rotate(0)}91%{transform:rotate(-7deg)}94%{transform:rotate(5deg)}97%{transform:rotate(-2deg)}}@keyframes bud-talk-o{0%{opacity:1}50%{opacity:0}}@keyframes bud-talk-c{0%{opacity:0}50%{opacity:1}}@keyframes bud-hop{0%,to{transform:translateY(0)scale(1.03,.97)}15%{transform:translateY(0)scale(.97,1.04)}45%{transform:translateY(-16px)scale(1)}75%{transform:translateY(0)scale(1.04,.96)}}@keyframes bud-wave{0%{transform:rotate(-10deg)}to{transform:rotate(12deg)}}@keyframes bud-spark{0%,to{opacity:.3;transform:scale(.7)}50%{opacity:1;transform:scale(1.15)}}@keyframes bud-dot{0%,to{opacity:.35}50%{opacity:1}}@keyframes bud-zzz{0%{opacity:0;transform:translateY(6px)}40%,70%{opacity:1}to{opacity:0;transform:translate(6px,-8px)}}@keyframes bud-sweat{0%{opacity:0;transform:translateY(-4px)}30%{opacity:1}to{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){.bud *{animation:none!important}}.bud.react-yay{animation:.5s cubic-bezier(.3,1.6,.5,1) bud-pop}@keyframes bud-pop{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes bud-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}.bud.still *{animation:none!important}.stage,.ls{position:relative}.burst{pointer-events:none;z-index:60;width:0;height:0;position:fixed;top:45%;left:50%}.burst span{opacity:0;font-size:1.9rem;animation:.95s cubic-bezier(.2,.8,.3,1) forwards burst-fly;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(.2)}@keyframes burst-fly{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)}15%{opacity:1}70%{opacity:1}to{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1.1) rotate(25deg);opacity:0}}.pl-items.count .pl-item{animation:.35s both pl-pop,2.6s ease-in-out .5s infinite pl-wiggle;display:inline-block}.pl-items.count .pl-item:nth-child(2n){animation-duration:.35s,3.1s}@keyframes pl-wiggle{0%,to{transform:rotate(0)translateY(0)}25%{transform:rotate(-6deg)translateY(-2px)}50%{transform:rotate(0)translateY(0)}75%{transform:rotate(6deg)translateY(-2px)}}.pl-item.btn{transition:transform .15s}.pl-item.btn:active{transform:scale(.92)}.pl-item.btn.got{animation:.45s cubic-bezier(.3,1.6,.5,1) pl-boing}@keyframes pl-boing{0%{transform:scale(1)}40%{transform:scale(1.25)rotate(-6deg)}to{transform:scale(1.06)}}.pl-opt,.pl-side,.hp-choice{transition:transform .12s,box-shadow .12s}.pl-opt:active:not(:disabled),.pl-side:active:not(:disabled),.hp-choice:active:not(:disabled){box-shadow:0 1px 0 var(--line);transform:translateY(4px)}.pl-opt.good,.pl-side.good,.hp-choice.right{animation:.45s cubic-bezier(.3,1.6,.5,1) pl-boing}.stage-buddy .bud{width:84px;height:auto}@media (prefers-reduced-motion:reduce){.burst,.pl-items.count .pl-item,.pl-item.btn.got,.bud.react-yay{animation:none}}.pl-items.count .pl-item{cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;padding:2px;font-size:clamp(2.4rem,9vw,3.4rem);line-height:1.1;position:relative}.pl-items.count .pl-item.counted{animation:.45s cubic-bezier(.3,1.6,.5,1) both pl-boing}.pl-num{background:var(--btn);color:#fff;min-width:26px;height:26px;font:800 .95rem/26px var(--font-head);text-align:center;border-radius:13px;animation:.25s both pl-pop;position:absolute;top:-6px;right:-4px;box-shadow:0 2px #00000026}.pl-tip{text-align:center;color:var(--ink-soft);margin:4px 0 0;font-weight:600;animation:1.6s ease-in-out infinite pl-pulse-t}@keyframes pl-pulse-t{0%,to{opacity:.55}50%{opacity:1}}.burst-buddy{animation:1.25s cubic-bezier(.3,1.4,.5,1) forwards burst-buddy;position:absolute;top:0;left:0;transform:translate(-50%,-40%)}.burst-buddy .bud{filter:drop-shadow(0 10px 18px #0000002e);width:170px!important;height:auto!important}@keyframes burst-buddy{0%{opacity:0;transform:translate(-50%,40%)scale(.3)}25%{opacity:1;transform:translate(-50%,-55%)scale(1.05)}75%{opacity:1;transform:translate(-50%,-45%)scale(1)}to{opacity:0;transform:translate(-50%,-30%)scale(.8)}}.stage-buddy .bud{width:100px}.pl-items.count .pl-item{font-size:clamp(3rem,13vw,4.2rem)}.pl-item.btn{width:clamp(80px,24vw,104px);height:clamp(80px,24vw,104px);font-size:clamp(2.8rem,11vw,3.6rem)}.plot .grow{transform-box:fill-box;transform-origin:50% 100%;animation:3.4s ease-in-out infinite plot-sway}@keyframes plot-sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.plot .plot-hint{transform-box:fill-box;transform-origin:50%;animation:1.8s ease-in-out infinite bud-spark}.hp-plot .plot{width:80px}@media (prefers-reduced-motion:reduce){.plot .grow,.plot .plot-hint{animation:none}}.yr-pill{border:2px solid var(--btn);background:var(--panel);min-height:40px;color:var(--btn);font:800 1rem var(--font-head);cursor:pointer;border-radius:999px;align-items:center;gap:6px;margin-top:8px;padding:0 14px 0 16px;display:inline-flex;box-shadow:0 3px #00000014}.yr-pill svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.yr-pill:active{box-shadow:none;transform:translateY(2px)}.sheet-back{z-index:80;background:#14102873;justify-content:center;align-items:flex-end;animation:.2s both sheet-fade;display:flex;position:fixed;inset:0}.sheet{background:var(--paper);width:100%;max-width:560px;max-height:88vh;padding:10px 16px calc(18px + env(safe-area-inset-bottom,0px));border-radius:26px 26px 0 0;animation:.28s cubic-bezier(.2,.9,.3,1) both sheet-up;overflow:auto}.sheet-grab{background:var(--line);border-radius:3px;width:44px;height:5px;margin:4px auto 10px}.sheet h2{font:800 1.35rem var(--font-head);text-align:center;margin:0 0 8px}.sheet-close{border:2px solid var(--line);background:var(--panel);width:100%;min-height:50px;color:var(--ink);font:700 1rem var(--font-body);cursor:pointer;border-radius:16px;margin-top:12px;display:block}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}@keyframes sheet-fade{0%{opacity:0}to{opacity:1}}.yr-groups section{margin-top:10px}.yr-groups h3{font:700 .8rem var(--font-body);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:0 2px 8px}.yr-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:10px;display:grid}.yr-btn{border:3px solid var(--line);background:var(--panel);min-height:76px;color:var(--ink);cursor:pointer;box-shadow:0 4px 0 var(--line);border-radius:20px;flex-direction:column;justify-content:center;align-items:center;transition:transform .1s;display:flex}.yr-btn b{font:800 1.9rem/1 var(--font-head)}.yr-btn span{color:var(--ink-soft);margin-top:2px;font-size:.8rem;font-weight:600}.yr-btn.on{border-color:var(--btn);background:var(--btn);color:var(--btn-ink)}.yr-btn.on span{color:inherit;opacity:.85}.yr-btn:active{box-shadow:0 1px 0 var(--line);transform:translateY(3px)}.yr-welcome{max-width:560px;margin:0 auto;padding:18px 4px 30px}.yr-welcome h1{font:800 1.7rem var(--font-head);text-align:center;margin:6px 0 4px}.yr-welcome>p{text-align:center;color:var(--ink-soft);margin:0 0 6px}@media (prefers-reduced-motion:reduce){.sheet,.sheet-back{animation:none}}.speed-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.speed-head .seg{min-width:220px}.speed-table{border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;margin:8px 0 14px;display:flex;overflow:hidden}.speed-table .sr{border-top:1px solid var(--line);font-variant-numeric:tabular-nums;grid-template-columns:minmax(140px,2fr) repeat(5,minmax(64px,1fr));align-items:center;gap:8px;padding:10px 12px;font-size:.92rem;display:grid}.speed-table .sr:first-child{border-top:0}.speed-table .sr.h{background:var(--chip);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.03em;font-size:.78rem;font-weight:700}.speed .fast{color:#1e9e5a;font-weight:700}.speed .ok{color:#c98a00;font-weight:700}.speed .slow{color:var(--margin);font-weight:700}.speed .bad{color:var(--margin);font-size:.85rem;font-style:normal}.speed-recent{flex-direction:column;gap:6px;margin:6px 0 10px;padding:0;list-style:none;display:flex}.speed-recent li{font-variant-numeric:tabular-nums;grid-template-columns:74px 1fr;column-gap:10px;display:grid}.speed-recent li small{color:var(--ink-soft);grid-column:2;font-size:.82rem}@media (max-width:640px){.speed-table{overflow-x:auto}.speed-table .sr{min-width:560px}}.pl-opt.bad,.pl-side.bad,.pl-tick.bad,.pl-item.btn.bad{opacity:.75;position:relative;border-color:var(--margin)!important;background:color-mix(in srgb,var(--margin) 10%,var(--panel))!important;box-shadow:0 3px 0 color-mix(in srgb,var(--margin) 45%,transparent)!important}.pl-opt.bad:after,.pl-side.bad:after,.pl-item.btn.bad:after{content:"✕";font:800 1rem var(--font-head);color:var(--margin);position:absolute;top:6px;right:10px}.pl-opt{position:relative}.pl-feedback{text-align:center;font:800 1.15rem var(--font-head);border-radius:14px;margin:12px 0 0;padding:8px 14px;animation:.25s both pl-pop}.pl-feedback.ok{color:#17803d;background:var(--ok-bg,#e3f6e9)}.pl-feedback.no{color:var(--margin);background:color-mix(in srgb,var(--margin) 10%,transparent)}.pl-feedback.show{color:var(--ink);background:var(--hi)}.kq-body{flex-direction:column;align-items:center;gap:14px;padding-top:6px;display:flex}.kq-q.kq-inline .md .pic{vertical-align:middle;width:1.9em;height:1.9em;margin:0 1px}.stage.kq .kq-body{padding-bottom:110px}.kq-groups{flex-wrap:wrap;justify-content:center;gap:14px;width:100%;max-width:640px;display:flex}.kq-group{background:color-mix(in srgb,currentColor 8%,transparent);border:2px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:18px;flex-direction:column;flex:220px;align-items:center;gap:8px;max-width:320px;padding:12px 10px;display:flex}.kq-group-label{font:800 1.05rem/1.2 var(--font-body);color:inherit;background:color-mix(in srgb,currentColor 14%,transparent);border-radius:999px;padding:4px 14px}.kq-group .kq-pics span{font-size:clamp(2.2rem,9vw,3rem)}.kq-group .kq-pics .pic{width:clamp(36px,9vw,46px);height:clamp(36px,9vw,46px)}.kq-pics{flex-wrap:wrap;justify-content:center;gap:8px;max-width:520px;display:flex}.kq-pics span{font-size:clamp(2.8rem,12vw,4rem);line-height:1.1;animation:.35s both pl-pop,2.8s ease-in-out .6s infinite pl-wiggle;display:inline-block}.kq-q{font:700 clamp(1.25rem,5.4vw,1.6rem)/1.35 var(--font-head);text-align:center;max-width:560px}.kq-q p{margin:0}.kq-opts{grid-template-columns:1fr;gap:12px;width:100%;max-width:560px;display:grid}.kq-opts.short{grid-template-columns:repeat(2,1fr)}.kq-opt{min-height:76px;font:700 1.3rem var(--font-head);text-align:center;justify-content:center;align-items:center;padding:10px 14px;display:flex}.kq-opts.short .kq-opt{min-height:92px;font-size:2.2rem}.kq-opt p{margin:0}.kq-opt.picked{border-color:var(--btn);background:color-mix(in srgb,var(--btn) 12%,var(--panel));box-shadow:0 5px 0 var(--btn)}.kq-pad{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:360px;display:flex}.kq-shown{border:3px solid var(--line);background:var(--panel);min-width:150px;min-height:72px;font:800 2.6rem/1.4 var(--font-head);text-align:center;border-radius:20px;padding:6px 18px}.kq-shown .ph{color:var(--ink-soft);opacity:.5}.kq-keys{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;display:grid}.kq-key{border:3px solid var(--line);background:var(--panel);min-height:64px;color:var(--ink);font:800 1.7rem var(--font-head);box-shadow:0 4px 0 var(--line);cursor:pointer;border-radius:18px}.kq-key:active{box-shadow:0 1px 0 var(--line);transform:translateY(3px)}.kq-key.go{background:var(--btn);border-color:var(--btn);color:var(--btn-ink)}.kq-key:disabled{opacity:.45}.kq-text{flex-direction:column;gap:10px;width:100%;display:flex}.kq-passage{background:color-mix(in srgb,currentColor 8%,transparent);border:2px solid color-mix(in srgb,currentColor 20%,transparent);text-align:left;border-radius:16px;width:100%;max-width:640px;padding:14px 16px;font-size:1.1rem;line-height:1.5}.kq-passage-label{opacity:.8;margin-bottom:4px;font-size:.85rem;font-weight:800}.kq-text textarea{border:3px solid var(--line);background:var(--panel);min-height:140px;color:var(--ink);font:600 1.1rem/1.4 var(--font-body);border-radius:16px;padding:12px}.kq-text input{border:3px solid var(--line);background:var(--panel);min-height:58px;color:var(--ink);font:700 1.4rem var(--font-head);text-align:center;border-radius:16px}.kq-res{max-width:620px;margin:0 auto;padding:8px 0 30px}.kq-res-top{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.kq-res-top h2{font:800 1.5rem var(--font-head);margin:6px 0 0}.kq-score{margin:0;font-size:1.15rem}.kq-score b{font-size:1.6rem}.kq-stars{gap:10px;font-size:2.6rem;display:flex}.kq-stars span{filter:grayscale();opacity:.3}.kq-stars span.on{filter:none;opacity:1;animation:.6s cubic-bezier(.3,1.6,.5,1) both kq-star}@keyframes kq-star{0%{transform:scale(0)rotate(-90deg)}to{transform:scale(1)rotate(0)}}.kq-review{flex-direction:column;gap:10px;margin:18px 0;padding:0;list-style:none;display:flex}.kq-review li{background:var(--panel);border:2px solid var(--line);border-radius:18px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.kq-review li.right{border-color:color-mix(in srgb,#2bb673 60%,var(--line))}.kq-review li.wrong{border-color:color-mix(in srgb,var(--margin) 50%,var(--line))}.kq-review .mk{font:800 1.4rem var(--font-head);color:#fff;background:#2bb673;border-radius:16px;flex:none;place-items:center;width:32px;height:32px;display:grid}.kq-review li.wrong .mk{background:var(--margin)}.kq-review p{margin:4px 0 0}.kq-res-acts{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.kq-note{background:var(--accent-soft);color:var(--ink);border-radius:12px;padding:10px 12px}@media (prefers-reduced-motion:reduce){.kq-pics span,.kq-stars span.on{animation:none}}.ls-buddy{font:700 .95rem var(--font-head);color:var(--ink-soft);align-items:center;gap:10px;margin:2px 0 6px;display:flex}.ls-buddy .bud{flex:none;width:64px;height:auto}.kq-alt{border:2px solid var(--line);background:var(--panel);min-height:52px;color:var(--ink);font:700 1rem var(--font-body);border-radius:16px;justify-content:center;align-items:center;padding:0 22px;text-decoration:none;display:inline-flex}.kq-res-acts .cta{flex:1;min-width:180px}.kq-review .md p,.kq-review p{margin:2px 0}.pl-done{background:var(--k-green);color:#fff;width:30px;height:30px;font:800 1rem/30px var(--font-body);box-shadow:0 2px 0 var(--k-green-d);border-radius:50%;position:absolute;top:8px;right:8px}.pl-tstars{gap:2px;font-size:1rem;line-height:1;display:flex}.pl-tstars i{color:#0000002e;font-style:normal}.pl-tstars i.on{color:#f5a400}.pl-stars{justify-content:center;gap:10px;margin:4px 0 12px;font-size:2.4rem;display:flex}.pl-stars span{filter:grayscale();opacity:.3}.pl-stars span.on{filter:none;opacity:1;animation:.6s cubic-bezier(.3,1.6,.5,1) both kq-star}.pl-end .pl-next{flex:200px;max-width:340px;padding:12px 20px;font-size:1.2rem}.pl-next.quiz{background:var(--k-green);box-shadow:0 6px 0 var(--k-green-d)}.pl-next.quiz:active{box-shadow:0 3px 0 var(--k-green-d)}.pl-next.alt:active{box-shadow:0 3px 0 var(--k-blue-d)}.pl-back{min-height:48px;color:var(--ink-soft);font:700 1rem var(--font-body);cursor:pointer;background:0 0;border:0;margin:16px auto 0;padding:0 18px;text-decoration:underline;display:block}.kq-res-acts .cta.alt{background:var(--k-blue);border-color:var(--k-blue)}.kq-res-more{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;display:flex}.lsearch{margin:0 0 14px;position:relative}.lsearch-box{background:var(--panel);border:1.5px solid var(--line);border-radius:16px;align-items:center;gap:10px;min-height:52px;padding:0 14px;display:flex}.lsearch-box:focus-within{border-color:var(--accent)}.lsearch-box svg{fill:none;width:20px;height:20px;stroke:var(--ink-soft);stroke-width:2px;stroke-linecap:round;flex:none}.lsearch-box input{min-width:0;color:var(--ink);font:500 1rem var(--font-body);background:0 0;border:0;outline:none;flex:1;padding:12px 0}.lsearch-x{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;font-size:1rem}.lsearch-res{background:var(--panel);border:1px solid var(--line);border-radius:16px;max-height:60vh;margin:6px 0 0;padding:6px;list-style:none;overflow:auto;box-shadow:0 10px 30px #0000001f}.lsearch-res li.none{color:var(--ink-soft);padding:14px}.lsearch-res button{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;min-height:52px;padding:10px;display:flex}.lsearch-res button:hover,.lsearch-res button:focus-visible{background:var(--chip)}.lsearch-res .ic{flex:none;font-size:1.4rem}.lsearch-res .tx{flex-direction:column;min-width:0;display:flex}.lsearch-res .tx small{color:var(--ink-soft);font-size:.85rem}.h-note{font:500 .78rem var(--font-body);color:var(--ink-soft);margin-left:6px}.topic-row .tsteps{flex:none;gap:4px;display:flex}.topic-row .tsteps i{background:var(--chip);border:1.5px solid var(--line);border-radius:50%;width:10px;height:10px}.topic-row .tsteps i.on{background:var(--ok-ink);border-color:var(--ok-ink)}.tpath{--sc:#64748b;flex-direction:column;gap:14px;display:flex}.tpath-head{background:var(--panel);border:1px solid var(--line);border-left:6px solid var(--sc);border-radius:18px;align-items:flex-start;gap:12px;padding:16px;display:flex}.tpath-head small{color:var(--ink-soft);font-weight:600}.tpath-head h2{font:700 1.4rem/1.2 var(--font-head);margin:2px 0 4px}.tpath-head p{color:var(--ink-soft);margin:0;font-size:.9rem}.tpath-steps{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.tstep{background:var(--panel);border:1.5px solid var(--line);border-radius:16px;align-items:center;gap:12px;padding:14px;display:flex}.tstep.next{border-color:var(--sc);box-shadow:0 4px 0 color-mix(in srgb,var(--sc) 35%,transparent)}.tstep-n{background:var(--chip);width:34px;height:34px;color:var(--ink-soft);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.tstep.done .tstep-n{background:var(--ok-ink);color:var(--panel)}.tstep.next .tstep-n{background:var(--sc);color:#fff}.tstep-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.tstep-body small{color:var(--ink-soft);font-size:.85rem}.tstep-body .tstep-mark{color:var(--ok-ink);font-weight:600}.tstep .cta,.tstep .pill-btn{flex:none;width:auto;height:48px;padding:0 18px}.tpath-next{border:2px dashed var(--line);color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border-radius:16px;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;display:flex}.tpath-next.ready{border-style:solid;border-color:var(--ok-ink);background:var(--ok-bg)}.tpath-next small{color:var(--ink-soft)}.ls-upnext{margin:6px 0 4px}.rb-h{margin:16px 0 8px;font-weight:700}.rb-h small{color:var(--ink-soft);font-weight:500}.rb-seg{flex-wrap:wrap;gap:8px;display:flex}.rb-seg button,.rb-types button{border:2px solid var(--line);background:var(--panel);min-height:48px;color:var(--ink);font:600 .95rem var(--font-body);cursor:pointer;border-radius:14px;padding:8px 16px}.rb-seg button.on,.rb-types button.on{border-color:var(--accent);background:var(--accent-soft)}.rb-types{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.rb-types button{flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:84px;display:flex}.rb-types button span{font-size:1.5rem}.res-acts{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.res-acts .cta{width:auto;padding:0 22px}.res-next-top{width:auto;margin:4px 0 8px;padding:0 22px}.ord{margin:10px 0}.ord-tip{color:var(--ink-soft);margin:0 0 8px;font-size:.9rem}.ord-list{touch-action:none;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.ord-row{background:var(--panel);border:2px solid var(--line);-webkit-user-select:none;user-select:none;border-radius:14px;align-items:center;gap:10px;min-height:56px;padding:8px 10px;display:flex}.ord-row.dragging{border-color:var(--accent);transform:scale(1.02);box-shadow:0 8px 20px #00000026}.ord-n{background:var(--chip);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:.85rem;font-weight:700;display:grid}.ord-grip{color:var(--ink-soft);cursor:grab;touch-action:none;background:0 0;border:0;flex:none;min-width:36px;min-height:44px;font-size:1.2rem}.ord-t{flex:1;min-width:0}.ord-t p{margin:0}.ord-arrows{flex:none;gap:4px;display:flex}.ord-arrows button{border:1.5px solid var(--line);background:var(--panel);min-width:40px;min-height:40px;color:var(--ink);cursor:pointer;border-radius:10px}.ord-arrows button:disabled{opacity:.3}.ord-keep{color:var(--accent-text);font:600 .95rem var(--font-body);cursor:pointer;background:0 0;border:0;min-height:44px;margin-top:8px;text-decoration:underline}.ord.big .ord-row{min-height:64px;font-size:1.15rem}.kq-go{margin-top:12px}.rate{flex-direction:column;align-items:center;gap:8px;margin:14px 0 4px;display:flex}.rate-q{color:var(--ink-soft);font-weight:600}.rate-btns{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.rate-btns button{border:1.5px solid var(--line);background:var(--panel);min-height:44px;color:var(--ink);font:600 .9rem var(--font-body);cursor:pointer;border-radius:999px;padding:0 14px}.rate-btns button.on{border-color:var(--accent);background:var(--accent-soft)}.rate.kids .rate-btns button{min-height:52px;font-size:1rem}.rt-sum{margin:0 0 10px}.rate-note{gap:8px;width:100%;max-width:420px;display:flex}.rate-note input{border:1.5px solid var(--line);background:var(--panel);min-width:0;min-height:44px;color:var(--ink);font:500 .95rem var(--font-body);border-radius:12px;flex:1;padding:0 12px}.rate-note button{background:var(--accent);color:#fff;min-height:44px;font:600 .9rem var(--font-body);cursor:pointer;border:0;border-radius:999px;padding:0 16px}.rate-note button:disabled{opacity:.45;cursor:default}.ins-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.ins-head h2{margin:0}.ins-tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.ins-tile{text-align:left;border:1.5px solid var(--line);background:var(--panel);color:var(--ink);font:inherit;cursor:pointer;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;display:flex}.ins-tile:disabled{cursor:default;opacity:1}.ins-tile.on{border-color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.ins-tile small{color:var(--ink-soft)}.ins-tile b{font:700 1.8rem/1.1 var(--font-head)}.ins-tile span{font-size:.8rem}.ins-tile span.up{color:var(--ok-ink)}.ins-tile span.down{color:#d9601c}.ins-chart{margin:16px 0 8px}.ins-bars{border-bottom:1px solid var(--line);align-items:flex-end;gap:3px;height:160px;padding-top:8px;display:flex}.ins-col{flex:1;align-items:flex-end;min-width:0;height:100%;display:flex}.ins-col i{background:var(--accent);border-radius:6px 6px 0 0;width:100%;min-height:2px;display:block}.ins-col i.zero{background:var(--chip)}.ins-axis{gap:3px;margin-top:4px;display:flex}.ins-axis span{min-width:0;color:var(--ink-soft);text-align:center;white-space:nowrap;flex:1;font-size:.68rem;overflow:visible}.ins h3{margin:18px 0 8px}.ins-table{border:1px solid var(--line);border-radius:14px;overflow:hidden}.ir{border-bottom:1px solid var(--line);grid-template-columns:2fr repeat(4,1fr);gap:6px;padding:10px 12px;font-size:.92rem;display:grid}.ir:last-child{border-bottom:0}.ir.h{background:var(--chip);color:var(--ink-soft);font-size:.8rem;font-weight:700}.ir span:not(:first-child){text-align:right}@media (max-width:520px){.ir{grid-template-columns:1.6fr repeat(4,1fr);padding:8px;font-size:.82rem}.ins-axis span{font-size:.6rem}}.tpath-hd{flex:1;min-width:0}.tpath-bar{background:var(--chip);border-radius:99px;height:6px;margin-top:8px;overflow:hidden}.tpath-bar i{background:var(--sc);border-radius:99px;height:100%;display:block}.tpath-go{flex:none;align-self:center;width:auto;height:48px;padding:0 18px}@media (max-width:560px){.tpath-head{flex-wrap:wrap}.tpath-go{width:100%}}.tpath-wait{background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:10px;padding:28px 16px;display:flex}.crumbs{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:4px;font-size:.82rem;display:flex}.crumbs span+span:before{content:"/";opacity:.6;margin:0 6px}.crumbs em{margin-left:auto;font-style:normal;font-weight:600}.ls-crumbs{margin:6px 0 2px}.msec h3{font:600 1.05rem var(--font-head);color:var(--ink);align-items:center;gap:10px;margin:14px 0 8px;display:flex}.msec-dot{background:var(--sc);border-radius:50%;flex:none;width:10px;height:10px}.mlist{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.mpair{border:1px solid var(--line);background:var(--panel);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.mrow{text-align:left;background:var(--panel);width:100%;color:var(--ink);font:inherit;cursor:pointer;border:0;align-items:center;gap:12px;min-height:56px;padding:12px 14px;display:flex}.mpair .mrow+.mrow{border-top:1px solid var(--line)}.mlist>li>.mrow{border:1px solid var(--line);border-radius:14px}.mrow:hover{background:var(--chip)}.mrow.next{box-shadow:inset 4px 0 0 var(--sc);background:color-mix(in srgb,var(--sc) 7%,var(--panel))}.mic{border:2px solid var(--line);width:30px;height:30px;color:var(--ink-soft);border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:700;display:grid}.mrow.done .mic{background:var(--ok-ink);border-color:var(--ok-ink);color:var(--panel)}.mrow.quiz .mic{border-style:dashed}.mtx{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mtx b{font-weight:600}.mtx small{color:var(--ink-soft);font-size:.84rem}.mmeta{color:var(--ink-soft);text-align:right;flex:none;max-width:110px;font-size:.8rem}.str{align-items:center;gap:6px;font-size:.78rem;font-weight:600;display:inline-flex}.str-bars{align-items:flex-end;gap:2px;display:inline-flex}.str-bars i{background:var(--line);border-radius:2px;width:4px}.str-bars i:first-child{height:6px}.str-bars i:nth-child(2){height:9px}.str-bars i:nth-child(3){height:12px}.str-prioritise{color:#c2410c}.str-prioritise .str-bars i.on{background:#ea580c}.str-occasionally{color:#a16207}.str-occasionally .str-bars i.on{background:#ca8a04}.str-strong{color:var(--ok-ink)}.str-strong .str-bars i.on{background:var(--ok-ink)}.topic-row .tt{flex-direction:column;gap:2px;display:flex}.topic-row .tt small{color:var(--ink-soft);font-size:.82rem;font-weight:500}.revise-card{background:var(--panel);border:1.5px solid var(--line);border-radius:16px;align-items:center;gap:12px;margin:6px 0 4px;padding:12px 14px;display:flex}.revise-card>div{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.revise-card small{color:var(--ink-soft);font-size:.8rem}.revise-card b{color:var(--accent-text)}.revise-card .pill-btn{flex:none;height:44px}.rv-dot{background:var(--accent);width:14px;height:14px;box-shadow:0 0 0 5px var(--accent-soft);border-radius:50%;flex:none}.takeaways{border:2px solid var(--ok-ink);background:var(--ok-bg);text-align:left;border-radius:14px;margin:10px 0;padding:12px 16px}.takeaways b{color:var(--ok-ink);margin-bottom:6px;display:block}.takeaways ul{flex-direction:column;gap:4px;margin:0;padding-left:20px;display:flex}.ls-prevnext{flex-wrap:wrap;justify-content:space-between;gap:10px;margin:8px 0;display:flex}.quiz-intro .qi-body{text-align:center;flex-direction:column;align-items:center;gap:8px;max-width:560px;margin:0 auto;padding:24px 16px;display:flex}.qi-art{background:var(--accent-soft);border-radius:50%;place-items:center;width:120px;height:120px;font-size:3.2rem;display:grid}.qi-kicker{color:var(--ink-soft);font-weight:600}.quiz-intro h2{font:700 1.4rem/1.25 var(--font-head);margin:0}.qi-sub{color:var(--ink-soft);margin:0}.qi-meta{margin:6px 0 10px;font-weight:600}.qi-go{max-width:320px}.site-foot{border-top:1px solid var(--line);text-align:center;max-width:760px;color:var(--ink-soft);margin:40px auto 0;padding:16px 16px 8px;font-size:.8rem;line-height:1.5}.site-foot p{margin:0 0 6px}.site-foot a{color:var(--ink)}.site-foot .sf-links{flex-wrap:wrap;justify-content:center;gap:4px 16px;display:flex}.wrap.has-tabs .site-foot{margin-bottom:calc(var(--tabbar-h,64px) + 8px)}.theme-btn{border:1px solid var(--line);width:40px;height:40px;color:var(--ink-soft);font:600 .85rem var(--font-body);cursor:pointer;background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-right:8px;padding:0;display:inline-flex}.theme-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px;height:18px}.theme-btn:hover{color:var(--ink);border-color:var(--ink-soft)}.learn-books{max-width:1180px}.lb-head{align-items:center}.lb-title{flex:1;min-width:0}.lb-title h1{text-align:left;margin:0}.lb-title small{color:var(--ink-soft);margin-top:2px;font-size:.85rem;display:block}.lb-tip{margin:10px 0}.bud-tip{background:var(--panel);border:1.5px dashed color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:16px;align-items:center;gap:10px;padding:8px 10px;display:flex}.bud-tip-pic{background:var(--accent-soft);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid;overflow:hidden}.bud-tip p{flex:1;margin:0;font-size:.9rem;line-height:1.4}.bud-tip .pill-btn{border-radius:99px;flex:none;height:38px;padding:0 14px;font-size:.88rem}.lb-shelf{margin:12px 0}.shelf{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.book{--sc:#64748b;text-align:left;min-height:104px;font:inherit;color:var(--ink);cursor:pointer;background:var(--panel);border:1px solid var(--line);border-left:12px solid var(--sc);box-shadow:0 1px 0 var(--line);border-radius:6px 14px 14px 6px;flex-direction:column;gap:3px;padding:10px 12px 9px 14px;display:flex;position:relative}.book:before{content:"";background:#ffffff8c;width:12px;height:3px;position:absolute;top:16px;left:-12px;box-shadow:0 9px #ffffff8c,0 18px #ffffff8c}.book.on{outline:3px solid color-mix(in srgb,var(--sc) 45%,transparent);outline-offset:1px}.book.new{opacity:.72}.book-name{font-size:.98rem;line-height:1.25}.book-up{color:var(--ink-soft);font-size:.8rem;line-height:1.3}.book-lbl{border-top:1px dashed var(--line);color:var(--ink-soft);margin-top:auto;padding-top:5px;font-size:.72rem}.book-due{color:#b45309;vertical-align:2px;background:#fff1dc;border-radius:99px;place-items:center;min-width:20px;height:20px;margin-left:6px;padding:0 5px;font-size:.72rem;display:inline-grid}.book.more{border:1.5px dashed var(--line);border-radius:14px;justify-content:center;align-items:center}.book.more:before{display:none}.lb-open{gap:14px;display:grid}.lb-h{margin:0 0 10px;font-size:1.15rem}.lb-h small{color:var(--ink-soft);margin-left:6px;font-size:.85rem;font-weight:500}.contents{border:1px solid var(--line);background-color:var(--panel);background-image:repeating-linear-gradient(to bottom,transparent 0 43px,color-mix(in srgb,var(--accent) 12%,var(--line)) 43px 44px);background-position:0 6px;border-radius:14px;padding:6px 12px}.contents ol{flex:100%;width:100%;min-width:0;margin:0;padding:0;list-style:none}.contents .cl{width:100%;height:44px;font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:0 4px;display:flex}.contents .cl:hover{background:color-mix(in srgb,var(--accent-soft) 60%,transparent)}.cl .ch{width:24px;color:var(--ink-soft);flex:none;font-size:.8rem}.cl .ct{white-space:nowrap;text-overflow:ellipsis;max-width:70%;overflow:hidden}.cl .dots{border-bottom:2px dotted color-mix(in srgb,var(--ink-soft) 40%,transparent);flex:1;min-width:16px;margin:0 4px}.cl .cr{color:var(--ink-soft);flex:none;font-size:.82rem}.cl.dn .ct{color:var(--ink-soft);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb,var(--ink-soft) 60%,transparent);text-decoration-color:color-mix(in srgb,var(--ink-soft) 60%,transparent)}.cl.dn .cr{color:var(--ok-ink)}.cl.now .ct,.cl.now .cr{color:var(--accent-text);font-weight:600}.contents .cl.on{background:var(--accent-soft)}.lb-carry{margin-top:12px}.lb-empty{min-height:200px;color:var(--ink-soft);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.lb-empty .pill-btn{height:44px}.tcheck-head{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.tcheck-hd h2{margin:0;font-size:1.2rem}.tcheck-hd p{color:var(--ink-soft);margin:2px 0 0;font-size:.85rem}.tcheck-sub{color:var(--ink-soft);font-size:.78rem}.clist{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.citem{background:var(--panel);border:1px solid var(--line);border-radius:14px;align-items:center;gap:8px;padding:6px 10px 6px 6px;display:flex}.citem.next{border:2px solid var(--accent)}.citem.chal{background:var(--accent-soft)}.citem-main{min-width:0;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:6px 4px;display:flex}.cbox{border:2px solid color-mix(in srgb,var(--ink-soft) 45%,transparent);color:#fff;border-radius:7px;flex:none;place-items:center;width:24px;height:24px;font-size:.8rem;font-weight:700;display:grid}.cbox.y{background:var(--ok-ink);border-color:var(--ok-ink)}.cbox.soft{background:color-mix(in srgb,var(--ok-ink) 45%,transparent);border-color:#0000}.cbox.half{border-color:var(--ok-ink);color:var(--ok-ink);background:linear-gradient(135deg,color-mix(in srgb,var(--ok-ink) 25%,transparent) 50%,transparent 50%)}.cbox.star{color:var(--accent-text);border-color:var(--accent)}.cbox.star.y{color:#fff}.ctx{min-width:0}.ctx b{font-size:.95rem;display:block}.ctx small{color:var(--ink-soft);margin-top:1px;font-size:.78rem;display:block}.citem .pill-btn{border-radius:99px;flex:none;height:36px;padding:0 14px;font-size:.85rem}.citem .pill-btn.go{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.citem .pill-btn.soft{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}.tcheck-next{border:1px dashed var(--line);width:100%;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;margin-top:12px;padding:10px 14px;display:flex}.tcheck-next small{color:var(--ink-soft);font-size:.75rem}.tcheck-next.ready{border-style:solid;border-color:var(--accent);background:var(--accent-soft)}@media (max-width:899px){.learn-books.v-subject .lb-shelf,.learn-books.v-topic .lb-shelf,.learn-books.v-subject .lb-shelfbar,.learn-books.v-topic .lb-shelfbar,.learn-books.v-subject .lb-topic,.learn-books.v-topic .lb-contents{display:none}.learn-books .lb-topic,.learn-books .lb-contents{background:0 0;border:0;padding:0}.tcheck-back,.lb-h,.tcheck-sub{display:none}.shelf{grid-template-columns:1fr 1fr}}@media (min-width:900px){.shelf.row{scroll-snap-type:x proximity;padding-bottom:6px;display:flex;overflow-x:auto}.shelf.row .book{scroll-snap-align:start;flex:0 0 190px;min-height:92px}.lb-open{grid-template-columns:1fr 1fr;align-items:start}.tcheck-back,.lb-up{display:none}}.contents ol li>.cl{width:100%;max-width:none}.hp-progress{position:relative;overflow:hidden;height:22px!important}.hp-progress i{border-radius:999px}.hp-progress span{font:700 .78rem var(--font-head);color:var(--ink);letter-spacing:.02em;text-shadow:0 0 3px var(--panel),0 0 2px var(--panel);place-items:center;display:grid;position:absolute;inset:0}.round-btn.hp-sound.off{background:var(--no-bg);color:var(--no-ink);border-color:#0000}.round-btn.hp-again:disabled{opacity:.35}.hp-change{color:var(--accent-text);margin-left:auto;font-weight:700}.hp-feedback{border:0;animation:.35s cubic-bezier(.3,1.4,.5,1) fb-in;border-radius:22px!important;gap:10px!important;padding:16px 18px!important}.hp-feedback .fb-head{font:700 1.35rem/1.2 var(--font-head)}.hp-feedback.ok{color:#166534;background:linear-gradient(135deg,#e8f9ee,#d3f4df);box-shadow:0 4px #a7e3bc}.hp-feedback.no{color:#7a4a06;background:linear-gradient(135deg,#fff6e5,#ffe9c7);box-shadow:0 4px #f6cf8e}.hp-feedback .fb-ans{background:#fff;border:2px dashed #f2b85b;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 14px;display:flex}.hp-feedback .fb-ans span{font:700 .82rem var(--font-head);text-transform:uppercase;letter-spacing:.06em;opacity:.75}.hp-feedback .fb-ans b{font:700 1.6rem/1.15 var(--font-head);color:#b45309}.hp-feedback .fb-ans b p{margin:0}.hp-feedback .fb-why{font-size:1.05rem;line-height:1.5}.hp-feedback .fb-why p{margin:0}:root[data-theme=dark] .hp-feedback.ok{color:#b9f0cd;background:linear-gradient(135deg,#123522,#0f2b1c);box-shadow:0 4px #0a1f14}:root[data-theme=dark] .hp-feedback.no{color:#fbdda5;background:linear-gradient(135deg,#3a2a0e,#2e2109);box-shadow:0 4px #1e1606}:root[data-theme=dark] .hp-feedback .fb-ans{background:#00000040}:root[data-theme=dark] .hp-feedback .fb-ans b{color:#fbc56b}@keyframes fb-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.bud.react-yay{transform-origin:50% 100%;animation:.95s cubic-bezier(.3,1.3,.5,1) bud-jump!important}.bud.react-oops{transform-origin:50% 100%;animation:1.3s ease-in-out bud-sad!important}.bud.react-oops .b-all{animation:none}@keyframes bud-jump{0%{transform:none}12%{transform:translateY(4px)scale(1.1,.88)}38%{transform:translateY(-38px)scale(.94,1.08)rotate(-6deg)}58%{transform:translateY(0)scale(1.08,.92)}74%{transform:translateY(-16px)rotate(4deg)}88%{transform:translateY(0)scale(1.03,.97)}to{transform:none}}@keyframes bud-sad{0%{transform:none}18%{transform:translateY(8px)scale(1.03,.94)}32%{transform:translateY(8px)scale(1.03,.94)rotate(-7deg)}46%{transform:translateY(8px)scale(1.03,.94)rotate(7deg)}60%{transform:translateY(8px)scale(1.03,.94)rotate(-5deg)}80%{transform:translateY(6px)scale(1.02,.96)}to{transform:none}}@media (prefers-reduced-motion:reduce){.bud.react-yay,.bud.react-oops,.hp-feedback{animation:none!important}}.home-top .bud-col{flex-direction:column;flex:none;align-items:center;gap:4px;display:flex}.home-top .bud-change{font:700 .72rem var(--font-head);color:var(--accent-text);background:var(--accent-soft);white-space:nowrap;border-radius:999px;padding:3px 9px;text-decoration:none}.hp-feedback.pl-fb{text-align:left;margin-top:12px}.hp-feedback.try{color:#3730a3;background:linear-gradient(135deg,#eef0ff,#e2e5ff);box-shadow:0 4px #c7ccf7}:root[data-theme=dark] .hp-feedback.try{color:#c7ccff;background:linear-gradient(135deg,#232554,#1c1e45);box-shadow:0 4px #121331}.hp-feedback.fb-card{align-items:center;flex-direction:row!important;gap:14px!important}.fb-card .fb-bud{flex:none;align-self:flex-start;place-items:center;width:84px;display:grid}.fb-card .fb-bud .hoppy-art{width:84px;height:auto;display:block}.fb-card .fb-body{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}@media (max-width:360px){.fb-card .fb-bud,.fb-card .fb-bud .hoppy-art{width:66px}}.star{color:#d9d6e3;width:1em;height:1em;display:inline-grid}.star svg{width:100%;height:100%;display:block}.star.on{color:#ffc21a;filter:drop-shadow(0 3px #e09a00);animation:.6s cubic-bezier(.3,1.6,.5,1) both kq-star}.kq-stars .star,.pl-stars .star{filter:none;opacity:1}.kq-stars .star.on,.pl-stars .star.on{filter:drop-shadow(0 3px #e09a00)}:root[data-theme=dark] .star{color:#4a4760}.pl-party{place-items:center;margin:4px auto 0;display:grid}.bud.mood-sad .b-all{transition:transform .3s;transform:translateY(5px);animation:none!important}.bud.mood-sad .b-ear-l{transform-box:fill-box;transform-origin:80% 100%;transition:transform .3s;transform:rotate(-16deg);animation:none!important}.bud.mood-sad .b-ear-r{transform-box:fill-box;transform-origin:20% 100%;transition:transform .3s;transform:rotate(16deg);animation:none!important}.bud.mood-sad .b-tear{animation:1.6s ease-in infinite bud-tear}@keyframes bud-tear{0%{opacity:0;transform:translateY(-4px)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translateY(16px)}}@media (prefers-reduced-motion:reduce){.bud.mood-sad .b-tear,.star.on{animation:none}}.pic{vertical-align:-.22em;flex:none;width:1.15em;height:1.15em;display:inline-block;overflow:visible}.pl-item .pic,.pl-side .pic,.pl-seq .pic,.pl-opt .pic,.kq-pics .pic,.pl-sort-item .pic,.pl-basket .pic{vertical-align:middle;width:1.2em;height:1.2em}.pl-big-emoji .pic,.pl-read-emoji .pic{width:1.1em;height:1.1em}.pic.locked{filter:grayscale();opacity:.35}.egg .pic,.prize .pic{width:1.3em;height:1.3em}.md .pic{vertical-align:-.3em;width:1.3em;height:1.3em;margin:0 .04em}.pl-items.tap .pl-item.btn .pic{width:62%;height:62%}.pl-items.count .pl-item .pic{width:clamp(48px,13vw,64px);height:clamp(48px,13vw,64px)}.pl-side .pic{width:clamp(42px,11.5vw,54px);height:clamp(42px,11.5vw,54px)}.pl-seq .pic{width:clamp(40px,11vw,54px);height:clamp(40px,11vw,54px)}.pl-opt.card .e .pic{width:clamp(48px,13vw,60px);height:clamp(48px,13vw,60px)}.pl-sort-item .pic{width:clamp(80px,22vw,110px);height:clamp(80px,22vw,110px)}.pl-basket .in .pic{width:32px;height:32px}.pl-big-emoji .pic{width:clamp(40px,10.5vw,56px);height:clamp(40px,10.5vw,56px)}.pl-read-emoji .pic{width:clamp(96px,26vw,140px);height:clamp(96px,26vw,140px)}.kq-pics .pic{width:clamp(44px,12vw,58px);height:clamp(44px,12vw,58px)}.pl-ico .pic{width:44px;height:44px}.st .pic{width:70%;height:70%}.prize .pic{width:110px;height:110px}.egg .pic{width:96px;height:96px}.today-steps .n .pic{width:26px;height:26px}.me-link span .pic{width:28px;height:28px}.lsearch .ic .pic,.ic .pic{width:22px;height:22px}.go-arrow{vertical-align:-.12em;width:1em;height:1em;margin-left:2px}.rp-flag{vertical-align:-.15em;width:1em;height:1em}.rate.kids .pic{vertical-align:-7px;width:26px;height:26px}img.pic.photo{object-fit:contain;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.ap-bar{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.ap-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.ap-grid li{border:1px solid var(--line);background:var(--panel);border-radius:14px;gap:4px;padding:8px;display:grid}.ap-grid li.ok{border-color:#22b07d;box-shadow:inset 0 0 0 1px #22b07d}.ap-grid li.wait{border-color:#f59e0b}.ap-pics{background:#fff6ea;border-radius:10px;grid-template-columns:1fr 1fr;place-items:center;gap:4px;padding:6px;display:grid}.ap-pics svg,.ap-pics img{object-fit:contain;width:60px;height:60px}.ap-none{color:var(--muted,#888);font-size:.72rem}.ap-acts{flex-wrap:wrap;gap:8px;display:flex}.ap-grid small{min-height:1.2em;color:var(--muted,#777)}img.pic.photo{filter:drop-shadow(0 2px 2px #28190a2e)}.ap-pics img{background:conic-gradient(#eee 25%,#fff 0 50%,#eee 0 75%,#fff 0) 0 0/12px 12px;border-radius:6px}.syl-tag{color:var(--muted,#667);flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:6px;font-size:.85rem;display:flex}.syl-tag .syl-lab{text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;font-weight:800}.syl-tag code{background:var(--chip,#4f46e514);color:var(--accent,#4f46e5);border-radius:6px;margin-right:4px;padding:2px 6px;font:700 .78rem ui-monospace,Menlo,Consolas,monospace}.syl-tag a{color:var(--accent,#4f46e5);text-underline-offset:2px;font-weight:700;text-decoration:underline}.syl-tag small{opacity:.8;flex-basis:100%;font-size:.72rem}.syl-tag.compact{margin-top:2px}.yp{gap:14px;padding:22px}.yp h2{margin:0;font-size:1.35rem}.yp .hint{margin:-6px 0 4px}.yp-group h3{margin:0 0 8px;font-size:.95rem;font-weight:800}.yp-group h3 small{opacity:.65;font-weight:600}.yp-row{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;display:grid}.yp-tile{border:2px solid var(--yp-b,#e3e3f0);background:var(--yp-bg,#fff);min-height:84px;color:inherit;cursor:pointer;font:inherit;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:2px;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex}.yp-tile b{color:var(--yp-c,#4f46e5);font-size:1.7rem;line-height:1}.yp-tile span{opacity:.75;font-size:.8rem;font-weight:700}.yp-tile:hover{border-color:var(--yp-c,#4f46e5);transform:translateY(-2px);box-shadow:0 6px 16px #1e1b4b1a}.yp-tile:focus-visible{outline:3px solid var(--yp-c,#4f46e5);outline-offset:2px}.yp-tile.on{border-color:var(--yp-c,#4f46e5);box-shadow:0 0 0 3px color-mix(in srgb,var(--yp-c,#4f46e5) 22%,transparent)}.yp-kids{--yp-c:#ea580c;--yp-bg:#fff4ea;--yp-b:#fbd9bc}.yp-prim{--yp-c:#16a34a;--yp-bg:#f0fbf3;--yp-b:#c8eed3}.yp-high{--yp-c:#4f46e5;--yp-bg:#f3f2ff;--yp-b:#d9d6fb}.yp-sen{--yp-c:#7c3aed;--yp-bg:#f7f1ff;--yp-b:#e2d3fb}[data-theme=dark] .yp-tile{--yp-bg:#1e1b2e;--yp-b:#34304a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .yp-tile{--yp-bg:#1e1b2e;--yp-b:#34304a}}@media (max-width:520px){.yp{padding:16px}.yp-row{grid-template-columns:repeat(4,1fr);gap:8px}.yp-tile{min-height:68px}.yp-tile b{font-size:1.35rem}.yp-tile span{font-size:.7rem}}.locked-kid{text-align:center;flex-direction:column;align-items:center;gap:8px;max-width:520px;margin:0 auto;padding:40px 20px;display:flex}.locked-kid h1{margin:8px 0 0;font-size:1.6rem}.locked-kid p{color:var(--ink-soft);margin:0}.billing h2{margin:0 0 10px}.bill-msg{color:#166534;background:#ecfdf3;border-radius:12px;margin:0 0 10px;padding:10px 14px;font-weight:700}.bill-state{margin:0 0 12px}.bill-state.warn{color:#9a3412;background:#fff4e5;border-radius:12px;padding:10px 14px}.bill-now{border:1px solid var(--line);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 0 8px;padding:14px 16px;display:flex}.bill-tag{text-transform:uppercase;letter-spacing:.04em;color:#4f46e5;vertical-align:middle;background:#eef0ff;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.72rem;font-weight:800;display:inline-block}.bill-switch{background:var(--chip);border-radius:999px;gap:4px;margin:4px 0 14px;padding:4px;display:inline-flex}.bill-switch button{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:40px;padding:8px 16px;font-weight:700}.bill-switch button.on{background:var(--panel);color:var(--ink);box-shadow:0 1px 4px #00000014}.bill-switch small{color:#16a34a;margin-left:4px;font-weight:600}.bill-plans{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-bottom:10px;display:grid}.bill-plan{border:2px solid var(--line);border-radius:18px;flex-direction:column;gap:4px;padding:18px;display:flex;position:relative}.bill-plan.best{border-color:#4f46e5}.bill-plan .bill-tag{color:#fff;background:#4f46e5;margin:0;position:absolute;top:-11px;left:14px}.bill-plan h3{margin:0;font-size:1.2rem}.bill-plan .hint{margin:0}.bill-price{margin:6px 0 0;font-size:2rem;font-weight:800;line-height:1.1}.bill-price small{color:var(--ink-soft);margin-left:2px;font-size:.9rem;font-weight:600}.bill-note{color:var(--ink-soft);margin:0;font-size:.85rem}.bill-plan button{min-height:48px;margin-top:10px}.bill-pay summary{cursor:pointer;margin-top:6px;font-weight:700}.bill-pay ul{margin:8px 0 0;padding:0;list-style:none}.bill-pay li{border-bottom:1px solid var(--line);gap:12px;padding:6px 0;display:flex}.bill-pay li b{margin-left:auto}.bill-pay li em{color:#b45309;font-size:.85rem;font-style:normal}.ab{margin-bottom:16px}.ab-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ab-top h3{margin:0 auto 0 0}.ab-chip{border-radius:999px;padding:3px 10px;font-size:.78rem;font-weight:800}.ab-chip.live{color:#166534;background:#dcfce7}.ab-chip.test{color:#92400e;background:#fef3c7}.ab-chip.off{color:#991b1b;background:#fee2e2}.ab-tiles{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:14px 0;display:grid}.ab-tile{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.ab-tile span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.03em;font-size:.78rem;font-weight:700}.ab-tile b{font-size:1.5rem;line-height:1.2}.ab-tile small{color:var(--ink-soft);font-size:.78rem}.ab-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.ab-bar input[type=search]{flex:220px;min-width:0;max-width:320px}.ab-bar .chips{flex-wrap:wrap}.ab-table-wrap{border:1px solid var(--line);border-radius:14px;overflow-x:auto}.ab-table{border-collapse:collapse;width:100%;font-size:.92rem}.ab-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-soft);border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 12px;font-size:.75rem}.ab-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px}.ab-table td small{color:var(--ink-soft);font-size:.78rem;display:block}.ab-table tbody tr:not(.ab-detail){cursor:pointer}.ab-table tbody tr:not(.ab-detail):hover,.ab-table tr.on{background:var(--chip)}.ab-em{word-break:break-all;min-width:180px;font-weight:700}.ab-st{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:800;display:inline-block}.s-active{color:#166534;background:#dcfce7}.s-trial{color:#3730a3;background:#e0e7ff}.s-free{color:#6b21a8;background:#f3e8ff}.s-overdue{color:#991b1b;background:#fee2e2}.s-locked{color:#475569;background:#f1f5f9}.s-cancelling{color:#92400e;background:#fef3c7}.s-open{color:#475569;background:#f1f5f9}.ab-detail td{background:var(--chip);cursor:default}.ab-acts{flex-direction:column;gap:10px;margin-bottom:12px;display:flex}.ab-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ab-group>b{min-width:120px}.ab-group button:not(.link){min-height:36px;padding:4px 12px}.ab-custom{align-items:center;gap:6px;display:inline-flex}.ab-custom input{width:5em;padding:4px 8px}button.danger{color:#b91c1c;border-color:#fca5a5}.ab-cols h4{margin:0 0 6px}.ab-pays,.ab-hist{margin:0;padding:0;list-style:none}.ab-pays li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:6px 0;display:flex}.ab-pays li em{color:#b45309;font-size:.85rem;font-style:normal}.ab-ref{gap:6px;margin-left:auto;display:inline-flex}.ab-ref input{width:6em;padding:4px 8px}.ab-hist li{border-bottom:1px solid var(--line);padding:4px 0;font-size:.88rem}.ab-hist li span{color:var(--ink-soft);margin-right:6px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .bill-msg{color:#86efac;background:#14301f}:root:not([data-theme=light]) .bill-state.warn{color:#fdba74;background:#3a2410}}:root[data-theme=dark] .bill-msg{color:#86efac;background:#14301f}:root[data-theme=dark] .bill-state.warn{color:#fdba74;background:#3a2410}.bill-plan button:not(.primary),.bill-now button:not(.primary){background:var(--panel);color:var(--accent-text);border:2px solid var(--accent-text);font:inherit;cursor:pointer;border-radius:12px;font-weight:700}.bill-plan button:not(.primary):hover{background:#eef0ff}.bill-plan button.primary{border-radius:12px}.ab button:not(.link):not(.chip){font:inherit;border:1.5px solid var(--line);background:var(--panel);min-height:38px;color:var(--ink);cursor:pointer;border-radius:10px;padding:6px 14px;font-size:.88rem;font-weight:700;transition:background .12s,border-color .12s,color .12s}.ab button:not(.link):not(.chip):hover:not(:disabled){color:#4f46e5;background:#f3f2ff;border-color:#4f46e5}.ab button:not(.link):not(.chip):disabled{opacity:.5;cursor:default}.ab button.danger:not(.link){color:#b91c1c;background:var(--panel);border-color:#fca5a5}.ab button.danger:not(.link):hover:not(:disabled){color:#991b1b;background:#fef2f2;border-color:#dc2626}.ab-group{gap:10px}.ab-custom input,.ab-ref input{border:1.5px solid var(--line);min-height:38px;font:inherit;background:var(--panel);color:var(--ink);border-radius:10px;padding:4px 10px;font-size:.9rem}.ab-was{color:var(--ink-soft);font-weight:700;display:block}:root[data-theme=dark] .ab button:not(.link):not(.chip):hover:not(:disabled){color:#a5a0ff;background:#23214a;border-color:#a5a0ff}:root[data-theme=dark] .ab button.danger:not(.link):hover:not(:disabled){background:#3a1818}.am-list{flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.am-list li{border:1px solid var(--line);border-radius:14px;padding:12px 14px}.am-list li.done{opacity:.6}.am-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.am-head small{margin-left:auto}.am-text{white-space:pre-wrap;margin:8px 0}.am-chat{white-space:pre-wrap;font:inherit;background:var(--chip);border-radius:10px;margin:8px 0;padding:10px;font-size:.88rem}.am-acts{flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;display:flex}.am-reply{color:#fff;background:#4f46e5;border-radius:10px;align-items:center;min-height:38px;padding:6px 14px;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.as-switch{cursor:pointer;align-items:flex-start;gap:12px;margin:12px 0 4px;display:flex}.as-switch input{accent-color:#4f46e5;flex:none;width:22px;height:22px;margin-top:2px}.as-switch small{color:var(--ink-soft);font-size:.85rem;display:block}.ab button.am-ok:not(.link):not(.chip){color:#fff;background:#16a34a;border-color:#16a34a}.ab button.am-ok:not(.link):not(.chip):hover:not(:disabled){color:#fff;background:#15803d;border-color:#15803d}.explainer.video .reader-body{background:radial-gradient(120% 90% at 50% 0%,var(--accent-soft),transparent 70%)}.explainer.video .xstage{animation:.45s both vid-in}.explainer.video .steps li.now{animation:.4s both vid-step}.explainer.video .xstage .md svg,.explainer.video .xstage .graph{animation:.5s both vid-pop}@keyframes vid-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@keyframes vid-step{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}@keyframes vid-pop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.presenter{align-items:flex-end;gap:10px;width:100%;max-width:760px;margin:0 auto;padding:0 16px 14px;display:flex}.presenter .pw{flex-direction:column;flex:none;align-items:center;gap:2px;display:flex}.presenter small{color:var(--ink-soft);background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:800}.presenter .bubble{background:var(--panel);border:1.5px solid var(--line);border-radius:16px;flex:1;min-height:2.6em;margin-bottom:22px;padding:10px 14px;font-size:1.02rem;line-height:1.45;position:relative}.presenter .bubble:before{content:"";background:var(--panel);border-left:1.5px solid var(--line);border-bottom:1.5px solid var(--line);width:14px;height:14px;position:absolute;bottom:14px;left:-9px;transform:rotate(45deg)}.presenter-dot{border-radius:16px;width:56px;height:56px;display:block}.presenter.talk svg,.presenter.talk .presenter-dot{transform-origin:50% 100%;animation:.32s ease-in-out infinite alternate vid-talk}@keyframes vid-talk{0%{transform:translateY(0)scaleY(1)}to{transform:translateY(-3px)scaleY(1.03)}}.video-end{left:50%;bottom:calc(130px + env(safe-area-inset-bottom,0px));z-index:62;background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:16px;width:min(420px,100vw - 32px);padding:14px 18px;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #0000002e}.video-end p{margin:0 0 10px}.video-end .acts{justify-content:center;align-items:center;gap:12px;display:flex}@media (prefers-reduced-motion:reduce){.explainer.video .xstage,.explainer.video .steps li.now,.presenter.talk svg,.presenter.talk .presenter-dot{animation:none}}.citem .watch{border:1.5px solid var(--line);background:var(--panel);width:38px;height:38px;color:var(--accent-text);cursor:pointer;border-radius:50%;flex:none;place-items:center;font-size:.9rem;display:grid}.citem .watch:hover{border-color:var(--accent)}.nq-thumbs{flex-wrap:wrap;gap:8px;display:flex}.nq-thumb{border:1px solid var(--line);border-radius:10px;width:76px;height:96px;position:relative;overflow:hidden}.nq-thumb img{object-fit:cover;width:100%;height:100%}.nq-thumb button{color:#fff;cursor:pointer;background:#0009;border:0;border-radius:50%;width:24px;height:24px;line-height:1;position:absolute;top:2px;right:2px}.nq-points{margin:6px 0 0;padding-left:20px}.nq-cards{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;display:grid}.nq-card{border:1.5px solid var(--line);background:var(--panel);text-align:left;min-height:96px;font:inherit;cursor:pointer;border-radius:14px;padding:12px;transition:transform .2s}.nq-card.back{background:var(--accent-soft);border-color:var(--accent)}.nq-card .md p{margin:0}.pts-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;align-items:center;gap:14px;margin:0 0 12px;padding:12px 14px;display:flex}.pts-streak{min-width:58px;color:var(--ink-soft);flex-direction:column;align-items:center;display:flex}.pts-streak.on{color:#c2410c}.pts-streak b{color:var(--ink);font-size:1.4rem;line-height:1.1}.pts-streak small{font-size:.72rem}.pts-main{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.pts-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.pts-top small,.pts-main>small{color:var(--ink-soft);font-size:.82rem}.pts-main .bar{background:var(--line);border-radius:4px;height:8px;display:block;overflow:hidden}.pts-main .bar>i{background:var(--accent);border-radius:4px;height:100%;display:block}.res-rank{margin:6px 0 0;font-weight:700}.res-rank b{color:var(--accent-text)}.res-mock,.res-drill{background:var(--accent-soft);border-radius:14px;flex-direction:column;align-items:flex-start;gap:10px;margin:12px 0 0;padding:12px 14px;display:flex}.res-mock p,.res-drill p{margin:0}.full-mock{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:10px;margin:18px 0 0;padding:14px 0 0;display:flex}.full-mock p{margin:0}.mock-hist li{justify-content:space-between;align-items:center;gap:12px;display:flex}.spark{color:var(--accent-text);flex:none}.mock-report .items li{justify-content:space-between;align-items:center;gap:12px;display:flex}.rc{background:var(--panel);border:1px solid var(--line);border-radius:18px;flex-direction:column;gap:14px;padding:20px;display:flex}.rc-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.rc-brand{margin:0;font-size:1.1rem;font-weight:800}.rc-brand span{color:var(--accent-text)}.rc h2{margin:2px 0}.rc-who{color:var(--ink-soft);margin:0}.rc-overall{border:2px solid var(--accent);border-radius:14px;flex-direction:column;align-items:center;padding:6px 14px;display:flex}.rc-overall b{color:var(--accent-text);font-size:2rem;line-height:1}.rc-overall small{color:var(--ink-soft)}.rc-terms{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.rc-table{border-collapse:collapse;width:100%;font-size:.95rem}.rc-table th,.rc-table td{text-align:left;border-bottom:1px solid var(--line);padding:8px 6px}.rc-g{color:#fff;background:#64748b;border-radius:8px;place-items:center;min-width:28px;height:28px;padding:0 6px;font-weight:800;display:inline-grid}.rc-g.gA{background:#16a34a}.rc-g.gB{background:#2563eb}.rc-g.gC{background:#ca8a04}.rc-g.gD{background:#ea580c}.rc-g.gE{background:#dc2626}.rc-subj h3{align-items:center;gap:8px;margin:0 0 4px;display:flex}.rc-subj p{margin:0 0 8px}.rc-topics{gap:6px;margin:0;padding:0;list-style:none;display:grid}.rc-topics li{grid-template-columns:minmax(0,1fr) 110px 44px;align-items:center;gap:8px;font-size:.9rem;display:grid}.rc-bar{background:var(--line);border-radius:4px;height:8px;display:block;overflow:hidden}.rc-bar>i{background:var(--accent);height:100%;display:block}.rc-key{color:var(--ink-soft);margin:0;font-size:.8rem}@media print{.no-print,header,nav,footer,.tabbar,.app-foot{display:none!important}.rc{border:0;padding:0}body{background:#fff}}.ch-draft{color:#92400e;background:#fef3c7;border-radius:12px;padding:10px 14px;font-weight:700}.ch-hero ul{margin:4px 0 10px}.ch-try{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.ch-done{background:var(--accent-soft);border-radius:12px;padding:10px 14px}.ch-cert{text-align:center;border:3px double var(--accent);padding:28px 18px}.ch-cert-brand{margin:0;font-weight:800}.ch-cert-brand span{color:var(--accent-text)}.ch-cert h2{margin:6px 0;font-size:1.6rem}.ch-cert-name{margin:6px 0;font-size:1.8rem;font-weight:800}.ach-form{gap:10px;max-width:520px;margin-top:10px;display:grid}.ach-form label{gap:4px;font-weight:700;display:grid}.ach-form input,.ach-form textarea{font:inherit;border:1px solid var(--line);border-radius:8px;padding:8px}.vplayer{z-index:80;color:#fff;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:#0b0a16;flex-direction:column;display:flex;position:fixed;inset:0}.vp-top{align-items:center;gap:12px;padding:12px 18px;display:flex}.vp-title{min-width:0;font:600 1rem var(--font-head);white-space:nowrap;text-overflow:ellipsis;opacity:.92;flex:1;align-items:center;gap:10px;display:flex;overflow:hidden}.vp-title img{border-radius:7px;flex:none;width:26px;height:26px}.vp-close{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;flex:none;width:40px;height:40px;font-size:1.05rem}.vp-close:hover{background:#ffffff38}.vp-wrap{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;min-height:0;padding:0 18px 14px;display:flex}.vp-screen{aspect-ratio:16/9;isolation:isolate;border-radius:22px;width:min(100%,177.778vh - 302.222px,1280px);transition:background 1s;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000080}.vp-screen:fullscreen{aspect-ratio:auto;border-radius:0;width:100vw;height:100vh}.vs-indigo{background:linear-gradient(135deg,#4f46e5,#7c3aed)}.vs-teal{background:linear-gradient(135deg,#0f766e,#14b8a6)}.vs-sunset{background:linear-gradient(135deg,#ea580c,#f59e0b)}.vs-berry{background:linear-gradient(135deg,#be185d,#8b5cf6)}.vs-forest{background:linear-gradient(135deg,#15803d,#65a30d)}.vs-ocean{background:linear-gradient(135deg,#1d4ed8,#0891b2)}.vp-blob{z-index:-1;background:#ffffff1f;border-radius:50%;animation:9s ease-in-out infinite alternate vp-float;position:absolute}.vp-blob.a{aspect-ratio:1;width:42%;top:-18%;left:-10%}.vp-blob.b{aspect-ratio:1;background:#ffffff17;width:30%;animation-duration:11s;bottom:-14%;right:-6%}.vp-blob.c{aspect-ratio:1;background:#ffffff24;width:12%;animation-duration:7s;top:8%;right:22%}@keyframes vp-float{0%{transform:translate(0)scale(1)}to{transform:translate(4%,6%)scale(1.08)}}.vp-intro{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:4%;animation:.6s both vp-in;display:flex;position:absolute;inset:0}.vp-intro h1{font:700 clamp(1.5rem,4vw,3.2rem)/1.1 var(--font-head);text-wrap:balance;text-shadow:0 4px 20px #00000040;max-width:20ch;margin:0}.vp-kicker{font:700 .8rem var(--font-head);letter-spacing:.14em;text-transform:uppercase;opacity:.85;margin:0}.vp-sub{opacity:.85;margin:4px 0 0}.vp-intro-buddy{animation:1.6s ease-in-out infinite alternate vp-bob}.vp-logo{border-radius:26px;width:96px;height:96px;display:block;box-shadow:0 10px 30px #00000040}.vp-bigplay{color:#4f46e5;cursor:pointer;background:#fff;border:0;border-radius:50%;width:78px;height:78px;margin-top:14px;padding-left:6px;font-size:1.9rem;animation:1.8s ease-in-out infinite vp-pulse;box-shadow:0 10px 30px #0000004d}@keyframes vp-pulse{0%,to{box-shadow:0 0 #ffffff80}50%{box-shadow:0 0 0 16px #fff0}}@keyframes vp-bob{0%{transform:translateY(0)}to{transform:translateY(-10px)}}@keyframes vp-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.vp-scene{flex-direction:column;gap:3%;padding:4.5% 5% 4%;animation:.55s cubic-bezier(.2,.8,.2,1) both vp-scene;display:flex;position:absolute;inset:0}@keyframes vp-scene{0%{opacity:0;transform:translate(6%)}to{opacity:1;transform:none}}.vp-head{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.vp-chip{font:700 .75rem var(--font-head);letter-spacing:.08em;text-transform:uppercase;background:#fff3;border-radius:999px;padding:4px 12px}.vp-head h2{font:700 clamp(1.3rem,3.2vw,2.6rem)/1.12 var(--font-head);text-wrap:balance;text-shadow:0 3px 14px #0003;margin:0}.vp-body{flex:1;align-items:flex-start;gap:4%;min-height:0;padding-left:15%;display:flex}.vp-body.has-vis{padding-left:0}.vp-vis{color:#121826;background:#fff;border-radius:18px;flex:0 0 46%;max-height:100%;padding:2%;animation:.6s cubic-bezier(.2,.9,.3,1.3) both vp-pop;overflow:hidden;box-shadow:0 18px 40px #00000038}.vp-vis svg{max-width:100%;height:auto;max-height:calc(45vh - 76.5px);margin:0 auto;display:block}@keyframes vp-pop{0%{opacity:0;transform:scale(.85)rotate(-2deg)}to{opacity:1;transform:none}}.vp-steps{flex-direction:column;flex:1;gap:12px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.vp-steps li{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffff29;border-radius:16px;align-items:flex-start;gap:14px;padding:12px 16px;font-size:clamp(.95rem,1.6vw,1.35rem);line-height:1.35;transition:all .4s;display:flex}.vp-steps li.seen{opacity:.6;transform-origin:0;transform:scale(.97)}.vp-steps li.now{color:#121826;background:#fff;font-size:clamp(1.05rem,2vw,1.65rem);font-weight:600;animation:.5s cubic-bezier(.2,.9,.3,1.25) both vp-step;box-shadow:0 14px 34px #00000038}@keyframes vp-step{0%{opacity:0;transform:translateY(18px)scale(.94)}to{opacity:1;transform:none}}.vp-steps .md p{margin:0}.vp-steps .md{max-width:none}.vp-n{width:1.7em;height:1.7em;font:700 .8em var(--font-head);background:#ffffff40;border-radius:50%;flex:none;place-items:center;display:grid}.vp-steps li.now .vp-n{color:#fff;background:#4f46e5}.vp-t{flex:1;min-width:0}.vp-presenter{filter:drop-shadow(0 10px 18px #0000004d);flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute;bottom:3%;left:2.5%}.vp-presenter small{color:#121826;font:700 .72rem var(--font-head);background:#fff;border-radius:999px;padding:1px 10px}.vp-presenter .vp-logo{border-radius:20px;width:70px;height:70px}.vp-presenter.talk svg,.vp-presenter.talk .vp-logo{transform-origin:50% 100%;animation:.3s ease-in-out infinite alternate vp-talk}@keyframes vp-talk{0%{transform:translateY(0)scaleY(1)}to{transform:translateY(-5px)scaleY(1.04)}}.vp-sub-line{text-align:center;pointer-events:none;margin:0;position:absolute;bottom:5%;left:18%;right:18%}.vp-sub-line span{color:#fff;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#000000b8;border-radius:6px;padding:3px 10px;font-size:clamp(.85rem,1.4vw,1.15rem);line-height:1.6;display:inline}.vp-end{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:center;background:#0b0a168c;flex-direction:column;justify-content:center;align-items:center;gap:6px;animation:.5s both vp-in;display:flex;position:absolute;inset:0}.vp-end h2{font:700 clamp(1.6rem,3.5vw,2.8rem) var(--font-head);margin:6px 0 0}.vp-end p{opacity:.9;margin:0;font-size:1.1rem}.vp-end-acts{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:14px;display:flex}.vp-go{color:#4f46e5;font:700 1.05rem var(--font-head);cursor:pointer;background:#fff;border:0;border-radius:999px;padding:13px 24px}.vp-ghost{color:#fff;font:600 1rem var(--font-head);cursor:pointer;background:0 0;border:1.5px solid #fff9;border-radius:999px;padding:12px 20px}.vp-confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.vp-confetti i{top:-5%;left:calc(var(--k) * 5.5%);background:hsl(calc(var(--k) * 40) 90% 65%);width:10px;height:16px;animation:vp-fall calc(1.8s + var(--k) * 70ms) ease-in calc(var(--k) * 50ms) both;border-radius:3px;position:absolute}@keyframes vp-fall{to{transform:translateY(120vh)rotate(540deg)}}.vp-bar{width:min(100%,177.778vh - 302.222px,1280px)}.vp-track{cursor:pointer;background:#ffffff2e;border-radius:3px;height:6px;margin:4px 0 8px;position:relative}.vp-track:hover{height:8px;margin-top:3px;margin-bottom:7px}.vp-fill{background:linear-gradient(90deg,#8b85ff,#f472b6);border-radius:3px;transition:width .35s;position:absolute;top:0;bottom:0;left:0}.vp-mark{background:#0b0a16;border-radius:2px;width:3px;position:absolute;top:-2px;bottom:-2px}.vp-controls{align-items:center;gap:6px;display:flex}.vp-controls button{color:#fff;cursor:pointer;opacity:.9;background:0 0;border:0;border-radius:10px;min-width:40px;height:40px;font-size:1.05rem}.vp-controls button:hover{opacity:1;background:#ffffff1f}.vp-controls button.on{color:#a5a0ff}.vp-controls .vp-play{color:#0b0a16;opacity:1;background:#fff;border-radius:50%;width:52px;height:52px;font-size:1.15rem}.vp-controls .vp-play:hover{background:#e8e6ff}.vp-time{font:600 .85rem var(--font-head);opacity:.75;margin-left:6px}.vp-gap{flex:1}.vp-controls button:focus-visible,.vp-close:focus-visible,.vp-bigplay:focus-visible{outline-offset:2px;outline:3px solid #a5a0ff}@media (max-width:700px),(max-aspect-ratio:1){.vp-wrap{justify-content:flex-start;padding:0 10px 10px}.vp-screen,.vp-bar{width:100%}.vp-screen{aspect-ratio:auto;border-radius:18px;flex:1;min-height:0}.vp-scene{padding:22px 18px 150px}.vp-body,.vp-body.has-vis{flex-direction:column;gap:14px;padding-left:0}.vp-vis{flex:none;width:100%;max-height:none;overflow:visible}.vp-vis svg{width:100%;max-height:min(38vh,400px)}.vp-steps li{font-size:1rem}.vp-steps li.now{font-size:1.12rem}.vp-presenter{bottom:12px;left:12px}.vp-presenter svg{width:84px;height:84px}.vp-sub-line{text-align:left;bottom:22px;left:108px;right:12px}.vp-time{display:none}}@media (prefers-reduced-motion:reduce){.vplayer *{transition:none!important;animation:none!important}}.vp-body:not(.has-vis){flex-direction:row-reverse;justify-content:space-between;align-items:center;padding-left:0}.vp-body:not(.has-vis) .vp-steps{max-width:62%}.vp-host{filter:drop-shadow(0 18px 30px #0000004d);flex-direction:column;flex:none;align-items:center;gap:6px;width:30%;animation:.6s both vp-in;display:flex}.vp-host svg{width:100%;height:auto;max-height:calc(50vh - 85px)}.vp-host small{color:#121826;font:700 .8rem var(--font-head);background:#fff;border-radius:999px;padding:2px 12px}.vp-logo.big{aspect-ratio:1;border-radius:22%;width:min(170px,80%);height:auto}.vp-host.talk svg,.vp-host.talk .vp-logo{transform-origin:50% 100%;animation:.3s ease-in-out infinite alternate vp-talk}@media (max-width:700px),(max-aspect-ratio:1){.vp-body:not(.has-vis){flex-direction:column-reverse;justify-content:flex-end;align-items:stretch}.vp-body:not(.has-vis) .vp-steps{max-width:none}.vp-host{gap:2px;width:auto;position:absolute;bottom:12px;left:12px}.vp-host svg{width:90px;height:auto}.vp-logo.big{border-radius:20px;width:70px}}.ls-crumbs{align-items:center;gap:10px;min-width:0;margin:4px 0 0;display:flex}.ls-crumbs ol{background:var(--panel);border:1px solid var(--line);min-width:0;color:var(--ink-soft);border-radius:999px;flex:1;align-items:center;gap:6px;margin:0;padding:6px 12px;font-size:.82rem;list-style:none;display:flex}.ls-crumbs li{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.ls-crumbs li:first-child{color:var(--accent-text);flex:none;font-weight:700}.ls-crumbs li:last-child{color:var(--ink);font-weight:600}.ls-crumbs li+li:before{content:"›";opacity:.55;margin-right:6px;font-weight:700}.ls-crumbs em{font-style:normal;font:700 .78rem var(--font-head);background:var(--accent-soft);color:var(--accent-text);border-radius:999px;flex:none;padding:6px 12px}.ls .syl-tag.compact{margin:0;font-size:.78rem}.ls-kicker{font:700 1.3rem/1.25 var(--font-head);letter-spacing:0;text-transform:none;color:var(--ink);margin:2px 0 0}.ls-eyebrow{font:700 .78rem var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);align-items:center;gap:8px;margin:0;display:flex}.ls-eyebrow .pic{width:1.5em;height:1.5em}.ls-eyebrow.sm{color:var(--ink-soft);margin-top:4px}.ls-goal{font:600 1.25rem/1.4 var(--font-head)}.ls-criteria li{background:var(--chip);border-radius:12px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.ls-criteria li:before{content:none}.ls-criteria li .md{flex:1;min-width:0}.ls-criteria li .md p{margin:0}.ls-tick{border:2px solid var(--accent);background:var(--panel);border-radius:7px;flex:none;width:22px;height:22px;margin-top:1px}.stage-page .ls-card{flex:none;overflow:visible}.stage-page .ls-foot{margin-top:auto}@media (min-width:761px){.stage-page .ls-foot{background:0 0;margin-top:6px;position:static}}.admin-state{font:700 .75rem var(--font-head);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:6px;display:inline-flex}.admin-state select{font:700 .85rem var(--font-head);border:1.5px solid var(--accent);color:var(--accent-text);background:var(--panel);border-radius:10px;min-height:36px;padding:6px 8px}.vp-spin{border:6px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:64px;height:64px;margin-bottom:12px;animation:1s linear infinite vp-rot}@keyframes vp-rot{to{transform:rotate(360deg)}}.citem .watch.ready{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.lp{color:#121826;background:#f6f7fb;min-height:100vh}.lp-w{max-width:1120px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px));margin:0 auto}.lp-head{z-index:10;background:#fff;border-bottom:1px solid #e4e7ee;position:sticky;top:0}.lp-head .lp-w{align-items:center;gap:20px;min-height:64px;display:flex}.lp-nav{flex-wrap:wrap;flex:1;gap:4px;display:flex}.lp-nav a{color:#3b4254;font:600 .92rem var(--font-head);border-radius:10px;padding:8px 10px;text-decoration:none}.lp-nav a:hover{color:#4f46e5;background:#eef0ff}.lp-r{gap:8px;display:flex}.lp-btn{font:700 .9rem var(--font-head);white-space:nowrap;border-radius:999px;padding:9px 16px;text-decoration:none}.lp-btn.g{color:#4f46e5;border:1.5px solid #c9ccf5}.lp-btn.p{color:#fff;background:#4f46e5}.lp-hero{background:radial-gradient(90% 140% at 10% 0,#e8e6ff,#0000 60%),linear-gradient(135deg,#eef0ff,#f6f7fb);border-bottom:1px solid #e4e7ee}.lp-hero .lp-w{padding-block:44px 38px}.lp-kick{font:700 .78rem var(--font-head);letter-spacing:.1em;text-transform:uppercase;color:#4f46e5;margin:0 0 8px}.lp-hero h1{font:700 clamp(2rem,4vw,2.8rem)/1.1 var(--font-head);margin:0}.lp-upd{color:#5f6b7f;margin:12px 0 0}.lp-upd a{color:#4f46e5;font-weight:700}.lp-grid{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:40px;padding-block:36px 60px;display:grid}.lp-grid aside{flex-direction:column;gap:18px;display:flex;position:sticky;top:84px}.lp-toc b,.lp-also b{font:700 .75rem var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:#5f6b7f;margin-bottom:8px;display:block}.lp-toc ol{border-left:2px solid #e4e7ee;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.lp-toc a{color:#3b4254;border-left:2px solid #0000;margin-left:-2px;padding:5px 12px;font-size:.9rem;text-decoration:none;display:block}.lp-toc a:hover{color:#4f46e5;border-left-color:#4f46e5}.lp-also{flex-direction:column;gap:6px;display:flex}.lp-also a{color:#4f46e5;font-size:.9rem;font-weight:600;text-decoration:none}.lp-doc{background:#fff;border:1px solid #e4e7ee;border-radius:20px;max-width:760px;padding:34px 40px;font-size:1.02rem;line-height:1.7}.lp-doc>p:first-child{color:#3b4254;font-size:1.1rem}.lp-doc h2{font:700 1.3rem var(--font-head);border-top:1px solid #eef0f4;margin:34px 0 10px;padding-top:24px;scroll-margin-top:84px}.lp-doc h2:first-of-type{border-top:0;padding-top:0}.lp-doc h3{font:700 1rem var(--font-head);color:#4f46e5;margin:18px 0 4px}.lp-doc p,.lp-doc li{margin:0 0 10px}.lp-doc ul{padding-left:0;list-style:none}.lp-doc ul li{padding-left:28px;position:relative}.lp-doc ul li:before{content:"";opacity:.75;background:#4f46e5;border-radius:3px;width:10px;height:10px;position:absolute;top:.55em;left:4px}.lp-doc a{color:#4f46e5}.lp-doc h2:first-of-type+ul{background:#f3f4ff;border-radius:14px;padding:16px 18px 6px}.lp-foot{background:#fff;border-top:1px solid #e4e7ee}.lp-foot .lp-w{color:#5f6b7f;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:20px;font-size:.88rem;display:flex}.lp-foot a{color:#3b4254}@media (max-width:900px){.lp-nav,.lp-r .g{display:none}.lp-head .lp-w{justify-content:space-between}.lp-grid{grid-template-columns:1fr;gap:20px;padding-block:20px 40px}.lp-grid aside{position:static}.lp-toc ol{border:0;flex-flow:wrap;gap:6px}.lp-toc a{background:#fff;border:1px solid #e4e7ee;border-radius:999px;margin:0;padding:5px 12px}.lp-also{display:none}.lp-doc{border-radius:16px;padding:22px 18px}.lp-hero .lp-w{padding-block:28px 24px}}.navlinks{flex-wrap:nowrap;min-width:0}.navlinks a,.acct-link em{white-space:nowrap}@media (max-width:1180px){.navlinks a{padding:7px 9px}.topnav{gap:12px}.admin-state .wide{display:none}}.ls>*{min-width:0;max-width:100%}.ls-crumbs ol{overflow:hidden}.ls-crumbs li:last-child{flex:0 auto}@media (max-width:760px){.ls-crumbs em{display:none}}.lp-hero,.lp-head{margin:0}.vp-top{flex-wrap:nowrap;align-items:center;margin:0}.ls{width:100%;min-width:0}.vp-brand{border-radius:12px;width:44px;height:44px;position:absolute;top:4%;right:3%;box-shadow:0 6px 16px #0003}.vp-intro .vp-logo{border-radius:20px;width:72px;height:72px;margin-bottom:6px}.vp-body.no-host:not(.has-vis){flex-direction:row;justify-content:flex-start}.vp-body.no-host:not(.has-vis) .vp-steps{max-width:min(860px,88%)}.vp-body.no-host~.vp-sub-line{left:10%;right:10%}.vp-screen:has(.no-host) .vp-sub-line{left:10%;right:10%}@media (max-width:700px),(max-aspect-ratio:1){.vp-brand{border-radius:10px;width:34px;height:34px;top:18px;right:16px}.vp-screen:has(.no-host) .vp-sub-line{text-align:center;left:14px;right:14px}.vp-screen:has(.no-host) .vp-scene{padding-bottom:90px}}.admin-state{flex:none}.admin-state select{flex:none;width:auto;min-width:84px;padding:6px 26px 6px 10px}.admin-state{background:var(--accent-soft);color:var(--ink);font:500 .88rem var(--font-body);text-transform:none;letter-spacing:0;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin:-10px 0 16px;padding:8px 12px;display:flex}.admin-state b{color:var(--accent-text)}.admin-state select{min-width:220px;max-width:100%;font:700 .9rem var(--font-head)}.navlinks{scrollbar-width:none;overflow-x:auto}.navlinks::-webkit-scrollbar{display:none}.topnav .spacer{min-width:8px}@media (max-width:760px){.admin-state{margin-top:0}.admin-state select{flex:1;min-width:0}.as-long{display:none}}@media (max-width:900px){.navlinks a{padding:7px;font-size:.9rem}.topnav{gap:10px}}.logo-tm{vertical-align:super;opacity:.8;margin-left:1px;font-size:.42em;font-weight:600;line-height:0}html[data-speaking] .bud .b-all,.bud.talking .b-all{animation:.36s ease-in-out infinite alternate bud-chat}@keyframes bud-chat{0%{transform:translateY(0)scale(1)}to{transform:translateY(-3px)scale(1.012,.99)}}@media (prefers-reduced-motion:reduce){.bud .b-all{animation:none!important}}.ex-note,.ex-err{border:1px solid var(--line);background:var(--accent-soft);border-radius:14px;align-items:center;gap:14px;margin-top:18px;padding:14px 16px;display:flex}.ex-note p,.ex-err p{min-width:0;color:var(--ink-soft);flex:1;margin:0;font-size:.95rem;line-height:1.45}.ex-note p b{color:var(--ink);margin-bottom:2px;font-size:1rem;display:block}.ex-ic{flex:none;font-size:1.6rem;line-height:1}.ex-btn{border:2px solid var(--accent);background:var(--panel);color:var(--accent-text);cursor:pointer;white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:6px;padding:10px 16px;font-size:.95rem;font-weight:800;text-decoration:none;display:inline-flex}.ex-err{background:#fff4f2;border-color:#f6c9c1}.ex-err p{color:#b42318;font-weight:700}@media (max-width:560px){.ex-note,.ex-err{flex-wrap:wrap}.ex-note .ex-btn,.ex-err .ex-btn{justify-content:center;width:100%}}.pl-items.take .pl-item{position:relative}.pl-items.take .pl-item.away{transition:opacity .6s,transform .6s,filter .6s}.pl-items.take .pl-item.gone{cursor:default;transform:translateY(-6px)scale(.9)}.pl-items.take .pl-item.gone>:not(.pl-x){opacity:.35;filter:grayscale(.7)}.pl-x{pointer-events:none;position:absolute;inset:8%}.pl-x:before,.pl-x:after{content:"";background:#e5484d;border-radius:6px;width:110%;height:7px;animation:.35s ease-out both pl-x-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.pl-x:after{transform:translate(-50%,-50%)rotate(-45deg)}@keyframes pl-x-in{0%{width:0}to{width:110%}}@media (prefers-reduced-motion:reduce){.pl-items.take .pl-item.away{transition:none}.pl-x:before,.pl-x:after{animation:none}}.acct-teacher{flex-wrap:wrap;gap:10px}.tch-pick{gap:8px;display:flex}.tch-opt{border:2px solid var(--line);background:var(--panel);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:4px 12px 4px 4px;display:flex}.tch-opt img{object-fit:cover;object-position:50% 12%;background:var(--accent-soft);border-radius:50%;width:44px;height:44px}.tch-opt.on{border-color:var(--accent);background:var(--accent-soft)}.vp-teacher-img{object-fit:contain;width:100%;height:auto;display:block}.vp-host.teacher{align-self:flex-end;width:32%;margin-bottom:-4%}.vp-host.teacher .vp-teacher-img{max-height:calc(62vh - 105.4px)}.vp-host.teacher.talk .vp-teacher-img,.vp-presenter.teacher.talk .vp-teacher-img{transform-origin:50% 100%;animation:2.4s ease-in-out infinite vp-sway}.vp-presenter.teacher .vp-teacher-img{width:150px}.vp-intro-teacher .vp-teacher-img{aspect-ratio:1;object-fit:cover;object-position:50% 8%;background:#ffffff2e;border:4px solid #ffffffb3;border-radius:50%;width:190px;margin:0 auto}.vp-end-teacher .vp-teacher-img{aspect-ratio:1;object-fit:cover;object-position:50% 8%;background:#ffffff2e;border:4px solid #ffffffb3;border-radius:50%;width:150px}@keyframes vp-sway{0%,to{transform:rotate(0)translateY(0)}25%{transform:rotate(-.8deg)translateY(-2px)}75%{transform:rotate(.8deg)translateY(-1px)}}@media (max-width:760px){.vp-host.teacher{width:auto;margin-bottom:0}.vp-host.teacher .vp-teacher-img{width:96px}.vp-presenter.teacher .vp-teacher-img{width:90px}}@media (prefers-reduced-motion:reduce){.vp-teacher-img{animation:none!important}}.vp-vis svg [data-step]{transition:opacity .5s}.vp-vis svg .vp-later{opacity:0}.vp-vis .viz{margin:0;overflow:visible}.vp-remake{color:#fff;font:700 .85rem var(--font-head);cursor:pointer;white-space:nowrap;background:#ffffff1f;border:1px solid #ffffff40;border-radius:999px;margin-left:auto;margin-right:10px;padding:7px 14px}.vp-remake:hover{background:#ffffff38}.vp-vis{flex-direction:column;align-self:stretch;max-height:100%;display:flex}.vp-vis .viz{background:0 0;border:0;flex:1;justify-content:center;align-items:center;min-height:0;padding:6px;display:flex}.vp-vis .viz svg,.vp-vis svg{width:100%;max-width:100%;height:100%;max-height:none}.vp-scene{padding-bottom:max(4%,72px)}@media (max-width:700px),(max-aspect-ratio:1){.vp-vis{flex:none;align-self:stretch;height:min(36vh,380px)}.vp-body.has-vis .vp-steps li.seen:not(:nth-last-child(2)){display:none}}@media (max-width:700px) and (max-height:700px),(max-aspect-ratio:1) and (max-height:700px){.vp-vis{height:30vh}.vp-head h2{font-size:1.2rem}}@media (max-height:520px) and (min-aspect-ratio:1){.vp-chip{display:none}.vp-head h2{font-size:1.05rem}.vp-scene{gap:8px;padding-bottom:58px}.vp-steps li.seen{display:none}.vp-steps li{padding:8px 12px}.vp-sub-line{bottom:8px}}.vp-vis>div{flex-direction:column;flex:1;min-height:0;display:flex}.vp-vis>div>:not(.viz){display:none}.in-app .lp-nav,.in-app .lp-r,.in-app .lp-head .brand{display:none!important}.lp-back{color:#4f46e5;font:700 1rem var(--font-head);cursor:pointer;background:0 0;border:0;padding:10px 4px;display:none}.in-app .lp-back{display:inline-flex}.in-app .lp-head{padding-top:env(safe-area-inset-top,0px)}@media (prefers-color-scheme:dark){.in-app:not([data-theme=light]) .lp{--lpbg:#0f1020;--lpcard:#1a1b2e;--lpline:#2c2e45;--lptx:#e7e8f2;--lpsoft:#a9adc4;--lpacc:#a5a0ff}}.in-app[data-theme=dark] .lp{--lpbg:#0f1020;--lpcard:#1a1b2e;--lpline:#2c2e45;--lptx:#e7e8f2;--lpsoft:#a9adc4;--lpacc:#a5a0ff}.in-app .lp[style],.in-app .lp{background:var(--lpbg,#f6f7fb);color:var(--lptx,#121826)}.in-app .lp-head,.in-app .lp-doc,.in-app .lp-foot{background:var(--lpcard,#fff);border-color:var(--lpline,#e4e7ee)}.in-app .lp-hero{background:var(--lpbg,#eef0ff);border-color:var(--lpline,#e4e7ee)}.in-app .lp-doc>p:first-child,.in-app .lp-toc a,.in-app .lp-foot a,.in-app .lp-also a{color:var(--lptx,#3b4254)}.in-app .lp-upd,.in-app .lp-toc b,.in-app .lp-also b,.in-app .lp-foot .lp-w{color:var(--lpsoft,#5f6b7f)}.in-app .lp-doc h2:first-of-type+ul{background:var(--lpbg,#f3f4ff)}.in-app .lp h1,.in-app .lp h2{color:var(--lptx,inherit)}.in-app .lp-toc a{background:var(--lpcard,#fff)!important;color:var(--lptx,#3b4254)!important;border-color:var(--lpline,#e4e7ee)!important}.in-app .lp-head .lp-w{justify-content:flex-start}.in-app .lp-head .lp-w>.lp-back{margin-left:0;margin-right:auto}.ex-btn{text-align:center;overflow-wrap:anywhere;max-width:100%;line-height:1.3;white-space:normal!important}.ex-btn:hover{background:var(--panel);color:var(--accent-text)}@media (hover:hover){.ex-btn:hover{background:var(--accent);color:var(--accent-ink)}}.ex-more{border:1.5px solid var(--line);background:var(--panel);width:100%;max-width:420px;color:var(--ink);font:600 1rem var(--font-head);border-radius:14px;margin-top:10px;padding:12px 14px}.home-top .bud-change{align-items:center;gap:4px;display:inline-flex}.home-top .bud-pen{width:12px;height:12px}.secondary{border:2px solid var(--btn);background:var(--panel);color:var(--btn);border-radius:var(--radius-sm);font:700 .9375rem/1.2 var(--font-body);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:9px 14px;text-decoration:none;display:inline-flex}.secondary:hover:not(:disabled){background:var(--accent-soft)}.secondary.sm,.primary.sm{box-shadow:none;border-radius:10px;padding:6px 12px;font-size:.85rem}.secondary.danger{color:#b91c1c;border-color:#dc2626}.rv-set{border:1px solid var(--line);background:var(--accent-soft);border-radius:14px;gap:8px;margin:12px 0 14px;padding:12px 14px;display:grid}.rv-set label{align-items:flex-start;gap:10px;font-size:.92rem;line-height:1.35;display:flex}.rv-set small{color:var(--ink-soft)}.rv .chips small{opacity:.7;margin-left:4px;font-weight:600}.rv-acts{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.rv-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.rv-item{border:1px solid var(--line);background:var(--panel);border-radius:14px;overflow:hidden}.rv-item.rv-flag{border-left:5px solid #f59e0b}.rv-item.rv-fixed{border-left:5px solid #6366f1}.rv-item.rv-clean{border-left:5px solid #22c55e}.rv-item.rv-ok{border-left:5px solid #16a34a}.rv-item.rv-no{border-left:5px solid #dc2626}.rv-row{grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:12px 14px;display:grid}.rv-row input[type=checkbox]{width:20px;height:20px;margin-top:2px}.rv-open{all:unset;cursor:pointer;text-align:left;gap:4px;min-width:0;display:grid}.rv-open b{font:700 1rem var(--font-head);color:var(--ink)}.rv-open span{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.4;display:-webkit-box;overflow:hidden}.rv-open .rv-why{color:#b45309}.rv-open .rv-fix{color:#4f46e5}.rv-open:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}.rv-btns{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.rv-body{border-top:1px solid var(--line);gap:10px;padding:12px 14px;display:grid}.rv-box{background:var(--accent-soft);border-radius:12px;padding:10px 12px;font-size:.92rem}.rv-box.warn{color:#78350f;background:#fef3c7}.rv-box ul{margin:6px 0 0;padding-left:18px}.rv-box del{color:#b91c1c}.rv-box ins{color:#15803d;font-weight:700;text-decoration:none}.rv-text{border:1px solid var(--line);border-radius:12px;max-height:340px;padding:10px 12px;font-size:.92rem;line-height:1.45;overflow:auto}.rv-text p{margin:0 0 6px}.rv-text p.ans{color:#15803d;font-weight:600}@media (max-width:640px){.rv-row{grid-template-columns:auto 1fr}.rv-row .rv-btns{grid-column:1/-1;justify-content:stretch}.rv-row .rv-btns button{flex:1}}.admin-h{margin:4px 0 12px}.fold{border:1px solid var(--line);background:var(--panel);border-radius:16px;margin-bottom:10px;overflow:hidden}.fold-head{all:unset;box-sizing:border-box;cursor:pointer;align-items:center;gap:12px;width:100%;padding:14px 18px;display:flex}.fold-head:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.fold-t{font:700 1.08rem var(--font-head);color:var(--ink)}.fold-h{color:var(--ink-soft);flex:1;font-size:.88rem}.fold-c{color:var(--ink-soft);margin-left:auto;transition:transform .2s}.fold.open .fold-c{transform:rotate(180deg)}.fold-body{border-top:1px solid var(--line)}.fold-body>.panel,.fold-body>section.panel,.fold-body>main.panel{box-shadow:none;border:0;border-radius:0;margin:0!important}.fold-body>.panel>h3:first-child,.fold-body>section>h3:first-child,.fold-body>.panel>h2:first-child{display:none}@media (max-width:640px){.fold-h{display:none}}.rv-bulk{z-index:5;border:1px solid var(--line);background:var(--panel);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0;padding:10px 12px;display:flex;position:sticky;top:0;box-shadow:0 6px 16px #14143c0f}.rv-bulk label{align-items:center;gap:8px;font-size:.92rem;font-weight:700;display:flex}.rv-bulk input{width:20px;height:20px}.rv-bulk .rv-n{color:var(--ink-soft);margin-right:auto;font-size:.88rem}.pl-next.ghost{color:var(--ink);border:3px solid var(--line);box-shadow:none;background:0 0}.pl-next.ghost:active{box-shadow:none}.kq-res-acts .cta.ghost{color:var(--ink);border:2px solid var(--line);box-shadow:none;background:0 0}.ex-note .ex-link{color:var(--accent-text);overflow-wrap:anywhere;flex-basis:100%;font-size:.92rem;font-weight:700;text-decoration:underline}.rv-set{gap:14px}.rv-choice{gap:6px;display:grid}.rv-choice b{font-size:.95rem}.rv-seg{border:2px solid var(--accent);border-radius:999px;width:max-content;max-width:100%;display:inline-flex;overflow:hidden}.rv-seg button{background:var(--panel);color:var(--accent-text);cursor:pointer;border:0;min-height:40px;padding:8px 18px;font:700 .92rem inherit}.rv-seg button.on{background:var(--accent);color:var(--accent-ink);cursor:default;opacity:1}.rv-seg button:disabled{opacity:1}.rv-all{gap:6px;margin:0 0 14px;display:grid}.rv-all .primary{justify-self:start}.rv-all small{color:var(--ink-soft)}select{appearance:none;border:1.5px solid var(--line);border-radius:var(--radius-sm);min-height:44px;color:var(--ink);font:500 1rem var(--font-body);background:var(--panel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center/16px;padding:10px 38px 10px 12px}select:disabled{opacity:.55}.admin-state select{appearance:auto;background-image:none}.test-setup label{font-weight:600}.learn-pick .test-setup{grid-template-columns:minmax(122px,1fr) minmax(0,2fr);max-width:620px;margin-top:14px}.btn-row{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.navlinks{flex-wrap:wrap;row-gap:2px;overflow:visible}.topnav .admin-link{color:var(--ink-soft);border-radius:999px;align-items:center;padding:7px 12px;font-weight:700;text-decoration:none;display:inline-flex}.topnav .admin-link[aria-current=page]{color:var(--accent-text);background:var(--accent-soft)}.ex-note{flex-wrap:wrap}.ex-note p{flex:240px}.ex-note .ex-link{margin-left:44px}.ls-link{border:2px solid var(--btn,var(--accent));background:var(--panel);color:var(--btn,var(--accent));font:700 .875rem/1.2 var(--font-body);border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:6px 12px;text-decoration:none;display:inline-flex}.ls-link:hover:not(:disabled){background:var(--accent-soft)}.ls-link:disabled{opacity:.5}.rc{gap:16px;padding:0;overflow:hidden}.rc>:not(.rc-band){margin-left:22px;margin-right:22px}.rc>.rc-foot{margin:0}.rc-band{color:#fff;background:linear-gradient(120deg,#4f46e5,#7c6cf2);justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;display:flex}.rc-band .logo-word,.rc-band .logo-word b,.rc-band .logo-tm{color:#fff}.rc-band-t{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.rc-band-t b{font:700 1.35rem var(--font-head)}.rc-band-t span{opacity:.9;font-size:.9rem}.rc-info{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;margin:0;display:grid}.rc-info div{flex-direction:column;display:flex}.rc-info dt{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);font-size:.75rem}.rc-info dd{margin:0;font-weight:700}.rc-overall{gap:2px;min-width:96px}.rc-terms .spacer{flex:1}.rc-table thead th{background:var(--accent-soft);color:var(--ink);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem}.rc-subj{border-top:1px solid var(--line);padding-top:12px}.rc-todo{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.rc-todo p{margin:0}.rc-foot{border-top:1px solid var(--line);color:var(--ink-soft);background:var(--accent-soft);justify-content:space-between;gap:10px;padding:12px 22px;font-size:.8rem;display:flex}@media print{@page{size:A4;margin:14mm}html,body{color:#121826!important;background:#fff!important}.admin-state,.site-foot,.topnav,.tabbar,.page-head{display:none!important}.wrap{max-width:none!important;padding:0!important}.rc{-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:12px;border:1px solid #e4e7ee!important}.rc-band{-webkit-print-color-adjust:exact;print-color-adjust:exact}.rc-subj{break-inside:avoid}}@media (max-width:560px){.rc-info{grid-template-columns:1fr 1fr}.rc-band-t b{font-size:1.1rem}}@media (max-width:980px){.topnav .acct-link em{display:none}.topnav .admin-link{padding:7px 8px}}.streak-chip{height:38px;font-size:.95rem;background:var(--k-orange,#f97316)!important;color:#fff!important}.streak-chip svg{stroke:#fff}.buddy-card{position:relative}.bd-now{font-style:normal;font:700 .75rem var(--font-head);background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:3px 10px;position:absolute;top:8px;left:8px}.buddy-keep{z-index:5;padding:12px 0 calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg,var(--paper)) 70%,transparent);position:sticky;bottom:0}.buddy-keep .big-btn{width:100%}.site-foot .sf-nav{flex-wrap:wrap;justify-content:center;gap:8px;margin:4px 0 10px;display:flex}.site-foot .sf-nav a{border:1.5px solid var(--line);background:var(--panel);min-height:36px;color:var(--ink);border-radius:999px;align-items:center;padding:4px 14px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.site-foot .sf-nav a:hover{border-color:var(--accent);color:var(--accent-text)}.site-foot .sf-legal{margin:0;font-size:.78rem}.sheet{max-height:calc(100dvh - 16px)}@media (min-width:700px){.sheet-back{align-items:center;padding:16px}.sheet{border-radius:26px;max-height:calc(100dvh - 32px)}.sheet-grab{display:none}}@media (max-height:760px){.yr-btn{min-height:62px}.yr-btn b{font-size:1.5rem}.yr-groups h3{margin:6px 0 4px}}.items li{flex-wrap:wrap}.row-msg{background:var(--accent-soft);color:var(--ink);border-radius:10px;flex-basis:100%;margin:8px 0 0;padding:8px 12px;font-size:.9rem;font-weight:600}.row-msg.bad{color:#b91c1c;background:#fdecec}.primary.danger-fill{color:#fff;background:#dc2626;border-color:#dc2626}.fold-badge{color:#fff;font:700 .78rem var(--font-head);white-space:nowrap;background:#f97316;border-radius:999px;margin-left:10px;padding:3px 10px}.pend-chip{color:#92400e;background:#fef3c7;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.75rem;font-weight:700}.fam-msg.ok{color:#166534;background:#e8f7ee;border-radius:10px;padding:10px 12px;font-weight:600}.fam-msg.bad{color:#b91c1c;background:#fdecec;border-radius:10px;padding:10px 12px;font-weight:600}.admin-strip{color:#fff;background:#121826;border-radius:16px;align-items:center;gap:10px;margin:0 0 12px;padding:12px 16px;text-decoration:none;display:flex}.admin-strip span{opacity:.8;flex:1;font-size:.85rem}.admin-strip em{color:#121826;background:#fff;border-radius:999px;padding:4px 12px;font-style:normal;font-weight:700}.adm-group{font:800 1.1rem var(--font-head);margin:28px 0 2px}.adm-group-hint{margin:0 0 10px}.ab-tabs{background:var(--chip);border-radius:12px;gap:4px;margin-right:8px;padding:4px;display:inline-flex}.ab-tabs button{font:700 .92rem var(--font-body);color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:8px 16px}.ab-tabs button.on{background:var(--panel);color:var(--accent-text);box-shadow:0 1px 4px #00000014}.ab-tabs small{background:var(--accent-soft);color:var(--accent-text);border-radius:999px;margin-left:6px;padding:1px 7px;font-size:.75rem}.ab-em .ab-sub{color:var(--ink-soft);font-size:.75rem;font-weight:500;display:block}.ab-kids{flex-direction:column;align-items:stretch!important}.ab-kid{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0;display:flex}.ab-kid>span{flex:220px;font-size:.9rem}.ab-cols{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid!important}.ab-hist li small{color:var(--ink-soft);display:block}.au-chip{background:var(--chip);white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:.78rem;font-weight:700;display:inline-block}.au-chip.a-deleted,.au-chip.a-declined,.au-chip.a-switched-off,.au-chip.a-refund{color:#b91c1c;background:#fdecec}.au-chip.a-approved,.au-chip.a-signed-up,.au-chip.a-switched-on,.au-chip.a-child-added{color:#166534;background:#e8f7ee}.au-chip.a-password-reset,.au-chip.a-pin-reset,.au-chip.a-free-time{color:#4338ca;background:#eef0ff}.adm-top{z-index:20;background:var(--paper);border-bottom:1px solid var(--line);margin-bottom:12px;padding:6px 0 8px;position:sticky;top:0}.adm-top .admin-h{margin:4px 0 8px}.adm-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.adm-tabs::-webkit-scrollbar{display:none}.adm-tabs button{border:1px solid var(--line);background:var(--panel);color:var(--ink-soft);font:700 .9rem var(--font-body);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:40px;padding:8px 14px;display:inline-flex}.adm-tabs button:hover{color:var(--ink);border-color:var(--accent)}.adm-tabs button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.adm-badge{background:var(--margin);color:#fff;border-radius:999px;padding:1px 7px;font-size:.75rem;line-height:1.3}.adm-tabs button.on .adm-badge{color:var(--margin);background:#fff}.adm-body{min-height:50vh}.ov-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.ov-alert{background:var(--accent-soft);border:1px solid var(--accent);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:8px 0;padding:10px 14px;display:flex}.ov-card{margin:0 0 14px;padding:16px 18px}.ov-card h3{margin:0 0 4px}.ov-card .hint{margin:0 0 10px}.ov-card-h{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.ov-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;display:grid}.ov-grid .ov-card{margin:0}.ov-grid+.ov-grid,.ov-card+.ov-grid{margin-top:14px}.ov-grid.two{grid-template-columns:repeat(auto-fit,minmax(380px,1fr))}@media (max-width:480px){.ov-grid,.ov-grid.two{grid-template-columns:1fr}}.ov-chart{margin:0}.ov-bars{border-bottom:1px solid var(--line);align-items:flex-end;gap:2px;height:170px;display:flex;position:relative}.ov-bar{cursor:default;flex:1 1 0;align-items:flex-end;min-width:0;height:100%;display:flex;position:relative}.ov-bar i{background:var(--accent);opacity:.85;border-radius:4px 4px 0 0;width:100%;transition:opacity .15s;display:block}.ov-bar.on i{opacity:1;box-shadow:0 0 0 2px var(--panel),0 0 0 3px var(--accent)}.ov-tip{white-space:nowrap;background:var(--ink);color:var(--paper);z-index:3;pointer-events:none;border-radius:8px;padding:5px 9px;font-size:.8rem;position:absolute;bottom:calc(100% + 6px)}.ov-bar .ov-tip{top:-34px;bottom:auto}.ov-axis{color:var(--ink-soft);gap:2px;margin-top:4px;font-size:.72rem;display:flex}.ov-axis span{white-space:nowrap;flex:1 1 0;min-width:0;overflow:visible}.ov-table{margin-top:8px;font-size:.85rem}.ov-table summary{cursor:pointer;color:var(--ink-soft)}.ov-table table{border-collapse:collapse;width:100%;max-width:420px;margin-top:6px}.ov-table td,.ov-table th{border-bottom:1px solid var(--line);text-align:left;padding:4px 8px}.ov-rows{gap:8px;margin:0;padding:0;list-style:none;display:grid}.ov-rows li{grid-template-columns:minmax(90px,38%) 1fr auto;grid-template-areas:"k t v""k s s";align-items:center;column-gap:10px;font-size:.9rem;display:grid}.ov-rk{color:var(--ink);overflow-wrap:anywhere;grid-area:k;line-height:1.25}.ov-track{background:var(--chip);border-radius:999px;grid-area:t;height:10px;overflow:hidden}.ov-track i{background:var(--accent);border-radius:999px;height:100%;display:block}.ov-rows b{font-variant-numeric:tabular-nums;grid-area:v}.ov-rows small{color:var(--ink-soft);grid-area:s;font-size:.76rem}.ov-card-h .ab-tabs{flex-wrap:wrap;margin-right:0}.ov-card-h .ab-tabs button{padding:7px 12px}.ov-axis{height:1.3em;display:block;position:relative}.ov-axis span{white-space:nowrap;position:absolute;top:0}@media (max-width:480px){.rc-table{font-size:.85rem}.rc-table th,.rc-table td{padding:6px 4px}.rc-table thead th{letter-spacing:0;font-size:.68rem}}.rc>table.rc-table{align-self:stretch;width:auto}.seg button{white-space:nowrap}.sheet,.sheet-back{overscroll-behavior:contain}.pl-word{font:700 1.7rem var(--font-head);color:var(--ink)}.pl-memory{grid-template-columns:repeat(4,1fr);gap:10px;width:100%;max-width:440px;display:grid}.pl-memory.n4{grid-template-columns:repeat(2,1fr);max-width:260px}.pl-memory.n6{grid-template-columns:repeat(3,1fr);max-width:360px}.pl-mem{aspect-ratio:3/4;cursor:pointer;perspective:600px;background:0 0;border:0;padding:0;position:relative}.pl-mem .back,.pl-mem .front{backface-visibility:hidden;box-shadow:0 5px 0 var(--line);border-radius:18px;place-items:center;transition:transform .35s;display:grid;position:absolute;inset:0}.pl-mem .back{background:linear-gradient(150deg,var(--k-orange),var(--k-yellow));color:#fff;font:700 2rem var(--font-head);border:3px solid var(--k-orange-d)}.pl-mem .front{background:var(--panel);border:3px solid var(--line);font-size:2.6rem;transform:rotateY(180deg)}.pl-mem.up .back{transform:rotateY(180deg)}.pl-mem.up .front{transform:rotateY(0)}.pl-mem.got .front{border-color:var(--k-green);background:var(--ok-bg);box-shadow:0 5px 0 var(--k-green)}.pl-fill{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;width:100%;max-width:560px;display:flex}.pl-source{border:3px solid var(--k-orange);background:var(--panel);cursor:pointer;width:104px;height:104px;box-shadow:0 6px 0 var(--k-orange-d);border-radius:28px;font-size:3.2rem;position:relative}.pl-source:active{box-shadow:0 2px 0 var(--k-orange-d);transform:translateY(4px)}.pl-source .plus{background:var(--k-orange);color:#fff;width:34px;height:34px;font:700 1.5rem/34px var(--font-head);border-radius:50%;position:absolute;top:-8px;right:-8px}.pl-basket-box{border:3px dashed var(--k-orange);background:var(--chip);border-radius:26px;flex:1;min-width:200px;min-height:150px;padding:12px 12px 30px;position:relative}.pl-basket-box.done{border-style:solid;border-color:var(--k-green);background:var(--ok-bg)}.pl-basket-box .in{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.pl-in{cursor:pointer;background:0 0;border:0;padding:0;font-size:2rem;animation:.3s both pl-pop}.pl-basket-box .cnt,.pl-purse .cnt{font:700 1.4rem var(--font-head);color:var(--ink);position:absolute;bottom:6px;right:12px}.pl-check{background:var(--k-green);color:#fff;cursor:pointer;width:96px;height:72px;box-shadow:0 6px 0 var(--k-green-d);border:0;border-radius:24px;place-items:center;display:grid}.pl-check svg{width:40px;height:40px}.pl-check:disabled{opacity:.45;cursor:default}.pl-spell-pic{font-size:4.6rem;line-height:1}.pl-slots,.pl-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.pl-slots span{border-bottom:5px solid var(--line);width:54px;height:62px;font:700 2.4rem/1 var(--font-head);color:var(--ink);place-items:end center;padding-bottom:4px;display:grid}.pl-slots span.now{border-color:var(--k-orange)}.pl-slots span.on{border-color:var(--k-green);animation:.3s both pl-pop}.pl-letters,.pl-tiles{flex-wrap:wrap;justify-content:center;gap:10px;max-width:520px;display:flex}.pl-letter,.pl-tile2{border:3px solid var(--line);background:var(--panel);min-width:68px;height:72px;color:var(--ink);font:700 2.2rem var(--font-head);cursor:pointer;box-shadow:0 5px 0 var(--line);border-radius:20px;place-items:center;padding:0 12px;display:grid}.pl-tile2{font-size:2rem}.pl-letter.used,.pl-tile2.used{visibility:hidden}.pl-letter.hintme,.pl-tile2.hintme{border-color:var(--k-yellow);box-shadow:0 0 0 4px var(--k-yellow)}.pl-row span{border:3px dashed var(--line);min-width:62px;height:66px;font:700 2rem var(--font-head);border-radius:18px;place-items:center;padding:0 8px;display:grid}.pl-row span.on{border-style:solid;border-color:var(--k-green);background:var(--ok-bg);animation:.3s both pl-pop}.pl-price{font:600 1.3rem var(--font-head);color:var(--ink-soft)}.pl-price b{color:var(--ink);font-size:2.4rem}.pl-purse{border:3px dashed var(--k-orange);background:var(--chip);border-radius:26px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:100%;max-width:520px;min-height:110px;padding:12px 12px 30px;display:flex;position:relative}.pl-purse.done{border-style:solid;border-color:var(--k-green);background:var(--ok-bg)}.pl-purse .empty{color:var(--ink-soft);font:600 1rem var(--font-head)}.pl-coins{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.pl-coin{color:#5a3e00;width:58px;height:58px;font:700 .95rem var(--font-head);cursor:pointer;background:radial-gradient(circle at 35% 30%,#fff4c2,#e9c25a 60%,#c9971f);border:3px solid #b8860b;border-radius:50%;padding:0;box-shadow:0 4px #9c7414}.pl-coin.c5,.pl-coin.c10,.pl-coin.c20,.pl-coin.c50{color:#2b3445;background:radial-gradient(circle at 35% 30%,#fff,#d8dde6 60%,#aeb6c4);border-color:#8c96a6;box-shadow:0 4px #7d8696}.pl-coin.c50{border-radius:14px}.pl-coin.big{width:72px;height:72px;font-size:1.1rem}.pl-coin.c5.big{width:58px;height:58px}.pl-coin.c200.big{width:66px;height:66px}.pl-trace{flex-direction:column;align-items:center;gap:10px;display:flex}.pl-trace canvas{background:var(--panel);border:3px solid var(--line);touch-action:none;border-radius:28px;max-width:100%}.pl-trace-bar{background:var(--chip);border-radius:999px;width:220px;height:12px;overflow:hidden}.pl-trace-bar i{background:var(--k-green);height:100%;transition:width .2s;display:block}.pl-again{border:2px solid var(--line);background:var(--panel);color:var(--ink);font:700 1rem var(--font-head);cursor:pointer;border-radius:999px;padding:10px 20px}@media (prefers-reduced-motion:reduce){.pl-mem .back,.pl-mem .front{transition:none}}.pl-trace+.pl-again,.pl-again{white-space:nowrap;border-radius:999px;flex:none;width:auto;min-width:170px;height:48px}.pl-subjects{scrollbar-width:none;gap:8px;margin:4px 0 10px;padding:2px 2px 6px;display:flex;overflow-x:auto}.pl-subjects::-webkit-scrollbar{display:none}.pl-subj{border:2px solid var(--line);background:var(--panel);min-height:44px;color:var(--ink);font:700 1rem var(--font-head);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.pl-subj .pic{width:1.3em;height:1.3em}.pl-subj.on{background:var(--btn);border-color:var(--btn-edge);color:var(--btn-ink);box-shadow:var(--press)}.pl-subj.new:not(.on){border-color:var(--k-orange);color:var(--k-orange-d)}.pl-tile{position:relative}.pl-new{background:var(--margin);color:#fff;font:700 .72rem var(--font-head);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 8px;position:absolute;top:8px;left:8px;box-shadow:0 2px #00000026}.mini-tiles{grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0;display:grid}.mini-tile{border-radius:var(--radius);background:var(--panel);border:2px solid var(--line);min-height:92px;color:var(--ink);text-align:center;box-shadow:var(--press);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px 6px;text-decoration:none;display:flex}.mini-tile .pic{width:2.2rem;height:2.2rem}.mini-tile b{font:700 .95rem/1.15 var(--font-head)}.surprise{border-radius:var(--radius);border:3px solid var(--k-orange);width:100%;color:var(--ink);cursor:pointer;text-align:left;box-shadow:0 5px 0 var(--k-orange-d);background:linear-gradient(120deg,#fff1e3,#ffe3c4);align-items:center;gap:14px;margin:10px 0;padding:12px 16px;display:flex}.surprise .sp-box,.surprise .sp-prize{flex:none;place-items:center;width:64px;height:64px;font-size:2.6rem;display:grid}.surprise .sp-box .pic,.surprise .sp-prize .pic{width:3.2rem;height:3.2rem}.surprise.box .sp-box{animation:1.6s ease-in-out infinite sp-wiggle}.surprise.opening .sp-box{animation:.3s linear infinite sp-shake}.surprise.open{border-color:var(--k-green);background:var(--ok-bg);box-shadow:0 5px 0 var(--k-green-d)}.surprise.open .sp-prize{animation:.5s both pl-pop}.surprise .sp-t{flex-direction:column;display:flex}.surprise b{font:700 1.15rem var(--font-head)}.surprise small{color:var(--ink-soft);font-size:.9rem}@keyframes sp-wiggle{0%,80%,to{transform:rotate(0)}85%{transform:rotate(-10deg)}90%{transform:rotate(10deg)}95%{transform:rotate(-6deg)}}@keyframes sp-shake{0%{transform:translate(-3px)rotate(-6deg)}50%{transform:translate(3px)rotate(6deg)}to{transform:translate(-3px)rotate(-6deg)}}.kmap-count{font:700 1rem var(--font-head);background:var(--chip);border-radius:999px;margin-left:auto;padding:6px 12px}.kmap-path{margin:8px 0 30px;position:relative}.kmap-road{color:#f3d8b6;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.kstone{cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;width:120px;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.kst-ico{background:var(--panel);border:4px solid var(--line);border-radius:50%;place-items:center;width:74px;height:74px;display:grid;box-shadow:0 5px #0000001f}.kst-ico .pic{width:2.4rem;height:2.4rem}.kstone.s-maths .kst-ico{border-color:var(--k-blue)}.kstone.s-english .kst-ico{border-color:var(--k-orange)}.kstone.s-science .kst-ico{border-color:var(--k-green)}.kstone.done .kst-ico{background:var(--ok-bg)}.kstone.next .kst-ico{box-shadow:0 0 0 6px var(--k-yellow),0 5px 0 #0000001f;animation:1.6s ease-in-out infinite kst-pulse;transform:scale(1.12)}@keyframes kst-pulse{50%{box-shadow:0 0 0 11px #ffc93c73,0 5px #0000001f}}.kst-name{font:700 .82rem/1.15 var(--font-head);color:var(--ink);background:#ffffffd9;border-radius:10px;max-width:120px;margin-top:6px;padding:2px 6px}.kst-stars{letter-spacing:-1px;font-size:.95rem;position:absolute;top:-12px}.kst-stars i{color:#d8d2c6;font-style:normal}.kst-stars i.on{color:#ffc21a;text-shadow:0 1px #e09a00}.kstone .pl-new{top:-6px;left:auto;right:4px}.kst-bud{animation:1.4s ease-in-out infinite bud-bob;position:absolute;top:2px;left:-46px}@keyframes bud-bob{50%{transform:translateY(-6px)}}.kmap-flag{position:absolute;left:50%;transform:translate(-50%)}.kmap-flag .pic{width:2.6rem;height:2.6rem}.kh-stars{font:700 1.15rem var(--font-head);background:var(--chip);border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:6px 12px;display:inline-flex}.kh-stars .pic{width:1.2em;height:1.2em}.kh-room{aspect-ratio:4/3;border:3px solid var(--line);border-radius:26px;width:100%;max-width:520px;margin:6px auto 10px;position:relative;overflow:hidden}.kh-wall{background:repeating-linear-gradient(90deg,#ffe9d6 0 26px,#ffe1c9 26px 52px);position:absolute;inset:0 0 34%}.kh-floor{background:repeating-linear-gradient(90deg,#d9a36e 0 40px,#cf9862 40px 80px);border-top:6px solid #b97f48;position:absolute;inset:66% 0 0}.kh-window{background:linear-gradient(#9fd8ff,#d9f1ff);border:6px solid #fff;border-radius:10px;grid-template-columns:1fr 1fr;width:24%;height:30%;display:grid;position:absolute;top:10%;left:58%;box-shadow:0 3px #00000014}.kh-window span{border-right:4px solid #fff}.kh-thing{cursor:pointer;aspect-ratio:1;background:0 0;border:0;padding:0;animation:.4s both pl-pop;position:absolute;transform:translate(-50%,-50%)}.kh-thing .pic{width:100%;height:100%}.kh-bud{position:absolute;bottom:4%;left:50%;transform:translate(-50%)}.kh-next{text-align:center;font:600 1rem var(--font-head);margin:4px 0 10px}.kh-shelf{grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:10px;display:grid}.kh-item{border:3px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;box-shadow:0 4px 0 var(--line);border-radius:18px;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;display:flex}.kh-item>.pic{width:2.4rem;height:2.4rem}.kh-item small{font:700 .78rem var(--font-head);align-items:center;gap:2px;display:inline-flex}.kh-item small .pic{width:1em;height:1em}.kh-item.in{border-color:var(--k-green);background:var(--ok-bg);box-shadow:0 4px 0 var(--k-green)}.kh-item.locked>.pic{filter:grayscale();opacity:.45}.kh-item.locked{background:var(--chip)}.kf-intro{font:600 1.05rem var(--font-head);align-items:center;gap:10px;margin:4px 0 14px;display:flex}.kf-games{gap:12px;display:grid}.kf-card{text-align:left;border-radius:var(--radius);color:#fff;cursor:pointer;border:0;grid-template-rows:auto auto;grid-template-columns:64px 1fr;align-items:center;column-gap:14px;padding:16px;display:grid;box-shadow:0 6px #0000002e}.kf-card .pic{grid-row:1/3;width:56px;height:56px}.kf-card b{font:700 1.35rem var(--font-head)}.kf-card small{font:600 .95rem var(--font-head);opacity:.92}.kf-card.g-balloons{background:var(--k-orange)}.kf-card.g-sums{background:var(--k-blue)}.kf-card.g-letters{background:var(--k-green)}.kf-stage{flex-direction:column;align-items:center;gap:16px;display:flex}.kf-ask{align-items:center;gap:10px;width:100%;display:flex}.kf-show{font:700 3.4rem var(--font-head);color:var(--ink)}.kf-show.letter{font-size:5rem}.kf-opts{grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:440px;display:grid}.kf-opt{border:3px solid var(--line);background:var(--panel);min-height:84px;color:var(--ink);font:700 2.2rem var(--font-head);cursor:pointer;box-shadow:0 5px 0 var(--line);border-radius:22px}.kf-opt.good{border-color:var(--k-green);background:var(--ok-bg);box-shadow:0 5px 0 var(--k-green)}.kf-opt.bad{opacity:.5}.kf-opts.balloons{grid-template-columns:repeat(3,1fr);gap:14px 10px;max-width:420px}.kf-opt.balloon{aspect-ratio:4/5;color:#fff;border:0;border-radius:50% 50% 46% 46%;min-height:0;font-size:1.9rem;animation:2.4s ease-in-out infinite balloon-float;position:relative;box-shadow:inset -8px -10px #0000001f}.kf-opt.balloon:after{content:"";background:#00000040;width:2px;height:18px;position:absolute;bottom:-18px;left:50%}.kf-opt.balloon.b0{background:#ff5a5f}.kf-opt.balloon.b1{background:#4f7cf5}.kf-opt.balloon.b2{background:#2fb67c}.kf-opt.balloon.b3{background:#ffb020}.kf-opt.balloon.b4{background:#b15cf2}.kf-opt.balloon.good{animation:.45s forwards balloon-pop}@keyframes balloon-float{50%{transform:translateY(-8px)}}@keyframes balloon-pop{40%{transform:scale(1.25)}to{opacity:0;transform:scale(0)}}.kf-end{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.kf-end .cta,.kf-end .pill-btn{width:100%;max-width:340px}@media (prefers-reduced-motion:reduce){.surprise .sp-box,.kstone.next .kst-ico,.kst-bud,.kf-opt.balloon{animation:none}}.kf-stage .stage-top{align-self:stretch}.kf-opts.balloons{max-width:360px}.kf-opt.balloon{font-size:1.6rem}.kstone.bud-right .kst-bud{left:auto;right:-50px}.kh-thing{z-index:1}.kh-bud{z-index:2}.kst-bud{top:-14px;left:-62px}.kstone.bud-right .kst-bud{right:-62px}.clockface{filter:drop-shadow(0 6px #00000014);max-width:70vw;height:auto}.pl-clock-ctl{grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:420px;display:grid}.pl-clock-ctl>div{background:var(--chip);border-radius:20px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:10px;display:flex}.pl-clock-ctl .lbl{text-align:center;width:100%;font:700 .95rem var(--font-head)}.pl-clock-ctl .lbl.short{color:var(--k-orange-d)}.pl-clock-ctl .lbl.long{color:var(--k-blue)}.pl-arrow{border:3px solid var(--line);background:var(--panel);width:56px;height:56px;color:var(--ink);cursor:pointer;box-shadow:0 4px 0 var(--line);border-radius:16px;place-items:center;display:grid}.pl-arrow svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.pl-sentence{flex-wrap:wrap;justify-content:center;gap:8px;max-width:520px;min-height:56px;display:flex}.pl-sentence span{border-bottom:4px solid var(--line);min-width:56px;height:52px;font:700 1.5rem var(--font-head);color:var(--ink);place-items:center;padding:0 10px;display:grid}.pl-sentence span.now{border-color:var(--k-orange)}.pl-sentence span.on{border-color:var(--k-green);animation:.3s both pl-pop}.pl-tile2.word{min-width:0;font-size:1.5rem}.pl-odd{grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:380px;display:grid}.pl-odd .pl-opt.card .e{font-size:3.4rem}.pl-why{font:600 1.1rem var(--font-head);color:var(--ink);text-align:center;max-width:420px;margin:0}.kf-card.g-clock{background:var(--k-purple,#8a5cf6)}.kf-card.g-bee{background:#b7791f}.kf-clock{justify-content:center;display:flex}.kf-pic .pic{width:96px;height:96px}.kf-show.bee{letter-spacing:0;gap:6px;font-size:3rem;display:flex}.kf-show.bee span{text-align:center;min-width:.75em}.kf-show.bee .gap{border-bottom:5px solid var(--k-orange);min-width:1em;color:var(--k-green)}.kf-show.bee .gap.got{animation:.35s pl-pop}.kf-opts.words .kf-opt{min-height:72px;padding:6px;font-size:1.3rem}@media (max-width:760px){.wrap.focus .ls-foot{padding-bottom:calc(6px + env(safe-area-inset-bottom,0px));bottom:0}}.ls-foot{background:linear-gradient(transparent,var(--paper) 14px);padding-top:18px}.ls-foot .ls-btn:disabled{opacity:1;background:var(--line);color:var(--ink-soft);box-shadow:none}.ls-foot:has(.rp-box){background:0 0;position:static}.ls-foot:has(.rp-box)>.ls-btn{display:none}.stage-actions.sticky .cta:disabled,.ls-foot .ls-btn:disabled,.buddy-keep .big-btn:disabled{opacity:1;background:var(--line);background:color-mix(in srgb,var(--btn) 42%,var(--paper));color:var(--btn-ink);box-shadow:none}.page-head{flex-wrap:wrap;row-gap:8px}.page-head h1{flex:150px}.surprise:not(.open){color:#2a1e4a}.surprise:not(.open) small{color:#6b5f86}.kst-name{color:#2a1e4a}@media (max-width:400px){.home-top .streak-chip .sk-txt{display:none}.home-top .streak-chip{padding:0 10px}}@media (max-width:760px){.wrap.has-tabs .buddy-keep{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px))}.wrap.focus .stage-actions.sticky,.wrap.focus .buddy-keep{padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));bottom:0}}.yr-pill{white-space:nowrap}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hp-feedback.ok{color:#b9f0cd;background:linear-gradient(135deg,#123522,#0f2b1c);box-shadow:0 4px #0a1f14}:root:not([data-theme=light]) .hp-feedback.no{color:#fbdda5;background:linear-gradient(135deg,#3a2a0e,#2e2109);box-shadow:0 4px #1e1606}:root:not([data-theme=light]) .hp-feedback .fb-ans{background:#00000040}:root:not([data-theme=light]) .hp-feedback .fb-ans b{color:#fbc56b}:root:not([data-theme=light]) .hp-feedback.try{color:#c7ccff;background:linear-gradient(135deg,#232554,#1c1e45);box-shadow:0 4px #121331}:root:not([data-theme=light]) .star{color:#4a4760}:root:not([data-theme=light]) .ab button:not(.link):not(.chip):hover:not(:disabled){color:#a5a0ff;background:#23214a;border-color:#a5a0ff}:root:not([data-theme=light]) .ab button.danger:not(.link):hover:not(:disabled){background:#3a1818}}.kh-bud{pointer-events:none}.acct-row>span.wrap{white-space:normal}.rv-text .rv-p{margin:0 0 6px}.rv-text .rv-p p{margin:0}.rv-text .rv-p.ans{color:#15803d;font-weight:600}.stage-top .dots{padding:4px 5px}[data-theme=dark] .yp-high{--yp-c:#a5a0ff}[data-theme=dark] .yp-sen{--yp-c:#c4a5ff}[data-theme=dark] .yp-prim{--yp-c:#4ade80}[data-theme=dark] .yp-kids{--yp-c:#fb923c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .yp-high{--yp-c:#a5a0ff}:root:not([data-theme=light]) .yp-sen{--yp-c:#c4a5ff}:root:not([data-theme=light]) .yp-prim{--yp-c:#4ade80}:root:not([data-theme=light]) .yp-kids{--yp-c:#fb923c}}.big-tile b,.big-tile small,.kf-card b,.kf-card small{text-shadow:0 1px 2px #00000047}.in-app .lp-back,.in-app .lp-kick,.in-app .lp-doc a,.in-app .lp-hero a{color:var(--lpacc,#4f46e5)}.in-app .lp h3{color:var(--lptx,inherit)}[data-theme=dark] .secondary.danger{color:#f87171;border-color:#f87171}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .secondary.danger{color:#f87171;border-color:#f87171}}[data-theme=dark] .pts-streak.on{color:#fb923c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .pts-streak.on{color:#fb923c}}.contents{background-image:none;padding:4px 0}.contents li+li{border-top:1px solid var(--line)}.contents .cl{border-radius:0;align-items:center;gap:12px;height:auto;min-height:60px;padding:10px 14px}.contents li:first-child .cl{border-radius:14px 14px 0 0}.contents li:last-child .cl{border-radius:0 0 14px 14px}.cl .ch{background:var(--chip);width:26px;height:26px;color:var(--ink-soft);font:600 .8rem var(--font-head);border-radius:50%;place-items:center;display:grid}.cl .cb{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.cl .ct{white-space:normal;max-width:none;font-weight:600;line-height:1.3;overflow:visible}.cl .cs{color:var(--ink-soft);font-size:.8rem}.cl .cbar{background:var(--line);border-radius:3px;max-width:220px;height:5px;margin-top:3px;display:block;overflow:hidden}.cl .cbar i{background:var(--accent);border-radius:3px;height:100%;display:block}.cl .cgo{font:700 .78rem var(--font-head);color:var(--accent-ink);background:var(--accent);border-radius:999px;flex:none;padding:4px 10px}.cl .cchev{fill:none;width:18px;height:18px;stroke:var(--ink-soft);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;flex:none}.cl.dn .ct{color:var(--ink);text-decoration:none}.cl.dn .cs{color:var(--ok-ink)}.cl.dn .ch{background:var(--ok-bg);color:var(--ok-ink)}.cl.now .ct{color:var(--ink)}.cl.now .cs{color:var(--accent-text);font-weight:600}.cl.cur{box-shadow:inset 4px 0 0 var(--accent)}.cl.cur .ch{background:var(--accent);color:var(--accent-ink)}.vp-title-t{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.vp-vis,.vp-vis .viz{--ink:#121826;--ink-soft:#5f6b7f;--panel:#fff;--paper:#f6f7fb;--line:#e4e7ee;--chip:#f0f2f8;color:#121826;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.tq-topics{scrollbar-width:none;gap:6px;margin:0 0 4px;padding:2px 2px 8px;display:flex;overflow-x:auto}.tq-topics::-webkit-scrollbar{display:none}.tq-topics button{border:1px solid var(--line);background:var(--chip);max-width:240px;color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:36px;padding:6px 12px;font-size:.85rem;display:inline-flex}.tq-topics button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tq-topics button small{opacity:.8;font-variant-numeric:tabular-nums;flex:none;font-size:.75rem}.tq-topics button[aria-pressed=true]{background:var(--btn);color:var(--btn-ink);border-color:var(--btn)}.res-topics{flex-wrap:wrap;overflow:visible}.res-topics button{max-width:100%}.by-topic .bt-sub{color:var(--ink-soft);flex-direction:column;gap:4px;margin:6px 0 10px;font-size:.85rem;display:flex}.by-topic .bt-sub select{max-width:100%}.by-topic .bt-sum{margin:2px 0 8px}.by-topic .bt-when{margin-bottom:4px;font-size:.75rem}.as-conf{margin:4px 0 8px;font-size:.88rem;font-weight:700}.as-conf.ok{color:#15803d}.as-conf.no{color:#b45309}:root[data-theme=dark] .as-conf.ok{color:#4ade80}:root[data-theme=dark] .as-conf.no{color:#fbbf24}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .as-conf.ok{color:#4ade80}:root:not([data-theme=light]) .as-conf.no{color:#fbbf24}}.ov-heavy{border-left:4px solid #d97706}.ov-hv{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.ov-hv li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px 12px;padding:8px 0;display:flex}.ov-hv li b{overflow-wrap:anywhere}.ov-hv li small{color:var(--ink-soft);flex:200px}.ab-table .ab-dev{color:var(--ink-soft);white-space:nowrap;margin-top:2px;font-size:.78rem;display:block}.bp-screen{color:#1f2a6b;font-family:var(--font-body,Inter, system-ui, sans-serif);background:#fcfcfe}.bp-intro{text-align:center;color:#fff;background:linear-gradient(135deg,#4f46e5,#7c6cf0);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:20px;display:flex;position:absolute;inset:0}.bp-intro h1{font:800 clamp(1.4rem,3.4vw,2.6rem)/1.15 var(--font-head);margin:4px 0 0}.bp-scene{grid-template-columns:1.05fr 1fr;gap:3%;padding:clamp(34px,6%,56px) 3% clamp(46px,9%,74px);animation:.4s both vp-in;display:grid;position:absolute;inset:0}.bp-chip{font:700 clamp(.7rem,1.2vw,.9rem) var(--font-body,Inter);color:#4f46e5;z-index:2;background:#eef0ff;border-radius:999px;padding:4px 12px;position:absolute;top:clamp(8px,2.2%,16px);left:3%}.bp-art{color:#2b2f8f;justify-content:center;align-items:center;min-height:0;display:flex}.bp-art>*{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.bp-art svg{width:100%;height:100%;max-height:100%;overflow:visible}.bp-art svg:not(.vpic) text{font-family:Caveat,Comic Sans MS,Segoe Print,cursive;font-size:22px}.bp-art svg .vp-later{opacity:0}.bp-art svg [data-step]{transition:opacity .5s,filter .4s}.bp-art svg .bp-glow{filter:drop-shadow(0 0 5px #ffd84d)drop-shadow(0 0 2px #ffc93c)}.bp-art.empty .bp-mark{opacity:.12;width:30%}.bp-board{flex-direction:column;justify-content:flex-start;gap:clamp(4px,1.2%,12px);min-height:0;font-size:clamp(.85rem,1.9vw,1.45rem);line-height:1.35;display:flex;overflow:hidden}.bp-line{color:#1f2a6b;border-radius:6px;width:fit-content;max-width:100%;padding:1px 6px}.bp-line p{margin:0}.bp-line.now{animation:bp-write var(--write,1.1s) linear .3s both;background:linear-gradient(#0000 58%,#ffe66d 58%)}.bp-line.wrong{color:#d93b3f}.bp-line.struck{color:#9aa0ae;position:relative}.bp-line.struck:after{content:"";transform-origin:0;background:#e5484d;height:3px;animation:.6s ease-out both bp-strike;position:absolute;top:52%;left:0;right:0}.bp-line.right{color:#1d8a4a}@keyframes bp-write{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes bp-strike{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.bp-pen{pointer-events:none;opacity:0;z-index:3;background:#ffbe1ee6;border-radius:50%;width:16px;height:16px;transition:left .6s,top .6s,opacity .3s;position:absolute;box-shadow:0 0 0 6px #ffc82840}.bp-host{aspect-ratio:1;z-index:2;background:#eef0ff;border:3px solid #fff;border-radius:50%;width:clamp(54px,9%,110px);position:absolute;bottom:clamp(40px,9%,70px);right:2%;overflow:hidden;box-shadow:0 4px 14px #14183c33}.bp-host .vp-teacher-img{object-fit:cover;object-position:50% 8%;width:100%;height:100%}.bp-host.talk .vp-teacher-img{transform-origin:50% 100%;animation:2.4s ease-in-out infinite vp-sway}.bp-sub{z-index:4}.bp-over{z-index:6;color:#121826;text-align:center;background:#fcfcfef7;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:4%;animation:.3s both vp-in;display:flex;position:absolute;inset:0;overflow:auto}.bp-over h2{font:800 clamp(1.6rem,4vw,2.8rem) var(--font-head);color:#4f46e5;margin:0}.bp-over .vp-kicker{color:#4f46e5;opacity:1}.bp-over .vp-ghost{color:#4f46e5;border-color:#c9ccf6}.bp-choice{flex-direction:column;align-items:center;gap:10px;width:min(640px,100%);display:flex}.bp-q{font-size:clamp(1rem,2.2vw,1.4rem);font-weight:700}.bp-q p{margin:0}.bp-opts{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.bp-opts button{color:#121826;cursor:pointer;background:#fff;border:2px solid #e4e7ee;border-radius:14px;min-height:48px;padding:10px 12px;font-size:clamp(.9rem,1.8vw,1.1rem)}.bp-opts button p{margin:0}.bp-opts button:hover:not(:disabled){border-color:#4f46e5}.bp-opts button.right{background:#e8f7ee;border-color:#1d8a4a}.bp-opts button.wrong{background:#fdecec;border-color:#e5484d}.bp-opts button.dim{opacity:.55}.bp-why{color:#3b4255;max-width:560px;font-size:.95rem}.bp-why p{margin:0;display:inline}.bp-chapters{flex-wrap:wrap;gap:6px;padding:8px 0 2px;display:flex}:is(.vp-screen.bp-screen,.vp-wrap:has(.bp-screen) .vp-bar){width:min(100%,177.778vh - 444.444px,1280px)}.bp-chapters button{color:#ffffffbf;font:600 .8rem var(--font-body,Inter);cursor:pointer;background:0 0;border:1px solid #ffffff38;border-radius:999px;flex:none;padding:5px 12px}.bp-chapters button.done{color:#c9c5ff;border-color:#a5a0ff80}.bp-chapters button.now{color:#0b0a16;background:#fff;border-color:#fff}@media (max-width:760px),(max-aspect-ratio:1){.bp-screen{aspect-ratio:auto;height:calc(100vh - 230px);min-height:420px}.bp-scene{grid-template-rows:minmax(0,42%) minmax(0,1fr);grid-template-columns:1fr;gap:8px;padding:40px 14px 96px}.bp-board{scroll-behavior:smooth;font-size:1rem;overflow-y:auto}.bp-pen{display:none}.bp-opts{grid-template-columns:1fr}:is(.vp-screen.bp-screen,.vp-wrap:has(.bp-screen) .vp-bar){width:100%}.bp-chapters{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;padding-bottom:6px;overflow-x:auto}}@media (prefers-reduced-motion:reduce){.bp-line.now,.bp-line.struck:after{animation:none}.bp-art svg *{stroke-dashoffset:0!important;transition:none!important}}.bp-art .viz{background:0 0;border:0;justify-content:center;align-items:center;width:100%;height:100%;margin:0;padding:0;display:flex;overflow:visible}.bp-art .viz svg{color:#2b2f8f;width:100%;max-width:none;height:100%;max-height:100%}.bp-art .viz svg:not(.vpic) text{font-weight:700;font-family:Caveat,Segoe Print,Comic Sans MS,cursive!important}.bp-art .viz svg .g-tick,.bp-art .viz svg .g-lbl,.bp-art .viz svg .g-title{font-weight:400;font-family:var(--font-body)!important}.bp-art .viz svg :is(path,line,circle,rect,polygon,polyline,ellipse):not(.g-grid):not(.g-axis):not([class^=g-legend]){stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.vp-wrap:has(.bp-screen){overflow-y:auto}.in-app .practice-link{display:none!important}.topnav .navlinks{flex-wrap:nowrap}.navlinks .practice-link{white-space:nowrap}@media (max-width:1100px){.navlinks .practice-link{display:none}}.kq-keys.wide{grid-template-columns:repeat(4,1fr)}.kq-keys.wide .kq-key.go{grid-column:span 2}.topnav{gap:14px}.navlinks a{padding:7px 9px}.topnav.is-admin .acct-link em{display:none}@media (max-width:1100px){.topnav .acct-link em{display:none}}@media (max-width:920px){.topnav .theme-btn{display:none}}.kid-steps{background:var(--accent-soft);border-radius:14px;margin:6px 0 12px;padding:12px 16px}.kid-steps ol{gap:6px;margin:8px 0 6px 20px;padding:0;display:grid}.kid-steps li.done{color:var(--ink-soft);text-decoration:line-through}.db{margin-bottom:16px}.db-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.db-head h3{margin:0}.db-head h3 small{font:500 .85rem var(--font-body);color:var(--ink-soft);margin-top:4px;display:block}.db-range{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.db-range .chip{min-height:36px;padding:6px 12px;font-size:.88rem}.db-custom{align-items:center;gap:6px;display:inline-flex}.db-custom input{border:1.5px solid var(--line);background:var(--panel);min-height:36px;color:var(--ink);border-radius:10px;padding:4px 8px}.db-cards{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:14px 0;display:grid}.db-card{border:1px solid var(--line);background:var(--panel);border-radius:14px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.db-card span{color:var(--ink-soft);font-size:.85rem;font-weight:600}.db-card b{font:700 1.6rem var(--font-head)}.db-card small{color:var(--ink-soft);font-size:.8rem}.db-tr{font-weight:700}.db-tr.up{color:var(--ok-ink)}.db-tr.down{color:var(--no-ink)}.db-box{border:1px solid var(--line);background:var(--panel);border-radius:14px;min-width:0;margin-top:12px;padding:14px;overflow-x:auto}.db-box h4{margin:0}.db-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.db-tabs{flex-wrap:wrap;gap:4px;display:flex}.db-tabs button{background:var(--chip);color:var(--ink-soft);font:600 .82rem var(--font-body);cursor:pointer;border:0;border-radius:999px;padding:6px 10px}.db-tabs button.on{background:var(--accent-soft);color:var(--accent-text)}.db-chart svg{width:100%;height:auto;display:block}.db-grid{stroke:var(--line);stroke-width:1px}.db-ax{fill:var(--ink-soft);font-size:11px}.db-bar{fill:var(--accent);opacity:.85}.db-bar.on{opacity:1;fill:var(--accent-text)}.db-prev{fill:none;stroke:var(--ink-soft);stroke-width:2px;stroke-dasharray:5 4}.db-tip{min-height:1.4em;margin:6px 0 0;font-size:.9rem}.db-dl{font-size:.85rem}.db-grid2{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:900px){.db-grid2{grid-template-columns:1fr}}.db-funnel{gap:8px;margin:0;padding:0;list-style:none;display:grid}.db-funnel li{grid-template-columns:150px 1fr 48px;align-items:center;gap:8px;font-size:.9rem;display:grid}.db-funnel li i{background:var(--accent);border-radius:6px;height:10px;display:block}.db-funnel li b{text-align:right}.db-funnel li small{color:var(--ink-soft);grid-column:2/4;margin-top:-4px;font-size:.8rem}.db-funnel li small.bad{color:var(--no-ink)}.db-coh td{text-align:center}.lib-big{flex-wrap:wrap;align-items:baseline;gap:10px;margin:6px 0;display:flex}.lib-big b{font:700 2rem var(--font-head)}.lib-bar{background:var(--chip);border-radius:8px;height:12px;margin:6px 0 12px;overflow:hidden}.lib-bar i{background:var(--accent);height:100%;display:block}.lib-checks{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.lib-checks li{border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.lib-checks li .ic{font-size:1.1rem;line-height:1.3}.lib-checks li.warn{border-color:var(--no-ink)}.lib-adv{margin-top:14px}.lib-adv summary{cursor:pointer;color:var(--ink-soft);font-weight:600}.lib-sum{border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:14px 16px}.lib-sum.warn{border-color:var(--no-ink)}.lib-sum p{margin:0 0 8px;line-height:1.5}.lib-sum .lib-ok{font:700 1.15rem var(--font-head)}.race .race-pick{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:12px 0;display:grid}.race .race-pick button{text-align:left;background:var(--panel);color:var(--ink);border:2px solid var(--line);border-radius:var(--radius);cursor:pointer;font:inherit;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;display:flex}.race .race-pick button.on{border-color:var(--accent);background:var(--accent-soft)}.race .race-pick .e{font-size:1.5rem;line-height:1}.race .race-pick b{font-family:var(--font-head);font-size:1.05rem}.race .race-pick small{color:var(--ink-soft);font-size:.82rem}.race .race-ghost{background:var(--chip);border-radius:var(--radius);align-items:center;gap:10px;margin:6px 0 14px;padding:10px 14px;display:flex}.race .race-ghost p{margin:0}.race .race-count{font:800 7rem/1 var(--font-head);text-align:center;color:var(--accent-text);padding:60px 0}.race .race-track{gap:8px;margin:10px 0 14px;display:grid}.race .lane{grid-template-columns:96px 1fr 36px;align-items:center;gap:8px;font-size:.88rem;display:grid;position:relative}.race .lane .lbl{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft);font-weight:700;overflow:hidden}.race .lane i{background:var(--accent);border-radius:7px;min-width:4px;height:14px;transition:width .25s linear;display:block}.race .lane.ghost i{background:var(--ink-soft);opacity:.45}.race .lane b{text-align:right;font-variant-numeric:tabular-nums}.race .race-clock{font:800 1.2rem var(--font-head);font-variant-numeric:tabular-nums;justify-content:space-between;display:flex}.race .race-q{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);font:800 2.6rem/1.1 var(--font-head);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:14px;margin:10px 0 14px;padding:24px 12px;display:flex}.race .race-q .ans{min-width:2.2ch;color:var(--accent-text);border-bottom:3px solid var(--line);text-align:center}.race .race-q.ok{border-color:var(--ok-ink);background:var(--ok-bg)}.race .race-q.no{border-color:var(--no-ink);background:var(--no-bg);animation:.3s race-shake}.race .race-q.no .ans{color:var(--no-ink)}@keyframes race-shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.race .race-pad{grid-template-columns:repeat(3,1fr);gap:10px;max-width:360px;margin:0 auto;display:grid}.race .race-pad button{border-radius:var(--radius);border:2px solid var(--line);background:var(--panel);height:62px;color:var(--ink);font:800 1.6rem var(--font-head);cursor:pointer;box-shadow:var(--press);touch-action:manipulation}.race .race-pad button:active{transform:translateY(2px)}.race .race-done{text-align:center;justify-items:center;gap:6px;display:grid}.race .race-done h2{font:800 2rem var(--font-head);margin:4px 0}.race .race-done p{margin:0}.race .race-board{text-align:left;width:100%;margin-top:18px}.race .race-board h2{margin:0 0 8px;font-size:1rem}.race .race-board ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.race .race-board li{background:var(--panel);border:1.5px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:8px 12px;display:grid}.race .race-board li.me{border-color:var(--accent);background:var(--accent-soft)}.race .race-board .n{color:var(--accent-text);font-weight:800}.race .race-board small{color:var(--ink-soft)}.race .hint.small{font-size:.8rem}.ws{max-width:820px;margin:0 auto;padding:16px}.ws .ws-bar{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.ws .ws-sheet{color:#111;background:#fff;border:1px solid #ddd;border-radius:8px;margin-bottom:18px;padding:28px 32px;font-size:11pt;line-height:1.45}.ws .ws-head{border-bottom:2px solid #111;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;padding-bottom:8px;display:flex}.ws .ws-head small{color:#555;font-size:9pt}.ws .ws-head h1{color:#111;margin:2px 0 0;font-size:18pt}.ws .ws-name{flex-direction:column;gap:6px;font-size:10pt;display:flex}.ws .ws-qs{margin:0;padding-left:22px}.ws .ws-q{break-inside:avoid;margin:0 0 14px}.ws .ws-q .q p{margin:0 0 6px}.ws .ws-opts{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 16px;margin:4px 0 0;padding:0;list-style:none;display:grid}.ws .ws-opts li{align-items:flex-start;gap:8px;display:flex}.ws .ws-opts li p{margin:0}.ws .ws-bubble{border:1.5px solid #333;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:8.5pt;font-weight:700;display:inline-grid}.ws .ws-line{margin-top:8px}.ws .ws-lines i{border-bottom:1px solid #999;height:26px;display:block}.ws .ws-match{grid-template-columns:1fr 1fr;gap:4px 24px;display:grid}.ws .ws-match ol{margin:0;padding-left:22px}.ws .ws-match ol li p,.ws .ws-order p{margin:0}.ws .ws-order div{align-items:center;gap:8px;margin:4px 0;display:flex}.ws .ws-box{border:1.5px solid #333;border-radius:4px;flex:none;width:22px;height:22px}.ws .ws-note{color:#555;grid-column:1/-1;margin:4px 0 0;font-size:9pt}.ws .ws-foot{color:#666;text-align:center;border-top:1px solid #ccc;margin-top:10px;padding-top:6px;font-size:8.5pt}.ws .ws-ans{margin:0;padding-left:22px}.ws .ws-ans li{margin:0 0 8px}.ws .ws-ans p{margin:0}.ws .ws-ans .why{color:#444;font-size:9.5pt}@media print{@page{size:A4;margin:14mm}body{background:#fff!important}.ws{max-width:none;padding:0}.ws .ws-bar,.ws .err,.ws .hint{display:none!important}.ws .ws-sheet{border:0;border-radius:0;margin:0;padding:0}.ws .ws-answers{break-before:page}}.ws .ws-head .logo{color:#121826;align-items:center;gap:8px;margin-bottom:6px;font-size:16pt;display:inline-flex}.ws .ws-head .logo-word b{color:#4f46e5}.ws .ws-kind{display:block}.ws{-webkit-print-color-adjust:exact;print-color-adjust:exact}.tcheck-extra{flex-wrap:wrap;gap:8px;margin:12px 0 4px;display:flex}.tcheck-extra a{align-items:center;height:44px;font-size:.92rem;text-decoration:none;display:inline-flex}.qquiz .qq-level{background:var(--chip);color:var(--ink-soft);border-radius:999px;margin:6px 0 10px;padding:4px 12px;font-size:.85rem;font-weight:800;display:inline-block}.qquiz .qq-level.harder{background:var(--no-bg);color:var(--no-ink)}.qquiz .qq-level.easier{background:var(--ok-bg);color:var(--ok-ink)}.qquiz .qq-next{border-radius:var(--radius);background:var(--accent-soft);gap:8px;margin:16px 0;padding:16px;display:grid}.qquiz .qq-next h2{margin:0;font-size:1.6rem}.qquiz .qq-next p{margin:0}.res-analysis{border-radius:var(--radius);background:var(--accent-soft);gap:6px;margin:14px 0;padding:14px 16px;display:grid}.res-analysis h3{margin:0 0 2px}.res-analysis p{margin:0}.res-analysis .res-tip{font-weight:700}.res-hist svg{width:100%;max-width:320px;height:auto;margin-top:4px;display:block}.res-hist rect{fill:var(--ink-soft);opacity:.45}.res-hist rect.me{fill:var(--accent);opacity:1}.res-hist text{fill:var(--ink-soft);font-size:10px}.homelang{margin-top:6px}.homelang-btn{padding:2px 0;font-size:.85rem}.homelang-text{border-radius:var(--radius-sm);background:var(--chip);margin-top:4px;padding:8px 12px;font-size:.95rem}.plan-page .plan-count{background:var(--accent-soft);border-radius:var(--radius);align-items:center;gap:14px;padding:16px 18px;display:flex}.plan-page .plan-count b{font:800 3.2rem/1 var(--font-head);color:var(--accent-text)}.plan-page .plan-count span{font:700 1.1rem/1.25 var(--font-head)}.plan-page .plan-phase{margin:4px 0 0;font-weight:700}.plan-page .plan-kinds button{text-align:center;justify-content:center;align-items:center;min-height:56px}.plan-page .plan-field{gap:4px;margin:12px 0;font-weight:700;display:grid}.plan-page .plan-field input{font:inherit;border:2px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);padding:10px 12px}.plan-page .today-steps .t small{font-weight:400}.plan-page .race-pick{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:12px 0;display:grid}.plan-page .race-pick button{background:var(--panel);color:var(--ink);border:2px solid var(--line);border-radius:var(--radius);cursor:pointer;font:inherit;padding:12px 14px;display:flex}.plan-page .race-pick button.on{border-color:var(--accent);background:var(--accent-soft)}.race .race-chal{background:var(--hi);color:var(--hi-ink);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:10px;margin:8px 0;padding:10px 14px;display:flex}.race .race-chal.on{outline:3px solid var(--accent)}.race .race-chal p{margin:0}.race .race-chal-send{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.race .race-chal-send .pill-btn{height:44px}.race .race-fammsg{font-weight:800}.race .race-board.fam li b{white-space:nowrap}.qquiz .qq-meter{gap:6px;margin:6px 0 12px;display:flex}.qquiz .qq-meter span{text-align:center;background:var(--chip);color:var(--ink-soft);border-radius:999px;flex:1;padding:6px 4px;font-size:.78rem;font-weight:800}.qquiz .qq-meter span.on{background:var(--accent);color:var(--accent-ink)}.qquiz .qq-q{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);padding:16px;font-size:1.15rem;font-weight:700}.qquiz .qq-q p{margin:0}.qquiz .qq-opts{gap:8px;margin:12px 0;display:grid}.qquiz .qq-opts button{text-align:left;font:inherit;border-radius:var(--radius-sm);border:2px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;padding:12px 14px;font-size:1.02rem}.qquiz .qq-opts button p{margin:0}.qquiz .qq-opts button.good{border-color:var(--ok-ink);background:var(--ok-bg)}.qquiz .qq-opts button.bad{border-color:var(--no-ink);background:var(--no-bg)}.qquiz .qq-opts button.dim{opacity:.55}.qquiz .qq-fb{border-radius:var(--radius);background:var(--chip);gap:8px;padding:12px 14px;display:grid}.qquiz .qq-fb.ok{background:var(--ok-bg)}.qquiz .qq-fb.no{background:var(--no-bg)}.qquiz .qq-fb p{margin:0}.qquiz .qq-result{font-size:1.15rem;font-weight:800}.qquiz .qq-result.above{color:var(--ok-ink)}.qquiz .qq-result.below{color:var(--no-ink)}.qquiz .qq-review{gap:10px;margin:8px 0 0;padding-left:20px;display:grid}.qquiz .qq-review p{margin:4px 0}.skills .sk-legend{flex-wrap:wrap;gap:6px;margin:6px 0 10px;display:flex}.skills .sk-subj{margin:14px 0 6px;font-size:1.05rem}.skills .sk-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.skills .sk{color:var(--ink);border-radius:var(--radius-sm);border:2px solid var(--line);background:var(--panel);min-width:0;padding:10px 12px;text-decoration:none;display:block}.skills .sk b{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;display:block;overflow:hidden}.skills .sk small{color:var(--ink-soft);font-size:.8rem}.skills .sk.strong,.skills .chip.strong{background:var(--ok-bg);border-color:#2e9e5b}.skills .sk.ok,.skills .chip.ok{background:#fff6d6;border-color:#d9a400}.skills .sk.gap,.skills .chip.gap{border-color:var(--no-ink);background:var(--no-bg)}.skills .sk.stale,.skills .chip.stale{border-style:dashed}.skills .chip{border:2px solid var(--line);border-radius:999px;padding:3px 10px;font-size:.78rem;font-weight:700}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .skills .sk.ok,:root:not([data-theme=light]) .skills .chip.ok{background:#3a3215}}:root[data-theme=dark] .skills .sk.ok,:root[data-theme=dark] .skills .chip.ok{background:#3a3215}.coach{border-radius:var(--radius);background:var(--accent-soft);gap:8px;margin:0 0 12px;padding:14px 16px;display:grid}.coach h3{margin:0}.coach ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.coach li{align-items:flex-start;gap:8px;line-height:1.4;display:flex}.coach li a{white-space:nowrap;font-weight:700}.rep h2{color:#111;margin:16px 0 6px;font-size:13pt}.rep ul{margin:0;padding-left:18px}.rep li{margin:0 0 3px}.rep .rep-tiles{grid-template-columns:repeat(5,1fr);gap:8px;margin:6px 0 4px;display:grid}.rep .rep-tiles div{text-align:center;border:1px solid #ddd;border-radius:8px;padding:8px}.rep .rep-tiles b{color:#4f46e5;font-size:18pt;display:block}.rep .rep-tiles span{color:#555;font-size:8.5pt}.rep .rep-two{grid-template-columns:1fr 1fr;gap:16px;display:grid}.rep .rep-t{border-collapse:collapse;width:100%;font-size:10pt}.rep .rep-t th,.rep .rep-t td{text-align:left;border-bottom:1px solid #ddd;padding:5px 6px}@media (max-width:560px){.rep .rep-tiles{grid-template-columns:repeat(2,1fr)}.rep .rep-two{grid-template-columns:1fr}}.tricks .tr-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin:10px 0;display:grid}.tricks .tr-card{text-align:left;background:var(--panel);color:var(--ink);border:2px solid var(--line);border-radius:var(--radius);cursor:pointer;font:inherit;flex-direction:column;align-items:flex-start;gap:3px;padding:12px 14px;display:flex}.tricks .tr-card .e{font-size:1.4rem}.tricks .tr-card b{font-family:var(--font-head)}.tricks .tr-card small{color:var(--ink-soft);font-size:.82rem}.tricks .tr-grid.later .tr-card{opacity:.7}.tricks .tr-lesson h2{margin:16px 0 6px;font-size:1.1rem}.tricks .tr-lesson ol{gap:4px;margin:0;padding-left:20px;display:grid}.tricks .tr-lesson li p{margin:0}.tricks .tr-why{background:var(--accent-soft);border-radius:var(--radius);padding:12px 14px}.tricks .tr-why p{margin:0}.tricks .tr-ex{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);margin:8px 0;padding:12px 14px}.tricks .tr-ex b{font-size:1.2rem}.tricks .tr-q{text-align:center;font-size:2rem;font-family:var(--font-head)}.tricks .tr-ans{gap:8px;margin:12px 0;display:flex}.tricks .tr-ans input{min-width:0;font:700 1.6rem var(--font-head);text-align:center;border:2px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);flex:1;padding:10px}.tricks .tr-ans .cta{width:auto;padding:0 24px}.tricks .qq-fb{border-radius:var(--radius);background:var(--chip);gap:8px;padding:12px 14px;display:grid}.tricks .qq-fb.ok{background:var(--ok-bg)}.tricks .qq-fb.no{background:var(--no-bg)}.tricks .tr-steps{margin:0;padding-left:20px}.tricks .tr-steps p{margin:0}.tricks .qq-next{border-radius:var(--radius);background:var(--accent-soft);gap:8px;margin:16px 0;padding:16px;display:grid}.tricks .qq-q{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);padding:16px}.ws .tr-printhow ol{margin:4px 0 10px;padding-left:20px}.ws .tr-printhow p{margin:0}.ws .tr-printqs{columns:2;column-gap:40px;margin:8px 0;padding-left:34px;font-size:13pt;line-height:2.1}.area-model{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);margin:6px 0;padding:10px}.area-model svg{width:100%;max-width:340px;height:auto;margin:0 auto;display:block}.area-model rect{stroke:var(--ink);stroke-width:1.5px}.area-model rect.hh{fill:#c9d3ff}.area-model rect.x{fill:#ffe0b8}.area-model rect.oo{fill:#c8f0d8}.area-model text{font:700 13px var(--font-body);fill:var(--ink)}.area-model text.v{fill:#121826}.area-model figcaption{text-align:center;margin-top:6px;font-size:.9rem}.tables-page .tb-tip{background:#eef0ff;border-radius:8px;padding:8px 12px;font-size:10pt}.tables-page .tb-scroll{overflow-x:auto}.tables-page .tb-grid{border-collapse:collapse;width:100%;font-size:10pt}.tables-page .tb-grid th,.tables-page .tb-grid td{text-align:center;border:1px solid #ccc;padding:3px 5px}.tables-page .tb-grid tr.hi td{background:#fff6e5}.tables-page .tb-grid th{background:#eef0ff}.tables-page .tb-two{grid-template-columns:1fr 1fr;gap:20px;display:grid}.tables-page .tb-list{border-collapse:collapse;width:100%;font-size:10pt}.tables-page .tb-list th,.tables-page .tb-list td{text-align:center;border:1px solid #ccc;padding:2px 8px}.mental .mt-q{font:800 2.4rem var(--font-head);text-align:center;background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);padding:22px 10px}.mental .mt-ans{gap:8px;margin:12px 0;display:flex}.mental .mt-ans input{min-width:0;font:800 1.8rem var(--font-head);text-align:center;border:2px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);flex:1;padding:10px}.mental .mt-ans .cta{width:auto;padding:0 22px}.mental .mt-dots{justify-content:center;gap:6px;display:flex}.mental .mt-dots i{background:var(--chip);border:2px solid var(--line);border-radius:50%;width:14px;height:14px}.mental .mt-dots i.ok{background:var(--ok-ink);border-color:var(--ok-ink)}.mental .mt-dots i.no{background:var(--no-ink);border-color:var(--no-ink)}.mental .mt-dots i.now{border-color:var(--accent)}.mental .qq-next{border-radius:var(--radius);background:var(--accent-soft);gap:8px;margin:16px 0;padding:16px;display:grid}.mental .mt-miss{margin:0;padding-left:18px}.puzzle .pz-card{background:var(--hi);color:var(--hi-ink);border-radius:var(--radius);padding:16px 18px}.puzzle .pz-card h2{margin:0 0 6px}.puzzle .pz-card p{margin:0;font-size:1.08rem;line-height:1.5}.puzzle .mt-ans,.stories .mt-ans{gap:8px;margin:12px 0;display:flex}.puzzle .mt-ans input,.stories .mt-ans input{min-width:0;font:700 1.3rem var(--font-head);border:2px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);flex:1;padding:10px 12px}.puzzle .mt-ans .cta,.stories .mt-ans .cta{width:auto;padding:0 22px}.puzzle .pz-hint{font-weight:700}.puzzle .pz-msg{font-weight:800}.puzzle .qq-fb,.stories .qq-fb{border-radius:var(--radius);background:var(--chip);gap:6px;padding:12px 14px;display:grid}.puzzle .qq-fb.ok,.stories .qq-fb.ok{background:var(--ok-bg)}.stories .qq-fb.no{background:var(--no-bg)}.puzzle .qq-fb p,.stories .qq-fb p{margin:0}.puzzle .race-board{margin-top:18px}.puzzle .race-board h2{margin:0 0 8px;font-size:1rem}.puzzle .race-board ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.puzzle .race-board li{background:var(--panel);border:1.5px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:28px 1fr;align-items:center;gap:8px;padding:8px 12px;display:grid}.puzzle .race-board li.me{border-color:var(--accent);background:var(--accent-soft)}.puzzle .race-board .n{color:var(--accent-text);font-weight:800}.puzzle .pz-last{margin-top:14px}.stories .tr-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:10px 0;display:grid}.stories .st-card{text-align:left;background:var(--panel);color:var(--ink);border:2px solid var(--line);border-radius:var(--radius);cursor:pointer;font:inherit;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:12px 14px;display:flex}.stories .st-card b{font-family:var(--font-head)}.stories .st-card span,.stories .st-card small{color:var(--ink-soft);font-size:.82rem}.stories .st-card.week{background:var(--hi);color:var(--hi-ink);border-color:#0000;margin:6px 0}.stories .st-card.week span,.stories .st-card.week small{color:var(--hi-ink)}.stories .st-read p{line-height:1.6}.stories .st-try{background:var(--accent-soft);border-radius:var(--radius);margin-top:12px;padding:14px 16px}.ws .bk-level h2,.ws .bk-h{color:#4f46e5;border-bottom:1px solid #ddd;margin:14px 0 6px;padding-bottom:3px;font-size:13pt}.ws .bk-level{break-inside:auto}.gym .gym-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;display:grid}.gym .gym-card{color:var(--ink);background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:4px;padding:14px;text-decoration:none;display:flex}.gym .gym-card .e{font-size:1.6rem}.gym .gym-card b{font-family:var(--font-head);font-size:1.05rem}.gym .gym-card small{color:var(--ink-soft)}.ws .ws-ans b .md,.ws .ws-ans b .md p{margin:0;display:inline}.tables-page .tb-two{align-items:start}.tricks .mem-rhyme{font:800 1.35rem/1.35 var(--font-head);background:var(--hi);color:var(--hi-ink);border-radius:var(--radius);padding:14px 16px}.tricks .tr-lesson ul{gap:4px;margin:0;padding-left:20px;display:grid}.tricks .qquiz .qq-q,.tricks .qq-q{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);padding:16px;font-weight:700}.tricks .qq-opts{gap:8px;margin:12px 0;display:grid}.tricks .qq-opts button{text-align:left;font:inherit;border-radius:var(--radius-sm);border:2px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;padding:12px 14px}.tricks .qq-opts button p{margin:0}.tricks .qq-opts button.good{border-color:var(--ok-ink);background:var(--ok-bg)}.tricks .qq-opts button.bad{border-color:var(--no-ink);background:var(--no-bg)}.tricks .qq-opts button.dim{opacity:.55}.trig-pic{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);color:var(--ink);margin:10px 0;padding:10px 12px}.trig-pic svg{width:100%;max-width:380px;height:auto;margin:0 auto;display:block}.trig-pic text{font-family:var(--font-body);fill:currentColor}.trig-pic text.lb{font-size:15px;font-weight:800}.trig-pic text.sm,.trig-pic tspan.sm{font-size:12px;font-weight:600}.trig-pic text.th{font:800 22px var(--font-head)}.trig-pic text.big{font:800 26px var(--font-head)}.trig-pic figcaption{gap:8px;margin-top:6px;font-size:.92rem;display:grid}.trig-pic figcaption p{margin:0}.trig-pic .pill-btn{justify-self:start;height:42px}.trig-pic .trig-note{background:var(--hi);color:var(--hi-ink);border-radius:var(--radius-sm);padding:8px 10px}.tr-tabs{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.tr-tabs button{font:inherit;border:2px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:999px;padding:8px 14px;font-weight:800}.tr-tabs button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.trig-rows{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);margin:10px 0;padding:10px 12px}.trig-rows .tr-cols{text-align:center;grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.trig-rows .tr-col{justify-items:center;gap:2px;display:grid}.trig-rows .fn{font:800 1rem var(--font-head);color:var(--ink-soft)}.trig-rows .frac{font:800 2.2rem/1 var(--font-head);justify-items:center;display:grid}.trig-rows .frac i{background:var(--ink);width:44px;height:3px;margin:4px 0;display:block}.trig-rows small{font-size:.78rem;font-weight:700;line-height:1.3}.trig-rows .hint{margin:8px 0 0}.el-strip{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.el-strip .el{justify-items:center;gap:3px;width:74px;display:grid}.el-strip .tile{border:2px solid var(--accent);background:var(--accent-soft);width:64px;height:64px;color:var(--ink);border-radius:10px;align-content:center;place-items:center;display:grid}.el-strip .tile b{font:800 1.5rem/1 var(--font-head)}.el-strip .tile small{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;max-width:60px;font-size:.58rem;font-weight:700;overflow:hidden}.el-strip .w{text-align:center;font-size:.82rem;font-weight:700}.el-strip .w u{color:var(--accent-text);text-decoration-thickness:2px}.flow-pic{background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);margin:6px 0;padding:12px}.flow-pic .flow{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.flow-pic .fs{align-items:center;gap:6px;display:inline-flex}.flow-pic .fs b{background:var(--accent-soft);border-radius:10px;padding:6px 10px;font-weight:800}.flow-pic .fs:last-child b{background:var(--ok-bg);color:var(--ok-ink)}.flow-pic .fs i{color:var(--ink-soft);font-style:normal;font-weight:800}.viewas-bar{z-index:60;color:#fff;font:600 .9rem var(--font-body);text-align:center;background:#f97316;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:8px 14px;display:flex;position:sticky;top:0}.viewas-bar.look{background:#b45309}.viewas-bar button{color:#9a3412;font:700 .85rem var(--font-body);cursor:pointer;background:#fff;border:0;border-radius:999px;min-height:34px;padding:6px 14px}.va-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:12px 0;display:grid}.va-card{text-align:left;border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;font:inherit;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;display:flex}.va-card:hover{border-color:var(--accent)}.va-card span{font-size:1.5rem}.va-card small{color:var(--ink-soft)}.linkish{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.tw-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;margin:0 0 14px;padding:14px 16px}.tw-card h2{margin:0;font-size:1.1rem}.tw-card ul,.tc-tasks,.adm-teachers{margin:8px 0 0;padding:0;list-style:none}.tw-card li,.tc-tasks li,.adm-teachers li{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.tw-card li span:first-child,.tc-tasks li span:first-child{flex-direction:column;min-width:0;display:flex}.tw-card li small,.tc-tasks li small{color:var(--ink-soft)}.tw-card li.late small{color:#c2410c;font-weight:700}.tw-card li.done b{color:var(--ink-soft);font-weight:600}.tw-btns{flex-wrap:wrap;gap:6px;display:flex}.tw-none{margin:8px 0 0;font-weight:700}.tw-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:6px 0;display:flex}.tw-form{gap:8px;margin:10px 0 4px;display:flex}.tw-form input{text-transform:uppercase;letter-spacing:2px;flex:1;min-width:0;font-weight:700}.tw-parent{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin:0 0 12px;padding:10px 12px}.tc-list{gap:10px;margin:12px 0;display:grid}.tc-card{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:16px;flex-direction:column;gap:2px;padding:14px 16px;text-decoration:none;display:flex}.tc-card:hover{border-color:var(--accent)}.tc-card small,.tc-card span{color:var(--ink-soft)}.tc-new,.tc-set{gap:10px;display:grid}.tc-new label,.tc-set label{gap:4px;font-weight:600;display:grid}.tc-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tc-code{letter-spacing:2px;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-weight:800}.tc-tabs{margin:10px 0 14px}.tc-scroll{-webkit-overflow-scrolling:touch;margin:10px 0;overflow-x:auto}.tc-grid{border-collapse:collapse;min-width:100%;font-size:.88rem}.tc-grid th,.tc-grid td{border:1px solid var(--line);text-align:center;vertical-align:middle;padding:6px 8px}.tc-grid thead th{min-width:90px;font-weight:700}.tc-grid tbody th{text-align:left;white-space:nowrap;background:var(--bg,#fff);position:sticky;left:0}.tc-grid td.good{color:#14532d;background:#dcfce7}.tc-grid td.ok{color:#713f12;background:#fef9c3}.tc-grid td.low{color:#7f1d1d;background:#fee2e2}.tc-grid td.late{color:#c2410c;font-weight:700}.tc-help ul{margin:6px 0 0;padding-left:18px}.tc-help li{margin:4px 0}.teach textarea{width:100%;font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:12px;margin:6px 0;padding:10px}.adm-school{border:1px solid var(--line);border-radius:14px;margin:12px 0;padding:12px 14px}.adm-school.ended{border-color:#dc2626}.adm-school h4{margin:0 0 6px}.adm-school h4 small{color:var(--ink-soft);font-weight:500}.adm-school-edit,.adm-add-t,.adm-new-school{flex-wrap:wrap;align-items:end;gap:8px;margin:8px 0;display:flex}.adm-school-edit label,.adm-new-school label{gap:2px;font-size:.85rem;display:grid}.adm-add-t input{flex:1;min-width:200px}.adm-new-school{border-top:1px solid var(--line);padding-top:12px}.adm-new-school h4{width:100%;margin:0}.clip-wrap{z-index:100;background:#0b0b1a;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.clip-stage{aspect-ratio:9/16;color:#fff;max-width:100vw;height:100dvh;font-family:var(--font-body);background:radial-gradient(120% 80% at 50% 0,#5b54f0 0%,#3730a3 45%,#1e1b4b 100%);position:relative;overflow:hidden;container-type:size}.clip-top{justify-content:space-between;align-items:center;display:flex;position:absolute;top:3.5cqh;left:6cqw;right:6cqw}.clip-logo{font:800 5.2cqw var(--font-body);letter-spacing:-.02em}.clip-logo b{color:#fdba74}.clip-tag{font:700 3.2cqw var(--font-body);background:#ffffff29;border-radius:99px;padding:1cqw 3cqw}.clip-hook{font:800 8.4cqw/1.12 var(--font-body);text-align:center;text-wrap:balance;margin:0;transition:all .5s;position:absolute;top:11cqh;left:6cqw;right:6cqw}.clip-hook.small{opacity:.85;font-size:4.6cqw;top:9.5cqh}.clip-steps{flex-direction:column;align-items:center;gap:2cqh;display:flex;position:absolute;top:20cqh;left:5cqw;right:5cqw}.clip-step{font:700 6.4cqw/1.15 var(--font-body);opacity:.45;text-align:center;margin:0;animation:.45s both clipIn}.clip-step.now{opacity:1;color:#fff;text-shadow:0 .6cqw 2cqw #00000059;font-size:8.6cqw}.clip-step.now.big{color:#fde68a;font-size:13cqw}@keyframes clipIn{0%{opacity:0;transform:translateY(3cqh)scale(.92)}}.clip-pic{color:#1e1b4b;background:#fff;border-radius:4cqw;justify-content:center;padding:2cqw;animation:.5s both clipIn;display:flex;position:absolute;top:49cqh;left:10cqw;right:10cqw}.clip-pic svg{width:100%;height:20cqh;display:block}.clip-pic figure{width:100%;margin:0}.clip-pic .trig-rows{font-size:3.4cqw}.clip-pic .trig-rows .tr-tabs{display:none}.clip-bottom{align-items:flex-end;height:30cqh;display:flex;position:absolute;bottom:0;left:0;right:0}.clip-teacher{width:auto;height:27cqh;transition:transform .3s;position:absolute;bottom:0;left:2cqw}.clip-teacher.talking{animation:1.6s ease-in-out infinite clipSway}@keyframes clipSway{50%{transform:rotate(-1.2deg)translateY(-.4cqh)}}.clip-caption{font:700 4.3cqw/1.3 var(--font-body);margin:0;position:absolute;bottom:6cqh;left:30cqw;right:4cqw}.clip-caption span{-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#0009;border-radius:2cqw;padding:.5cqw 2cqw}.clip-end{text-align:center;animation:.5s both clipIn;position:absolute;top:16cqh;left:7cqw;right:7cqw}.clip-end-logo{font:800 15cqw var(--font-body);letter-spacing:-.03em;margin:0}.clip-end-logo b{color:#fdba74}.clip-end-line{font:600 5cqw/1.35 var(--font-body);margin:3cqh 0}.clip-end-cta{font:800 6.4cqw var(--font-body);background:#f97316;border-radius:99px;margin:1cqh 0;padding:2cqw 6cqw;display:inline-block}.clip-end-url{font:700 5.6cqw var(--font-body);color:#fde68a;margin:2cqh 0 0}.clip-start{text-align:center;background:#0f0c28b8;flex-direction:column;justify-content:center;align-items:center;gap:2.4cqh;padding:6cqw;font-size:3.6cqw;display:flex;position:absolute;inset:0}.clip-start a{color:#c7d2fe}.clip-play,.clip-rec{font:800 5cqw var(--font-body);cursor:pointer;border:0;border-radius:99px;padding:3cqw 8cqw}.clip-play{color:#3730a3;background:#fff}.clip-rec{color:#fff;background:#dc2626}.vp-rate{opacity:.95;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:14px;font-size:.92rem;display:flex}.vp-rate button{cursor:pointer;background:#ffffff1f;border:1px solid #ffffff59;border-radius:99px;padding:4px 12px;font-size:1.25rem;line-height:1.2}.vp-rate button:hover{background:#ffffff40}.av-table th small,.av-table td small{color:var(--ink-soft);font-weight:500}.av-acts{white-space:nowrap}.av-acts>*{margin:2px}.clip-pic figcaption{display:none}.clip-pic .trig-rows{border:0;width:100%;margin:0}.clip-pic .trig-rows .fn{font-size:4.4cqw}.clip-pic .trig-rows .frac{font-size:11cqw}.clip-pic .trig-rows small{font-size:3.2cqw}.clip-pic .trig-rows p{display:none}.adm-store{gap:10px;max-width:620px;display:grid}.adm-store label{gap:4px;font-weight:600;display:grid}.tc-check{align-items:center;gap:8px;font-weight:600;display:flex!important}.tc-gc{border-style:dashed}.tc-google{margin-top:-6px}.tab-row{position:relative}@media (min-width:700px){.tab-row .adm-tabs{flex-wrap:wrap;overflow:visible}.tab-arrow{display:none!important}}.tab-arrow{z-index:2;width:40px;font:800 1.6rem/1 var(--font-body);color:var(--accent);cursor:pointer;border:0;align-items:center;display:flex;position:absolute;top:0;bottom:2px}.tab-arrow.r{background:linear-gradient(to right,transparent,var(--paper) 55%);justify-content:flex-end;padding-right:4px;right:0}.tab-arrow.l{background:linear-gradient(to left,transparent,var(--paper) 55%);justify-content:flex-start;padding-left:4px;left:0}@media (min-width:700px){.pl-subjects,.tq-topics{flex-wrap:wrap;overflow:visible}}.live-btn{justify-content:center;margin-top:10px;display:flex}.live-wait{text-align:center;padding:18px 0}.live-wait h2{margin:6px 0}.live-kicker{color:var(--accent);text-align:center;margin:4px 0 10px;font-weight:800}.live-names{flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.live-names li{background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-weight:700;animation:.35s both clipIn}.live-names li.me{border-color:var(--accent);color:var(--accent)}.race-track.live .lane{transition:none}.race-track.live .lane i{transition:width .5s}@media (min-width:700px){.race-track.big .lane{min-height:56px;font-size:1.35rem}}.live-race.host .race-count{font-size:9rem}.live-podium{justify-content:center;align-items:flex-end;gap:10px;margin:10px 0 18px;display:flex}.live-podium .pod{flex-direction:column;align-items:center;gap:2px;width:110px;display:flex}.live-podium .pod i{background:var(--accent);opacity:.85;border-radius:10px 10px 0 0;width:100%;display:block}.live-podium .p1 i{height:110px}.live-podium .p2 i{opacity:.65;height:80px}.live-podium .p3 i{opacity:.45;height:56px}.live-podium .medal{font-size:2rem}.live-podium b{text-align:center;font-size:1.05rem}.live-podium small{font-weight:800}.live-again{text-align:center;justify-items:center;gap:10px;margin-top:16px;display:grid}.live-again .cta{justify-content:center;align-items:center;width:auto;min-width:240px;padding:14px 28px;text-decoration:none;display:inline-flex}.live-banner{color:#fff;background:#f97316;border-radius:14px;flex-direction:column;gap:2px;margin:0 0 12px;padding:12px 14px;text-decoration:none;animation:.4s both clipIn;display:flex}.live-banner span{font-weight:700;text-decoration:underline}.tc-live{background:var(--panel);border:1px solid var(--line);border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;padding:10px 12px;display:flex}.tc-live small{width:100%;color:var(--ink-soft)}.race .race-track.live .lane:not(.you) i{background:#94a3b8}@media (min-width:700px){.race .race-track.big .lane{grid-template-columns:200px 1fr 70px}.race .race-track.big .lane i{border-radius:14px;height:28px}}.bp-pen{transition:left .3s,top .3s,opacity .3s}.bp-pen.go{animation:pen-run var(--write,1.1s) linear .3s both}@keyframes pen-run{0%{transform:translate(0)}to{transform:translateX(var(--pen-w,0px))}}.vp-steps li.now .vp-t{animation:bp-write var(--write,1.1s) linear both}.bp-line strong,.vp-steps .vp-t strong{background:linear-gradient(#0000 55%,#fde047d9 55%) 0 0/100% 100% no-repeat;border-radius:2px;padding:0 2px}.bp-line.now strong,.vp-steps li.now .vp-t strong{animation:.5s ease-out forwards hi-swipe;animation-delay:var(--write,1.1s);background-size:0 100%}@keyframes hi-swipe{to{background-size:100% 100%}}.vpic-wrap{justify-items:center;gap:6px;width:100%;margin:0;display:grid}.vpic-wrap figcaption{text-align:center;font-size:.95rem;font-weight:700}.vpic{width:100%;height:auto;max-height:100%;color:inherit}.vpic-draw{stroke-dasharray:1200;stroke-dashoffset:1200px;animation:1s ease-out forwards vpic-draw}@keyframes vpic-draw{to{stroke-dashoffset:0}}.vpic-pop{animation:.45s cubic-bezier(.3,1.4,.5,1) both vpic-pop}@keyframes vpic-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.vpic-pop{transform-box:fill-box;transform-origin:50%}.vpic-grow{animation:.7s ease-out both vpic-grow}@keyframes vpic-grow{0%{transform:scaleY(0)}to{transform:none}}@media (prefers-reduced-motion:reduce){.vpic-draw,.vpic-pop,.vpic-grow,.bp-pen.go,.vp-steps li.now .vp-t{stroke-dashoffset:0;animation:none}}.vpic text{font-family:var(--font-body,system-ui),system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}.av-search{width:100%;max-width:420px;margin:4px 0 10px}@media (max-width:699px){.av-table thead{display:none}.av-table,.av-table tbody,.av-table tr{width:100%;min-width:0;display:block}.av-table tr{border:1px solid var(--line);background:var(--panel);border-radius:12px;margin:0 0 10px;padding:8px 10px}.av-table th,.av-table td{text-align:left;background:0 0;border:0;min-width:0;padding:2px 8px 2px 0;display:inline-block;position:static}.av-table tbody th{display:block}.av-table .av-acts{flex-wrap:wrap;gap:6px;width:100%;padding-top:6px;display:flex}.av-table .av-acts>*{margin:0}}.av-bulk{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 10px;display:flex}.av-bulk small{width:100%;color:var(--ink-soft)}.av-tick input,.av-table thead input{width:20px;height:20px}@media (max-width:699px){.av-table td.av-tick{align-items:center;gap:6px;padding:0 0 6px;display:flex}.av-table td.av-tick:after{content:"Tick";color:var(--ink-soft);font-size:.8rem}}.av-done{color:#15803d}.av-box{border:1px solid var(--line,#e5e7eb);background:var(--card-soft,#f8fafc);border-radius:12px;margin:6px 0 14px;padding:12px 14px}.av-box p{margin:0 0 8px}.av-box p:last-child{margin:0}.av-status{white-space:nowrap}.vl-tickall{color:var(--ink-soft);cursor:pointer;align-items:center;gap:8px;margin:4px 0 8px;font-size:.9rem;display:inline-flex}.vl-tickall input,.vl-tick{cursor:pointer;flex:none;width:20px;height:20px;margin:0}.vl-list{gap:8px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.vl-row{border:1px solid var(--line);background:var(--panel);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 14px;min-width:0;padding:10px 12px;display:flex}.vl-row.on{border-color:var(--accent);background:var(--accent-soft,#eef2ff)}.vl-main{flex-direction:column;flex:280px;gap:2px;min-width:0;display:flex}.vl-title{overflow-wrap:anywhere;font-size:.98rem}.vl-sub{color:var(--ink-soft);overflow-wrap:anywhere;font-size:.82rem}.vl-bad{color:#b91c1c}.vl-side{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;align-items:center;gap:8px 12px;min-width:0;margin-left:auto;display:flex}.vl-status{white-space:nowrap;font-size:.88rem;font-weight:600}.vl-status.wait{color:#b45309}.vl-status.ok{color:#15803d}.vl-status.old{color:var(--ink-soft)}.vl-acts{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.vl-acts>*{margin:0}@media (max-width:599px){.vl-row{align-items:flex-start}.vl-main{flex-basis:calc(100% - 40px)}.vl-side{justify-content:space-between;width:100%;margin-left:0}}.bp-art .vpic text{font-family:var(--font-body,system-ui),system-ui,sans-serif}@media (min-width:761px){.vp-body.has-vis:not(.no-host) .vp-vis{flex-basis:44%;margin-left:min(15%,170px)}}.bill-tiers{gap:10px;max-width:560px;display:grid}.bill-kids{gap:6px;margin:0;padding:0;list-style:none;display:grid}.bill-kids li{border:1px solid var(--line);background:var(--panel);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.bill-kids li span{flex-direction:column;min-width:0;display:flex}.bill-kids li small{color:var(--ink-soft);font-size:.85rem;font-weight:500}.bill-kids li>b{white-space:nowrap}.bill-kids li>b small,.bill-total small{color:var(--ink-soft);margin-left:2px;font-weight:500}.bill-total{justify-content:space-between;align-items:baseline;margin:2px 0 0;padding:4px 14px;font-size:1.15rem;display:flex}.bill-total b{font-size:1.4rem}.bill-note.found{color:#78350f;background:#fef3c7;border-radius:10px;padding:10px 12px}.bill-change{color:#78350f;background:#fffbeb;border:1px solid #f59e0b;border-radius:12px;justify-items:start;gap:8px;margin:10px 0;padding:12px 14px;display:grid}.bill-change p{margin:0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .bill-note.found,:root:not([data-theme=light]) .bill-change{color:#fde68a;background:#3b2f0b}}:root[data-theme=dark] .bill-note.found,:root[data-theme=dark] .bill-change{color:#fde68a;background:#3b2f0b}.ab-msg{color:#14532d;background:#dcfce7;border-radius:12px;margin:8px 0 12px;padding:10px 14px;font-weight:700}.ab-msg.bad{color:#7f1d1d;background:#fee2e2}.vp-ready{left:50%;bottom:calc(84px + env(safe-area-inset-bottom));z-index:60;background:var(--panel,#fff);color:var(--ink);border:2px solid var(--accent,#4f46e5);border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:10px 14px;font-weight:700;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #0000002e}@media (min-width:760px){.vp-ready{bottom:24px}}.bl-auto{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.bl-auto select{max-width:100%}.bl-check{cursor:pointer;align-items:center;gap:6px;font-weight:600;display:inline-flex}.bl-check input{width:20px;height:20px;margin:0}.bl-last{margin-top:8px!important}.bl-write{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.bl-write input{flex:320px;min-width:0}.bl-ideas-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:16px 0 8px;display:flex}.bl-edit label{gap:4px;margin:0 0 12px;font-weight:600;display:grid}.bl-edit label small{color:var(--ink-soft);font-weight:500}.bl-edit input,.bl-edit textarea{box-sizing:border-box;width:100%;min-width:0;font:inherit;font-weight:400}.bl-body{line-height:1.5;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;font-size:.9rem!important}.bl-btns{flex-wrap:wrap;gap:8px;display:flex}.bl-btns>*{margin:0}.bl-bulk{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px;display:flex}.bl-bulk>*{margin:0}.bl-auto select{flex:0 auto;width:auto}.yr-btn.locked{opacity:.5;cursor:not-allowed;filter:grayscale(.6)}.yr-btn.locked span{font-size:.78rem}.or-preview{border:1px solid var(--line);color:#121826;overflow-wrap:anywhere;background:#fff;border-radius:12px;max-width:640px;padding:16px 18px}.or-preview ul{margin:0 0 14px}.or-status{border-left:6px solid #9ca3af;flex-direction:column;gap:4px;display:flex}.or-status.on{border-left-color:#16a34a}.or-status>b{font-size:1.1rem}.or-step h3{align-items:center;gap:10px;display:flex}.or-num{background:var(--btn);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:1rem;display:inline-flex}.or-row{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.or-row select{flex:0 420px;width:auto;max-width:100%;min-height:44px;font-size:1rem}.or-own{margin-top:14px}.or-own summary,.or-more>summary{cursor:pointer;color:var(--btn);font-weight:600}.or-more>summary{font-size:1.05rem}.or-file{margin-top:10px;position:relative;overflow:hidden}.or-file input{opacity:0;cursor:pointer;position:absolute;inset:0}.or-stop{color:#dc2626;border-color:#dc2626}.or-wait{background:var(--accent-soft);border-radius:12px;margin:6px 0 12px;padding:12px 14px}.or-wait ul{gap:6px;margin:8px 0;padding:0;list-style:none;display:grid}.or-wait li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}details.or-step>summary{cursor:pointer;list-style:none;display:block}details.or-step>summary::-webkit-details-marker{display:none}details.or-step>summary h3{margin:0}.or-sumrow{justify-content:space-between;align-items:center;gap:12px;display:flex}details.or-step[open]>summary{margin-bottom:10px}.or-now{font:400 .95rem/1.4 var(--font-body);color:var(--muted,#4b5563);margin:6px 0 0 40px;display:block}.or-change{color:var(--btn);font:700 .9rem/1 var(--font-body);white-space:nowrap;flex:none}.or-status,.or-step,.or-more{margin-bottom:16px}.or-lab{flex-direction:column;flex:260px;gap:4px;min-width:0;font-size:.9rem;font-weight:600;display:flex}.or-lab select,.or-lab input{width:100%;min-height:44px;font-size:1rem}.or-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:4px 0 8px;display:flex}.or-btns{flex-wrap:wrap;gap:8px;display:flex}.or-saved{color:#15803d;margin-left:6px;font-weight:600}.or-list{border:1px solid var(--line);border-radius:12px;max-height:440px;margin:0;padding:0;list-style:none;overflow:auto}.or-list li{border-bottom:1px solid var(--line)}.or-list li:last-child{border-bottom:0}.or-list label{cursor:pointer;align-items:center;gap:12px;padding:10px 14px;font-weight:400;display:flex}.or-list li.on{background:var(--accent-soft)}.or-list li.done{opacity:.65}.or-list input[type=checkbox]{flex:none;width:20px;height:20px;margin:0}.or-name{flex-direction:column;flex:1;min-width:0;display:flex}.or-name small{color:var(--muted,#6b7280);font-size:.85rem}.or-tag{color:#4b5563;white-space:nowrap;background:#f3f4f6;border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:700}.or-sent li{align-items:center;gap:12px;padding:10px 14px;display:flex}.or-h4{margin:18px 0 8px;font-size:1rem}.or-row .or-lab+.primary,.or-row .or-lab+.secondary{align-self:flex-end}.or-row .primary,.or-row .secondary{align-self:flex-end;min-height:44px}.or-lab select,.or-lab input{flex:none;height:auto}.or-step .or-preview{background:0 0;border:0;max-width:660px;padding:0}.or-step .or-preview>p{margin:0 0 10px}.rp{gap:16px;display:grid}.rp-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.rp-head h2{margin:0;font-size:1.4rem}.rp-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (max-width:820px){.rp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.rp-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.rp-card>span{color:var(--muted,#4b5563);font-size:.95rem;font-weight:600}.rp-card>b{font-size:2.2rem;line-height:1.1}.rp-up{color:#15803d;font-weight:600}.rp-down{color:#b91c1c;font-weight:600}.rp-same{color:var(--muted,#6b7280)}.rp-total{margin:-4px 0 0}.rp-box h3{margin:0 0 4px}.rp-two{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:820px){.rp-two{grid-template-columns:1fr}}.rp-table{border-collapse:collapse;width:100%;margin-top:8px;font-size:.95rem}.rp-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--muted,#6b7280);border-bottom:1px solid var(--line);padding:6px 8px;font-size:.8rem}.rp-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:9px 8px}.rp-table tr:last-child td{border-bottom:0}.rp-bar{background:var(--line);vertical-align:middle;border-radius:99px;width:70px;height:8px;margin-right:8px;display:inline-block;overflow:hidden}.rp-bar i{background:var(--btn);height:100%;display:block}.rp-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}@media (max-width:820px){.rp-steps{grid-template-columns:1fr}}.rp-steps li{background:var(--accent-soft);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.rp-steps b{font-size:1.6rem}.rp-steps span{font-weight:600}.rp-steps small{color:var(--muted,#4b5563)}.rp-scroll{overflow-x:auto}.rp-fam{min-width:640px}.rp-tag{white-space:nowrap;color:#374151;background:#f3f4f6;border-radius:99px;padding:3px 10px;font-size:.8rem;font-weight:700}.rp-tag.ok{color:#166534;background:#dcfce7}.rp-tag.trial{color:#3730a3;background:#e0e7ff}.rp-tag.wait{color:#92400e;background:#fef3c7}:root{--hr-a:#4f46e5;--hr-b:#f59e0b;--hr-c:#10b981}.hr{gap:12px;margin:4px 0 14px;display:grid}.hr-rings{background:var(--panel);border:1px solid var(--line);border-radius:20px;grid-template-columns:repeat(3,1fr);gap:8px;padding:16px 8px 12px;display:grid}.hr-ring{cursor:pointer;color:var(--ink);font:inherit;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:0;display:flex;position:relative}.hr-ring svg{width:min(26vw,108px);height:min(26vw,108px);transform:rotate(-90deg)}.hr-track{fill:none;stroke:var(--line);stroke-width:9px}.hr-fill{fill:none;stroke-width:9px;stroke-linecap:round;transition:stroke-dasharray .8s}.hr-ring>b{letter-spacing:-.02em;font-size:clamp(1.3rem,6vw,1.9rem);font-weight:800;position:absolute;top:calc(min(26vw,108px)/2);transform:translateY(-50%)}.hr-ring>span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;text-align:center;font-size:.8rem;font-weight:700}.hr-ring>span i{color:var(--btn);font-style:normal}.hr-ring.on>span{color:var(--btn)}.hr-ph{border:9px solid var(--line);border-radius:50%;width:min(26vw,108px);height:min(26vw,108px);margin:0 auto 26px;animation:1.2s ease-in-out infinite alternate hrpulse;display:block}@keyframes hrpulse{0%{opacity:.5}to{opacity:1}}.hr-more{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px 16px;animation:.2s hrin}@keyframes hrin{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.hr-more h3{margin:0 0 4px;font-size:1rem}.hr-more p{margin:0 0 6px}.hr-rows{gap:8px;margin:8px 0;padding:0;list-style:none;display:grid}.hr-rows li{grid-template-columns:1fr 70px 44px 84px;align-items:center;gap:8px;font-size:.92rem;display:grid}.hr-rows small{color:var(--ink-soft)}.hr-bars{gap:3px;display:flex}.hr-bars i{background:var(--line);border-radius:3px;flex:1;height:6px}.hr-bars.low i:first-child{background:#f59e0b}.hr-bars.ok i:nth-child(2){background:#94a3b8}.hr-bars.great i:nth-child(3){background:#10b981}.hr-key{color:var(--ink-soft);gap:14px;margin:6px 0 0;font-size:.8rem;display:flex}.hr-key span:before{content:"";vertical-align:middle;border-radius:3px;width:14px;height:5px;margin-right:6px;display:inline-block}.hr-key .low:before{background:#f59e0b}.hr-key .ok:before{background:#94a3b8}.hr-key .great:before{background:#10b981}.hr-tip{position:relative}.hr-tip a{color:var(--ink);background:var(--accent-soft);border-radius:16px;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;padding:14px 52px 14px 16px;text-decoration:none;display:grid}.hr-tip b{grid-column:1}.hr-tip span{color:var(--ink-soft);grid-column:1;font-size:.92rem}.hr-tip em{color:var(--btn-ink);background:var(--btn);border-radius:12px;grid-area:1/2/3;padding:8px 14px;font-style:normal;font-weight:700}.hr-x{border:1px solid var(--line);background:var(--panel);width:32px;height:32px;color:var(--ink-soft);cursor:pointer;border-radius:10px;font-weight:700;position:absolute;top:8px;right:8px}.hr-tip a{padding-right:16px}.hr-tip{padding-right:0}.hr-tip a em{margin-right:34px}.hr-tiles{grid-template-columns:1fr 1fr;gap:10px;display:grid}.hr-tiles a{color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:4px;padding:12px 14px;text-decoration:none;display:flex}.hr-tiles small{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:.75rem;font-weight:700}.hr-tiles b.good{color:#059669}.hfab{right:max(16px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:45;cursor:pointer;background:linear-gradient(145deg,var(--btn),#7c6cf0);border:0;border-radius:22px;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .15s;display:flex;position:fixed;box-shadow:0 10px 28px #4f46e559}.hfab:active{transform:scale(.94)}@media (max-width:760px){.wrap.has-tabs .hfab{bottom:calc(var(--tabbar-h) + 10px + env(safe-area-inset-bottom,0px))}}.hfab-back{z-index:60;background:#12182659;justify-content:center;align-items:flex-end;animation:.15s hrin;display:flex;position:fixed;inset:0}.hfab-sheet{background:var(--panel);width:100%;max-width:560px;padding:10px 18px calc(18px + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0;animation:.22s hfup;box-shadow:0 -10px 30px #1218262e}@keyframes hfup{0%{opacity:.6;transform:translateY(30px)}to{opacity:1;transform:none}}.hfab-grab{background:var(--line);border-radius:3px;width:44px;height:5px;margin:0 auto 10px;display:block}.hfab-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.hfab-head p{flex:1;margin:0;font-size:1.1rem;font-weight:700}.hfab-x{border:1px solid var(--line);background:var(--panel);cursor:pointer;width:36px;height:36px;color:var(--ink-soft);border-radius:12px}.hfab-chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.hfab-chips button{border:1px solid var(--line);background:var(--chip);color:var(--ink);font:600 .95rem/1.2 var(--font-body);cursor:pointer;text-align:left;border-radius:999px;padding:10px 14px}.hfab-chips button:hover{border-color:var(--btn)}.hfab-ask{gap:8px;display:flex}.hfab-ask input{border:1.5px solid var(--line);background:var(--paper);min-width:0;min-height:48px;color:var(--ink);border-radius:14px;flex:1;padding:0 14px;font-size:1rem}.hfab-ask input:focus{border-color:var(--btn);outline:none}.wrap.student main.home{padding-bottom:84px}.fm-search{width:100%;max-width:360px;min-height:42px;margin:8px 0}.fm-row{cursor:pointer}.fm-row:hover td{background:var(--accent-soft)}.fm-detail{gap:14px;display:grid}.fm-detail>button{justify-self:start}.fm-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.fm-head h3{margin:0}.fm-facts{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 16px;margin:6px 0 12px;display:grid}.fm-facts dt{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);font-size:.78rem}.fm-facts dd{margin:2px 0 0;font-weight:600}.fm-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:6px 0 12px;display:grid}@media (max-width:640px){.fm-stats{grid-template-columns:1fr 1fr}}.fm-stats div{background:var(--accent-soft);border-radius:12px;flex-direction:column;padding:10px 12px;display:flex}.fm-stats b{font-size:1.25rem}.fm-stats span{color:var(--ink-soft);font-size:.85rem}.fm-kid h4{margin:14px 0 4px}.fm-sub{color:var(--ink-soft)}.soc-add{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.soc-add input{border:1.5px solid var(--line);background:var(--panel);width:auto;min-height:44px;color:var(--ink);font:500 .95rem var(--font-body);border-radius:12px;flex:220px;padding:0 12px}.soc-add select{border:1.5px solid var(--line);background:var(--panel);width:auto;min-height:44px;color:var(--ink);font:500 .95rem var(--font-body);border-radius:12px;flex:none;padding:0 10px}.soc-add button{flex:none}.soc-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.soc-head h3{margin:0}.soc-dot{vertical-align:middle;border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.soc-dot.fb,.soc-tag.fb{background:#1877f2}.soc-dot.ig,.soc-tag.ig{background:linear-gradient(45deg,#f58529,#dd2a7b,#8134af)}.soc-table td{vertical-align:middle}.soc-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.soc-date{white-space:nowrap;color:var(--ink-soft)}.soc-post{align-items:center;gap:8px;min-width:260px;display:flex}.soc-tag{color:#fff;font:700 .7rem var(--font-body);letter-spacing:.02em;border-radius:999px;flex:none;padding:3px 8px}.soc-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.soc-open{color:var(--ink-soft);border-radius:6px;flex:none;padding:2px 6px;font-weight:700;text-decoration:none}.soc-open:hover{background:var(--accent-soft);color:var(--accent-text)}.adm-body .am-list b,.adm-body .items b,.adm-body .items strong,.adm-body h3,.adm-body h4,.adm-body .lib-sum b{overflow-wrap:anywhere}.soc-list{margin:0;padding:0;list-style:none;display:none}@media (max-width:640px){.adm-body .items .acts{flex-wrap:wrap;flex-shrink:1}.adm-body .items li{flex-wrap:wrap}.adm-body .pend-chip{margin-top:4px;margin-left:0;display:inline-block}.adm-body .db-custom{flex-wrap:wrap;width:100%;display:flex}.adm-body .db-custom input{flex:140px;min-width:0}.adm-body .am-head{flex-wrap:wrap;min-width:0}.adm-body .ab-table{-webkit-overflow-scrolling:touch;white-space:nowrap;display:block;overflow-x:auto}.adm-body .ab-table td{white-space:normal;min-width:120px}.adm-body .ab-table td:first-child{min-width:200px}.adm-body .rp-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.adm-body .rp-scroll>.rp-table{min-width:560px}.adm-body .rp-table th{white-space:nowrap}.soc-table-wrap{display:none}.soc-list{display:block}.soc-list li{border-top:1px solid var(--line);padding:12px 0}.soc-list .soc-row1{align-items:center;gap:8px;display:flex}.soc-list .soc-row2{color:var(--ink-soft);flex-wrap:wrap;gap:4px 14px;margin-top:6px;font-size:.85rem;display:flex}.soc-list .soc-row2 b{color:var(--ink);font-variant-numeric:tabular-nums}.soc .rp-cards{grid-template-columns:1fr 1fr}}.soc-title{flex:0 auto}.soc-ig{border:1px solid var(--line);border-radius:16px;margin:16px 0;padding:16px}.soc-ig h4{margin:0}.soc-h4{margin:18px 0 8px}.soc-igcards{grid-template-columns:repeat(3,minmax(0,1fr))}.soc-break{flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;display:flex}.soc-break b,.soc-top b{color:var(--ink);font-variant-numeric:tabular-nums}.soc-top{margin:0;padding:0;list-style:none}.soc-top li{border-top:1px solid var(--line);padding:10px 0}.soc-top .soc-row1{align-items:center;gap:8px;font-weight:600;display:flex}.soc-top .soc-row2{color:var(--ink-soft);flex-wrap:wrap;gap:4px 14px;margin-top:4px;font-size:.86rem;display:flex}.soc-aud{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.soc-aud ul{margin:6px 0 0;padding:0;list-style:none}.soc-aud li{border-bottom:1px solid var(--line);justify-content:space-between;padding:4px 0;display:flex}@media (max-width:640px){.soc-igcards{grid-template-columns:1fr 1fr}.soc-aud{grid-template-columns:1fr}.soc-ig{padding:12px}}.soc-per{scrollbar-width:none;flex-wrap:nowrap;margin:2px 0 14px;overflow-x:auto}.soc-per::-webkit-scrollbar{display:none}.soc-per .chip{flex:none}@media (max-width:640px){.soc-per{gap:6px}.soc-per .chip{padding:7px 11px;font-size:.85rem}}.ig-dash{--igf:#c935c4;--ign:#eba3e6;margin-top:18px}.ig-title{margin:0 0 8px}.ig-tabs{border-bottom:1px solid var(--line);scrollbar-width:none;margin-bottom:14px;display:flex;overflow-x:auto}.ig-tabs::-webkit-scrollbar{display:none}.ig-tabs button{color:var(--ink-soft);font:700 .95rem var(--font-body);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex:1 0 auto;min-height:44px;margin-bottom:-1px;padding:10px 12px}.ig-tabs button.on{color:var(--ink);border-bottom-color:var(--ink)}.ig-panel h5{font:800 1.05rem var(--font-head);margin:20px 0 8px}.ig-sum{grid-template-columns:1.3fr 1fr;gap:12px;display:grid}.ig-col{gap:12px;display:grid}.ig-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:4px;min-width:0;padding:14px 16px;display:flex}.ig-card span{color:var(--ink-soft);font-size:.9rem;font-weight:600}.ig-card b{font:800 1.6rem var(--font-head);font-variant-numeric:tabular-nums}.ig-card.big .ig-line{margin-top:8px}.ig-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.ig-cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.ig-up{color:#1f9d55;font-weight:700}.ig-down{color:var(--margin);font-weight:700}.ig-line{margin:8px 0 0}.ig-line-plot{gap:6px;display:flex}.ig-yax{color:var(--ink-soft);text-align:right;flex-direction:column;justify-content:space-between;min-width:22px;font-size:.72rem;display:flex}.ig-line svg{flex:1;width:100%;height:120px;overflow:visible}.ig-grid{stroke:var(--line);stroke-width:1px}.ig-path{fill:none;stroke:var(--igf);stroke-width:3px;stroke-linejoin:round;stroke-linecap:round}.ig-xax{color:var(--ink-soft);justify-content:space-between;margin-top:4px;padding-left:28px;font-size:.75rem;display:flex}.ig-legend{color:var(--ink-soft);gap:16px;margin:0 0 8px;font-size:.88rem;display:flex}.ig-legend i{vertical-align:middle;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.ig-legend i.f,.ig-bars i.f{background:var(--igf)}.ig-legend i.nf,.ig-bars i.nf{background:var(--ign)}.ig-bars{gap:12px;margin:0;padding:0;list-style:none;display:grid}.ig-bars li{grid-template-columns:1fr auto;grid-template-areas:"l b""t b""s s";align-items:center;gap:4px 12px;display:grid}.ig-bl{grid-area:l;font-weight:600}.ig-track{background:var(--line);border-radius:999px;grid-area:t;gap:2px;height:10px;display:flex;overflow:hidden}.ig-track i{height:100%;display:block}.ig-bars b{font-variant-numeric:tabular-nums;text-align:right;grid-area:b;min-width:40px}.ig-split{color:var(--ink-soft);grid-area:s;font-size:.8rem}.ig-chips{scrollbar-width:none;flex-wrap:nowrap;margin-bottom:10px;overflow-x:auto}.ig-chips::-webkit-scrollbar{display:none}.ig-chips .chip{flex:none}.ig-prof{gap:10px;margin:0;padding:0;list-style:none;display:grid}.ig-prof li{align-items:center;gap:14px;font-weight:600;display:flex}.ig-prof li span{background:var(--accent-soft);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid}.ig-prof li b{font-variant-numeric:tabular-nums;margin-left:auto}.ig-mini{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:4px 0 8px;display:grid}.ig-mini div{flex-direction:column;display:flex}.ig-mini span{color:var(--ink-soft);font-size:.85rem}.ig-mini b{font:800 1.4rem var(--font-head)}.ig-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.ig-grid a{aspect-ratio:9/16;background:var(--accent-soft);border-radius:12px;display:block;position:relative;overflow:hidden}.ig-grid img{object-fit:cover;width:100%;height:100%;display:block}.ig-noimg{text-align:center;height:100%;color:var(--ink);place-items:center;padding:8px;font-size:.85rem;font-weight:700;display:grid}.ig-ov{color:#fff;font:700 .8rem var(--font-body);background:#0009;border-radius:999px;padding:2px 8px;position:absolute;bottom:6px;left:6px}.ig-cap{flex-direction:column;gap:2px;margin-top:6px;font-size:.85rem;display:flex}.ig-cap b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ig-cap small{color:var(--ink-soft)}@media (max-width:640px){.ig-sum{grid-template-columns:1fr}.ig-col{grid-template-columns:1fr 1fr}.ig-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ig-mini{grid-template-columns:repeat(3,minmax(0,1fr))}.ig-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ig-card b{font-size:1.4rem}}.ig-line svg{flex:1 1 0;width:auto;min-width:0}@media (max-width:640px){.ig-tabs button{flex:auto;padding:10px 6px;font-size:.88rem}}.ig-grid img{position:absolute;inset:0}.soc-px{border-top:1px solid var(--line);margin-top:22px;padding-top:6px}.soc-pxl{gap:6px;margin:0 0 8px;padding:0;list-style:none;display:grid}.soc-pxl li{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.soc-pxl span{color:var(--ink-soft)}.soc-ads{margin:16px 0 4px}.soc-adl{margin-top:8px;display:block!important}.soc-adl li{border-top:1px solid var(--line);padding:10px 0}.soc-st{font:700 .75rem var(--font-body);background:var(--accent-soft);color:var(--ink-soft);border-radius:999px;flex:none;padding:3px 8px}.soc-st.on{color:#166534;background:#dcf5e3}.soc-adl .soc-row1{align-items:center;gap:8px;display:flex}.soc-adl .soc-row2{color:var(--ink-soft);flex-wrap:wrap;gap:4px 14px;margin-top:6px;font-size:.85rem;display:flex}.soc-adl .soc-row2 b{color:var(--ink);font-variant-numeric:tabular-nums}.acc-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.acc-head h3{margin:0 0 4px}.acc-head .hint{margin:0}.acc-add{border:1px solid var(--line);background:var(--accent-soft);border-radius:16px;margin:0 0 16px;padding:16px}.acc-add h4{margin:0 0 10px}.acc-filter{scrollbar-width:none;flex-wrap:nowrap;margin:4px 0 10px;overflow-x:auto}.acc-filter::-webkit-scrollbar{display:none}.acc-filter .chip{flex:none}.acc-filter .chip small{opacity:.7;margin-left:4px;font-weight:700}.acc-tools{margin-bottom:8px}.acc-list{margin:0;padding:0;list-style:none}.acc-row{border-top:1px solid var(--line);padding:12px 4px}.acc-row.off .acc-main{opacity:.6}.acc-top{align-items:flex-start;gap:8px;display:flex}.acc-main{flex:1;min-width:0}.acc-name{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.acc-name b{overflow-wrap:anywhere}.acc-type{font:700 .72rem var(--font-body);background:var(--accent-soft);color:var(--accent-text);border-radius:999px;padding:2px 8px}.acc-type.t-parent{color:#166534;background:#dcf5e3}.acc-type.t-student{color:#1e40af;background:#e0eaff}.acc-type.t-admin{color:#9f1239;background:#fde2e4}.acc-type.t-teacher,.acc-type.t-reviewer{color:#92400e;background:#fef3c7}.acc-flag{font:700 .72rem var(--font-body);background:var(--line);color:var(--ink-soft);border-radius:999px;padding:2px 8px}.acc-meta,.acc-fam{color:var(--ink-soft);margin-top:3px;font-size:.86rem}.acc-fam b{color:var(--ink);margin-left:2px}.acc-mbtn{flex:none}.acc-manage{background:var(--accent-soft);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:10px;display:flex}.acc-inline{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.fm-cards{margin:8px 0 12px}.fm-filter{scrollbar-width:none;flex-wrap:nowrap;margin-bottom:10px;overflow-x:auto}.fm-filter::-webkit-scrollbar{display:none}.fm-filter .chip{flex:none}.fm-filter .chip small{opacity:.7;margin-left:4px;font-weight:700}.fm-kids{color:var(--ink-soft);margin-top:2px;font-size:.84rem;font-weight:500}.fm-list{margin:0;padding:0;list-style:none;display:none}.fm-card{text-align:left;background:var(--panel);border:1px solid var(--line);cursor:pointer;width:100%;color:var(--ink);font:inherit;border-radius:14px;flex-direction:column;gap:4px;margin-bottom:8px;padding:12px 14px;display:flex}.fm-c1{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.fm-c1 b{overflow-wrap:anywhere}.fm-c3{color:var(--ink-soft);flex-wrap:wrap;gap:4px 14px;font-size:.84rem;display:flex}.fm-c3 b{color:var(--ink)}@media (max-width:640px){.fm-wide{display:none}.fm-list{display:block}}.fm-c1{flex-direction:column;align-items:flex-start;gap:6px}.acc-sec{margin:14px 0 8px;font-size:1rem}.acc-sec small{color:var(--ink-soft);margin-left:4px;font-weight:700}.acc-fambox{border:1px solid var(--line);background:var(--panel);border-radius:16px;margin:0 0 12px;padding:2px 12px 6px}.acc-fambox>.acc-list>.acc-row:first-child{border-top:0}.acc-kids{border-left:3px solid #dcf5e3;margin-left:14px;padding-left:10px}.acc-kids .acc-row{padding:10px 2px}.acc-nokid{margin:0 0 8px 18px;font-size:.86rem}@media (max-width:600px){.acc-fambox{padding:2px 8px 6px}.acc-kids{margin-left:4px;padding-left:8px}}@media (min-width:701px) and (min-aspect-ratio:1){.vp-screen:has(.vp-host.teacher) .vp-sub-line{left:5%;right:36%}.vp-screen:has(.vp-presenter.teacher) .vp-sub-line{left:max(18%,2.5% + 170px);right:6%}}@media (max-width:760px),(max-aspect-ratio:1){.vp-host.teacher{width:auto;margin-bottom:0}.vp-host.teacher .vp-teacher-img{width:96px}.vp-presenter.teacher .vp-teacher-img{width:90px}.bp-screen .vp-sub-line{text-align:center;left:12px;right:calc(2% + clamp(54px,9%,110px) + 10px)}}.vp-steps li.seen .vp-t strong{background-image:linear-gradient(#0000 84%,#fde047e6 84%)}.vp-t .katex .text,.vp-t .katex .text *,.bp-line .katex .text,.bp-line .katex .text *{font-style:normal;font-family:var(--font-body,Inter),system-ui,sans-serif!important}.acc-sec-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:14px 0 8px;display:flex}.acc-sechead{cursor:pointer;min-height:44px;color:inherit;font:700 1.05rem var(--font-head,inherit);background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:4px 0;display:flex}.acc-sec-row .acc-sechead{margin:0}.acc-sechead small{color:var(--ink-soft);margin-left:4px;font-weight:700}.acc-chev{color:var(--ink-soft);flex:none;transition:transform .2s}.acc-chev.up{transform:rotate(180deg)}.acc-all{gap:8px;display:inline-flex}.acc-fambox{margin:0 0 10px;padding:0;overflow:hidden}.acc-famline{text-align:left;cursor:pointer;width:100%;min-height:60px;color:inherit;font:inherit;background:0 0;border:0;align-items:center;gap:12px;padding:12px 14px 12px 16px;display:flex}.acc-famline:hover:not(:disabled){background:var(--accent-soft)}.acc-famline:focus-visible{outline-offset:-3px;border-radius:16px;outline:3px solid #a5a0ff}.acc-famline:disabled{cursor:default}.acc-famtxt{flex-wrap:wrap;flex:1;align-items:center;gap:4px 8px;min-width:0;display:flex}.acc-famtxt b{overflow-wrap:anywhere;font-size:1rem}.acc-famsub{color:var(--ink-soft);flex-basis:100%;font-size:.86rem}.acc-famtog{border:1px solid var(--line);color:var(--ink);font:600 .85rem var(--font-body);border-radius:999px;flex:none;align-items:center;gap:4px;padding:6px 8px 6px 12px;display:inline-flex}.acc-fambox.open .acc-famline{border-bottom:1px solid var(--line)}.acc-fambody{padding:0 12px 6px}@media (max-width:600px){.acc-famtog{gap:0;padding:6px;font-size:0}.acc-famtog .acc-chev{width:24px;height:24px}}.soc-adnow{border:1px solid var(--line);border-radius:12px;margin:10px 0;padding:10px 12px}.soc-adnow h5{margin:0 0 6px;font-size:.9rem}.soc-adnow>ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.soc-adprob{color:#b45309;margin:4px 0 0 18px;font-size:.86rem}.or-tally{gap:8px;margin:0 0 12px;display:grid}.or-tal{border:1px solid var(--line,#e5e7eb);background:var(--card,#fff);border-radius:10px;flex-wrap:wrap;gap:4px 12px;padding:10px 12px;display:flex}.or-tal span{color:var(--muted,#6b7280);font-size:14px}.or-twrap{border:1px solid var(--line,#e5e7eb);border-radius:10px;max-height:640px;overflow:auto}.or-table{border-collapse:collapse;width:100%;font-size:14px}.or-table th{background:var(--card,#fff);text-align:left;border-bottom:2px solid var(--line,#e5e7eb);white-space:nowrap;z-index:1;padding:8px 10px;position:sticky;top:0}.or-table td{border-bottom:1px solid var(--line,#e5e7eb);vertical-align:top;padding:8px 10px}.or-table td small{color:var(--muted,#6b7280);font-size:12px;display:block}.or-table .or-em{word-break:break-all;font-family:ui-monospace,monospace;font-size:12px}.or-pill{color:#3730a3;white-space:nowrap;background:#eef2ff;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.or-st-sent .or-pill{color:#166534;background:#dcfce7}.or-st-replied .or-pill{color:#854d0e;background:#fef9c3}.or-st-unsub .or-pill{color:#4b5563;background:#f3f4f6}.or-st-failed .or-pill{color:#991b1b;background:#fee2e2}.et-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.et-head h3{margin:0 0 4px}.et-btns{gap:8px;display:flex}.et-cards{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:14px 0;display:grid}.et-card{border:1px solid var(--line,#e5e7eb);background:var(--card,#fff);cursor:pointer;text-align:left;font:inherit;color:inherit;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;display:flex}.et-card b{font-size:26px;line-height:1.1}.et-card span{color:var(--muted,#6b7280);font-size:13px}.et-card.on{border-color:#4f46e5;box-shadow:0 0 0 2px #c7d2fe}.et-c-sent b{color:#166534}.et-c-replied b{color:#854d0e}.et-c-failed b{color:#991b1b}.et-c-queued b{color:#3730a3}.et-wrap{max-height:70vh}.et-sort{cursor:pointer;-webkit-user-select:none;user-select:none}.et-sort:hover{color:#4f46e5}.et-act{white-space:nowrap}.et-types{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:0 0 14px;display:grid}.et-type{border:1px solid var(--line,#e5e7eb);background:var(--card,#fff);cursor:pointer;text-align:left;font:inherit;color:inherit;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;display:flex}.et-type span{color:var(--muted,#6b7280);font-size:13px}.et-type.on{border-color:#4f46e5;box-shadow:0 0 0 2px #c7d2fe}.adm-body .nw{white-space:nowrap}.adm-body .em{word-break:normal;overflow-wrap:normal;white-space:nowrap}.adm-body .rp-table td small,.adm-body .or-table td small{color:var(--muted,#6b7280);font-size:.85em}.adm-body .rp-table td,.adm-body .or-table td{vertical-align:middle;line-height:1.4}.as-recent{margin-top:22px}.as-rh{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 10px;display:flex}.as-n{background:var(--accent-soft,#eef0ff);border-radius:99px;padding:2px 10px;font-size:.9rem}.as-sum{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 8px;display:flex}.as-lbl{text-transform:uppercase;letter-spacing:.03em;color:var(--muted,#6b7280);min-width:84px;font-size:.8rem;font-weight:700}.as-table{min-width:760px}.as-new{margin-right:8px}.as-sub{display:block}.as-muted{color:var(--muted,#6b7280)}.py-page{max-width:860px;margin:0 auto;padding:16px 16px 60px}.py-hero{color:#fff;background:linear-gradient(135deg,#1e1b4b,#4f46e5);border-radius:22px;margin:8px 0 18px;padding:24px 22px}.py-hero h1{color:#fff;margin:6px 0 8px}.py-hero p{color:#e0e7ff}.py-badge{color:#78350f;background:#fde68a;border-radius:99px;padding:3px 10px;font-size:.8rem;font-weight:800;display:inline-block}.py-bar{background:#ffffff40;border-radius:99px;height:8px;margin:12px 0 4px;overflow:hidden}.py-bar i{background:#fde68a;height:100%;display:block}.py-hero .py-small{color:#c7d2fe}.py-small{color:var(--ink-soft,#6b7280);margin:4px 0 10px;font-size:.9rem}.py-unit h2{margin:18px 0 8px;font-size:1.1rem}.py-unit ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.py-row{text-align:left;background:var(--panel,#fff);border:1px solid var(--line,#e5e7eb);width:100%;font:inherit;color:inherit;cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.py-row span:nth-child(2){flex:1;font-weight:600}.py-tick{color:#4f46e5;background:#eef0ff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:.9rem;font-weight:800;display:flex}.py-tick.on{color:#166534;background:#dcfce7}.py-lesson h1{margin:4px 0 10px}.py-explain{font-size:1.05rem;line-height:1.6}.py-ic{color:#3730a3;background:#eef0ff;border-radius:6px;padding:1px 6px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.92em}.py-pre{color:#e2e8f0;white-space:pre;background:#0f172a;border-radius:14px;padding:14px 16px;font:14px/1.55 ui-monospace,Menlo,Consolas,monospace;overflow-x:auto}.py-task{background:#fff7ed;border:1px solid #fed7aa;border-radius:14px;margin:16px 0;padding:12px 16px}.py-task p{margin:4px 0 0}.py-lbl{margin:12px 0 6px;font-size:.9rem;font-weight:700;display:block}.py-editor{box-sizing:border-box;color:#f8fafc;tab-size:4;resize:vertical;caret-color:#fde68a;background:#0f172a;border:2px solid #334155;border-radius:14px;width:100%;padding:14px 16px;font:15px/1.6 ui-monospace,Menlo,Consolas,monospace}.py-editor:focus{border-color:#818cf8;outline:none}.py-in{background:#1e293b}.py-acts{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.py-out{color:#a7f3d0;white-space:pre-wrap;background:#020617;border-radius:14px;min-height:44px;margin:0;padding:12px 16px;font:14px/1.55 ui-monospace,Menlo,Consolas,monospace}.py-out.err{color:#fca5a5}.py-verdict{border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;padding:12px 16px;display:flex}.py-verdict.ok{color:#166534;background:#dcfce7}.py-verdict.no{color:#92400e;background:#fef3c7}.py-hint-btn{color:#4f46e5;font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 0;font-weight:700}.py-learn-card{color:#fff;background:linear-gradient(135deg,#1e1b4b,#4f46e5);border-radius:16px;align-items:center;gap:12px;margin:0 0 12px;padding:12px 16px;text-decoration:none;display:flex}.py-learn-card span:first-child{font-size:26px}.py-learn-card span:nth-child(2){flex:1}.py-learn-card b{display:block}.py-learn-card small{color:#c7d2fe}.citem .watch-gap{flex:none;width:38px;height:38px}.ph-learn-card{margin:0 0 14px}.ph-hero{background:linear-gradient(135deg,#f97316,#ec4899)}.ph-row-sub{color:var(--muted);font-weight:400}.ph-step h3{margin-top:22px}.ph-cards{flex-wrap:wrap;gap:12px;display:flex}.ph-card{border:2px solid var(--line);background:var(--panel);cursor:pointer;border-radius:18px;justify-items:center;gap:2px;width:118px;padding:12px 8px;display:grid}.ph-card b{color:var(--accent-text);font-family:Comic Sans MS,Segoe Print,system-ui,sans-serif;font-size:3rem;line-height:1}.ph-card span{font-size:1.7rem}.ph-card small{color:var(--muted)}.ph-card:active{transform:scale(.96)}.ph-trace{justify-items:start;gap:8px;display:grid}.ph-trace canvas{aspect-ratio:3/2;border:2px dashed var(--line);background:var(--panel);touch-action:none;border-radius:16px;width:100%;max-width:360px}.ph-words{flex-wrap:wrap;gap:14px;display:flex}.ph-word{background:var(--panel);border:1px solid var(--line);border-radius:16px;justify-items:center;gap:6px;padding:10px;display:grid}.ph-tiles{gap:4px;display:flex}.ph-tile{border:2px solid var(--line);background:var(--bg,#fff);cursor:pointer;min-width:46px;height:52px;color:var(--text);border-radius:12px;padding:0 8px;font-size:1.6rem;font-weight:700}.ph-tile.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.ph-tricky{flex-wrap:wrap;gap:8px;display:flex}.ph-chip{background:var(--panel);cursor:pointer;color:var(--text);border:2px solid #f97316;border-radius:999px;padding:8px 14px;font-size:1.2rem;font-weight:700;text-decoration:none}.ph-story{margin:6px 0 10px;font-size:1.6rem;line-height:1.9}.ph-sw{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 2px}.ph-sw:hover,.ph-sw:focus{background:#6366f11f}.ph-home{background:#f973161a;border-color:#f9731673}.ph-check{text-align:center}.ph-big{letter-spacing:.04em;margin:28px 0;font-family:Comic Sans MS,Segoe Print,system-ui,sans-serif;font-size:clamp(3.5rem,14vw,6rem);font-weight:700}.inv-card{background:#f9731612;border:2px solid #f9731673}.inv-link{align-items:center;gap:8px;display:flex}.inv-link input{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--text);border-radius:10px;flex:1;padding:8px 10px;font-size:.9rem}
