:root{--font-display:var(--font-sans);--bg:#f6f5fd;--ink:#15132b;--muted:#575470;--card:#fff;--line:#e3e1f2;--line-strong:#c4c0e0;--accent:#4b3fd1;--accent-hover:#3d32b3;--soft:#ecebfd;--brand:#4b3fd1;--coral:#e2513f;--lavender:#efedfd;--peach:#fff0e6;--butter:#fff7d6;--mint:#e6f6ee;--radius:18px;--radius-sm:12px;--shadow:0 1px 2px #0d1f1f0d;--shadow-lift:0 10px 28px #0d1f1f1a}body{font-feature-settings:"cv11", "ss01";letter-spacing:-.005em}h1,h2,h3{font-family:var(--font-sans), sans-serif;letter-spacing:-.025em;color:var(--ink)}h1{font-size:clamp(2rem,4vw,2.9rem);font-weight:900;line-height:1.08}h2{font-weight:800}h3{font-weight:700}a{color:var(--accent);text-underline-offset:.18em}.eyebrow,.hand{font-family:var(--font-hand), cursive;color:var(--coral);letter-spacing:0;font-size:1.45rem;font-weight:700;line-height:1.1}.site-header-wrap,.studio-bar-wrap,.play-bar-wrap{box-shadow:none;background:0 0;border:0;padding:.6rem .75rem 0}.site-header-wrap:after,.studio-bar-wrap:after,.play-bar-wrap:after{display:none}.site-header,.studio-bar{background:var(--brand);color:#fff;border-radius:20px;width:min(1180px,100%);min-height:62px;padding:0 .9rem 0 1.1rem;box-shadow:0 6px 18px #4b3fd147}.site-header .brand,.studio-bar .brand{color:#fff;letter-spacing:-.03em;font-size:1.3rem;font-weight:900}.site-header .header-nav a:not(.btn){color:#ffffffe0;border-radius:999px;font-weight:600}.site-header .header-nav a:not(.btn):hover{color:#fff;background:#ffffff24}.site-header .header-nav a[aria-current=page]{color:#fff;background:#ffffff2e}.site-header .header-nav .btn{color:var(--ink);background:#fff;border-color:#fff}.site-header .header-nav .btn:hover{background:var(--butter);border-color:var(--butter)}.site-header .header-nav .btn.secondary{color:#fff;background:0 0;border-color:#ffffffb3}.site-header .header-nav .btn.secondary:hover{background:#ffffff24}.site-header .icon-btn,.site-header .bell{color:#fff}.site-header .icon-btn:hover,.site-header .bell:hover,.site-header .bell[aria-current=page]{color:#fff;background:#ffffff29}.site-header .bell-count{border-color:var(--brand)}.site-header .avatar{color:var(--accent);background:#fff}.site-header .student-name{color:#fff}.site-header .student-name small{color:#fffc}.site-header .text-btn{color:#fff}.site-header .text-btn:hover{background:#ffffff24}.site-header .menu-list a,.site-header .menu-list button{color:var(--ink)}.site-header .header-nav .menu-list a:not(.btn),.site-header .header-nav .menu-list button{color:var(--ink);background:0 0;border-radius:8px;font-weight:600}.site-header .header-nav .menu-list a:not(.btn):hover,.site-header .header-nav .menu-list button:hover{color:var(--ink);background:var(--lavender)}.site-header .header-nav .menu-list a[aria-current=page]{color:var(--brand);background:var(--soft)}.site-header .menu-head strong{color:var(--ink)}.site-header .menu-head span{color:var(--muted)}.play-bar .brand{color:var(--ink);font-weight:900}.btn{letter-spacing:-.01em;min-height:2.75rem;padding:.6rem 1.35rem;font-weight:800}.btn.small{font-weight:700}.btn.secondary{border:1.5px solid var(--accent);color:var(--accent);background:var(--card)}.btn.secondary:hover{background:var(--lavender)}.btn.go{background:var(--ink);border-color:var(--ink)}.btn.go:hover{background:#2a2650;border-color:#2a2650}.text-btn{border-radius:999px;padding:.25rem .55rem;font-weight:700}.card,.upload-card,.empty-panel,.library-card,.q-card,.settings,.play-panel{border-radius:var(--radius);border-color:var(--line)}.empty-panel{background:var(--lavender);border:0}.empty-panel h2{font-size:1.5rem}.notice{border-radius:var(--radius-sm);background:var(--butter);border-color:#f2e2a0}.notice.info{background:var(--lavender);border-color:#d6d1f7}.banner,.banner.class-banner:not([style]){background:linear-gradient(125deg,#4b3fd1 0%,#6a46d9 55%,#8a4fd6 100%);border-radius:28px;min-height:190px;padding:2rem 2.25rem}.banner h1{letter-spacing:-.03em;font-size:clamp(2rem,4.2vw,3rem);font-weight:900}.banner p{font-family:var(--font-hand), cursive;color:#fff;opacity:.95;font-size:2rem;font-weight:700;line-height:1.15}.banner:after{background:#ffffff1a}.section-title h2{font-size:1.55rem;font-weight:900}.section-title h2:before{content:none}.page-head h1{font-weight:900}.meta-line{color:var(--muted)}.class-card{border-radius:var(--radius);border-color:var(--line);transition:transform .15s,box-shadow .15s}.class-card:hover{box-shadow:var(--shadow-lift);transform:translateY(-2px)}.class-card-top{border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;min-height:104px}.class-card-top h3{letter-spacing:-.02em;font-size:1.25rem;font-weight:800}.stat-card{border-radius:var(--radius);background:var(--lavender);border:0;border-top:0!important}.stat-grid>.stat-card:nth-child(4n+2){background:var(--peach)}.stat-grid>.stat-card:nth-child(4n+3){background:var(--butter)}.stat-grid>.stat-card:nth-child(4n+4){background:var(--mint)}.stat-card strong{font-family:var(--font-sans), sans-serif;letter-spacing:-.03em;font-size:2.3rem;font-weight:900}.stat-card span{color:var(--ink);opacity:.75;font-weight:600}.chip{border-radius:999px;font-weight:600}.chip.on,.segmented .on{background:var(--ink);border-color:var(--ink);color:#fff}.badge{border-radius:999px;font-weight:700}.kind-tag{border-radius:999px;font-weight:800}.auth-card{box-shadow:var(--shadow-lift);border-top:0;border-radius:24px;padding:2rem}.auth-card h1{font-size:2rem;font-weight:900}.student-card{border-top:0}.option-card{border-radius:var(--radius-sm)}.field input,.field textarea,.field select,.input{border-radius:12px}.field input:focus,.field textarea:focus,.field select:focus,.input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #4b3fd133}.site-footer{background:0 0;border-top:0}.progress span{background:linear-gradient(90deg, var(--brand), #8b7cf6)}.score-ring{background:conic-gradient(var(--brand) var(--p), var(--line) 0)}@media (max-width:640px){.site-header-wrap,.studio-bar-wrap,.play-bar-wrap{padding:.4rem .4rem 0}.site-header,.studio-bar{border-radius:16px;padding:0 .5rem 0 .8rem}.banner{border-radius:22px;padding:1.5rem 1.25rem}.banner p{font-size:1.4rem}}.landing{gap:4.5rem;width:min(1180px,100% - 1.5rem);margin:0 auto;padding:.9rem 0 3rem;display:grid}.hand.center,.landing-title{text-align:center}.landing-title{letter-spacing:-.03em;max-width:22ch;margin:.2rem auto 1.6rem;font-size:clamp(1.8rem,3.6vw,2.6rem);font-weight:900}.hero{color:#fff;background:linear-gradient(125deg,#4b3fd1 0%,#6a46d9 55%,#8a4fd6 100%);border-radius:32px;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:2rem;padding:clamp(2rem,5vw,4rem);display:grid;position:relative;overflow:hidden}.hero .confetti{display:none}.hero:before,.hero:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.hero:before{background:#ffffff14;width:420px;height:420px;top:-160px;right:-120px}.hero:after{background:#ffd9cf24;width:260px;height:260px;bottom:-170px;left:38%}.hero-copy{z-index:1;gap:1rem;display:grid;position:relative}.hero h1{color:#fff;letter-spacing:-.04em;max-width:13ch;margin:0;font-size:clamp(2.5rem,6vw,4.4rem);font-weight:900;line-height:1.02}.hero-hand{color:#ffd9cf;margin:0;font-size:1.9rem}.hero-lead{color:#ffffffeb;max-width:34rem;margin:0;font-size:clamp(1.05rem,1.6vw,1.25rem)}.hero-actions{flex-wrap:wrap;gap:.7rem;display:flex}.btn.hero-btn{color:var(--ink);background:#fff;border-color:#fff;min-height:3.1rem;padding:.7rem 1.5rem;font-size:1.05rem}.btn.hero-btn:hover{background:var(--butter);border-color:var(--butter)}.btn.hero-btn.ghost-light{color:#fff;background:0 0;border:2px solid #ffffffbf}.btn.hero-btn.ghost-light:hover{background:#ffffff24}.hero-roles{color:#ffffffd9;margin:0;font-size:.95rem}.hero-roles a{color:#fff;font-weight:700}.hero-art{z-index:1;min-height:300px;position:relative}.mock-card{color:var(--ink);background:#fff;border-radius:20px;gap:.45rem;padding:1.1rem 1.2rem;display:grid;position:absolute;box-shadow:0 18px 40px #15132b47}.mock-quiz{width:min(300px,88%);top:0;left:0;transform:rotate(-3deg)}.mock-quiz strong{letter-spacing:-.02em;font-size:1.05rem;font-weight:800}.mock-option{border:1.5px solid var(--line);border-radius:12px;padding:.45rem .7rem;font-size:.95rem}.mock-option.on{color:#136c39;background:#e9f8ef;border-color:#1f9d55;font-weight:700}.mock-tag{font-family:var(--font-hand), cursive;color:var(--coral);font-size:1.25rem;font-weight:700;line-height:1}.mock-progress{justify-items:start;width:190px;bottom:0;right:0;transform:rotate(4deg)}.mock-bars{align-items:end;gap:.6rem;width:100%;height:90px;display:flex}.mock-bars span{background:#c9c3fb;border-radius:10px 10px 4px 4px;flex:1}.mock-bars span:last-child{background:var(--brand)}.mock-change{color:#136c39;font-weight:900}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.step{border-radius:24px;align-content:start;gap:.4rem;padding:1.6rem;display:grid}.step h3{letter-spacing:-.02em;margin:.3rem 0 0;font-size:1.35rem;font-weight:900}.step p{color:var(--muted);margin:0}.step-number{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:2.6rem;height:2.6rem;font-size:1.15rem;font-weight:900;display:grid}.tone-lavender{background:var(--lavender)}.tone-peach{background:var(--peach)}.tone-mint{background:var(--mint)}.tone-butter{background:var(--butter)}.features{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.feature{border-radius:24px;align-content:start;gap:.35rem;padding:1.5rem;display:grid}.feature h3{letter-spacing:-.02em;margin:.35rem 0 0;font-size:1.2rem;font-weight:800}.feature p{color:var(--muted);margin:0}.feature-icon{width:3rem;height:3rem;box-shadow:var(--shadow);background:#fff;border-radius:16px;place-items:center;font-size:1.5rem;display:grid}.roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.role{border-radius:24px;align-content:start;gap:.5rem;padding:1.6rem;display:grid}.role h3{letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:900}.role p{color:var(--muted);margin:0}.role .row{margin-top:.4rem}.cta-band{background:var(--ink);color:#fff;text-align:center;border-radius:32px;justify-items:center;gap:.6rem;padding:clamp(2rem,5vw,3.5rem);display:grid}.cta-band h2{color:#fff;letter-spacing:-.03em;margin:0;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900}.cta-band .hand{color:#ffd9cf;margin:0 0 .6rem;font-size:1.8rem}@media (max-width:860px){.hero{grid-template-columns:minmax(0,1fr)}.hero-art{min-height:270px}.steps,.features,.roles{grid-template-columns:minmax(0,1fr)}.landing{gap:3rem}}@media (max-width:480px){.hero{border-radius:24px;padding:1.75rem 1.25rem}.hero-actions .btn{flex:100%}.mock-progress{width:160px}}.testimonials{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.testimonial{border-radius:24px;align-content:start;gap:.8rem;margin:0;padding:1.6rem;display:grid}.testimonial .stars{color:#f2a516;letter-spacing:.1em;font-size:1.05rem}.testimonial blockquote{color:var(--ink);margin:0;font-size:1.08rem;font-weight:500;line-height:1.5}.testimonial figcaption{gap:.1rem;display:grid}.testimonial figcaption strong{font-weight:800}.testimonial figcaption span{color:var(--muted);font-size:.92rem}@media (max-width:860px){.testimonials{grid-template-columns:minmax(0,1fr)}}.pricing-lead{max-width:36rem;margin:-.8rem auto 1.8rem}.center{text-align:center}.plans{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:1rem;display:grid}.plan-card{border-radius:26px;flex-direction:column;gap:.7rem;padding:1.8rem;display:flex;position:relative}.plan-card>.btn{margin-top:auto}.plan-card ul{flex:1;align-content:start}.plan-card h2{letter-spacing:-.02em;margin:0;font-size:1.6rem;font-weight:900}.plan-card.featured{color:#fff;box-shadow:var(--shadow-lift);background:linear-gradient(160deg,#4b3fd1,#7a4bd8)}.plan-card.featured h2,.plan-card.featured .plan-price strong{color:#fff}.plan-card.featured .plan-tagline,.plan-card.featured .plan-small,.plan-card.featured li,.plan-card.featured .plan-price span{color:#ffffffe6}.plan-card.featured .btn{color:var(--ink);background:#fff;border-color:#fff}.plan-flag{background:var(--butter);color:var(--ink);border-radius:999px;padding:.2rem .7rem;font-size:.8rem;font-weight:800;position:absolute;top:1.1rem;right:1.1rem}.plan-price{align-items:baseline;gap:.3rem;margin:0;display:flex}.plan-price strong{letter-spacing:-.03em;color:var(--ink);font-size:2.4rem;font-weight:900}.plan-price span{color:var(--muted);font-weight:600}.plan-small{color:var(--muted);margin:-.4rem 0 0;font-size:.9rem}.plan-tagline{color:var(--muted);margin:0}.plan-card ul{gap:.45rem;margin:.3rem 0 .6rem;padding:0;list-style:none;display:grid}.plan-card li{padding-left:1.6rem;position:relative}.plan-card li:before{content:"✓";color:#1f9d55;font-weight:900;position:absolute;left:0}.plan-card.featured li:before{color:var(--butter)}.segmented.interval{background:#ffffff29;border-radius:999px;justify-self:start;gap:.2rem;padding:.2rem;display:inline-flex}.segmented.interval button{color:#fff;background:0 0;border:0;border-radius:999px;padding:.35rem .8rem;font-weight:700}.segmented.interval button.on{color:var(--ink);background:#fff}.segmented.interval .save{color:#1f9d55;margin-left:.2rem;font-size:.75rem;font-weight:800}.segmented.interval button:not(.on) .save{color:var(--butter)}.narrow-section{width:min(760px,100%);margin:0 auto}.school-perks{flex-wrap:wrap;justify-content:center;gap:.5rem;max-width:46rem;margin:0 auto;padding:0;list-style:none;display:flex}.school-perks li{background:var(--mint);border-radius:999px;padding:.35rem .9rem;font-weight:700}.enquiry-card{border-radius:24px;gap:.4rem;padding:1.8rem;display:grid}.enquiry-card.sent{text-align:center;justify-items:center}.enquiry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;display:grid}.enquiry-card .btn{justify-self:start;margin-top:.4rem}.plan-now{border:0;gap:.7rem;display:grid}.plan-now .hand{margin:0}.plan-now h2{margin:0;font-size:2rem;font-weight:900}.plan-now .btn{justify-self:start}.meter{gap:.3rem;display:grid}.meter-track{background:#15132b14;border-radius:999px;height:.55rem;display:block;overflow:hidden}.meter-track span{background:var(--brand);border-radius:999px;height:100%;display:block}.meter-track span.near{background:#e37400}.meter-track span.full{background:#c5221f}.upgrade-card{gap:.6rem;display:grid}.upgrade-options{gap:.5rem;display:grid}.upgrade-options small{opacity:.85;margin-left:.3rem;font-weight:600}@media (max-width:860px){.plans,.enquiry-grid{grid-template-columns:minmax(0,1fr)}}.page.narrow>section+section,.page.narrow>p+section{margin-top:1rem}.live-stage{color:#fff;background:radial-gradient(circle at 15% 10%,#6a46d9 0%,#0000 45%),radial-gradient(circle at 90% 90%,#8a4fd6 0%,#0000 40%),#3a2fb5;flex-direction:column;gap:1.5rem;min-height:100vh;padding:1.2rem clamp(1rem,3vw,2.5rem) 2rem;display:flex}.live-top{flex-wrap:wrap;align-items:center;gap:1rem;font-weight:700;display:flex}.live-top strong{margin-right:auto;font-size:1.15rem;font-weight:900}.live-top .text-btn{color:#fff}.live-code-small{background:#ffffff29;border-radius:999px;padding:.25rem .8rem}.live-stage .hand{color:#ffd9cf;text-align:center;margin:0;font-size:2rem}.live-lobby{text-align:center;justify-items:center;gap:1rem;margin:auto 0;display:grid}.live-join{margin:0;font-size:clamp(1.2rem,2.4vw,1.8rem)}.live-code{letter-spacing:.06em;color:var(--ink);font-variant-numeric:tabular-nums;background:#fff;border-radius:28px;margin:0;padding:.15em .45em;font-size:clamp(4rem,13vw,9rem);font-weight:900;line-height:1}.live-players{flex-wrap:wrap;justify-content:center;gap:.5rem;max-width:60rem;min-height:3rem;display:flex}.live-players .muted{color:#ffffffd9;margin:0}.live-chip{color:var(--ink);background:#ffffffeb;border:0;border-radius:999px;padding:.45rem 1rem;font-size:1.05rem;font-weight:800;animation:.25s ease-out pop}.live-chip:hover{background:#ffd9cf;text-decoration:line-through}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.live-actions{justify-content:center}.live-count{background:#ffffff24;border-radius:999px;padding:.45rem 1rem;font-size:1.1rem;font-weight:800}.live-question{flex:1;align-content:center;gap:1.4rem;display:grid}.live-q-head{justify-content:center;align-items:center;gap:1.5rem;display:flex}.live-q-head h1{color:var(--ink);text-align:center;background:#fff;border-radius:24px;flex:1;max-width:60rem;margin:0;padding:1.2rem 1.6rem;font-size:clamp(1.6rem,3.6vw,2.8rem)}.live-timer{width:6rem;height:6rem;color:var(--ink);background:#fff;border-radius:50%;flex:none;place-items:center;font-size:2.6rem;font-weight:900;display:grid;box-shadow:0 0 0 6px #ffffff40}.live-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;width:100%;max-width:70rem;margin:0 auto;display:grid}.live-tile{color:#fff;border-radius:20px;align-items:center;gap:1rem;min-height:6.5rem;padding:1rem 1.3rem;font-size:clamp(1.15rem,2.2vw,1.7rem);font-weight:800;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 -6px #0000002e}.live-tile .shape{opacity:.9;font-size:2rem}.live-tile .text{flex:1}.live-tiles.revealed .live-tile.wrong{opacity:.35}.live-tile.right{box-shadow:0 0 0 5px #fff,inset 0 -6px #0000002e}.live-tile .tally{text-align:right;min-width:4rem;font-size:1.6rem;position:relative}.live-tile .bar{background:#ffffffd9;border-radius:999px;height:.35rem;position:absolute;bottom:-.6rem;left:0}.live-typed{text-align:center;background:#ffffff1f;border-radius:20px;width:100%;max-width:50rem;margin:0 auto;padding:1.5rem;font-size:1.6rem}.live-board{justify-items:center;gap:1rem;margin:auto 0;display:grid}.live-board ol{gap:.6rem;width:min(40rem,100%);margin:0;padding:0;list-style:none;display:grid}.live-board li{color:var(--ink);background:#fff;border-radius:18px;align-items:center;gap:1rem;padding:.9rem 1.2rem;font-size:1.4rem;font-weight:800;animation:.3s ease-out both pop;display:flex}.live-board li:nth-child(2){animation-delay:50ms}.live-board li:nth-child(3){animation-delay:.1s}.live-board li:nth-child(4){animation-delay:.15s}.live-board li:nth-child(5){animation-delay:.2s}.live-board .rank{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:2.4rem;height:2.4rem;font-size:1.1rem;display:grid}.live-board .name{flex:1}.live-board .score{font-variant-numeric:tabular-nums}.live-podium{justify-items:center;gap:1.2rem;margin:auto 0;display:grid}.podium{grid-template-columns:repeat(3,minmax(0,12rem));align-items:end;gap:.8rem;display:grid}.podium .step{justify-items:center;gap:.3rem;animation:.5s ease-out both pop;display:grid}.podium .step.first{animation-delay:.6s}.podium .step.second{animation-delay:.3s}.podium .name{text-align:center;font-size:1.4rem;font-weight:900}.podium .score{opacity:.85;font-weight:700}.podium .block{width:100%;color:var(--ink);background:#fff;border-radius:16px 16px 4px 4px;place-items:center;font-size:2.6rem;font-weight:900;display:grid}.podium .first .block{background:#ffd75e;height:11rem}.podium .second .block{background:#e3e1f2;height:8rem}.podium .third .block{background:#f6c9a8;height:6rem}.live-all{background:#ffffff1f;border-radius:16px;width:min(30rem,100%);padding:.7rem 1rem}.live-all ol{gap:.2rem;margin:.5rem 0 0;padding-left:0;list-style:none;display:grid}.live-end{align-self:center;color:#ffffffbf!important}.live-phone{color:#fff;text-align:center;background:#3a2fb5;flex-direction:column;gap:1rem;min-height:100vh;padding:1rem;transition:background .3s;display:flex}.live-phone.good{background:#1f9d55}.live-phone.bad{background:#c43d2f}.live-phone h1{color:#fff;margin:0;font-size:clamp(1.8rem,7vw,2.6rem)}.live-phone .hand{color:#ffd9cf;margin:0;font-size:1.8rem}.live-phone-top{background:#0000002e;border-radius:14px;justify-content:space-between;padding:.6rem .9rem;font-weight:800;display:flex}.live-phone-mid{justify-items:center;gap:.6rem;margin:auto 0;display:grid}.live-points{margin:0;font-size:2.6rem;font-weight:900}.live-phone-q{flex-direction:column;flex:1;gap:.8rem;display:flex}.live-phone-meta{opacity:.85;margin:0;font-weight:700}.live-phone-prompt{color:var(--ink);background:#fff;border-radius:16px;margin:0;padding:.9rem;font-size:1.25rem;font-weight:800}.live-pad{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.live-pad-btn{color:#fff;border:0;border-radius:18px;place-items:center;gap:.3rem;min-height:7rem;padding:1rem .6rem;font-size:1.15rem;font-weight:800;display:grid;box-shadow:inset 0 -6px #0003}.live-pad-btn .shape{font-size:2rem}.live-pad-btn:active{transform:scale(.97)}.live-pad-btn.on{box-shadow:0 0 0 4px #fff,inset 0 -6px #0003}.live-type{gap:.6rem;display:grid}.live-type input{font:inherit;text-align:center;border:0;border-radius:16px;padding:.9rem;font-size:1.4rem}.live-join-card .hand{margin:0}.live-code-input{letter-spacing:.2em;text-align:center;font-size:1.8rem!important}@media (max-width:700px){.live-tiles{grid-template-columns:minmax(0,1fr)}.live-q-head{flex-direction:column-reverse}.podium{grid-template-columns:repeat(3,minmax(0,1fr))}}.explore-hero{text-align:center;justify-items:center;gap:.4rem;padding:1.5rem 0 1rem;display:grid}.explore-hero h1{margin:0;font-size:clamp(2rem,5vw,3rem)}.explore-hero .lede{max-width:40rem;margin:0}.explore-search{gap:.5rem;width:min(100%,36rem);margin-top:.8rem;display:flex}.explore-search input{border:2px solid var(--line-strong);min-width:0;font:inherit;background:var(--card);border-radius:999px;flex:1;padding:.7rem 1.1rem}.explore-search input:focus{border-color:var(--brand);outline:none}.explore h2{margin:1.6rem 0 .8rem;font-size:1.3rem}.explore h2 small{font-size:.95rem;font-weight:600}.curriculum-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));gap:.7rem;display:grid}.curriculum-card{border-radius:var(--radius);background:var(--card);border:2px solid var(--line);color:var(--ink);gap:.15rem;padding:1rem 1.1rem;text-decoration:none;transition:transform .15s,border-color .15s;display:grid}.curriculum-card:hover,.curriculum-card.on{border-color:var(--brand);transform:translateY(-2px)}.curriculum-card .flag{font-size:1.8rem;line-height:1.2}.curriculum-card small,.stage-chip small,.topic-row small{color:var(--muted)}.stage-row{flex-wrap:wrap;gap:.6rem;display:flex}.stage-chip{background:var(--lavender);color:var(--ink);border:2px solid #0000;border-radius:16px;padding:.7rem 1.1rem;text-decoration:none;display:grid}.stage-chip:hover{border-color:var(--brand)}.subject-group h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:1.2rem 0 .5rem;font-size:.85rem}.subject-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));gap:.55rem;display:grid}.subject-tile{background:var(--card);border:1px solid var(--line);color:var(--ink);border-radius:14px;align-items:center;gap:.55rem;padding:.75rem .9rem;font-weight:700;text-decoration:none;display:flex}.subject-tile:hover{border-color:var(--brand);background:var(--soft)}.subject-tile span{font-size:1.3rem}.subject-banner{color:#fff;background:linear-gradient(125deg,#4b3fd1 0%,#6a46d9 55%,#8a4fd6 100%);border-radius:28px;align-items:center;gap:1rem;margin:.5rem 0 1.2rem;padding:1.5rem 1.75rem;display:flex}.subject-banner h1{color:#fff;margin:0}.subject-banner .meta-line{color:#ffffffe0;margin:.2rem 0 0}.subject-big{background:#ffffff2e;border-radius:20px;flex:none;place-items:center;width:4rem;height:4rem;font-size:2.6rem;display:grid}.topic-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.topic-row{background:var(--card);border:1px solid var(--line);color:var(--ink);border-radius:14px;justify-content:space-between;align-items:center;gap:.8rem;padding:.75rem 1rem;text-decoration:none;display:flex}.topic-row:hover{border-color:var(--brand)}.topic-row>span:first-child{display:grid}.topic-row .topic-icon{font-size:1.4rem;display:block}.topic-row:has(.topic-icon){justify-content:flex-start}.practice-start{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.practice-start h2{margin:0}.preparing{text-align:center}.spinner{border:4px solid var(--lavender);border-top-color:var(--brand);border-radius:50%;width:2.4rem;height:2.4rem;animation:.9s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.library-teacher{margin-top:1rem}.library-teacher h2{margin:0}.library-actions{flex-wrap:wrap;gap:.5rem;margin:.6rem 0}.library-list{gap:.5rem;margin:.8rem 0 0;padding-left:1.4rem;display:grid}.library-list li{border-radius:12px;padding:.5rem .6rem}.library-list li.on{background:var(--soft)}.library-list .check-line{align-items:flex-start}.library-list .check-line>span{gap:.15rem;display:grid}.library-list small{color:var(--muted)}.answer-text{color:#157a45;white-space:pre-line;font-weight:700}.report-btn{color:var(--muted);font-size:.85rem}.report-box{flex-wrap:wrap;gap:.35rem;margin-top:.4rem;display:flex}.report-box .chip{padding:.3rem .65rem;font-size:.82rem}.report-done{color:#157a45;font-weight:600}.explore-note{text-align:center;margin-top:1rem}.practice-progress{background:var(--line);border-radius:999px;height:8px;margin-bottom:.6rem;overflow:hidden}.practice-progress span{background:linear-gradient(90deg, var(--brand), #8a4fd6);height:100%;transition:width .4s;display:block}.practice-tally{color:#157a45;font-weight:800}.practice-feedback{text-align:center;border-radius:var(--radius);justify-items:center;gap:.35rem;margin-top:1rem;padding:1rem;display:grid}.practice-right .practice-feedback{background:#e3f6ea}.practice-wrong .practice-feedback{background:#fdeceb}.practice-big{margin:0;font-size:1.8rem;font-weight:900}.practice-right .practice-big{color:#157a45}.practice-wrong .practice-big{color:#b3261e}.practice-answer{margin:0}.practice-answer strong{white-space:pre-line;text-align:left;vertical-align:top;display:inline-block}.practice-why{color:var(--muted);max-width:36rem;margin:0}.practice-done{text-align:center}.student-link{color:#fff;background:#ffffff29;border-radius:999px;padding:.35rem .8rem;font-weight:700;text-decoration:none}.student-link:hover{background:#ffffff47}@media (max-width:560px){.explore-search{flex-direction:column}.subject-banner{padding:1.2rem}.subject-big{width:3.2rem;height:3.2rem;font-size:2rem}}.option.tf.good{color:var(--good);border-color:var(--good);background:color-mix(in srgb, var(--good) 13%, var(--card))}.option.tf.bad{color:var(--bad);border-color:var(--bad);background:color-mix(in srgb, var(--bad) 11%, var(--card))}.folder-layout{grid-template-columns:minmax(13rem,16rem) minmax(0,1fr);align-items:start;gap:1rem;display:grid}@media (max-width:760px){.folder-layout{grid-template-columns:minmax(0,1fr)}}.folder-panel{z-index:4;padding:.8rem;position:sticky;top:5.5rem}@media (max-width:760px){.folder-panel{position:static}}.folder-panel ul{margin:0;padding:0;list-style:none}.folder-panel>ul{gap:.1rem;margin-top:.5rem;display:grid}.folder-row{border-radius:10px;align-items:center;gap:.2rem;display:flex}.folder-row.on,button.folder-row.on{background:var(--soft)}.folder-row:hover{background:var(--lavender)}.folder-name{text-align:left;min-width:0;font:inherit;color:var(--ink);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:10px;flex:1;padding:.4rem .5rem;overflow:hidden}button.folder-row.folder-name{width:100%}.folder-row.on .folder-name,button.folder-row.on{font-weight:700}.folder-count{color:var(--muted);margin-left:.35rem;font-weight:600}.folder-menu summary{padding:.15rem .45rem}.folder-menu .menu-list{z-index:30;min-width:14rem;left:auto;right:0}.menu-move{color:var(--muted);gap:.25rem;padding:.45rem .75rem;font-size:.9rem;display:grid}.menu-move select{font:inherit;border:1px solid var(--line-strong);border-radius:8px;padding:.3rem}.menu-note{padding:.5rem .75rem;display:block}.folder-edit{align-items:center;gap:.35rem;padding:.25rem 0;display:flex}.folder-edit input{border:2px solid var(--brand);min-width:0;font:inherit;border-radius:10px;flex:1;padding:.35rem .55rem}.folder-crumb{margin:0 0 .6rem;font-size:1.05rem;font-weight:800}.folder-badge{background:var(--butter)}.library-folders{flex-wrap:wrap;gap:.8rem;margin:.4rem 0}.library-folders .field{min-width:14rem}.mode-toggle{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:720px){.mode-toggle{grid-template-columns:minmax(0,1fr)}}.mode-option.locked{opacity:.6;cursor:not-allowed}.game-intro{text-align:center;justify-items:center;gap:.6rem;display:grid}.game-intro h1{margin:0}.game-rules{text-align:left;gap:.45rem;margin:.4rem 0 .8rem;padding:0;list-style:none;display:grid}.game-rules li{background:var(--lavender);border-radius:999px;padding:.5rem 1rem;font-weight:600}.game-rules span{margin-right:.4rem}.game{gap:.8rem;display:grid}.game-bar{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.game-bar .exam-title{flex:12rem}.game-score{background:var(--brand);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;padding:.3rem .9rem;font-weight:800}.game-streak{background:var(--butter);color:var(--ink);border-radius:999px;padding:.3rem .8rem;font-weight:800}.game-streak.hot{background:#ffd9c7;animation:.25s ease-out pop}.game-progress{background:var(--line);border-radius:999px;height:10px;overflow:hidden}.game-progress span{background:linear-gradient(90deg, var(--brand), #8a4fd6);border-radius:inherit;height:100%;transition:width .4s;display:block}.game-question .sending{opacity:.6;pointer-events:none}.game-feedback{text-align:center;justify-items:center;gap:.5rem;padding-block:2rem;display:grid}.game-big{letter-spacing:-.03em;margin:0;font-size:clamp(2rem,6vw,3rem);font-weight:900}.game-points{color:#157a45;margin:0;font-size:1.6rem;font-weight:900}.game-answer{margin:0;font-size:1.1rem}.game-answer strong{white-space:pre-line;text-align:left;vertical-align:top;display:inline-block}.game-why{max-width:36rem;color:var(--muted);margin:0}.game-right .game-feedback{background:#e3f6ea;border-color:#9fd9b6}.game-right .game-big{color:#157a45}.game-wrong .game-feedback{background:#fdeceb;border-color:#f2b8b1}.game-wrong .game-big{color:#b3261e}.game-saved .game-feedback{background:var(--lavender)}.game-board{text-align:left;width:100%;max-width:32rem;margin:1rem auto}.game-board h2{margin:0 0 .5rem;font-size:1.15rem}.game-board ol{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.game-board li{background:var(--card);border:1px solid var(--line);border-radius:14px;align-items:center;gap:.7rem;padding:.5rem .8rem;display:flex}.game-board li.me{border-color:var(--brand);background:var(--soft)}.game-board .rank{background:var(--lavender);border-radius:50%;flex:none;place-items:center;width:1.8rem;height:1.8rem;font-weight:800;display:grid}.game-board .top1 .rank{background:#ffd54f}.game-board .top2 .rank{background:#dcdfe6}.game-board .top3 .rank{background:#f0b98a}.game-board .name{flex:1;font-weight:600}.game-board .name small{color:var(--muted);font-weight:500}.game-board .score{font-variant-numeric:tabular-nums;font-weight:800}.game-teacher{margin-top:1rem}.game-teacher .game-board{max-width:none;margin:.5rem 0 0}.live-dot{color:#157a45;align-items:center;gap:.35rem;font-size:.9rem;font-weight:700;display:inline-flex}.live-dot:before{content:"";background:#1f9d55;border-radius:50%;width:.55rem;height:.55rem;animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.3}}.game-note{margin:.6rem 0 0;font-size:.92rem}.practice-callout{color:var(--ink);background:var(--butter);border-color:#f1e2a2;align-items:center;gap:.9rem;margin:1rem 0;text-decoration:none;display:flex}.practice-callout>span:first-child{font-size:1.8rem}.practice-callout>span:nth-child(2){flex:1;display:grid}.practice-callout small{color:var(--muted)}.practice-points{color:#157a45;margin:0;font-weight:800}.progress-strip{flex-wrap:wrap;align-items:center;gap:.6rem;margin:0 0 .8rem;font-size:.92rem;display:flex}.goal-bar{background:var(--line);border-radius:999px;flex:8rem;min-width:6rem;height:10px;display:block;overflow:hidden}.goal-bar>span{border-radius:inherit;background:linear-gradient(90deg,#1f9d55,#6ccf8e);height:100%;transition:width .4s;display:block}.streak-chip{background:#ffe1d6;border-radius:999px;padding:.2rem .65rem;font-weight:700}.mastery-chip{background:var(--lavender);white-space:nowrap;border-radius:999px;padding:.2rem .7rem;font-size:.85rem;font-weight:700}.mastery-chip.learning{color:#9a2a20;background:#fdeceb}.mastery-chip.practising{background:var(--butter);color:#7a5600}.mastery-chip.mastered{color:#157a45;background:#e3f6ea}.mastery-card{border-radius:var(--radius);background:var(--card);border:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.7rem;margin-bottom:1rem;padding:.8rem 1rem;display:flex}.earned{gap:.4rem;margin-top:1rem;display:grid}.earned p{background:var(--butter);border-radius:14px;margin:0;padding:.6rem .9rem}.practice-hero{color:#fff;background:linear-gradient(125deg,#4b3fd1 0%,#6a46d9 55%,#8a4fd6 100%);border-radius:28px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.2rem;margin-bottom:1rem;padding:1.75rem 2rem;display:flex}.practice-hero h1{color:#fff;margin:.1rem 0}.practice-hero .lede{color:#ffffffe6;max-width:34rem}.practice-hero .hand{color:var(--butter)}.practice-hero .row{flex-wrap:wrap;gap:.6rem;margin-top:.8rem}.goal-ring{--p:0%;background:conic-gradient(#ffd54f var(--p), #ffffff38 0);border-radius:50%;flex:none;place-items:center;width:9rem;height:9rem;display:grid}.goal-ring>span{text-align:center;background:#3a2fb5;border-radius:50%;place-content:center;width:7.2rem;height:7.2rem;display:grid}.goal-ring b{font-size:1.8rem}.goal-ring small{color:#ffffffd9}.goal-picker{flex-wrap:wrap;align-items:center;gap:.4rem;margin:.8rem 0 .4rem;display:flex}.goal-picker>span{margin-right:.3rem;font-weight:700}.goal-picker .chip.on{background:var(--brand);color:#fff;border-color:var(--brand)}.board-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));gap:.8rem;display:grid}.board-grid .game-board{max-width:none;margin:0}.board-grid h3{margin:0 0 .5rem;font-size:1.05rem}.cert-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,12rem),1fr));gap:.7rem;display:grid}.cert-card{text-align:center;border-radius:var(--radius);background:var(--card);color:var(--ink);border:2px solid #f0c75e;justify-items:center;gap:.2rem;padding:1rem;text-decoration:none;display:grid}.cert-card small{color:var(--muted)}.cert-medal{font-size:2rem}.certificate{aspect-ratio:1.414;background:linear-gradient(135deg,#f0c75e,#fff3c4 40%,#f0c75e);border-radius:12px;max-width:46rem;margin:1rem auto;padding:1rem}.certificate.tier-silver,.certificate.tier-platinum{background:linear-gradient(135deg,#c9ced6,#f4f6f9 40%,#c9ced6)}.certificate.tier-bronze{background:linear-gradient(135deg,#d79a66,#fbe3cf 40%,#d79a66)}.certificate-inner{text-align:center;background:#fffdf7;border:3px double #15132b59;border-radius:8px;place-content:center;justify-items:center;gap:.35rem;height:100%;padding:2rem;display:grid;position:relative}.certificate-brand{align-items:center;gap:.4rem;margin:0;font-weight:800;display:flex}.certificate-brand .mark{width:1.6rem;height:1.6rem}.certificate h1{margin:0;font-size:clamp(2rem,5vw,3rem)}.certificate-to,.certificate-for,.certificate-school,.certificate-date{color:var(--muted);margin:0}.certificate-name{font-family:var(--font-hand), cursive;color:var(--brand);margin:.2rem 0;font-size:clamp(2.2rem,6vw,3.4rem)}.certificate-for{color:var(--ink);font-size:1.15rem}.certificate-medal{font-size:2.6rem;position:absolute;bottom:1.2rem;right:1.5rem}.certificate-actions{gap:.6rem}@media print{.certificate{box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;margin:0 auto}@page{size:A4 landscape;margin:10mm}}@media (max-width:560px){.practice-hero{padding:1.3rem}.goal-ring{width:7.5rem;height:7.5rem}.goal-ring>span{width:6rem;height:6rem}}@media screen and (max-width:700px){.certificate{aspect-ratio:auto}.certificate-inner{padding:1.5rem 1rem}.certificate-medal{font-size:2.2rem;position:static}}.count-input{text-align:center;width:3.2rem;font:inherit;border:1px solid var(--line-strong);background:var(--card);color:var(--ink);-moz-appearance:textfield;border-radius:8px;padding:.2rem .1rem;font-weight:800}.count-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.count-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.count-input:focus{border-color:var(--brand);outline:none}.host-live{flex-wrap:wrap;align-items:center;gap:.35rem;display:inline-flex}.host-seconds select{font:inherit;border:1px solid var(--line-strong);background:var(--card);color:var(--ink);border-radius:999px;padding:.35rem .5rem;font-size:.9rem}.type-picker .type-row .count-input,.stepper .count-input{accent-color:auto;width:3.2rem;height:2rem;padding:.2rem}.read-aloud{margin:-.3rem 0 .8rem;padding:.3rem .75rem;font-size:.88rem}.read-aloud.on{background:var(--brand);color:#fff;border-color:var(--brand)}.live-team-columns{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.8rem;width:min(100%,64rem);display:grid}.live-team-column{border-top:6px solid var(--team);background:#ffffff1a;border-radius:18px;padding:.7rem}.live-team-column h3{color:#fff;margin:0 0 .5rem}.live-team-column h3 small{opacity:.8;margin-left:.3rem}.live-team-column .live-players{justify-content:flex-start;min-height:2.5rem}.live-team-bars{gap:.5rem;width:min(100%,44rem);margin:0 auto 1.2rem;display:grid}.live-team-bar{color:#fff;grid-template-columns:8rem 1fr 5rem;align-items:center;gap:.6rem;font-weight:800;display:grid}.live-team-bar .bar{border-radius:999px;height:1.6rem;transition:width .5s;display:block}.live-team-bar .score{text-align:right;font-variant-numeric:tabular-nums}.live-team-note{color:#fffc;text-align:center;margin:0;font-size:.85rem}.live-team-winner{text-align:center;color:#fff}.live-team-winner h2{color:#fff;margin:0 0 1rem;font-size:clamp(2rem,5vw,3rem)}.live-team-tag{color:#fff;border-radius:999px;margin-left:.4rem;padding:.1rem .5rem;font-size:.8rem;font-weight:800}.live-team-bar .bar{box-shadow:0 0 0 2px #ffffffd9}.live-team-column{border-top-color:var(--team);box-shadow:inset 0 6px 0 var(--team), 0 0 0 1px #ffffff40}.import-panel{margin-top:1rem}.import-option h3{margin:0 0 .2rem}.import-link{flex-wrap:wrap;gap:.5rem;margin:.6rem 0}.import-link .input{flex:18rem;min-width:0}.parent-email{margin-top:1.2rem}.parent-email h2{margin:0 0 .2rem}.parent-email-list{gap:.35rem;margin:.6rem 0;padding:0;list-style:none;display:grid}.parent-email-list li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.parent-email-form{flex-wrap:wrap;gap:.5rem;margin-top:.6rem}.parent-email-form .input{flex:16rem;min-width:0}.order-row.draggable{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:box-shadow .15s,transform .15s}.order-row.draggable .handle{color:var(--muted);padding:.2rem .4rem;font-size:1.1rem}.order-list.is-dragging .order-row{cursor:grabbing}.order-row.dragging{border-color:var(--brand);background:var(--soft);z-index:2;position:relative;transform:scale(1.02);box-shadow:0 10px 24px #15132b2e}.order-hint{margin:.2rem 0 0}.quiz-review .review-head{flex-wrap:wrap;align-items:flex-start;gap:.6rem}.quiz-review h2{margin:0}.review-questions{gap:.55rem;margin:.8rem 0;padding:0;list-style:none;display:grid}.review-question{align-items:flex-start;gap:.7rem;padding:.8rem .9rem;transition:opacity .15s;display:flex}.review-question.off{opacity:.45}.review-question.needs-fix{border-color:var(--bad)}.review-question>.check-line{flex-direction:column;align-items:center;gap:.3rem}.review-body{gap:.3rem;min-width:0;display:grid}.review-choices{gap:.1rem;margin:0;padding-left:1.1rem;display:grid}.review-choices li.right{color:#157a45;font-weight:700}.review-answer{white-space:pre-line;margin:0}
