.deck-chalk{position:absolute;left:2.68%;top:4.53%;width:94.54%;height:90.59%;overflow:hidden;transition:opacity .7s var(--ease-out)}body.is-intro .deck-chalk{opacity:0}.deck-stage{position:absolute;left:0;top:0;width:1920px;height:1080px;transform-origin:top left}@media(prefers-reduced-motion:reduce){.deck-chalk{transition:none}}.deck-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@font-face{font-family:Asap;src:url(/fonts/asap-var.woff2) format("woff2");font-weight:400 800;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box}h1,h2,h3,p,ul,li,figure{margin:0;padding:0}ul{list-style:none}[hidden]{display:none!important}:root{--paper: #fbf2e9;--card: #fdfaf7;--card-muted: #f4eee9;--weave: #d9c4a1;--ink: #111722;--ink-soft: #2b3342;--ink-faint: #6a7180;--green: #0a6402;--green-bright: #157603;--green-dot: #0a8f12;--blue: #0056e6;--blue-deep: #0046c4;--blue-ring: #1668e8;--chalk-gold: #feb603;--rail: #ddd6d0;--rail-soft: #efe8e1;--lift-1: 0 6px 18px rgba(58, 42, 24, .1);--lift-2: 0 10px 26px rgba(58, 42, 24, .13);--lift-3: 0 18px 44px rgba(48, 34, 20, .18);--lift-4: 0 26px 70px rgba(30, 20, 10, .3);--ease-out: cubic-bezier(.22, 1, .36, 1);--dur: .2s;--z-scene: 0;--z-chrome: 20;--z-scrim: 30;--z-modal: 40;--u: clamp(.42px, min(.0521vw, .0926vh), 1.35px);--edge-x: calc(var(--u) * 122);--edge-y: calc(var(--u) * 36);--gap: calc(var(--u) * 30)}html,body{margin:0;height:100%;background:var(--paper);font-family:Asap,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.screen-host{overflow:hidden}.stage{position:relative;width:100%;height:100dvh;min-height:100vh;overflow:hidden;background:linear-gradient(180deg,#fcf2e6,#fdf5ed 30%,#fef7ef 58%,#fdf5ec 80%,#fcf4eb);animation:screen-in .26s var(--ease-out) both}body.is-leaving .stage{opacity:0;transition:opacity .15s ease-in}@keyframes screen-in{0%{opacity:0}to{opacity:1}}.stage.paper{display:flex;flex-direction:column;padding:calc(var(--u) * 128) var(--edge-x) calc(var(--u) * 38)}.weave{position:absolute;top:0;width:calc(var(--u) * 150);height:100%;pointer-events:none;opacity:.22;background:linear-gradient(60deg,transparent 0 34px,var(--weave) 35px 39px,transparent 40px 78px),linear-gradient(-60deg,transparent 0 34px,var(--weave) 35px 39px,transparent 40px 78px);background-size:136px 118px;-webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,transparent 100%)}.weave.left{left:calc(var(--u) * -46)}.weave.right{right:calc(var(--u) * -46);transform:scaleX(-1)}.status{position:absolute;top:var(--edge-y);right:calc(var(--u) * 42);z-index:var(--z-chrome);display:flex;align-items:center;gap:calc(var(--u) * 21);height:calc(var(--u) * 66);padding:0 calc(var(--u) * 23) 0 calc(var(--u) * 18);border-radius:999px;background:#fffffff2;box-shadow:var(--lift-2);font-size:calc(var(--u) * 31);font-weight:700;letter-spacing:.035em;white-space:nowrap}.status .dot{width:calc(var(--u) * 24);height:calc(var(--u) * 24);border-radius:50%;background:var(--green-dot);box-shadow:inset 0 -4px 7px #00000038}.status.is-offline{color:#6d6155;background:#ffffffe6}.status.is-offline .dot{background:#b0a396;box-shadow:inset 0 -4px 7px #00000029}.class-chip{position:absolute;left:calc(var(--u) * 42);top:var(--edge-y);z-index:var(--z-chrome);display:flex;align-items:center;gap:calc(var(--u) * 21);height:calc(var(--u) * 85);padding:0 calc(var(--u) * 20);border-radius:calc(var(--u) * 22);background:#fffffff2;box-shadow:var(--lift-1)}.class-chip .mark{width:calc(var(--u) * 54);height:calc(var(--u) * 54);flex:none}.class-chip .who{display:flex;flex-direction:column;line-height:1}.class-chip .who b{font-size:calc(var(--u) * 31);font-weight:700;white-space:nowrap}.class-chip .who span{margin-top:calc(var(--u) * 6);font-size:calc(var(--u) * 24);font-weight:500;color:var(--ink-faint)}.home-head{flex:none;text-align:center}.home-title{font-size:calc(var(--u) * 87);font-weight:700;line-height:1}.swoosh{display:block;width:calc(var(--u) * 668);max-width:60%;height:calc(var(--u) * 34);margin:calc(var(--u) * 6) auto 0;overflow:visible}.course-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(3,1fr);grid-auto-rows:1fr;align-content:center;column-gap:calc(var(--u) * 27.5);row-gap:calc(var(--u) * 33);margin-top:calc(var(--u) * 30)}.course-card{position:relative;min-height:0;max-height:calc(var(--u) * 470);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--u) * 20);padding:calc(var(--u) * 22) calc(var(--u) * 12) calc(var(--u) * 26);border:0;border-radius:calc(var(--u) * 30);background:var(--card);box-shadow:var(--lift-1);font:inherit;color:var(--ink);text-decoration:none;cursor:pointer;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.course-card img{flex:1;min-height:0;width:100%;object-fit:contain}.course-card b{flex:none;font-size:calc(var(--u) * 36);font-weight:700;line-height:1;text-align:center}.course-card:hover{transform:translateY(-4px);box-shadow:var(--lift-2)}.course-card:active{transform:translateY(-1px)}.course-card:focus-visible{outline:calc(var(--u) * 5) solid var(--blue-ring);outline-offset:calc(var(--u) * 4)}.course-card.is-picked,.episode.is-picked{transform:translateY(calc(var(--u) * -6));box-shadow:var(--lift-2),0 0 0 calc(var(--u) * 7) var(--blue-ring)}.course-card.is-picked b,.episode.is-picked b{color:var(--blue-deep)}.back-btn{position:absolute;left:calc(var(--u) * 38);top:calc(var(--u) * 31);z-index:var(--z-chrome);display:grid;place-items:center;width:calc(var(--u) * 72);height:calc(var(--u) * 72);border:0;border-radius:calc(var(--u) * 24);background:#fffffff2;box-shadow:var(--lift-1);color:var(--ink);cursor:pointer;transition:transform var(--dur) var(--ease-out),background var(--dur) var(--ease-out)}.back-btn svg{width:52%;height:52%}.back-btn:hover{transform:translate(-3px)}.back-btn:focus-visible{outline:calc(var(--u) * 4) solid var(--blue-ring);outline-offset:calc(var(--u) * 4)}.course-top{flex:none;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:calc(var(--u) * 40)}.course-hero{width:calc(var(--u) * 825);max-width:46%;height:auto;max-height:calc(var(--u) * 432);object-fit:contain;pointer-events:none}.course-id{display:flex;align-items:center;gap:calc(var(--u) * 30);font-size:calc(var(--u) * 44);font-weight:700}.course-id .mark{width:calc(var(--u) * 60);height:calc(var(--u) * 60)}.course-title{margin-top:calc(var(--u) * 6);font-size:calc(var(--u) * 122);font-weight:800;line-height:1;color:var(--green)}.course-blurb{margin-top:calc(var(--u) * 20);max-width:calc(var(--u) * 660);font-size:calc(var(--u) * 33);line-height:1.5;color:var(--ink-soft);text-wrap:pretty}.section-label{flex:none;margin-top:calc(var(--u) * 26);font-size:calc(var(--u) * 36);font-weight:700;color:var(--green)}.rail{position:relative;flex:1;min-height:0;display:flex;align-items:center;margin-top:calc(var(--u) * 14)}.rail-nav{position:absolute;top:50%;z-index:var(--z-chrome);display:grid;place-items:center;width:calc(var(--u) * 60);height:calc(var(--u) * 60);border:0;border-radius:50%;background:#fffffff5;box-shadow:var(--lift-1);color:var(--ink);cursor:pointer;transform:translateY(-50%);transition:opacity var(--dur) var(--ease-out)}.rail-nav svg{width:50%;height:50%}.rail-nav.prev{left:calc(var(--u) * -84)}.rail-nav.next{right:calc(var(--u) * -84)}.rail-nav:focus-visible{outline:calc(var(--u) * 4) solid var(--blue-ring);outline-offset:calc(var(--u) * 3)}.rail-nav:disabled{opacity:.35;cursor:default}.episode-rail{flex:1;min-width:0;height:100%;display:flex;align-items:center;gap:var(--gap);padding:calc(var(--u) * 8);margin:calc(var(--u) * -8);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:calc(var(--u) * 8);scrollbar-width:none}.episode-rail::-webkit-scrollbar{display:none}.episode{flex:0 0 calc((100% - 4 * var(--gap)) / 5);min-width:0;height:100%;max-height:calc(var(--u) * 520);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--u) * 24);padding:calc(var(--u) * 26) calc(var(--u) * 16) calc(var(--u) * 26);border:0;border-radius:calc(var(--u) * 30);background:var(--card);box-shadow:var(--lift-1);font:inherit;color:var(--ink);text-decoration:none;text-align:center;scroll-snap-align:start;cursor:pointer;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.episode img{flex:1;min-height:0;width:100%;object-fit:contain}.episode b{flex:none;font-size:calc(var(--u) * 31);font-weight:700;line-height:1.1}.episode:hover{transform:translateY(-4px);box-shadow:var(--lift-2)}.episode:active{transform:translateY(-1px)}.episode:focus-visible{outline:calc(var(--u) * 5) solid var(--blue-ring);outline-offset:calc(var(--u) * 4)}.episode.is-done{background:var(--card-muted);box-shadow:none;cursor:default;color:var(--ink-faint)}.episode.is-done img{filter:grayscale(1);opacity:.78}.episode.is-done:hover{transform:none;box-shadow:none}.episode.is-done b{font-weight:600;color:#5f6a63}.episode .done{flex:none;display:flex;align-items:center;gap:calc(var(--u) * 12);font-size:calc(var(--u) * 28);font-weight:600;color:var(--green-bright)}.episode .done svg{width:calc(var(--u) * 32);height:calc(var(--u) * 32);flex:none}.rail-scroll{flex:none;position:relative;width:100%;height:calc(var(--u) * 14);margin-top:calc(var(--u) * 20);border-radius:999px;background:var(--rail)}.rail-scroll .thumb{position:absolute;top:calc(var(--u) * -3);left:0;width:33%;height:calc(var(--u) * 20);border-radius:999px;background:var(--blue);transition:left var(--dur) var(--ease-out),width var(--dur) var(--ease-out)}.course-foot{flex:none;display:flex;align-items:center;justify-content:space-between;gap:var(--gap);margin-top:calc(var(--u) * 26)}.progress-panel{width:calc(var(--u) * 654);max-width:55%;padding:calc(var(--u) * 22) calc(var(--u) * 30);border-radius:calc(var(--u) * 26);background:#ffffffd1;box-shadow:var(--lift-1)}.progress-panel .row{display:flex;align-items:baseline;gap:calc(var(--u) * 34)}.progress-panel .lesson{font-size:calc(var(--u) * 34);font-weight:700;white-space:nowrap}.progress-panel .tally{display:flex;align-items:center;gap:calc(var(--u) * 22);font-size:calc(var(--u) * 32);font-weight:600;color:var(--ink-soft);white-space:nowrap}.progress-panel .tally i{width:calc(var(--u) * 9);height:calc(var(--u) * 9);border-radius:50%;background:#b6ab9f}.progress-panel .meter{margin-top:calc(var(--u) * 16);height:calc(var(--u) * 18);border-radius:999px;background:var(--rail-soft);overflow:hidden}.progress-panel .meter span{display:block;height:100%;border-radius:999px;background:var(--green-bright)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:calc(var(--u) * 26);height:calc(var(--u) * 105);padding:0 calc(var(--u) * 32) 0 calc(var(--u) * 46);border:0;border-radius:999px;background:linear-gradient(180deg,#0a5cf0 0%,var(--blue-deep) 100%);box-shadow:0 12px 28px #003eb257;color:#fff;font:inherit;font-size:calc(var(--u) * 44);font-weight:700;text-decoration:none;white-space:nowrap;cursor:pointer;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.btn-primary .pip{display:grid;place-items:center;width:calc(var(--u) * 62);height:calc(var(--u) * 62);border-radius:50%;background:#fff;color:var(--blue-deep);flex:none}.btn-primary .pip svg{width:50%;height:50%}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 34px #003eb266}.btn-primary:active{transform:translateY(0)}.btn-primary:focus-visible{outline:calc(var(--u) * 5) solid #90b6ff;outline-offset:calc(var(--u) * 5)}.btn-primary.is-disabled,.btn-primary:disabled{background:#e7e0d6;box-shadow:none;color:#6d6155;cursor:default}.btn-primary.is-disabled .pip,.btn-primary:disabled .pip{background:#fdfbf8;color:#8b7f71}.btn-primary.is-disabled:hover,.btn-primary:disabled:hover{transform:none;box-shadow:none}.scrim{position:absolute;inset:0;z-index:var(--z-scrim);background:#0009;cursor:pointer;animation:fade-in .2s var(--ease-out) both}@keyframes fade-in{0%{opacity:0}to{opacity:1}}[role=dialog]:focus{outline:none}.sheet{position:absolute;z-index:var(--z-modal);left:50%;top:50%;width:calc(var(--u) * 1040);max-width:calc(100% - var(--u) * 120);height:auto;min-height:calc(var(--u) * 610);max-height:calc(100% - var(--u) * 100);display:grid;grid-template-columns:calc(var(--u) * 520) minmax(0,1fr);border-radius:calc(var(--u) * 34);background:#fffaf4;box-shadow:var(--lift-4);overflow:hidden;transform:translate(-50%,-50%);animation:sheet-in .28s var(--ease-out) both}@keyframes sheet-in{0%{opacity:0;transform:translate(-50%,-46%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%)}}.sheet .plate{display:flex;align-items:center;justify-content:center;padding:calc(var(--u) * 56) calc(var(--u) * 30) calc(var(--u) * 30);border-right:1px solid rgba(24,16,8,.07)}.sheet .plate img{max-width:100%;max-height:100%;object-fit:contain}.sheet .body{position:relative;display:flex;flex-direction:column;padding:calc(var(--u) * 56) calc(var(--u) * 40) calc(var(--u) * 40) calc(var(--u) * 62)}.sheet h2{padding-right:calc(var(--u) * 70);font-size:calc(var(--u) * 60);font-weight:800;line-height:1.04;color:var(--green);text-wrap:balance}.sheet .lede{margin-top:calc(var(--u) * 14);font-size:calc(var(--u) * 30);font-weight:600;line-height:1.2;color:var(--ink-soft);text-wrap:pretty}.sheet h3{margin-top:calc(var(--u) * 34);font-size:calc(var(--u) * 33);font-weight:700;color:var(--green)}.sheet ul{margin-top:calc(var(--u) * 12);margin-bottom:calc(var(--u) * 58);display:grid;gap:calc(var(--u) * 15)}.sheet li{display:grid;grid-template-columns:calc(var(--u) * 26) minmax(0,1fr);gap:calc(var(--u) * 16);align-items:start;font-size:calc(var(--u) * 28);font-weight:700;line-height:1.1}.sheet li svg{width:calc(var(--u) * 26);height:calc(var(--u) * 26);margin-top:calc(var(--u) * 3);color:var(--green-bright)}.sheet .btn-primary{align-self:start;margin-top:auto;padding-top:0;height:calc(var(--u) * 72);gap:calc(var(--u) * 16);padding:0 calc(var(--u) * 34);font-size:calc(var(--u) * 31)}.sheet .btn-primary .tri{display:grid;place-items:center;flex:none}.sheet .btn-primary .tri svg{width:calc(var(--u) * 30);height:calc(var(--u) * 30)}.sheet-close{position:absolute;right:calc(var(--u) * 28);top:calc(var(--u) * 28);display:grid;place-items:center;width:calc(var(--u) * 58);height:calc(var(--u) * 58);border:0;border-radius:50%;background:#fff;box-shadow:var(--lift-1);color:var(--ink);cursor:pointer;transition:transform var(--dur) var(--ease-out)}.sheet-close svg{width:52%;height:52%}.sheet-close:hover{transform:scale(1.09);background:#f3ece4}.sheet-close:focus-visible{outline:calc(var(--u) * 4) solid var(--blue-ring);outline-offset:calc(var(--u) * 3)}.scene{position:absolute;left:0;top:0;z-index:var(--z-scene);width:100%;height:auto;-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - var(--u) * 12),transparent 100%);mask-image:linear-gradient(180deg,#000 calc(100% - var(--u) * 12),transparent 100%)}@media(min-aspect-ratio:183/100){.scene{height:100%;object-fit:cover;object-position:center max(-4.2vw,calc(100dvh - 56.25vw));-webkit-mask-image:none;mask-image:none}}.scene-full{opacity:0;transition:opacity .9s var(--ease-out)}body.lesson-live .scene-full{opacity:1}.scene-dim{position:absolute;inset:0;z-index:var(--z-scrim);background:#160f0885}body.is-intro .controls{opacity:0;pointer-events:none;transition:none}.controls{opacity:1;transition:opacity .7s var(--ease-out);position:absolute;left:50%;bottom:calc(var(--u) * 18);z-index:var(--z-chrome);display:flex;align-items:center;gap:calc(var(--u) * 44);transform:translate(-50%)}.ctl{display:grid;place-items:center;width:calc(var(--u) * 68);height:calc(var(--u) * 68);border:0;border-radius:calc(var(--u) * 22);background:#fdfbf8;box-shadow:var(--lift-2);color:var(--ink);cursor:pointer;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),background var(--dur) var(--ease-out),color var(--dur) var(--ease-out)}.ctl svg{width:calc(var(--u) * 34);height:calc(var(--u) * 34)}.ctl:hover{transform:translateY(-3px);box-shadow:var(--lift-3)}.ctl:active{transform:translateY(0)}.ctl:focus-visible{outline:calc(var(--u) * 4) solid var(--blue-ring);outline-offset:calc(var(--u) * 4)}.ctl.is-off{background:#2b2f36;color:#fff}.ctl.stop{background:#fdfbf8;color:#c0392b}.ctl.stop:hover{background:#c0392b;color:#fff}.controls[aria-hidden=true] .ctl{cursor:default}.controls[aria-hidden=true] .ctl:hover{transform:none;box-shadow:var(--lift-2)}.ctl.mic{width:calc(var(--u) * 80);height:calc(var(--u) * 80);border-radius:50%;background:linear-gradient(180deg,#1f6ffb,#0b53df);color:#fff;box-shadow:0 0 0 calc(var(--u) * 8) #ffffffeb,var(--lift-2)}.ctl.mic svg{width:calc(var(--u) * 40);height:calc(var(--u) * 40)}.ctl.mic:hover{transform:translateY(-3px)}.ctl.mic:focus-visible{outline-color:#90b6ff}.ctl.mic.is-live{background:linear-gradient(180deg,#d94a2b,#b8340f);animation:mic-live 1.6s ease-in-out infinite}@keyframes mic-live{0%,to{box-shadow:0 0 0 calc(var(--u) * 8) #ffffffeb,0 0 0 calc(var(--u) * 8) #d94a2b00,var(--lift-2)}50%{box-shadow:0 0 0 calc(var(--u) * 8) #ffffffeb,0 0 0 calc(var(--u) * 19) #d94a2b47,var(--lift-2)}}.listening,.paused,.muted,.questions{display:flex;align-items:center;gap:calc(var(--u) * 17);position:absolute;right:calc(100% + var(--u) * 62);height:calc(var(--u) * 72);padding:0 calc(var(--u) * 26);border-radius:999px;background:#24272c;box-shadow:var(--lift-2);color:#fff;font-size:calc(var(--u) * 30);font-weight:600;white-space:nowrap;animation:pill-in .24s var(--ease-out) both}@keyframes pill-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}.listening .mic-mark{width:calc(var(--u) * 33);height:calc(var(--u) * 33);color:var(--chalk-gold);flex:none}.listening .wave{display:flex;align-items:center;gap:calc(var(--u) * 5);height:calc(var(--u) * 34)}.listening .wave i{width:calc(var(--u) * 6);border-radius:calc(var(--u) * 3);background:var(--chalk-gold);animation:pulse .9s var(--ease-out) infinite alternate}.listening .wave i:nth-child(1){animation-delay:0ms;height:calc(var(--u) * 14)}.listening .wave i:nth-child(2){animation-delay:.11s;height:calc(var(--u) * 26)}.listening .wave i:nth-child(3){animation-delay:.22s;height:calc(var(--u) * 34)}.listening .wave i:nth-child(4){animation-delay:.33s;height:calc(var(--u) * 22)}.listening .wave i:nth-child(5){animation-delay:.44s;height:calc(var(--u) * 12)}@keyframes pulse{to{transform:scaleY(.42)}}.paused,.muted{height:calc(var(--u) * 66);font-size:calc(var(--u) * 27)}.paused .mark,.muted .mark,.questions .mark{width:calc(var(--u) * 30);height:calc(var(--u) * 30);color:var(--chalk-gold);flex:none}.questions{gap:calc(var(--u) * 14)}.questions .left{display:grid;place-items:center;min-width:calc(var(--u) * 46);height:calc(var(--u) * 46);padding:0 calc(var(--u) * 10);border-radius:999px;background:#ffffff24;color:var(--chalk-gold);font-variant-numeric:tabular-nums;font-size:calc(var(--u) * 25)}.done-modal{position:absolute;z-index:var(--z-modal);left:50%;top:50%;width:calc(var(--u) * 553);max-width:calc(100% - var(--u) * 120);padding:calc(var(--u) * 33) calc(var(--u) * 60) calc(var(--u) * 38);border-radius:calc(var(--u) * 34);background:#f6efe7;box-shadow:var(--lift-4);text-align:center;transform:translate(-50%,-50%);animation:done-in .32s var(--ease-out) both}@keyframes done-in{0%{opacity:0;transform:translate(-50%,-46%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%)}}.done-modal .badge{position:relative;width:calc(var(--u) * 107);height:calc(var(--u) * 107);margin:0 auto}.done-modal .badge .disc{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:linear-gradient(180deg,#3d9c31,#227a12);color:#fff;box-shadow:0 8px 18px #1c5c0c4d}.done-modal .badge .disc svg{width:54%;height:54%}.done-modal .badge .rays{position:absolute;left:50%;top:50%;width:calc(var(--u) * 215);height:calc(var(--u) * 69);transform:translate(-50%,-50%);color:var(--chalk-gold)}.done-modal h2{margin-top:calc(var(--u) * 14);font-size:calc(var(--u) * 47);font-weight:800;line-height:1;color:var(--green)}.done-modal p{margin-top:calc(var(--u) * 11);font-size:calc(var(--u) * 26);line-height:1.2;color:var(--ink-soft)}.done-modal .btn-primary{margin-top:calc(var(--u) * 28);width:100%;height:calc(var(--u) * 65);font-size:calc(var(--u) * 28);gap:calc(var(--u) * 20);padding:0}.done-modal .btn-primary .pip{width:calc(var(--u) * 42);height:calc(var(--u) * 42);background:var(--chalk-gold);color:#fff}.done-modal .home-link{display:inline-block;margin-top:calc(var(--u) * 22);font-size:calc(var(--u) * 25);font-weight:700;line-height:1;color:var(--blue);text-decoration:none}.done-modal .home-link:hover{text-decoration:underline}.done-modal .home-link:focus-visible{outline:calc(var(--u) * 4) solid var(--blue-ring);outline-offset:calc(var(--u) * 4)}body.flow{height:auto;min-height:100vh;overflow:auto;background:#17130f;color:#f6efe7;padding:72px 48px 96px}.flow-wrap{max-width:1180px;margin:0 auto}.flow h1{font-size:46px;font-weight:800;letter-spacing:-.01em}.flow .lede{margin-top:14px;font-size:20px;line-height:1.55;color:#b8ab9c;max-width:62ch}.flow-grid{margin-top:46px;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:28px}.flow-card{display:block;padding:26px 28px 28px;border-radius:20px;background:#221c16;border:1px solid #372d24;color:inherit;text-decoration:none;transition:transform var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out)}.flow-card:hover{transform:translateY(-3px);border-color:#6a5641}.flow-card:focus-visible{outline:3px solid var(--chalk-gold);outline-offset:3px}.flow-card .n{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--chalk-gold);color:#221c16;font-size:20px;font-weight:800}.flow-card h2{margin-top:16px;font-size:26px;font-weight:700}.flow-card p{margin-top:8px;font-size:17px;line-height:1.5;color:#b8ab9c}.flow-card .next{margin-top:16px;display:block;font-size:15px;font-weight:700;color:#8fb4ff}@media(max-aspect-ratio:1/1),(max-width:700px){:root{--u: clamp(.7px, min(.18vw, .13vh), 1.35px);--edge-x: calc(var(--u) * 60)}.stage.paper{padding:calc(var(--u) * 150) var(--edge-x) calc(var(--u) * 60)}.course-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(5,minmax(0,1fr));overflow-y:auto}.course-top{grid-template-columns:minmax(0,1fr)}.course-hero{display:none}.episode{flex-basis:calc((100% - var(--gap)) / 2)}.course-foot{flex-direction:column;align-items:stretch}.progress-panel{max-width:none;width:100%}.sheet{grid-template-columns:minmax(0,1fr);height:auto;max-height:calc(100% - var(--u) * 120)}.sheet .plate{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.listening .wave i{transform:none}}.room{position:absolute;inset:0;z-index:var(--z-scene);display:grid;place-items:center;pointer-events:none;padding-right:17%}.room-poster{position:absolute;right:calc(var(--u) * 96);top:30%;width:calc(var(--u) * 132);height:auto;filter:drop-shadow(0 calc(var(--u) * 10) calc(var(--u) * 20) rgba(60,40,15,.18))}@media(max-aspect-ratio:5 / 4){.room-poster{display:none}}.board-wrap{position:relative;width:min(calc(var(--u) * 1420),84%);aspect-ratio:971 / 574;max-height:78dvh;margin-bottom:calc(var(--u) * 60);filter:drop-shadow(0 calc(var(--u) * 22) calc(var(--u) * 46) rgba(60,40,15,.22))}.board-art{width:100%;height:100%;display:block;object-fit:contain}.chalk{position:absolute;left:2.68%;top:4.53%;width:94.54%;height:90.59%;padding:3.4% 4%;display:flex;flex-direction:column;font-family:Chalkboard SE,Segoe Print,Comic Sans MS,Comic Neue,sans-serif;color:#f4efe6;overflow:hidden}.chalk-title{flex:none;font-size:calc(var(--u) * 50);font-weight:700;line-height:1.1;color:#ffe08a;text-shadow:0 calc(var(--u) * 3) calc(var(--u) * 10) rgba(0,0,0,.45);text-wrap:balance}.chalk-title:after{content:"";display:block;height:calc(var(--u) * 5);margin-top:calc(var(--u) * 10);border-radius:calc(var(--u) * 4);background:linear-gradient(90deg,#ffd873,#ffd87324);opacity:.85}.chalk-points{flex:1;min-height:0;margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:min-content;align-content:center;gap:calc(var(--u) * 20) calc(var(--u) * 40)}.chalk-points li{display:flex;align-items:center;gap:calc(var(--u) * 14);font-size:calc(var(--u) * 27);line-height:1.25;color:#f4efe6bd;transition:color .26s ease}.chalk-points li .tick{flex:none;width:calc(var(--u) * 33);height:calc(var(--u) * 33);display:grid;place-items:center;border:calc(var(--u) * 3) solid rgba(110,198,255,.55);border-radius:calc(var(--u) * 9);color:#6ec6ff}.chalk-points li .tick svg{width:72%;height:72%}.chalk-points li.is-now{color:#fffdf7;font-weight:700}.chalk-points li.is-now .tick{border-color:#ffd873;box-shadow:0 0 0 calc(var(--u) * 6) #ffd87329}.chalk-points li.is-done{color:#eaf6ff}.chalk-points li.is-done .tick{border-color:#6ec6ff;background:#6ec6ff2e}.chalk{transition:opacity .7s var(--ease-out)}body.is-intro .chalk{opacity:0}@media(prefers-reduced-motion:reduce){.chalk,.chalk-points li{transition:none}}.teacher3d{display:block;width:100%;height:100%;opacity:0;transition:opacity .7s var(--ease-out)}.teacher3d.is-ready{opacity:1}.teacher-wait{position:absolute;right:6%;bottom:34%;z-index:var(--z-scene);display:flex;align-items:center;gap:calc(var(--u) * 14);padding:calc(var(--u) * 14) calc(var(--u) * 26);border-radius:999px;background:#ffffffd1;box-shadow:var(--lift-1);color:var(--ink-faint);font-size:calc(var(--u) * 26);font-weight:600;white-space:nowrap;animation:pill-in .24s var(--ease-out) both}.teacher-wait .dots{display:flex;gap:calc(var(--u) * 6)}.teacher-wait .dots i{width:calc(var(--u) * 10);height:calc(var(--u) * 10);border-radius:50%;background:var(--blue);animation:wait-dot 1.1s ease-in-out infinite}.teacher-wait .dots i:nth-child(2){animation-delay:.15s}.teacher-wait .dots i:nth-child(3){animation-delay:.3s}@keyframes wait-dot{0%,to{opacity:.25}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.teacher-wait .dots i{animation:none;opacity:.7}}.avatar-check{position:absolute;inset:0}.teacher-stage{position:absolute;right:calc(var(--u) * -40);bottom:0;z-index:var(--z-scene);width:32%;height:94%;pointer-events:none}@media(max-aspect-ratio:5/4){.teacher-stage{display:none}.room{padding-right:0}}#root{min-height:100%}
