*{box-sizing:border-box}:root{--bg: #f5f5f7;--panel: #ffffff;--text: #1d1d1f;--text-secondary: #6e6e73;--text-tertiary: #86868b;--hairline: #d2d2d7;--hairline-soft: rgba(0, 0, 0, .07);--blue: #0071e3;--blue-hover: #0077ed;--green: #34c759;--red: #d70015;--orange: #c93400;--gray-fill: #e8e8ed;--topbar-bg: rgba(255, 255, 255, .72);--switch-track: rgba(0, 0, 0, .16);--wheel-dim: #b6b6bb;--rail-glass: rgba(255, 255, 255, .58);--rail-glass-edge: rgba(255, 255, 255, .9);--rail-glass-shadow: rgba(31, 35, 48, .18);--rail-item-bg: rgba(255, 255, 255, .2);--rail-item-edge: rgba(29, 29, 31, .14);--rail-item-shadow: rgba(31, 35, 48, .11);--error-bg: #fdecec;--error-border: rgba(215, 0, 21, .15);--radius-card: 18px;--radius-field: 12px;--shadow-card: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .05);--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", "Segoe UI", Inter, sans-serif}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-nav-menu{position:relative}.home-topbar .site-nav{overflow:visible}.site-nav-menu>.site-nav-link{gap:3px}.site-nav-popover{position:absolute;z-index:70;top:calc(100% + 8px);right:0;display:grid;width:150px;padding:5px;border:1px solid var(--hairline-soft);border-radius:8px;background:var(--panel);box-shadow:0 14px 34px #00000024}.site-nav-popover button{width:100%;padding:9px 10px;border-radius:5px;background:transparent;color:var(--text-secondary);text-align:left;letter-spacing:0}.site-nav-popover button:hover{background:var(--hairline-soft);color:var(--text)}.classroom-page{--panel: #ffffff;--text: #1d1d1f;--text-secondary: #6e6e73;--text-tertiary: #86868b;--hairline: #d2d2d7;--hairline-soft: rgba(0, 0, 0, .07);--gray-fill: #e8e8ed;--topbar-bg: rgba(250, 250, 252, .9);background:#f5f5f7;color:#1d1d1f}html[data-theme=dark] .classroom-page .brand-icon img{filter:none;mix-blend-mode:multiply}.topbar.classroom-topbar{display:grid;grid-template-columns:minmax(230px,auto) minmax(260px,1fr) auto;min-height:69px;background:#fafafce6}.classroom-topbar .classroom-nav{justify-self:center}.classroom-nav,.classroom-header-actions{display:flex;align-items:center;gap:4px}.classroom-nav a,.classroom-nav button,.classroom-text-action{padding:8px 10px;border-radius:6px;background:transparent;color:#5f6066;font-size:13px;font-weight:560;line-height:1;letter-spacing:0;text-decoration:none}.classroom-nav a:hover,.classroom-nav button:hover,.classroom-text-action:hover{background:#0000000e;color:#1d1d1f}.classroom-header-actions{justify-self:end;gap:7px}.classroom-account{min-width:94px;max-width:160px;overflow:hidden;border-radius:6px;text-overflow:ellipsis;white-space:nowrap}.classroom-hero{position:relative;display:flex;height:clamp(520px,calc(100svh - 128px),760px);min-height:520px;overflow:hidden;align-items:center;background:#3a3c40 url(/images/classroom-hero.jpg) center center / cover no-repeat;color:#fff}.classroom-hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0b0c0fd6,#0b0c0fad 35%,#0b0c0f2e 72%,#0b0c0f0f)}.classroom-hero-content{position:relative;z-index:1;width:min(660px,calc(100% - 64px));margin-left:max(32px,calc((100% - 1440px)/2));padding-bottom:54px}.classroom-eyebrow,.classroom-section-heading>span,.classroom-audience>span{display:block;color:#ff6b61;font-size:12px;font-weight:720;letter-spacing:0;text-transform:uppercase}.classroom-hero h1{margin:13px 0 0;font-size:64px;font-weight:760;line-height:1.02;letter-spacing:0;text-shadow:0 2px 22px rgba(0,0,0,.32)}.classroom-hero-content>p{max-width:590px;margin:19px 0 0;color:#ffffffe0;font-size:20px;line-height:1.48;letter-spacing:0;text-shadow:0 1px 16px rgba(0,0,0,.4)}.classroom-hero-actions{display:flex;gap:9px;margin-top:28px}.classroom-primary,.classroom-ghost{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:9px;padding:11px 17px;border-radius:6px;font-weight:650;letter-spacing:0}.classroom-primary{background:#fff;color:#171719}.classroom-primary:hover{background:#f0f0f2}.classroom-ghost{border:1px solid rgba(255,255,255,.52);background:#0f101238;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.classroom-ghost:hover{border-color:#fff;background:#0f10126b}.classroom-hero-meta{position:absolute;z-index:1;right:max(28px,calc((100% - 1440px)/2));bottom:22px;left:max(28px,calc((100% - 1440px)/2));display:flex;justify-content:flex-end;gap:24px;color:#ffffffd1;font-size:12px;font-weight:600;letter-spacing:0}.classroom-hero-meta span{display:inline-flex;align-items:center;gap:7px}.classroom-outcomes{width:min(1440px,calc(100% - 64px));margin:0 auto;padding:74px 0 86px}.classroom-section-heading{display:grid;grid-template-columns:minmax(170px,.36fr) minmax(0,1fr);align-items:start;gap:44px;padding-bottom:42px;border-bottom:1px solid rgba(0,0,0,.12)}.classroom-section-heading h2{max-width:720px;margin:-7px 0 0;font-size:44px;line-height:1.08;letter-spacing:0}.classroom-outcome-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.classroom-outcome{min-width:0;padding:38px 34px 8px 0}.classroom-outcome+.classroom-outcome{padding-left:34px;border-left:1px solid rgba(0,0,0,.1)}.classroom-outcome-label{display:flex;align-items:center;gap:8px;color:#c92f27;font-size:12px;font-weight:720;letter-spacing:0;text-transform:uppercase}.classroom-outcome h3{margin:18px 0 0;font-size:22px;line-height:1.2;letter-spacing:0}.classroom-outcome p{max-width:390px;margin:11px 0 0;color:#6e6e73;font-size:15px;line-height:1.55;letter-spacing:0}.classroom-audiences{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) 64px;gap:1px;background:#3a3a3e;color:#f5f5f7}.classroom-audience{min-width:0;min-height:330px;padding:58px max(38px,calc((100vw - 1440px)/2));background:#1d1d20;scroll-margin-top:88px}.classroom-audience:nth-child(2){background:#242a31}.classroom-audience h2{max-width:520px;margin:17px 0 0;font-size:34px;line-height:1.12;letter-spacing:0}.classroom-audience p{max-width:540px;margin:15px 0 0;color:#b8b8bd;font-size:16px;line-height:1.55;letter-spacing:0}.classroom-audience-action{display:grid;width:64px;min-height:100%;place-items:center;border-radius:0;background:#c9372c;color:#fff}.classroom-audience-action:hover{background:#e14337}.classroom-pilot{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr);gap:clamp(54px,8vw,110px);padding:88px max(32px,calc((100vw - 1240px)/2));background:#f5f5f7;color:#1d1d1f}.classroom-pilot-copy>span{color:#c92f27;font-size:11px;font-weight:720;letter-spacing:0;text-transform:uppercase}.classroom-pilot-copy h2{max-width:520px;margin:18px 0 0;font-size:38px;line-height:1.08;letter-spacing:0}.classroom-pilot-copy>p{max-width:560px;margin:19px 0 0;color:#6e6e73;font-size:16px;line-height:1.6;letter-spacing:0}.classroom-pilot-copy dl{margin:34px 0 0;border-top:1px solid rgba(0,0,0,.13)}.classroom-pilot-copy dl>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.09)}.classroom-pilot-copy dt{color:#86868b;font-size:11px;letter-spacing:0}.classroom-pilot-copy dd{margin:0;font-size:12px;font-weight:650;letter-spacing:0}.pilot-form{min-width:0;padding-left:clamp(28px,4vw,58px);border-left:1px solid rgba(0,0,0,.13)}.pilot-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pilot-form label{display:flex;min-width:0;flex-direction:column;gap:7px;color:#6e6e73;font-size:11px;font-weight:650;letter-spacing:0}.pilot-form input,.pilot-form select,.pilot-form textarea{width:100%;min-height:43px;max-width:none;padding:10px 12px;border:1px solid rgba(0,0,0,.17);border-radius:6px;background:#fff;color:#1d1d1f;font:inherit;font-size:13px;letter-spacing:0;outline:none}.pilot-form select{padding-right:30px}.pilot-form textarea{min-height:112px;resize:vertical;line-height:1.5}.pilot-form input:focus,.pilot-form select:focus,.pilot-form textarea:focus{border-color:#0071e3;box-shadow:0 0 0 3px #0071e321}.pilot-form-wide{grid-column:1 / -1}.pilot-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.pilot-form .pilot-consent{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;margin-top:18px;line-height:1.4}.pilot-consent input{width:16px;height:16px;min-height:0;margin:0;accent-color:#0071e3}.pilot-submit{display:inline-flex;min-width:160px;align-items:center;justify-content:center;gap:7px;margin-top:20px;border-radius:6px}.pilot-form .error-banner{margin-top:16px}.pilot-form-success{display:flex;min-height:320px;align-items:flex-start;justify-content:center;flex-direction:column;padding-left:clamp(28px,4vw,58px);border-left:1px solid rgba(0,0,0,.13);color:#1d1d1f}.pilot-form-success svg{color:#34c759}.pilot-form-success h3{margin:18px 0 0;font-size:25px;letter-spacing:0}.pilot-form-success p{margin:9px 0 0;color:#6e6e73;font-size:14px;letter-spacing:0}.classroom-footer{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);align-items:center;gap:24px;min-height:110px;padding:22px 32px;background:#f5f5f7}.classroom-footer>span{color:#6e6e73;font-size:13px;letter-spacing:0;text-align:center}.classroom-footer>button{justify-self:end;border-radius:6px;background:transparent;color:#1d1d1f;letter-spacing:0}.classroom-footer>button:hover{background:#0000000e}.onboarding-page{background:var(--bg)}.topbar.onboarding-topbar{display:grid;grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr)}.onboarding-topbar .brand{justify-self:center}.onboarding-back{justify-self:start;border-radius:6px}.onboarding-step{justify-self:end;color:var(--text-tertiary);font-size:12px;font-weight:620;letter-spacing:0}.onboarding-main{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(460px,1.28fr);gap:72px;width:min(1100px,calc(100% - 64px));margin:auto;padding:72px 0 96px}.onboarding-intro{padding-top:12px}.onboarding-intro>span{color:var(--red);font-size:12px;font-weight:720;letter-spacing:0;text-transform:uppercase}.onboarding-intro h1{margin:14px 0 0;font-size:44px;line-height:1.08;letter-spacing:0}.onboarding-intro p{max-width:420px;margin:18px 0 0;color:var(--text-secondary);font-size:16px;line-height:1.55;letter-spacing:0}.onboarding-form{min-width:0}.onboarding-role-list{display:grid;gap:10px;margin:0;padding:0;border:0}.onboarding-role{display:grid;grid-template-columns:44px minmax(0,1fr) 28px;min-height:112px;align-items:center;gap:15px;width:100%;padding:18px;border:1px solid var(--hairline);border-radius:8px;background:var(--panel);color:var(--text);box-shadow:0 4px 16px var(--rail-item-shadow);text-align:left}.onboarding-role:hover{border-color:var(--text-tertiary)}.onboarding-role.selected{border-color:var(--blue);box-shadow:0 0 0 3px #0071e324}.onboarding-role-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:8px;background:var(--gray-fill);color:var(--text-secondary)}.onboarding-role.selected .onboarding-role-icon{background:var(--blue);color:#fff}.onboarding-role-copy{display:flex;min-width:0;flex-direction:column;gap:6px}.onboarding-role-copy strong{font-size:17px;line-height:1.2;letter-spacing:0}.onboarding-role-copy small{color:var(--text-secondary);font-size:13px;line-height:1.45;letter-spacing:0}.onboarding-role-check{display:grid;width:24px;height:24px;place-items:center;border:1px solid var(--hairline);border-radius:50%;color:#fff}.onboarding-role.selected .onboarding-role-check{border-color:var(--blue);background:var(--blue)}.onboarding-error{margin-top:12px}.onboarding-submit-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.onboarding-submit-row>span{max-width:330px;color:var(--text-tertiary);font-size:12px;line-height:1.4;letter-spacing:0}.onboarding-submit-row>button{display:inline-flex;min-width:176px;align-items:center;justify-content:center;gap:8px;border-radius:6px;letter-spacing:0}@media(min-width:768px)and (max-width:1180px),(min-width:1181px)and (max-width:1366px)and (pointer:coarse){.topbar.classroom-topbar{grid-template-columns:minmax(210px,1fr) auto}.classroom-topbar .classroom-nav{order:3;grid-column:1 / -1;justify-self:start}.classroom-header-actions{grid-column:2;grid-row:1}.classroom-hero{height:calc(100svh - 156px);min-height:500px}.classroom-hero h1{font-size:54px}.classroom-hero-content{width:min(590px,calc(100% - 48px));margin-left:28px}.classroom-outcomes{width:calc(100% - 48px)}.classroom-outcome{padding-right:20px}.classroom-outcome+.classroom-outcome{padding-left:20px}.classroom-audience{padding-inline:32px}.classroom-pilot{grid-template-columns:minmax(250px,.75fr) minmax(390px,1.25fr);gap:38px;padding-inline:32px}.pilot-form{padding-left:30px}.onboarding-main{grid-template-columns:.75fr 1.25fr;gap:38px;width:calc(100% - 48px)}}@media(max-width:767px),(max-height:500px)and (pointer:coarse){.home-topbar .site-nav{overflow:visible}.site-nav-popover{right:0;width:138px}.topbar.classroom-topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;padding:9px 12px}.classroom-topbar .brand{grid-column:1}.classroom-header-actions{grid-column:2;grid-row:1}.classroom-text-action{display:none}.classroom-account{min-width:76px;max-width:108px;padding-inline:11px}.classroom-topbar .classroom-nav{grid-column:1 / -1;grid-row:2;justify-self:stretch;overflow-x:auto}.classroom-nav a,.classroom-nav button{flex:1;min-width:78px;text-align:center}.classroom-hero{height:calc(100svh - 116px);min-height:430px;max-height:650px;align-items:flex-end;background-position:62% center}.classroom-hero-shade{background:#0c0d0f99}.classroom-hero-content{width:calc(100% - 32px);margin:0 16px;padding-bottom:82px}.classroom-hero h1{margin-top:9px;font-size:38px;line-height:1.04}.classroom-hero-content>p{margin-top:13px;font-size:16px;line-height:1.42}.classroom-hero-actions{flex-direction:column;gap:7px;margin-top:20px}.classroom-primary,.classroom-ghost{width:100%}.classroom-hero-meta{right:16px;bottom:16px;left:16px;justify-content:space-between;gap:7px}.classroom-hero-meta span{gap:4px;font-size:10px}.classroom-hero-meta svg{width:13px;height:13px}.classroom-outcomes{width:calc(100% - 32px);padding:50px 0 56px}.classroom-section-heading{grid-template-columns:1fr;gap:16px;padding-bottom:28px}.classroom-section-heading h2{margin:0;font-size:32px}.classroom-outcome-grid{grid-template-columns:1fr}.classroom-outcome,.classroom-outcome+.classroom-outcome{padding:26px 0;border-left:0;border-bottom:1px solid rgba(0,0,0,.1)}.classroom-outcome:last-child{border-bottom:0}.classroom-audiences{grid-template-columns:1fr 52px}.classroom-audience{grid-column:1;min-height:270px;padding:40px 22px}.classroom-audience:nth-child(2){grid-row:2}.classroom-audience h2{font-size:28px}.classroom-audience p{font-size:15px}.classroom-audience-action{grid-column:2;grid-row:1 / 3;width:52px}.classroom-pilot{grid-template-columns:1fr;gap:42px;padding:56px 18px 62px}.classroom-pilot-copy h2{font-size:31px}.classroom-pilot-copy>p{font-size:15px}.pilot-form{padding:32px 0 0;border-top:1px solid rgba(0,0,0,.13);border-left:0}.pilot-form-grid{grid-template-columns:1fr;gap:14px}.pilot-form-wide{grid-column:1}.pilot-submit{width:100%}.pilot-form-success{min-height:240px;padding:32px 0 0;border-top:1px solid rgba(0,0,0,.13);border-left:0}.classroom-footer{grid-template-columns:1fr auto;min-height:92px;gap:12px;padding:18px 16px}.classroom-footer>.brand{font-size:21px}.classroom-footer>span{display:none}.classroom-footer>button{padding-inline:10px;font-size:12px}.topbar.onboarding-topbar{grid-template-columns:auto minmax(0,1fr)}.onboarding-topbar .brand{justify-self:end}.onboarding-step{display:none}.onboarding-back{min-width:0;padding-inline:11px}.onboarding-main{display:block;width:calc(100% - 28px);padding:38px 0 60px}.onboarding-intro{padding:0}.onboarding-intro h1{font-size:34px}.onboarding-intro p{margin-top:13px;font-size:14px}.onboarding-form{margin-top:28px}.onboarding-role{grid-template-columns:40px minmax(0,1fr) 24px;min-height:104px;gap:11px;padding:14px 12px}.onboarding-role-icon{width:40px;height:40px}.onboarding-role-copy strong{font-size:16px}.onboarding-role-copy small{font-size:12.5px}.onboarding-submit-row{align-items:stretch;flex-direction:column;gap:12px}.onboarding-submit-row>button{width:100%}}html{color-scheme:light}html[data-theme=dark]{color-scheme:dark;--bg: #111114;--panel: #1d1d20;--text: #f5f5f7;--text-secondary: #a1a1a6;--text-tertiary: #78787d;--hairline: #3a3a3e;--hairline-soft: rgba(255, 255, 255, .09);--blue: #0a84ff;--blue-hover: #2094ff;--green: #30d158;--red: #ff6961;--orange: #ffa019;--gray-fill: #2a2a2e;--topbar-bg: rgba(20, 20, 23, .72);--switch-track: rgba(255, 255, 255, .24);--wheel-dim: #626268;--rail-glass: rgba(68, 68, 74, .58);--rail-glass-edge: rgba(255, 255, 255, .24);--rail-glass-shadow: rgba(0, 0, 0, .52);--rail-item-bg: rgba(255, 255, 255, .035);--rail-item-edge: rgba(255, 255, 255, .15);--rail-item-shadow: rgba(0, 0, 0, .34);--error-bg: #38181b;--error-border: rgba(255, 105, 97, .35);--shadow-card: 0 1px 2px rgba(0, 0, 0, .5), 0 8px 24px rgba(0, 0, 0, .4)}html[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2398989d' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;letter-spacing:-.011em;min-height:100vh}.page{min-height:100vh;display:flex;flex-direction:column}.app-shell{min-height:100vh;background:var(--bg)}.theme-studio{--bg: #111114;--panel: #1d1d20;--text: #f5f5f7;--text-secondary: #a1a1a6;--text-tertiary: #78787d;--hairline: #3a3a3e;--hairline-soft: rgba(255, 255, 255, .09);--blue: #0a84ff;--blue-hover: #2094ff;--gray-fill: #2a2a2e;--topbar-bg: rgba(20, 20, 23, .72);--switch-track: rgba(255, 255, 255, .24);--error-bg: #38181b;--error-border: rgba(255, 105, 97, .35);--shadow-card: 0 1px 2px rgba(0, 0, 0, .5), 0 8px 24px rgba(0, 0, 0, .4)}.theme-theatre{--bg: #090b10;--panel: #17131b;--text: #fff8ec;--text-secondary: #b8aa98;--text-tertiary: #8f847a;--hairline: #3c3440;--hairline-soft: rgba(255, 180, 84, .16);--blue: #64d2ff;--blue-hover: #7addff;--gray-fill: #241c23;--topbar-bg: rgba(14, 12, 17, .76);--switch-track: rgba(255, 255, 255, .24)}.theme-desk{--bg: #f3efe7;--panel: #fffaf0;--text: #263238;--text-secondary: #65706e;--text-tertiary: #8a8174;--hairline: #d2c8b6;--hairline-soft: rgba(63, 47, 29, .12);--blue: #2d6a4f;--blue-hover: #32815f;--gray-fill: #ece4d3;--topbar-bg: rgba(255, 250, 240, .78);--switch-track: rgba(38, 50, 56, .2);--shadow-card: 0 18px 50px rgba(63, 47, 29, .16)}.topbar{display:flex;align-items:center;gap:16px;padding:12px 28px;background:var(--topbar-bg);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--hairline-soft);position:sticky;top:0;z-index:20}.brand{font-size:25px;font-weight:800;letter-spacing:-.032em;display:grid;grid-template-columns:36px auto;grid-template-rows:auto auto;column-gap:9px;row-gap:1px;align-items:center;text-shadow:0 2px 8px rgba(0,0,0,.16)}html[data-theme=dark] .brand{text-shadow:0 2px 14px rgba(0,0,0,.7)}.brand-icon{position:relative;display:block;width:36px;height:36px;flex:0 0 36px;overflow:hidden;background:transparent;grid-row:1 / 3}.brand-icon img{position:absolute;top:50%;left:50%;width:76px;height:76px;max-width:none;transform:translate(-50%,-50%);object-fit:contain;mix-blend-mode:multiply}.brand-name{align-self:end;line-height:1;white-space:nowrap}.brand-lockup{position:relative;display:block;flex-shrink:0;overflow:hidden;background:transparent}.brand-lockup img{position:absolute;top:50%;left:50%;display:block;max-width:none;transform:translate(-50%,-50%);mix-blend-mode:multiply}.brand-lockup-header{width:32px;height:32px}.brand-lockup-header img{width:68px;height:68px}.brand-lockup-panel{width:min(220px,66vw);height:min(142px,43vw);margin:-20px auto 18px}.brand-lockup-panel img{width:min(355px,107vw);height:min(355px,107vw)}html[data-theme=dark] .brand-icon img,html[data-theme=dark] .brand-lockup img,.theme-studio .brand-lockup img,.theme-theatre .brand-lockup img{filter:invert(1);mix-blend-mode:screen}.tagline{align-self:start;margin:0;font-size:11.5px;font-weight:450;color:var(--text-tertiary);line-height:1.15;letter-spacing:0;text-shadow:none;white-space:nowrap}.home-topbar{display:grid;grid-template-columns:minmax(245px,auto) minmax(380px,1fr) auto;gap:20px}.home-topbar .site-nav{justify-self:center;margin-left:0;white-space:nowrap}.home-topbar .topbar-controls{justify-self:end;margin-left:0;min-width:0}.home-topbar .topbar-controls>*{flex-shrink:0}.home-topbar .mode-toggle{white-space:nowrap}.home-topbar .plan-pill{min-width:76px;white-space:nowrap}.home-topbar .paste-button{min-width:178px;white-space:nowrap}.home-topbar .account-button{min-width:104px;max-width:160px}.home-topbar .why-link{white-space:nowrap}.site-nav{display:flex;align-items:center;gap:2px;margin-left:auto}.site-nav-link{display:inline-flex;align-items:center;min-height:32px;padding:7px 10px;border:0;border-radius:6px;background:transparent;color:var(--text-secondary);font-family:var(--font-sans);font-size:13px;font-weight:520;letter-spacing:0;line-height:1;text-decoration:none;cursor:pointer;transition:color .18s ease,background .18s ease}.site-nav-link:hover{background:var(--hairline-soft);color:var(--text)}.site-nav-link:active{transform:none}.topbar-controls{margin-left:12px;display:flex;gap:10px;align-items:center}.plan-pill{padding:6px 10px;border:1px solid var(--hairline-soft);border-radius:6px;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:650;letter-spacing:0;font-variant-numeric:tabular-nums}.plan-pill:hover{border-color:var(--hairline);color:var(--text)}.header-notice{position:fixed;z-index:80;top:68px;left:50%;transform:translate(-50%);padding:9px 14px;border:1px solid var(--rail-glass-edge);border-radius:8px;background:var(--topbar-bg);color:var(--text);box-shadow:0 8px 24px var(--rail-glass-shadow);-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%);font-size:13px;font-weight:520;animation:notice-in .18s ease both}@keyframes notice-in{0%{opacity:0;transform:translate(-50%,-5px)}to{opacity:1;transform:translate(-50%)}}.lesson-title{font-weight:620;letter-spacing:-.018em;font-size:15px}.lesson-meta{margin-left:auto;color:var(--text-secondary);font-size:13px;white-space:nowrap}.hero{text-align:center;margin:44px 0 8px}.hero h1{margin:0;font-size:40px;font-weight:700;letter-spacing:-.028em}.hero p{margin:10px 0 0;font-size:17px;color:var(--text-secondary);letter-spacing:-.012em}select,input[type=text],input[type=email],input[type=password]{font-family:var(--font-sans);background:var(--panel);color:var(--text);border:1px solid var(--hairline);border-radius:var(--radius-field);padding:8px 14px;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236e6e73' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;max-width:250px;text-overflow:ellipsis}select:hover,input[type=text]:hover,input[type=email]:hover,input[type=password]:hover{border-color:#b8b8bf}select:focus,input[type=text]:focus,input[type=email]:focus,input[type=password]:focus{border-color:var(--blue);box-shadow:0 0 0 3.5px #0071e32e}input[type=text],input[type=email],input[type=password]{width:100%;padding:12px 16px;font-size:15px}input::placeholder{color:var(--text-tertiary)}button{font-family:var(--font-sans);border-radius:999px;padding:9px 20px;font-size:14px;font-weight:500;letter-spacing:-.01em;cursor:pointer;border:none;transition:background .15s ease,transform .1s ease}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.4;cursor:default}button.primary{background:var(--blue);color:#fff}button.primary:not(:disabled):hover{background:var(--blue-hover)}button.secondary{background:var(--gray-fill);color:var(--text)}button.secondary:not(:disabled):hover{background:#e0e0e6}.mode-toggle{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:450;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-secondary);padding:4px 2px}.mode-toggle.on{color:var(--text)}.mode-toggle input{display:none}.switch{width:36px;height:22px;border-radius:999px;background:var(--switch-track);position:relative;flex-shrink:0;transition:background .25s ease}.switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003,0 0 1px #0000001a;transition:transform .25s cubic-bezier(.3,.9,.4,1.1)}.mode-toggle.on .switch{background:var(--green)}.mode-toggle.on .switch:after{transform:translate(14px)}.input-main{max-width:920px;width:100%;margin:0 auto 48px;padding:0 24px;display:flex;flex-direction:column;gap:16px}.input-main>.editor-frame{margin-top:24px}.editor-frame{border-radius:var(--radius-card);overflow:hidden;position:relative;background:#17181c;box-shadow:var(--shadow-card)}.editor-frame.tall{flex:1;min-height:0}.action-row{display:flex;gap:10px;justify-content:flex-end}.error-banner{background:var(--error-bg);border:1px solid var(--error-border);color:var(--red);border-radius:var(--radius-field);padding:12px 16px;font-size:14px}.teaching-main{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;padding:20px 24px 24px;max-width:1400px;margin:0 auto;width:100%}.editor-pane{display:flex;flex-direction:column;gap:14px;min-height:0}.selection-button{position:absolute;right:16px;bottom:16px;z-index:5;box-shadow:0 4px 16px #00000040}.caption-bar{background:var(--panel);border:1px solid var(--hairline-soft);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:18px 24px}.caption-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--blue)}.caption-text{margin:8px 0 16px;font-size:17px;line-height:1.5;letter-spacing:-.014em}.transport{display:flex;gap:8px;align-items:center}.file-tabs{display:flex;gap:2px;align-items:center;padding:3px;background:var(--gray-fill);border-radius:11px;width:100%}.tab{background:transparent;color:var(--text-secondary);border-radius:8px;padding:6px 16px;font-size:13px;font-weight:500}.tab.active{background:var(--panel);color:var(--text);box-shadow:0 1px 3px #0000001a}.tab.suggested.active{color:#248a3d}.tab-action{margin-left:auto;padding:5px 14px;font-size:13px;background:transparent;color:var(--blue)}.tab-action:hover{background:#0071e314}.sidebar{background:var(--panel);border:1px solid var(--hairline-soft);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:20px;overflow-y:auto}.sidebar-section+.sidebar-section{margin-top:26px}.sidebar h3{margin:0 0 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.sidebar ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.prereq-list li{font-size:14px;padding:8px 12px;background:var(--bg);border-radius:10px}.concept{padding:10px 12px;border-radius:12px;border:1px solid var(--hairline-soft);transition:background .2s,border-color .2s}.concept.focus{border-color:#0071e359}.concept.active{background:#0071e312;border-color:var(--blue)}.concept-name{display:block;font-size:14px;font-weight:590;letter-spacing:-.01em}.concept-note{display:block;font-size:12px;color:var(--text-secondary);margin-top:3px;line-height:1.45}.skipped-list li{font-size:13px;color:var(--text-tertiary)}.suggestion-list .suggestion{padding:10px 12px;border-radius:12px;border:1px solid var(--hairline-soft);cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:background .15s,border-color .15s}.suggestion:hover{background:var(--bg);border-color:var(--hairline)}.badge{align-self:flex-start;font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:999px}.badge.flaw{background:#d700151a;color:var(--red)}.badge.improvement{background:#ff950024;color:var(--orange)}.suggestion-title{font-size:14px;font-weight:590;letter-spacing:-.01em}.suggestion-detail{font-size:12px;color:var(--text-secondary);line-height:1.45}.suggestion-lines{font-size:11px;color:var(--blue)}.focus-row{display:flex}.lesson-kind-switch{display:flex;align-items:center;justify-content:center;gap:6px;padding:4px;margin:2px auto 0;background:var(--gray-fill);border-radius:999px;width:fit-content}.lesson-kind-switch button{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--text-secondary);padding:8px 16px}.lesson-kind-switch button.active{background:var(--panel);color:var(--text);box-shadow:0 1px 5px #0000001f}.inspiration-panel{background:var(--panel);border:1px solid var(--hairline-soft);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:16px}.section-heading{margin-bottom:12px;color:var(--text-tertiary);font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.inspiration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.inspiration-tile{align-items:stretch;flex-direction:column;gap:6px;text-align:left;background:var(--bg);border:1px solid var(--hairline-soft);border-radius:var(--radius-field);padding:12px;color:var(--text)}.inspiration-tile.active{border-color:var(--blue);box-shadow:0 0 0 3px #0071e324}.tile-title{font-size:13px;font-weight:650}.tile-note{color:var(--text-secondary);font-size:12px;line-height:1.35}.swatches{display:flex;gap:5px;margin-top:4px}.swatches span{width:20px;height:20px;border:1px solid var(--hairline-soft);border-radius:50%}.teacher-exchange{border:1px solid var(--hairline-soft);border-radius:var(--radius-field);background:var(--bg);padding:12px 14px;margin:0 0 14px}.teacher-exchange div{display:flex;align-items:center;gap:10px}.teacher-exchange strong{font-size:13px}.teacher-exchange span,.question-text,.answer-text{color:var(--text-secondary);font-size:13px;line-height:1.45}.question-text,.answer-text{margin:8px 0 0}.mic-control.listening{background:#ff3b301f;color:var(--red)}.lesson-title span{display:block}.lesson-title small{display:block;color:var(--text-tertiary);font-size:11px;font-weight:500;margin-top:2px}.build-main{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;padding:20px 24px 24px;max-width:1400px;margin:0 auto;width:100%}.build-stage{min-height:0;display:flex;flex-direction:column;gap:14px}.build-brief{background:var(--panel);border:1px solid var(--hairline-soft);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:18px 22px}.build-brief h2{margin:8px 0 4px;font-size:26px;line-height:1.15}.build-brief p{margin:0;color:var(--text-secondary)}.build-editor{flex:1;min-height:380px}.build-sidebar{max-height:calc(100vh - 104px)}.home{flex:1;min-height:0;position:relative;overflow:hidden}.home-rails{position:relative;z-index:10;display:flex;flex-direction:column;gap:10px;align-items:stretch;padding:16px 32px 18px;border-bottom:1px solid var(--hairline-soft)}.topic-search{position:relative;z-index:12;width:min(260px,100%);max-width:1600px;margin:0 max(0px,calc((100% - 1600px)/2)) 0 auto}.topic-search-field{display:flex;align-items:center;gap:8px;height:34px;padding:0 9px 0 11px;border:1px solid var(--hairline-soft);border-radius:8px;background:var(--panel);color:var(--text-tertiary);box-shadow:0 2px 7px var(--rail-item-shadow);transition:border-color .16s ease,box-shadow .16s ease,width .16s ease}.topic-search.focused .topic-search-field{border-color:var(--hairline);box-shadow:0 4px 14px var(--rail-item-shadow)}.topic-search-field input{min-width:0;flex:1;padding:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:13px;letter-spacing:0}.topic-search-field input::-webkit-search-cancel-button{display:none}.topic-search-field input::placeholder{color:var(--text-tertiary)}.topic-search-clear{display:grid;width:22px;height:22px;min-width:22px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text-tertiary)}.topic-search-clear:hover{background:var(--gray-fill);color:var(--text)}.topic-search-results{position:absolute;top:calc(100% + 7px);right:0;width:min(440px,calc(100vw - 32px));max-height:340px;overflow-y:auto;padding:5px;border:1px solid var(--hairline-soft);border-radius:8px;background:var(--panel);box-shadow:0 14px 36px #00000029}.topic-search-result{display:flex;width:100%;min-height:54px;align-items:center;justify-content:space-between;gap:14px;padding:8px 9px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left}.topic-search-result:hover,.topic-search-result:focus-visible{background:var(--gray-fill)}.topic-search-result-main{min-width:0;display:flex;flex-direction:column;gap:3px}.topic-search-result-main strong{overflow:hidden;font-size:13.5px;font-weight:650;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.topic-search-result-main small{overflow:hidden;color:var(--text-tertiary);font-size:11.5px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.topic-search-keywords{display:flex;max-width:48%;flex-wrap:wrap;justify-content:flex-end;gap:4px}.topic-search-keywords span{padding:3px 6px;border:1px solid var(--hairline-soft);border-radius:999px;color:var(--text-secondary);font-size:10.5px;line-height:1;white-space:nowrap}.topic-search-empty{margin:0;padding:20px 12px;color:var(--text-tertiary);font-size:13px;text-align:center}.home-left{position:relative;z-index:2;height:100%;max-width:620px;margin:0 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:16px 24px;pointer-events:none}.home-left>*{pointer-events:auto}.home-left .home-actions{justify-content:center}.home-cover{position:relative;width:min(380px,90%);aspect-ratio:16 / 10;border-radius:var(--radius-card);overflow:hidden;margin-bottom:28px;box-shadow:var(--shadow-card);background:var(--gray-fill)}.home-cover img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .15s ease-out}.home-cover img.on{opacity:1}.home-panel{animation:panel-in .26s ease both}@keyframes panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.home-overline{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#ff3b30}.home-count{margin-top:22px;font-size:13px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.home-title{max-width:100%;margin:14px 0 0;font-size:clamp(40px,5.5vw,72px);font-weight:700;letter-spacing:-.032em;line-height:1.02;overflow-wrap:break-word;text-wrap:balance}.home-title.home-title-long{font-size:56px}.home-title.home-title-xlong{font-size:48px}.home-blurb{margin:18px 0 0;max-width:440px;font-size:18px;line-height:1.5;color:var(--text-secondary);letter-spacing:-.014em}.home-actions{display:flex;gap:10px;margin-top:30px}.vscode-action{display:inline-flex;align-items:center;gap:7px}.home-error{margin-top:18px;max-width:440px}.home-right{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.topic-wheel{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.desktop-wheel-options{position:absolute;top:0;right:0;bottom:0;left:0}.mobile-topic-picker{display:none}.wheel-sound{position:absolute;z-index:4;top:14px;right:14px;display:grid;width:26px;height:26px;min-width:26px;place-items:center;padding:0;border:1px solid var(--hairline-soft);border-radius:50%;background:var(--topbar-bg);color:var(--text-secondary);box-shadow:0 2px 8px var(--rail-item-shadow);-webkit-backdrop-filter:blur(12px) saturate(160%);backdrop-filter:blur(12px) saturate(160%)}.wheel-sound:hover{color:var(--text)}.wheel-item{position:absolute;top:50%;right:-420px;width:1200px;height:56px;margin-top:-28px;display:flex;align-items:center;justify-content:flex-end;padding:0 490px 0 0;gap:14px;transform-origin:100% 50%;background:none;border:none;border-radius:0;cursor:pointer;will-change:transform,opacity}.wheel-item:active{transform:none}.wheel-label{max-width:430px;overflow:hidden;text-overflow:ellipsis;font-size:26px;font-weight:480;letter-spacing:-.02em;color:var(--wheel-dim);white-space:nowrap;transition:color .14s ease,font-size .14s ease,font-weight .14s ease}.wheel-label-long{font-size:24px}.wheel-label-xlong{font-size:22px}.wheel-dot{width:13px;height:13px;border-radius:50%;background:#ff3b30;flex-shrink:0;opacity:0;transform:scale(.5);transition:opacity .14s ease,transform .14s ease;order:-1}.wheel-item.active .wheel-label{color:var(--text);font-size:34px;font-weight:650}.wheel-item.active .wheel-label-long{font-size:30px}.wheel-item.active .wheel-label-xlong{font-size:27px}.wheel-item.active .wheel-dot{opacity:1;transform:scale(1)}.lang-tabs,.topic-links{position:relative;isolation:isolate;display:flex;gap:20px;flex-wrap:wrap;row-gap:2px}.rail-selection{position:absolute;z-index:0;top:0;left:0;width:var(--selection-width, 0px);height:var(--selection-height, 0px);transform:translate3d(var(--selection-x, 0px),var(--selection-y, 0px),0);border:1px solid var(--rail-glass-edge);border-radius:999px;background:linear-gradient(135deg,rgba(255,255,255,.6),transparent 48%),var(--rail-glass);box-shadow:0 7px 20px var(--rail-glass-shadow),inset 0 1px #ffffffb8,inset 0 -1px #ffffff2e;-webkit-backdrop-filter:blur(18px) saturate(185%);backdrop-filter:blur(18px) saturate(185%);opacity:0;overflow:hidden;pointer-events:none;will-change:transform,width,height}.rail-selection:before{content:"";position:absolute;top:1px;left:12%;width:76%;height:42%;border-top:1px solid rgba(255,255,255,.92);border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.42),transparent)}.selection-ready .rail-selection{opacity:1;transition:transform .56s cubic-bezier(.22,1,.36,1),width .46s cubic-bezier(.22,1,.36,1),height .46s cubic-bezier(.22,1,.36,1),opacity .18s ease}.tour-bar{display:flex;justify-content:center;padding:8px 0 24px}.tour-button{background:#ff9500;color:#fff;border:none;border-radius:999px;padding:12px 30px;font-size:15px;font-weight:600;letter-spacing:-.01em;cursor:pointer;text-transform:capitalize;box-shadow:0 6px 20px #ff950059;transition:filter .15s,transform .1s}.tour-button:hover{filter:brightness(1.06)}.tour-button:active{transform:scale(.98)}.tour{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120}.tour-ring{position:fixed;border:2.5px solid #ff9500;border-radius:14px;box-shadow:0 0 0 9999px #00000073;transition:all .35s cubic-bezier(.3,.9,.3,1);pointer-events:none}.tour-card{position:fixed;width:340px;background:var(--panel);border-radius:var(--radius-card);box-shadow:0 12px 48px #00000040;padding:18px 20px;animation:panel-in .3s ease both}.tour-step-num{font-size:12px;font-weight:650;color:#ff9500;font-variant-numeric:tabular-nums}.tour-card h3{margin:6px 0 0;font-size:18px;font-weight:650;letter-spacing:-.015em;text-transform:capitalize}.tour-card p{margin:8px 0 14px;font-size:14px;line-height:1.5;color:var(--text-secondary)}.tour-controls{display:flex;gap:8px;justify-content:flex-end}.tour-controls .secondary:first-child{margin-right:auto}.lesson-controls{margin-left:auto;display:flex;align-items:center;gap:12px}.lesson-controls select{max-width:230px}.lesson-controls .lesson-meta{margin-left:0}.rail-link{position:relative;z-index:1;background:none;border:1px solid transparent;border-radius:999px;font-weight:480;color:var(--text-tertiary);letter-spacing:0;transition:color .26s ease,border-color .26s ease,box-shadow .26s ease,background .26s ease,transform .22s ease}.rail-link:hover{color:var(--text);transform:translateY(-1px)}.rail-link.active{color:var(--text);background:transparent;font-weight:680}.rail-num{color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-right:4px;font-size:.72em}.rail-link.active .rail-num{color:var(--text-secondary)}.lang-tabs{width:100%;max-width:1600px;margin:0 auto;justify-content:flex-start;gap:6px}.lang-tabs .rail-link{padding:9px 18px;border-color:var(--rail-item-edge);background:var(--rail-item-bg);box-shadow:0 2px 8px var(--rail-item-shadow);color:var(--text-secondary);font-size:18px;font-weight:590}.lang-tabs .rail-link:hover{border-color:var(--hairline);box-shadow:0 4px 12px var(--rail-item-shadow)}.lang-tabs .rail-link.active{border-color:transparent;background:transparent;box-shadow:none;color:var(--text);font-weight:720}.topic-links{width:100%;max-width:1600px;margin:0 auto;justify-content:flex-start;gap:4px}.topic-links .rail-link{font-size:14px;padding:6px 14px}@media(prefers-reduced-motion:reduce){.selection-ready .rail-selection,.rail-link,.home-cover img{transition-duration:1ms}}@media(max-width:1650px){.home-topbar{grid-template-columns:auto minmax(0,1fr);gap:10px 20px}.home-topbar .site-nav{justify-self:end}.home-topbar .topbar-controls{grid-column:1 / -1;width:100%;justify-content:flex-end}}@media(max-width:1000px){.topbar{flex-wrap:wrap}.tagline{display:none}.site-nav{order:3;width:100%;margin-left:0;overflow-x:auto}.topbar-controls{margin-left:auto}.home-topbar{grid-template-columns:minmax(0,1fr)}.home-topbar .brand,.home-topbar .site-nav,.home-topbar .topbar-controls{grid-column:1}.home-topbar .site-nav,.home-topbar .topbar-controls{justify-self:stretch}.home-topbar .topbar-controls{justify-content:flex-start;overflow-x:auto}.home-rails{padding-inline:20px}.home-cover{width:min(300px,82%)}.home-title{font-size:clamp(34px,9vw,52px)}.lang-tabs .rail-link{font-size:15px;padding:7px 14px}}.why-link{background:none;border:none;padding:4px 8px;font-size:20px;font-weight:700;letter-spacing:-.02em;color:#ff3b30;cursor:pointer}.why-link:hover{opacity:.75}.why-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--bg);overflow-y:auto;animation:panel-in .25s ease both}.why-close{position:fixed;top:18px;right:24px;z-index:101}.why-inner{max-width:720px;margin:0 auto;padding:88px 24px 120px}.why-title{margin:14px 0 48px;font-size:clamp(36px,5vw,56px);font-weight:700;letter-spacing:-.03em;line-height:1.05}.why-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:36px}.why-item{display:flex;gap:20px}.why-num{color:#ff3b30;font-size:13px;font-weight:650;font-variant-numeric:tabular-nums;padding-top:5px;flex-shrink:0}.why-item h3{margin:0;font-size:21px;font-weight:650;letter-spacing:-.02em}.why-item p{margin:8px 0 0;font-size:15px;line-height:1.55;color:var(--text-secondary);letter-spacing:-.008em}.why-footer{margin:56px 0 0;font-size:17px;font-weight:650;letter-spacing:-.015em}.contact-overlay{position:fixed;z-index:160;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:56px 24px;overflow-y:auto;background:#08080ad1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.contact-close{position:fixed;z-index:1;top:20px;right:22px;display:grid;width:36px;height:36px;min-width:36px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:#141416b8;color:#f5f5f7}.contact-inner{width:min(760px,100%)}.contact-card{position:relative;width:100%;aspect-ratio:1.78 / 1;overflow:hidden;padding:42px 48px;border:1px solid #d6d0c3;border-radius:2px;background:#f3f0e7;color:#171715;box-shadow:0 30px 80px #00000070,inset 0 0 36px #5e523a0d;font-family:Baskerville,Times New Roman,serif}.contact-card-brand{display:block;font-size:11px;font-weight:700;letter-spacing:.18em;text-align:center;text-transform:uppercase}.contact-card-center{position:absolute;top:50%;left:50%;display:flex;width:calc(100% - 96px);align-items:center;flex-direction:column;transform:translate(-50%,-50%);text-align:center}.contact-card-center strong{font-size:31px;font-weight:500;letter-spacing:.08em;line-height:1.1;text-transform:uppercase}.contact-card-center span{margin-top:9px;font-size:10px;letter-spacing:.28em;text-transform:uppercase}.contact-card-footer{position:absolute;right:48px;bottom:36px;left:48px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-family:var(--font-sans);font-size:11px;letter-spacing:0}.contact-card-footer a{color:inherit;text-decoration:none}.contact-card-footer a:hover{text-decoration:underline}.contact-card-mark{position:absolute;right:-6px;bottom:-30px;color:#2b271e0b;font-size:160px;font-weight:700;line-height:1;pointer-events:none}.contact-actions{display:flex;justify-content:center;gap:9px;margin-top:18px}.contact-actions a,.contact-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none}.contact-mail{padding:9px 20px;border-radius:999px;background:var(--blue);color:#fff;font:500 14px var(--font-sans)}.contact-mail:hover{background:var(--blue-hover)}.contact-actions .secondary{padding:9px 20px;border-radius:999px;background:var(--gray-fill);color:var(--text)}.contact-github{font:500 14px var(--font-sans)}.home-title,.home-blurb,.home-count,.wheel-label,.rail-link,.lesson-title,.lesson-meta,.tagline,.hero h1,.hero p,.concept-name,.suggestion-title,.prereq-list li,.skipped-list li,.why-title,.why-item h3,button.primary,button.secondary,.tab,.tab-action,.mode-toggle,.why-link{text-transform:capitalize}.timeline-page{background:var(--bg)}.timeline-topbar{justify-content:space-between}.timeline-back,.timeline-next,.timeline-result-actions button,.timeline-stage-heading button,.timeline-resume button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.timeline-main{width:min(1080px,calc(100% - 48px));margin:0 auto;padding:48px 0 64px}.timeline-heading{max-width:660px;margin-bottom:28px}.timeline-heading h1,.timeline-waiting h1,.timeline-result-head h1{margin:8px 0 0;font-size:44px;line-height:1.06;letter-spacing:0;text-transform:capitalize}.timeline-heading p,.timeline-waiting p,.timeline-result-head p{margin:10px 0 0;color:var(--text-secondary);font-size:16px;line-height:1.55;letter-spacing:0}.timeline-resume{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px;padding:15px 16px;border:1px solid rgba(0,113,227,.28);border-radius:8px;background:var(--panel)}.timeline-resume>div{display:flex;min-width:0;flex-direction:column;gap:2px}.timeline-resume span{color:var(--blue);font-size:11px;font-weight:700;text-transform:uppercase}.timeline-resume strong{font-size:16px}.timeline-resume small{color:var(--text-tertiary);font-size:12px}.timeline-path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.timeline-path{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;grid-template-rows:auto auto;gap:12px 14px;min-height:178px;padding:18px;border:1px solid var(--hairline-soft);border-radius:8px;background:var(--panel);color:var(--text);text-align:left;box-shadow:0 2px 10px var(--rail-item-shadow)}.timeline-path:hover{border-color:var(--hairline);transform:translateY(-2px)}.timeline-path-icon{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--hairline-soft);border-radius:8px;background:var(--gray-fill);color:var(--blue)}.timeline-path-copy{display:flex;min-width:0;flex-direction:column;gap:4px}.timeline-path-copy strong{font-size:18px;font-weight:720;letter-spacing:0}.timeline-path-copy small{color:var(--text-secondary);font-size:13px;font-weight:600}.timeline-path-copy>span{margin-top:5px;color:var(--text-tertiary);font-size:12.5px;line-height:1.45}.timeline-path-arrow{align-self:center;color:var(--text-tertiary)}.timeline-path-skills{grid-column:2 / 4;display:flex;flex-wrap:wrap;align-self:end;gap:5px}.timeline-path-skills span,.timeline-stage-skills span,.timeline-signal strong{padding:4px 7px;border:1px solid var(--hairline-soft);border-radius:999px;color:var(--text-secondary);font-size:11px;font-weight:560;line-height:1;white-space:nowrap}.timeline-error{margin:18px auto 0}.timeline-waiting{min-height:62vh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.timeline-pulse{display:grid;width:58px;height:58px;margin-bottom:22px;place-items:center;border:1px solid var(--hairline);border-radius:50%;color:var(--blue);animation:timeline-pulse 1.4s ease-in-out infinite}@keyframes timeline-pulse{0%,to{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1)}}.timeline-assessment{width:min(820px,calc(100% - 48px))}.timeline-assessment-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.timeline-assessment-meta>div:first-child{display:flex;flex-direction:column;gap:2px}.timeline-assessment-meta span{color:var(--text-tertiary);font-size:12px}.timeline-assessment-meta strong{font-size:14px}.timeline-difficulty{display:flex;align-items:center;gap:10px}.timeline-difficulty>div{display:flex;gap:4px}.timeline-difficulty i{width:18px;height:4px;border-radius:2px;background:var(--hairline)}.timeline-difficulty i.on{background:var(--orange)}.timeline-question{padding:28px 30px 30px;border:1px solid var(--hairline-soft);border-radius:8px;background:var(--panel);box-shadow:var(--shadow-card);animation:panel-in .18s ease both}.timeline-question h1{margin:10px 0 20px;font-size:25px;line-height:1.28;letter-spacing:0}.timeline-snippet{margin-bottom:18px}.timeline-next{margin:14px 0 0 auto}.timeline-quiz-footer{margin-top:12px;color:var(--text-tertiary);font-size:12px;text-align:center}.timeline-roadmap{width:min(980px,calc(100% - 48px))}.timeline-result-head{display:grid;grid-template-columns:minmax(0,1fr) 138px;align-items:center;gap:48px;padding-bottom:32px;border-bottom:1px solid var(--hairline-soft)}.timeline-result-head p{max-width:680px}.timeline-result-actions{display:flex;gap:8px;margin-top:22px}.timeline-score{display:flex;width:138px;height:138px;align-items:center;justify-content:center;flex-direction:column;border:7px solid var(--blue);border-radius:50%;background:var(--panel);font-variant-numeric:tabular-nums}.timeline-score strong{font-size:40px;line-height:1}.timeline-score span{margin-top:4px;color:var(--text-tertiary);font-size:11px;text-transform:uppercase}.timeline-signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}.timeline-signal{min-width:0;padding:14px 16px;border-left:3px solid var(--green);background:var(--panel)}.timeline-signal.gaps{border-left-color:var(--orange)}.timeline-signal>span{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:680}.timeline-signal>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.timeline-signal strong{background:var(--bg)}.timeline-duration{display:flex;align-items:center;gap:7px;margin:28px 0 16px;color:var(--text-secondary);font-size:13px}.timeline-stages{margin:0;padding:0;list-style:none}.timeline-stage{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:18px;padding-bottom:18px}.timeline-stage:before{content:"";position:absolute;top:42px;bottom:-2px;left:21px;width:1px;background:var(--hairline)}.timeline-stage:last-child:before{display:none}.timeline-stage-marker{position:relative;z-index:1;display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--hairline);border-radius:50%;background:var(--bg);color:var(--text);font-size:13px;font-weight:720}.timeline-stage-content{padding:18px 20px;border:1px solid var(--hairline-soft);border-radius:8px;background:var(--panel)}.timeline-stage-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.timeline-stage-heading>div{min-width:0}.timeline-stage-heading span{color:var(--text-tertiary);font-size:11px;text-transform:uppercase}.timeline-stage-heading h2{margin:4px 0 0;font-size:20px;line-height:1.2;letter-spacing:0}.timeline-stage-content>p{margin:12px 0 5px;color:var(--text-secondary);font-size:14px;line-height:1.5}.timeline-stage-content>small{display:block;color:var(--text-tertiary);font-size:12px;line-height:1.45}.timeline-stage-skills{display:flex;flex-wrap:wrap;gap:5px;margin-top:13px}.timeline-project{display:flex;align-items:flex-start;gap:9px;margin-top:14px;padding-top:13px;border-top:1px solid var(--hairline-soft)}.timeline-project svg{flex-shrink:0;margin-top:2px;color:var(--orange)}.timeline-project>span{display:flex;flex-direction:column;gap:2px;color:var(--text-secondary);font-size:12.5px;line-height:1.4}.timeline-project strong{color:var(--text);font-size:11px;text-transform:uppercase}@media(prefers-reduced-motion:reduce){.timeline-pulse{animation:none}}.quiz-main{flex:1;min-height:0;overflow-y:auto;display:flex;justify-content:center;padding:28px 24px 48px}.quiz-card{width:min(760px,100%);background:var(--panel);border:1px solid var(--hairline-soft);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:26px 30px 30px;height:fit-content;animation:panel-in .25s ease both}.quiz-question{margin:10px 0 18px;font-size:23px;font-weight:650;letter-spacing:-.02em;line-height:1.25}.quiz-snippet{margin-bottom:18px}.quiz-options{display:flex;flex-direction:column;gap:10px}.quiz-option{display:flex;align-items:center;gap:14px;text-align:left;background:var(--bg);border:1.5px solid var(--hairline-soft);border-radius:var(--radius-field);padding:13px 16px;font-size:15px;letter-spacing:-.01em;color:var(--text);transition:border-color .15s,background .15s}.quiz-option:not(:disabled):hover{border-color:var(--blue)}.quiz-option:disabled{opacity:1;cursor:default}.quiz-option.correct{border-color:var(--green);background:#30d1581a}.quiz-option.wrong{border-color:var(--red);background:var(--error-bg)}.quiz-option.muted{opacity:.45}.quiz-letter{width:26px;height:26px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--gray-fill);font-size:12px;font-weight:650}.quiz-option.correct .quiz-letter{background:var(--green);color:#fff}.quiz-option.wrong .quiz-letter{background:var(--red);color:#fff}.quiz-option-text{font-family:SF Mono,ui-monospace,Menlo,monospace;font-size:13.5px}.quiz-feedback{margin-top:18px;border-radius:var(--radius-field);padding:14px 16px;font-size:14px;line-height:1.5;animation:panel-in .2s ease both}.quiz-feedback.right{background:#30d1581a}.quiz-feedback.off{background:var(--error-bg)}.quiz-result{text-align:center;padding:44px 30px}.quiz-score{font-size:64px;font-weight:800;letter-spacing:-.03em;margin:14px 0 4px;font-variant-numeric:tabular-nums}.quiz-verdict{color:var(--text-secondary);font-size:16px;margin:0 0 26px}.quiz-cta{margin-left:auto}.account-button{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-inner{max-width:720px}.account-hint{color:var(--text-secondary);font-size:15px;line-height:1.5;margin:0 0 24px}.account-plan-note{margin:-14px 0 22px;color:var(--text-tertiary);font-size:13px}.auth-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:3px;width:100%;margin:-24px 0 16px;padding:3px;border-radius:8px;background:var(--gray-fill)}.auth-tabs button{border-radius:6px;background:transparent;color:var(--text-secondary);font-weight:620}.auth-tabs button.active{background:var(--panel);color:var(--text);box-shadow:0 1px 4px #0000001f}.oauth-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.oauth-buttons button{display:inline-flex;min-width:0;align-items:center;justify-content:center;gap:8px;border:1px solid var(--hairline);border-radius:8px;background:var(--panel);color:var(--text);box-shadow:0 2px 8px var(--rail-item-shadow)}.oauth-buttons button:disabled{opacity:.4}.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--text-tertiary);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--hairline-soft)}.auth-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.auth-form>label{display:flex;min-width:0;flex-direction:column;gap:6px;color:var(--text-secondary);font-size:12px;font-weight:620}.auth-form>label:has(input[type=email]),.auth-form>label:has(input[type=password]),.auth-form>label:first-child{grid-column:1 / -1}.auth-form label small{color:var(--text-tertiary);font-size:11px;font-weight:450}.address-fields{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:2px 0 0;padding:16px;border:1px solid var(--hairline-soft);border-radius:8px}.address-fields legend{padding:0 6px;color:var(--text);font-size:13px;font-weight:680}.address-fields label{display:flex;min-width:0;flex-direction:column;gap:6px;color:var(--text-secondary);font-size:12px;font-weight:620}.address-fields .address-wide{grid-column:1 / -1}.auth-submit{grid-column:1 / -1;justify-self:start;margin-top:2px}.session-note{margin:14px 0 0;color:var(--text-tertiary);font-size:11.5px;line-height:1.45}.auth-error{margin-top:14px}.account-identity{display:flex;flex-wrap:wrap;gap:8px 16px;margin:-28px 0 24px;color:var(--text-secondary);font-size:13px;text-transform:capitalize}.profile-completion{margin:0 0 24px;padding:18px 0 22px;border-top:1px solid var(--hairline-soft);border-bottom:1px solid var(--hairline-soft)}.profile-completion h2{margin:0;font-size:18px}.profile-completion p{margin:6px 0 16px;color:var(--text-secondary);font-size:13px;line-height:1.5}.account-section-title{margin:30px 0 12px;font-size:16px}.account-logout{margin-top:28px}.account-plan-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 24px;padding:12px 14px;border:1px solid var(--hairline-soft);border-radius:8px;background:var(--panel)}.account-plan-row.limit-reached{border-color:var(--red);background:var(--error-bg)}.account-plan-row>div{display:flex;flex-direction:column;gap:2px}.account-plan-name{font-size:14px;font-weight:680;text-transform:capitalize}.account-plan-usage{color:var(--text-secondary);font-size:12.5px}.login-row{display:flex;gap:10px}.login-row input{flex:1}.history-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.history-item{display:flex;align-items:center;gap:14px;background:var(--panel);border:1px solid var(--hairline-soft);border-radius:var(--radius-field);padding:12px 16px}.history-badge{flex-shrink:0}.badge.flaw.history-badge{background:#0071e31f;color:var(--blue)}.history-body{display:flex;flex-direction:column;gap:2px;min-width:0}.history-title{font-size:14.5px;font-weight:590;letter-spacing:-.01em;text-transform:capitalize;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-meta{font-size:12.5px;color:var(--text-tertiary);text-transform:capitalize}.history-again{margin-left:auto;flex-shrink:0;padding:6px 14px;font-size:13px}.usage-limit-notice{position:fixed;z-index:95;right:18px;bottom:18px;display:flex;width:min(460px,calc(100% - 36px));align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid var(--error-border);border-radius:8px;background:var(--topbar-bg);box-shadow:0 10px 30px #00000029;-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%)}.usage-limit-notice>div{display:flex;min-width:0;flex-direction:column;gap:2px}.usage-limit-notice strong{font-size:13px}.usage-limit-notice span{color:var(--text-secondary);font-size:12px;line-height:1.35}.usage-limit-notice button{flex-shrink:0;padding:7px 11px;font-size:12px}.pricing-inner{width:min(900px,calc(100% - 48px));margin:0 auto;padding:80px 0 56px}.pricing-lead{max-width:620px;margin:-12px 0 30px;color:var(--text-secondary);font-size:16px;line-height:1.5}.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.plan-card{display:flex;min-height:330px;flex-direction:column;padding:24px;border:1px solid var(--hairline);border-radius:8px;background:var(--panel);box-shadow:0 8px 24px #0000000f}.plan-card.premium{border-color:#0071e361;box-shadow:0 10px 30px #0071e31f}.plan-card.current{outline:2px solid var(--blue);outline-offset:-2px}.plan-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.plan-heading>div{display:flex;flex-direction:column;gap:12px}.plan-name{display:inline-flex;align-items:center;gap:7px;font-size:17px;font-weight:720}.plan-price{font-size:32px;font-weight:760;line-height:1;font-variant-numeric:tabular-nums}.plan-price small{color:var(--text-tertiary);font-size:13px;font-weight:520}.plan-badge{padding:4px 7px;border-radius:5px;background:var(--gray-fill);color:var(--text-secondary);font-size:11px;font-weight:680;text-transform:uppercase}.plan-features{display:flex;flex-direction:column;gap:11px;margin:28px 0;padding:0;list-style:none}.plan-features li{display:flex;align-items:flex-start;gap:9px;color:var(--text-secondary);font-size:14px;line-height:1.4}.plan-features svg{flex-shrink:0;margin-top:2px;color:var(--green);stroke-width:2.5}.plan-usage{display:flex;flex-direction:column;gap:8px;margin-top:auto;color:var(--text-secondary);font-size:12.5px}.usage-track{width:100%;height:5px;overflow:hidden;border-radius:3px;background:var(--gray-fill)}.usage-track span{display:block;height:100%;border-radius:inherit;background:var(--blue)}.plan-action{margin-top:auto;align-self:flex-start}.pricing-note{margin:18px 0 0;color:var(--text-tertiary);font-size:12.5px}.ct-line-highlight{background:#0a84ff29}.ct-line-margin{background:#0a84ff;width:3px!important;margin-left:3px;border-radius:2px}@media(max-width:900px){.teaching-main,.build-main{grid-template-columns:1fr}.build-sidebar{max-height:none}.inspiration-grid{grid-template-columns:1fr}.lesson-kind-switch{width:100%}.lesson-kind-switch button{flex:1}.transport{flex-wrap:wrap}.tagline{display:none}.hero h1{font-size:32px}.pricing-grid{grid-template-columns:1fr}.home-actions{flex-wrap:wrap;justify-content:center}}@media(min-width:768px)and (max-width:1180px),(min-width:1181px)and (max-width:1366px)and (pointer:coarse){.topbar{flex-wrap:wrap;gap:10px 14px;padding:10px 18px}.tagline{display:none}.site-nav{margin-left:auto}.topbar-controls{width:100%;margin-left:0;justify-content:flex-end;overflow-x:auto;scrollbar-width:none}.topbar-controls::-webkit-scrollbar,.lang-tabs::-webkit-scrollbar,.topic-links::-webkit-scrollbar{display:none}.home-rails{gap:8px;padding:12px 18px 14px;overflow:visible}.topic-search{width:min(280px,100%)}.lang-tabs,.topic-links{max-width:none;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-bottom:4px;scrollbar-width:none}.home{min-height:620px}.home-left{width:58%;max-width:none;margin:0;padding:22px 18px 28px}.home-cover{width:min(300px,86%);margin-bottom:22px}.home-title{font-size:clamp(36px,5.4vw,52px)}.home-title.home-title-long{font-size:44px}.home-title.home-title-xlong{font-size:40px}.home-blurb{max-width:390px;font-size:16px}.home-actions{flex-wrap:wrap;justify-content:center;margin-top:22px}.home-right{left:46%}.wheel-item{right:-470px;width:1120px;padding-right:520px}.wheel-label{font-size:21px}.wheel-label-long{font-size:20px}.wheel-label-xlong{font-size:19px}.wheel-item.active .wheel-label{font-size:29px}.wheel-item.active .wheel-label-long{font-size:26px}.wheel-item.active .wheel-label-xlong{font-size:24px}.input-main{max-width:860px;padding-inline:20px}.hero{margin-top:28px}.teaching-main,.build-main{grid-template-columns:minmax(0,1fr) minmax(230px,29vw);gap:12px;padding:16px}.caption-bar{padding:15px 17px}.transport{flex-wrap:wrap}.sidebar{padding:16px}.build-editor{min-height:340px}.inspiration-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-main{padding-inline:20px}}@media(max-width:767px),(max-height:500px)and (pointer:coarse){html,body,#root{max-width:100%;overflow-x:hidden}.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 12px}.brand{min-width:0;font-size:22px}.tagline{display:none}.site-nav{grid-column:1 / -1;width:100%;margin-left:0;justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.site-nav::-webkit-scrollbar,.topbar-controls::-webkit-scrollbar,.lang-tabs::-webkit-scrollbar,.topic-links::-webkit-scrollbar{display:none}.site-nav-link{min-height:30px;padding:6px 9px;font-size:12.5px}.topbar-controls{grid-column:1 / -1;width:100%;margin-left:0;justify-content:flex-start;gap:8px;overflow-x:auto;padding-bottom:1px}.topbar-controls>*{flex-shrink:0}.topbar-controls select{max-width:150px}.paste-button{padding-inline:13px}.why-link{font-size:17px}.lesson-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-controls{grid-column:1 / -1;width:100%;margin-left:0;justify-content:space-between;overflow-x:auto}.topbar>.lesson-meta{grid-column:1 / -1;margin-left:0;overflow:hidden;text-overflow:ellipsis}.home-rails{gap:7px;padding:10px 12px 12px;overflow:visible}.topic-search{width:100%;margin:0}.topic-search-results{right:0;width:100%;max-height:min(340px,58vh)}.topic-search-result{align-items:flex-start;flex-direction:column;gap:7px}.topic-search-keywords{max-width:100%;justify-content:flex-start}.lang-tabs,.topic-links{max-width:none;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-bottom:3px;scrollbar-width:none}.lang-tabs .rail-link{flex-shrink:0;padding:7px 12px;font-size:14px}.topic-links .rail-link{flex-shrink:0;padding:6px 11px;font-size:13px}.home{display:flex;min-height:auto;flex-direction:column;overflow:visible}.home-right{position:relative;inset:auto;order:-1;z-index:4;height:58px;padding:8px 12px 0}.topic-wheel{position:relative;inset:auto;height:50px;overflow:visible}.desktop-wheel-options,.desktop-wheel-sound{display:none}.mobile-topic-picker{display:grid;grid-template-columns:36px minmax(0,1fr) 36px 32px;align-items:center;gap:6px;width:100%;height:44px}.mobile-topic-step,.mobile-topic-sound{display:grid;width:36px;height:36px;min-width:36px;place-items:center;padding:0;border:1px solid var(--hairline-soft);border-radius:50%;background:var(--panel);color:var(--text-secondary)}.mobile-topic-sound{width:32px;height:32px;min-width:32px}.mobile-topic-select{width:100%;max-width:none;height:40px;border-radius:8px;background-color:var(--panel);font-size:15px;font-weight:650}.home-left{width:100%;height:auto;max-width:none;margin:0;justify-content:flex-start;padding:18px 16px 26px}.home-cover{width:min(320px,100%);margin-bottom:20px;border-radius:8px}.home-overline{font-size:11px}.home-title{margin-top:10px;font-size:34px;line-height:1.08}.home-title.home-title-long{font-size:31px}.home-title.home-title-xlong{font-size:29px}.home-blurb{margin-top:12px;font-size:15px;line-height:1.45}.home-actions{width:100%;flex-direction:column;gap:8px;margin-top:22px}.home-actions button{width:100%;justify-content:center}.home-count{margin-top:16px}.tour-bar{padding:4px 0 18px}.input-main{margin-bottom:24px;padding:0 12px;gap:12px}.hero{margin:24px 0 4px}.hero h1{font-size:28px;line-height:1.12}.hero p{font-size:15px;line-height:1.45}.lesson-kind-switch{width:100%;border-radius:8px}.lesson-kind-switch button{min-width:0;padding:8px 10px;font-size:12px}.input-main>.editor-frame{margin-top:12px;border-radius:8px}.inspiration-panel{padding:12px;border-radius:8px}.inspiration-grid{grid-template-columns:1fr}.action-row{flex-direction:column-reverse}.action-row button{width:100%;justify-content:center}.teaching-main,.build-main{display:flex;flex-direction:column;gap:10px;padding:10px 12px 18px;overflow:visible}.editor-pane,.build-stage{min-height:auto}.editor-frame.tall,.build-editor{flex:none;height:44vh;min-height:300px;border-radius:8px}.caption-bar,.build-brief,.sidebar{padding:14px;border-radius:8px}.caption-text{margin-bottom:12px;font-size:15px}.transport{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.transport button{min-width:0;justify-content:center;padding-inline:10px}.transport .quiz-cta{margin-left:0}.selection-button{right:10px;bottom:10px;max-width:calc(100% - 20px)}.build-sidebar{max-height:none}.build-brief h2{font-size:21px}.timeline-topbar{display:grid;grid-template-columns:auto auto minmax(0,1fr)}.timeline-topbar .lesson-title{text-align:right}.timeline-topbar .lesson-controls{grid-column:1 / -1;justify-content:flex-end}.brand-lockup-header{width:30px;height:30px;justify-self:end}.brand-lockup-header img{width:64px;height:64px}.topbar>.brand-lockup-header+.lesson-title{grid-column:1 / -1}.timeline-topbar>.brand-lockup-header+.lesson-title{grid-column:auto}.brand-lockup-panel{margin-top:-24px}.timeline-main,.timeline-assessment,.timeline-roadmap{width:calc(100% - 24px);padding:28px 0 42px}.timeline-heading{margin-bottom:20px}.timeline-heading h1,.timeline-waiting h1,.timeline-result-head h1{font-size:32px}.timeline-heading p,.timeline-waiting p,.timeline-result-head p{font-size:14px}.timeline-resume{align-items:stretch;flex-direction:column}.timeline-resume button{width:100%}.timeline-path-grid{grid-template-columns:1fr}.timeline-path{min-height:0;padding:15px}.timeline-path-copy>span{font-size:12px}.timeline-waiting{min-height:60vh}.timeline-assessment-meta{align-items:flex-start;flex-direction:column;gap:8px}.timeline-difficulty{width:100%;justify-content:space-between}.timeline-question{padding:20px 14px}.timeline-question h1{font-size:21px}.timeline-next{width:100%}.timeline-result-head{grid-template-columns:1fr;gap:24px}.timeline-score{width:112px;height:112px;border-width:6px}.timeline-score strong{font-size:34px}.timeline-signal-grid{grid-template-columns:1fr}.timeline-stage{grid-template-columns:34px minmax(0,1fr);gap:10px}.timeline-stage:before{top:34px;left:16px}.timeline-stage-marker{width:34px;height:34px}.timeline-stage-content{padding:15px 13px}.timeline-stage-heading{align-items:stretch;flex-direction:column}.timeline-stage-heading button{width:100%}.timeline-result-actions{flex-direction:column}.timeline-result-actions button{width:100%}.contact-overlay{padding:54px 12px 24px}.contact-close{top:12px;right:12px}.contact-card{min-height:250px;aspect-ratio:auto;padding:25px 22px}.contact-card-center{width:calc(100% - 44px)}.contact-card-center strong{font-size:22px;letter-spacing:.05em}.contact-card-center span{letter-spacing:.2em}.contact-card-footer{right:22px;bottom:20px;left:22px;align-items:flex-start;flex-direction:column;gap:4px}.contact-card-mark{font-size:110px}.contact-actions{align-items:stretch;flex-direction:column}.contact-actions a,.contact-actions button{width:100%}.quiz-main{padding:14px 12px 28px}.quiz-card{padding:18px 14px 20px;border-radius:8px}.quiz-question{font-size:20px}.quiz-option{padding:11px}.quiz-option-text{min-width:0;overflow-wrap:anywhere;font-size:12.5px}.quiz-score{font-size:48px}.pricing-inner,.why-inner{width:calc(100% - 28px);padding-top:70px}.pricing-grid{grid-template-columns:1fr}.plan-card{min-height:auto;padding:18px}.plan-features{margin:22px 0}.account-plan-row{align-items:stretch;flex-direction:column}.account-plan-row button{width:100%}.history-item{align-items:flex-start;flex-wrap:wrap;padding:11px}.history-body{flex:1}.history-again{width:100%;margin-left:0}.login-row{flex-direction:column}.why-close{top:12px;right:12px}.tour-card{width:calc(100% - 24px)}.oauth-buttons,.auth-form,.address-fields{grid-template-columns:1fr}.auth-form>label,.address-fields label,.address-fields .address-wide{grid-column:1}.auth-submit{width:100%;justify-self:stretch}.usage-limit-notice{right:12px;bottom:12px;width:calc(100% - 24px);align-items:stretch;flex-direction:column}.usage-limit-notice button{width:100%}}.workspace-route-loading{display:grid;min-height:100vh;place-items:center;background:var(--bg);color:var(--text-secondary);font-size:14px;letter-spacing:0}.teacher-page{height:100vh;overflow:hidden;background:var(--bg)}.topbar.teacher-topbar{display:grid;grid-template-columns:auto auto minmax(180px,1fr) auto;min-height:62px;gap:14px;padding:9px 18px}.teacher-back{border-radius:6px;white-space:nowrap}.teacher-topbar .brand{font-size:21px;grid-template-columns:30px auto;column-gap:7px}.teacher-topbar .brand-icon{width:30px;height:30px}.teacher-topbar .brand-icon img{width:64px;height:64px}.teacher-header-context{display:flex;min-width:0;align-items:center;gap:9px;padding-left:14px;border-left:1px solid var(--hairline);letter-spacing:0}.teacher-header-context strong{font-size:13px;font-weight:680;white-space:nowrap}.teacher-header-context span{overflow:hidden;color:var(--text-tertiary);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.teacher-account{max-width:170px;overflow:hidden;border-radius:6px;text-overflow:ellipsis;white-space:nowrap}.teacher-shell{display:grid;grid-template-columns:246px minmax(0,1fr);flex:1;min-height:0;overflow:hidden}.teacher-class-rail{display:flex;min-height:0;flex-direction:column;padding:18px 12px 14px;border-right:1px solid var(--hairline-soft);background:var(--panel)}.teacher-rail-heading{display:flex;min-height:32px;align-items:center;justify-content:space-between;padding:0 7px 8px;color:var(--text-tertiary);font-size:11px;font-weight:720;letter-spacing:0;text-transform:uppercase}.teacher-rail-heading .icon-button{width:30px;height:30px;min-width:30px;padding:0}.teacher-class-list{display:flex;min-height:0;flex:1;flex-direction:column;gap:4px;overflow-y:auto}.teacher-class-item{display:flex;min-width:0;min-height:58px;align-items:flex-start;justify-content:center;flex-direction:column;gap:4px;padding:9px 10px;border-radius:6px;background:transparent;color:var(--text-secondary);text-align:left;letter-spacing:0}.teacher-class-item:hover{background:var(--hairline-soft);color:var(--text)}.teacher-class-item.active{background:var(--gray-fill);color:var(--text)}.teacher-class-item>span{width:100%;overflow:hidden;font-size:13.5px;font-weight:680;text-overflow:ellipsis;white-space:nowrap}.teacher-class-item small{width:100%;overflow:hidden;color:var(--text-tertiary);font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.teacher-new-class{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;margin-top:10px;border:1px solid var(--hairline);border-radius:6px;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:650;letter-spacing:0}.teacher-new-class:hover{border-color:var(--text-tertiary);color:var(--text)}.teacher-content{min-width:0;overflow-y:auto;padding:34px clamp(24px,4vw,64px) 72px}.teacher-content-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.teacher-content-head>div:first-child{min-width:0}.teacher-content-head span{color:var(--text-tertiary);font-size:12px;font-weight:620;letter-spacing:0}.teacher-content-head h1{margin:7px 0 0;font-size:34px;line-height:1.08;letter-spacing:0}.teacher-content-actions{display:flex;flex-shrink:0;gap:8px}.teacher-content-actions>button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:6px;letter-spacing:0}.teacher-code{min-width:114px;font-family:SF Mono,ui-monospace,Menlo,monospace;font-size:12px}.teacher-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:30px;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.teacher-metrics>div{display:flex;min-height:92px;justify-content:center;flex-direction:column;padding:17px 20px}.teacher-metrics>div+div{border-left:1px solid var(--hairline-soft)}.teacher-metrics strong{font-size:25px;font-variant-numeric:tabular-nums;line-height:1;letter-spacing:0}.teacher-metrics span{margin-top:8px;color:var(--text-tertiary);font-size:11px;font-weight:650;letter-spacing:0;text-transform:uppercase}.teacher-workspace-tabs{display:flex;gap:22px;margin-top:24px;border-bottom:1px solid var(--hairline)}.teacher-workspace-tabs button{display:inline-flex;min-height:42px;align-items:center;gap:7px;margin-bottom:-1px;padding:0 2px;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--text-tertiary);font-size:12px;font-weight:680;letter-spacing:0}.teacher-workspace-tabs button:hover{color:var(--text)}.teacher-workspace-tabs button.active{border-bottom-color:var(--red);color:var(--text)}.teacher-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-top:34px}.teacher-section-head h2{margin:0;font-size:19px;letter-spacing:0}.teacher-section-head span{display:block;margin-top:4px;color:var(--text-tertiary);font-size:11px;letter-spacing:0}.teacher-error{margin:0 0 18px}.assignment-table{margin-top:14px;border-top:1px solid var(--hairline)}.assignment-table-head,.assignment-row{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(105px,.55fr) minmax(140px,.7fr) 100px 108px;align-items:center;gap:18px;min-width:0}.assignment-table-head{min-height:42px;color:var(--text-tertiary);font-size:10px;font-weight:720;letter-spacing:0;text-transform:uppercase}.assignment-row{min-height:74px;border-top:1px solid var(--hairline-soft)}.assignment-name{display:flex;min-width:0;flex-direction:column;gap:5px}.assignment-name strong{overflow:hidden;font-size:13.5px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.assignment-name span{overflow:hidden;color:var(--text-tertiary);font-size:11px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.assignment-level,.assignment-due{color:var(--text-secondary);font-size:11.5px;letter-spacing:0}.assignment-due{display:inline-flex;align-items:center;gap:6px}.assignment-status{justify-self:start;padding:4px 7px;border:1px solid var(--hairline);border-radius:5px;color:var(--text-tertiary);font-size:10px;font-weight:720;letter-spacing:0;text-transform:uppercase}.assignment-status.published{border-color:#34c75961;background:#34c7591a;color:#17843a}html[data-theme=dark] .assignment-status.published{color:#64d981}.assignment-actions{display:flex;justify-content:flex-end;gap:3px}.assignment-actions .icon-button{width:32px;height:32px;min-width:32px;padding:0}.teacher-empty{display:flex;min-height:300px;align-items:center;justify-content:center;flex-direction:column;padding:48px 20px;border-top:1px solid var(--hairline);color:var(--text-secondary);text-align:center}.teacher-empty-first{min-height:calc(100vh - 150px);border-top:0}.teacher-empty-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:8px;background:var(--gray-fill);color:var(--text-secondary)}.teacher-empty h1,.teacher-empty h2{margin:18px 0 0;color:var(--text);font-size:24px;letter-spacing:0}.teacher-empty p{max-width:430px;margin:9px 0 20px;font-size:14px;line-height:1.5;letter-spacing:0}.teacher-empty button{display:inline-flex;align-items:center;gap:7px;border-radius:6px;letter-spacing:0}.teacher-loading{display:grid;gap:12px;padding-top:22px}.teacher-loading span{display:block;height:58px;border-radius:6px;background:var(--gray-fill);animation:teacher-loading-pulse 1.2s ease-in-out infinite alternate}.teacher-loading span:first-child{width:48%;height:42px}@keyframes teacher-loading-pulse{0%{opacity:.45}to{opacity:.9}}.teacher-analytics{min-width:0;padding-top:30px}.analytics-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.analytics-heading h2{margin:0;font-size:19px;letter-spacing:0}.analytics-heading>div:first-child>span,.analytics-section-heading span{display:block;margin-top:4px;color:var(--text-tertiary);font-size:11px;letter-spacing:0}.analytics-heading-actions{display:flex;align-items:center;gap:8px}.analytics-heading-actions .icon-button{width:32px;height:32px;min-width:32px;padding:0}.analytics-cost{display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:0}.analytics-signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px;margin-top:26px}.analytics-signal-section{min-width:0;padding-top:13px;border-top:1px solid var(--hairline)}.analytics-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.analytics-section-title>div{display:flex;min-width:0;align-items:center;gap:8px;color:var(--text-secondary)}.analytics-section-title h3,.analytics-section-heading h3{margin:0;font-size:13px;letter-spacing:0}.analytics-section-title>span{color:var(--text-tertiary);font-size:11px;font-variant-numeric:tabular-nums}.analytics-attention-list,.analytics-concept-list{margin-top:9px}.analytics-attention-list>div,.analytics-concept-list>div{display:grid;min-height:54px;align-items:center;gap:10px;border-top:1px solid var(--hairline-soft)}.analytics-attention-list>div{grid-template-columns:30px minmax(0,1fr) auto}.analytics-avatar{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:var(--gray-fill);color:var(--text-secondary);font-size:9.5px;font-weight:720;letter-spacing:0}.analytics-attention-list span:nth-child(2),.analytics-concept-list span:first-child,.analytics-student-name>span:last-child{display:flex;min-width:0;flex-direction:column;gap:3px}.analytics-attention-list strong,.analytics-concept-list strong,.analytics-student-name strong{overflow:hidden;font-size:11.5px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.analytics-attention-list small,.analytics-concept-list small,.analytics-student-name small{overflow:hidden;color:var(--text-tertiary);font-size:9.5px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.analytics-attention-list b,.analytics-concept-list b{font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:0}.analytics-concept-list>div{grid-template-columns:minmax(110px,1fr) minmax(70px,.8fr) 38px}.analytics-bar{height:5px;overflow:hidden;border-radius:3px;background:var(--gray-fill)}.analytics-bar i{display:block;height:100%;border-radius:inherit;background:var(--blue)}.analytics-quiet-state,.analytics-empty-row{display:flex;min-height:92px;align-items:center;gap:7px;color:var(--text-tertiary);font-size:11.5px;letter-spacing:0}.analytics-table-section{margin-top:34px}.analytics-section-heading{display:flex;align-items:flex-end;justify-content:space-between}.analytics-assignment-table,.analytics-student-table{margin-top:12px;border-top:1px solid var(--hairline)}.analytics-table-head,.analytics-table-row,.analytics-student-head,.analytics-student-row{display:grid;min-width:0;align-items:center;gap:16px}.analytics-table-head,.analytics-table-row{grid-template-columns:minmax(190px,1.4fr) 82px 92px minmax(130px,.75fr) 68px}.analytics-student-head,.analytics-student-row{grid-template-columns:minmax(190px,1.4fr) 88px 68px 96px minmax(120px,.8fr)}.analytics-table-head,.analytics-student-head{min-height:38px;color:var(--text-tertiary);font-size:9.5px;font-weight:720;letter-spacing:0;text-transform:uppercase}.analytics-table-row,.analytics-student-row{min-height:66px;border-top:1px solid var(--hairline-soft);color:var(--text-secondary);font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:0}.analytics-primary-cell{display:flex;min-width:0;flex-direction:column;gap:4px}.analytics-primary-cell strong{overflow:hidden;color:var(--text);font-size:12px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.analytics-primary-cell small{color:var(--text-tertiary);font-size:9.5px;letter-spacing:0}.analytics-progress{display:flex;min-width:0;align-items:center;gap:8px}.analytics-progress>i{display:block;min-width:54px;height:5px;overflow:hidden;flex:1;border-radius:3px;background:var(--gray-fill)}.analytics-progress>i>b{display:block;height:100%;border-radius:inherit;background:var(--green)}.analytics-progress em{width:32px;color:var(--text-secondary);font-size:10px;font-style:normal;text-align:right}.analytics-student-name{display:grid;min-width:0;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px}.analytics-status{justify-self:start;color:var(--text-secondary);font-size:10.5px;letter-spacing:0}.analytics-status.on_track{color:var(--green)}.analytics-status.needs_attention{color:var(--red)}.analytics-error{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:30px}.analytics-error button{flex-shrink:0}.analytics-loading{display:grid;gap:12px;padding-top:30px}.analytics-loading span{display:block;height:116px;border-radius:6px;background:var(--gray-fill);animation:teacher-loading-pulse 1.2s ease-in-out infinite alternate}.analytics-loading span:first-child{width:38%;height:28px}.workspace-dialog-backdrop{position:fixed;z-index:140;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#00000075;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.workspace-dialog{width:min(720px,100%);max-height:calc(100vh - 48px);overflow-y:auto;padding:24px;border:1px solid var(--hairline);border-radius:8px;background:var(--panel);box-shadow:0 24px 70px #00000047}.class-dialog{width:min(560px,100%)}.workspace-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.workspace-dialog-head>div{min-width:0}.workspace-dialog-head span{color:var(--red);font-size:10px;font-weight:720;letter-spacing:0;text-transform:uppercase}.workspace-dialog-head h2{margin:7px 0 0;font-size:23px;line-height:1.16;letter-spacing:0}.workspace-dialog-head .icon-button{width:34px;height:34px;min-width:34px;padding:0}.workspace-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.workspace-field{display:flex;min-width:0;flex-direction:column;gap:7px;color:var(--text-secondary);font-size:11px;font-weight:680;letter-spacing:0}.workspace-field input,.workspace-field select,.workspace-field textarea{width:100%;max-width:none;min-height:42px;border:1px solid var(--hairline);border-radius:6px;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:13.5px;letter-spacing:0;outline:none}.workspace-field input,.workspace-field textarea{padding:10px 12px}.workspace-field select{padding:9px 32px 9px 12px}.workspace-field textarea{min-height:112px;resize:vertical;line-height:1.45}.workspace-field input:focus,.workspace-field select:focus,.workspace-field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0071e324}.workspace-wide{grid-column:1 / -1}.assignment-choice-field{margin:0;padding:0;border:0}.assignment-choice-field legend{margin-bottom:7px;padding:0}.workspace-segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;border-radius:7px;background:var(--gray-fill)}.workspace-segmented button{min-width:0;padding:8px;border-radius:5px;background:transparent;color:var(--text-secondary);font-size:11.5px;letter-spacing:0}.workspace-segmented button.active{background:var(--panel);color:var(--text);box-shadow:0 1px 4px #0000001f;font-weight:680}.workspace-number-field{position:relative}.workspace-number-field input{padding-right:68px}.workspace-number-field span{position:absolute;top:50%;right:11px;transform:translateY(-50%);color:var(--text-tertiary);font-size:10.5px;font-weight:500}.workspace-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px;padding-top:18px;border-top:1px solid var(--hairline-soft)}.workspace-dialog-actions button{display:inline-flex;min-width:110px;align-items:center;justify-content:center;gap:7px;border-radius:6px;letter-spacing:0}@media(min-width:768px)and (max-width:1180px),(min-width:1181px)and (max-width:1366px)and (pointer:coarse){.teacher-shell{grid-template-columns:218px minmax(0,1fr)}.teacher-content{padding:28px 24px 60px}.assignment-table-head,.assignment-row{grid-template-columns:minmax(190px,1.3fr) 92px 122px 88px 100px;gap:10px}.teacher-metrics>div{padding-inline:14px}.analytics-signal-grid{gap:24px}.analytics-table-head,.analytics-table-row{grid-template-columns:minmax(160px,1.3fr) 68px 78px minmax(112px,.7fr) 60px;gap:10px}.analytics-student-head,.analytics-student-row{grid-template-columns:minmax(170px,1.3fr) 76px 60px 82px minmax(100px,.7fr);gap:10px}}@media(max-width:767px),(max-height:500px)and (pointer:coarse){.teacher-page{height:auto;min-height:100vh;overflow:visible}.topbar.teacher-topbar{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:8px 10px}.teacher-topbar>.brand{display:none}.teacher-header-context{padding-left:0;border-left:0}.teacher-header-context strong{font-size:12px}.teacher-header-context span{display:none}.teacher-back{min-width:38px;width:38px;padding:0;font-size:0}.teacher-account{max-width:104px;padding-inline:10px}.teacher-shell{display:block;overflow:visible}.teacher-class-rail{position:sticky;z-index:12;top:57px;display:block;padding:8px 10px;border-right:0;border-bottom:1px solid var(--hairline-soft)}.teacher-rail-heading{display:none}.teacher-class-list{display:flex;flex-direction:row;gap:6px;overflow-x:auto}.teacher-class-item{min-width:158px;min-height:52px;padding:7px 9px;border:1px solid var(--hairline-soft)}.teacher-new-class{display:none}.teacher-content{overflow:visible;padding:26px 14px 54px}.teacher-content-head{align-items:stretch;flex-direction:column;gap:18px}.teacher-content-head h1{font-size:28px}.teacher-content-actions{display:grid;grid-template-columns:auto minmax(0,1fr)}.teacher-content-actions>button{min-width:0;padding-inline:10px}.teacher-code{min-width:0}.teacher-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}.teacher-metrics>div{min-height:76px;padding:13px}.teacher-metrics>div:nth-child(3){border-left:0;border-top:1px solid var(--hairline-soft)}.teacher-metrics>div:nth-child(4){border-top:1px solid var(--hairline-soft)}.teacher-workspace-tabs{position:sticky;z-index:8;top:118px;margin:22px -14px 0;padding:0 14px;background:var(--bg)}.teacher-analytics{padding-top:24px}.analytics-heading{align-items:flex-start;flex-direction:column;gap:13px}.analytics-heading-actions{width:100%;justify-content:space-between}.analytics-signal-grid{grid-template-columns:1fr;gap:26px;margin-top:24px}.analytics-table-section{margin-top:30px}.analytics-table-head,.analytics-student-head{display:none}.analytics-table-row,.analytics-student-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:15px 0}.analytics-primary-cell,.analytics-student-name{grid-column:1 / -1;margin-bottom:4px}.analytics-table-row>span:not(.analytics-primary-cell),.analytics-student-row>span:not(.analytics-student-name){display:flex;align-items:center;justify-content:space-between;gap:12px}.analytics-table-row>span:not(.analytics-primary-cell):before,.analytics-student-row>span:not(.analytics-student-name):before{color:var(--text-tertiary);font-size:9.5px;content:attr(data-label)}.analytics-progress{min-width:128px}.analytics-status{justify-self:stretch}.analytics-empty-row{min-height:110px}.assignment-table{border-top:0}.assignment-table-head{display:none}.assignment-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;min-height:0;padding:15px 0}.assignment-name{grid-column:1}.assignment-level,.assignment-due,.assignment-status{grid-column:1;justify-self:start}.assignment-level{display:none}.assignment-due{grid-row:2}.assignment-status{grid-row:3}.assignment-actions{grid-column:2;grid-row:1 / 4;align-self:center}.workspace-dialog-backdrop{align-items:end;padding:0}.workspace-dialog,.class-dialog{width:100%;max-height:92vh;padding:20px 14px 24px;border-width:1px 0 0;border-radius:8px 8px 0 0}.workspace-form-grid{grid-template-columns:1fr;gap:13px}.workspace-wide{grid-column:1}.workspace-dialog-actions{position:sticky;bottom:-24px;margin-right:-14px;margin-left:-14px;padding:14px;background:var(--panel)}.workspace-dialog-actions button{flex:1;min-width:0}.teacher-empty-first{min-height:62vh}}.student-page{height:100vh;overflow:hidden;background:var(--bg)}.topbar.student-topbar{display:grid;grid-template-columns:auto auto minmax(180px,1fr) auto;min-height:62px;gap:14px;padding:9px 18px}.student-back{border-radius:6px;white-space:nowrap}.student-topbar .brand{font-size:21px;grid-template-columns:30px auto;column-gap:7px}.student-topbar .brand-icon{width:30px;height:30px}.student-topbar .brand-icon img{width:64px;height:64px}.student-header-context{display:flex;min-width:0;align-items:center;gap:9px;padding-left:14px;border-left:1px solid var(--hairline);letter-spacing:0}.student-header-context strong{font-size:13px;font-weight:680;white-space:nowrap}.student-header-context span{overflow:hidden;color:var(--text-tertiary);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.student-account{max-width:170px;overflow:hidden;border-radius:6px;text-overflow:ellipsis;white-space:nowrap}.student-shell{display:grid;grid-template-columns:230px minmax(0,1fr);flex:1;min-height:0;overflow:hidden}.student-class-rail{display:flex;min-height:0;flex-direction:column;padding:18px 12px 14px;border-right:1px solid var(--hairline-soft);background:var(--panel)}.student-rail-heading{display:flex;min-height:32px;align-items:center;justify-content:space-between;padding:0 7px 8px;color:var(--text-tertiary);font-size:11px;font-weight:720;letter-spacing:0;text-transform:uppercase}.student-rail-heading .icon-button{width:30px;height:30px;min-width:30px;padding:0}.student-class-list{display:flex;min-height:0;flex:1;flex-direction:column;gap:4px;overflow-y:auto}.student-class-item{display:flex;min-width:0;min-height:58px;align-items:flex-start;justify-content:center;flex-direction:column;gap:4px;padding:9px 10px;border-radius:6px;background:transparent;color:var(--text-secondary);text-align:left;letter-spacing:0}.student-class-item:hover{background:var(--hairline-soft);color:var(--text)}.student-class-item.active{background:var(--gray-fill);color:var(--text)}.student-class-item>span{width:100%;overflow:hidden;font-size:13.5px;font-weight:680;text-overflow:ellipsis;white-space:nowrap}.student-class-item small{width:100%;overflow:hidden;color:var(--text-tertiary);font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.student-join-class{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;margin-top:10px;border:1px solid var(--hairline);border-radius:6px;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:650;letter-spacing:0}.student-join-class:hover{border-color:var(--text-tertiary);color:var(--text)}.student-content{min-width:0;overflow-y:auto;padding:34px clamp(24px,4vw,64px) 72px}.student-content-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.student-content-head>div{min-width:0}.student-content-head>div>span{color:var(--text-tertiary);font-size:12px;font-weight:620;letter-spacing:0}.student-content-head h1{margin:7px 0 0;font-size:34px;line-height:1.08;letter-spacing:0}.student-content-head p{margin:8px 0 0;color:var(--text-secondary);font-size:13px;letter-spacing:0}.student-content-head>button{display:inline-flex;flex-shrink:0;align-items:center;gap:7px;border-radius:6px;letter-spacing:0}.student-progress-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.student-progress-strip>div{display:flex;min-height:88px;justify-content:center;flex-direction:column;padding:16px 20px}.student-progress-strip>div+div{border-left:1px solid var(--hairline-soft)}.student-progress-strip strong{font-size:25px;line-height:1;letter-spacing:0;font-variant-numeric:tabular-nums}.student-progress-strip span{margin-top:8px;color:var(--text-tertiary);font-size:11px;font-weight:650;letter-spacing:0;text-transform:uppercase}.student-section-head{margin-top:34px}.student-section-head h2{margin:0;font-size:19px;letter-spacing:0}.student-section-head span{display:block;margin-top:4px;color:var(--text-tertiary);font-size:11px;letter-spacing:0}.student-shared-notice{margin-top:14px;padding:10px 12px;border-left:3px solid var(--blue);background:#0071e312;color:var(--text-secondary);font-size:11.5px;letter-spacing:0}.student-error{margin-bottom:18px}.student-assignment-list{margin-top:14px;border-top:1px solid var(--hairline)}.student-assignment-row{display:grid;grid-template-columns:minmax(280px,1fr) 112px 128px;align-items:center;gap:26px;min-height:148px;padding:20px 0;border-bottom:1px solid var(--hairline-soft)}.student-assignment-row.shared-target{margin:0 -12px;padding-right:12px;padding-left:12px;background:#0071e30e;box-shadow:inset 3px 0 0 var(--blue)}.student-assignment-main{min-width:0}.student-assignment-language{color:var(--red);font-size:10px;font-weight:720;letter-spacing:0;text-transform:uppercase}.student-assignment-main h3{margin:7px 0 0;font-size:18px;line-height:1.2;letter-spacing:0}.student-assignment-main>p{display:-webkit-box;max-width:720px;margin:8px 0 0;overflow:hidden;color:var(--text-secondary);font-size:13px;line-height:1.45;letter-spacing:0;-webkit-box-orient:vertical;-webkit-line-clamp:2}.student-assignment-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:13px;color:var(--text-tertiary);font-size:10.5px;letter-spacing:0}.student-assignment-meta span{display:inline-flex;align-items:center;gap:5px}.student-assignment-result{display:flex;min-width:0;align-items:flex-start;flex-direction:column;gap:4px;color:var(--text-tertiary)}.student-assignment-result>svg{margin-bottom:2px;color:var(--green)}.student-assignment-result strong{color:var(--text);font-size:13px;letter-spacing:0}.student-assignment-result span{font-size:10.5px;letter-spacing:0}.student-progress-dot,.student-not-started-dot{width:9px;height:9px;margin-bottom:5px;border-radius:50%;background:var(--orange)}.student-not-started-dot{background:var(--text-tertiary)}.student-start{display:inline-flex;min-width:118px;align-items:center;justify-content:center;gap:7px;border-radius:6px;letter-spacing:0}.student-empty{display:flex;min-height:300px;align-items:center;justify-content:center;flex-direction:column;padding:48px 20px;border-top:1px solid var(--hairline);color:var(--text-secondary);text-align:center}.student-empty-first{min-height:calc(100vh - 150px);border-top:0}.student-empty-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:8px;background:var(--gray-fill)}.student-empty h1,.student-empty h2{margin:18px 0 0;color:var(--text);font-size:24px;letter-spacing:0}.student-empty p{max-width:420px;margin:9px 0 20px;font-size:14px;line-height:1.5;letter-spacing:0}.student-empty button{display:inline-flex;align-items:center;gap:7px;border-radius:6px;letter-spacing:0}.student-loading{display:grid;gap:12px;padding-top:22px}.student-loading span{height:76px;border-radius:6px;background:var(--gray-fill);animation:teacher-loading-pulse 1.2s ease-in-out infinite alternate}.student-loading span:first-child{width:48%;height:42px}.join-class-dialog{width:min(490px,100%)}.join-code-field{margin-top:26px}.join-code-field input{height:58px;font-family:SF Mono,ui-monospace,Menlo,monospace;font-size:24px;font-weight:720;letter-spacing:.18em;text-align:center;text-transform:uppercase}.quiz-submit-error{margin-top:12px}@media(min-width:768px)and (max-width:1180px),(min-width:1181px)and (max-width:1366px)and (pointer:coarse){.student-shell{grid-template-columns:210px minmax(0,1fr)}.student-content{padding:28px 24px 60px}.student-assignment-row{grid-template-columns:minmax(230px,1fr) 102px 116px;gap:16px}}@media(max-width:767px),(max-height:500px)and (pointer:coarse){.student-page{height:auto;min-height:100vh;overflow:visible}.topbar.student-topbar{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:8px 10px}.student-topbar>.brand{display:none}.student-header-context{padding-left:0;border-left:0}.student-header-context strong{font-size:12px}.student-header-context span{display:none}.student-back{width:38px;min-width:38px;padding:0;font-size:0}.student-account{max-width:104px;padding-inline:10px}.student-shell{display:block;overflow:visible}.student-class-rail{position:sticky;z-index:12;top:57px;display:block;padding:8px 10px;border-right:0;border-bottom:1px solid var(--hairline-soft)}.student-rail-heading{display:none}.student-class-list{display:flex;flex-direction:row;gap:6px;overflow-x:auto}.student-class-item{min-width:158px;min-height:52px;padding:7px 9px;border:1px solid var(--hairline-soft)}.student-join-class{display:none}.student-content{overflow:visible;padding:26px 14px 54px}.student-content-head{align-items:stretch;flex-direction:column;gap:17px}.student-content-head h1{font-size:28px}.student-content-head>button{width:100%;justify-content:center}.student-progress-strip{margin-top:23px}.student-progress-strip>div{min-height:75px;padding:12px 10px}.student-progress-strip strong{font-size:21px}.student-progress-strip span{font-size:9.5px}.student-assignment-row{grid-template-columns:minmax(0,1fr);gap:16px;min-height:0;padding:20px 0}.student-assignment-result{flex-direction:row;flex-wrap:wrap;align-items:center;gap:7px}.student-assignment-result>svg,.student-progress-dot,.student-not-started-dot{margin:0}.student-assignment-result span{width:100%;padding-left:25px}.student-start{width:100%}.student-empty-first{min-height:62vh}.join-code-field input{font-size:21px}}.demo-classroom-page{height:100vh;overflow:hidden;background:var(--bg)}.topbar.demo-classroom-topbar{display:grid;grid-template-columns:auto auto minmax(180px,1fr) auto;min-height:62px;gap:14px;padding:9px 18px}.demo-back{border-radius:6px;white-space:nowrap}.demo-classroom-topbar .brand{font-size:21px;grid-template-columns:30px auto;column-gap:7px}.demo-classroom-topbar .brand-icon{width:30px;height:30px}.demo-classroom-topbar .brand-icon img{width:64px;height:64px}.demo-header-context{display:flex;min-width:0;align-items:center;gap:9px;padding-left:14px;border-left:1px solid var(--hairline)}.demo-header-context strong{font-size:13px;font-weight:680;letter-spacing:0;white-space:nowrap}.demo-header-context span{overflow:hidden;color:var(--text-tertiary);font-size:12px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.demo-apply{border-radius:6px;letter-spacing:0}.demo-classroom-shell{display:grid;height:calc(100vh - 62px);grid-template-columns:246px minmax(0,1fr);overflow:hidden}.demo-class-rail{padding:28px 20px;border-right:1px solid var(--hairline-soft);background:var(--panel)}.demo-label{color:var(--red);font-size:9.5px;font-weight:720;letter-spacing:0;text-transform:uppercase}.demo-class-rail h2{margin:13px 0 0;font-size:19px;line-height:1.2;letter-spacing:0}.demo-class-rail>p{margin:8px 0 0;color:var(--text-tertiary);font-size:11px;letter-spacing:0}.demo-class-rail dl{margin:28px 0 0;border-top:1px solid var(--hairline)}.demo-class-rail dl>div{display:flex;min-height:44px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--hairline-soft)}.demo-class-rail dt{color:var(--text-tertiary);font-size:10.5px;letter-spacing:0}.demo-class-rail dd{margin:0;font-size:12px;font-weight:680;font-variant-numeric:tabular-nums;letter-spacing:0}.demo-class-rail>small{display:block;margin-top:24px;color:var(--text-tertiary);font-size:9.5px;line-height:1.5;letter-spacing:0}.demo-classroom-content{min-width:0;overflow-y:auto;padding:34px clamp(24px,4vw,64px) 72px}.demo-classroom-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.demo-classroom-heading>div:first-child>span{color:var(--text-tertiary);font-size:12px;font-weight:620;letter-spacing:0}.demo-classroom-heading h1{margin:7px 0 0;font-size:34px;line-height:1.08;letter-spacing:0}.demo-view-tabs{display:flex;gap:18px;border-bottom:1px solid var(--hairline)}.demo-view-tabs button{display:inline-flex;min-height:38px;align-items:center;gap:7px;margin-bottom:-1px;padding:0 2px;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--text-tertiary);font-size:11.5px;font-weight:680;letter-spacing:0}.demo-view-tabs button.active{border-bottom-color:var(--red);color:var(--text)}.demo-metrics{margin-top:30px}.demo-student-view{padding-top:30px}.demo-student-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.demo-student-welcome>div>span{color:var(--red);font-size:10px;font-weight:720;letter-spacing:0;text-transform:uppercase}.demo-student-welcome h2{margin:8px 0 0;font-size:24px;letter-spacing:0}.demo-student-welcome>span{display:inline-flex;align-items:center;gap:6px;color:var(--text-tertiary);font-size:11px;letter-spacing:0}.demo-student-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:26px;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.demo-student-progress>div{display:flex;min-height:76px;justify-content:center;flex-direction:column;padding:14px 18px}.demo-student-progress>div+div{border-left:1px solid var(--hairline-soft)}.demo-student-progress strong{font-size:22px;font-variant-numeric:tabular-nums;line-height:1}.demo-student-progress span{margin-top:7px;color:var(--text-tertiary);font-size:10px;font-weight:650;letter-spacing:0;text-transform:uppercase}.demo-assignment-list{margin-top:28px;border-top:1px solid var(--hairline)}.demo-assignment-list article{display:grid;min-height:116px;grid-template-columns:minmax(250px,1fr) 120px 105px;align-items:center;gap:22px;border-bottom:1px solid var(--hairline-soft)}.demo-assignment-list article>div:first-child{min-width:0}.demo-assignment-list article>div:first-child>span{color:var(--red);font-size:9.5px;font-weight:720;letter-spacing:0;text-transform:uppercase}.demo-assignment-list h3{margin:6px 0 0;font-size:17px;letter-spacing:0}.demo-assignment-list p{margin:6px 0 0;color:var(--text-secondary);font-size:11.5px;letter-spacing:0}.demo-assignment-list small{display:inline-flex;align-items:center;gap:5px;margin-top:11px;color:var(--text-tertiary);font-size:10px;letter-spacing:0}.demo-assignment-state{display:flex;align-items:flex-start;flex-direction:column;gap:6px;color:var(--text-tertiary)}.demo-assignment-state.submitted svg{color:var(--green)}.demo-assignment-state strong{color:var(--text);font-size:12px;letter-spacing:0}.demo-assignment-list button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:6px;letter-spacing:0}@media(min-width:768px)and (max-width:1180px),(min-width:1181px)and (max-width:1366px)and (pointer:coarse){.demo-classroom-shell{grid-template-columns:210px minmax(0,1fr)}.demo-classroom-content{padding:28px 24px 60px}.demo-assignment-list article{grid-template-columns:minmax(220px,1fr) 105px 95px;gap:15px}}@media(max-width:767px),(max-height:500px)and (pointer:coarse){.demo-classroom-page{height:auto;min-height:100vh;overflow:visible}.topbar.demo-classroom-topbar{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:8px 10px}.demo-classroom-topbar>.brand{display:none}.demo-back{width:38px;min-width:38px;padding:0;font-size:0}.demo-header-context{padding-left:0;border-left:0}.demo-header-context span{display:none}.demo-apply{padding-inline:10px;font-size:11px}.demo-classroom-shell{display:block;height:auto;overflow:visible}.demo-class-rail{display:none}.demo-classroom-content{overflow:visible;padding:24px 14px 54px}.demo-classroom-heading{align-items:stretch;flex-direction:column;gap:20px}.demo-classroom-heading h1{font-size:28px}.demo-view-tabs{width:100%}.demo-view-tabs button{flex:1;justify-content:center}.demo-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}.demo-metrics>div:nth-child(3){border-left:0;border-top:1px solid var(--hairline-soft)}.demo-metrics>div:nth-child(4){border-top:1px solid var(--hairline-soft)}.demo-student-welcome{align-items:flex-start;flex-direction:column}.demo-student-progress>div{min-height:70px;padding:11px}.demo-assignment-list article{grid-template-columns:minmax(0,1fr);gap:14px;padding:20px 0}.demo-assignment-state{align-items:center;flex-direction:row}.demo-assignment-list button{width:100%}}
