@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-slate-200:#e2e8f0;--color-slate-400:#90a1b9;--color-slate-700:#314158;--color-slate-950:#020618;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--radius-3xl:1.5rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-slate-200:lab(91.7353% -.998765 -4.76968);--color-slate-400:lab(65.5349% -2.25151 -14.5072);--color-slate-700:lab(26.9569% -1.47016 -15.6993);--color-slate-950:lab(1.76974% 1.32743 -9.28855)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mt-4{margin-top:calc(var(--spacing) * 4)}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.h-2{height:calc(var(--spacing) * 2)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-full{height:100%}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-11{min-height:calc(var(--spacing) * 11)}.w-full{width:100%}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:calc(var(--radius) + .8rem)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[14px\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-xl{border-radius:calc(var(--radius) + .35rem)}.border{border-style:var(--tw-border-style);border-width:1px}.border-border{border-color:var(--border)}.border-slate-200{border-color:var(--color-slate-200)}.border-success\/25{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.border-success\/25{border-color:color-mix(in oklab, var(--success) 25%, transparent)}}.border-transparent{border-color:#0000}.border-warning\/25{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.border-warning\/25{border-color:color-mix(in oklab, var(--warning) 25%, transparent)}}.bg-background{background-color:var(--background)}.bg-card{background-color:var(--card)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-success,.bg-success\/10{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-success\/10{background-color:color-mix(in oklab, var(--success) 10%, transparent)}}.bg-warning\/10{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/10{background-color:color-mix(in oklab, var(--warning) 10%, transparent)}}.bg-white{background-color:var(--color-white)}.fill-current{fill:currentColor}.p-1{padding:var(--spacing)}.p-6{padding:calc(var(--spacing) * 6)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.pt-0{padding-top:0}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--card-foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-slate-700{color:var(--color-slate-700)}.text-slate-950{color:var(--color-slate-950)}.text-success{color:var(--success)}.text-success-foreground{color:var(--success-foreground)}.text-warning-foreground{color:var(--warning-foreground)}.shadow-\[0_1px_0_rgba\(15\,23\,42\,\.03\)\,0_20px_60px_rgba\(15\,23\,42\,\.05\)\]{--tw-shadow:0 1px 0 var(--tw-shadow-color,#0f172a08), 0 20px 60px var(--tw-shadow-color,#0f172a0d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,color\,border-color\,transform\,box-shadow\]{transition-property:background-color,color,border-color,transform,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.placeholder\:text-slate-400::placeholder{color:var(--color-slate-400)}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:brightness-95:hover{--tw-brightness:brightness(95%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.focus\:border-primary\/55:focus{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.focus\:border-primary\/55:focus{border-color:color-mix(in oklab, var(--primary) 55%, transparent)}}.focus\:ring-4:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-primary\/10:focus{--tw-ring-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.focus\:ring-primary\/10:focus{--tw-ring-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:translate-y-px:active{--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}:root{--background:#f7f7fc;--foreground:#17182c;--card:#fff;--card-foreground:#17182c;--popover:#fff;--popover-foreground:#17182c;--primary:#7568eb;--primary-foreground:#fff;--secondary:#efeff8;--secondary-foreground:#343552;--muted:#f0f1f7;--muted-foreground:#74758b;--accent:#e8e5ff;--accent-foreground:#3f377e;--border:#e2e3ee;--input:#dedfea;--ring:#7568eb;--success:#2e9a72;--success-foreground:#fff;--warning:#f3a642;--warning-foreground:#50320a;--danger:#d64f67;--radius:1.15rem;--ink:#17182c;--ink-soft:#30324e;--violet:#7568eb;--violet-deep:#5c50d2;--lavender:#e9e6ff;--lavender-soft:#f4f2ff;--peach:#ffbd8b;--peach-soft:#fff0e3;--sky:#81d8f7;--sky-soft:#e2f6fd;--mint:#7fdcb8;--mint-soft:#e4f8f0;--pink:#eba7d8;--pink-soft:#fae9f6;--yellow:#ffd66b;--yellow-soft:#fff6d8;--cloud:#f7f7fc;--paper:#fffefd;--code:#101426;--code-soft:#171c33;--code-line:#252b46;--shadow-soft:0 24px 70px #3e39691a;--shadow-card:0 14px 40px #3e396914}*{box-sizing:border-box;border-color:var(--border)}html{background:var(--background);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-behavior:smooth;min-width:320px}body{background:var(--background);min-height:100vh;color:var(--foreground);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}::selection{background:var(--violet)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in srgb, var(--violet) 35%, white)}}::selection{color:var(--ink)}:focus-visible{outline:3px solid var(--violet)}@supports (color:color-mix(in lab, red, red)){:focus-visible{outline:3px solid color-mix(in srgb, var(--violet) 35%, transparent)}}:focus-visible{outline-offset:3px}h1,h2,h3,.brand-product,.continue-learning-card h1,.student-auth h1{font-family:Avenir Next Rounded,SF Pro Rounded,Arial Rounded MT Bold,Inter,ui-sans-serif,sans-serif}.surface-kicker{color:var(--muted-foreground);letter-spacing:.12em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.66rem;font-weight:850;line-height:1.25;display:block}.brand-lockup{min-width:0;color:var(--ink);align-items:center;gap:11px;display:inline-flex}.brand-mark-wrap{background:#ffffffb8;border-radius:13px;flex:none;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 0 0 1px #403c6e14,0 8px 20px #3a356614}.brand-mark-image{width:27px;height:auto;transition:transform .18s;display:block}.brand-wordmark{gap:2px;min-width:0;line-height:1;display:grid}.brand-owner{color:#77798f;letter-spacing:.075em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.57rem;font-weight:800}.brand-product{letter-spacing:-.035em;font-size:.98rem;font-weight:850}.brand-lockup-compact .brand-mark-wrap{width:32px;height:32px}.brand-lockup-compact .brand-mark-image{width:23px}@media (hover:hover){.brand-lockup:hover .brand-mark-image{transform:translateY(-1px)rotate(-2deg)}}.code-buddy-illustration{width:100%;height:auto;display:block;overflow:visible}.learning-sticker{color:var(--ink);border:1px solid #ffffffbd;border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative;overflow:hidden;box-shadow:inset 0 -6px 12px #23204a14,0 8px 20px #2f2b541f}.learning-sticker:after{content:"";filter:blur(3px);background:#38326421;border-radius:999px;height:10%;position:absolute;inset:auto 14% 7%}.learning-sticker-shine{filter:blur(1px);background:#ffffffb8;border-radius:999px;width:38%;height:22%;position:absolute;top:10%;left:18%;transform:rotate(-20deg)}.learning-sticker svg{z-index:1;stroke-width:2.4px;position:relative}.learning-sticker-sm{width:38px;height:38px}.learning-sticker-sm svg{width:17px;height:17px}.learning-sticker-md{width:48px;height:48px}.learning-sticker-md svg{width:21px;height:21px}.learning-sticker-lg{width:62px;height:62px}.learning-sticker-lg svg{width:26px;height:26px}.learning-sticker-violet{color:#3b3479;background:linear-gradient(145deg,#c8c1ff,#8578f2)}.learning-sticker-sky{color:#245c76;background:linear-gradient(145deg,#ddf7ff,#77d4f5)}.learning-sticker-mint{color:#225f4a;background:linear-gradient(145deg,#dcfaed,#72d7af)}.learning-sticker-peach{color:#7a4223;background:linear-gradient(145deg,#fff1e5,#ffb783)}.learning-sticker-pink{color:#71335e;background:linear-gradient(145deg,#fcebf8,#eaa5d6)}.learning-sticker-yellow{color:#71531c;background:linear-gradient(145deg,#fff9dd,#ffd262)}.circular-progress{flex:none;place-items:center;display:inline-grid;position:relative}.circular-progress svg{position:absolute;inset:0;transform:rotate(-90deg)}.circular-progress-track{stroke:#4f4c711f}.circular-progress-value{stroke:var(--violet);transition:stroke-dashoffset .7s cubic-bezier(.22,1,.36,1)}.circular-progress-violet .circular-progress-value{stroke:var(--violet)}.circular-progress-sky .circular-progress-value{stroke:#42b7e0}.circular-progress-mint .circular-progress-value{stroke:#41b88c}.circular-progress-peach .circular-progress-value{stroke:#f4965f}.circular-progress-ink .circular-progress-value{stroke:var(--ink)}.circular-progress-content{z-index:1;text-align:center;place-items:center;line-height:1;display:grid;position:relative}.circular-progress-content>strong,.circular-progress-content span strong{letter-spacing:-.04em;font-size:.86rem;display:block}.circular-progress-content span small{color:var(--muted-foreground);text-transform:uppercase;margin-top:3px;font-size:.52rem;font-weight:750;display:block}.session-controls{align-items:center;gap:6px;display:inline-flex}.identity-pill{background:#ffffffc7;border:1px solid #4d4b711a;border-radius:999px;align-items:center;gap:9px;min-height:44px;padding:5px 8px 5px 5px;display:inline-flex;box-shadow:0 8px 24px #3e396912}.identity-pill>svg{width:17px;height:17px;color:var(--violet);margin-left:7px}.identity-avatar{background:linear-gradient(145deg, var(--lavender), #c4bcff);color:#443d85;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:.78rem;font-weight:900;display:grid}.identity-avatar svg{width:16px;height:16px}.identity-pill>span:last-child{gap:1px;min-width:0;display:grid}.identity-pill small{color:#85869a;letter-spacing:.06em;text-transform:uppercase;font-size:.52rem;font-weight:800}.identity-pill strong{text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:.72rem;overflow:hidden}.identity-pill-local{color:var(--muted-foreground);padding:0 12px;font-size:.72rem;font-weight:750}.identity-pill-teacher .identity-avatar{background:var(--mint-soft);color:#287359}.session-signout{color:#7b7d91;border-radius:50%!important}.route-loading-shell,.auth-fallback,.teacher-auth-missing{background:radial-gradient(circle at 15% 12%, #7568eb24, transparent 24rem), radial-gradient(circle at 88% 85%, #81d8f729, transparent 28rem), var(--background);text-align:center;align-content:center;place-items:center;gap:20px;min-height:100svh;padding:32px 20px;display:grid}.route-loading-buddy{width:min(260px,72vw)}.route-loading-copy{gap:5px;display:grid}.route-loading-copy span{color:var(--violet);letter-spacing:.12em;font-size:.66rem;font-weight:900}.route-loading-copy p{color:var(--muted-foreground);margin:0}.route-loading-teacher .learning-sticker{animation:1.8s ease-in-out infinite teacher-loader}.auth-fallback-card{border:1px solid var(--border);width:min(100%,520px);box-shadow:var(--shadow-soft);background:#ffffffe0;border-radius:30px;justify-items:center;gap:20px;padding:38px;display:grid}.auth-fallback-card h1{letter-spacing:-.05em;margin:0;font-size:clamp(1.8rem,5vw,2.7rem)}.auth-fallback-card p{color:var(--muted-foreground);margin:0;line-height:1.65}.auth-fallback-card code{background:var(--lavender-soft);color:var(--violet-deep);border-radius:6px;padding:2px 6px}@keyframes teacher-loader{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.student-auth{background:var(--paper);grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);min-height:100svh;display:grid}.student-auth-story{background:radial-gradient(circle at 78% 26%,#ffffffc7,#0000 15rem),radial-gradient(circle at 18% 78%,#81d8f759,#0000 24rem),linear-gradient(145deg,#ebe8ff 0%,#e4e7ff 48%,#e4f4fb 100%);flex-direction:column;min-height:100svh;padding:clamp(28px,4vw,62px);display:flex;position:relative;overflow:hidden}.student-auth-story:before,.student-auth-story:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.student-auth-story:before{border:2px solid #7568eb1f;width:24vw;height:24vw;top:-8vw;left:-6vw}.student-auth-story:after{background:#ffbd8b3d;width:31vw;height:31vw;bottom:-9vw;right:-5vw}.student-auth-topline{z-index:5;justify-content:space-between;align-items:center;gap:20px;display:flex;position:relative}.student-auth-safe{color:#5f6180;align-items:center;gap:7px;font-size:.68rem;font-weight:700;display:inline-flex}.student-auth-safe svg{width:15px;height:15px;color:var(--violet)}.student-auth-copy{z-index:4;width:min(680px,84%);margin-top:clamp(44px,7vh,88px);position:relative}.student-auth-eyebrow{color:var(--violet-deep);letter-spacing:.12em;align-items:center;gap:8px;font-size:.68rem;font-weight:900;display:inline-flex}.student-auth-eyebrow svg{width:16px;height:16px}.student-auth h1{letter-spacing:-.072em;max-width:10ch;margin:15px 0 16px;font-size:clamp(3.3rem,6.6vw,7.1rem);font-weight:900;line-height:.9}.student-auth h1 em{color:var(--violet);font-style:normal}.student-auth-copy>p{color:#666981;max-width:58ch;margin:0;font-size:clamp(.92rem,1.2vw,1.08rem);line-height:1.7}.student-auth-visual{z-index:3;width:min(560px,72%);margin:auto auto -20px;position:relative}.student-auth-buddy{filter:drop-shadow(0 24px 32px #4e458e1f);width:100%}.floating-topic{z-index:4;color:#50526d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd1;border:1px solid #fffc;border-radius:999px;align-items:center;gap:7px;min-height:38px;padding:8px 12px;font-size:.68rem;font-weight:800;display:inline-flex;position:absolute;box-shadow:0 14px 34px #48417e21}.floating-topic svg{width:15px;height:15px;color:var(--violet)}.floating-topic-code{top:18%;left:-6%;transform:rotate(-5deg)}.floating-topic-game{top:37%;right:-6%;transform:rotate(5deg)}.floating-topic-rocket{bottom:20%;left:-1%;transform:rotate(3deg)}.student-auth-dock{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc2;border:1px solid #ffffffc7;border-radius:999px;gap:8px;padding:9px;display:flex;position:absolute;bottom:7%;right:1%;box-shadow:0 16px 42px #413c7021}.student-auth-dock .learning-sticker{width:42px;height:42px}.student-auth-dock .learning-sticker svg{width:18px;height:18px}.student-auth-form-panel{background:radial-gradient(circle at 95% 8%, #eba7d829, transparent 20rem), radial-gradient(circle at 12% 92%, #ffbd8b26, transparent 20rem), var(--paper);place-content:center;gap:18px;min-height:100svh;padding:clamp(28px,5vw,76px);display:grid}.student-login-card,.teacher-login-card{width:min(100%,500px);box-shadow:var(--shadow-soft);background:#ffffffed;border:1px solid #4e4a701a;border-radius:32px;padding:clamp(26px,4vw,42px)}.student-login-heading,.teacher-login-heading{align-items:center;gap:16px;display:flex}.student-login-heading h2,.teacher-login-heading h2{letter-spacing:-.045em;margin:4px 0 3px;font-size:1.8rem;font-weight:900}.student-login-heading p{color:var(--muted-foreground);margin:0;font-size:.82rem}.student-login-form,.teacher-login-form{gap:18px;margin-top:34px;display:grid}.auth-field{gap:8px;display:grid}.auth-field small{color:var(--muted-foreground);font-size:.66rem;line-height:1.45}.student-login-submit{width:100%;margin-top:4px}.form-error{color:#ad344c;background:#fff0f2;border-radius:12px;margin:0;padding:10px 12px;font-size:.74rem;font-weight:700;line-height:1.5}.student-login-assurance{border-top:1px solid var(--border);color:#77798e;gap:9px;margin-top:24px;padding-top:20px;font-size:.68rem;display:grid}.student-login-assurance span{align-items:center;gap:8px;display:flex}.student-login-assurance svg{width:15px;height:15px;color:var(--violet)}.teacher-entry-link{color:#7d7f93;justify-self:center;font-size:.7rem;font-weight:750;transition:color .16s}.teacher-entry-link:hover{color:var(--violet-deep)}.teacher-auth{background:#f3f4f8;grid-template-columns:minmax(0,.94fr) minmax(430px,.76fr);min-height:100svh;display:grid}.teacher-auth-intro{color:#fff;background:radial-gradient(circle at 76% 22%,#7fdcb82e,#0000 25rem),linear-gradient(155deg,#181a2d,#23263e 68%,#272a45);flex-direction:column;justify-content:space-between;gap:50px;padding:clamp(32px,5vw,72px);display:flex}.teacher-auth-intro .brand-lockup{color:#fff}.teacher-auth-intro .brand-owner{color:#ffffff80}.teacher-auth-intro .brand-mark-wrap{background:#fffffff0}.teacher-auth-copy{max-width:700px;margin:auto 0}.teacher-auth-copy .surface-kicker{color:var(--mint)}.teacher-auth-copy h1{letter-spacing:-.067em;max-width:9ch;margin:13px 0 16px;font-size:clamp(3rem,6vw,6.3rem);font-weight:880;line-height:.93}.teacher-auth-copy p{color:#ffffff94;max-width:52ch;margin:0;line-height:1.7}.teacher-auth-features{flex-wrap:wrap;gap:10px;display:flex}.teacher-auth-features span{color:#ffffffb3;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:7px;padding:9px 12px;font-size:.67rem;font-weight:750;display:inline-flex}.teacher-auth-features svg{width:14px;height:14px;color:var(--mint)}.teacher-auth-form-panel{place-content:center;gap:18px;padding:clamp(28px,5vw,72px);display:grid}.teacher-login-heading h2{font-size:1.55rem}.student-dashboard-page{background:linear-gradient(#f8f8fd 0%,#f5f6fb 52%,#faf9f7 100%);min-height:100vh;position:relative;overflow:hidden}.student-dashboard-blob{pointer-events:none;filter:blur(1px);border-radius:50%;position:absolute}.student-dashboard-blob-one{background:#e9e6ffb8;width:420px;height:420px;top:80px;right:-120px}.student-dashboard-blob-two{background:#e2f6fda6;width:460px;height:460px;top:720px;left:-180px}.student-shell-header,.teacher-shell-header,.lesson-topbar{z-index:30;justify-content:space-between;align-items:center;gap:20px;width:min(1320px,100% - 48px);min-height:78px;margin:0 auto;display:flex;position:relative}.student-shell-header{border-bottom:1px solid #58547c17}.student-shell-actions{align-items:center;gap:12px;display:flex}.curriculum-pill,.teacher-console-pill{color:#696b82;background:#ffffffb8;border:1px solid #4f4b7117;border-radius:999px;align-items:center;gap:7px;min-height:38px;padding:7px 11px;font-size:.66rem;font-weight:800;display:inline-flex}.curriculum-pill svg,.teacher-console-pill svg{width:14px;height:14px;color:var(--violet)}.student-dashboard-shell,.teacher-dashboard-shell{z-index:2;width:min(1320px,100% - 48px);margin:0 auto;padding:46px 0 80px;position:relative}.dashboard-welcome-row{justify-content:space-between;align-items:end;gap:36px;margin-bottom:26px;display:flex}.dashboard-welcome-row h2{letter-spacing:-.06em;margin:7px 0;font-size:clamp(2rem,4vw,3.7rem);font-weight:900;line-height:1}.dashboard-welcome-row p{color:var(--muted-foreground);margin:0;line-height:1.6}.dashboard-module-progress{background:#ffffffb8;border:1px solid #4b486c14;border-radius:18px;gap:9px;width:min(360px,100%);padding:16px 18px;display:grid}.dashboard-module-progress>div{justify-content:space-between;gap:14px;font-size:.72rem;display:flex}.dashboard-module-progress>div span{color:var(--muted-foreground)}.dashboard-module-progress>div strong{font-size:.78rem}.dashboard-module-progress small{color:#88899d;text-align:right;font-size:.7rem}.dashboard-focus-grid{grid-template-columns:minmax(0,1.55fr) minmax(330px,.72fr);align-items:stretch;gap:22px;display:grid}.continue-learning-card{color:#fff;background:radial-gradient(circle at 86% 16%,#ffffff47,#0000 14rem),linear-gradient(145deg,#8175ee 0%,#6a5fd9 62%,#5e52cf 100%);border-radius:34px;grid-template-columns:minmax(0,1.02fr) minmax(330px,.78fr);min-height:420px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 70px #5348b53d}.continue-learning-card:after{content:"";border:1px solid #ffffff29;border-radius:50%;width:330px;height:330px;position:absolute;bottom:-130px;right:-90px}.continue-card-copy{z-index:3;flex-direction:column;justify-content:space-between;gap:22px;padding:clamp(26px,3vw,42px);display:flex;position:relative}.continue-card-badges{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.soft-badge-white{color:#fff!important;background:#ffffff2e!important;border-color:#ffffff57!important}.continue-card-badges>span{color:#ffffffb8;align-items:center;gap:5px;font-size:.72rem;font-weight:700;display:inline-flex}.continue-card-badges svg{width:13px;height:13px}.continue-greeting{color:#ffffffa3;margin:0 0 8px;font-size:.86rem;font-weight:700}.continue-learning-card h1{letter-spacing:-.065em;max-width:11ch;margin:0;font-size:clamp(2.4rem,4.5vw,4.7rem);font-weight:900;line-height:.93}.continue-lesson-title{color:#ffffffc7;margin:13px 0 0;font-size:.82rem}.continue-lesson-title strong{color:#fff}.continue-summary{color:#ffffff94;max-width:50ch;margin:10px 0 0;font-size:.78rem;line-height:1.55}.continue-card-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.continue-primary-action{color:var(--violet-deep)!important;background:#fff!important;box-shadow:0 12px 24px #221a5f33!important}.continue-save-note{color:#ffffffb3;align-items:center;gap:6px;font-size:.72rem;display:inline-flex}.continue-save-note svg{width:14px;height:14px;color:var(--mint)}.continue-card-visual{min-height:420px;position:relative}.continue-buddy{z-index:2;width:116%;max-width:430px;position:absolute;bottom:-7%;right:3%}.continue-orbit{border:1px solid #ffffff2e;border-radius:50%;position:absolute}.continue-orbit-one{width:310px;height:310px;inset:12% -5% auto auto}.continue-orbit-two{border-style:dashed;width:180px;height:180px;bottom:12%;right:19%}.continue-progress-float{z-index:4;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#ffffff29;border:1px solid #ffffff42;border-radius:50%;place-items:center;padding:8px;display:grid;position:absolute;top:24px;right:24px}.continue-progress-float .circular-progress-track{stroke:#ffffff2e}.continue-progress-float .circular-progress-content{color:#fff}.continue-progress-float .circular-progress-content span small{color:#ffffff94}.continue-week-progress{z-index:4;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff29;border:1px solid #ffffff3d;border-radius:17px;grid-template-columns:1fr auto;gap:5px 8px;width:150px;padding:12px 14px;display:grid;position:absolute;bottom:24px;right:22px}.continue-week-progress span{color:#ffffffb3;text-transform:uppercase;font-size:.68rem;font-weight:800}.continue-week-progress strong{font-size:.72rem}.continue-week-progress i{background:#ffffff2e;border-radius:99px;grid-column:1/-1;height:5px;overflow:hidden}.continue-week-progress b{border-radius:inherit;background:var(--peach);height:100%;display:block}.weekly-outcome-card{min-height:420px;box-shadow:var(--shadow-card);background:radial-gradient(circle at 92% 0,#81d8f742,#0000 14rem),#ffffffeb;border:1px solid #4b486c14;border-radius:32px;flex-direction:column;padding:26px;display:flex}.weekly-outcome-head{align-items:center;gap:14px;display:flex}.weekly-outcome-head h3{letter-spacing:-.05em;margin:3px 0 0;font-size:1.55rem;font-weight:900}.weekly-outcome-card ol{gap:8px;margin:22px 0 18px;padding:0;list-style:none;display:grid}.weekly-outcome-card li{grid-template-columns:26px 1fr;align-items:start;gap:9px;display:grid}.weekly-outcome-card li>span{background:var(--sky-soft);color:#2d7691;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.65rem;font-weight:900;display:grid}.weekly-outcome-card li p{color:#55576e;margin:3px 0 0;font-size:.8rem;line-height:1.5}.weekly-outcome-build{background:var(--peach-soft);color:#77472a;border-radius:18px;align-items:center;gap:11px;margin-top:auto;padding:13px 14px;display:flex}.weekly-outcome-build>svg{width:20px;height:20px}.weekly-outcome-build span{gap:2px;display:grid}.weekly-outcome-build small{letter-spacing:.08em;font-size:.62rem;font-weight:850}.weekly-outcome-build strong{font-size:.78rem}.learning-cycle-strip{background:#ffffffbf;border:1px solid #4b486c14;border-radius:24px;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:16px;margin-top:22px;padding:16px 20px;display:grid;box-shadow:0 10px 30px #3e39690d}.learning-cycle-strip article{align-items:center;gap:12px;display:flex}.learning-cycle-strip article strong{font-size:.82rem;display:block}.learning-cycle-strip article p{color:var(--muted-foreground);margin:3px 0 0;font-size:.74rem;line-height:1.4}.learning-cycle-strip>span{color:#b1b2c2;font-size:1.2rem}.week-journey-section{margin-top:62px}.section-heading-row{justify-content:space-between;align-items:end;gap:28px;margin-bottom:22px;display:flex}.section-heading-row h2{letter-spacing:-.06em;margin:8px 0;font-size:clamp(2rem,4vw,3.5rem);font-weight:900}.section-heading-row p{max-width:64ch;color:var(--muted-foreground);margin:0;line-height:1.6}.journey-note{background:#ffffffc2;border:1px solid #4b486c14;border-radius:18px;align-items:center;gap:10px;min-width:210px;padding:13px 15px;display:flex}.journey-note>svg{width:18px;height:18px;color:var(--violet)}.journey-note span{gap:2px;display:grid}.journey-note strong{font-size:.8rem}.journey-note small{color:var(--muted-foreground);font-size:.68rem}.week-journey-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.week-journey-card{min-height:210px;color:var(--ink);text-align:left;background:#fff;border:1px solid #4b486c14;border-radius:25px;flex-direction:column;justify-content:space-between;gap:18px;padding:18px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;box-shadow:0 10px 28px #3e39690e}.week-journey-card:before{z-index:0;border-radius:inherit;content:"";pointer-events:none;background:linear-gradient(145deg,#ffffffb8,#0000 55%);position:absolute;inset:0}.week-journey-card>*{z-index:1;position:relative}.week-journey-card.is-selected{border-color:var(--violet)}@supports (color:color-mix(in lab, red, red)){.week-journey-card.is-selected{border-color:color-mix(in srgb, var(--violet) 55%, white)}}.week-journey-card.is-selected{transform:translateY(-2px);box-shadow:0 18px 38px #584cb826,inset 0 0 0 2px #7568eb1f}.week-journey-violet{background:linear-gradient(150deg,#f2f0ff,#e4e0ff)}.week-journey-sky{background:linear-gradient(150deg,#eefaff,#dff5fd)}.week-journey-peach{background:linear-gradient(150deg,#fff7ef,#ffead9)}.week-journey-mint{background:linear-gradient(150deg,#f1fcf7,#def7ed)}.week-journey-pink{background:linear-gradient(150deg,#fff5fb,#f9e6f4)}.week-journey-yellow{background:linear-gradient(150deg,#fffdf2,#fff4cb)}.week-journey-topline{align-items:center;gap:8px;display:flex}.week-journey-number{color:#17182c40;letter-spacing:.08em;margin-right:auto;font-size:.68rem;font-weight:900}.week-journey-copy{gap:4px;display:grid}.week-journey-copy>span{color:var(--muted-foreground);letter-spacing:.1em;font-size:.64rem;font-weight:900}.week-journey-copy strong{letter-spacing:-.035em;font-size:1.08rem}.week-journey-copy p{color:#696b80;margin:0;font-size:.76rem;line-height:1.45}.week-journey-foot{color:#676980;border-top:1px solid #4b486c14;justify-content:space-between;align-items:center;padding-top:11px;font-size:.7rem;font-weight:800;display:flex}.week-journey-foot svg{width:16px;height:16px}.week-detail-panel{box-shadow:var(--shadow-card);background:#ffffffe0;border:1px solid #4b486c14;border-radius:30px;margin-top:18px;padding:clamp(22px,3vw,34px)}.week-detail-header{justify-content:space-between;align-items:start;gap:28px;display:flex}.week-detail-header h3{letter-spacing:-.055em;margin:8px 0 7px;font-size:clamp(1.8rem,3.6vw,3rem);font-weight:900}.week-detail-header p{max-width:70ch;color:var(--muted-foreground);margin:0;line-height:1.6}.weekly-build-pill{background:var(--peach-soft);color:#70442b;border-radius:18px;align-items:center;gap:11px;min-width:250px;padding:13px 15px;display:flex}.weekly-build-pill>svg{width:20px;height:20px}.weekly-build-pill span{gap:2px;display:grid}.weekly-build-pill small{letter-spacing:.08em;font-size:.6rem;font-weight:900}.weekly-build-pill strong{font-size:.78rem}.week-detail-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:24px;display:grid}.week-detail-card{border:1px solid #4b486c12;border-radius:22px;padding:20px}.week-detail-fcc{background:var(--lavender-soft)}.week-detail-outcomes{background:var(--sky-soft)}.week-detail-title{align-items:center;gap:10px;display:flex}.week-detail-title>svg{width:19px;height:19px;color:var(--violet)}.week-detail-title span{gap:2px;display:grid}.week-detail-title small{color:var(--muted-foreground);letter-spacing:.08em;font-size:.62rem;font-weight:900}.week-detail-title strong{font-size:.88rem}.fcc-learning-blocks{gap:8px;margin-top:16px;display:grid}.fcc-learning-blocks>div{background:#ffffffad;border-radius:13px;grid-template-columns:auto 1fr;align-items:start;gap:9px;padding:10px;display:grid}.fcc-learning-blocks span{gap:2px;display:grid}.fcc-learning-blocks strong{font-size:.76rem}.fcc-learning-blocks small{color:var(--muted-foreground);font-size:.66rem}.week-detail-outcomes ol{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.week-detail-outcomes li{grid-template-columns:25px 1fr;align-items:start;gap:8px;display:grid}.week-detail-outcomes li>span{color:#31718a;background:#fff;border-radius:50%;place-items:center;width:25px;height:25px;font-size:.62rem;font-weight:900;display:grid}.week-detail-outcomes p{color:#4f6071;margin:3px 0 0;font-size:.76rem;line-height:1.45}.companion-lessons-section{margin-top:20px}.companion-lessons-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;display:flex}.companion-lessons-heading>span{color:var(--muted-foreground);font-size:.72rem;font-weight:800}.companion-lesson-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.companion-lesson-card{background:#fff;border:1px solid #4b486c14;border-radius:20px;flex-direction:column;gap:12px;min-height:190px;padding:17px;display:flex}.companion-lesson-card.is-complete{background:var(--mint-soft)}.companion-lesson-card.is-locked{opacity:.68}.companion-lesson-index{background:var(--lavender);width:32px;height:32px;color:var(--violet-deep);border-radius:11px;place-items:center;font-size:.7rem;font-weight:900;display:grid}.companion-lesson-index svg{width:16px;height:16px}.companion-lesson-copy{gap:4px;display:grid}.companion-lesson-copy>span{color:var(--muted-foreground);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:850}.companion-lesson-copy strong{font-size:.9rem}.companion-lesson-copy p{color:#6c6e82;margin:0;font-size:.74rem;line-height:1.45}.companion-lesson-card>a,.companion-lesson-card>button{margin-top:auto}.lesson-locked-label{color:var(--muted-foreground);align-items:center;gap:6px;margin-top:auto;font-size:.7rem;font-weight:750;display:inline-flex}.lesson-locked-label svg{width:14px;height:14px}.week-detail-tip{color:#696b80;background:#f7f7fb;border-radius:16px;align-items:center;gap:10px;margin-top:18px;padding:12px 14px;display:flex}.week-detail-tip svg{width:17px;height:17px;color:var(--violet)}.week-detail-tip p{margin:0;font-size:.74rem;line-height:1.45}.dashboard-support-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.support-card{border:1px solid #4b486c12;border-radius:24px;align-items:flex-start;gap:15px;min-height:190px;padding:21px;display:flex}.support-card h3{letter-spacing:-.035em;margin:6px 0 8px;font-size:1.02rem}.support-card p{color:#686a7e;margin:0;font-size:.76rem;line-height:1.55}.support-card-cloud{background:var(--mint-soft)}.support-card-method{background:var(--pink-soft)}.support-card-progress{background:var(--yellow-soft)}.lesson-workspace-page{background:#f2f3f8;min-height:100svh}.lesson-topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe6;border-bottom:1px solid #423f6014;width:100%;min-height:76px;padding:0 18px}.lesson-topbar-start,.lesson-topbar-end{align-items:center;gap:12px;min-width:0;display:flex}.round-icon-link{border:1px solid var(--border);color:#65677e;background:#fff;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid}.round-icon-link svg{width:17px;height:17px}.lesson-topbar-divider{background:var(--border);width:1px;height:28px}.lesson-topbar-title{gap:2px;min-width:0;display:grid}.lesson-topbar-title span{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;font-size:.57rem;font-weight:800}.lesson-topbar-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.lesson-fcc-badge{white-space:nowrap}.lesson-pane-switcher{border-bottom:1px solid var(--border);background:#fffffff0;justify-content:center;align-items:center;gap:7px;min-height:54px;padding:7px 14px;display:none}.lesson-pane-switcher button{color:#74768c;background:0 0;border:0;border-radius:13px;align-items:center;gap:7px;min-height:44px;padding:8px 14px;font-size:.74rem;font-weight:800;display:inline-flex}.lesson-pane-switcher button svg{width:16px;height:16px}.lesson-pane-switcher button.is-active{background:var(--ink);color:#fff;box-shadow:0 8px 18px #17182c24}.lesson-workspace-grid{grid-template-columns:340px minmax(500px,1fr) minmax(410px,.82fr);gap:10px;min-height:calc(100svh - 76px);padding:10px;display:grid}.lesson-mission-pane,.lesson-code-pane,.lesson-result-pane{border:1px solid #3f3c5d17;border-radius:26px;min-width:0;min-height:0;overflow:hidden;box-shadow:0 12px 36px #3430570e}.lesson-mission-pane{background:#fcfbff;display:flex}.mission-pane-scroll{scrollbar-width:thin;width:100%;padding:14px;overflow-y:auto}.mission-hero-card{background:linear-gradient(145deg,#e8e5ff,#e1e8ff 64%,#dff4fb);border-radius:22px;padding:20px;position:relative;overflow:hidden}.mission-hero-card:after{content:"";border:1px solid #7568eb29;border-radius:50%;width:150px;height:150px;position:absolute;bottom:-52px;right:-45px}.mission-hero-topline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mission-hero-topline>span{color:#6d6f84;font-size:.68rem;font-weight:750}.mission-hero-card h1{z-index:1;letter-spacing:-.055em;max-width:12ch;margin:17px 0 9px;font-size:2rem;font-weight:900;line-height:1;position:relative}.mission-hero-card>p{z-index:1;color:#63657d;max-width:34ch;margin:0;font-size:.78rem;line-height:1.55;position:relative}.mission-hero-art{place-items:center;display:grid;position:absolute;bottom:12px;right:14px}.mission-hero-art>span{color:#fff;font-family:ui-monospace,monospace;font-size:.63rem;font-weight:900;position:absolute}.mission-checkpoint-card{background:var(--mint-soft);border:1px solid #4b486c12;border-radius:18px;grid-template-columns:auto 1fr;align-items:center;gap:11px;margin-top:12px;padding:13px;display:grid}.mission-checkpoint-card p{color:#4f685e;margin:4px 0 0;font-size:.74rem;line-height:1.48}.mission-stage-tabs{margin-top:12px}.mission-stage-switcher{grid-template-columns:repeat(3,1fr);width:100%;background:#efeff7!important;border-radius:16px!important;display:grid!important}.mission-stage-switcher button{min-width:0;padding-inline:8px!important}.mission-stage-card{border:1px solid #4b486c12;border-radius:21px;padding:18px}.mission-stage-violet{background:var(--lavender-soft)}.mission-stage-sky{background:var(--sky-soft)}.mission-stage-peach{background:var(--peach-soft)}.mission-stage-heading{align-items:center;gap:11px;display:flex}.mission-stage-heading>div{gap:2px;display:grid}.mission-stage-heading span{color:var(--muted-foreground);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:900}.mission-stage-heading h2{letter-spacing:-.035em;margin:0;font-size:1rem}.mission-stage-card>p{color:#62647a;margin:14px 0 0;font-size:.76rem;line-height:1.55}.mission-stage-card ul{gap:8px;margin:15px 0 0;padding:0;list-style:none;display:grid}.mission-stage-card li{grid-template-columns:23px 1fr;align-items:start;gap:8px;display:grid}.mission-stage-card li>span{width:23px;height:23px;color:var(--violet);background:#fff;border-radius:50%;place-items:center;display:grid}.mission-stage-card li svg{width:12px;height:12px}.mission-stage-card li p{color:#55576d;margin:2px 0 0;font-size:.74rem;line-height:1.45}.mission-disclosure{background:#fff;border:1px solid #4b486c14;border-radius:17px;margin-top:10px;overflow:hidden}.mission-disclosure-trigger{color:#4e5068;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:48px;padding:12px 14px;font-size:.74rem;font-weight:800;display:flex}.mission-disclosure-trigger>span{align-items:center;gap:8px;display:inline-flex}.mission-disclosure-trigger svg{width:15px;height:15px;color:var(--violet)}.mission-disclosure-trigger[data-state=open] .collapsible-chevron{transform:rotate(180deg)}.collapsible-chevron{transition:transform .18s}.mission-disclosure-content{padding:0 13px 13px}.lesson-outcome-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lesson-outcome-list li{grid-template-columns:24px 1fr;gap:8px;display:grid}.lesson-outcome-list li>span{background:var(--lavender-soft);width:24px;height:24px;color:var(--violet-deep);border-radius:50%;place-items:center;font-size:.6rem;font-weight:900;display:grid}.lesson-outcome-list p{color:#65677c;margin:2px 0 0;font-size:.73rem;line-height:1.45}.lesson-recall-list{gap:7px;display:grid}.lesson-recall-list details{background:#f7f7fb;border-radius:12px;padding:10px}.lesson-recall-list summary{color:#4e5067;cursor:pointer;font-size:.73rem;font-weight:750}.lesson-recall-list p{color:#717388;margin:8px 0 0;font-size:.71rem;line-height:1.48}.lesson-code-pane{background:var(--code);color:#fff;flex-direction:column;display:flex}.code-pane-toolbar{background:#151a2e;border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:9px 12px;display:flex}.code-file-tab{color:#e6e8f5;background:#20263d;border-radius:11px;align-items:center;gap:9px;min-height:39px;padding:7px 11px;display:inline-flex}.code-file-icon{color:#271b1a;background:#ff8f62;border-radius:6px;padding:4px 6px;font-size:.48rem;font-weight:950}.code-file-tab strong{font-size:.7rem}.code-file-tab i{background:var(--mint);border-radius:50%;width:6px;height:6px}.code-toolbar-actions{align-items:center;gap:8px;display:flex}.code-toolbar-actions button{color:#ffffffa3}.code-toolbar-actions button:hover{color:#fff!important;background:#ffffff14!important}.workspace-sync-status{color:#ffffff94;align-items:center;gap:6px;font-size:.66rem;font-weight:750;display:inline-flex}.workspace-sync-status svg{width:14px;height:14px}.workspace-sync-status.is-cloud svg{color:var(--mint)}.code-editor{background:var(--code);flex:1;min-height:0;overflow:hidden}.code-editor .cm-editor{background:var(--code);color:#eff1ff;height:100%;font-size:14px}.code-editor .cm-scroller{min-height:inherit;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;line-height:1.68;overflow:auto}.code-editor .cm-content{caret-color:#ffe66d;min-height:100%;padding:18px 0 28px}.code-editor .cm-line{padding:0 16px 0 9px}.code-editor .cm-gutters{color:#555c76;background:#0d1121;border-right:1px solid #ffffff0e}.code-editor .cm-activeLine,.code-editor .cm-activeLineGutter{background:#7568eb17}.code-editor .cm-selectionBackground,.code-editor .cm-content ::selection{background:#81d8f73b!important}.code-editor .cm-cursor,.code-editor .cm-dropCursor{border-left:2px solid #ffe66d!important}.code-editor .cm-focused{outline:none}.code-editor .cm-tooltip{color:#f2f3fb;background:#1c2238;border:1px solid #303751}.code-editor .cm-completionIcon{color:var(--sky)}.code-editor.is-read-only .cm-cursor{display:none}.code-action-bar{background:#151a2e;border-top:1px solid #ffffff12;justify-content:space-between;align-items:center;gap:18px;min-height:74px;padding:12px 14px;display:flex}.code-action-bar>div{color:#fff9;align-items:center;gap:10px;min-width:0;display:flex}.code-action-bar>div>svg{width:18px;height:18px;color:var(--sky)}.code-action-bar span{gap:2px;min-width:0;display:grid}.code-action-bar strong{color:#f5f6ff;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.code-action-bar small{font-size:.65rem}.code-action-bar button{flex:none;background:var(--peach)!important;color:#402719!important;box-shadow:0 10px 22px #ff9e6229!important}.lesson-result-pane{background:#fff;flex-direction:column;display:flex;overflow-y:auto}.result-pane-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 14px;display:flex}.result-pane-toolbar>div{gap:2px;display:grid}.result-pane-toolbar strong{font-size:.76rem}.live-indicator{color:#66726d;align-items:center;gap:6px;font-size:.67rem;font-weight:800;display:inline-flex}.live-indicator i{background:var(--mint);border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite presence-pulse;box-shadow:0 0 0 5px #7fdcb82e}.result-preview-stage{background:#f2f3f8;min-height:520px;padding:10px}.preview-shell{background:#fff;border:1px solid #44406217;border-radius:20px;flex-direction:column;height:100%;min-height:500px;display:flex;overflow:hidden;box-shadow:0 10px 28px #3c38610f}.preview-toolbar{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:10px;min-height:50px;padding:8px 10px;display:flex}.preview-mode-group{flex-wrap:wrap;gap:5px;display:flex}.preview-mode-button{color:#7a7c91;background:0 0;border:0;border-radius:10px;align-items:center;gap:6px;min-height:40px;padding:6px 9px;font-size:.66rem;font-weight:800;display:inline-flex}.preview-mode-button svg{width:14px;height:14px}.preview-mode-button.is-active{background:var(--lavender);color:var(--violet-deep)}.preview-dimensions{color:#9293a4;font-family:ui-monospace,monospace;font-size:.64rem}.preview-canvas{background:radial-gradient(circle at 50% 20%,#fff,#e8eaf2 70%);flex:1;place-items:center;min-height:0;padding:16px;display:grid;overflow:hidden}.preview-device-sizer{flex:none;position:relative}.preview-device-sizer.is-fit{width:100%;height:100%}.preview-device{transform-origin:0 0;background:#fff;border:1px solid #2c2a4424;border-radius:16px;overflow:hidden;box-shadow:0 18px 44px #2926462e}.preview-device-fit{width:100%;height:100%;min-height:400px;box-shadow:none;border-radius:10px}.preview-device-mobile{border-width:6px;border-color:#26293e;border-radius:34px}.preview-device-tablet{border-width:5px;border-color:#36394d;border-radius:25px}.preview-frame{background:#fff;border:0;width:100%;height:100%;display:block}.test-drawer-card{border-top:1px solid var(--border);background:#fff;gap:13px;padding:17px;display:grid}.test-drawer-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.test-drawer-heading h2{letter-spacing:-.035em;margin:4px 0 0;font-size:1.05rem}.tests-empty-state{background:var(--lavender-soft);color:#5e6076;border-radius:15px;align-items:flex-start;gap:10px;padding:13px;display:flex}.tests-empty-state>svg{width:18px;height:18px;color:var(--violet)}.tests-empty-state strong{font-size:.78rem;display:block}.tests-empty-state p{margin:4px 0 0;font-size:.7rem;line-height:1.45}.test-results-stack{gap:9px;display:grid}.test-result-summary{background:var(--lavender-soft);color:#66677f;border:1px solid #7568eb1a;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:8px 11px;font-size:.7rem;display:flex}.test-result-summary span{color:var(--ink-soft);font-weight:850}.test-result-summary strong{color:var(--violet-deep);font-size:.66rem}.test-result-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none;display:grid}.test-result-list li{border:1px solid #4b486c12;border-radius:12px;grid-template-columns:24px 1fr;align-items:center;gap:8px;min-height:43px;padding:8px;display:grid}.test-result-list li>span{border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.test-result-list li svg{width:13px;height:13px}.test-result-list li p{color:#64667b;margin:0;font-size:.7rem;line-height:1.35}.test-result-list li.is-pass{background:var(--mint-soft)}.test-result-list li.is-pass>span{color:#23775a;background:#caefdf}.test-result-list li.is-fail{background:#fff5f6}.test-result-list li.is-fail>span{color:#b64258;background:#ffe1e6}.lesson-success-card{background:var(--mint-soft);border:1px solid #389a7021;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.lesson-success-card>div{gap:2px;display:grid}.lesson-success-card>div span{color:#38745f;letter-spacing:.09em;font-size:.62rem;font-weight:900}.lesson-success-card>div strong{font-size:.84rem}.lesson-success-card>div p{color:#5d756c;margin:0;font-size:.68rem}@keyframes presence-pulse{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.05)}}.teacher-dashboard-page{background:#f3f4f8;min-height:100vh}.teacher-shell-header{border-bottom:1px solid #46446217}.teacher-brand-group{align-items:center;gap:12px;display:flex}.teacher-dashboard-shell{padding-top:42px}.teacher-dashboard-hero{justify-content:space-between;align-items:end;gap:30px;display:flex}.teacher-dashboard-hero h1{letter-spacing:-.067em;max-width:13ch;margin:8px 0 10px;font-size:clamp(2.5rem,5vw,5rem);font-weight:900;line-height:.95}.teacher-dashboard-hero p{max-width:68ch;color:var(--muted-foreground);margin:0;line-height:1.65}.teacher-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:13px;margin-top:26px;display:grid}.teacher-summary-card{background:#fff;border:1px solid #46446212;border-radius:20px;align-items:center;gap:13px;padding:17px;display:flex}.teacher-summary-card>div{gap:2px;display:grid}.teacher-summary-card strong{letter-spacing:-.04em;font-size:1.55rem}.teacher-summary-card span{color:var(--muted-foreground);font-size:.72rem}.teacher-summary-violet{background:var(--lavender-soft)}.teacher-summary-mint{background:var(--mint-soft)}.teacher-summary-sky{background:var(--sky-soft)}.teacher-summary-peach{background:var(--peach-soft)}.teacher-create-panel{box-shadow:var(--shadow-card);background:#fff;border:1px solid #46446214;border-radius:24px;margin-top:16px;padding:21px}.teacher-panel-heading{align-items:center;gap:13px;display:flex}.teacher-panel-heading h2,.teacher-panel-heading h3{letter-spacing:-.04em;margin:3px 0 2px;font-size:1.2rem}.teacher-panel-heading p{color:var(--muted-foreground);margin:0;font-size:.74rem}.teacher-panel-heading.compact h3{font-size:1rem}.teacher-create-form{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:12px;margin-top:18px;display:grid}.teacher-create-form>div,.teacher-account-card>div:not(.teacher-panel-heading):not(.teacher-danger-zone){gap:7px;display:grid}.teacher-feedback-stack{gap:8px;margin-top:12px;display:grid}.teacher-feedback{border-radius:13px;align-items:center;gap:8px;margin:0;padding:11px 13px;font-size:.7rem;font-weight:700;display:flex}.teacher-feedback svg{width:16px;height:16px}.teacher-feedback.is-error{color:#aa354d;background:#fff0f2}.teacher-feedback.is-success{background:var(--mint-soft);color:#2c755b}.teacher-live-classroom{grid-template-columns:310px minmax(0,1fr);align-items:start;gap:14px;margin-top:18px;display:grid}.teacher-roster-panel{box-shadow:var(--shadow-card);background:#fff;border:1px solid #46446214;border-radius:24px;position:sticky;top:14px;overflow:hidden}.teacher-roster-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:17px;display:flex}.teacher-roster-heading h2{letter-spacing:-.035em;margin:4px 0 0;font-size:1rem}.teacher-search{border:1px solid var(--border);color:#9293a4;background:#f8f8fb;border-radius:13px;align-items:center;gap:8px;margin:12px;padding:0 11px;display:flex}.teacher-search svg{width:16px;height:16px}.teacher-search input{width:100%;min-height:42px;color:var(--ink);background:0 0;border:0;outline:none;font-size:.7rem}.teacher-roster-list{max-height:680px;padding:0 8px 10px;overflow-y:auto}.teacher-roster-item{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:15px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.teacher-roster-item.is-selected{background:var(--lavender-soft);box-shadow:inset 0 0 0 1px #7568eb1f}.teacher-student-avatar,.teacher-selected-avatar{background:linear-gradient(145deg, var(--lavender), #c7c0ff);color:#4c448f;border-radius:14px;place-items:center;font-weight:900;display:grid}.teacher-student-avatar{width:40px;height:40px;font-size:.75rem}.teacher-selected-avatar{width:50px;height:50px;font-size:1rem}.teacher-roster-copy{gap:3px;min-width:0;display:grid}.teacher-roster-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.teacher-roster-copy small{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.teacher-presence{color:#9a9baa;text-transform:uppercase;align-items:center;gap:5px;font-size:.61rem;font-weight:850;display:inline-flex}.teacher-presence i{background:#b8bac6;border-radius:50%;width:7px;height:7px}.teacher-presence.is-online{color:#27805f}.teacher-presence.is-online i{background:var(--mint);box-shadow:0 0 0 4px #7fdcb82e}.teacher-student-command{gap:14px;min-width:0;display:grid}.teacher-live-code-card,.teacher-detail-card{box-shadow:var(--shadow-card);background:#fff;border:1px solid #46446214;border-radius:24px;overflow:hidden}.teacher-live-code-header{justify-content:space-between;align-items:center;gap:20px;padding:18px;display:flex}.teacher-live-student{align-items:center;gap:12px;display:flex}.teacher-live-student h2{letter-spacing:-.04em;margin:3px 0 2px;font-size:1.25rem}.teacher-live-student p{color:var(--muted-foreground);margin:0;font-size:.72rem}.teacher-live-statuses{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.teacher-live-statuses>span{color:var(--muted-foreground);align-items:center;gap:6px;font-size:.68rem;font-weight:700;display:inline-flex}.teacher-live-statuses svg{width:14px;height:14px}.teacher-live-context{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f8f8fb;grid-template-columns:1.3fr 1fr .7fr .55fr;display:grid}.teacher-live-context>div{border-right:1px solid var(--border);align-items:center;gap:9px;min-width:0;padding:12px 14px;display:flex}.teacher-live-context>div:last-child{border-right:0}.teacher-live-context svg{width:17px;height:17px;color:var(--violet)}.teacher-live-context span{gap:2px;min-width:0;display:grid}.teacher-live-context small{color:var(--muted-foreground);letter-spacing:.07em;font-size:.59rem;font-weight:850}.teacher-live-context strong{text-overflow:ellipsis;white-space:nowrap;font-size:.73rem;overflow:hidden}.teacher-live-score{background:var(--mint-soft);text-align:center;justify-content:center}.teacher-live-score strong{font-size:1.15rem}.teacher-live-editor-header{color:#ffffffa6;background:#151a2e;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:9px 13px;display:flex}.teacher-live-editor-header span{align-items:center;gap:7px;font-size:.69rem;font-weight:750;display:inline-flex}.teacher-live-editor-header svg{width:15px;height:15px;color:var(--sky)}.teacher-live-editor-header small{font-size:.62rem}.teacher-live-editor{background:var(--code)}.teacher-detail-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.teacher-detail-card{padding:19px}.teacher-progress-overview{grid-template-columns:auto 1fr;align-items:center;gap:16px;margin-top:18px;display:grid}.teacher-progress-overview>div{gap:6px;display:grid}.teacher-progress-overview>div>strong{font-size:1rem}.teacher-progress-overview>div>p{color:var(--muted-foreground);margin:0;font-size:.72rem}.teacher-recent-progress{gap:8px;margin:20px 0 16px;display:grid}.teacher-recent-progress>div{background:#f7f7fa;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.teacher-recent-progress>div>span{gap:2px;min-width:0;display:grid}.teacher-recent-progress>div strong{text-overflow:ellipsis;white-space:nowrap;max-width:240px;font-size:.72rem;overflow:hidden}.teacher-recent-progress>div small{color:var(--muted-foreground);font-size:.62rem}.teacher-muted-copy{color:var(--muted-foreground);margin:8px 0;font-size:.72rem}.teacher-account-card{gap:13px;display:grid}.teacher-account-card label small{color:var(--muted-foreground);font-weight:500}.teacher-active-toggle{border:1px solid var(--border);cursor:pointer;background:#f8f8fb;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:10px;padding:11px 12px;display:grid}.teacher-active-toggle input{width:18px;height:18px;accent-color:var(--violet)}.teacher-active-toggle span{gap:2px;display:grid}.teacher-active-toggle strong{font-size:.74rem}.teacher-active-toggle small{color:var(--muted-foreground);font-size:.65rem}.teacher-danger-zone{border-top:1px solid var(--border);margin-top:3px;padding-top:13px}.teacher-danger-zone>button{color:#bd4057!important}.teacher-danger-zone p{color:#a23b50;margin:0 0 10px;font-size:.73rem;line-height:1.5}.teacher-danger-zone>div>div{gap:8px;display:flex}.danger-solid{background:var(--danger)!important;color:#fff!important}.teacher-empty-state{text-align:center;min-height:200px;color:var(--muted-foreground);align-content:center;place-items:center;padding:28px;display:grid}.teacher-empty-state>svg{width:26px;height:26px;color:var(--violet);margin-bottom:9px}.teacher-empty-state strong{color:var(--ink);font-size:.78rem}.teacher-empty-state p{max-width:30ch;margin:5px 0 0;font-size:.7rem;line-height:1.45}.teacher-command-empty{border:1px solid var(--border);background:#fff;border-radius:24px;min-height:520px}@media (hover:hover){.week-journey-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px #3e39691f}.teacher-roster-item:hover{background:#f7f7fb}.preview-mode-button:hover{color:var(--ink);background:#f2f1fa}}@media (min-width:1440px){.lesson-mission-pane.is-mobile-hidden,.lesson-code-pane.is-mobile-hidden,.lesson-result-pane.is-mobile-hidden,.lesson-code-pane.is-workspace-hidden,.lesson-result-pane.is-workspace-hidden{display:flex!important}}@media (max-width:1439px){.lesson-pane-switcher{display:flex}.lesson-workspace-grid{grid-template-columns:330px minmax(0,1fr);min-height:calc(100svh - 130px)}.lesson-mission-pane.is-mobile-hidden,.lesson-code-pane.is-mobile-hidden,.lesson-result-pane.is-mobile-hidden{display:flex}.lesson-code-pane.is-workspace-hidden,.lesson-result-pane.is-workspace-hidden{display:none}.lesson-code-pane,.lesson-result-pane{grid-area:1/2}.result-preview-stage{min-height:560px}}@media (max-width:1180px){.dashboard-focus-grid{grid-template-columns:1fr}.weekly-outcome-card{min-height:auto}.week-journey-grid,.teacher-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-create-form{grid-template-columns:1fr 1fr}.teacher-live-classroom{grid-template-columns:280px minmax(0,1fr)}.teacher-live-context{grid-template-columns:1fr 1fr}.teacher-live-context>div:nth-child(2){border-right:0}.teacher-live-context>div:nth-child(-n+2){border-bottom:1px solid var(--border)}}@media (max-width:1023px){.student-auth,.teacher-auth{grid-template-columns:1fr}.student-auth-story{min-height:670px}.student-auth-form-panel,.teacher-auth-form-panel{min-height:auto;padding-block:42px 58px}.teacher-auth-intro{min-height:560px}.teacher-auth-copy h1{max-width:10ch}.student-shell-header,.teacher-shell-header,.student-dashboard-shell,.teacher-dashboard-shell{width:min(100% - 28px,1320px)}.dashboard-welcome-row{flex-direction:column;align-items:start}.dashboard-module-progress{width:100%}.continue-learning-card{grid-template-columns:1fr minmax(300px,.7fr)}.learning-cycle-strip{grid-template-columns:1fr}.learning-cycle-strip>span{display:none}.week-detail-header{flex-direction:column}.weekly-build-pill{width:100%;min-width:0}.companion-lesson-grid{grid-template-columns:1fr 1fr}.dashboard-support-grid{grid-template-columns:1fr}.lesson-topbar{position:sticky;top:0}.lesson-pane-switcher{z-index:25;position:sticky;top:76px}.lesson-workspace-grid{min-height:calc(100svh - 130px);padding:8px;display:block}.lesson-mission-pane,.lesson-code-pane,.lesson-result-pane{min-height:calc(100svh - 146px)}.lesson-mission-pane.is-mobile-hidden,.lesson-code-pane.is-mobile-hidden,.lesson-result-pane.is-mobile-hidden{display:none!important}.lesson-mission-pane:not(.is-mobile-hidden),.lesson-code-pane:not(.is-mobile-hidden),.lesson-result-pane:not(.is-mobile-hidden){display:flex!important}.mission-pane-scroll{padding:16px}.result-preview-stage{min-height:520px}.teacher-live-classroom{grid-template-columns:1fr}.teacher-roster-panel{position:static}.teacher-roster-list{max-height:330px}.teacher-detail-grid{grid-template-columns:1fr}}@media (max-width:760px){.student-auth-story{min-height:600px;padding:24px 20px}.student-auth-safe{display:none}.student-auth-copy{width:100%;margin-top:42px}.student-auth h1{font-size:clamp(3rem,15vw,5.4rem)}.student-auth-visual{width:min(430px,92%)}.floating-topic-code{left:0}.floating-topic-game{right:0}.student-login-card,.teacher-login-card{border-radius:26px}.student-shell-header{min-height:70px}.curriculum-pill,.identity-pill>span:last-child{display:none}.identity-pill{padding-right:5px}.student-dashboard-shell{padding-top:30px}.dashboard-welcome-row h2{font-size:2.35rem}.continue-learning-card{grid-template-columns:1fr;min-height:620px}.continue-card-copy{min-height:390px}.continue-card-visual{min-height:260px}.continue-buddy{width:74%;right:7%}.continue-progress-float{top:10px;right:14px}.continue-week-progress{bottom:14px;right:14px}.week-journey-grid{grid-template-columns:1fr}.section-heading-row{flex-direction:column;align-items:start}.journey-note{width:100%}.week-detail-grid,.companion-lesson-grid{grid-template-columns:1fr}.lesson-brand,.lesson-topbar-divider,.lesson-fcc-badge{display:none!important}.lesson-topbar-title span,.lesson-topbar-end .identity-pill{display:none}.lesson-topbar{padding:0 10px}.lesson-pane-switcher{justify-content:stretch;overflow-x:auto}.lesson-pane-switcher button{flex:1;justify-content:center}.code-pane-toolbar{align-items:flex-start}.workspace-sync-status{display:none}.code-action-bar{flex-direction:column;align-items:stretch}.code-action-bar button{width:100%}.test-result-list{grid-template-columns:1fr}.lesson-success-card{grid-template-columns:auto 1fr}.lesson-success-card>button,.lesson-success-card>div[role=status]{grid-column:1/-1}.preview-mode-button span,.preview-dimensions{display:none}.result-preview-stage{min-height:460px}.preview-shell{min-height:440px}.teacher-shell-header{align-items:flex-start;padding-block:12px}.teacher-console-pill{display:none}.teacher-dashboard-hero{flex-direction:column;align-items:flex-start}.teacher-dashboard-hero h1{font-size:2.8rem}.teacher-summary-grid{grid-template-columns:1fr 1fr}.teacher-create-form{grid-template-columns:1fr}.teacher-live-code-header{flex-direction:column;align-items:flex-start}.teacher-live-statuses{justify-content:flex-start}.teacher-live-context{grid-template-columns:1fr}.teacher-live-context>div{border-right:0;border-bottom:1px solid var(--border)}.teacher-live-context>div:last-child{border-bottom:0}.teacher-live-editor-header{flex-direction:column;align-items:flex-start}.teacher-progress-overview{grid-template-columns:1fr;justify-items:start}}@media (max-width:480px){.student-dashboard-shell,.teacher-dashboard-shell,.student-shell-header,.teacher-shell-header{width:calc(100% - 20px)}.student-shell-actions{gap:4px}.brand-owner{display:none}.continue-card-copy{padding:23px}.continue-learning-card h1{font-size:2.75rem}.weekly-outcome-card,.week-detail-panel{border-radius:24px;padding:19px}.week-journey-card{min-height:190px}.teacher-summary-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.student-shell-header{width:min(1520px,100% - clamp(40px,6vw,112px))}.student-dashboard-shell{width:min(1520px,100% - clamp(40px,6vw,112px));max-width:1520px;padding-top:clamp(42px,5vw,72px)}.teacher-shell-header{width:min(1600px,100% - clamp(40px,5vw,96px))}.teacher-dashboard-shell{width:min(1600px,100% - clamp(40px,5vw,96px));max-width:1600px}.dashboard-welcome-row>div:first-child p,.learning-path-heading p,.learning-path-week-intro p{max-width:68ch}.learning-path-section{margin-top:clamp(34px,5vw,70px);position:relative}.learning-path-heading{justify-content:space-between;align-items:end;gap:28px;margin-bottom:24px;display:flex}.learning-path-heading h2{letter-spacing:-.055em;margin:7px 0 8px;font-size:clamp(2rem,3vw,3.2rem);font-weight:900;line-height:1}.learning-path-heading p{color:var(--muted-foreground);margin:0;line-height:1.65}.learning-path-heading-note{min-width:230px;box-shadow:var(--shadow-card);background:#ffffffc2;border:1px solid #504a7e17;border-radius:18px;align-items:center;gap:11px;padding:14px 16px;display:flex}.learning-path-heading-note>svg{width:22px;height:22px;color:var(--violet)}.learning-path-heading-note>span{gap:2px;display:grid}.learning-path-heading-note strong{font-size:.82rem}.learning-path-heading-note small{color:var(--muted-foreground);font-size:.66rem}.learning-path-shell{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:radial-gradient(circle at 91% 4%,#e9e6ffb3,#0000 25rem),radial-gradient(circle at 8% 94%,#e2f6fdb8,#0000 28rem),#ffffffc2;border:1px solid #4b467314;border-radius:34px;padding:clamp(16px,2vw,28px);position:relative;overflow:hidden;box-shadow:0 24px 70px #3e396914}.learning-path-draw-line{z-index:0;background:linear-gradient(180deg, var(--violet), var(--sky), var(--peach), var(--mint));opacity:.2;transform-origin:top;border-radius:999px;width:3px;position:absolute;top:54px;bottom:54px;left:clamp(50px,5.1vw,78px)}.learning-path-list{z-index:1;gap:14px;display:grid;position:relative}.learning-path-week{--path-tone:var(--violet);--path-soft:var(--lavender-soft);background:#ffffffe0;border:1px solid #4a466e14;border-radius:25px;transition:border-color .22s,box-shadow .22s,transform .22s;position:relative;overflow:visible;box-shadow:0 10px 30px #3e39690e}.learning-path-week-violet{--path-tone:#7568eb;--path-soft:#f1efff}.learning-path-week-sky{--path-tone:#46b8e0;--path-soft:#e9f8fd}.learning-path-week-peach{--path-tone:#ed9360;--path-soft:#fff1e8}.learning-path-week-mint{--path-tone:#43b98d;--path-soft:#e9faf3}.learning-path-week-pink{--path-tone:#d879bc;--path-soft:#fbedf8}.learning-path-week-yellow{--path-tone:#d7a83e;--path-soft:#fff8df}.learning-path-week.is-expanded{border-color:var(--path-tone)}@supports (color:color-mix(in lab, red, red)){.learning-path-week.is-expanded{border-color:color-mix(in srgb, var(--path-tone) 25%, transparent)}}.learning-path-week.is-expanded{box-shadow:0 20px 50px #3e39691a}.learning-path-week.is-current{animation:3.8s ease-in-out infinite learning-path-current-breathe}.learning-path-week-trigger{border-radius:inherit;width:100%;min-height:116px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:52px 58px minmax(0,1fr) auto;align-items:center;gap:16px;padding:17px 20px;display:grid}.learning-path-week-trigger:focus-visible{outline-offset:-4px}.learning-path-week-node{background:var(--path-soft);width:52px;height:52px;box-shadow:0 0 0 2px var(--path-tone), 0 10px 22px #38335e21;border:5px solid #fff;border-radius:50%;place-items:center;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.learning-path-week-node{box-shadow:0 0 0 2px color-mix(in srgb, var(--path-tone) 28%, transparent), 0 10px 22px #38335e21}}.learning-path-week-node{color:var(--path-tone)}.learning-path-week.is-current .learning-path-week-node:after{border:2px solid var(--path-tone);position:absolute;inset:-10px}@supports (color:color-mix(in lab, red, red)){.learning-path-week.is-current .learning-path-week-node:after{border:2px solid color-mix(in srgb, var(--path-tone) 35%, transparent)}}.learning-path-week.is-current .learning-path-week-node:after{content:"";border-radius:50%;animation:2.8s ease-out infinite learning-path-node-ring}.learning-path-week-node svg{stroke-width:2.5px;width:20px;height:20px}.learning-path-week-number{color:var(--path-tone)}@supports (color:color-mix(in lab, red, red)){.learning-path-week-number{color:color-mix(in srgb, var(--path-tone) 65%, var(--ink))}}.learning-path-week-number{letter-spacing:-.05em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.18rem;font-weight:900}.learning-path-week-copy{gap:4px;min-width:0;display:grid}.learning-path-week-copy small{color:var(--path-tone);letter-spacing:.08em;font-size:.61rem;font-weight:900}.learning-path-week-copy strong{letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.02rem,1.45vw,1.35rem);overflow:hidden}.learning-path-week-copy>span{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.learning-path-week-meta{align-items:center;gap:12px;display:flex}.learning-path-chevron{width:20px;height:20px;color:var(--muted-foreground);transition:transform .24s}.learning-path-week.is-expanded .learning-path-chevron{transform:rotate(180deg)}.learning-path-week.is-locked{opacity:.78;background:#f9f9fcbf}.learning-path-week-panel{overflow:hidden}.learning-path-week-panel-inner{padding:0 20px 22px 146px}.learning-path-week-intro{background:var(--path-soft);border-radius:17px;justify-content:space-between;align-items:center;gap:22px;margin-bottom:16px;padding:15px 17px;display:flex}.learning-path-week-intro p{color:var(--muted-foreground);margin:5px 0 0;font-size:.76rem;line-height:1.55}.learning-path-week-build{background:#ffffffb8;border-radius:13px;align-items:center;gap:9px;min-width:230px;padding:10px 12px;display:flex}.learning-path-week-build>svg{width:18px;height:18px;color:var(--path-tone)}.learning-path-week-build>span{gap:2px;display:grid}.learning-path-week-build small{color:var(--muted-foreground);letter-spacing:.08em;font-size:.54rem;font-weight:900}.learning-path-week-build strong{font-size:.72rem}.learning-path-lessons-list{gap:9px;display:grid;position:relative}.learning-path-lesson{background:#fff;border:1px solid #4b476c13;border-radius:17px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 14px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid}.learning-path-lesson.is-current{border-color:var(--path-tone)}@supports (color:color-mix(in lab, red, red)){.learning-path-lesson.is-current{border-color:color-mix(in srgb, var(--path-tone) 30%, transparent)}}.learning-path-lesson.is-current{background:linear-gradient(90deg, var(--path-soft), white 58%);box-shadow:0 12px 28px #3f3a6817}.learning-path-lesson.is-completed{background:#fbfffd}.learning-path-lesson-rail>span{color:#9899aa;background:#f2f2f7;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.learning-path-lesson.is-current .learning-path-lesson-rail>span{background:var(--path-tone);color:#fff;box-shadow:0 7px 17px var(--path-tone)}@supports (color:color-mix(in lab, red, red)){.learning-path-lesson.is-current .learning-path-lesson-rail>span{box-shadow:0 7px 17px color-mix(in srgb, var(--path-tone) 28%, transparent)}}.learning-path-lesson.is-completed .learning-path-lesson-rail>span{background:var(--mint-soft);color:#29916a}.learning-path-lesson-rail svg{width:15px;height:15px}.learning-path-lesson-copy{gap:3px;min-width:0;display:grid}.learning-path-lesson-copy>span{color:var(--muted-foreground);letter-spacing:.055em;text-transform:uppercase;font-size:.57rem;font-weight:850}.learning-path-lesson-copy strong{letter-spacing:-.025em;font-size:.84rem}.learning-path-lesson-copy p{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.68rem;line-height:1.4;overflow:hidden}.learning-path-primary-action{box-shadow:0 9px 22px var(--violet)!important}@supports (color:color-mix(in lab, red, red)){.learning-path-primary-action{box-shadow:0 9px 22px color-mix(in srgb, var(--violet) 24%, transparent)!important}}.learning-path-lock-label{color:var(--muted-foreground);align-items:center;gap:6px;font-size:.65rem;font-weight:750;display:inline-flex}.learning-path-lock-label svg{width:14px;height:14px}.learning-path-locked-panel{background:#f8f8fbcc;border:1px dashed #5956752e;border-radius:17px;align-items:center;gap:13px;padding:19px;display:flex}.learning-path-locked-panel>svg{color:#999aaa;width:24px;height:24px}.learning-path-locked-panel strong{font-size:.8rem;display:block}.learning-path-locked-panel p{color:var(--muted-foreground);margin:4px 0 0;font-size:.7rem}.learning-path-footnote{color:var(--muted-foreground);background:#ffffffa6;border-radius:15px;align-items:center;gap:10px;margin-top:13px;padding:13px 16px;display:flex}.learning-path-footnote>svg{width:17px;height:17px;color:var(--violet)}.learning-path-footnote p{margin:0;font-size:.72rem;line-height:1.5}.lesson-topbar{width:100%;min-height:78px;padding-inline:clamp(14px,2vw,28px)}.lesson-topbar-start{flex:1}.lesson-navigation{align-items:center;gap:9px;min-width:0;display:flex}.lesson-navigation-divider{background:var(--border);width:1px;height:28px}.lesson-position-copy{gap:2px;min-width:105px;display:grid}.lesson-position-copy span{color:var(--muted-foreground);text-transform:uppercase;align-items:center;gap:5px;font-size:.57rem;font-weight:800;display:inline-flex}.lesson-position-copy span svg{width:12px;height:12px;color:var(--violet)}.lesson-position-copy strong{font-size:.73rem}.lesson-previous-link{border-radius:50%!important}.lesson-drawer-trigger{margin-left:2px}.lesson-drawer-backdrop{z-index:90;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#11122457;border:0;position:fixed;inset:0}.lesson-drawer{z-index:91;background:radial-gradient(circle at 90% 4%,#e9e6ffe6,#0000 20rem),#fbfbfe;width:min(440px,92vw);padding:24px;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-24px 0 70px #1919362e}.lesson-drawer-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:start;gap:16px;padding-bottom:19px;display:flex}.lesson-drawer-header h2{letter-spacing:-.045em;margin:5px 0 3px;font-size:1.55rem}.lesson-drawer-header p{color:var(--muted-foreground);margin:0;font-size:.74rem}.lesson-drawer-progress{gap:8px;margin:18px 0;display:grid}.lesson-drawer-progress>span{color:var(--muted-foreground);font-size:.69rem;font-weight:750}.lesson-drawer-progress>i{background:#e8e8f0;border-radius:999px;height:7px;overflow:hidden}.lesson-drawer-progress>i>b{border-radius:inherit;background:linear-gradient(90deg, var(--violet), #9c90ff);height:100%;transition:width .5s;display:block}.lesson-drawer-list{gap:9px;display:grid}.lesson-drawer-item{background:#fff;border:1px solid #4b476c14;border-radius:15px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid}.lesson-drawer-item.is-current{background:var(--lavender-soft);border-color:#7568eb47;box-shadow:0 10px 25px #4a419b17}.lesson-drawer-item.is-complete{background:#f8fffb}.lesson-drawer-index{color:#787a8f;background:#f0f0f6;border-radius:50%;place-items:center;width:34px;height:34px;font-size:.7rem;font-weight:900;display:grid}.lesson-drawer-item.is-current .lesson-drawer-index{background:var(--violet);color:#fff}.lesson-drawer-item.is-complete .lesson-drawer-index{background:var(--mint-soft);color:#2c8d69}.lesson-drawer-index svg,.lesson-drawer-item>svg{width:15px;height:15px}.lesson-drawer-item>span:nth-child(2){gap:3px;min-width:0;display:grid}.lesson-drawer-item small{color:var(--muted-foreground);text-transform:uppercase;font-size:.56rem;font-weight:800}.lesson-drawer-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.lesson-drawer-item>svg{color:var(--violet)}.lesson-drawer-path-link{width:100%;margin-top:18px}.lesson-access-state{background:radial-gradient(circle at 16% 15%, #e9e6ffd9, transparent 25rem), radial-gradient(circle at 86% 85%, #e2f6fdcc, transparent 28rem), var(--background);text-align:center;align-content:center;place-items:center;gap:18px;min-height:100svh;padding:32px 20px;display:grid}.lesson-access-state>div{max-width:560px}.lesson-access-state h1{letter-spacing:-.055em;margin:6px 0 8px;font-size:clamp(2rem,5vw,3.4rem)}.lesson-access-state p{color:var(--muted-foreground);margin:0}.mission-stage-switcher{position:relative}.mission-stage-trigger{isolation:isolate;position:relative;overflow:hidden}.mission-stage-trigger>span:last-child{z-index:2;position:relative}.mission-stage-active-pill{z-index:1;background:#fff;border-radius:9px;position:absolute;inset:3px;box-shadow:0 4px 13px #3a346b1a}.lesson-completion-card{background:radial-gradient(circle at 7% 12%,#ffd66b40,#0000 9rem),linear-gradient(135deg,#e7faf2,#f8fffb 56%,#fff8df);border:1px solid #37a57729;border-radius:22px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:14px;padding:18px;display:grid;position:relative;overflow:hidden;box-shadow:0 15px 36px #2f7c5c1a}.lesson-completion-celebration{width:92px;position:relative}.lesson-completion-buddy{filter:drop-shadow(0 10px 16px #4c458d24);width:92px}.completion-spark{color:#e4a934;position:absolute}.completion-spark svg{width:14px;height:14px}.completion-spark-one{animation:2.4s ease-in-out infinite completion-spark-float;top:-8px;left:-8px}.completion-spark-two{animation:2.4s ease-in-out .5s infinite reverse completion-spark-float;bottom:-6px;right:-8px}.lesson-completion-copy{gap:4px;display:grid}.lesson-completion-copy>span{color:#347b60;letter-spacing:.1em;font-size:.59rem;font-weight:900}.lesson-completion-copy h3{letter-spacing:-.035em;margin:0;font-size:1.03rem}.lesson-completion-copy p{color:#5c7169;margin:1px 0 0;font-size:.72rem;line-height:1.45}.completion-wait-copy{align-items:center;gap:7px;display:flex}.completion-wait-copy svg{width:15px;height:15px}.completion-error{font-weight:750;color:var(--danger)!important}.lesson-completion-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.lesson-completion-lesson-name{color:#3a645459;font-size:.52rem;font-weight:750;position:absolute;bottom:6px;right:16px}.preview-device{transition:width .26s cubic-bezier(.22,1,.36,1),height .26s cubic-bezier(.22,1,.36,1),transform .26s cubic-bezier(.22,1,.36,1),border-radius .26s}.preview-canvas.is-read-only .preview-frame{pointer-events:none}.teacher-live-code-card{transition:box-shadow .22s,border-color .22s}.teacher-presence.is-online i{animation:2.2s ease-out infinite teacher-live-pulse}.teacher-live-workspace{border-top:1px solid var(--border);background:#111526;overflow:hidden}.teacher-live-workspace-toolbar{color:#ffffffad;background:#151a2e;grid-template-columns:minmax(180px,1fr) auto minmax(220px,1fr);align-items:center;gap:14px;min-height:58px;padding:9px 13px;display:grid}.teacher-live-workspace-toolbar>div:first-child{align-items:center;gap:8px;display:flex}.teacher-live-workspace-toolbar>div:first-child>svg{width:17px;height:17px;color:var(--sky)}.teacher-live-workspace-toolbar>div:first-child>span{gap:1px;display:grid}.teacher-live-workspace-toolbar strong{color:#fff;font-size:.72rem}.teacher-live-workspace-toolbar small{color:#ffffff7a;text-align:right;font-size:.61rem}.teacher-live-view-switcher{background:#ffffff0f;border-radius:12px;gap:4px;padding:4px;display:flex}.teacher-live-view-switcher button{color:#ffffff8f;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:6px 10px;font-size:.64rem;font-weight:800;display:inline-flex}.teacher-live-view-switcher button.is-active{color:var(--violet-deep);background:#fff;box-shadow:0 5px 14px #0000002b}.teacher-live-view-switcher svg{width:14px;height:14px}.teacher-live-workspace-grid{background:#111526;min-height:620px;display:grid}.teacher-live-workspace-grid.is-split{grid-template-columns:minmax(0,1fr) minmax(420px,.9fr)}.teacher-live-workspace-grid.is-code,.teacher-live-workspace-grid.is-browser{grid-template-columns:minmax(0,1fr)}.teacher-live-code-pane,.teacher-live-browser{flex-direction:column;min-width:0;min-height:620px;display:flex}.teacher-live-code-pane{background:var(--code);border-right:1px solid #ffffff17}.teacher-live-code-pane>header,.teacher-live-browser-header{color:#ffffffa8;background:#171c31;border-bottom:1px solid #ffffff14;align-items:center;gap:8px;min-height:46px;padding:8px 12px;display:flex}.teacher-live-code-pane>header svg,.teacher-live-browser-header svg{width:15px;height:15px;color:var(--sky)}.teacher-live-code-pane>header span,.teacher-live-browser-header>span{font-size:.68rem;font-weight:800}.teacher-live-code-pane>header small{color:#ffffff61;margin-left:auto;font-size:.58rem}.teacher-live-editor{flex:1;min-height:0}.teacher-live-browser{background:#eef0f6}.teacher-live-browser-header{color:#ffffffa8;flex-wrap:wrap}.teacher-live-browser-header>strong{color:#fff;margin-left:auto;font-size:.66rem}.teacher-live-browser-header>small{color:#ffffff6b;align-items:center;gap:5px;width:100%;font-size:.56rem;display:none}.teacher-live-browser-stage{background:#e9ebf2;flex:1;min-height:0;padding:10px;display:flex}.teacher-live-browser-stage .preview-canvas{border-radius:16px;width:100%;min-height:600px}.week-unlock-control{background:linear-gradient(135deg, var(--lavender-soft), white);border:1px solid #7568eb1c;border-radius:17px;gap:14px;margin-top:18px;padding:15px;display:grid}.week-unlock-heading{align-items:center;gap:11px;display:flex}.week-unlock-icon{background:var(--lavender);width:40px;height:40px;color:var(--violet-deep);border-radius:13px;flex:none;place-items:center;display:grid}.week-unlock-icon svg{width:19px;height:19px}.week-unlock-heading h4{margin:3px 0 2px;font-size:.83rem}.week-unlock-heading p{color:var(--muted-foreground);margin:0;font-size:.64rem}.week-unlock-track{grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;display:grid}.week-unlock-track span{color:#9a9baa;background:#ebeaf1;border-radius:8px;place-items:center;min-height:28px;font-size:.58rem;font-weight:900;display:grid}.week-unlock-track span.is-unlocked{background:linear-gradient(145deg, #8d80f3, var(--violet));color:#fff;box-shadow:0 5px 12px #7568eb33}.week-unlock-track svg{width:11px;height:11px}.week-unlock-actions{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}@keyframes learning-path-current-breathe{0%,to{box-shadow:0 12px 36px #7568eb14}50%{box-shadow:0 18px 46px #7568eb2b}}@keyframes learning-path-node-ring{0%{opacity:.65;transform:scale(.82)}70%,to{opacity:0;transform:scale(1.18)}}@keyframes completion-spark-float{0%,to{opacity:.7;transform:translateY(0)rotate(0)}50%{opacity:1;transform:translateY(-5px)rotate(14deg)}}@keyframes teacher-live-pulse{0%{box-shadow:0 0 #7fdcb86b}70%,to{box-shadow:0 0 0 7px #7fdcb800}}@media (hover:hover) and (pointer:fine){.student-dashboard-blob-one{animation:13s ease-in-out infinite dashboard-blob-drift}.student-dashboard-blob-two{animation:16s ease-in-out 1.4s infinite reverse dashboard-blob-drift}.learning-path-week:not(.is-locked):hover{border-color:var(--path-tone);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.learning-path-week:not(.is-locked):hover{border-color:color-mix(in srgb, var(--path-tone) 20%, transparent)}}.learning-path-week:not(.is-locked):hover{box-shadow:0 18px 42px #3e39691a}.learning-path-lesson:not(.is-locked):hover,.lesson-drawer-item:hover{border-color:#7568eb33;transform:translate(3px)}}@keyframes dashboard-blob-drift{0%,to{transform:translate(0)scale(1)}50%{transform:translate(18px,-14px)scale(1.04)}}@media (min-width:1440px){.lesson-pane-switcher{display:none}.lesson-workspace-grid{grid-template-columns:minmax(340px,380px) minmax(560px,1.15fr) minmax(460px,.95fr);gap:12px;min-height:calc(100svh - 78px);padding:12px}.lesson-mission-pane,.lesson-code-pane,.lesson-result-pane,.lesson-mission-pane.is-mobile-hidden,.lesson-code-pane.is-mobile-hidden,.lesson-result-pane.is-mobile-hidden,.lesson-code-pane.is-workspace-hidden,.lesson-result-pane.is-workspace-hidden{display:flex!important}.result-preview-stage{min-height:590px}.preview-shell{min-height:570px}}@media (max-width:1320px){.teacher-live-workspace-grid.is-split{grid-template-columns:1fr}.teacher-live-workspace-grid.is-split .teacher-live-code-pane{border-bottom:1px solid #ffffff17;border-right:0}}@media (max-width:1023px){.student-shell-header,.student-dashboard-shell,.teacher-shell-header,.teacher-dashboard-shell{width:min(100% - 28px,100%)}.learning-path-heading{flex-direction:column;align-items:start}.learning-path-heading-note{width:100%}.learning-path-week-trigger{grid-template-columns:46px 45px minmax(0,1fr) auto;gap:11px;padding-inline:15px}.learning-path-week-node{width:46px;height:46px}.learning-path-week-panel-inner{padding-left:117px}.learning-path-week-intro{flex-direction:column;align-items:stretch}.learning-path-week-build{min-width:0}.lesson-navigation-divider,.lesson-previous-link{display:none!important}.teacher-live-workspace-toolbar{grid-template-columns:1fr auto}.teacher-live-workspace-toolbar>small{display:none}}@media (max-width:760px){.learning-path-shell{border-radius:25px;padding:10px}.learning-path-draw-line{left:34px}.learning-path-week-trigger{grid-template-columns:46px minmax(0,1fr) auto;min-height:102px}.learning-path-week-number{display:none}.learning-path-week-copy>span{white-space:normal}.learning-path-week-meta .circular-progress{display:none}.learning-path-week-panel-inner{padding:0 12px 14px}.learning-path-lesson{grid-template-columns:38px minmax(0,1fr);padding:12px}.learning-path-lesson-action{grid-column:2;justify-self:start}.learning-path-lesson-copy p{white-space:normal}.lesson-topbar-start{gap:7px}.lesson-nav-curriculum span,.lesson-drawer-trigger svg,.lesson-position-copy span,.lesson-topbar-end .identity-pill{display:none}.lesson-nav-curriculum{width:38px;padding:0!important}.lesson-drawer-trigger{padding-inline:10px!important}.lesson-position-copy{min-width:auto}.lesson-completion-card{grid-template-columns:auto minmax(0,1fr)}.lesson-completion-actions{grid-column:1/-1;justify-content:stretch}.lesson-completion-actions>*{flex:100%}.teacher-live-workspace-toolbar{grid-template-columns:1fr}.teacher-live-view-switcher{width:100%}.teacher-live-view-switcher button{flex:1}.teacher-live-workspace-grid,.teacher-live-code-pane,.teacher-live-browser{min-height:500px}.teacher-live-browser-stage .preview-canvas{min-height:470px}.week-unlock-actions>button{width:100%}}@media (prefers-reduced-motion:reduce){.learning-path-week.is-current,.learning-path-week.is-current .learning-path-week-node:after,.completion-spark,.teacher-presence.is-online i,.student-dashboard-blob-one,.student-dashboard-blob-two{animation:none!important}.preview-device,.learning-path-chevron,.learning-path-week,.learning-path-lesson,.lesson-drawer-item{transition:none!important}}.stage-success-card{border:1px solid var(--mint);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:16px;padding:18px;display:grid}@supports (color:color-mix(in lab, red, red)){.stage-success-card{border:1px solid color-mix(in srgb, var(--mint) 45%, var(--border))}}.stage-success-card{background:linear-gradient(135deg, var(--mint-soft), #fff);box-shadow:var(--shadow-card);border-radius:24px}.stage-success-card>div{gap:3px;display:grid}.stage-success-card strong{font-size:1rem}.stage-success-card p{color:var(--muted-foreground);margin:0;font-size:.82rem;line-height:1.5}.mission-stage-trigger:disabled{opacity:.42;cursor:not-allowed}.learning-path-games{gap:12px;margin-bottom:14px;display:grid}.topic-game-card{background:linear-gradient(135deg,#ffffffeb,#ffffffb8);border:1px solid #4945731a;border-radius:22px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px 16px;display:grid;box-shadow:0 10px 30px #3e39690f}.topic-game-card>div{gap:3px;min-width:0;display:grid}.topic-game-card strong{font-size:.94rem}.topic-game-card p{color:var(--muted-foreground);margin:0;font-size:.76rem;line-height:1.45}.topic-game-icon{background:var(--lavender);width:46px;height:46px;color:var(--violet-deep);border-radius:16px;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #ffffffb3}.topic-game-sky .topic-game-icon{background:var(--sky-soft);color:#24627e}.topic-game-peach .topic-game-icon{background:var(--peach-soft);color:#83441f}.topic-game-mint .topic-game-icon{background:var(--mint-soft);color:#246b52}.topic-game-pink .topic-game-icon{background:var(--pink-soft);color:#78385f}.topic-game-yellow .topic-game-icon{background:var(--yellow-soft);color:#785a16}.game-page{background:radial-gradient(circle at 8% 5%, #7568eb1f, transparent 28rem), var(--background);min-height:100svh}.game-topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f7f7fce0;justify-content:space-between;align-items:center;gap:16px;padding:18px clamp(18px,4vw,48px);display:flex}.game-shell{gap:20px;width:min(1180px,100% - 32px);margin:0 auto;padding:34px 0 56px;display:grid}.game-hero{border:1px solid var(--border);box-shadow:var(--shadow-card);background:#ffffffe6;border-radius:30px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:24px;display:grid}.game-hero h1{letter-spacing:-.05em;margin:2px 0 4px;font-size:clamp(1.8rem,4vw,3.2rem)}.game-hero p{color:var(--muted-foreground);margin:0;line-height:1.6}.game-board{border:1px solid var(--border);min-height:380px;box-shadow:var(--shadow-soft);background:#fff;border-radius:30px;padding:clamp(18px,3vw,30px)}.match-game-grid,.quiz-game-grid{gap:14px;display:grid}.match-game-row{background:var(--cloud);border-radius:20px;grid-template-columns:minmax(120px,.6fr) 1.4fr;align-items:center;gap:16px;padding:15px;display:grid}.match-game-row>strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem}.match-game-row>div,.quiz-game-card>div,.order-game-pool{flex-wrap:wrap;gap:8px;display:flex}.match-game-row button,.quiz-game-card button,.order-game-pool button,.order-game-target button{border:1px solid var(--border);color:var(--ink-soft);background:#fff;border-radius:999px;padding:9px 13px;font-weight:750;transition:transform .16s,background .16s,border-color .16s}.match-game-row button:hover,.quiz-game-card button:hover,.order-game-pool button:hover{border-color:var(--violet);transform:translateY(-1px)}.match-game-row button.is-selected,.quiz-game-card button.is-selected{background:var(--lavender);border-color:var(--violet)}@supports (color:color-mix(in lab, red, red)){.match-game-row button.is-selected,.quiz-game-card button.is-selected{border-color:color-mix(in srgb, var(--violet) 50%, white)}}.match-game-row button.is-selected,.quiz-game-card button.is-selected{color:var(--violet-deep)}.quiz-game-card{background:var(--cloud);border-radius:22px;grid-template-columns:auto 1fr;align-items:start;gap:10px 14px;padding:18px;display:grid}.quiz-game-card>span{background:var(--lavender);width:30px;height:30px;color:var(--violet-deep);border-radius:50%;place-items:center;font-weight:900;display:grid}.quiz-game-card>div,.quiz-game-card>small{grid-column:2}.quiz-game-card small{color:var(--muted-foreground);line-height:1.45}.order-game{grid-template-columns:1fr .8fr;gap:20px;display:grid}.order-game-target,.order-game-pool{border:1px dashed var(--violet);align-content:start;min-height:300px;padding:18px}@supports (color:color-mix(in lab, red, red)){.order-game-target,.order-game-pool{border:1px dashed color-mix(in srgb, var(--violet) 30%, var(--border))}}.order-game-target,.order-game-pool{background:var(--lavender-soft);border-radius:24px}.order-game-target{gap:9px;display:grid}.order-game-target>p{color:var(--muted-foreground)}.order-game-target button{text-align:left;border-radius:14px;grid-template-columns:28px 1fr;align-items:center;display:grid}.order-game-target button span{background:var(--violet);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:.72rem;display:grid}.order-game-pool{background:var(--cloud)}.game-action-bar{border:1px solid var(--border);box-shadow:var(--shadow-card);background:#ffffffe6;border-radius:22px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.game-result{color:var(--ink-soft);align-items:center;gap:10px;display:inline-flex}.game-result.is-complete{color:var(--success)}.game-result span{display:grid}.game-result strong{font-size:1.05rem}.game-result small{color:var(--muted-foreground)}.game-access{text-align:center;align-content:center;place-items:center;gap:18px;padding:28px;display:grid}.teacher-override-row{border:1px solid var(--border);background:var(--yellow-soft);border-radius:18px;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding:14px 16px;display:flex}.teacher-override-row>span{gap:2px;display:grid}.teacher-override-row small{color:var(--muted-foreground)}.teacher-game-progress{margin-top:18px}@media (max-width:760px){.stage-success-card,.topic-game-card,.game-hero{grid-template-columns:1fr}.game-hero>.learning-sticker{justify-self:start}.order-game,.match-game-row{grid-template-columns:1fr}.game-action-bar,.teacher-override-row{flex-direction:column;align-items:stretch}}.teacher-hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.teacher-live-class-launcher{background:linear-gradient(135deg, #fff, var(--lavender-soft));color:var(--violet-deep);border-color:#7568eb33}.live-class-shell-header{justify-content:space-between;align-items:center;gap:16px;width:min(1600px,100% - 40px);min-height:72px;margin:0 auto;display:flex}.live-class-shell-header>div{align-items:center;gap:16px;display:flex}.live-class-back-link{color:var(--muted-foreground);align-items:center;gap:6px;font-size:.76rem;font-weight:800;display:inline-flex}.live-class-back-link svg{width:15px}.live-class-setup-page,.live-class-studio-page,.live-class-viewer-page,.live-class-empty-page,.live-class-loading{min-height:100svh}.live-class-setup-page{background:radial-gradient(circle at 16% 5%, #7568eb2e, transparent 32rem), radial-gradient(circle at 88% 20%, #81d8f72e, transparent 30rem), var(--background)}.live-class-setup-card{border:1px solid var(--border);background:#ffffffeb;border-radius:34px;gap:24px;width:min(920px,100% - 32px);margin:clamp(36px,7vw,90px) auto;padding:clamp(24px,4vw,44px);display:grid;box-shadow:0 30px 90px #372c7821}.live-class-setup-copy>span{color:var(--violet);letter-spacing:.14em;font-size:.7rem;font-weight:900}.live-class-setup-copy h1{letter-spacing:-.055em;margin:7px 0 8px;font-size:clamp(2.2rem,5vw,4rem)}.live-class-setup-copy p{max-width:62ch;color:var(--muted-foreground);margin:0;line-height:1.65}.live-class-setup-card>label{gap:8px;display:grid}.live-class-setup-card>label>span{font-size:.72rem;font-weight:850}.live-class-setup-card input{border:1px solid var(--border);width:100%;min-height:54px;color:var(--foreground);font:inherit;background:#fff;border-radius:16px;outline:none;padding:0 16px;font-weight:750}.live-class-setup-card input:focus{border-color:#7568eb80;box-shadow:0 0 0 4px #7568eb17}.live-class-template-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.live-class-template-grid button{text-align:left;border:1px solid var(--border);background:var(--cloud);min-height:120px;color:var(--foreground);border-radius:20px;grid-template-columns:auto 1fr;align-items:start;gap:4px 10px;padding:16px;transition:transform .16s,border-color .16s,background .16s;display:grid}.live-class-template-grid button svg{width:20px;color:var(--violet);grid-row:1/span 2}.live-class-template-grid button strong{font-size:.88rem}.live-class-template-grid button span{color:var(--muted-foreground);font-size:.7rem;line-height:1.45}.live-class-template-grid button.is-selected{background:var(--lavender-soft);border-color:#7568eb6b;box-shadow:inset 0 0 0 1px #7568eb14}.live-class-setup-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.live-class-error{color:#9e2943;background:#fff1f4;border:1px solid #be2d482e;border-radius:14px;margin:0;padding:12px 14px;font-size:.76rem;font-weight:750}.live-class-studio-page{color:#fff;background:#0c1020}.live-class-studio-page .live-class-shell-header,.live-class-studio-page .brand-owner,.live-class-studio-page .brand-product{color:#fff}.live-class-studio-page .live-class-back-link{color:#ffffff8c}.live-class-toolbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#101426f0;border-block:1px solid #ffffff14;gap:9px;padding:11px clamp(14px,2vw,26px);display:grid;position:sticky;top:0}.live-class-toolbar-primary,.live-class-toolbar-secondary{align-items:center;gap:9px;display:flex}.live-class-toolbar-primary input{color:#fff;background:0 0;border:0;outline:0;flex:1;min-width:240px;font-size:.94rem;font-weight:850}.live-class-viewer-count,.live-class-sync-state{color:#ffffff94;white-space:nowrap;align-items:center;gap:6px;font-size:.65rem;font-weight:800;display:inline-flex}.live-class-viewer-count svg{width:15px}.live-class-sync-state.is-error{color:#ff91a6}.live-class-segment{background:#ffffff0f;border-radius:13px;align-items:center;gap:3px;padding:4px;display:inline-flex}.live-class-segment>svg{color:#ffffff6b;width:14px;margin:0 5px}.live-class-segment button{color:#ffffff85;background:0 0;border:0;border-radius:9px;padding:7px 9px;font-size:.61rem;font-weight:850}.live-class-segment button.is-active{color:var(--violet-deep);background:#fff}.live-class-toolbar-secondary>.live-class-end-button{color:#fff;background:#ff4d6d;margin-left:auto}.live-class-freeze-strip,.live-class-student-freeze,.live-class-reconnect{color:#654f12;background:#fff1bd;justify-content:center;align-items:center;gap:9px;padding:9px 16px;font-size:.72rem;display:flex}.live-class-freeze-strip span{opacity:.75}.live-class-studio-error{margin:10px 14px 0}.live-class-stage{grid-template-columns:minmax(480px,1fr) minmax(480px,1fr);gap:10px;min-height:calc(100svh - 164px);padding:10px;display:grid}.live-class-stage.is-code{grid-template-columns:1fr}.live-class-stage.is-code .live-class-preview{display:none}.live-class-stage.is-browser{grid-template-columns:1fr}.live-class-stage.is-browser .live-class-code-column{display:none}.live-class-code-column,.live-class-preview{background:#111526;border:1px solid #ffffff14;border-radius:20px;min-width:0;overflow:hidden}.live-class-code-column{flex-direction:column;display:flex}.live-class-template-strip,.live-class-following{color:#ffffff85;background:#151a2e;border-bottom:1px solid #ffffff14;align-items:center;gap:6px;min-height:42px;padding:7px 10px;font-size:.61rem;display:flex}.live-class-template-strip button{color:#ffffffb8;background:#ffffff12;border:0;border-radius:999px;padding:6px 9px;font-size:.6rem;font-weight:800}.live-class-editor{background:var(--code);flex-direction:column;flex:1;min-height:0;display:flex}.live-class-editor-tabs{background:#171c31;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:7px 10px;display:flex}.live-class-editor-tabs>div{gap:5px;display:flex}.live-class-editor-tabs button{color:#ffffff7a;background:0 0;border:0;border-radius:10px;align-items:center;gap:6px;padding:8px 10px;font-size:.65rem;font-weight:800;display:inline-flex}.live-class-editor-tabs button.is-active{color:#fff;background:#81d8f71a}.live-class-editor-tabs button:disabled{cursor:default}.live-class-editor-tabs svg{width:14px}.live-class-editor-tabs>span{color:#ffffff5c;font-size:.58rem}.live-class-editor-body{flex:1;min-height:0}.live-class-editor-body .code-editor{min-height:100%}.live-class-preview{background:#e9ebf2;flex-direction:column;display:flex}.live-class-browser-bar{color:#ffffff9e;background:#171c31;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:48px;padding:8px 12px;display:grid}.live-class-browser-bar>span{gap:5px;display:flex}.live-class-browser-bar>span i{background:#ff6c82;border-radius:50%;width:8px;height:8px}.live-class-browser-bar>span i:nth-child(2){background:#ffd66b}.live-class-browser-bar>span i:nth-child(3){background:#7fdcb8}.live-class-browser-bar strong{justify-self:center;font-size:.64rem}.live-class-browser-bar small{text-transform:capitalize;font-size:.58rem}.live-class-preview-stage{flex:1;min-height:0;padding:10px;display:flex}.live-class-preview-viewport{border-radius:14px;width:100%;min-height:640px}.live-class-viewer-page{color:#fff;background:#101426}.live-class-viewer-header{background:#151a2e;border-bottom:1px solid #ffffff14;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;min-height:78px;padding:10px clamp(14px,3vw,34px);display:grid}.live-class-viewer-header>div:first-child{align-items:center;gap:12px;display:flex}.live-class-viewer-header>:last-child{justify-self:end}.live-class-viewer-page .brand-owner,.live-class-viewer-page .brand-product{color:#fff}.live-class-viewer-title{align-items:center;gap:10px;display:flex}.live-class-viewer-title>span{gap:2px;display:grid}.live-class-viewer-title strong{font-size:.82rem}.live-class-viewer-title small{color:#ffffff73;font-size:.6rem}.live-class-student-freeze{background:#fff1bd}.live-class-student-freeze span{display:grid}.live-class-student-freeze small{opacity:.72}.live-class-reconnect{color:#8b2740;background:#ffe8ed}.live-class-following svg{width:14px;color:var(--mint)}.live-class-student-stage{min-height:calc(100svh - 78px)}.live-class-banner{color:#fff;background:linear-gradient(120deg,#191a35 0%,#2d285f 52%,#443993 100%);border:1px solid #7568eb2e;border-radius:24px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:18px;padding:17px 18px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 54px #3e348c33}.live-class-banner:after{content:"";filter:blur(2px);pointer-events:none;background:#81d8f726;border-radius:50%;width:190px;height:190px;position:absolute;top:-125px;right:16%}.live-class-banner.is-frozen{background:linear-gradient(120deg,#28243b,#514664)}.live-class-banner-icon{background:#ffffff1c;border-radius:17px;place-items:center;width:50px;height:50px;display:grid}.live-class-banner-icon svg{width:23px}.live-class-banner-copy{gap:3px;min-width:0;display:grid}.live-class-banner-copy>span{color:#d8d4ff;letter-spacing:.12em;align-items:center;gap:7px;font-size:.62rem;font-weight:900;display:flex}.live-class-banner-copy>span i{background:#ff5674;border-radius:50%;width:7px;height:7px;animation:2s infinite live-class-dot-pulse;box-shadow:0 0 #ff567480}.live-class-banner-copy strong{font-size:clamp(.95rem,2vw,1.2rem)}.live-class-banner-copy p{color:#ffffffa6;margin:0;font-size:.72rem}.live-class-empty-page,.live-class-loading{background:radial-gradient(circle at 50% 25%, var(--lavender), transparent 28rem), var(--background);text-align:center;color:var(--foreground);align-content:center;place-items:center;gap:16px;padding:28px;display:grid}.live-class-empty-page>svg,.live-class-loading>svg{width:54px;height:54px;color:var(--violet)}.live-class-empty-page h1{margin:0;font-size:clamp(2rem,5vw,3.5rem)}.live-class-empty-page p{max-width:52ch;color:var(--muted-foreground);margin:0;line-height:1.6}@keyframes live-class-dot-pulse{0%{box-shadow:0 0 #ff567480}70%,to{box-shadow:0 0 0 8px #ff567400}}@media (max-width:1100px){.live-class-stage{grid-template-columns:1fr}.live-class-stage.is-split .live-class-preview{min-height:620px}.live-class-toolbar-secondary{flex-wrap:wrap}.live-class-toolbar-secondary>.live-class-end-button{margin-left:0}.live-class-viewer-header{grid-template-columns:1fr auto}.live-class-viewer-title{grid-area:2/1/auto/-1;justify-self:start}}@media (max-width:760px){.teacher-hero-actions,.live-class-setup-actions,.live-class-toolbar-primary,.live-class-toolbar-secondary{flex-direction:column;align-items:stretch}.teacher-hero-actions>*,.live-class-setup-actions>*{width:100%}.live-class-template-grid{grid-template-columns:1fr}.live-class-shell-header{width:calc(100% - 24px)}.live-class-shell-header .live-class-back-link{display:none}.live-class-toolbar-primary input{background:#ffffff0f;border-radius:10px;width:100%;min-width:0;min-height:38px;padding:0 10px}.live-class-segment{width:100%;overflow-x:auto}.live-class-segment button{flex:1}.live-class-stage{grid-template-columns:1fr;min-height:auto;padding:6px}.live-class-stage.is-split{display:block}.live-class-stage.is-split .live-class-code-column{margin-bottom:8px}.live-class-editor-tabs{flex-direction:column;align-items:stretch}.live-class-editor-tabs>div{overflow-x:auto}.live-class-editor-tabs>span{padding-left:8px}.live-class-preview-viewport{min-height:480px}.live-class-banner{grid-template-columns:auto 1fr}.live-class-banner>a{grid-column:1/-1;width:100%}.live-class-viewer-header{grid-template-columns:1fr}.live-class-viewer-header>:last-child{justify-self:start}}@media (prefers-reduced-motion:reduce){.live-class-banner-copy>span i{animation:none!important}.live-class-template-grid button{transition:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}
