@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_231f96{font-family:DM Sans,DM Sans Fallback;font-style:normal}.__variable_231f96{--font-dm-sans:"DM Sans","DM Sans Fallback"}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/a1f87af3f44fadbb-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/86f65e8637cc94e3-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/39f449c8730c2295-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/9fabb9c65b63d798-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/f9e1dbe9676d9bb6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/8760c4774489e4ba-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_855f89{font-family:Manrope,Manrope Fallback;font-style:normal}.__variable_855f89{--font-manrope:"Manrope","Manrope Fallback"}:root{--paper:#f8f9f5;--white:#fff;--ink:#25362e;--muted:#5e6862;--line:#e4e8df;--green:#284b3a;--lime:#d3ebae;--purple:#7660a9;--mint:#e7f0de;--peach:#f4e4d4;--lilac:#e9e4f4;--butter:#f3edcf;--radius:20px;--sidebar-w:264px;--font:var(--font-dm-sans),sans-serif;--duration-stagger:80ms;--duration-micro:80ms;--duration-quick:250ms;--duration-fast:450ms;--duration-medium:550ms;--duration-slow:800ms;--ease-smooth-out:cubic-bezier(0.22,1,0.36,1);--ease-in:cubic-bezier(0.4,0,1,1);--ease-bounce:cubic-bezier(0.34,1.36,0.64,1);--distance-micro:6px;--distance-small:8px;--distance-base:16px;--distance-medium:32px;--distance-large:24px;--scale-large:0.92;--scale-medium:0.94}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:.875rem;line-height:1.6}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;color:inherit}button:disabled{cursor:not-allowed;opacity:.5}a,button,input,select,textarea{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8064b5}button{transition:background-color var(--duration-quick) ease-out,color var(--duration-quick) ease-out,border-color var(--duration-quick) ease-out,box-shadow var(--duration-fast) var(--ease-smooth-out),transform var(--duration-fast) var(--ease-smooth-out)}button:active:not(:disabled){transform:translateY(1px);transition-duration:var(--duration-micro)}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--font-manrope),var(--font);line-height:1.25;font-weight:750;letter-spacing:-.04em}h1{font-size:2.125rem}h2{font-size:1.5rem}h3{font-size:1.0625rem}p{color:var(--muted)}svg{flex-shrink:0}textarea{resize:vertical}::selection{background:#d3ebae;color:#25362e}.row{display:flex;align-items:center;gap:10px}.spread{justify-content:space-between}.center{justify-content:center}.wrap{flex-wrap:wrap}.eyebrow{text-transform:uppercase;font-weight:700;letter-spacing:.13em;color:#5d6860;display:inline-flex;align-items:center;gap:6px;line-height:1.5}.eyebrow,.micro{font-size:.75rem}.micro{color:var(--muted);line-height:1.6}.dark-btn,.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:10px;padding:12px 18px;font-weight:600;font-size:.75rem;line-height:1.4;white-space:nowrap}.primary{background:var(--green);color:white;box-shadow:0 3px 0 #152a2080}.dark-btn:hover,.primary:hover{background:#3e604a}.dark-btn{background:#253d2e;color:white}.secondary{background:white;border:1px solid var(--line)}.secondary:hover{background:#edf2e7}.text-btn{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:4px 0;background:transparent;font-weight:600;font-size:.75rem}.text-btn:hover{color:#7960ae}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:7px;background:transparent;border-radius:7px;line-height:1}.icon-btn:hover{background:#e9eee4}.small-btn{padding:9px 14px}.pill{font-size:.75rem;font-weight:600;background:#edf2e9;padding:5px 10px;border:1px solid #dce5d5;border-radius:20px;white-space:nowrap}.online-dot{display:inline-block;width:6px;height:6px;background:#769d65;border-radius:50%;flex-shrink:0}.status-done{color:#426b36;display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;top:-60px;left:20px;z-index:100;background:white;padding:10px}.skip-link:focus{top:12px}.app-shell{min-height:100vh}.sidebar{width:var(--sidebar-w);position:fixed;inset:0 auto 0 0;overflow-y:auto;overscroll-behavior:contain;background:#f0f2e9;border-right:1px solid #e0e6d8;display:flex;flex-direction:column;padding:32px 20px 18px;z-index:30}.brand{display:flex;align-items:center;gap:9px;background:transparent;text-align:left;padding:0 4px;font-family:var(--font-manrope),sans-serif;font-size:1.5625rem;line-height:1.2;font-weight:800;letter-spacing:-1.2px}.brand-icon{width:37px;height:37px;display:grid;place-items:center;border:1.5px solid #304735;border-radius:11px;transform:rotate(-8deg);background:#e0e9cf}.brand-icon svg{transform:rotate(8deg)}.brand-quest{font-weight:500}.brand small{font-family:var(--font);display:block;letter-spacing:.12em;font-size:.625rem;margin-top:6px;color:#676f60}.brand small,.workspace-label{text-transform:uppercase;white-space:nowrap;font-weight:600}.workspace-label{font-size:.75rem;letter-spacing:.08em;gap:8px;color:#686e5e;margin:51px 12px 16px;display:flex;justify-content:space-between;align-items:center}.workspace-label span{font-size:1.0625rem}nav{display:flex;flex-direction:column;gap:7px}nav a,nav button{display:flex;align-items:center;gap:12px;text-decoration:none;padding:13px 14px;border-radius:9px;background:transparent;text-align:left;font-size:.75rem;font-weight:500;color:#666f61;position:relative}nav a{transition:background-color var(--duration-quick) ease-out,color var(--duration-quick) ease-out}nav a:hover,nav button:hover{background:#e5ebdc}nav button.active{background:#dfe8d4;color:#2f4930;font-weight:650}nav button.active svg{stroke-width:2}nav .nav-dot{height:5px;width:5px;background:#476e37;border-radius:50%;margin-left:auto}.new-tag{text-transform:uppercase;font-size:.75rem;padding:2px 5px;border-radius:4px;background:#eee3b7;color:#6a5c29;font-weight:700;letter-spacing:.08em;margin-left:auto}.sidebar-quest{position:relative;margin-top:auto;background:#e3e9d7;border:1px solid #d9e1cc;border-radius:14px;padding:38px 20px 6px;margin-bottom:30px}.sidebar-quest h3{font-size:1rem;letter-spacing:-.045em;text-wrap:balance;margin:0 0 8px}.sidebar-quest p{line-height:1.8;color:#606856;margin:0}.sidebar-quest button{margin-top:4px;min-height:44px;font-size:.75rem;font-weight:650;padding:0;background:transparent;display:flex;align-items:center;gap:6px}.little-star{position:absolute;top:-17px;left:17px;font-size:2.125rem;color:#7f9367;transform:rotate(10deg)}.sidebar-bottom{display:flex;gap:6px;align-items:center;color:#676f5f;font-size:.75rem}.sidebar-bottom svg{margin-left:auto}.main-shell{margin-left:var(--sidebar-w)}.topbar{height:88px;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:0 43px;background:#fbfcf9}.breadcrumb,.topbar{display:flex;align-items:center}.breadcrumb{gap:10px;font-size:.75rem;color:#6d7569}.breadcrumb-root{display:flex;align-items:center;gap:inherit}.breadcrumb b{color:#455343;font-weight:500}.topbar-right{gap:24px}.topbar-right,.xp-pill{display:flex;align-items:center}.xp-pill{gap:6px;font-weight:650;font-size:.75rem;color:#7d6b29}.xp-pill svg{color:#c1a452}.profile-btn{display:flex;align-items:center;gap:9px;background:transparent;text-align:left;font-weight:600;padding:0}.profile-btn small{display:block;color:#6e7469;font-size:.75rem;font-weight:400;margin-top:2px}.avatar{height:34px;width:34px;border-radius:50%;background:#ddd2ec;display:grid;place-items:center;font-family:var(--font-manrope);font-size:.875rem;color:#65507a;border:3px solid #f4f0f8}.profile-btn>svg{margin-left:10px;color:#9ca594}.main-content{max-width:1500px;margin:0 auto;padding:34px 43px 0;outline:none}.welcome{margin-bottom:26px}.welcome h1{font-size:1.9375rem;margin:5px 0;letter-spacing:-.05em}.welcome p{font-size:.75rem}.greeting-star{color:#b9ac60;font-size:1.75rem;margin-left:12px;display:inline-block;transform:rotate(15deg)}.classroom-tag{border:1px solid var(--line);border-radius:30px;padding:7px 11px;display:inline-flex;gap:6px;align-items:center;font-size:.75rem;color:#6b7761;background:#fcfdf9}.dashboard-top{display:grid;grid-template-columns:minmax(0,1fr) 247px;gap:20px}.hero-card{position:relative;min-height:345px;background:#e1eccf;border:1px solid #d9e4c6;border-radius:var(--radius);overflow:hidden;padding:27px 30px}.hero-copy{position:relative;z-index:1;width:60%}.hero-tag{text-transform:uppercase;display:inline-flex;align-items:center;gap:6px;color:#546745;background:#d5e4bf;border:1px solid #cad9b3;border-radius:20px;padding:4px 9px;font-size:.75rem;letter-spacing:.09em;font-weight:600}.hero-card h2{font-size:2.25rem;font-weight:800;letter-spacing:-.055em;line-height:1.15;margin:17px 0 12px}.hero-card h2>span{color:#63814b}.hero-card p{color:#5f6b52;line-height:1.8;margin-bottom:19px}.hero-card .dark-btn{padding:11px 14px;border-radius:8px}.hero-footnote{display:block;font-size:.75rem;color:#5f6b52;margin-top:10px}.quest-art{position:absolute;width:51%;height:auto;right:-2%;top:51%;transform:translateY(-50%)}.progress-card{padding:23px 20px 16px;border-radius:var(--radius);border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;align-items:center}.progress-card>.row{width:100%}.progress-card h3{font-size:.8125rem;letter-spacing:-.025em}.tiny-star{color:#a8a187;font-size:1.25rem}.progress-ring{width:145px;height:145px;margin:15px 0 9px;border-radius:50%;background:conic-gradient(#8ba36b var(--progress),#edf1e7 0);padding:7px;position:relative;transform:rotate(-15deg)}.progress-ring>div{height:100%;border-radius:50%;background:white;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(15deg)}.progress-ring svg{color:#8b73ad;margin-bottom:4px;transform:rotate(15deg)}.progress-ring strong{font-family:var(--font-manrope);font-size:1.6875rem;font-weight:800;line-height:1.2}.progress-ring strong small{font-size:.9375rem;color:#6e7863;font-weight:500}.progress-ring div>span{font-size:.75rem;color:#6e7863;margin-top:4px}.progress-card>p{text-align:center;font-size:.75rem;line-height:1.7;color:#6f7867}.journey-stats{display:flex;gap:17px;border-top:1px solid var(--line);margin-top:16px;padding-top:14px;width:100%;justify-content:center}.journey-stats>div{display:grid;grid-template-columns:18px auto;column-gap:4px;align-items:center}.journey-stats svg{color:#a89b62}.journey-stats div:nth-child(2) svg{color:#9c83b9}.journey-stats b{font-size:.75rem;line-height:1}.journey-stats span{grid-column:1/3;font-size:.75rem;color:#6e7863;margin-top:5px}.progress-card>.text-btn{font-size:.75rem;margin-top:10px}.path-section{margin-top:34px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.section-title h2{font-size:1.3125rem;margin-top:4px}.section-title>.text-btn{font-size:.75rem}.track-switch{display:inline-flex;background:#eef0e8;padding:4px;border:1px solid #e4e7dd;border-radius:10px;gap:3px;margin-bottom:20px}.track-switch button{display:flex;align-items:center;gap:7px;border-radius:7px;background:transparent;color:#666d5e;padding:8px 13px;font-size:.75rem;font-weight:500}.track-switch button.active{background:white;color:#3b5033;box-shadow:0 1px 3px #25362e12}.track-switch button>span{font-size:.75rem;padding:0 4px;background:#e8eddf;color:#616c53;border-radius:4px}.lesson-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.lesson-card{padding:0;background:white;border:1px solid var(--line);border-radius:15px;overflow:hidden;text-align:left;min-width:0}@media (hover:hover){.lesson-card:hover{transform:translateY(-4px);box-shadow:0 8px 22px #344b2d0a;border-color:#b7c5a7}}.lesson-card-visual{position:relative;height:120px;display:flex;align-items:center;justify-content:center;background:#e8e1f1;border-bottom:1px solid #ddd4e6;overflow:hidden}.tone-1 .lesson-card-visual{background:#f2e6d7;border-color:#e8d9c3}.tone-2 .lesson-card-visual{background:#e6ecdb;border-color:#d9e1cd}.tone-3 .lesson-card-visual{background:#e3e9ef;border-color:#d4dee7}.lesson-index{position:absolute;left:15px;top:13px;display:grid;place-items:center;width:23px;height:23px;border:1px solid #b7a9ce;color:#705a8f;font-size:.75rem;border-radius:7px;background:#ffffff35}.tone-1 .lesson-index{color:#766444;border-color:#d3bf9d}.tone-2 .lesson-index{color:#5e6c4e;border-color:#b9c9a5}.lesson-glyph{font-family:monospace;font-size:3.625rem;font-weight:700;letter-spacing:-.09em;transform:rotate(-9deg);color:#957db5;text-shadow:2px 3px 0 #bdaacd}.tone-1 .lesson-glyph{color:#c1a175;text-shadow:2px 3px 0 #d8c3a3}.tone-2 .lesson-glyph{color:#92a973;text-shadow:2px 3px 0 #bacb9f}.tone-3 .lesson-glyph{color:#7d98af;text-shadow:2px 3px 0 #adbed0}.visual-star{position:absolute;right:24px;top:28px;color:#b7a8cb;font-size:1.9375rem;transform:rotate(20deg)}.lesson-card-visual:after{content:"";width:90px;height:90px;border-radius:50%;border:1px dashed #ffffff95;position:absolute;bottom:-50px;right:19px}.lesson-card-body{padding:17px 17px 14px}.lesson-card .eyebrow{letter-spacing:.12em}.lesson-card h3{font-size:.9375rem;line-height:1.5;margin:6px 0;letter-spacing:-.025em}.lesson-card-body>p{color:#6c7963;min-height:28px}.lesson-card-body>.row{border-top:1px solid #edf0e7;padding-top:11px;margin-top:8px}.round-arrow{width:27px;height:27px;border-radius:50%;border:1px solid #e3e8db;display:grid;place-items:center;color:#718567}.card-done{position:absolute;right:12px;bottom:12px;border-radius:50%;background:white;display:grid;place-items:center;width:26px;height:26px;color:#577d3e}.arcade-banner{margin-top:28px;background:#eee9f6;border:1px solid #e5dcf0;border-radius:16px;padding:21px 23px;gap:21px}.arcade-art,.arcade-banner{display:flex;align-items:center}.arcade-art{position:relative;color:#a38bbf;transform:rotate(-11deg);padding:0 10px}.arcade-art span{position:absolute;right:0;top:-8px;font-size:1.375rem;color:#c4b3d7}.arcade-banner .eyebrow{font-size:.75rem;color:#73618b}.arcade-banner h2{font-size:1.1875rem;margin:3px 0 5px;color:#5d4a72}.arcade-banner p{color:#736186}.arcade-banner>.secondary{margin-left:auto;font-size:.75rem;border-color:#d7cbe4;background:#f7f3fb;color:#79658e}.page-footer{display:flex;align-items:center;justify-content:space-between;padding:28px 0 22px;color:#6b7461;font-size:.75rem}.page-footer>span:last-child{font-weight:550}.page-footer>span:last-child>span{margin:0 6px;color:#a9b294}.mobile-toggle{display:none}.page-heading{margin:7px 0 28px}.page-heading h1{margin:8px 0 12px;font-size:1.9375rem}.page-heading h1>span{color:#b3a45d;margin-left:14px;font-size:1.6875rem}.page-heading p{font-size:.75rem}.library-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.library-toolbar .track-switch{margin:0}.search-box{display:flex;align-items:center;gap:8px;background:white;border:1px solid var(--line);border-radius:9px;padding:0 10px;color:#89977d;width:240px}.search-box input{border:0;background:transparent;width:100%;font-size:.75rem;padding:3px;min-width:0}.path-info{display:flex;align-items:center;gap:15px;border-radius:14px;padding:20px 22px;border:1px solid #dce5d3;margin-bottom:25px}.path-info .pill{margin-left:auto;background:#ffffff60}.path-info h2{font-size:.9375rem;margin-bottom:5px}.path-info p{font-size:.75rem;max-width:600px}.round-icon{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;background:#ffffff80;border:1px solid #ffffff80;border-radius:14px;color:#718c58;flex-shrink:0}.library-grid{row-gap:22px}.empty-state{text-align:center;background:white;border:1px dashed #cdd9be;border-radius:16px;padding:50px}.empty-state>svg{color:#91a878;margin-bottom:20px}.empty-state h2{font-size:1.4375rem}.empty-state p{margin:15px 0}.mint{background:var(--mint)}.lilac{background:var(--lilac)}.peach{background:var(--peach)}.butter{background:var(--butter)}.lesson-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:15px}.lesson-top>.text-btn{font-size:.75rem}.lesson-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.lesson-title h1{margin-top:5px;font-size:1.8125rem;max-width:650px}.lesson-title>.secondary{font-size:.75rem}.lesson-tabs{display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:22px}.lesson-tabs button{display:flex;align-items:center;gap:8px;padding:10px 16px;background:transparent;font-size:.75rem;border-radius:8px;color:#6a7462}.lesson-tabs button[aria-selected=true]{background:#e4ecd8;color:#426037;font-weight:600}.lesson-tabs button>svg:last-child:not(:first-child){color:#6b924e}.lesson-content{max-width:1050px;margin:auto}.slide-card{background:#e9eddf;border:1px solid #dce4ce;border-radius:20px;padding:25px 33px;min-height:420px;position:relative;overflow:hidden;display:flex;flex-direction:column}.slide-1{background:#eee8f6;border-color:#e3dbed}.slide-2{background:#f4eadb;border-color:#eadec8}.slide-tag{font-size:.75rem;border:1px solid #cbd6bc;border-radius:20px;padding:4px 10px;letter-spacing:.05em}.slide-number{font-size:.75rem;letter-spacing:.15em}.slide-body{padding:30px 0 24px;position:relative;z-index:1;max-width:900px}.slide-body h2{font-size:2.1875rem;max-width:750px;margin-bottom:22px;letter-spacing:-.05em}.slide-body>p{font-size:1.1875rem;color:#52634a;line-height:1.9;max-width:850px}.slide-1 .slide-body>p{color:#665a75}.slide-2 .slide-body>p{color:#74664e}.slide-spark{float:right;color:#a6b78e;margin:0 0 15px 15px}.slide-1 .slide-spark{color:#b5a0cd}.slide-2 .slide-spark{color:#c3af89}.slide-body pre{max-height:340px;overflow:auto;background:#25332c;color:#e1efd3;border-radius:13px;padding:20px;font-size:.8125rem;line-height:1.8;white-space:pre;margin-top:20px}.slide-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:.75rem;color:#616c54;margin-top:auto}.slide-decor{font-size:1.75rem}.slide-controls{display:flex;align-items:center;justify-content:space-between;margin-top:18px;gap:12px}.slide-dots{display:flex}.slide-dots button{position:relative;width:24px;height:24px;background:transparent;padding:0;border-radius:12px}.slide-dots button:before{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;transform:translate(-50%,-50%);background:transparent;box-shadow:inset 0 0 0 1.5px #7c965d;border-radius:50%}.slide-dots button.visited:before{background:#7c965d}.slide-dots button.active{width:36px}.slide-dots button.active:before{width:24px;background:#698354;border-radius:10px}.slide-controls .primary,.slide-controls .secondary{font-size:.75rem}.lesson-extras{display:flex;align-items:center;justify-content:space-between;margin:23px 0 0}.lesson-extras .micro{max-width:350px}.notes-panel{background:white;border:1px solid var(--line);padding:30px;border-radius:14px;margin-top:20px}.markdown{font-size:.875rem;line-height:1.9;overflow-wrap:anywhere}.markdown li,.markdown p{color:#5d6e53}.markdown h2,.markdown h3{margin:28px 0 14px}.markdown h2{font-size:1.4375rem}.markdown h3{font-size:1.125rem}.markdown pre{background:#26372c;color:#e4ecd9;padding:18px;border-radius:10px;overflow:auto;white-space:pre}.markdown p{margin-bottom:14px}.markdown table{border-collapse:collapse;font-size:.75rem;display:block;overflow:auto}.markdown td,.markdown th{border:1px solid var(--line);padding:8px}.prediction{margin-top:22px;max-width:650px}.prediction label{display:block;font-size:.75rem;font-weight:600;margin-bottom:6px}.prediction textarea{width:100%;padding:13px;border:1px solid #d6cce3;background:#ffffff80;border-radius:10px;font-size:.875rem;color:#564a62}.presenting{position:fixed;inset:0;background:var(--paper);z-index:100;padding:25px 5vw 35px;overflow:auto}.presenting .lesson-content{max-width:1250px}.presenting .slide-body h2{font-size:2.875rem}.presenting .slide-body>p{font-size:1.5625rem}.presenting .slide-card{min-height:60vh}.presenting .lesson-top{display:none}.presenting .lesson-title{padding-right:35px;margin-bottom:12px}.presenting .lesson-title h1{font-size:1.375rem}.presenting .lesson-extras,.presenting .lesson-tabs{display:none}.exit-presentation{position:fixed;right:15px;top:15px;background:white;border:1px solid var(--line)}.mission-brief{border:1px solid #e0d9eb;background:#eee8f5;border-radius:16px;padding:24px;margin-bottom:23px}.mission-brief h2{margin:10px 0;font-size:1.4375rem}.mission-brief>p{color:#6f637d;font-size:.8125rem;line-height:1.9}.mission-brief>.text-btn{margin-top:12px;color:#765f8c}.hint-box{padding:15px;border-radius:9px;background:#ffffff85;margin-top:12px;font-size:.8125rem;color:#665473}.playground{background:white;border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:24px}.playground-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px}.playground-head p{font-size:.75rem;margin-top:5px}.playground>.micro{margin-bottom:14px;max-width:800px}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.code-editor{background:#25332d;border-radius:10px;overflow:hidden;min-width:0}.editor-tabs{display:flex;align-items:center;background:#304239;padding:5px 8px;gap:2px}.editor-tabs button{font-size:.75rem;color:#a4b49c;background:transparent;padding:7px 10px;border-radius:5px}.editor-tabs button[aria-pressed=true]{background:#465b49;color:#ecf4e8}.editor-tabs>.icon-btn{margin-left:auto}.code-editor textarea{display:block;background:transparent;color:#d9eacb;border:0;outline-offset:-4px;width:100%;height:350px;font-size:.75rem;line-height:1.9;padding:16px;font-family:monospace;resize:vertical;tab-size:2;white-space:pre;overflow:auto}.preview-wrap{border:1px solid var(--line);border-radius:10px;overflow:hidden;min-width:0;display:flex;flex-direction:column}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;background:#f6f7f2;font-size:.75rem;border-bottom:1px solid var(--line);height:45px}.preview-toolbar>span{display:flex;align-items:center;gap:6px}.preview-toolbar i{width:5px;height:5px;background:#91ac76;border-radius:50%}.preview-toolbar>div{display:flex;gap:4px}.preview-toolbar button[aria-pressed=true]{background:#e0e8d5}.preview-canvas{flex:1 1;background:#e9eae5;display:flex;justify-content:center}.preview-canvas iframe{height:350px;border:0;background:white}.playground>.row{margin-top:15px}.reflection-card{background:white;border:1px solid var(--line);border-radius:16px;padding:25px}.reflection-card h2{margin:8px 0 12px;font-size:1.4375rem}.reflection-card p{font-size:.75rem;line-height:1.8}.reflection-card .micro{margin:9px 0}.reflection-card label:not(.check-label){display:block;font-size:.75rem;font-weight:600;margin-bottom:7px}.check-label{display:flex;align-items:center;gap:10px;padding:18px 0;font-size:.75rem}.check-label input{accent-color:#577545;width:24px;height:24px;flex-shrink:0}.reflection-card textarea{width:100%;border:1px solid #d9e1ce;border-radius:9px;padding:13px;font-size:.8125rem;line-height:1.8;background:#fcfdf9}.reflection-card>.row,.reflection-card>.status-done{margin-top:15px}.quiz-card{background:white;border:1px solid var(--line);border-radius:18px;padding:33px;max-width:850px;margin:auto}.quiz-card h2{font-size:1.8125rem;margin:15px 0}.quiz-card>p{font-size:.75rem}.answers{display:flex;flex-direction:column;gap:12px;margin-top:25px}.answers button{display:flex;align-items:center;gap:14px;text-align:left;padding:15px;background:#fbfcf8;border:1px solid #e1e6d9;border-radius:10px;font-size:.8125rem;min-height:58px}.answers button:hover:not(:disabled){background:#edf2e4;border-color:#b7c6a5}.answers button>span{width:28px;height:28px;border:1px solid #d7e0cb;border-radius:7px;display:grid;place-items:center;color:#617052;font-size:.75rem;flex-shrink:0}.answers button.correct{background:#e9f3dd;border-color:#aac48b;color:#45622c;opacity:1}.answers button.incorrect{background:#faece4;border-color:#d9afa0;opacity:1}.answers button>svg{margin-left:auto}.feedback{padding:18px;border-radius:12px;margin-top:18px;font-size:.75rem;line-height:1.8}.feedback.right{background:#eaf2df;border:1px solid #d2e1bc}.feedback.wrong{background:#f8ecdf;border:1px solid #e9d3b7;color:#7d6744}.feedback p{color:inherit;margin:7px 0 12px}.feedback .dark-btn,.feedback .secondary{font-size:.75rem;padding:8px 12px}.quiz-card>.status-done{margin-top:18px}.completion-card{margin-top:25px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#eaf0df;border:1px solid #dbe5cc;border-radius:15px;padding:24px}.completion-card h3{font-size:1.125rem}.completion-card p{font-size:.75rem;margin:6px 0 15px}.mini-check{display:inline-flex;gap:5px;align-items:center;font-size:.75rem;color:#636d5b}.mini-check.done{color:#55723e}.completion-card>.primary{font-size:.75rem}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.game-card{border:1px solid #dedecf;border-radius:18px;padding:26px 23px;display:flex;flex-direction:column;min-height:320px}.game-symbol{position:relative;padding:12px 0 28px;color:#9a805e;display:flex;gap:50px;align-items:center}.lilac .game-symbol{color:#957bb3}.mint .game-symbol{color:#859d6a}.game-symbol>svg:first-child{transform:rotate(-12deg);stroke-width:1.5}.game-card h2{font-size:1.4375rem;margin:11px 0}.game-card p{font-size:.75rem;line-height:1.9;margin-bottom:24px}.game-card>.row{margin-top:auto}.game-card .dark-btn{font-size:.75rem;padding:9px 11px}.tip-banner{display:flex;align-items:center;gap:15px;background:white;border:1px solid var(--line);border-radius:14px;padding:20px 25px;margin-top:25px}.tip-banner svg{color:#a7975c}.tip-banner p{font-size:.75rem;line-height:1.9}.game-stage{max-width:790px;background:white;border:1px solid var(--line);border-radius:20px;margin:15px auto;padding:35px}.game-stage>.eyebrow{display:block;margin-top:25px}.game-stage h1{font-size:1.8125rem;line-height:1.5;margin:20px 0}.game-stage>p{font-size:.8125rem}.progress-track{height:5px;border-radius:10px;background:#edf1e7;overflow:hidden;margin:15px 0 20px}.progress-track i{height:100%;display:block;background:#a5bc82;transition:width var(--duration-slow) var(--ease-smooth-out)}.sequence-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:10px;margin:25px 0}.sequence-list li{display:flex;align-items:center;gap:12px;background:#f3f2f7;border:1px solid #e5e0ed;border-radius:10px;padding:8px 12px}.sequence-list li>span{font-size:.75rem;color:#796593}.sequence-list code{font-size:.75rem;overflow-wrap:anywhere}.sequence-list li>div{margin-left:auto;display:flex;flex-shrink:0}.result-stage{text-align:center;padding:50px 35px}.result-stage>.round-icon{width:85px;height:85px;background:#eee7f6;color:#9980b3;border-radius:25px;transform:rotate(-8deg)}.result-stage h1{font-size:1.875rem;margin-bottom:10px}.result-stage .big-score{font-size:4.375rem;font-family:var(--font-manrope);font-weight:800;line-height:1.5;color:#54723e;margin:15px 0}.big-score span{font-size:1.375rem;color:#869776;margin-left:6px}.result-stage>.row{margin-top:25px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:32px}.stat-grid>div{background:white;border:1px solid var(--line);border-radius:14px;padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center}.stat-grid svg{color:#a28a60}.stat-grid strong{font-size:2rem;font-family:var(--font-manrope);text-align:right;line-height:1.2}.stat-grid span{grid-column:1/3;font-size:.75rem;color:#6b785f}.badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:30px}.badge-card{border:1px solid #dadfcf;border-radius:16px;text-align:center;padding:24px 15px}.badge-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;border-radius:50%;border:1px solid #ffffff;background:#ffffff60;color:#8e7e54}.badge-card h3{font-size:.875rem;margin-bottom:9px}.badge-card p{font-size:.75rem;line-height:1.7;min-height:35px}.badge-card>span{display:inline-block;margin-top:13px;font-size:.75rem;font-weight:650;letter-spacing:.06em;color:#5d694b}.unearned .badge-icon{filter:saturate(.4);opacity:.75}.notebook{background:white;border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:30px}.notebook-doodle{font-size:2.375rem;color:#a8b892;line-height:1}.empty-journal{text-align:center;padding:20px;color:#687a53}.empty-journal p{font-size:.75rem;margin:12px 0}.journal-entry{padding:16px 0;border-top:1px solid var(--line)}.journal-entry p{font-size:.75rem;margin-top:8px;white-space:pre-wrap;overflow-wrap:anywhere}.resource-section{margin:25px 0}.code-views{background:white;border:1px solid var(--line);border-radius:16px;padding:20px 24px;margin-bottom:30px}.code-views h3{display:flex;align-items:center;gap:8px;font-size:.9375rem}.code-views h3 svg{color:#8fa279}.code-views .micro{margin-top:8px}.code-views ul{margin:12px 0 0;padding-left:18px;font-size:.75rem;line-height:1.8;overflow-wrap:anywhere}.resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.resource-link{display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:12px;padding:18px;background:white}.resource-link>svg:first-child{color:#9aad83}.resource-link b{font-size:.75rem;display:block}.resource-link span{display:block;color:#6c7864;margin-top:3px}.resource-link>svg:last-child{margin-left:auto;color:#a0ad92}.resource-link:hover{background:#f1f5e9;border-color:#bac9a6}.backup-panel{border:1px solid var(--line);border-radius:15px;padding:25px;background:#eef1e7;margin-top:30px}.backup-panel h3{font-size:1.0625rem}.backup-panel p{font-size:.75rem;max-width:630px;margin:9px 0 18px}.backup-panel .secondary{font-size:.75rem;padding:10px 13px}.danger{color:#906040!important}.teacher-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.teacher-panel,.timer-panel{background:white;border:1px solid var(--line);border-radius:18px;padding:28px}.teacher-panel h2{font-size:1.4375rem;margin:10px 0 25px}.teacher-panel label{font-size:.75rem;font-weight:600;display:block;margin:16px 0 7px}.teacher-panel select{border:1px solid #dce4d1;background:#fafcf7;border-radius:9px;padding:12px;width:100%;font-size:.75rem;color:#5b6d4d;min-width:0}.teacher-panel>.micro{margin:19px 0}.timer-panel{background:#eee8f5;text-align:center;border-color:#e1d8eb}.timer-panel h2{font-size:1.25rem;margin-top:8px}.timer-face{font-size:4.375rem;font-weight:750;letter-spacing:-.06em;color:#7c6695;display:block;font-family:var(--font-manrope);line-height:1.6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:15px}.timer-face i{font-style:normal;opacity:.4}.timer-panel label{font-size:.75rem;margin-right:10px;color:#736087}.timer-panel input{padding:5px 8px;border-radius:7px;background:#f8f4fc;border:1px solid #d9cde5;width:65px;color:#7a6593;font-size:.75rem;margin-bottom:20px}.timer-panel p{font-size:.75rem;margin-top:17px;color:#765e8c}.timer-panel .secondary{background:#f6f1fb;border-color:#d6c9e2}.timer-face.finished{color:#b18443}.timer-pill{display:flex;align-items:center;gap:6px;background:#ede6f7;color:#80629d;font-size:.75rem;padding:5px 10px;border-radius:20px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.facilitation{margin-top:30px;background:white;border:1px solid var(--line);border-radius:18px;padding:27px}.facilitation>h2{font-size:1.375rem}.rhythm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:25px 0}.rhythm-grid>div>span{font-size:.75rem;color:#677b4e;font-family:monospace}.rhythm-grid h3{font-size:1rem;margin:9px 0}.rhythm-grid p,.teacher-note{font-size:.75rem;line-height:1.9}.teacher-note{display:flex;align-items:flex-start;gap:10px;background:#f3f5ed;border-radius:9px;padding:16px}.teacher-note svg{margin-top:3px;color:#9aa98c}.storage-warning{gap:10px;padding:13px 16px;border:1px solid #e4cfa5;background:#f9eed7;border-radius:10px;margin-bottom:20px;color:#896c39}.storage-warning,.toast{display:flex;align-items:center;font-size:.75rem}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:200;gap:12px;background:#2d4534;color:#edf6e6;padding:15px 20px;border-radius:14px;box-shadow:0 10px 40px #263b2a40;max-width:90vw;width:max-content}.toast svg{color:#c0d7a1}.toast>.icon-btn{margin-left:10px}.modal-backdrop{position:fixed;inset:0;z-index:150;background:#21382760;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:25px}.profile-modal{position:relative;background:#fcfdf8;border-radius:22px;padding:35px;max-width:440px;width:100%;text-align:center;border:1px solid #dfe8d4;box-shadow:0 20px 70px #20342120}.modal-close{position:absolute;right:15px;top:15px}.profile-modal>.round-icon{background:#e8e0f1;color:#a08cba;margin-bottom:23px;transform:rotate(-7deg)}.profile-modal h2{font-size:1.625rem}.profile-modal>p{font-size:.75rem;margin-top:14px}.profile-modal form{text-align:left;margin:24px 0 15px}.profile-modal label{font-size:.75rem;font-weight:600;display:block;margin-bottom:8px}.profile-modal input{width:100%;padding:12px;border-radius:9px;border:1px solid #d2ddc4;background:white;margin-bottom:16px}.profile-modal .primary{width:100%}.sidebar-overlay{display:none}@media (min-width:1500px){.main-content{padding-top:40px}.hero-card{min-height:390px;padding:35px 38px}.hero-card h2{font-size:2.75rem}.hero-card .dark-btn,.hero-card p,.hero-tag{font-size:.75rem}.progress-card{padding:25px}.progress-ring{width:170px;height:170px;margin-top:25px}.progress-card>p{font-size:.75rem}.journey-stats{margin-top:20px}.lesson-card-visual{height:145px}.lesson-card h3{font-size:1.0625rem}.hero-footnote,.lesson-card-body>p{font-size:.75rem}}@media (max-width:1190px){:root{--sidebar-w:236px}.sidebar{padding:28px 15px 18px}.brand{font-size:1.4375rem}.brand-icon{width:32px;height:32px}.main-content{padding-left:28px;padding-right:28px}.topbar{padding:0 28px;height:77px}.dashboard-top{grid-template-columns:minmax(0,1fr) 210px;gap:16px}.hero-card{padding:24px;min-height:340px}.hero-card h2{font-size:1.9375rem}.hero-card p,.hero-tag{font-size:.75rem}.quest-art{width:50%;right:-4%;top:55%}.progress-card{padding:20px 15px}.lesson-grid{gap:13px}.lesson-card h3{font-size:.8125rem}.lesson-card-body{padding:14px}.lesson-card-visual{height:110px}.game-grid{gap:14px}.game-card{padding:20px 17px}.game-card h2{font-size:1.25rem}.game-card>.row{gap:7px;flex-wrap:wrap}.page-heading h1{font-size:1.8125rem}.hero-copy{width:65%}.badge-card{padding:20px 10px}.lesson-title h1{font-size:1.5625rem}}@media (max-width:980px){.dashboard-top{grid-template-columns:1fr}.hero-card{min-height:330px}.hero-card h2{font-size:2.375rem}.hero-card p,.hero-tag{font-size:.75rem}.hero-copy{width:60%}.quest-art{width:45%;right:1%;top:49%}.classroom-tag,.progress-card{display:none}.lesson-card h3{font-size:.875rem}.arcade-banner{gap:12px;padding:20px 17px}.arcade-banner h2{font-size:1.0625rem}.arcade-banner p{max-width:300px}.arcade-banner>.secondary{font-size:.75rem;padding:10px}.arcade-art{padding:0}.topbar-right{gap:15px}.library-toolbar{flex-wrap:wrap}.search-box{width:100%}.badge-grid{grid-template-columns:repeat(2,1fr)}.game-grid{grid-template-columns:1fr}.game-card{min-height:0;display:grid;grid-template-columns:80px 1fr;column-gap:20px;padding:24px}.game-symbol{grid-row:1/5;align-items:center;justify-content:center;padding:0}.game-symbol>svg:last-child{display:none}.game-card h2{margin:6px 0}.game-card p{margin-bottom:13px}.game-card>.row{grid-column:2}.teacher-grid{grid-template-columns:1fr}.timer-panel{padding:25px}.path-info .pill{display:none}.path-info p{font-size:.75rem}.lesson-title{flex-wrap:wrap}.slide-body>p{font-size:1.0625rem}.slide-body h2{font-size:1.875rem}.editor-grid{grid-template-columns:1fr}.code-editor textarea{height:260px}.completion-card,.reflection-card>.row{flex-wrap:wrap}.lesson-top>.row{flex-wrap:wrap;justify-content:flex-end}.lesson-extras .micro{display:none}}@media (max-width:740px){.sidebar{transform:translateX(-100%);width:min(280px,85vw);visibility:hidden;transition:transform var(--duration-fast) var(--ease-in),visibility 0s linear var(--duration-fast)}.sidebar.is-open{transform:translateX(0);visibility:visible;transition:transform var(--duration-medium) var(--ease-smooth-out),visibility 0s}.main-shell{margin-left:0}.mobile-toggle{display:inline-flex}.sidebar-overlay{display:block;position:fixed;inset:0;z-index:25;background:#20372160;opacity:0;visibility:hidden;transition:opacity var(--duration-fast) ease-out,visibility 0s linear var(--duration-fast)}.sidebar-overlay[data-open=true]{opacity:1;visibility:visible;transition:opacity var(--duration-medium) ease-out,visibility 0s}.topbar{padding:0 20px;height:73px}.main-content{padding:26px 20px 0}.welcome{margin-bottom:21px}.welcome h1{font-size:1.8125rem}.breadcrumb,.welcome .eyebrow,.welcome p{font-size:.75rem}.breadcrumb{gap:6px}.profile-btn>span:not(.avatar){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.profile-btn>svg{display:none}.topbar-right{gap:14px}.hero-card{min-height:330px;padding:26px}.hero-card h2{font-size:2.3125rem}.hero-copy{width:62%}.quest-art{width:47%;right:-2%;top:55%}.hero-tag{font-size:.75rem;padding:4px 7px}.hero-tag svg{width:12px}.hero-card .dark-btn,.hero-card p{font-size:.75rem}.lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.path-section .lesson-grid .lesson-card:last-child{display:none}.section-title h2{font-size:1.25rem}.section-title .eyebrow{font-size:.75rem}.section-title>.text-btn{font-size:.75rem;white-space:nowrap}.arcade-banner{flex-wrap:wrap;padding:19px;gap:14px}.arcade-banner>.secondary{margin-left:65px}.arcade-art svg{width:42px}.arcade-banner h2{font-size:1.125rem}.arcade-banner p{font-size:.75rem;max-width:none}.arcade-banner>div:nth-child(2){flex:1 1}.page-footer{font-size:.75rem;gap:10px}.page-heading h1{font-size:1.75rem}.page-heading .eyebrow,.page-heading p{font-size:.75rem}.path-info{padding:18px;align-items:flex-start;gap:11px}.path-info h2{font-size:.8125rem}.path-info .round-icon{width:35px;height:35px;border-radius:9px}.path-info .round-icon svg{width:20px}.lesson-card h3{font-size:.875rem}.stat-grid{gap:10px}.stat-grid>div{padding:15px}.stat-grid strong{font-size:1.6875rem}.stat-grid span{font-size:.75rem}.resource-grid{grid-template-columns:1fr}.rhythm-grid{gap:18px}.rhythm-grid h3{font-size:.875rem}.rhythm-grid p{font-size:.75rem}.facilitation,.teacher-panel,.timer-panel{padding:22px}.teacher-panel h2{font-size:1.4375rem}.lesson-top{align-items:flex-start}.lesson-top .pill,.lesson-top .status-done{font-size:.75rem}.lesson-title h1{font-size:1.5rem}.lesson-title>.secondary{font-size:.75rem;padding:9px 12px}.lesson-tabs{gap:0;justify-content:space-between}.lesson-tabs button{font-size:.75rem;padding:10px 8px;gap:6px}.lesson-tabs button>svg{width:16px}.slide-card{padding:22px;min-height:400px}.slide-body h2{font-size:1.75rem}.slide-body>p{font-size:1rem;line-height:1.9}.slide-body{padding-top:27px}.slide-controls .primary,.slide-controls .secondary{font-size:.75rem;padding:10px 11px}.slide-controls{gap:7px}.slide-dots{gap:5px}.slide-dots button{width:6px;height:6px}.slide-dots button.active{width:16px}.slide-controls button svg{width:15px}.quiz-card{padding:24px}.quiz-card h2{font-size:1.5625rem}.mission-brief{padding:22px}.playground{padding:15px}.playground-head .eyebrow,.playground-head p{font-size:.75rem}.playground .small-btn{font-size:.75rem;padding:9px 11px}.playground>.row{flex-wrap:wrap}.playground>.micro{font-size:.75rem}.reflection-card{padding:22px}.reflection-card h2{font-size:1.375rem}.check-label,.reflection-card .micro{font-size:.75rem}.presenting{padding:20px}.presenting .slide-body h2{font-size:2rem}.presenting .slide-body>p{font-size:1.25rem}.presenting .lesson-title h1{font-size:1.125rem}.presenting .lesson-title>.secondary{display:none}.notes-panel{padding:20px}.game-stage{padding:24px}.game-stage h1{font-size:1.5625rem}.sequence-list li{padding:8px;gap:7px}.sequence-list code{font-size:.75rem}.sequence-list .icon-btn{padding:5px}.game-card{padding:24px 18px;grid-template-columns:60px 1fr}.game-card .eyebrow{font-size:.75rem}.game-card h2{font-size:1.3125rem}.game-card p{font-size:.75rem}.game-symbol{justify-content:flex-start}.timer-pill{font-size:.75rem;padding:5px 7px;gap:4px}}@media (max-width:420px){.main-content{padding-left:15px;padding-right:15px}.topbar{padding:0 15px}.breadcrumb{gap:4px}.breadcrumb>svg{width:12px}.breadcrumb-root{display:none}.xp-pill{white-space:nowrap}.topbar-right{gap:10px}.xp-pill{font-size:.75rem}.avatar{width:31px;height:31px}.hero-card{padding:23px;min-height:326px}.hero-card h2{font-size:2rem}.hero-copy{width:75%}.quest-art{width:47%;right:-8%;top:61%}.hero-card p,.hero-footnote,.hero-tag{font-size:.75rem}.hero-tag svg{width:10px}.hero-card .dark-btn{font-size:.75rem;padding:10px 11px}.section-title h2{font-size:1.125rem;max-width:190px}.section-title>.text-btn{font-size:.75rem}.track-switch button{padding:7px 10px;font-size:.75rem}.track-switch button>svg{width:13px}.lesson-grid{gap:11px}.lesson-card-body{padding:12px}.lesson-card .eyebrow,.lesson-card h3,.lesson-card-body>p{font-size:.75rem}.lesson-card-visual{height:100px}.lesson-glyph{font-size:3rem}.visual-star{right:14px;font-size:1.5625rem}.arcade-banner>.secondary{margin-left:0;width:100%}.badge-grid{gap:12px}.badge-card h3{font-size:.8125rem}.badge-card p{font-size:.75rem}.stat-grid>div{padding:12px}.stat-grid svg{width:18px}.stat-grid strong{font-size:1.5rem}.stat-grid span{font-size:.75rem}.page-heading h1{font-size:1.5625rem}.page-heading h1>span{font-size:1.375rem;margin-left:8px}.game-card{grid-template-columns:45px 1fr;gap:10px}.game-card h2{font-size:1.25rem}.game-symbol>svg{width:30px}.page-footer>span:first-child{max-width:170px}.lesson-tabs button{font-size:.75rem;padding:9px 6px}.lesson-tabs button>svg{width:14px}.slide-card{padding:18px}.slide-body h2{font-size:1.5625rem}.slide-body>p{font-size:.9375rem}.slide-bottom,.slide-number,.slide-tag{font-size:.75rem}.slide-controls .secondary{font-size:0;gap:0;padding:10px}.slide-dots button.active{width:14px}.lesson-title h1{font-size:1.375rem}.quiz-card{padding:20px}.quiz-card h2{font-size:1.375rem}.answers button{font-size:.75rem;padding:12px}.answers button>span{width:25px;height:25px}.rhythm-grid{grid-template-columns:1fr}.rhythm-grid>div{display:grid;grid-template-columns:30px 1fr;column-gap:10px}.rhythm-grid h3{margin:0 0 7px}.rhythm-grid p{grid-column:2}.facilitation>h2{font-size:1.25rem}.profile-modal{padding:30px 25px}.toast{font-size:.75rem;padding:12px 16px}.toast>.icon-btn{margin-left:0}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.slide-prose{font-size:1.1875rem;color:#52634a;line-height:1.9;max-width:850px}.slide-prose p{font-size:inherit;color:inherit;line-height:inherit}.slide-prose code{font-size:.85em;background:#ffffff60;padding:2px 5px;border-radius:4px;overflow-wrap:anywhere}.slide-1 .slide-prose{color:#665a75}.slide-2 .slide-prose{color:#74664e}.presenting .slide-prose{font-size:1.5625rem}.lesson-card h3{min-height:42px}.slide-dots button{outline-offset:0}@media (max-width:980px){.slide-prose{font-size:1.0625rem}}@media (max-width:740px){.sidebar{visibility:hidden}.sidebar.is-open{visibility:visible}.slide-prose{font-size:1rem}.presenting .slide-prose{font-size:1.25rem}}@media (max-width:420px){.slide-prose{font-size:.9375rem}}.sidebar nav a,.sidebar nav button{font-size:.8125rem}.lesson-card .eyebrow{font-size:.75rem}.lesson-card-body>p{font-size:.75rem;line-height:1.7;min-height:38px}.game-card .eyebrow,.game-card .micro,.hero-card .dark-btn,.hero-card p,.lesson-card .micro{font-size:.75rem}.page-heading p{font-size:.875rem}.arcade-banner p,.profile-btn,.sidebar-quest p{font-size:.75rem}.resource-link b{font-size:.8125rem}.resource-link span{font-size:.75rem}@media (max-width:740px){.hero-card .dark-btn,.hero-card p,.lesson-card .eyebrow,.lesson-card-body>p{font-size:.75rem}.page-heading p{font-size:.8125rem}.arcade-banner p{font-size:.75rem}}@media (max-width:420px){.hero-card .dark-btn,.hero-card p,.lesson-card .eyebrow,.lesson-card .micro{font-size:.75rem}}.sidebar nav a,.sidebar nav button{white-space:nowrap}.login-page{min-height:100vh;background:#f4f6ee;padding:35px max(25px,6vw) 20px}.login-brand{display:inline-flex;gap:10px;align-items:center;font-family:var(--font-manrope),sans-serif;font-size:1.6875rem;letter-spacing:-1px;font-weight:500;line-height:1.1}.login-brand b{font-weight:800}.login-brand small{display:block;font-size:.75rem;letter-spacing:.22em;margin-top:7px;color:#66725a;font-family:var(--font)}.login-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:7vw;max-width:1100px;margin:45px auto 0;align-items:start}.login-story{position:relative;padding:18px 0 0}.login-story h1{font-size:2.9375rem;line-height:1.18;margin:18px 0 22px;letter-spacing:-.055em}.login-story h1>span{color:#739158}.login-story>p{max-width:420px;font-size:.875rem;line-height:1.9}.login-illustration{position:relative;height:255px;max-width:450px;margin:5px 0 0}.login-illustration .quest-art{width:100%;height:280px;right:0;top:50%;transform:translateY(-50%)}.login-story-foot{display:flex;gap:12px;align-items:center;padding:18px 0;border-top:1px solid #dde5d3;max-width:420px}.login-story-foot>svg{color:#8b9e75}.login-story-foot p{font-size:.75rem;line-height:1.8}.login-form-panel{background:white;border:1px solid #e0e6d7;border-radius:22px;padding:35px;box-shadow:0 15px 45px #25362e05}.login-form-panel>h2{font-size:1.9375rem;margin:10px 0 12px}.login-form-panel>p{font-size:.75rem;line-height:1.9}.portal-switch{display:flex;gap:4px;background:#f0f2e9;border:1px solid #e5e9df;padding:5px;border-radius:10px;margin:25px 0}.portal-switch>button{flex:1 1;background:transparent;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 7px;font-size:.75rem;font-weight:550;color:#666f5c}.portal-switch>button.active{background:white;box-shadow:0 2px 4px #304d3010;color:#415a34}.create-account label,.create-student label,.login-form-panel label,.reset-password-form label{display:block;font-size:.75rem;font-weight:600;margin:18px 0 8px}.create-account input,.create-student input,.login-form-panel input,.reset-password-form input{border:1px solid #dbe3d0;border-radius:9px;background:#fbfcf8;padding:12px 13px;width:100%;font-size:.8125rem;color:#3b5031;min-width:0}.create-account input::placeholder,.create-student input::placeholder,.login-form-panel input::placeholder{color:#a1aa95}.password-input{position:relative}.password-input input{padding-right:45px}.password-input>.icon-btn{position:absolute;right:9px;top:50%;transform:translateY(-50%);color:#8d9b7d}.auth-submit{margin-top:24px;width:100%;padding:14px 18px;font-size:.8125rem}.auth-error{background:#f9ece5;border:1px solid #ebd0bf;color:#8b6143!important;border-radius:10px;padding:12px 14px;margin-top:16px!important;font-size:.75rem;line-height:1.8}.login-help{margin-top:25px;border-top:1px solid #edf0e7;padding-top:18px;font-size:.75rem!important}.login-fineprint{display:block;color:#6c7860;font-size:.75rem;line-height:1.8;margin-top:17px}.setup-note{background:#eef2e4;border:1px solid #dce6ce;border-radius:12px;padding:16px;margin-top:22px}.setup-note b,.setup-note p{font-size:.75rem}.setup-note p{margin:8px 0;line-height:1.8}.setup-note code{display:block;background:white;border-radius:7px;padding:8px 10px;font-size:.75rem;overflow-wrap:anywhere}.login-footer{display:flex;align-items:center;justify-content:center;gap:10px;font-size:.75rem;color:#68725c;max-width:1100px;margin:32px auto 0}.login-footer>span{color:#afad74}.password-page{min-height:100vh;display:grid;place-items:center;background:#f3f5ed;padding:35px 20px}.privacy-card{max-width:760px;width:100%}.privacy-card>.round-icon{background:#e7f0de;color:#52634a;margin-bottom:22px;display:flex}.privacy-card h1{font-size:1.8125rem;margin:10px 0 22px}.privacy-summary{background:#f3f5ed;border:1px solid var(--line);border-radius:16px;padding:20px 24px;font-size:.9375rem}.privacy-summary h2{font-size:1.125rem;margin-bottom:8px}.privacy-summary ul{margin:0;padding-left:20px;line-height:1.8}.privacy-card .markdown table{display:table;width:100%}.privacy-card .markdown th{text-align:left}.privacy-card>.text-btn{margin-top:24px}.footer-link{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;text-decoration:underline;text-underline-offset:3px}.password-card{max-width:490px;width:100%;padding:35px}.password-card>.round-icon{background:#ece5f5;color:#9b84b6;margin-bottom:22px;display:flex}.password-card>.eyebrow{font-size:.75rem}.password-card h1{font-size:1.8125rem;margin:10px 0 17px}.password-card>p{font-size:.8125rem}.password-card .micro{font-size:.75rem;margin-top:8px}.password-card>.text-btn{margin-top:18px}.password-card .session-controls{border-top:1px solid var(--line);padding-top:15px;margin-top:22px}.session-controls{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:12px 0 18px}.session-controls>.text-btn{font-size:.75rem;color:#617058}.session-controls>p{font-size:.75rem;color:#94704a;line-height:1.7}.portal-role{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:#5f714d;font-weight:600;margin-top:5px}.sidebar-quest{margin-bottom:18px}.sidebar-bottom{margin-top:0}.save-status{font-size:.75rem;color:#69775a;white-space:nowrap}.save-status.saving{color:#827141}.save-status.error{color:#986842}.save-status.preview{color:var(--purple);font-weight:600}.account-panel,.teacher-accounts{background:white;border:1px solid var(--line);border-radius:18px;padding:26px;margin-top:28px}.account-panel .section-title,.teacher-accounts .section-title{margin-bottom:10px}.account-intro,.account-panel .eyebrow,.teacher-accounts .eyebrow{font-size:.75rem}.account-intro{max-width:790px;line-height:1.9;margin:12px 0 22px}.accounts-layout{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.4fr);gap:27px;align-items:start}.create-account,.create-student{padding:20px;border:1px solid #e1e6d8;background:#f8faf4;border-radius:13px}.create-account h3,.create-student h3{font-size:1rem;display:flex;align-items:center;gap:8px}.create-account h3 svg,.create-student h3 svg{color:#8fa279}.create-account .micro,.create-student .micro{font-size:.75rem;margin:12px 0 20px}.student-roster>.row{margin:4px 0 17px}.student-roster>.row h3{font-size:1rem}.student-roster>.row .micro{font-size:.75rem}.empty-roster{text-align:center;padding:40px 18px;border:1px dashed #d7e0ca;border-radius:13px;color:#a3b38d}.empty-roster h3{font-size:1rem;color:#7f926d;margin:15px 0 9px}.empty-roster p{font-size:.75rem}.student-account{border:1px solid #e2e7da;border-radius:13px;padding:18px;margin-bottom:12px;overflow-wrap:anywhere}.student-account-heading{display:flex;align-items:center;gap:9px}.student-account-heading h4{font-size:.8125rem;letter-spacing:-.02em}.student-account-heading>div>span{font-size:.75rem;color:#6d7860}.account-status{margin-left:auto;font-size:.75rem;background:#edf2e4;padding:4px 7px;border-radius:16px;line-height:1.5;color:#627053}.account-status.paused{background:#f6eadc;color:#9c805b}.student-stats{padding:13px 0;font-size:.75rem;color:#6c795f;flex-wrap:wrap;gap:10px}.student-account>.row .text-btn{font-size:.75rem;margin-right:9px}.reset-password-form{border-top:1px solid var(--line);margin-top:12px;padding-top:6px}.reset-password-form label{font-size:.75rem;margin:12px 0}.reset-password-form .micro{font-size:.75rem;margin:10px 0}.reset-password-form .secondary{font-size:.75rem;padding:9px 12px}.account-panel>.teacher-note,.teacher-accounts>.teacher-note{margin-top:23px}.student-progress>.row{margin-top:10px;font-size:.8125rem}.lesson-status-list{list-style:none;padding:0;margin:8px 0}.lesson-status{border-top:1px solid var(--line);padding:10px 0}.lesson-status-line{display:flex;align-items:center;gap:8px;font-size:.75rem}.lesson-status-line>svg{flex:none;color:#8fa279}.lesson-status.started .lesson-status-line>svg{color:#b08a5c}.lesson-status-name{min-width:0}.lesson-status.started .account-status{background:#f6eadc;color:#8a6c47}.lesson-status .micro{margin:6px 0 0 24px}.lesson-status>.text-btn{font-size:.75rem;margin:6px 0 0 24px}.lesson-code{margin:10px 0 0 24px;font-size:.75rem}.lesson-code figure{margin:10px 0 0}.lesson-code figcaption{font-size:.6875rem;font-weight:600;letter-spacing:.06em;color:var(--muted);margin-bottom:4px}.lesson-code pre{background:#25362e;color:#eef3e6;border-radius:9px;padding:12px;max-height:260px;overflow:auto;font-size:.75rem;line-height:1.6;white-space:pre}.storage-warning{flex-wrap:wrap}.storage-warning>span{flex:1 1;min-width:180px}@media (max-width:1190px){.topbar-right{gap:13px}.save-status,.sidebar .session-controls>.text-btn{font-size:.75rem}.login-layout{gap:4vw}.login-story h1{font-size:2.4375rem}.login-form-panel{padding:28px}.accounts-layout{grid-template-columns:1fr}.student-account-heading h4{font-size:.875rem}}@media (max-width:980px){.save-status{display:none}.login-story h1{font-size:2.0625rem}.login-story>p{font-size:.75rem}.login-form-panel{padding:25px}.portal-switch>button{font-size:.75rem}.login-layout{gap:25px;margin-top:35px}.login-illustration{height:230px}.sidebar-quest{padding:36px 16px 6px}.sidebar-quest p{font-size:.75rem}.sidebar-quest button{margin-top:4px}.session-controls{margin:9px 0 12px}}@media (max-width:740px){.login-page{padding:24px 20px}.login-layout{grid-template-columns:1fr;max-width:470px;margin-top:28px}.login-story{padding:0}.login-story h1{font-size:2.125rem;margin:13px 0}.login-story h1 br{display:none}.login-story h1>span{display:block}.login-story>p{font-size:.8125rem}.login-illustration,.login-story-foot{display:none}.login-story .eyebrow{font-size:.75rem}.login-form-panel{padding:28px}.login-form-panel>h2{font-size:1.75rem}.portal-switch>button{font-size:.75rem}.login-footer{margin-top:25px}.password-card h1{font-size:1.6875rem}.account-panel,.teacher-accounts{padding:20px}.account-panel h2,.teacher-accounts h2{font-size:1.3125rem}.account-panel .section-title,.teacher-accounts .section-title{align-items:flex-start;gap:10px}.account-panel .section-title>.secondary,.teacher-accounts .section-title>.secondary{padding:9px;font-size:.75rem}.account-intro,.account-panel .eyebrow,.teacher-accounts .eyebrow{font-size:.75rem}.create-account,.create-student{padding:18px}.student-account{padding:15px}.student-account-heading .avatar{width:30px;height:30px}.account-status,.portal-role,.session-controls>.text-btn,.sidebar .session-controls>.text-btn{font-size:.75rem}.password-card{padding:28px}.student-account-heading h4{font-size:.75rem}}:where(button,[role=tab],select,input:not([type=checkbox],[type=radio],[type=hidden],[type=file])){min-height:44px}:where(.icon-btn,.profile-btn,[role=tab],.editor-tabs button){min-width:44px}:where(a.text-btn,a.secondary,a.primary,.skip-link,.footer-link){display:inline-flex;align-items:center;min-height:44px}.search-box{min-height:44px}.search-box input{min-height:42px}.slide-dots button{min-height:0}.admin-filters input,.admin-filters select,.create-account select,.reset-password-form select{border:1px solid #dbe3d0;border-radius:9px;background:#fbfcf8;padding:12px 13px;width:100%;font-size:.8125rem;color:#3b5031;min-width:0}.admin-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.admin-filters label{display:block;font-size:.75rem;font-weight:600;margin-bottom:6px}.student-roster>h3{font-size:1rem;margin-bottom:12px}.page-heading.row.spread{align-items:flex-end;gap:16px;flex-wrap:wrap}.teacher-note code{font-size:.75rem}@media (max-width:740px){.admin-filters{grid-template-columns:1fr}}.preview-banner{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;background:#efedff;border:1px solid #d9d2f3;color:#43386a;border-radius:12px;padding:14px 16px;margin-bottom:24px;font-size:.8125rem;line-height:1.6}.preview-banner>span{flex:1 1;min-width:220px}.preview-banner>svg{flex:none;color:var(--purple)}.login-admin-link{margin-top:12px;font-size:.75rem}.sidebar nav+.portal-role{margin-top:28px}.admin-note{margin-top:24px}.admin-note code{white-space:nowrap}.notice{display:flex;align-items:center;gap:10px;border-radius:12px;padding:8px 8px 8px 16px;margin:0 0 22px;font-size:.8125rem;line-height:1.6}.notice>span{flex:1 1;min-width:0;overflow-wrap:anywhere}.notice>svg{flex:none}.notice.success{background:#eaf2df;border:1px solid #d2e1bc;color:#34502c}.notice.error{background:#f9ece5;border:1px solid #ebd0bf;color:#7d5638}.confirm-dialog{border:1px solid #dfe8d4;border-radius:20px;padding:30px;width:min(440px,calc(100vw - 32px));background:#fcfdf8;color:var(--ink);box-shadow:0 20px 70px #20342125}.confirm-dialog::backdrop{background:#21382760;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-dialog h2{font-size:1.25rem;line-height:1.3;margin:0 0 10px}.confirm-body{font-size:.8125rem;line-height:1.7;color:var(--muted)}.confirm-body p+p{margin-top:8px}.confirm-icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#f6e3d6;color:#9a5a32;margin-bottom:14px}.confirm-dialog label{display:block;font-size:.75rem;font-weight:600;margin:18px 0 8px}.confirm-dialog input{border:1px solid #dbe3d0;border-radius:9px;background:white;padding:12px 13px;width:100%;font-size:.8125rem}.confirm-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:24px}.primary.danger-btn{background:#9a4f2b;box-shadow:0 3px 0 #5e2f1880}.primary.danger-btn:hover{background:#b25d34}.classroom-tag.teacher-tag{display:inline-flex;color:#4f6142}.classroom-tag.teacher-tag svg{color:#8fa279}@media (max-width:740px){.welcome.row.spread{flex-wrap:wrap;gap:12px}}@keyframes t-fade-in{0%{opacity:0}}@keyframes t-fade-out{to{opacity:0}}@keyframes t-rise-in{0%{opacity:0;translate:0 var(--distance-base)}}@keyframes t-drop-in{0%{opacity:0;translate:0 calc(var(--distance-micro) * -1)}}@keyframes t-swap-in{0%{opacity:0;translate:0 var(--distance-micro)}}@keyframes t-slide-in{0%{opacity:0;translate:calc(var(--distance-medium) * var(--slide-from, 1)) 0}}@keyframes t-modal-in{0%{opacity:0;scale:var(--scale-large)}}@keyframes t-modal-out{to{opacity:0;scale:var(--scale-large)}}@keyframes t-toast-in{0%{opacity:0;translate:0 var(--distance-large);scale:var(--scale-medium)}}@keyframes t-toast-out{to{opacity:0;translate:0 var(--distance-base);scale:var(--scale-medium)}}@keyframes t-icon-swap{0%{opacity:0;scale:.6;rotate:-30deg}}@keyframes t-attention{30%{scale:1.08}}@keyframes t-pop-in{0%{opacity:0;scale:.5}}@keyframes t-shake{0%{translate:0;animation-timing-function:cubic-bezier(.22,1,.36,1)}28.57%{translate:var(--distance-small) 0;animation-timing-function:cubic-bezier(.22,1,.36,1)}57.14%{translate:calc(var(--distance-small) * -1) 0;animation-timing-function:cubic-bezier(.22,1,.36,1)}78.57%{translate:var(--distance-micro) 0;animation-timing-function:cubic-bezier(.22,1,.36,1)}to{translate:0}}.page-view{animation:t-rise-in var(--duration-fast) var(--ease-smooth-out) backwards}.lesson-content{animation:t-fade-in var(--duration-fast) ease-out backwards}.slide-body{animation:t-slide-in var(--duration-fast) var(--ease-smooth-out) backwards}.slide-card{transition:background-color var(--duration-fast) ease-out,border-color var(--duration-fast) ease-out}.slide-dots button{transition:width var(--duration-fast) var(--ease-smooth-out)}.slide-dots button:before{transition:width var(--duration-fast) var(--ease-smooth-out),background-color var(--duration-quick) ease-out}:is(.lesson-grid,.game-grid,.stat-grid,.badge-grid,.resource-grid,.teacher-grid,.rhythm-grid,.lesson-status-list,.stagger)>*{animation:t-rise-in var(--duration-fast) var(--ease-smooth-out) backwards}:is(.lesson-grid,.game-grid,.stat-grid,.badge-grid,.resource-grid,.teacher-grid,.rhythm-grid,.lesson-status-list,.stagger)>:nth-child(2){animation-delay:calc(var(--duration-stagger) * 1)}:is(.lesson-grid,.game-grid,.stat-grid,.badge-grid,.resource-grid,.teacher-grid,.rhythm-grid,.lesson-status-list,.stagger)>:nth-child(3){animation-delay:calc(var(--duration-stagger) * 2)}:is(.lesson-grid,.game-grid,.stat-grid,.badge-grid,.resource-grid,.teacher-grid,.rhythm-grid,.lesson-status-list,.stagger)>:nth-child(4){animation-delay:calc(var(--duration-stagger) * 3)}:is(.lesson-grid,.game-grid,.stat-grid,.badge-grid,.resource-grid,.teacher-grid,.rhythm-grid,.lesson-status-list,.stagger)>:nth-child(5){animation-delay:calc(var(--duration-stagger) * 4)}:is(.lesson-grid,.game-grid,.stat-grid,.badge-grid,.resource-grid,.teacher-grid,.rhythm-grid,.lesson-status-list,.stagger)>:nth-child(n+6){animation-delay:calc(var(--duration-stagger) * 5)}.round-arrow{transition:translate var(--duration-fast) var(--ease-smooth-out),border-color var(--duration-quick) ease-out,color var(--duration-quick) ease-out}@media (hover:hover){.lesson-card:hover .round-arrow{translate:2px -2px;border-color:#b7c5a7;color:#426037}}.lesson-card:focus-visible .round-arrow{translate:2px -2px}.has-pill{position:relative;isolation:isolate}.has-pill:before{content:"";position:absolute;top:0;left:0;width:var(--pill-w,0);height:var(--pill-h,0);transform:translate(var(--pill-x,0),var(--pill-y,0));border-radius:var(--pill-radius,8px);background:var(--pill-bg,white);box-shadow:var(--pill-shadow,none);z-index:-1;opacity:0;pointer-events:none}.has-pill[data-pill]:before{opacity:1}.has-pill[data-pill=on]:before{transition:transform var(--duration-fast) var(--ease-smooth-out),width var(--duration-fast) var(--ease-smooth-out),height var(--duration-fast) var(--ease-smooth-out)}.has-pill[data-pill]>[aria-pressed=true],.has-pill[data-pill]>[aria-selected=true]{background:transparent;box-shadow:none}.track-switch{--pill-bg:white;--pill-shadow:0 1px 3px #25362e12;--pill-radius:7px}.lesson-tabs{--pill-bg:#e4ecd8;--pill-radius:8px}.editor-tabs{--pill-bg:#465b49;--pill-radius:5px}.portal-switch{--pill-bg:white;--pill-shadow:0 2px 4px #304d3010;--pill-radius:7px}.auth-error,.feedback,.hint-box,.lesson-code,.notes-panel,.notice,.reset-password-form,.storage-warning,.student-progress{animation:t-drop-in var(--duration-fast) var(--ease-smooth-out) backwards}.answers button.incorrect,.login-form-panel .auth-error{animation:t-shake .42s linear}.answers button.correct>svg,.lesson-player .status-done>svg{animation:t-pop-in var(--duration-slow) var(--ease-bounce) backwards}.mini-check{transition:color var(--duration-fast) ease-out}.swap-in{animation:t-swap-in var(--duration-fast) ease-out backwards}span.swap-in{display:inline-block}.icon-swap{display:inline-flex;animation:t-icon-swap var(--duration-fast) var(--ease-smooth-out) backwards}@property --progress{syntax:"<percentage>";inherits:false;initial-value:0%}.progress-ring{transition:--progress var(--duration-slow) var(--ease-smooth-out)}.toast{animation:t-toast-in var(--duration-medium) var(--ease-smooth-out) backwards}.toast.is-leaving{animation:t-toast-out var(--duration-fast) var(--ease-in) forwards;pointer-events:none}.modal-backdrop{animation:t-fade-in var(--duration-fast) ease-out backwards}.confirm-dialog[open],.profile-modal{animation:t-modal-in var(--duration-fast) var(--ease-smooth-out) backwards}.confirm-dialog[open]::backdrop{animation:t-fade-in var(--duration-fast) ease-out backwards}.modal-backdrop.is-closing{animation:t-fade-out var(--duration-quick) var(--ease-in) forwards}.confirm-dialog.is-closing,.modal-backdrop.is-closing .profile-modal{animation:t-modal-out var(--duration-quick) var(--ease-in) forwards}.confirm-dialog.is-closing::backdrop{animation:t-fade-out var(--duration-quick) var(--ease-in) forwards}.login-brand{animation:t-fade-in var(--duration-medium) ease-out backwards}.login-story>*{animation:t-rise-in var(--duration-medium) var(--ease-smooth-out) backwards}.login-story>:nth-child(2){animation-delay:calc(var(--duration-stagger) * 1)}.login-story>:nth-child(3){animation-delay:calc(var(--duration-stagger) * 2)}.login-story>:nth-child(4){animation-delay:calc(var(--duration-stagger) * 3)}.login-story>:nth-child(n+5){animation-delay:calc(var(--duration-stagger) * 4)}.login-form-panel{animation:t-rise-in var(--duration-medium) var(--ease-smooth-out) backwards;animation-delay:calc(var(--duration-stagger) * 2)}.setup-note{animation:t-drop-in var(--duration-fast) var(--ease-smooth-out) backwards}.empty-journal,.empty-state,.game-stage,.journal-entry,.path-info,.preview-banner,.session-controls [role=alert],.student-account,.tip-banner{animation:t-rise-in var(--duration-fast) var(--ease-smooth-out) backwards}.result-stage .big-score,.result-stage>.round-icon{animation:t-pop-in var(--duration-slow) var(--ease-bounce) backwards;animation-delay:calc(var(--duration-stagger) * 2)}.search-box .icon-btn,.timer-pill,nav .nav-dot{animation:t-pop-in var(--duration-fast) var(--ease-bounce) backwards}.timer-face{transition:color var(--duration-fast) ease-out}.timer-face.finished{animation:t-attention var(--duration-slow) var(--ease-smooth-out)}.account-status,.badge-card,.badge-icon{transition:background-color var(--duration-fast) ease-out,color var(--duration-fast) ease-out,opacity var(--duration-fast) ease-out}.resource-link{transition:translate var(--duration-fast) var(--ease-smooth-out),border-color var(--duration-quick) ease-out,background-color var(--duration-quick) ease-out}@media (hover:hover){.resource-link:hover{translate:0 -2px}}.playground-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.sandbox-backdrop{position:fixed;inset:0;z-index:150;background:#21382760;animation:t-fade-in var(--duration-fast) ease-out backwards}.sandbox-backdrop.is-collapsing{animation:t-fade-out var(--duration-quick) var(--ease-in) forwards}.playground.is-expanded{position:fixed;inset:16px;z-index:160;margin:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 70px #20342140;animation:t-modal-in var(--duration-fast) var(--ease-smooth-out) backwards}.playground.is-expanded.is-collapsing{animation:t-modal-out var(--duration-quick) var(--ease-in) forwards}.playground.is-expanded>.micro{display:none}.playground.is-expanded .editor-grid{flex:1 1;min-height:0;grid-template-rows:minmax(0,1fr)}.playground.is-expanded .code-editor{display:flex;flex-direction:column}.playground.is-expanded .code-editor textarea{flex:1 1;height:auto;min-height:0;resize:none}.playground.is-expanded .preview-canvas{min-height:0}.playground.is-expanded .preview-canvas iframe{height:auto;align-self:stretch}@media (max-width:740px){.playground.is-expanded{inset:0;border-radius:0}.playground.is-expanded .editor-grid{grid-template-rows:minmax(0,1fr) minmax(0,1fr)}}.game-card .eyebrow{text-transform:none}@media (max-width:980px){.save-status{display:inline}.save-rest{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.progress-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ring title" "ring text" "ring stats" "ring link";column-gap:28px;align-items:center;justify-items:start}.progress-card>.row{grid-area:title}.progress-card .progress-ring{grid-area:ring;width:140px;height:140px;margin:0}.progress-card>p{grid-area:text;text-align:start;margin:4px 0 0}.progress-card .journey-stats{grid-area:stats;justify-content:flex-start;border-top:0;margin-top:8px;padding-top:0}.progress-card>.text-btn{grid-area:link;margin-top:0}}@media (max-width:480px){.progress-card{display:flex}.progress-card>p{text-align:center}.progress-card .journey-stats{justify-content:center;border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.progress-card .progress-ring{margin:15px 0 9px}}@media (max-width:600px){.hero-card{min-height:0}.hero-copy{width:100%}.quest-art{position:relative;display:block;width:min(80%,290px);top:auto;right:auto;transform:none;margin:8px -10px -16px auto}}@media (max-width:420px){.save-status.saved{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}}.feedback:focus,.game-stage h1:focus,.lesson-step:focus{outline:none}.arcade-track{margin:-8px 0 24px}