:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#19221d;--paper:#fff8ee;--panel:#fff0df;--line:#dfd3c4;--accent:#c83b21;--ink-soft:#566057;--panel-soft:#fffaf4;--accent-deep:#9f2f1c;--accent-soft:#ffd8c8;--success:#24725a;--danger:#a63b2b;--display-font:ui-rounded, "Arial Rounded MT Bold", "Avenir Next", sans-serif;--body-font:"Avenir Next", Avenir, "Trebuchet MS", sans-serif;--shadow:0 24px 70px #5431191f}html{scroll-behavior:smooth;background:var(--paper);scroll-padding-top:110px}body{min-width:320px;color:var(--ink);background:radial-gradient(circle at 8% 7%, #f45b3a21, transparent 26rem), radial-gradient(circle at 90% 28%, #f45b3a14, transparent 32rem), linear-gradient(#19221d08 1px, transparent 1px), linear-gradient(90deg, #19221d08 1px, transparent 1px), var(--paper);font-family:var(--body-font);background-size:auto,auto,32px 32px,32px 32px,auto;font-size:1rem;line-height:1.6;overflow-x:hidden}body:before{z-index:-1;content:"";opacity:.18;pointer-events:none;background-image:radial-gradient(#19221d17 .6px,#0000 .6px);background-size:6px 6px;position:fixed;inset:0}::selection{color:#fff;background:var(--accent)}:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid var(--accent);outline-offset:4px}.demo-access-shell{place-items:center;min-height:100dvh;padding:clamp(1.25rem,4vw,3.5rem);display:grid;position:relative}.demo-access-language{min-width:5rem;position:absolute;top:1.25rem;right:1.25rem}.demo-access-card{border:1px solid var(--line);background:color-mix(in srgb, var(--panel-soft) 92%, transparent);width:min(100%,34rem);box-shadow:var(--shadow);text-align:center;border-radius:2rem;padding:clamp(2rem,6vw,4.5rem)}.demo-access-eyebrow{color:var(--accent-deep);letter-spacing:.15em;margin:0 0 1.25rem;font-size:.76rem;font-weight:800}.demo-access-mark{color:#fff;background:var(--accent);width:4.75rem;height:4.75rem;font-family:var(--display-font);border-radius:1.4rem;place-items:center;margin:0 auto 1.5rem;font-size:2.4rem;font-weight:800;display:grid;transform:rotate(-4deg)}.demo-access-card h1{font-family:var(--display-font);letter-spacing:-.055em;margin:0;font-size:clamp(2rem,7vw,3.25rem);line-height:.98}.demo-access-card>p:not(.demo-access-eyebrow){max-width:28rem;color:var(--ink-soft);margin:1.25rem auto 0}.demo-access-form{text-align:left;gap:.85rem;margin-top:2rem;display:grid}.demo-access-form label{font-size:.88rem;font-weight:800}.demo-access-form input{border:1px solid var(--line);width:100%;min-height:3.5rem;color:var(--ink);font:inherit;letter-spacing:.08em;background:#fff;border-radius:.9rem;padding:.75rem 1rem}.demo-access-feedback{min-height:1.5rem;color:var(--danger);text-align:center;margin:0;font-size:.88rem}.demo-session-control{z-index:80;border-color:color-mix(in srgb, var(--line) 75%, var(--ink));background:color-mix(in srgb, var(--panel-soft) 94%, transparent);min-height:2.75rem;padding:.55rem .9rem;font-size:.78rem;position:fixed;bottom:1rem;right:1rem;box-shadow:0 8px 24px #19221d1f}a{color:inherit;text-underline-offset:.2em}button,.primary-link,.photo-dropzone label{min-height:48px;font-family:var(--body-font);letter-spacing:-.01em;border:0;border-radius:14px;font-size:.92rem;font-weight:700;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,color .22s,background-color .22s}button:not(:disabled),.primary-link,.photo-dropzone label{cursor:pointer}button:not(.button-secondary),.primary-link{color:#fff;background:var(--accent);box-shadow:0 9px 0 var(--accent-deep), 0 18px 38px #cf3f2233}button:not(:disabled):hover,.primary-link:hover,.photo-dropzone label:hover{transform:translateY(-3px)rotate(-.35deg)}button:not(:disabled):active,.primary-link:active,.photo-dropzone label:active{transform:translateY(2px)scale(.985)}button:disabled{cursor:not-allowed;opacity:.42;box-shadow:none}button.button-secondary{border:1px solid var(--line);color:var(--ink);box-shadow:none;background:#ffffffa3}button.button-secondary:not(:disabled):hover{border-color:var(--ink);background:#fff}.site-header{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fff8eed6;border:1px solid #19221d1a;border-radius:20px;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;width:min(1320px,100% - 32px);min-height:66px;margin:14px auto 0;padding:10px 12px 10px 18px;display:grid;position:relative;box-shadow:0 12px 32px #54311914}.site-header nav{background:#19221d0d;border-radius:14px;align-items:center;gap:6px;padding:5px;display:flex}.site-header nav a{border-radius:10px;padding:7px 13px;font-size:.78rem;font-weight:650;text-decoration:none;transition:background-color .18s,transform .18s}.site-header nav a:hover{background:#fff;transform:translateY(-1px)}.header-actions{justify-self:end;align-items:center;gap:12px;display:flex}.header-tagline{color:var(--ink-soft);justify-self:end;margin:0;font-size:.72rem;font-weight:600}.language-switch{min-width:64px;min-height:42px;color:var(--ink);box-shadow:none;letter-spacing:.04em;background:#ffffffb8;border:1px solid #19221d1f;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:7px 10px;font-size:.72rem;display:inline-flex}.language-switch span:first-child{font-size:1rem;line-height:1}.language-switch:hover{border-color:var(--ink);color:var(--ink);box-shadow:none;background:#fff}.brand{width:fit-content;font-family:var(--display-font);letter-spacing:-.035em;align-items:center;gap:10px;font-size:1.05rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{background:var(--ink);border-radius:10px;flex:none;width:32px;height:32px;display:inline-flex;overflow:hidden;box-shadow:0 0 0 1px #19221d1a}.brand-mark-image{object-fit:cover;width:100%;height:100%}main{width:min(1320px,100% - 48px);margin:0 auto;padding:0 0 96px}.hero{border:0;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);align-items:center;gap:clamp(48px,8vw,120px);min-height:min(820px,100dvh - 92px);padding:clamp(64px,9vw,124px) clamp(8px,3vw,36px) 90px;display:grid}.hero-copy{z-index:2;animation:.7s cubic-bezier(.2,.8,.2,1) both student-rise;position:relative}.eyebrow,.section-index{color:var(--accent-deep);letter-spacing:.13em;text-transform:uppercase;margin:0 0 20px;font-size:.72rem;font-weight:750}.hero .eyebrow{background:#ffd8c87a;border:1px solid #f45b3a3d;border-radius:10px;align-items:center;gap:8px;padding:7px 11px;display:inline-flex}.hero h1{max-width:850px;font-family:var(--display-font);letter-spacing:-.075em;text-wrap:balance;margin:0;font-size:clamp(3.55rem,7.2vw,7.3rem);font-weight:800;line-height:.92}.lede{max-width:610px;color:var(--ink-soft);text-wrap:pretty;margin:30px 0 0;font-size:clamp(1.08rem,1.8vw,1.4rem);line-height:1.55}.hero-actions{align-items:center;gap:22px;margin-top:34px;display:flex}.hero-actions>span{color:var(--ink-soft);font-size:.8rem;font-weight:600}.primary-link{justify-content:space-between;align-items:center;gap:24px;min-width:210px;padding:13px 18px;text-decoration:none;display:inline-flex}.primary-link span{font-size:1.15rem}.hero-reassurance{background:0 0;border:0;flex-wrap:wrap;gap:12px 22px;margin:38px 0 0;padding:0;list-style:none;display:flex}.hero-reassurance li{min-height:0;color:var(--ink-soft);background:0 0;border:0;padding:0 0 0 18px;font-size:.77rem;font-weight:600;line-height:1.4;display:block;position:relative}.hero-reassurance li:before{background:var(--accent);content:"";border-radius:2px;width:7px;height:7px;position:absolute;top:.57em;left:0;transform:rotate(45deg)}.hero-playground{aspect-ratio:1;background:radial-gradient(circle at 34% 29%, #fff 0 5%, transparent 5.4%), radial-gradient(circle at 70% 71%, #f45b3a21, transparent 38%), var(--panel);width:min(100%,560px);box-shadow:var(--shadow), inset 0 0 0 10px #ffffff4d;border:1px solid #19221d1f;border-radius:46% 54% 47% 53%/56% 42% 58% 44%;justify-self:end;animation:7s ease-in-out infinite playground-float;position:relative;transform:rotate(2deg)}.hero-playground:after{border-radius:inherit;content:"";border:1px dashed #19221d24;position:absolute;inset:22px}.hero-playground svg{z-index:1;width:86%;height:86%;font-family:var(--display-font);fill:var(--ink);font-size:22px;font-weight:800;position:absolute;inset:7%;overflow:visible}.playground-orbit,.playground-guide,.playground-line,.playground-angle{fill:none;stroke-linecap:round;stroke-linejoin:round}.playground-orbit{stroke:#f45b3a80;stroke-width:3px;stroke-dasharray:8 13}.playground-guide{stroke:var(--accent);stroke-width:7px}.playground-line{stroke:var(--ink);stroke-width:6px}.playground-angle{stroke:var(--ink);stroke-width:4px}.playground-point{fill:var(--ink);stroke:var(--paper);stroke-width:7px}.playground-midpoint{fill:var(--accent);stroke:var(--paper);stroke-width:6px}.playground-equation,.playground-note{z-index:3;background:#ffffffeb;border:1px solid #19221d1a;position:absolute;box-shadow:0 16px 30px #5431191f}.playground-equation{font-family:var(--display-font);border-radius:14px 14px 4px;align-items:center;gap:10px;padding:12px 17px;font-size:1.15rem;display:flex;bottom:78px;right:-22px;transform:rotate(-4deg)}.playground-equation strong{color:var(--accent)}.playground-note{color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;border-radius:9px;padding:8px 11px;font-size:.68rem;font-weight:750}.playground-note-top{top:62px;left:-22px;transform:rotate(-5deg)}.playground-note-bottom{bottom:18px;right:58px;transform:rotate(3deg)}.journey{color:#fff;background:var(--ink);border-radius:36px 36px 12px;grid-template-columns:minmax(250px,.75fr) minmax(0,1.55fr);gap:clamp(40px,8vw,110px);margin:0 0 40px;padding:clamp(34px,5vw,62px);display:grid;box-shadow:0 24px 70px #19221d29}.journey .eyebrow{color:var(--accent-soft)}.journey h2,.spike-heading h2,.presentation-footer h2{font-family:var(--display-font);letter-spacing:-.055em;text-wrap:balance;margin:0;font-weight:800;line-height:1}.journey h2{max-width:420px;font-size:clamp(2rem,4vw,3.55rem)}.journey ol{gap:0;margin:0;padding:0;list-style:none;display:grid}.journey li{background:0 0;border-bottom:1px solid #ffffff26;grid-template-columns:54px 1fr;align-items:start;gap:18px;min-height:0;padding:22px 0;display:grid}.journey li:first-child{padding-top:0}.journey li:last-child{border-bottom:0;padding-bottom:0}.journey-number{width:42px;height:42px;color:var(--accent-soft);border:1px solid #ffffff40;border-radius:13px;place-items:center;font-family:ui-monospace,monospace;font-size:.74rem;display:grid}.journey h3{font-family:var(--display-font);margin:0 0 3px;font-size:1.05rem}.journey li p{color:#ffffffa6;margin:0;font-size:.86rem}.student-workspace{gap:26px;display:grid}.student-workspace>*{min-width:0}.compass-mascot-presence{--mascot-speech-energy:0;--mascot-speech-lift:0px;--mascot-mouth-scale:.18;--mascot-wave-opacity:.05;--mascot-wave-scale:.35;z-index:24;pointer-events:none;filter:drop-shadow(0 18px 18px #19221d2e);justify-items:center;width:clamp(142px,12vw,188px);transition:opacity .18s,transform .18s;display:grid;position:fixed;bottom:10px;right:clamp(8px,1.8vw,26px)}.compass-mascot-presence[data-mascot-state=idle]{opacity:.9}.compass-mascot-sprite-stage{aspect-ratio:192/208;transform-origin:50% 84%;backface-visibility:hidden;will-change:transform;width:100%;transition:transform .26s cubic-bezier(.2,.8,.2,1);position:relative;transform:translateZ(0)}.compass-mascot-sprite{image-rendering:auto;backface-visibility:hidden;will-change:transform;background-image:url(/mascot/compass-mentor-atlas.webp);background-repeat:no-repeat;background-size:800% 900%;width:100%;height:100%;position:absolute;inset:0;transform:translateZ(0)}.compass-mascot-presence[data-focus-side=left] .compass-mascot-sprite{transform:translateZ(0)scaleX(-1)}.compass-mascot-mouth{z-index:2;aspect-ratio:1.7;opacity:0;transform-origin:50%;pointer-events:none;will-change:transform, opacity;background:#6f2928;border-radius:46% 46% 52% 52%;width:6.4%;position:absolute;top:24.4%;left:52.1%;transform:translate(-50%,-50%)scaleY(.18);box-shadow:inset 0 -1px #ffffff61}.compass-mascot-presence[data-focus-side=left] .compass-mascot-mouth{left:47.9%}.compass-mascot-presence[data-mascot-state=idle]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{animation:3.6s ease-in-out infinite compass-mascot-breathe}.compass-mascot-presence[data-mascot-state=receiving]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{animation:.56s cubic-bezier(.2,.8,.2,1) both compass-mascot-receive}.compass-mascot-motion-accent,.compass-mascot-motion-accent i{pointer-events:none;position:absolute}.compass-mascot-motion-accent{inset:0}.compass-mascot-motion-accent i{display:none}.compass-mascot-presence[data-mascot-state=thinking]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{animation:1.25s ease-in-out infinite alternate compass-mascot-thinking}.compass-mascot-presence[data-mascot-state=thinking] .compass-mascot-motion-accent i{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.05s ease-in-out infinite compass-mascot-thought-dot;display:block;top:9%;right:8%;box-shadow:0 0 0 4px #ffffffd1}.compass-mascot-presence[data-mascot-state=thinking] .compass-mascot-motion-accent i:nth-child(2){animation-delay:.14s;top:4%;right:-1%}.compass-mascot-presence[data-mascot-state=thinking] .compass-mascot-motion-accent i:nth-child(3){animation-delay:.28s;top:-3%;right:-10%}.compass-mascot-presence[data-mascot-state=listening]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{animation:.76s ease-in-out infinite alternate compass-mascot-listening}.compass-mascot-presence[data-mascot-state=listening] .compass-mascot-motion-accent i,.compass-mascot-presence[data-mascot-state=speaking] .compass-mascot-motion-accent i{--mascot-wave-angle:45deg;aspect-ratio:1;border:3px solid var(--accent);width:20%;transform:rotate(var(--mascot-wave-angle)) scale(.35);opacity:0;border-bottom-color:#0000;border-left-color:#0000;border-radius:50%;animation:1.05s ease-out infinite compass-mascot-voice-wave;display:block;top:25%;right:5%}.compass-mascot-presence[data-mascot-state=listening] .compass-mascot-motion-accent i{--mascot-wave-angle:-135deg;left:4%;right:auto}.compass-mascot-presence[data-mascot-state=listening] .compass-mascot-motion-accent i:nth-child(2),.compass-mascot-presence[data-mascot-state=speaking] .compass-mascot-motion-accent i:nth-child(2){animation-delay:.21s}.compass-mascot-presence[data-mascot-state=listening] .compass-mascot-motion-accent i:nth-child(3),.compass-mascot-presence[data-mascot-state=speaking] .compass-mascot-motion-accent i:nth-child(3){animation-delay:.42s}.compass-mascot-presence[data-mascot-state=speaking]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{animation:.46s cubic-bezier(.45,0,.55,1) infinite alternate compass-mascot-speaking}.compass-mascot-presence[data-mascot-state=speaking]:not([data-reduced-motion=true]) .compass-mascot-mouth{opacity:.88}.compass-mascot-presence[data-mascot-state=speaking][data-speech-signal=fallback]:not([data-reduced-motion=true]) .compass-mascot-mouth{animation:.42s ease-in-out infinite alternate compass-mascot-mouth-fallback}.compass-mascot-presence[data-mascot-state=speaking][data-speech-signal=meter]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{transform:translate3d(0, var(--mascot-speech-lift), 0);transition:transform 48ms linear;animation:none}.compass-mascot-presence[data-mascot-state=speaking][data-speech-signal=meter]:not([data-reduced-motion=true]) .compass-mascot-mouth{transform:translate3d(-50%, -50%, 0) scaleY(var(--mascot-mouth-scale));transition:transform 48ms linear,opacity 80ms linear}.compass-mascot-presence[data-mascot-state=speaking][data-speech-signal=meter] .compass-mascot-motion-accent i{opacity:var(--mascot-wave-opacity);transform:rotate(var(--mascot-wave-angle)) scale(var(--mascot-wave-scale));transition:transform 64ms linear,opacity 64ms linear;animation:none}.compass-mascot-presence[data-mascot-state=speaking][data-speech-signal=meter] .compass-mascot-motion-accent i:nth-child(2){width:26%;top:21%;right:1%}.compass-mascot-presence[data-mascot-state=speaking][data-speech-signal=meter] .compass-mascot-motion-accent i:nth-child(3){width:32%;top:17%;right:-3%}.compass-mascot-presence[data-mascot-state=modifying]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{animation:.68s ease-in-out infinite alternate compass-mascot-working}.compass-mascot-presence[data-mascot-state=modifying] .compass-mascot-motion-accent i{aspect-ratio:1;border:2px dashed var(--success);border-radius:50%;width:26%;animation:1.25s linear infinite compass-mascot-orbit;display:block;bottom:19%;right:7%}.compass-mascot-presence[data-mascot-state=modifying] .compass-mascot-motion-accent i:not(:first-child){display:none}.compass-mascot-presence[data-mascot-state=hinting]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{animation:.62s ease-in-out infinite alternate compass-mascot-hint}.compass-mascot-presence[data-mascot-state=hinting] .compass-mascot-motion-accent i{background:linear-gradient(90deg, var(--accent), #eb784300);transform-origin:0;border-radius:999px;width:42%;height:4px;animation:.76s ease-out infinite compass-mascot-point-beam;display:block;bottom:34%;right:-12%;transform:rotate(-8deg)scaleX(.35)}.compass-mascot-presence[data-mascot-state=hinting] .compass-mascot-motion-accent i:nth-child(2){animation-delay:.19s;bottom:30%}.compass-mascot-presence[data-mascot-state=hinting] .compass-mascot-motion-accent i:nth-child(3){animation-delay:.38s;bottom:38%}.compass-mascot-presence[data-mascot-state=celebrating] .compass-mascot-motion-accent i{background:#f0a443;border-radius:3px;width:8px;height:18px;animation:.9s cubic-bezier(.2,.8,.2,1) infinite compass-mascot-confetti;display:block;top:12%;left:18%}.compass-mascot-presence[data-mascot-state=celebrating] .compass-mascot-motion-accent i:nth-child(2){background:#3f7a50;animation-delay:.16s;left:72%}.compass-mascot-presence[data-mascot-state=celebrating] .compass-mascot-motion-accent i:nth-child(3){background:#d8643d;animation-delay:.32s;left:46%}.compass-mascot-presence[data-mascot-state=celebrating]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{animation:.62s cubic-bezier(.2,.8,.2,1) infinite alternate compass-mascot-celebrate}.compass-mascot-presence[data-mascot-state=error]:not([data-reduced-motion=true]) .compass-mascot-sprite-stage{animation:.18s ease-in-out 3 alternate compass-mascot-error}@keyframes compass-mascot-breathe{0%,to{transform:translate(0,0)scale(1)}50%{transform:translateY(-2px)scale(1.006)}}@keyframes compass-mascot-receive{0%{opacity:.72;transform:translateY(4px)scale(.985)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes compass-mascot-thinking{0%{transform:translateY(0)rotate(-.7deg)}to{transform:translateY(-3px)rotate(.8deg)}}@keyframes compass-mascot-listening{0%{transform:translate(0)rotate(0)}to{transform:translate(-3px)rotate(-1.2deg)}}@keyframes compass-mascot-speaking{0%{transform:translateY(0)scale(1)}to{transform:translateY(-2px)scale(1.012)}}@keyframes compass-mascot-mouth-fallback{0%{transform:translate(-50%,-50%)scaleY(.22)}to{transform:translate(-50%,-50%)scaleY(1.15)}}@keyframes compass-mascot-working{0%{transform:translateY(0)rotate(-.6deg)}to{transform:translateY(-2px)rotate(.9deg)}}@keyframes compass-mascot-hint{0%{transform:translate(0)rotate(0)}to{transform:translate(4px)rotate(1.4deg)}}@keyframes compass-mascot-thought-dot{0%,to{opacity:.35;transform:translateY(3px)scale(.72)}50%{opacity:1;transform:translateY(-3px)scale(1)}}@keyframes compass-mascot-voice-wave{0%{transform:rotate(var(--mascot-wave-angle)) scale(.25);opacity:0}28%{opacity:.9}to{transform:rotate(var(--mascot-wave-angle)) scale(1.12);opacity:0}}@keyframes compass-mascot-orbit{to{transform:rotate(360deg)}}@keyframes compass-mascot-point-beam{0%{opacity:0;transform:rotate(-8deg)scaleX(.25)}34%{opacity:.9}to{opacity:0;transform:rotate(-8deg)scaleX(1)}}@keyframes compass-mascot-confetti{0%{opacity:0;transform:translateY(-7px)rotate(0)}25%{opacity:1}to{opacity:0;transform:translateY(42px)rotate(260deg)}}@keyframes compass-mascot-celebrate{0%{transform:translate(0,0)rotate(-.8deg)scale(1)}to{transform:translateY(-5px)rotate(1deg)scale(1.018)}}@keyframes compass-mascot-error{0%{transform:translate(-2px)rotate(-.6deg)}to{transform:translate(2px)rotate(.6deg)}}.compass-mascot-presence p{max-width:170px;color:var(--ink);font-family:var(--display-font);text-align:center;text-wrap:balance;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffaf4f0;border:1px solid #19221d1f;border-radius:11px 11px 5px;margin:-5px 0 0;padding:7px 11px;font-size:.7rem;font-weight:750;line-height:1.25;box-shadow:0 8px 24px #5431191f}.compass-mascot-presence[data-mascot-state=celebrating] p{color:#fff;background:var(--success)}.compass-mascot-presence[data-mascot-state=error] p{color:#fff;background:var(--danger)}.spike,.workspace-card{box-shadow:var(--shadow);background:#fffaf4e0;border:1px solid #19221d1a;border-radius:34px 34px 14px;margin-top:0;padding:clamp(28px,5vw,58px)}.spike-heading{grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);align-items:end;gap:40px;margin-bottom:32px;display:grid}.spike-heading h2{max-width:770px;font-size:clamp(2.25rem,5vw,4.6rem)}.spike-heading>p{max-width:420px;color:var(--ink-soft);text-align:left;text-wrap:pretty;justify-self:end;margin:0;font-size:.92rem;line-height:1.6}.workspace-card-start{background:radial-gradient(circle at 95% 8%,#f45b3a21,#0000 24rem),#fffaf4f0;position:relative;overflow:hidden}.workspace-card-start:after{content:"";pointer-events:none;border:20px solid #f45b3a12;border-radius:50%;width:160px;height:160px;position:absolute;top:-54px;right:-34px}.photo-uploader-grid{background:0 0;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;padding:0;display:grid}.photo-picker,.photo-preview{background:#fff;border:1px solid #19221d17;min-width:0;min-height:390px;padding:clamp(22px,3vw,34px)}.photo-picker{border-radius:24px 10px 24px 24px}.photo-preview{background:linear-gradient(#19221d0a 1px, transparent 1px), linear-gradient(90deg, #19221d0a 1px, transparent 1px), var(--panel);background-size:24px 24px;border-radius:10px 24px 24px;place-items:center;display:grid;overflow:hidden}.photo-dropzone{background:var(--panel-soft);text-align:center;border:2px dashed #f45b3a5c;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;min-height:210px;padding:28px;transition:border-color .2s,background-color .2s;display:flex;position:relative}.photo-dropzone:hover{border-color:var(--accent);background:#fff6ec}.photo-dropzone-icon{width:58px;height:58px;color:var(--accent);background:var(--accent-soft);border-radius:18px 18px 8px;place-items:center;margin-bottom:18px;display:grid;transform:rotate(-3deg)}.photo-dropzone-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.6px;width:34px}.photo-source-actions{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:12px;display:flex}.photo-source-control{display:inline-flex;position:relative}.photo-dropzone .photo-source-control label{color:#fff;background:var(--ink);align-items:center;min-height:auto;margin:0;padding:10px 15px;font-size:.88rem;display:inline-flex;box-shadow:0 7px #000}.photo-dropzone .photo-source-camera label{color:var(--ink);background:var(--accent-soft);box-shadow:0 7px #e7b4a6}.photo-source-control:has(input:focus-visible) label{outline:3px solid var(--accent);outline-offset:4px}.photo-dropzone>p{color:var(--ink-soft);margin:18px 0 0;font-size:.78rem}.photo-dropzone input[type=file]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.photo-help{text-align:center;margin:16px 0 0}.photo-privacy-notice{color:var(--ink-soft);background:#f7f4ee;border-radius:12px;margin:18px 0 0;padding:12px 14px;font-size:.74rem}.photo-privacy-notice span{color:var(--success);margin-right:6px}.photo-state{color:var(--ink-soft);margin-top:20px;font-size:.7rem}.photo-actions{margin-top:22px}.photo-actions button{padding:12px 18px}.photo-preview figure{grid-template-rows:minmax(0,1fr) auto;width:100%;height:100%;margin:0;display:grid}.photo-preview img{object-fit:contain;filter:drop-shadow(0 16px 28px #54311929);width:100%;height:100%;max-height:330px}.photo-preview figcaption{background:#fffc;border-radius:10px;justify-content:space-between;gap:16px;margin-top:16px;padding:10px 12px;font-size:.76rem;display:flex}.photo-preview-empty{text-align:center;max-width:280px}.photo-preview-empty>span{border:2px solid var(--ink);width:82px;height:82px;color:var(--accent);font-family:var(--display-font);box-shadow:9px 9px 0 var(--accent-soft);background:#fff;border-radius:50%;place-items:center;margin:0 auto 18px;font-size:1.35rem;display:grid}.photo-preview-empty p{color:var(--ink);font-family:var(--display-font);margin:0;font-size:1.1rem;font-weight:700}.photo-preview-empty small{color:var(--ink-soft);margin-top:8px;font-size:.75rem;display:block}.exercise-confirmation{background:var(--panel);border-radius:18px 18px 34px 34px}.exercise-confirmation[data-state=idle],.exercise-confirmation[data-state=preview]{box-shadow:none;border-top:0;margin-top:-38px;padding-top:48px;padding-bottom:22px}.exercise-confirmation[data-state=idle] .spike-heading,.exercise-confirmation[data-state=preview] .spike-heading{display:none}.exercise-flow-status{color:var(--ink-soft);background:#ffffff9e;border:1px solid #19221d14;border-radius:13px;margin:0;padding:14px 18px;font-size:.84rem}.exercise-flow-panel{background:#fff;border:1px solid #19221d17;border-radius:22px 22px 8px;margin-top:20px;padding:clamp(22px,4vw,38px)}.exercise-flow-panel h3{font-family:var(--display-font);letter-spacing:-.04em;font-size:clamp(1.45rem,3vw,2.2rem)}.exercise-summary dl{gap:12px}.exercise-summary dl>div{background:var(--panel-soft);border:0;border-radius:14px;padding:18px}.exercise-summary dt{color:var(--accent-deep)}.exercise-initialization-note{border-left:4px solid var(--accent);background:var(--accent-soft)}.workspace-card-build{background:#fff}.spike-grid{background:0 0;grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);gap:18px;padding:0;display:grid}.geogebra-canvas{background:var(--panel-soft);min-height:620px;box-shadow:inset 0 0 0 8px var(--panel-soft);border:1px solid #19221d1f;border-radius:24px 10px 24px 24px;overflow:hidden}.proof-panel{background:var(--panel);border:1px solid #19221d17;border-radius:10px 24px 24px;padding:22px}.proof-status{background:#fff;border:0;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:8px;min-height:54px;padding:10px 13px;display:grid}.proof-status:before{width:10px;height:10px}.proof-status span{font-family:var(--display-font);letter-spacing:-.02em;text-transform:none;font-size:.96rem}.proof-status small{color:var(--success);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem}.construction-progress{background:#fff;border:0;border-radius:18px;margin-top:18px;padding:18px}.construction-progress-summary>p:first-child{font-family:var(--display-font);justify-content:space-between;align-items:center;margin:0 0 14px;font-size:1rem;display:flex}.construction-progress-summary strong{color:#fff;background:var(--ink);font-variant-numeric:tabular-nums;text-align:center;border-radius:9px;min-width:48px;padding:4px 8px}.construction-progress-summary ul{grid-template-columns:1fr;gap:8px;display:grid}.construction-progress-summary li{background:var(--panel-soft);border:0;border-radius:11px;padding:10px 12px;font-size:.76rem}.construction-progress button{width:100%;margin-top:10px;padding:11px 14px}.invariance-experiment{background:#fff;border:1px solid #19221d17;border-radius:18px 18px 8px;margin-top:18px;padding:20px}.invariance-experiment-heading{align-items:flex-start}.invariance-experiment-heading h3{font-family:var(--display-font);letter-spacing:-.035em;font-size:1.2rem}.invariance-state-label{background:var(--panel);border:0}.invariance-actions button{width:100%}.proof-details{border-top:1px solid #19221d1a;margin-top:18px}.proof-details summary,.coach-diagnostics summary,.technical-details>summary{cursor:pointer;color:var(--ink-soft);padding:15px 2px;font-size:.74rem;font-weight:700}.proof-details dl{margin-top:12px}.workspace-card-coach{color:#fff;background:radial-gradient(circle at 85% 18%, #f45b3a47, transparent 26rem), var(--ink);box-shadow:0 30px 80px #19221d2e}.workspace-card-coach .section-index{color:var(--accent-soft)}.workspace-card-coach .spike-heading>p{color:#ffffffa3}.capability-mode{color:#fff;background:#ffffff14;border:1px solid #ffffff1f;border-radius:20px 20px 8px;grid-template-columns:auto auto 1fr auto;align-items:center;gap:4px 14px;margin-bottom:18px;padding:18px 20px;display:grid}.coach-avatar{width:48px;height:48px;color:var(--ink);background:var(--accent-soft);font-family:var(--display-font);border-radius:16px 16px 7px;grid-row:1/span 2;place-items:center;font-size:1.25rem;display:grid}.capability-mode>span:not(.coach-avatar):not(.visually-hidden){color:#ffffff85;letter-spacing:.08em;text-transform:uppercase;font-size:.66rem}.capability-mode strong{font-family:var(--display-font);grid-column:2;font-size:1rem}.capability-mode p{color:#ffffffad;grid-area:1/3/span 2;max-width:520px;margin:0;font-size:.8rem}.capability-mode time{color:#ffffff61;grid-area:1/4/span 2;font-size:.65rem}.realtime-console{background:0 0;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:18px;padding:0;display:grid}.connection-control,.coach-diagnostics{background:#ffffff14;border:1px solid #ffffff1f}.connection-control{border-radius:24px 10px 24px 24px;padding:clamp(22px,4vw,34px)}.connection-state{width:fit-content;color:var(--ink);background:var(--accent-soft);border-radius:8px;margin:0 0 12px;padding:6px 10px}.connection-copy{color:#ffffffbf;max-width:620px;min-height:auto;margin:0 0 22px;font-size:.92rem}.connection-actions{gap:10px}.connection-actions button{padding:12px 16px}.connection-actions .button-secondary{color:#fff;background:#ffffff14;border-color:#fff3}.realtime-test-prompt{border-top:1px solid #ffffff1f;margin-top:26px;padding-top:22px}.realtime-test-prompt label{color:#fff;font-family:var(--display-font);font-size:.9rem}.realtime-test-prompt input{color:#fff;background:#0000002e;border:1px solid #ffffff2e;border-radius:12px;min-height:48px}.realtime-test-prompt button.button-secondary{color:var(--ink);background:var(--accent-soft)}.typed-live-output{color:#fff;background:#00000024;border-color:#ffffff24}.coach-diagnostics{border-radius:10px 24px 24px;align-self:start;padding:8px 18px 18px}.coach-diagnostics summary{color:#ffffffa8}.connection-evidence{background:0 0;border:0;grid-template-columns:1fr;gap:7px;padding:0;display:grid}.connection-evidence>div{background:#00000021;border:0;border-radius:8px;justify-content:space-between;gap:12px;padding:8px 10px;display:flex}.connection-evidence span{color:#ffffff73}.connection-evidence strong{color:#fff;text-align:right;font-size:.68rem}.connection-evidence ol{color:#ffffff85;max-height:150px;margin:8px 0 0;font-size:.68rem}.technical-details{background:#fffaf4b8;border:1px solid #19221d1a;border-radius:18px}.technical-details>summary{grid-template-columns:1fr auto;align-items:center;gap:12px;padding:18px 22px;list-style:none;display:grid}.technical-details>summary::-webkit-details-marker{display:none}.technical-details>summary:after{content:"+";color:var(--accent);font-family:var(--display-font);font-size:1.2rem}.technical-details[open]>summary:after{content:"−"}.technical-details>summary span{color:var(--ink);font-family:var(--display-font);font-size:.9rem}.technical-details>summary small{color:var(--ink-soft);grid-column:1;font-size:.68rem;font-weight:500}.technical-details .reliability-panel{box-shadow:none;border-radius:14px;margin:0 12px 12px}.reliability-table-scroll{border-radius:14px}.presentation-footer{background:var(--panel);border:1px solid #19221d1a;border-radius:36px 36px 14px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:70px;width:min(1320px,100% - 48px);margin:0 auto 28px;padding:clamp(34px,5vw,58px);display:grid}.brand-footer{margin-bottom:24px}.presentation-footer h2{max-width:420px;font-size:clamp(2rem,4vw,3.4rem)}.presentation-footer>div:last-child{align-self:end}.presentation-footer p{max-width:660px;color:var(--ink-soft);font-size:.78rem}@keyframes student-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes playground-float{0%,to{transform:rotate(2deg)translateY(0)}50%{transform:rotate(0)translateY(-10px)}}@media (max-width:1040px){.site-header{grid-template-columns:auto 1fr auto}.site-header nav{justify-self:center}.header-tagline{display:none}.hero{grid-template-columns:1fr .72fr;gap:34px;min-height:auto}.hero h1{font-size:clamp(3.4rem,8.5vw,6.4rem)}.hero-playground{min-width:350px}.journey,.spike-heading{grid-template-columns:1fr;gap:28px}.spike-heading>p{justify-self:start}.spike-grid{grid-template-columns:1fr}.geogebra-canvas{border-radius:22px 22px 8px;min-height:580px}.proof-panel{border-radius:8px 22px 22px}.proof-panel .invariance-experiment{vertical-align:top;width:min(100%,480px);margin-right:14px;display:inline-block}}@media (max-width:760px){html{scroll-padding-top:88px}.site-header{border-radius:16px;gap:6px;width:calc(100% - 16px);min-height:58px;margin-top:8px;padding:8px 9px 8px 13px;top:8px}.site-header nav{background:0 0;gap:2px}.site-header nav a{padding:7px 8px;font-size:.68rem}.site-header nav a:nth-child(2){display:none}.brand{font-size:.95rem}.brand-mark{width:29px;height:29px}.header-actions{gap:0}.language-switch{border-radius:10px;gap:4px;min-width:48px;min-height:38px;padding:6px 7px;font-size:.64rem}main{width:min(100% - 24px,1320px);padding-bottom:58px}.hero{grid-template-columns:1fr;padding:70px 2px 60px}.hero h1{font-size:clamp(3.25rem,16vw,5.2rem)}.lede{margin-top:24px;font-size:1rem}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.primary-link{width:100%}.hero-reassurance{gap:8px;display:grid}.hero-playground{justify-self:center;width:min(92%,430px);min-width:0}.playground-note-top{left:-8px}.playground-equation{right:-8px}.journey{border-radius:28px 28px 10px;margin-bottom:20px;padding:30px 24px 34px}.journey li{grid-template-columns:44px 1fr;gap:12px}.journey-number{width:38px;height:38px}.student-workspace{gap:16px}.compass-mascot-presence{width:56px;top:74px;bottom:auto;right:8px}.compass-mascot-presence p{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.spike,.workspace-card{border-radius:26px 26px 10px;padding:26px 18px 30px}.spike-heading{margin-bottom:24px}.spike-heading h2{font-size:clamp(2.2rem,12vw,3.4rem)}.spike-heading>p{font-size:.84rem}.photo-uploader-grid{grid-template-columns:1fr}.photo-picker,.photo-preview{min-height:0;padding:18px}.photo-picker{border-radius:20px 20px 8px}.photo-preview{border-radius:8px 20px 20px;min-height:280px}.photo-dropzone{min-height:200px;padding:22px 16px}.photo-actions{grid-template-columns:1fr;display:grid}.photo-actions button{width:100%}.exercise-confirmation[data-state=idle],.exercise-confirmation[data-state=preview]{margin-top:-26px;padding-top:36px}.geogebra-canvas{min-height:500px}.proof-panel{padding:16px}.proof-panel .invariance-experiment{width:auto;margin-right:0;display:block}.capability-mode{grid-template-columns:auto 1fr}.capability-mode p{grid-area:auto/1/auto/-1;margin-top:8px}.capability-mode time{display:none}.realtime-console{grid-template-columns:1fr}.connection-control,.coach-diagnostics{border-radius:20px 20px 8px}.connection-actions{grid-template-columns:1fr;display:grid}.connection-actions button{width:100%}.realtime-test-prompt>div{grid-template-columns:1fr}.realtime-test-prompt button{width:100%}.technical-details>summary{grid-template-columns:1fr auto}.presentation-footer{border-radius:28px 28px 10px;grid-template-columns:1fr;gap:32px;width:calc(100% - 24px);margin-bottom:12px;padding:30px 24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.site-header--simple{grid-template-columns:minmax(0,1fr) auto}.hero--demo{min-height:calc(100dvh - 94px);padding-top:clamp(52px,7vw,92px);padding-bottom:clamp(56px,7vw,86px)}.hero--demo h1{max-width:720px;font-size:clamp(4rem,8vw,7.7rem);line-height:.88}.demo-primary-action{width:min(100%,580px);margin-top:36px}.demo-start-button{text-align:left;border-radius:20px 20px 8px;justify-content:space-between;align-items:center;gap:24px;width:100%;min-height:96px;padding:18px 22px 18px 24px;display:flex}.demo-start-button>span{gap:2px;display:grid}.demo-start-button small{color:#fff;letter-spacing:.11em;opacity:1;text-transform:uppercase;font-size:.68rem;font-weight:750}.demo-start-button strong{font-family:var(--display-font);letter-spacing:-.04em;font-size:clamp(1.25rem,2.6vw,1.65rem)}.demo-start-button b{border:1px solid #ffffff61;border-radius:15px 15px 5px;flex:0 0 52px;place-items:center;width:52px;height:52px;font-size:1.65rem;line-height:1;transition:transform .22s cubic-bezier(.2,.8,.2,1);display:grid}.demo-start-button:hover b{transform:translate(4px)}.demo-primary-action>p{color:var(--ink-soft);margin:16px 0 0;font-size:.78rem;font-weight:650}.demo-facts{background:0 0;border:0;flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none;display:flex}.demo-facts li{min-height:0;color:var(--ink-soft);background:#ffffff8a;border:1px solid #19221d1c;border-radius:9px;padding:7px 11px;font-size:.72rem;font-weight:700;line-height:1.3}.hero--demo .playground-line{fill:#ffffff42;stroke-width:5px}.hero--demo .playground-guide{fill:#c83b2117;stroke-width:7px}@media (max-width:980px){.site-header--simple{grid-template-columns:minmax(0,1fr) auto}.hero--demo{min-height:auto}}@media (max-width:640px){.site-header--simple{gap:8px;width:calc(100% - 20px);padding-left:12px}.site-header--simple .header-actions{gap:6px}.site-header--simple .teacher-access{min-height:40px;padding-inline:10px;font-size:.68rem}.hero--demo{padding-top:48px}.hero--demo h1{font-size:clamp(3.55rem,18vw,5.2rem)}.demo-primary-action{margin-top:28px}.demo-start-button{min-height:88px;padding:16px 16px 16px 18px}.demo-start-button b{flex-basis:46px;width:46px;height:46px}}@layer legacy{*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:linear-gradient(90deg, transparent 49.9%, #16201c0f 50%, transparent 50.1%), var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif}:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline-offset:3px;outline:3px solid #8b6416}.skip-link{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{z-index:1000;clip-path:none;width:auto;height:auto;color:var(--paper);background:var(--ink);margin:0;padding:12px 16px;font-weight:700;position:fixed;top:12px;left:12px;overflow:visible}main{width:min(1180px,100% - 48px);margin:0 auto;padding:40px 0 64px}.hero{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);flex-direction:column;justify-content:center;min-height:60vh;display:flex}.eyebrow,.section-index{letter-spacing:.16em;text-transform:uppercase;margin:0 0 24px;font-size:.75rem;font-weight:700}h1{letter-spacing:-.055em;max-width:900px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.25rem,8vw,7.25rem);font-weight:400;line-height:.9}.lede{max-width:660px;margin:32px 0;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.5}.status{border:1px solid var(--line);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;align-self:flex-start;align-items:center;gap:10px;padding:10px 14px;font-size:.8rem;font-weight:700;display:inline-flex}.status span{background:var(--accent);border-radius:50%;width:8px;height:8px}.hero-demo-link{color:var(--ink);letter-spacing:.06em;text-underline-offset:4px;text-transform:uppercase;align-self:flex-start;margin-top:12px;padding:12px 0;font-size:.78rem;font-weight:700}.foundations{grid-template-columns:1fr 2fr;gap:64px;padding:64px 0 0;display:grid}.spike{border-top:1px solid var(--ink);margin-top:96px;padding-top:32px}.spike-heading{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:32px;display:flex}.spike-heading>p{color:#4e554f;text-align:right;max-width:390px;margin:0;font-size:.75rem;line-height:1.5}.spike-grid{background:var(--line);grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:1px;padding:1px;display:grid}.photo-uploader-grid{background:var(--line);grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1px;padding:1px;display:grid}.photo-picker,.photo-preview{background:var(--panel);min-width:0;min-height:360px;padding:32px}.photo-picker label{margin-bottom:14px;font-family:Georgia,Times New Roman,serif;font-size:1.65rem;display:block}.photo-picker input[type=file]{border:1px solid var(--ink);width:100%;min-height:46px;color:var(--ink);background:var(--paper);font:inherit;padding:10px}.photo-picker input[type=file]:focus-visible,.photo-actions button:focus-visible{outline-offset:3px;outline:3px solid #a17722}.photo-help,.photo-preview>p{color:#4e554f;font-size:.82rem;line-height:1.55}.photo-state{letter-spacing:.08em;text-transform:uppercase;margin:28px 0 0;font-size:.75rem;font-weight:700}.photo-state:before{content:"";background:#77766f;border-radius:50%;width:8px;height:8px;margin-right:9px;display:inline-block}.photo-state-selected:before{background:var(--accent)}.photo-state-client_rejected:before{background:#a3382e}.photo-state-submitting:before{background:#a17722}.photo-error{color:#8d2d25;margin:12px 0 0;font-size:.85rem;line-height:1.45}.photo-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.photo-actions button{border:1px solid var(--ink);min-height:46px;color:var(--paper);background:var(--ink);font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;padding:0 20px;font-size:.78rem;font-weight:700}.photo-actions .button-secondary{color:var(--ink);background:0 0}.photo-actions button:disabled{cursor:not-allowed;opacity:.42}.photo-preview{background:#ded8c9;place-items:center;display:grid}.photo-preview figure{width:100%;margin:0}.photo-preview img{object-fit:contain;background:#fff;width:100%;max-height:440px;display:block}.photo-preview figcaption{justify-content:space-between;gap:16px;margin-top:14px;font-size:.8rem;display:flex}.photo-preview figcaption strong{overflow-wrap:anywhere;min-width:0}.photo-preview figcaption span{color:#4e554f;flex:none}.exercise-confirmation{min-height:320px}.exercise-flow-status{border:1px solid var(--line);background:var(--panel);letter-spacing:.07em;text-transform:uppercase;margin:0;padding:18px 20px;font-size:.78rem;font-weight:700;line-height:1.5}.exercise-flow-status:before{content:"";background:#77766f;border-radius:50%;width:8px;height:8px;margin-right:10px;display:inline-block}.exercise-confirmation[data-state=awaiting_confirmation] .exercise-flow-status:before,.exercise-confirmation[data-state=confirmed] .exercise-flow-status:before{background:var(--accent)}.exercise-confirmation[data-state=parsing] .exercise-flow-status:before{background:#a17722}.exercise-confirmation[data-state=failed] .exercise-flow-status:before,.exercise-confirmation[data-state=refused] .exercise-flow-status:before,.exercise-confirmation[data-state=unsupported] .exercise-flow-status:before{background:#a3382e}.exercise-flow-panel{background:var(--panel);margin-top:1px;padding:32px}.exercise-flow-panel h3{letter-spacing:-.025em;max-width:680px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.65rem,3vw,2.45rem);font-weight:400;line-height:1.08}.exercise-flow-panel h3:focus-visible{outline-offset:5px;outline:3px solid #a17722}.exercise-flow-panel>p,.exercise-flow-panel form>p{max-width:720px;line-height:1.55}.exercise-question{font-family:Georgia,Times New Roman,serif;font-size:1.25rem}.exercise-flow-panel form{max-width:720px;margin-top:24px}.exercise-flow-panel label{letter-spacing:.06em;text-transform:uppercase;margin-bottom:9px;font-size:.78rem;font-weight:700;display:block}.exercise-flow-panel textarea{resize:vertical;border:1px solid var(--ink);width:100%;min-height:112px;color:var(--ink);background:var(--paper);font:inherit;border-radius:0;padding:12px;line-height:1.5}.exercise-flow-panel textarea:focus-visible,.exercise-flow-panel button:focus-visible{outline-offset:3px;outline:3px solid #a17722}.exercise-flow-panel button{border:1px solid var(--ink);min-height:46px;color:var(--paper);background:var(--ink);font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;margin-top:16px;padding:0 20px;font-size:.78rem;font-weight:700}.exercise-summary dl{background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:28px 0;padding:1px;display:grid}.exercise-summary dl div{background:var(--paper);min-width:0;padding:20px}.exercise-summary dt{color:#4e554f;letter-spacing:.09em;text-transform:uppercase;margin-bottom:8px;font-size:.7rem;font-weight:700}.exercise-summary dd{overflow-wrap:anywhere;margin:0;line-height:1.45}.exercise-initialization-note{border-left:4px solid var(--accent);padding-left:16px;font-weight:700}.geogebra-canvas{background:#fff;min-width:0;min-height:520px;overflow:hidden}.geogebra-canvas .undoRedoPanel button{min-width:24px!important;min-height:24px!important}.proof-panel{background:var(--panel);min-width:0;padding:28px}.proof-status{letter-spacing:.12em;text-transform:uppercase;margin:0 0 28px;font-size:.72rem;font-weight:700}.proof-status:before{content:"";background:#a17722;border-radius:50%;width:8px;height:8px;margin-right:9px;display:inline-block}.proof-status-ready:before{background:var(--accent)}.proof-status-unavailable:before{background:#a3382e}.proof-intro,.fallback p,.proof-panel>p{line-height:1.55}.proof-panel dl{margin:24px 0 0}.proof-panel dl div{border-top:1px solid var(--line);grid-template-columns:42px 1fr;gap:4px 12px;padding:16px 0;display:grid}.proof-panel dt{grid-row:1/span 2;font-family:Georgia,Times New Roman,serif;font-size:1.8rem}.proof-panel dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.78rem;line-height:1.45}.proof-panel dd:last-child{color:var(--accent);font-weight:700}.construction-progress{border:1px solid var(--line);margin-bottom:24px;padding:18px}.construction-progress-summary>p:first-child{justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 12px;display:flex}.construction-progress strong{font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:400}.construction-progress ul{background:0 0;padding:0;display:block}.construction-progress li{background:0 0;min-height:0;padding:4px 0;font-size:.8rem;display:block}.construction-progress button{border:1px solid var(--ink);width:100%;min-height:42px;color:var(--paper);background:var(--ink);font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;margin-top:16px;font-size:.72rem;font-weight:700}.construction-progress button:disabled{cursor:not-allowed;opacity:.45}.invariance-experiment{border:1px solid var(--line);background:#f4f1e87a;min-width:0;margin:0 0 24px;padding:18px}.invariance-experiment-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.invariance-experiment-heading .section-index{margin-bottom:8px;font-size:.64rem}.invariance-experiment-heading h3{font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:400;line-height:1.1}.invariance-state-label{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;flex:none;margin:0;font-size:.68rem;font-weight:700;transition:opacity .16s}.invariance-experiment>p,.invariance-terminal p,.invariance-summary p,.invariance-progress p{margin:16px 0 0;font-size:.8rem;line-height:1.5}.invariance-progress strong{font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:400}.invariance-progress progress{width:100%;height:10px;accent-color:var(--accent);margin-top:10px}.invariance-terminal:focus-visible,.invariance-table-wrap:focus-visible,.invariance-actions button:focus-visible{outline-offset:3px;outline:3px solid #a17722}.invariance-table-wrap{overscroll-behavior-inline:contain;max-width:100%;margin-top:18px;overflow-x:auto}.invariance-table-wrap table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:410px;font-size:.72rem}.invariance-table-wrap caption{text-align:left;padding-bottom:8px;font-weight:700}.invariance-table-wrap th,.invariance-table-wrap td{border-top:1px solid var(--line);text-align:left;white-space:nowrap;padding:8px 6px}.invariance-table-wrap tbody th,.invariance-table-wrap td:last-child{font-weight:700}.invariance-summary{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.invariance-summary h4{margin:0;font-size:.78rem}.invariance-summary .invariance-summary-source{color:#4e554f;margin-top:8px;font-size:.68rem}.invariance-actions button{border:1px solid var(--ink);width:100%;min-height:42px;color:var(--paper);background:var(--ink);font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;margin-top:18px;font-size:.72rem;font-weight:700}.invariance-actions .button-secondary{color:var(--ink);background:0 0}.invariance-actions button:disabled{cursor:not-allowed;opacity:.45}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.invariance-state-label{transition:none}}.realtime-console{background:var(--line);grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:1px;padding:1px;display:grid}.capability-mode{background:var(--panel);border-left:6px solid #77766f;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 20px;margin-bottom:1px;padding:20px 28px;display:grid}.capability-mode>span,.capability-mode time{color:#5f625c;letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:700}.capability-mode strong{letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.capability-mode p{grid-column:2/4;margin:0;font-size:.78rem;line-height:1.45}.capability-mode .capability-mode-reason{grid-column:2}.capability-mode-live_voice{border-left-color:var(--accent)}.capability-mode-typed_live{border-left-color:#24628a}.capability-mode-scripted_local{border-left-color:#a17722}.connection-control,.connection-evidence{background:var(--panel);min-height:360px;padding:36px}.connection-state{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:9px;margin:0;font-size:.75rem;font-weight:700;display:inline-flex}.connection-state:before{content:"";background:#77766f;border-radius:50%;width:9px;height:9px}.connection-state-connecting:before{background:#a17722}.connection-state-live:before{background:var(--accent)}.connection-state-failed:before{background:#a3382e}.connection-copy{max-width:520px;min-height:84px;margin:28px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.08}.connection-actions{gap:12px;display:flex}.connection-actions button{border:1px solid var(--ink);min-height:46px;color:var(--paper);background:var(--ink);font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border-radius:0;padding:0 20px;font-size:.78rem;font-weight:700}.connection-actions .button-secondary{color:var(--ink);background:0 0}.connection-actions button:disabled{cursor:not-allowed;opacity:.42}.realtime-test-prompt{gap:8px;margin-top:24px;display:grid}.realtime-test-prompt label,.realtime-test-prompt p{margin:0;font-size:.75rem}.typed-live-output{background:#24628a14;border-left:4px solid #24628a;margin-top:4px;padding:12px;font-family:Georgia,Times New Roman,serif;font-size:.9rem;line-height:1.5;display:block}.realtime-test-prompt>div{gap:8px;display:flex}.realtime-test-prompt input{border:1px solid var(--ink);min-width:0;min-height:42px;color:var(--ink);font:inherit;background:0 0;border-radius:0;flex:1;padding:0 12px}.realtime-test-prompt button{border:1px solid var(--ink);min-height:42px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:0}.realtime-test-prompt :disabled{cursor:not-allowed;opacity:.42}.connection-control audio{width:100%;margin-top:28px}.connection-evidence>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:12px 0;font-size:.8rem;display:flex}.connection-evidence span{color:#5f625c}.connection-evidence strong{font-weight:700}.connection-evidence ol{margin:24px 0 0;padding-left:22px}.connection-evidence li{background:0 0;min-height:0;padding:5px 0;font-size:.8rem;display:list-item}.reliability-ready,.reliability-alert{background:#eef5ec;border-left:4px solid #47724c;margin:0 0 20px;padding:14px 16px;line-height:1.5}.reliability-alert{background:#fff0e6;border-left-color:#9a4f28}.reliability-table-scroll{border:1px solid var(--line);max-width:100%;overflow-x:auto}.reliability-table-scroll:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.reliability-panel table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:760px}.reliability-panel caption{text-align:left;padding:14px 16px;font-weight:700}.reliability-panel th,.reliability-panel td{border-top:1px solid var(--line);text-align:left;white-space:nowrap;padding:12px 16px}.reliability-panel thead th{color:#5f625c;letter-spacing:.07em;text-transform:uppercase;font-size:.72rem}h2{letter-spacing:-.04em;max-width:360px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.5rem);font-weight:400;line-height:1}ul{background:var(--line);grid-template-columns:repeat(2,1fr);gap:1px;margin:0;padding:1px;list-style:none;display:grid}li{background:var(--panel);flex-direction:column;min-height:220px;padding:28px;display:flex}h3{margin:0;font-size:1rem}li p{max-width:280px;margin:16px 0;line-height:1.55}li span{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin-top:auto;font-size:.72rem;font-weight:700}.presentation-footer{border-top:1px solid var(--ink);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:64px;width:min(1180px,100% - 48px);margin:0 auto;padding:48px 0 64px;display:grid}.presentation-footer h2{max-width:440px}.presentation-footer p{max-width:680px;margin:0 0 16px;line-height:1.55}.presentation-footer a{color:var(--ink);text-underline-offset:4px;font-weight:700}@media (max-width:760px){main{width:min(100% - 28px,1180px);padding-top:20px}.hero{min-height:70vh}.foundations{grid-template-columns:1fr;gap:36px}.presentation-footer{grid-template-columns:1fr;gap:28px;width:min(100% - 28px,1180px)}.spike-heading{flex-direction:column;align-items:flex-start}.spike-heading>p{text-align:left}.spike-grid,.photo-uploader-grid{grid-template-columns:1fr}.photo-picker,.photo-preview{min-height:0;padding:24px}.exercise-flow-panel{padding:24px}.exercise-summary dl,.realtime-console,.capability-mode{grid-template-columns:1fr}.capability-mode p,.capability-mode .capability-mode-reason{grid-column:1}.connection-actions{flex-direction:column;align-items:stretch}ul{grid-template-columns:1fr}}}.legacy-geometry-module[data-active=false]{display:none}.general-exercise-workspace{overflow:hidden}.general-workspace-empty{text-align:center;border:1px solid color-mix(in srgb, var(--ink) 14%, transparent);background:linear-gradient(color-mix(in srgb, var(--paper) 88%, transparent), color-mix(in srgb, var(--paper) 88%, transparent)), repeating-linear-gradient(0deg, transparent 0 31px, color-mix(in srgb, var(--ink) 7%, transparent) 31px 32px), repeating-linear-gradient(90deg, transparent 0 31px, color-mix(in srgb, var(--ink) 7%, transparent) 31px 32px);place-content:center;justify-items:center;gap:.85rem;min-height:28rem;padding:clamp(2rem,6vw,5rem);display:grid}.general-workspace-empty>span{border:2px solid var(--ink);width:7.5rem;height:7.5rem;color:var(--accent-deep);background:var(--paper);letter-spacing:-.04em;border-radius:50%;place-items:center;font-weight:800;display:grid}.general-workspace-empty h3,.general-workspace-empty p,.general-task-list p,.general-honesty-note{margin:0}.general-workspace-empty p{max-width:38rem}.general-exercise-board{gap:1.5rem;display:grid}.general-exercise-meta{flex-wrap:wrap;align-items:baseline;gap:.75rem 1rem;display:flex}.general-exercise-meta span{color:var(--paper);background:var(--ink);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:.35rem .65rem;font-size:.75rem;font-weight:800}.general-exercise-meta strong{font-size:clamp(1.2rem,2vw,1.75rem)}.general-exercise-meta .mission-score--compact{background:var(--panel-soft);border:1px solid #19221d1f;border-radius:12px 12px 4px;min-width:76px;margin-left:auto;padding:7px 11px}.mission-level{border-bottom:3px solid var(--line);min-height:28px;padding-bottom:10px;position:relative;overflow:hidden}.mission-level span{color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase;font-size:.7rem;font-weight:850}.mission-level i{background:var(--success);border-radius:99px;height:3px;position:absolute;bottom:-3px;left:0}.general-task-list{border-top:1px solid color-mix(in srgb, var(--ink) 18%, transparent);gap:0;margin:0;padding:0;list-style:none;display:grid}.general-task-list li{border-bottom:1px solid color-mix(in srgb, var(--ink) 18%, transparent);grid-template-columns:3rem minmax(0,1fr);gap:1rem;padding:1.15rem 0;display:grid}.general-task-list--missions li{border-left:3px solid #0000;grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;min-height:88px;padding:16px 12px;transition:background-color .18s,border-color .18s,opacity .18s}.general-task-list--missions li[data-mission-status=active]{border-left-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 42%, var(--paper))}.general-task-list--missions li[data-mission-status=completed]{background:color-mix(in srgb, #efd9aa 24%, var(--paper));border-left-color:#b8822f}.general-task-list--missions li[data-mission-status=verified]{border-left-color:var(--success);background:color-mix(in srgb, #bcd8c3 28%, var(--paper))}.general-task-list--missions li[data-mission-status=pending]{opacity:.56}.mission-number{border:1px solid var(--line);width:34px;height:34px;color:var(--ink-soft);background:var(--paper);font-family:var(--display-font);border-radius:50%;place-items:center;font-size:.75rem;display:grid}.general-task-list--missions li[data-mission-status=active] .mission-number{border-color:var(--ink);color:#fff;background:var(--ink)}.general-task-list--missions li[data-mission-status=completed] .mission-number{color:#fff;background:#b8822f;border-color:#b8822f}.general-task-list--missions li[data-mission-status=verified] .mission-number{border-color:var(--success);color:#fff;background:var(--success)}.mission-copy{gap:5px;min-width:0;display:grid}.mission-copy small{color:var(--ink-soft);font-size:.69rem;font-weight:750}.mission-reflection{gap:7px;width:min(100%,280px);display:grid}.mission-reflection label{color:var(--ink-soft);font-size:.69rem;font-weight:750;line-height:1.35}.mission-reflection>div{gap:7px;display:grid}.mission-reflection input,.transfer-prompt input{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border-radius:10px;padding:9px 11px;font-size:.76rem}button.mission-complete-button{border:1px solid var(--ink);color:#fff;background:var(--ink);min-width:190px;min-height:50px;font:inherit;text-align:left;cursor:pointer;border-radius:12px 12px 4px;justify-items:start;gap:2px;padding:9px 13px;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s;display:grid;box-shadow:0 6px #c63d2f38}.mission-reflection button.mission-complete-button{width:100%;min-width:0}button.mission-complete-button span{font-size:.76rem;font-weight:760}button.mission-complete-button strong{color:var(--accent-soft);letter-spacing:.08em;font-size:.7rem}button.mission-complete-button:active{transform:translateY(2px)scale(.98);box-shadow:0 3px #c63d2f38}button.mission-complete-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.mission-complete-banner{border-left:4px solid var(--success);color:var(--ink);background:color-mix(in srgb, #bcd8c3 32%, var(--paper));justify-content:space-between;align-items:baseline;gap:12px;padding:16px 18px;display:flex}.mission-complete-banner span{color:var(--ink-soft);font-size:.78rem}.transfer-prompt{border:1px solid color-mix(in srgb, var(--success) 42%, var(--line));background:color-mix(in srgb, #bcd8c3 28%, var(--paper));border-radius:14px 14px 5px;grid-template-columns:minmax(180px,.72fr) minmax(260px,1.28fr);align-items:end;gap:16px;margin-top:14px;padding:16px 18px;display:grid}.transfer-prompt label,.transfer-prompt--complete{gap:4px;display:grid}.transfer-prompt label span,.transfer-prompt--complete span{color:var(--ink-soft);font-size:.74rem;line-height:1.4}.transfer-prompt>div:last-child{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.transfer-prompt button{min-height:44px;box-shadow:none;padding:9px 13px;font-size:.74rem}.transfer-prompt--complete{grid-template-columns:1fr;align-items:start}.general-task-list li>span{color:var(--accent-deep);letter-spacing:.08em;font-size:.75rem;font-weight:900}.general-task-list p,.exercise-statement{white-space:pre-wrap;overflow-wrap:anywhere}.general-honesty-note{border-left:3px solid var(--accent-deep);background:color-mix(in srgb, var(--accent-soft) 54%, var(--paper));padding:1rem 1.2rem}.exercise-task-summary{margin-block:1.25rem}.exercise-task-summary h4{margin:0 0 .75rem}.exercise-task-summary ol{gap:.65rem;margin:0;padding-inline-start:1.35rem;display:grid}@media (max-width:560px){.general-workspace-empty{min-height:22rem;padding:2rem 1rem}.general-task-list li{grid-template-columns:2.25rem minmax(0,1fr);gap:.65rem}.general-task-list--missions li{grid-template-columns:2.25rem minmax(0,1fr)}button.mission-complete-button{grid-column:1/-1;width:100%;min-width:0}.mission-reflection{grid-column:1/-1;width:100%}.transfer-prompt,.transfer-prompt>div:last-child{grid-template-columns:1fr}.mission-complete-banner{flex-direction:column;align-items:flex-start}.workspace-status-cluster{gap:8px}.workspace-status-cluster .screen-step-label{display:none}}.brand[type=button]{min-height:0;color:var(--ink);box-shadow:none;background:0 0;border-radius:0;padding:0}.brand[type=button]:hover,.brand[type=button]:active{color:var(--ink);box-shadow:none;background:0 0;transform:none}.site-header .screen-progress{min-width:min(100%,34rem);padding:5px}.site-header .screen-progress ol{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.site-header .screen-progress li{min-height:38px;color:var(--ink-soft);white-space:nowrap;background:0 0;border-radius:9px;flex-direction:row;justify-content:center;align-items:center;gap:7px;padding:5px 10px;font-size:.7rem;font-weight:750;display:flex}.site-header .screen-progress li>span:first-child{width:20px;height:20px;color:inherit;letter-spacing:0;border:1px solid #19221d2e;border-radius:50%;place-items:center;margin:0;font-size:.62rem;display:grid}.site-header .screen-progress li>span:last-child{color:inherit;font-size:inherit;letter-spacing:0;text-transform:none;margin:0}.site-header .screen-progress li[data-complete=true]{color:var(--success)}.site-header .screen-progress li[data-active=true]{color:var(--ink);background:#fff}.site-header .screen-progress li[data-active=true]>span:first-child{color:#fff;border-color:var(--accent);background:var(--accent)}.learning-workspace,.learning-screen{min-width:0}.learning-workspace{padding-top:26px}.learning-screen{min-height:calc(100dvh - 132px)}.learning-screen[hidden],.exercise-upload-stage[hidden],.exercise-confirmation[hidden]{display:none!important}.learning-screen-intake{width:min(1040px,100%);margin:0 auto;padding-bottom:56px}.learning-screen-bar{justify-content:space-between;align-items:center;gap:16px;min-height:48px;margin-bottom:26px;display:flex}.screen-back-button{min-height:42px;padding:8px 14px}.screen-step-label{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:800}.workspace-status-cluster{justify-content:flex-end;align-items:center;gap:12px;display:flex}.workspace-xp{color:#fffdf8;background:var(--ink);font-variant-numeric:tabular-nums;border:1px solid #19221d29;border-radius:14px 14px 5px;grid-template-columns:auto auto auto;justify-content:center;align-items:baseline;gap:6px;min-width:96px;min-height:42px;padding:7px 13px;display:inline-grid;box-shadow:0 7px #c63d2f38}.workspace-xp-mark{background:var(--accent);border-radius:2px;align-self:center;width:9px;height:9px;transform:rotate(45deg)}.workspace-xp strong{font-family:var(--display-font);font-size:1.1rem;line-height:1}.workspace-xp small{color:var(--accent-soft);letter-spacing:.08em;font-size:.65rem;font-weight:850}.learning-routine{background:0 0;border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px;padding:0;list-style:none;display:grid}.learning-routine li{border:1px solid var(--line);background:#fffdf8bd;border-radius:11px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:9px;min-height:0;padding:10px 12px;display:grid}.learning-routine li>span{color:#fff;background:var(--ink);border-radius:50%;place-items:center;width:24px;height:24px;margin:0;font-size:.65rem;display:grid}.learning-routine strong{font-size:.72rem;line-height:1.35}.learning-screen-intro,.work-screen-heading{margin-bottom:28px}.learning-screen-intro h1,.work-screen-heading h1{max-width:900px;font-family:var(--display-font);letter-spacing:-.065em;font-size:clamp(2.55rem,6vw,5.4rem);font-weight:800;line-height:.98}.learning-screen-intake .workspace-card{border-radius:28px 28px 12px}.learning-screen-intake .exercise-upload-stage>.photo-uploader,.learning-screen-intake .exercise-confirmation{margin:0}.learning-screen-intake .exercise-confirmation .spike-heading,.learning-screen-intake .photo-uploader .spike-heading{grid-template-columns:minmax(0,1fr) minmax(240px,.65fr)}.learning-screen-intake .exercise-confirmation .spike-heading h2,.learning-screen-intake .photo-uploader .spike-heading h2{font-size:clamp(2rem,4vw,3.7rem)}.learning-screen-work{width:min(1320px,100%);margin:0 auto;padding-bottom:72px}.work-screen-heading{grid-template-columns:minmax(0,1.2fr) minmax(280px,.55fr);align-items:end;gap:40px;display:grid}.work-screen-heading>p{color:var(--ink-soft);margin:0 0 6px}.coach-workbench-header{grid-template-columns:166px minmax(0,1fr);align-items:end;gap:18px;margin-bottom:24px;display:grid}.learning-screen-work--geogebra .work-screen-heading{grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:28px;margin-bottom:18px}.learning-screen-work--geogebra .learning-screen-bar{min-height:42px;margin-bottom:10px}.learning-screen-work--geogebra .work-screen-heading h1{font-size:clamp(2.5rem,4.8vw,4.8rem);line-height:.94}.geogebra-workbench{grid-template-columns:minmax(0,2.2fr) minmax(300px,.8fr);grid-template-areas:"canvas coach""canvas tasks";align-items:start;gap:22px 24px;display:grid}.geogebra-workbench>.geogebra-scratchpad{grid-area:canvas}.geogebra-workbench>.general-exercise-workspace--sidebar{grid-area:tasks;max-height:none;position:static}.geogebra-workbench-coach .compass-mascot-presence--workspace{z-index:3;width:92px;position:absolute;top:0;bottom:auto;right:14px}.geogebra-workbench-coach .compass-mascot-presence--workspace p{display:none}.compass-mascot-presence--workspace{z-index:1;filter:drop-shadow(0 14px 16px #19221d29);align-self:end;width:166px;position:relative;bottom:auto;right:auto}.compass-mascot-presence--workspace p{max-width:150px}.realtime-spike--workspace{border-radius:28px 28px 12px;padding:clamp(22px,3vw,34px)}.realtime-spike--workspace .spike-heading{grid-template-columns:minmax(0,1.1fr) minmax(260px,.75fr);align-items:center;gap:24px;margin-bottom:18px}.realtime-spike--workspace .spike-heading h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1}.realtime-spike--workspace .capability-mode{margin-bottom:12px;padding:12px 14px}.realtime-spike--workspace .connection-copy{min-height:0;margin-bottom:12px}.realtime-spike--workspace .connection-actions{margin-bottom:12px}.realtime-spike--workspace .coach-diagnostics:not([open]){margin-top:0}.realtime-spike--dock{border-radius:24px 24px 9px;min-width:0;padding:20px}.realtime-spike--dock .spike-heading{margin-bottom:14px;padding-right:58px;display:block}.realtime-spike--dock .spike-heading h2{max-width:12ch;margin-top:4px;font-size:clamp(1.65rem,2.4vw,2.3rem);line-height:1}.realtime-spike--dock .spike-heading>p{margin-top:10px;font-size:.78rem;line-height:1.5}.realtime-spike--dock .capability-mode{grid-template-columns:auto minmax(0,1fr);margin-bottom:10px;padding:10px 12px}.realtime-spike--dock .capability-mode p,.realtime-spike--dock .capability-mode time{display:none}.realtime-spike--dock .connection-copy{min-height:0;margin-bottom:10px;font-size:.78rem}.realtime-spike--dock .realtime-console{background:0 0;grid-template-columns:minmax(0,1fr);gap:10px;padding:0}.realtime-spike--dock .connection-control{background:#ffffff14;border:1px solid #ffffff1f;border-radius:16px 7px 16px 16px;min-height:0;padding:16px}.realtime-spike--dock .connection-state{margin-bottom:8px}.realtime-spike--dock .coach-diagnostics{display:none}.realtime-spike--dock .connection-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:10px;display:grid}.realtime-spike--dock .connection-actions button{width:100%}.realtime-spike--dock .connection-actions button:last-child{grid-column:1/-1}.realtime-spike--dock .connection-actions button:disabled{display:none}.realtime-spike--dock .realtime-test-prompt label{font-size:.76rem}.realtime-spike--dock .coach-diagnostics:not([open]){margin-top:0}.learning-workbench-grid{grid-template-columns:minmax(280px,.38fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.learning-workbench-grid--general{grid-template-columns:minmax(0,1fr)}.general-exercise-workspace--sidebar{border-radius:24px 24px 10px;max-height:calc(100dvh - 126px);padding:24px;position:sticky;top:104px;overflow:auto}.general-exercise-workspace--sidebar .spike-heading{margin-bottom:22px;display:block}.general-exercise-workspace--sidebar .spike-heading h2{margin-bottom:12px;font-size:clamp(1.65rem,2.5vw,2.35rem);line-height:1.05}.general-exercise-workspace--sidebar .spike-heading>p{margin:0;font-size:.82rem}.general-exercise-workspace--sidebar .general-task-list li{background:0 0;grid-template-columns:2.2rem minmax(0,1fr);gap:.55rem;min-height:0;padding:.85rem 0}.general-exercise-workspace--sidebar .general-task-list p{font-size:.86rem;line-height:1.45}.geogebra-scratchpad{background:#fffdf8;border-radius:28px 28px 12px;min-width:0;padding:24px;overflow:hidden}.geogebra-workbench .geogebra-scratchpad{padding:18px}.geogebra-workbench .scratchpad-heading{grid-template-columns:minmax(230px,.8fr) minmax(300px,1.2fr);gap:20px;margin-bottom:12px}.geogebra-workbench .scratchpad-heading h2{font-size:clamp(1.9rem,3vw,3rem)}.scratchpad-heading{grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);align-items:end;gap:24px;margin-bottom:18px;display:grid}.scratchpad-heading h2{font-family:var(--display-font);letter-spacing:-.055em;font-size:clamp(2rem,3.5vw,3.4rem);font-weight:800}.scratchpad-heading>p{color:var(--ink-soft);margin:0;font-size:.82rem;line-height:1.5}.geogebra-quick-guide{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.geogebra-quick-guide li{min-width:0;min-height:0;color:var(--ink-soft);background:#f7f3eb;border:1px solid #19221d1a;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:.72rem;line-height:1.25;display:flex}.geogebra-quick-guide li span{color:#fff;background:var(--ink);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-weight:800;display:grid}.geogebra-scratchpad-shell{background:#fff;border:1px solid #19221d24;border-radius:18px 18px 7px;min-height:620px;position:relative;overflow:hidden}.geometry-published-workspace .geogebra-scratchpad{overflow:visible}.geometry-cockpit{z-index:2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f5;border:1px solid #19221d29;border-radius:18px 18px 7px;grid-template-columns:68px minmax(240px,1.25fr) minmax(220px,.9fr) minmax(176px,auto);align-items:center;gap:12px;margin:0 0 12px;padding:10px 12px;display:grid;position:relative;top:auto;box-shadow:0 14px 34px #54311924}.geometry-cockpit__mascot{align-self:end;width:68px}.geometry-cockpit__mascot .compass-mascot-presence--canvas{z-index:auto;opacity:1;filter:drop-shadow(0 8px 8px #19221d29);width:68px;position:relative;inset:auto;transform:none}.geometry-cockpit__guidance,.geometry-cockpit__mission,.geometry-cockpit__action{min-width:0}.geometry-cockpit__guidance,.geometry-cockpit__mission{border-right:1px solid #19221d1f;padding-right:12px}.geometry-cockpit__guidance>span,.geometry-cockpit__mission>span{color:var(--accent-deep);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:900;line-height:1.25;display:block}.geometry-cockpit__guidance>strong,.geometry-cockpit__mission>strong{font-family:var(--display-font);margin-top:3px;font-size:.98rem;line-height:1.2;display:block}.geometry-cockpit__guidance p,.geometry-cockpit__mission p{color:var(--ink-soft);margin:3px 0 0;font-size:1rem;line-height:1.42}.geometry-cockpit__mission p{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.78rem;display:-webkit-box;overflow:hidden}.geometry-cockpit__guidance ol{flex-wrap:wrap;gap:5px;margin:7px 0 0;padding:0;list-style:none;display:flex}.geometry-cockpit__guidance li{min-width:0;min-height:0;color:var(--success);background:#24725a14;border:1px solid #1f6f523d;border-radius:999px;flex-direction:row;align-items:center;gap:5px;padding:4px 8px 4px 5px;font-size:.72rem;font-weight:800;line-height:1;display:inline-flex}.geometry-cockpit__guidance li b{color:#fff;background:var(--success);border-radius:50%;place-items:center;width:18px;height:18px;font-size:.62rem;display:grid}.geometry-cockpit__guidance>button{min-height:36px;color:var(--ink-soft);box-shadow:none;text-underline-offset:3px;background:0 0;border:0;margin-top:6px;padding:5px 0;font-size:.7rem;text-decoration:underline}.geometry-cockpit__action{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px 9px;display:grid}.geometry-cockpit__action output{color:#fff;background:var(--ink);min-width:48px;min-height:48px;font-family:var(--display-font);border-radius:12px 12px 4px;align-content:center;place-items:center;line-height:1;display:grid}.geometry-cockpit__action output strong{font-size:1rem}.geometry-cockpit__action output span{letter-spacing:.08em;margin-top:3px;font-size:.52rem}.geometry-cockpit__capture,.geometry-cockpit__help{white-space:nowrap;border-radius:12px 12px 4px;min-height:48px;padding:9px 13px;font-size:.76rem}.geometry-cockpit__capture{color:#fff;background:var(--accent);box-shadow:0 6px 0 var(--accent-deep)}.geometry-cockpit__capture:not(:disabled):hover{background:var(--accent-deep)}.geometry-cockpit__action small{color:var(--ink-soft);grid-column:1/-1;font-size:.66rem;line-height:1.3}@media (max-width:980px){.geometry-cockpit{grid-template-columns:58px minmax(0,1fr) minmax(190px,.8fr)}.geometry-cockpit__mascot,.geometry-cockpit__mascot .compass-mascot-presence--canvas{width:58px}.geometry-cockpit__action{grid-column:2/-1;grid-template-columns:48px minmax(160px,auto) minmax(0,1fr)}.geometry-cockpit__action small{grid-column:auto}}@media (max-width:640px){.geometry-cockpit{border-radius:14px 14px 5px;grid-template-columns:48px minmax(0,1fr);gap:8px;padding:8px}.geometry-cockpit__mascot,.geometry-cockpit__mascot .compass-mascot-presence--canvas{width:48px}.geometry-cockpit__guidance{border-right:0;padding-right:0}.geometry-cockpit__guidance p{font-size:.92rem}.geometry-cockpit__mission,.geometry-cockpit__action{grid-column:1/-1}.geometry-cockpit__mission{border-top:1px solid #19221d1f;border-right:0;padding:7px 0 0}.geometry-cockpit__mission p{-webkit-line-clamp:1}.geometry-cockpit__action{grid-template-columns:44px minmax(0,1fr)}.geometry-cockpit__action output{min-width:44px;min-height:44px}.geometry-cockpit__capture,.geometry-cockpit__help{white-space:normal;min-height:44px}.geometry-cockpit__action small{grid-column:1/-1}}.geometry-mission-tools{background:#f7f3eb;border:1px solid #19221d24;border-radius:14px 14px 5px;grid-template-columns:minmax(190px,.7fr) minmax(0,2fr) minmax(180px,.75fr);align-items:center;gap:12px;margin:0 0 12px;padding:10px 12px;display:grid}.geometry-mission-tools__heading{min-width:0}.geometry-mission-tools__heading>span{color:var(--accent-deep);letter-spacing:.1em;text-transform:uppercase;font-size:.66rem;font-weight:900;display:block}.geometry-mission-tools__heading>strong{font-family:var(--display-font);margin-top:3px;font-size:.95rem;line-height:1.2;display:block}.geometry-mission-tools__choices{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:7px;min-width:0;display:grid}.geometry-mission-tools__button.button-secondary{text-align:left;background:#fff;border-color:#19221d29;border-radius:10px 10px 4px;align-content:center;justify-items:start;gap:2px;min-height:66px;padding:7px 10px;display:grid}.geometry-mission-tools__button.button-secondary[data-recommended=true]{background:#cf3f2214;border-color:#b62f1a7a}.geometry-mission-tools__button.button-secondary[aria-pressed=true]{color:#fff;border-color:var(--success);background:var(--success)}.geometry-mission-tools__button>span{color:var(--accent-deep);letter-spacing:.08em;text-transform:uppercase;font-size:.56rem;font-weight:900}.geometry-mission-tools__button[aria-pressed=true]>span,.geometry-mission-tools__button[aria-pressed=true]>small{color:#ffffffd6}.geometry-mission-tools__button>strong{font-size:.82rem}.geometry-mission-tools__button>small{color:var(--ink-soft);font-size:.66rem;line-height:1.25}.geometry-mission-tools>p{color:var(--ink-soft);margin:0;font-size:.68rem;line-height:1.35}@media (max-width:980px){.geometry-mission-tools{grid-template-columns:minmax(0,1fr)}.geometry-mission-tools>p{margin-top:-3px}}@media (max-width:640px){.geometry-mission-tools{padding:8px}.geometry-mission-tools__choices{grid-template-columns:minmax(0,1fr)}.geometry-mission-tools__button.button-secondary{min-height:58px}}.geogebra-scratchpad-canvas{min-height:620px;overflow:hidden;width:100%!important}.geogebra-scratchpad-canvas>.applet_scaler{width:100%!important;height:100%!important;transform:none!important}.geogebra-scratchpad-canvas button,.geogebra-scratchpad-canvas button:not(.button-secondary){min-height:0;color:inherit;box-shadow:none;font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:normal;background:0 0;border-radius:0;transition:none}.geogebra-scratchpad-canvas button:not(:disabled):hover,.geogebra-scratchpad-canvas button:not(:disabled):active{transform:none}.geogebra-scratchpad-canvas .customScrollbar{overscroll-behavior:contain;scrollbar-gutter:stable}.geogebra-scratchpad-canvas[data-checkpoint-restoring=true]{pointer-events:none}.geogebra-checkpoint-barrier{z-index:12;color:var(--ink);cursor:progress;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffaf4b8;place-items:center;font-size:.84rem;font-weight:800;display:grid;position:absolute;inset:0}.geogebra-scratchpad-canvas .tabButton{opacity:1!important}.geogebra-scratchpad-canvas .tabButton .gwt-Label{color:#414448!important;opacity:1!important}.geometry-evidence-gallery{background:#f7f3eb;border:1px solid #19221d24;border-radius:16px 16px 6px;margin-top:14px;padding:16px}.geometry-evidence-gallery__heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.geometry-evidence-gallery__heading h3{font-family:var(--display-font);letter-spacing:-.035em;margin:2px 0 0;font-size:clamp(1.35rem,2vw,1.9rem)}.geometry-evidence-gallery__heading>strong{color:#fff;background:var(--ink);border-radius:999px;padding:5px 9px;font-size:.75rem}.geometry-evidence-gallery__empty,.geometry-evidence-gallery__demo p{color:var(--ink-soft);margin:10px 0 0;font-size:.8rem;line-height:1.5}.geometry-evidence-gallery__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.geometry-evidence-gallery__list>li{border:1px solid #19221d1f;border-top:4px solid var(--accent);background:#fffdf8;border-radius:10px 10px 4px;align-content:start;gap:10px;min-width:0;padding:12px;display:grid}.geometry-evidence-gallery__list>li[data-configuration=concave]{border-top-color:#c47a2c}.geometry-evidence-gallery__list>li[data-configuration=crossed]{border-top-color:#8056a5}.geometry-evidence-gallery__list li>div:first-child{gap:3px;display:grid}.geometry-evidence-gallery__list span,.geometry-evidence-gallery__list small{color:var(--ink-soft);font-size:.72rem;line-height:1.35}.geometry-evidence-gallery button{width:fit-content;min-height:36px;color:var(--ink);font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #19221d2e;border-radius:8px 8px 3px;padding:7px 10px;font-size:.75rem;font-weight:800}.geometry-evidence-gallery button:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:2px}.geometry-evidence-gallery button:disabled{opacity:.5;cursor:not-allowed}.geometry-evidence-gallery__confirmation{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.geometry-evidence-gallery__confirmation>span{color:var(--ink);flex-basis:100%}.geometry-evidence-gallery__demo{border-top:1px solid #19221d1f;gap:8px;margin-top:14px;padding-top:12px;display:grid}.geometry-evidence-gallery__demo p{margin:0}.geometry-evidence-gallery__demo [role=group]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.geometry-evidence-gallery__demo [role=status]{color:var(--ink-soft);font-size:.75rem}.geometry-investigation-panel{background:#fffdf8;border:1px solid #19221d24;border-radius:18px 18px 7px;margin-top:14px;padding:18px}.geometry-investigation-panel__heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.geometry-investigation-panel__heading h3{font-family:var(--display-font);letter-spacing:-.04em;margin:2px 0 0;font-size:clamp(1.5rem,2.5vw,2.2rem)}.geometry-investigation-panel__heading output{color:#fff;background:var(--ink);border-radius:12px 12px 4px;justify-items:end;min-width:64px;padding:7px 10px;display:grid}.geometry-investigation-panel__heading output strong{font-size:1.25rem}.geometry-investigation-panel__heading output span{font-size:.65rem;font-weight:800}.geometry-investigation-panel__objective{max-width:72ch;color:var(--ink-soft);margin:10px 0 0;font-size:.82rem;line-height:1.5}.geometry-investigation-panel__capture{gap:8px;display:grid}.geometry-investigation-panel__capture button{color:#fff;background:var(--ink);width:fit-content;min-height:40px;font:inherit;cursor:pointer;border:0;border-radius:10px 10px 4px;padding:9px 14px;font-size:.78rem;font-weight:850}.geometry-investigation-panel__capture button:disabled{opacity:.45;cursor:not-allowed}.geometry-investigation-panel__capture [role=alert]{color:#9d321e;margin:0;font-size:.76rem}.geometry-teacher-studio{background:#fffdf8;border:1px solid #19221d24;border-radius:24px 24px 8px;gap:20px;width:min(100%,1220px);margin:0 auto 28px;padding:clamp(18px,3vw,34px);display:grid}.geometry-teacher-studio--live{grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:start;width:min(100%,1500px)}.geometry-teacher-studio--live>header{grid-column:1/-1}.geometry-teacher-studio--live>.geometry-teacher-studio__fields,.geometry-teacher-studio--live>.teacher-review-list,.geometry-teacher-studio--live>.geometry-teacher-studio__actions,.geometry-teacher-studio--live>.geometry-teacher-studio__blocked,.geometry-teacher-studio--live>.geometry-teacher-studio__published,.geometry-teacher-studio--live>p[role=alert]{grid-column:1}.geometry-teacher-studio--live>.geometry-teacher-studio__fields{grid-template-columns:minmax(0,1fr)}.geometry-teacher-studio--live>.geometry-teacher-preview{grid-area:2/2/span 7;min-width:0}.geometry-teacher-studio--intro{background:#eef5e9;grid-template-columns:minmax(0,1fr) auto;align-items:center}.geometry-teacher-studio h2{font-family:var(--display-font);letter-spacing:-.045em;margin:4px 0 8px;font-size:clamp(1.6rem,3vw,2.7rem)}.geometry-teacher-studio p{max-width:72ch;color:var(--ink-soft);margin:0;line-height:1.55}.geometry-teacher-studio--intro>button,.geometry-teacher-studio__actions button,.geometry-teacher-preview button,.geometry-teacher-studio__published button,.geometry-teacher-studio__published a{min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #19221d2e;border-radius:11px 11px 4px;padding:10px 15px;font-size:.78rem;font-weight:850;text-decoration:none}.geometry-teacher-studio--intro>button,.geometry-teacher-studio__actions button:last-child,.geometry-teacher-studio__published a{color:#fff;border-color:var(--ink);background:var(--ink)}.geometry-teacher-studio button:disabled{opacity:.42;cursor:not-allowed}.geometry-teacher-studio>header{justify-content:space-between;align-items:start;gap:18px;display:flex}.geometry-teacher-studio>header>span{color:#fff;background:var(--ink);white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:850}.geometry-teacher-studio__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.geometry-teacher-studio__fields>label,.geometry-teacher-studio__fields>fieldset{background:#f8f5ee;border:1px solid #19221d1f;border-radius:12px 12px 5px;gap:7px;min-width:0;margin:0;padding:13px;display:grid}.geometry-teacher-studio__fields span,.geometry-teacher-studio__fields legend{color:var(--ink);font-size:.73rem;font-weight:850}.geometry-teacher-studio__fields input:not([type=checkbox]),.geometry-teacher-studio__fields textarea,.geometry-teacher-studio__fields select{width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #19221d2e;border-radius:8px;padding:9px 10px;font-size:.78rem}.geometry-teacher-studio__fields textarea{resize:vertical;min-height:96px}.geometry-teacher-studio__fields fieldset>label{align-items:center;gap:8px;display:flex}.geometry-teacher-studio__wide{grid-column:1/-1}.geometry-teacher-missions{background:#f1f5eb;border:1px solid #19221d24;border-radius:14px 14px 5px;gap:12px;min-width:0;padding:14px;display:grid}.geometry-teacher-missions>header{justify-content:space-between;align-items:start;gap:12px;display:flex}.geometry-teacher-missions>header>div{gap:3px;display:grid}.geometry-teacher-missions>header span{font-size:.82rem}.geometry-teacher-missions>header small{color:var(--ink-soft);font-size:.7rem;line-height:1.4}.geometry-teacher-missions>header output{color:#fff;background:var(--ink);white-space:nowrap;border-radius:999px;flex:none;padding:7px 10px;font-size:.75rem;font-weight:900}.geometry-teacher-missions>ol{gap:9px;margin:0;padding:0;list-style:none;display:grid}.geometry-teacher-missions>ol>li{background:#fffdf8;border:1px solid #19221d1f;border-radius:10px 10px 4px;grid-template-columns:34px minmax(0,1fr) 72px;align-items:start;gap:9px;min-width:0;padding:10px;display:grid}.geometry-teacher-mission__index{justify-items:center;gap:3px;display:grid}.geometry-teacher-mission__index strong{color:#fff;background:var(--accent-deep);border-radius:50%;place-items:center;width:28px;height:28px;font-size:.74rem;display:grid}.geometry-teacher-mission__index span{color:var(--ink-soft);font-size:.58rem}.geometry-teacher-mission__content{gap:7px;min-width:0;display:grid}.geometry-teacher-mission__content label,.geometry-teacher-mission__xp{gap:4px;min-width:0;display:grid}.geometry-teacher-mission__content input,.geometry-teacher-mission__content textarea,.geometry-teacher-mission__xp input{width:100%;min-height:38px;color:var(--ink);font:inherit;background:#fff;border:1px solid #19221d2e;border-radius:7px;padding:7px 8px;font-size:.74rem}.geometry-teacher-mission__content textarea{resize:vertical;min-height:70px}.geometry-teacher-mission__xp{justify-items:stretch}.geometry-teacher-mission__xp input{text-align:center;font-weight:900}.geometry-teacher-mission__xp small{color:var(--ink-soft);text-align:center;font-size:.65rem;font-weight:900}.geometry-teacher-studio__actions,.geometry-teacher-preview header,.geometry-teacher-preview header>div,.geometry-teacher-studio__published{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.geometry-teacher-studio__published>div{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.geometry-teacher-studio__blocked{background:#fff0eb;border-left:4px solid #b9432e;padding:10px 12px;color:#842c1e!important}.geometry-teacher-preview{background:#f2f7ef;border:2px solid #4c7a52;border-radius:16px 16px 5px;padding:14px}.geometry-teacher-preview .geometry-published-workspace{width:100%;padding-bottom:0}.geometry-published-workspace--teacher-preview>.teacher-screen-topbar{background:#ffffffb8;border-radius:10px;margin:0 0 14px;padding:10px 12px}.geometry-published-workspace--teacher-preview>.teacher-screen-topbar>strong{font-size:.76rem}.geometry-published-workspace--teacher-preview>header{margin:16px 0 20px}.geometry-published-workspace--teacher-preview>header h1{font-size:clamp(2rem,5vw,4.4rem)}.geometry-teacher-preview>header{justify-content:space-between;margin-bottom:12px}.geometry-teacher-studio__published{background:#e8f3e7;border-radius:12px;justify-content:space-between;padding:14px}.geometry-published-workspace{width:min(100% - 24px,1500px);margin:0 auto;padding-bottom:40px}.geometry-published-workspace>header{max-width:900px;margin:22px 0}.geometry-published-workspace>header h1{font-family:var(--display-font);letter-spacing:-.06em;margin:5px 0 10px;font-size:clamp(2.2rem,6vw,5.5rem);line-height:.95}.geometry-published-workspace>header p:last-child{color:var(--ink-soft);line-height:1.55}@media (max-width:720px){.geometry-teacher-studio--intro,.geometry-teacher-studio__fields{grid-template-columns:1fr}.geometry-teacher-studio__wide{grid-column:auto}.geometry-teacher-studio>header,.geometry-teacher-missions>header,.geometry-teacher-preview>header{flex-direction:column;align-items:stretch}.geometry-teacher-studio--intro>button{width:100%}.geometry-teacher-missions>ol>li{grid-template-columns:32px minmax(0,1fr)}.geometry-teacher-mission__xp{grid-column:2;grid-template-columns:minmax(0,92px) auto;align-items:center}}@media (max-width:1280px){.geometry-teacher-studio--live{grid-template-columns:minmax(0,1fr)}.geometry-teacher-studio--live>header,.geometry-teacher-studio--live>.geometry-teacher-studio__fields,.geometry-teacher-studio--live>.teacher-review-list,.geometry-teacher-studio--live>.geometry-teacher-studio__actions,.geometry-teacher-studio--live>.geometry-teacher-studio__blocked,.geometry-teacher-studio--live>.geometry-teacher-studio__published,.geometry-teacher-studio--live>p[role=alert],.geometry-teacher-studio--live>.geometry-teacher-preview{grid-area:auto/1}}.geometry-investigation-panel__missions{grid-template-columns:repeat(9,minmax(92px,1fr));gap:6px;margin:16px 0 0;padding:0;list-style:none;display:grid;overflow-x:auto}.geometry-investigation-panel__missions li{min-width:92px;min-height:66px;color:var(--ink-soft);background:#f7f3eb;border:1px solid #19221d1a;border-radius:9px 9px 3px;align-items:start;gap:7px;padding:8px;display:flex}.geometry-investigation-panel__missions li>span{background:#19221d1a;border-radius:50%;flex:none;place-items:center;width:21px;height:21px;font-size:.68rem;font-weight:900;display:grid}.geometry-investigation-panel__missions li>div{gap:3px;min-width:0;display:grid}.geometry-investigation-panel__missions strong,.geometry-investigation-panel__missions small{text-overflow:ellipsis;font-size:.66rem;line-height:1.2;overflow:hidden}.geometry-investigation-panel__missions li[data-mission-status=active]{color:var(--ink);border-color:var(--accent);background:#f1f8f1}.geometry-investigation-panel__missions li[data-mission-status=verified]{color:#244c32;background:#e9f4ea}.geometry-investigation-panel__missions li[data-mission-status=completed]{color:#694b20;background:#f7eddc}.geometry-investigation-panel__active,.geometry-investigation-panel__complete{background:#f7f3eb;border:1px solid #19221d1f;border-radius:12px 12px 4px;margin-top:14px;padding:14px}.geometry-investigation-panel__active h4{margin:2px 0 0;font-size:1.05rem}.geometry-investigation-panel__active>p:not(.section-index),.geometry-investigation-panel__complete p{color:var(--ink-soft);margin:6px 0 0;font-size:.8rem;line-height:1.5}.geometry-investigation-panel__active label{gap:8px;margin-top:12px;font-size:.8rem;font-weight:700;display:grid}.geometry-investigation-panel__active textarea{resize:vertical;width:100%;min-height:92px;color:var(--ink);font:inherit;background:#fffdf8;border:1px solid #19221d2e;border-radius:9px 9px 3px;padding:10px;font-weight:400}.geometry-investigation-panel button{width:fit-content;min-height:38px;color:var(--ink);font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #19221d2e;border-radius:8px 8px 3px;padding:8px 11px;font-size:.75rem;font-weight:800}.geometry-investigation-panel button:focus-visible,.geometry-investigation-panel textarea:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:2px}.geometry-investigation-panel button:disabled{opacity:.55;cursor:not-allowed}.geometry-investigation-panel__help{margin-top:12px}.geometry-investigation-panel__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0 0;padding:0;list-style:none;display:grid}.geometry-investigation-panel__steps li{border-left:3px solid var(--accent);background:#fffdf8;padding:10px}.geometry-investigation-panel__steps p{margin:0 0 8px;font-size:.75rem;line-height:1.4}.geometry-investigation-panel__steps li[data-step-completed=true]{background:#e9f4ea;border-left-color:#3f7a50}.geometry-investigation-panel__hint{background:#e9f4ea;border:1px solid #3f7a5047;border-radius:10px 10px 3px;grid-template-columns:auto 1fr;align-items:start;gap:8px;margin-top:10px;padding:11px;display:grid}.geometry-investigation-panel__hint>span{color:#fff;background:#3f7a50;border-radius:5px;padding:3px 6px;font-size:.7rem;font-weight:900}.geometry-investigation-panel__hint p,.geometry-investigation-panel__hint small{margin:0;font-size:.78rem;line-height:1.45}.geometry-investigation-panel__hint small{color:var(--ink-soft);grid-column:2}.scratchpad-loading,.scratchpad-unavailable{z-index:2;color:var(--ink);text-align:center;background:#fffdf8;place-content:center;justify-items:center;gap:16px;padding:32px;display:grid;position:absolute;inset:0}.scratchpad-loading>span{border:8px solid var(--panel);border-top-color:var(--accent);border-radius:50%;width:58px;height:58px;animation:.9s linear infinite scratchpad-spin}@keyframes scratchpad-spin{to{transform:rotate(360deg)}}@media (max-width:980px){.site-header{grid-template-columns:auto minmax(0,1fr) auto;gap:12px}.header-tagline{display:none}.site-header .screen-progress li{padding-inline:6px}.site-header .screen-progress li>span:last-child{display:none}.work-screen-heading,.learning-screen-intake .exercise-confirmation .spike-heading,.learning-screen-intake .photo-uploader .spike-heading,.scratchpad-heading{grid-template-columns:1fr;gap:14px}.geometry-evidence-gallery__list,.geometry-investigation-panel__steps,.learning-workbench-grid{grid-template-columns:1fr}.learning-screen-work--geogebra .work-screen-heading{grid-template-columns:1fr;margin-bottom:14px}.learning-screen-work--geogebra .work-screen-heading>p,.realtime-spike--dock .connection-copy{display:none}.geogebra-workbench{grid-template-columns:minmax(0,1fr);grid-template-areas:"coach""canvas""tasks"}.geogebra-workbench-coach{padding-top:0}.realtime-spike--dock .spike-heading{min-height:74px;padding-right:92px}.realtime-spike--dock .spike-heading>p{display:none}.general-exercise-workspace--sidebar{max-height:none;position:static}}@media (max-width:640px){.site-header{border-radius:16px;width:calc(100% - 16px);min-height:60px;margin-top:8px;padding:8px 9px;top:8px}.brand[type=button]>span:last-child{display:none}.site-header .screen-progress{min-width:0}.site-header .screen-progress li{min-height:32px;padding:3px}.site-header .screen-progress li>span:first-child{width:18px;height:18px}.language-switch{min-width:52px;min-height:38px}main{width:min(100% - 20px,1320px);padding-bottom:42px}.learning-workspace{padding-top:18px}.learning-screen-bar{margin-bottom:18px}.screen-step-label{text-align:right;max-width:9rem}.learning-screen-intro h1,.work-screen-heading h1{font-size:clamp(2.2rem,11vw,3rem)}.learning-screen-work--geogebra .work-screen-heading{margin-bottom:14px}.learning-screen-work--geogebra .work-screen-heading h1{font-size:clamp(2.2rem,10.5vw,2.8rem)}.learning-screen-work--geogebra .work-screen-heading>p{display:none}.learning-screen-intro,.learning-screen-intake .photo-uploader .spike-heading{margin-bottom:18px}.learning-screen-intake .photo-uploader .spike-heading h2{font-size:clamp(2rem,10vw,2.65rem)}.learning-screen-intake .photo-uploader .spike-heading>p{margin-top:8px}.learning-screen-intake .photo-picker{padding:14px}.learning-screen-intake .photo-dropzone{min-height:176px;padding:16px 12px}.learning-screen-intake .photo-dropzone-icon{width:48px;height:48px;margin-bottom:12px}.learning-screen-intake .photo-dropzone>p,.learning-screen-intake .photo-help,.learning-screen-intake .photo-privacy-notice,.learning-screen-intake .photo-state,.learning-screen-intake .photo-actions{margin-top:12px}.learning-screen-intake .photo-preview[data-has-image=false]{display:none}.learning-screen-intake .workspace-card,.geogebra-scratchpad,.general-exercise-workspace--sidebar{border-radius:22px 22px 9px;padding:20px}.coach-workbench-header{display:block;position:relative}.compass-mascot-presence--workspace{z-index:2;width:86px;position:absolute;top:12px;right:12px}.compass-mascot-presence--workspace p{display:none}.realtime-spike--workspace{padding:20px}.realtime-spike--workspace .spike-heading{padding-right:74px;display:block}.realtime-spike--workspace .spike-heading>p{margin-top:10px}.realtime-spike--workspace .capability-mode{grid-template-columns:auto 1fr}.realtime-spike--workspace .capability-mode p,.realtime-spike--workspace .capability-mode time{display:none}.realtime-spike--workspace .connection-actions{grid-template-columns:1fr;display:grid}.realtime-spike--dock{padding:16px}.realtime-spike--dock .spike-heading{min-height:62px;margin-bottom:10px}.realtime-spike--dock .spike-heading h2{font-size:1.65rem}.realtime-spike--dock .capability-mode{margin-bottom:8px;padding:8px 10px}.realtime-spike--dock .connection-control{padding:12px}.realtime-spike--dock .connection-copy{display:none}.realtime-spike--dock .realtime-test-prompt{margin-top:10px;padding-top:10px}.realtime-spike--dock .realtime-test-prompt:has(input:disabled){display:none}.realtime-spike--dock .realtime-test-prompt label{display:none}.realtime-spike--dock .realtime-test-prompt button{max-width:108px;padding-inline:8px;font-size:.68rem}.scratchpad-heading{display:block}.learning-workbench-grid .geogebra-scratchpad{order:1}.geogebra-quick-guide{grid-template-columns:1fr}.learning-workbench-grid .general-exercise-workspace--sidebar{order:2}.scratchpad-heading>p{margin-top:10px}.geogebra-scratchpad-shell,.geogebra-scratchpad-canvas{min-height:520px}}@media (prefers-reduced-motion:reduce){.scratchpad-loading>span{border-top-color:var(--panel);animation:none}}.learning-screen-work--geogebra{width:min(1440px,100%)}.learning-screen-work--geogebra .work-screen-heading{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.geogebra-workbench{grid-template-columns:minmax(0,1fr);grid-template-areas:"coach""canvas""tasks";gap:10px;display:grid}.geogebra-workbench-coach{grid-area:coach;min-width:0;padding-top:0;position:relative}.geogebra-workbench-coach .compass-mascot-presence--workspace{z-index:5;filter:drop-shadow(0 14px 16px #19221d1f);width:218px;position:absolute;inset:-28px auto auto 18px}.compass-mascot-portrait{object-fit:contain;width:100%;height:auto}.geogebra-workbench-coach .compass-mascot-presence--workspace p{width:max-content;max-width:210px;color:var(--ink);background:#fffdf8;margin:0;position:absolute;top:68px;left:214px}.exercise-start-dialog{border:1px solid color-mix(in srgb, var(--line) 84%, var(--ink));width:min(760px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);color:var(--ink);background:#fffdf8;border-radius:28px 28px 8px;margin:auto;padding:0;overflow:auto;box-shadow:0 34px 100px #19221d47}.exercise-start-dialog::backdrop{background:#19221d9e}.exercise-start-dialog[open]{animation:.26s cubic-bezier(.2,.8,.2,1) both exercise-start-dialog-in}.exercise-start-dialog__panel{padding:clamp(28px,4.5vw,50px)}.exercise-start-dialog__intro{grid-template-columns:minmax(0,1fr) 154px;align-items:end;gap:18px;display:grid}.exercise-start-dialog__copy{min-width:0}.exercise-start-dialog__mascot{align-self:end;justify-items:center;min-width:0;display:grid}.exercise-start-dialog__mascot .compass-mascot-presence--coach{z-index:1;opacity:1;filter:drop-shadow(0 14px 16px #19221d26);width:148px;position:relative;inset:auto;transform:none}.exercise-start-dialog__eyebrow{color:var(--accent-deep);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:850}.exercise-start-dialog h2{max-width:12ch;font-family:var(--display-font);letter-spacing:-.055em;margin:0;font-size:clamp(2rem,5vw,3.4rem);line-height:.98}.exercise-start-dialog__copy>p:not(.exercise-start-dialog__eyebrow){max-width:54ch;color:var(--ink-soft);margin:16px 0 0;line-height:1.55}.exercise-start-dialog__actions{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:12px;margin-top:24px;display:grid}.exercise-start-dialog__actions button{text-align:left;grid-template-rows:auto 1fr auto;grid-template-columns:1fr auto;align-items:start;gap:8px 16px;min-height:138px;padding:20px;display:grid}.exercise-start-dialog__actions .exercise-start-dialog__action-index{letter-spacing:.1em;opacity:.72;grid-area:1/1;font-size:.68rem;font-weight:800}.exercise-start-dialog__actions button>strong{font-family:var(--display-font);grid-area:2/1/auto/-1;align-self:end;font-size:clamp(1.08rem,2.6vw,1.42rem);line-height:1.05}.exercise-start-dialog__actions button>small{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:999px;grid-area:1/2;justify-self:end;padding:5px 8px;font-size:.66rem;font-weight:800}.exercise-start-dialog__actions .exercise-start-dialog__action-detail{color:currentColor;opacity:.76;grid-area:3/1/auto/-1;font-size:.76rem;font-weight:650;line-height:1.35}.exercise-start-dialog__voice{background:var(--accent)}.exercise-start-dialog__local{width:100%;min-height:58px;color:var(--ink-soft);background:0 0;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding:10px 18px;display:flex}.exercise-start-dialog__local strong{color:var(--ink)}.exercise-start-dialog__local span{font-size:.74rem;font-weight:650}.exercise-start-dialog__privacy{color:var(--ink-soft);text-align:center;margin:16px 0 0;font-size:.76rem;line-height:1.45}@keyframes exercise-start-dialog-in{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.realtime-spike--panorama{min-height:122px;color:var(--ink);background:#fffdf8;border-radius:24px 24px 8px;grid-template-rows:auto auto;grid-template-columns:minmax(220px,.72fr) minmax(420px,1.45fr);align-items:center;gap:4px 28px;padding:14px 20px 14px 236px;display:grid;overflow:visible;box-shadow:0 12px 34px #5431191a}.realtime-spike--panorama .spike-heading{grid-area:1/1;margin:0;display:block}.realtime-spike--panorama .spike-heading h2{max-width:15ch;color:var(--ink);margin-top:3px;font-size:clamp(1.35rem,2vw,1.82rem);line-height:.98}.realtime-spike--panorama .spike-heading>p{display:none}.workspace-card-coach.realtime-spike--panorama .section-index{color:var(--accent-deep)}.realtime-spike--panorama .capability-mode{min-height:0;color:var(--ink-soft);background:0 0;grid-area:2/1;margin:0;padding:0;display:block}.realtime-spike--panorama .capability-mode .coach-avatar,.realtime-spike--panorama .capability-mode>span:not(.visually-hidden),.realtime-spike--panorama .capability-mode p,.realtime-spike--panorama .capability-mode time{display:none}.realtime-spike--panorama .capability-mode strong{color:var(--success);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.realtime-spike--panorama .realtime-console{min-width:0;color:var(--ink);background:0 0;grid-area:1/2/span 2;padding:0;display:block}.realtime-spike--panorama .connection-control{background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 22px;min-height:0;padding:0;display:grid}.realtime-spike--panorama .connection-state{grid-column:1;justify-self:start;margin:0}.realtime-spike--panorama .connection-copy{min-height:0;color:var(--ink-soft);grid-column:1;margin:0;font-size:.82rem;line-height:1.45}.realtime-spike--panorama .connection-actions{grid-area:1/2/span 2;grid-template-columns:repeat(2,minmax(128px,1fr));gap:10px;margin:0;display:grid}.realtime-spike--panorama .connection-actions button{min-width:128px;min-height:48px;padding-inline:16px}.realtime-spike--panorama .connection-actions button:last-child{grid-column:1/-1}.realtime-spike--panorama .connection-actions button:disabled{display:none}.realtime-spike--panorama .connection-actions .button-secondary:not(:disabled){border:1px solid var(--ink);color:var(--ink);box-shadow:none;background:#fff}.realtime-spike--panorama .realtime-test-prompt{grid-column:1/-1;margin:4px 0 0;padding-top:10px}.realtime-spike--panorama .realtime-test-prompt:has(input:disabled){display:none}.realtime-spike--panorama .coach-diagnostics{display:none}.geogebra-workbench>.geogebra-scratchpad{background:#fff;border-radius:20px 20px 6px;grid-area:canvas;width:100%;padding:0;overflow:hidden;box-shadow:0 12px 34px #54311914}.geogebra-workbench .scratchpad-heading{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.geogebra-workbench .geogebra-quick-guide{display:none}.geogebra-workbench .geogebra-scratchpad-shell{border-radius:inherit;min-height:min(800px,100dvh - 224px)}.geogebra-workbench .geogebra-scratchpad-canvas{min-height:min(800px,100dvh - 224px)}.general-exercise-workspace--rail{z-index:30;background:#fffdf8f5;border:1px solid #19221d1a;border-radius:18px 18px 6px;grid-template-columns:minmax(320px,1.25fr) minmax(360px,1fr) auto;align-items:center;gap:18px;width:min(1320px,100% - 32px);min-width:0;min-height:78px;padding:10px 14px;display:grid;position:fixed;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 12px 34px #5431191a}.learning-screen-work--geogebra .geogebra-workbench{padding-bottom:106px}.mission-current{gap:3px;min-width:0;display:grid}.mission-current span{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:850}.mission-current strong{font-family:var(--display-font);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.94rem;line-height:1.25;display:-webkit-box;overflow:hidden}.mission-reflection--compact{width:100%;margin-top:5px}.mission-reflection--compact label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.mission-reflection--compact>div{grid-template-columns:minmax(130px,1fr) auto;gap:6px}.mission-reflection--compact input{min-height:36px;padding-block:6px}.mission-reflection--compact button.mission-complete-button{width:auto;min-height:36px;box-shadow:none;padding:5px 9px;display:block}.mission-reflection--compact button span{display:none}.transfer-prompt--compact{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(128px,.68fr) minmax(190px,1.32fr);gap:8px;margin:0;padding:0}.transfer-prompt--compact label span,.transfer-prompt--compact>span{display:none}.transfer-prompt--compact input,.transfer-prompt--compact button{min-height:36px}.mission-track{justify-content:center;align-items:center;gap:8px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.mission-track li{background:0 0;flex:none;min-height:0;padding:0;display:block;position:relative}.mission-track button{border:2px solid var(--line);width:42px;min-width:42px;height:42px;min-height:42px;color:var(--ink-soft);background:var(--panel-soft);box-shadow:none;font-family:var(--display-font);border-radius:50%;place-items:center;padding:0;font-weight:850;display:grid}.mission-track li[data-mission-status=active] button{border-color:var(--accent);color:#fff;background:var(--ink);width:54px;min-width:54px;height:54px;min-height:54px;box-shadow:0 0 0 5px var(--accent-soft)}.mission-track li[data-mission-status=verified] button{border-color:var(--success);color:#fff;background:var(--success);animation:.48s cubic-bezier(.2,.8,.2,1) both mission-verified-pop}.mission-track li[data-mission-status=completed] button{color:#fff;background:#b8822f;border-color:#b8822f}.mission-track button[aria-current=step]{outline:3px solid var(--accent-soft);outline-offset:3px}.mission-score{border-left:1px solid var(--line);justify-content:flex-end;align-items:baseline;gap:5px;min-width:82px;padding-left:16px;display:flex}.mission-score strong{color:var(--success);font-family:var(--display-font);font-size:1.35rem}.mission-score span{color:var(--ink-soft);letter-spacing:.08em;font-size:.72rem;font-weight:850}.general-exercise-workspace--rail:not([data-score="0"]) .mission-score{animation:.62s cubic-bezier(.2,.8,.2,1) both mission-xp-pop}@keyframes mission-verified-pop{0%{transform:scale(.72)}62%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes mission-xp-pop{0%{opacity:.55;transform:translateY(4px)scale(.86)}55%{opacity:1;transform:translateY(-2px)scale(1.12)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:980px){.realtime-spike--panorama{grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:4px 18px;min-height:166px;padding-left:190px}.geogebra-workbench-coach .compass-mascot-presence--workspace{width:176px;top:-12px;left:10px}.geogebra-workbench-coach .compass-mascot-presence--workspace p,.realtime-spike--panorama .connection-copy{display:none}.realtime-spike--panorama .connection-actions{grid-template-columns:1fr}.general-exercise-workspace--rail{grid-template-columns:minmax(220px,1fr) auto auto;width:calc(100% - 20px);bottom:8px}.learning-routine{grid-template-columns:1fr}.mission-current{grid-column:auto}.mission-track{justify-content:center;padding:0;overflow:visible}}@media (max-width:640px){.exercise-start-dialog{border-radius:22px 22px 6px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.exercise-start-dialog__panel{padding:26px 20px 22px}.exercise-start-dialog__intro{grid-template-columns:minmax(0,1fr) 92px;align-items:start;gap:8px}.exercise-start-dialog__mascot .compass-mascot-presence--coach{width:92px}.exercise-start-dialog h2{font-size:clamp(1.9rem,10vw,2.7rem)}.exercise-start-dialog__actions{grid-template-columns:1fr;margin-top:22px}.exercise-start-dialog__actions button{min-height:106px;padding:16px}.exercise-start-dialog__local{flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;min-height:62px}.learning-screen-work--geogebra{width:100%}.learning-routine{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.learning-routine li{grid-template-columns:20px minmax(0,1fr);align-items:start;gap:5px;min-height:58px;padding:7px}.learning-routine li>span{width:20px;height:20px;font-size:.58rem}.learning-routine strong{font-size:.6rem;line-height:1.25}.realtime-spike--panorama{min-height:202px;padding:118px 14px 14px;display:block;overflow:hidden}.geogebra-workbench-coach .compass-mascot-presence--workspace{width:150px;top:-12px;left:8px}.realtime-spike--panorama .spike-heading{position:absolute;top:24px;left:158px;right:12px}.realtime-spike--panorama .spike-heading .section-index{display:none}.realtime-spike--panorama .spike-heading h2{margin:0;font-size:1.24rem;line-height:1}.realtime-spike--panorama .capability-mode{display:none}.realtime-spike--panorama .connection-control{display:block}.realtime-spike--panorama .connection-state{display:none}.realtime-spike--panorama .connection-actions{grid-template-columns:1fr 1fr;display:grid}.realtime-spike--panorama .connection-actions button{min-width:0;min-height:48px;padding-inline:8px;font-size:.75rem}.geogebra-workbench .geogebra-scratchpad-shell,.geogebra-workbench .geogebra-scratchpad-canvas{min-height:560px}.general-exercise-workspace--rail{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px}.learning-screen-work--geogebra .geogebra-workbench{padding-bottom:174px}.mission-current{grid-column:1/-1}.mission-current strong{font-size:.82rem}.mission-reflection--compact>div,.transfer-prompt--compact,.transfer-prompt--compact>div:last-child{grid-template-columns:minmax(0,1fr) auto}.mission-reflection--compact button.mission-complete-button{grid-column:auto;width:auto}.transfer-prompt--compact label{grid-column:1/-1}.mission-track{gap:6px}.mission-track button{width:38px;min-width:38px;height:38px;min-height:38px}.mission-track li[data-mission-status=active] button{width:46px;min-width:46px;height:46px;min-height:46px}.mission-score{min-width:64px;padding-left:10px}}@media (prefers-reduced-motion:reduce){.exercise-start-dialog[open]{animation:none}.compass-mascot-portrait{transition:none}}.geometry-published-coach-stage{isolation:isolate;position:relative}.geometry-published-coach-stage>.compass-mascot-presence--coach{z-index:6;opacity:1;filter:drop-shadow(0 14px 16px #19221d29);width:142px;position:absolute;inset:50% auto auto 28px;transform:translateY(-50%)}.compass-mascot-presence--coach p{width:142px;max-width:142px;margin-top:-15px;padding:6px 9px;font-size:.66rem}.geometry-mascot-layer{z-index:8;pointer-events:none;border-radius:12px 12px 5px;position:absolute;inset:52px 10px 10px;overflow:hidden}.geometry-mascot-companion{z-index:2;pointer-events:none;justify-content:flex-end;align-items:end;gap:8px;width:min(310px,100% - 36px);min-height:104px;display:flex;position:absolute;bottom:16px;right:18px}.geometry-mascot-companion .compass-mascot-presence--canvas{opacity:.94;filter:drop-shadow(0 10px 12px #19221d2b);flex:0 0 94px;width:94px}.geometry-mascot-companion[data-engaged=true] .compass-mascot-presence--canvas{opacity:1;transform:translateY(-2px)}.geometry-mascot-companion__message{max-width:206px;color:var(--ink);font-family:var(--display-font);text-wrap:balance;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8f0;border:1px solid #19221d24;border-radius:14px 14px 5px;margin-bottom:28px;padding:9px 11px;font-size:.68rem;font-weight:750;line-height:1.35;animation:.26s ease-out both geometry-mascot-message-enter;box-shadow:0 10px 24px #5431191f}.geometry-mascot-companion__message p{margin:0}.geometry-mascot-companion__targets{color:var(--success);letter-spacing:.08em;margin-top:6px;font-size:.62rem;font-weight:900;display:block}.geometry-guidance-layer{z-index:10;border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.geometry-guidance-target{box-sizing:border-box;pointer-events:none;background:#f59e0b17;border:3px solid #f59e0b;border-radius:16px;min-width:30px;min-height:30px;position:absolute;box-shadow:0 0 0 4px #ffffffdb,0 0 0 8px #f59e0b47,0 12px 30px #5431192e}.geometry-guidance-target[data-kind=objects]{background:#1684591f;border-color:#168459;border-radius:999px;box-shadow:0 0 0 4px #ffffffdb,0 0 0 9px #1684593d,0 12px 30px #19221d2e}.geometry-guidance-target[data-kind=movement]{background:#7c3aed1f;border-color:#7c3aed;border-radius:999px;box-shadow:0 0 0 4px #ffffffe0,0 0 0 9px #7c3aed3d,0 12px 30px #2f214c33}.geometry-guidance-movement{z-index:0;filter:drop-shadow(0 2px 2px #2f214c3d);transform-origin:0;background:repeating-linear-gradient(90deg,#7c3aed 0 12px,#0000 12px 19px);border-radius:999px;height:4px;position:absolute}.geometry-guidance-movement__origin{background:#ffffffeb;border:4px solid #7c3aed;border-radius:999px;width:18px;height:18px;position:absolute;top:50%;left:-9px;transform:translateY(-50%)}.geometry-guidance-movement__head{border-top:4px solid #7c3aed;border-right:4px solid #7c3aed;width:14px;height:14px;position:absolute;top:50%;right:-1px;transform:translateY(-50%)rotate(45deg)}.geometry-guidance-target[data-kind=viewport]{background:#2563eb0d;border-color:#2563eb;border-radius:14px;min-width:80px;min-height:80px;box-shadow:inset 0 0 0 4px #ffffff8c}.geometry-guidance-target__pulse{border-radius:inherit;color:#f59e0b;opacity:0;border:2px solid;animation:1.35s ease-out infinite geometry-guidance-pulse;position:absolute;inset:-11px}.geometry-guidance-target[data-kind=objects] .geometry-guidance-target__pulse{color:#168459}.geometry-guidance-target[data-kind=movement] .geometry-guidance-target__pulse{color:#7c3aed}.geometry-guidance-target[data-kind=viewport] .geometry-guidance-target__pulse{color:#2563eb}.geometry-guidance-target__pointer{background:#f59e0b;border-radius:999px;width:24px;height:3px;position:absolute;top:50%;left:calc(100% + 7px);transform:translateY(-50%)}.geometry-guidance-target__pointer:after{content:"";border-top:3px solid #f59e0b;border-right:3px solid #f59e0b;width:9px;height:9px;position:absolute;top:50%;right:-1px;transform:translateY(-50%)rotate(45deg)}.geometry-guidance-target[data-kind=objects] .geometry-guidance-target__pointer{background:#168459}.geometry-guidance-target[data-kind=movement] .geometry-guidance-target__pointer{background:#7c3aed}.geometry-guidance-target[data-kind=movement] .geometry-guidance-target__pointer:after{border-color:#7c3aed}.geometry-guidance-target[data-kind=objects] .geometry-guidance-target__pointer:after{border-color:#168459}.geometry-guidance-target[data-side=before] .geometry-guidance-target__pointer{left:auto;right:calc(100% + 7px)}.geometry-guidance-target[data-side=before] .geometry-guidance-target__pointer:after{left:-1px;right:auto;transform:translateY(-50%)rotate(225deg)}.geometry-guidance-target[data-kind=viewport] .geometry-guidance-target__pointer{display:none}.geometry-guidance-target__callout{z-index:2;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#19221df0;border:1px solid #ffffff42;border-radius:12px 12px 4px;gap:3px;width:min(250px,38vw);margin:0;padding:10px 12px;font-size:.72rem;line-height:1.35;display:none;position:absolute;top:50%;left:calc(100% + 38px);transform:translateY(-50%);box-shadow:0 12px 28px #19221d38}.geometry-guidance-target__callout strong{font-family:var(--display-font);font-size:.76rem}.geometry-guidance-target__callout span{color:#ffffffd1}.geometry-guidance-target[data-side=before] .geometry-guidance-target__callout{text-align:right;border-radius:12px 12px 12px 4px;left:auto;right:calc(100% + 38px)}.geometry-guidance-target[data-kind=viewport] .geometry-guidance-target__callout{width:min(230px,100% - 28px);top:14px;left:auto;right:14px;transform:none}@keyframes geometry-guidance-pulse{0%{opacity:.75;transform:scale(.94)}80%,to{opacity:0;transform:scale(1.08)}}.compass-mascot-presence--canvas{z-index:2;opacity:1;filter:drop-shadow(0 16px 18px #19221d2b);width:170px;position:relative;bottom:auto;right:auto}.compass-mascot-presence--canvas p{max-width:160px;margin-top:-13px;font-size:.69rem}.geometry-mascot-proof-pins{z-index:1;flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:calc(100% - 16px);margin:0;padding:0;list-style:none;display:flex;position:absolute;top:8px;right:8px}.geometry-mascot-proof-pins li{color:#244c32;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#e9f4eaf0;border:1px solid #3f7a5042;border-radius:999px;align-items:center;gap:5px;min-height:30px;padding:4px 8px 4px 5px;animation:.46s cubic-bezier(.18,.86,.24,1.12) both geometry-proof-pin;display:flex;box-shadow:0 6px 16px #54311917}.geometry-mascot-proof-pins span{color:#fff;background:var(--success);border-radius:50%;place-items:center;width:21px;height:21px;font-size:.7rem;font-weight:900;display:grid}.geometry-mascot-proof-pins small{font-size:.63rem;font-weight:850}@keyframes geometry-mascot-message-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes geometry-proof-pin{0%{opacity:0;transform:translateY(-8px)scale(.82)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:980px){.geometry-published-coach-stage>.compass-mascot-presence--coach{width:126px;left:16px}.compass-mascot-presence--coach p{width:126px;max-width:126px}}@media (max-width:640px){.geometry-published-coach-stage>.compass-mascot-presence--coach{width:102px;top:2px;left:12px;transform:none}.compass-mascot-presence--coach p{width:112px;max-width:112px;margin-top:-11px;font-size:.59rem}.geometry-mascot-layer{inset:48px 6px 6px}.geometry-mascot-companion{gap:5px;width:min(244px,100% - 16px);min-height:82px;bottom:8px;right:8px}.geometry-mascot-companion .compass-mascot-presence--canvas{flex-basis:72px;width:72px}.geometry-mascot-companion__message{max-width:164px;margin-bottom:18px;padding:7px 8px;font-size:.59rem}.geometry-guidance-target__callout{width:min(180px,46vw);padding:7px 8px;font-size:.62rem}.geometry-guidance-target__callout strong{font-size:.66rem}.geometry-guidance-target[data-kind=viewport] .geometry-guidance-target__callout{width:min(190px,100% - 20px)}.geometry-mascot-proof-pins li{padding-right:5px}.geometry-mascot-proof-pins small{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}@media (prefers-reduced-motion:reduce){.compass-mascot-sprite-stage,.compass-mascot-mouth,.compass-mascot-motion-accent i,.geometry-mascot-companion__message,.geometry-mascot-proof-pins li,.geometry-guidance-target__pulse{transition:none!important;animation:none!important}.compass-mascot-motion-accent,.compass-mascot-mouth{display:none}}.teacher-access{min-height:42px;color:var(--ink);box-shadow:none;letter-spacing:.02em;background:0 0;border:1px solid #19221d2e;border-radius:12px;padding:7px 13px;font-size:.72rem}.teacher-access:hover,.teacher-access[data-active=true]{border-color:var(--ink);color:#fff;background:var(--ink);box-shadow:none}.hero-student-paths{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:960px;margin-top:36px;display:grid}.hero-student-paths .primary-link,.student-library-link,.classroom-join-link{text-align:left;border-radius:22px 22px 8px;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:4px;min-width:0;min-height:138px;padding:22px;display:flex}.hero-student-paths .primary-link{box-shadow:0 9px 0 var(--accent-deep), 0 18px 38px #cf3f2233}.student-library-link{color:var(--ink);box-shadow:0 9px 0 var(--ink), 0 18px 38px #19221d1f;background:#fffdf8;border:1px solid #19221d24;border-radius:22px 8px 22px 22px}.student-library-link:hover{color:var(--ink);background:#fff}.classroom-join-link{border:1px solid var(--ink);color:#fffdf8;background:var(--ink);box-shadow:0 9px 0 color-mix(in srgb, var(--success) 78%, var(--ink)), 0 18px 38px #19221d2e;border-radius:8px 22px 22px}.classroom-join-link:hover{color:#fff;background:color-mix(in srgb, var(--ink) 92%, var(--success))}.hero-student-paths small{letter-spacing:.1em;text-transform:uppercase;opacity:.72;font-size:.68rem;font-weight:800}.hero-student-paths strong{font-family:var(--display-font);letter-spacing:-.035em;font-size:clamp(1.12rem,2vw,1.42rem)}.hero-student-paths .primary-link span,.hero-student-paths .student-library-link span,.hero-student-paths .classroom-join-link span{opacity:.78;font-size:.76rem;font-weight:600}.teacher-screen,.teacher-library-screen{min-height:calc(100dvh - 112px);padding:clamp(28px,4vw,52px) clamp(2px,2vw,24px) 48px;animation:.52s cubic-bezier(.2,.8,.2,1) both student-rise}.teacher-screen-topbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:clamp(24px,3vw,38px);display:flex}.teacher-screen-topbar>span{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:750}.teacher-screen .screen-back,.teacher-library-screen .screen-back{border:1px solid var(--line);min-height:42px;color:var(--ink);box-shadow:none;background:#ffffffa8;padding:8px 13px}.teacher-hero,.library-hero{max-width:960px;margin-bottom:clamp(28px,4vw,48px)}.teacher-hero{margin-bottom:clamp(30px,4vw,48px)}.teacher-hero h1,.library-hero h1{max-width:900px;font-family:var(--display-font);letter-spacing:-.07em;text-wrap:balance;margin:0;font-size:clamp(2.8rem,5.2vw,4.8rem);line-height:.94}.teacher-howto{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.82fr) minmax(0,1.16fr) minmax(0,1fr);margin:0 0 clamp(24px,3vw,36px);padding:0;list-style:none;display:grid}.teacher-howto li{background:0 0;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;min-width:0;min-height:0;padding:14px clamp(12px,1.6vw,22px);display:grid}.teacher-howto li+li{border-left:1px solid var(--line)}.teacher-howto li>span{color:var(--accent);font-family:var(--display-font);grid-area:1/1;align-self:start;font-size:.82rem;font-weight:850}.teacher-howto strong,.teacher-howto p{display:block}.teacher-howto strong{font-family:var(--display-font);letter-spacing:-.025em;font-size:1rem}.teacher-howto p{color:var(--ink-soft);margin:3px 0 0;font-size:.76rem;line-height:1.45}.teacher-hero>p:last-child,.library-hero>p:last-child{max-width:700px;color:var(--ink-soft);margin:28px 0 0;font-size:clamp(1rem,1.7vw,1.28rem);line-height:1.55}.teacher-layout{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:start;gap:clamp(18px,3vw,42px);display:grid}.classroom-teacher-panel{background:color-mix(in srgb, var(--panel) 72%, #fff);border:1px solid #19221d24;border-radius:30px 10px 30px 30px;margin:0 0 clamp(30px,4vw,52px);padding:clamp(22px,3vw,38px);box-shadow:0 16px 42px #19221d14}.classroom-teacher-panel>header{grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);align-items:end;gap:clamp(22px,4vw,52px);display:grid}.classroom-teacher-panel h2{max-width:680px;font-family:var(--display-font);letter-spacing:-.06em;margin:0;font-size:clamp(2rem,4vw,3.7rem);line-height:.98}.classroom-teacher-panel>header>p,.classroom-panel-notice{color:var(--ink-soft);font-size:.88rem;line-height:1.55}.classroom-panel-open{min-height:48px;margin-top:26px}.classroom-panel-notice{border-left:3px solid var(--accent);background:#fffdf8c2;margin:26px 0 0;padding:16px 18px}.classroom-login,.classroom-panel-body{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.classroom-login{max-width:640px}.classroom-login label,.classroom-panel-toolbar label{margin-bottom:8px;font-size:.76rem;font-weight:800;display:block}.classroom-login>div,.classroom-panel-toolbar form>div{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.classroom-login input,.classroom-panel-toolbar input{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fff;border-radius:11px;padding:11px 13px}.classroom-login button,.classroom-panel-toolbar button{min-height:48px}.classroom-panel-toolbar{grid-template-columns:minmax(0,640px) auto;justify-content:space-between;align-items:end;gap:18px;display:grid}.classroom-signout{color:var(--ink);border:1px solid var(--line);box-shadow:none;background:0 0}.classroom-empty{border:1px dashed var(--line);color:var(--ink-soft);border-radius:16px;gap:5px;margin-top:24px;padding:24px;display:grid}.classroom-empty strong{color:var(--ink)}.classroom-list{grid-template-columns:minmax(0,1fr);gap:14px;margin:26px 0 0;padding:0;list-style:none;display:grid}.classroom-list>li{border:1px solid var(--line);background:#fffdf8;border-radius:18px 6px 18px 18px;min-width:0;padding:20px}.classroom-list>li[data-status=archived]{background:#fffaf3;border-style:dashed}.classroom-list>li>header{justify-content:space-between;align-items:start;gap:12px;display:flex}.classroom-list>li>header span,.classroom-code>span{color:var(--accent-deep);letter-spacing:.09em;text-transform:uppercase;font-size:.64rem;font-weight:850}.classroom-list h3{font-family:var(--display-font);letter-spacing:-.04em;margin:3px 0 0;font-size:1.45rem}.classroom-list>li>header>strong{color:var(--ink-soft);white-space:nowrap;font-size:.7rem}.classroom-code{border-left:3px solid var(--success);background:color-mix(in srgb, var(--success) 12%, #fff);grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;margin-top:18px;padding:14px;display:grid}.classroom-code>span{color:var(--success);grid-column:1/-1}.classroom-code output{overflow-wrap:anywhere;letter-spacing:.06em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1rem,2vw,1.28rem);font-weight:850}.classroom-code button,.classroom-actions button,.classroom-roster button{border:1px solid var(--line);min-height:38px;color:var(--ink);box-shadow:none;background:0 0;padding:7px 10px;font-size:.68rem}.classroom-actions{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.classroom-roster{border-top:1px solid var(--line);margin-top:18px;padding-top:15px}.classroom-roster h4,.classroom-roster p{margin:0}.classroom-roster h4{font-size:.76rem}.classroom-roster p{color:var(--ink-soft);margin-top:7px;font-size:.72rem}.classroom-roster ul{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.classroom-roster li{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-width:0;display:grid}.classroom-roster li span{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:750;overflow:hidden}.classroom-roster li small{color:var(--ink-soft);font-size:.64rem}.classroom-groups,.classroom-assignment-studio{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.classroom-groups>div:first-child,.classroom-assignment-studio>header{justify-content:space-between;align-items:start;gap:16px;display:flex}.classroom-groups h4,.classroom-groups p,.classroom-assignment-studio h4,.classroom-assignment-studio p{margin:0}.classroom-groups h4,.classroom-assignment-studio h4{font-family:var(--display-font);letter-spacing:-.03em;font-size:1.2rem}.classroom-groups p,.classroom-assignment-studio>p{color:var(--ink-soft);margin-top:5px;font-size:.72rem;line-height:1.5}.classroom-group-list,.classroom-assignment-list,.classroom-assignment-receipts ul{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.classroom-group-list li{border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(120px,.35fr) minmax(0,1fr);gap:10px;padding:10px 12px;font-size:.72rem;display:grid}.classroom-group-list span{color:var(--ink-soft)}.classroom-groups form,.classroom-assignment-studio form{grid-template-columns:minmax(110px,.25fr) minmax(0,1fr);align-items:center;gap:9px 12px;margin-top:14px;display:grid}.classroom-groups form>label,.classroom-assignment-studio form>label,.classroom-groups legend{font-size:.68rem;font-weight:800}.classroom-groups input[type=text],.classroom-groups form>input,.classroom-assignment-studio input,.classroom-assignment-studio select{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border-radius:9px;padding:8px 10px}.classroom-groups fieldset{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;grid-column:1/-1;gap:8px 16px;margin:0;padding:10px 12px;display:flex}.classroom-groups fieldset label{align-items:center;gap:6px;font-size:.72rem;display:inline-flex}.classroom-groups form>button,.classroom-assignment-studio form>button{grid-column:2;justify-self:start;min-height:42px}.classroom-assignment-studio>header span,.classroom-assignment-receipts li>span{color:var(--accent-deep);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:850}.classroom-assignment-studio code{color:var(--ink-soft);font-size:.62rem}.classroom-assignment-source{font-weight:750}.classroom-assignment-studio details{border:1px solid var(--line);border-radius:10px;margin-top:12px;padding:11px 13px;font-size:.72rem}.classroom-assignment-studio details ol{margin:10px 0 0;padding-left:20px}.classroom-assignment-studio details li+li{margin-top:7px}.classroom-assignment-studio details li span{color:var(--ink-soft);margin-top:2px;display:block}.classroom-assignment-list li{border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:9px;padding:12px;display:grid}.classroom-assignment-list li>div{gap:2px;min-width:0;display:grid}.classroom-assignment-list li span,.classroom-assignment-list li small{color:var(--ink-soft);font-size:.65rem}.classroom-assignment-list li>b{text-transform:uppercase;font-size:.62rem}.classroom-assignment-list button{border:1px solid var(--line);min-height:36px;color:var(--ink);box-shadow:none;background:0 0;padding:6px 9px;font-size:.66rem}.classroom-panel-message{color:var(--ink-soft);margin:18px 0 0;font-size:.76rem;font-weight:700}.classroom-join-screen{min-height:calc(100dvh - 112px);padding:clamp(28px,4vw,52px) clamp(2px,2vw,24px) 56px;animation:.52s cubic-bezier(.2,.8,.2,1) both classroom-slide}@keyframes classroom-slide{0%{transform:translateY(24px)}to{transform:translateY(0)}}.classroom-join-screen .screen-back{border:1px solid var(--line);min-height:42px;color:var(--ink);box-shadow:none;background:#ffffffa8;padding:8px 13px}.classroom-join-layout{grid-template-columns:minmax(0,.95fr) minmax(360px,.65fr);align-items:start;gap:clamp(28px,6vw,88px);display:grid}.classroom-join-layout>header h1{max-width:720px;font-family:var(--display-font);letter-spacing:-.075em;margin:0;font-size:clamp(3rem,6vw,5.8rem);line-height:.94}.classroom-join-layout>header>p:last-child{max-width:620px;color:var(--ink-soft);margin-top:24px;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.55}.classroom-join-card{box-shadow:var(--shadow);background:#fffdf8;border:1px solid #19221d24;border-radius:10px 28px 28px;padding:clamp(22px,3vw,34px)}.classroom-join-card form,.classroom-membership{gap:18px;display:grid}.classroom-join-field{gap:7px;display:grid}.classroom-join-card label{font-size:.78rem;font-weight:800}.classroom-join-card input{border:1px solid var(--line);width:100%;min-height:52px;color:var(--ink);font:inherit;background:#fff;border-radius:11px;padding:12px 13px}.classroom-join-field:first-of-type input{letter-spacing:.06em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800}.classroom-join-field small{color:var(--ink-soft);font-size:.68rem;font-weight:500}.classroom-join-card form>button{min-height:52px}.classroom-join-message{color:var(--accent-deep);margin:16px 0 0;font-size:.76rem;font-weight:700}.classroom-membership>span{color:var(--success);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:850}.classroom-membership>strong{font-family:var(--display-font);letter-spacing:-.04em;font-size:2rem}.classroom-membership>p{color:var(--ink-soft);margin:0}.classroom-next-activity{border-left:3px solid var(--accent);background:var(--panel);gap:5px;padding:16px;display:grid}.classroom-next-activity small{color:var(--accent-deep);letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:850}.classroom-next-activity b{font-size:.82rem;line-height:1.45}.classroom-assignment-receipts h2{font-family:var(--display-font);letter-spacing:-.035em;margin:0;font-size:1.35rem}.classroom-assignment-receipts li{border-left:3px solid var(--success);background:color-mix(in srgb, var(--success) 9%, #fff);gap:6px;padding:15px;display:grid}.classroom-assignment-receipts li>p,.classroom-assignment-receipts li>small{color:var(--ink-soft);margin:0;font-size:.7rem;line-height:1.45}.classroom-membership>button{color:var(--ink);border:1px solid var(--line);box-shadow:none;background:0 0}.teacher-brief,.teacher-draft-panel{background:#fffdf8e6;border:1px solid #19221d1f;min-width:0;padding:clamp(22px,3vw,38px)}.teacher-brief{border-radius:30px 10px 30px 30px}.teacher-draft-panel{min-height:0;box-shadow:var(--shadow);border-radius:10px 30px 30px}.teacher-brief label,.teacher-draft-panel label{color:var(--ink);gap:7px;margin-top:20px;font-size:.8rem;font-weight:750;display:grid}.teacher-brief :is(input,textarea,select),.teacher-draft-panel :is(input,textarea){border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fff;border-radius:11px;padding:12px 13px;font-weight:500}.teacher-brief textarea,.teacher-draft-panel textarea{resize:vertical;min-height:104px}.teacher-brief label small{color:var(--ink-soft);font-size:.7rem;font-weight:500}.teacher-mode-switch{border:0;grid-template-columns:repeat(3,1fr);gap:6px;margin:0 0 28px;padding:0;display:grid}.teacher-mode-switch legend{color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:.7rem;font-weight:800}.teacher-mode-switch button{border:1px solid var(--line);min-height:54px;color:var(--ink-soft);box-shadow:none;background:0 0;border-radius:10px;padding:9px 10px}.teacher-mode-switch button[data-active=true]{border-color:var(--ink);color:#fff;background:var(--ink)}.teacher-field-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.teacher-primary-action,.teacher-publish-action,.teacher-library-action,.teacher-fallback-action{width:100%;margin-top:26px;padding:12px 16px}.teacher-fallback-action,.teacher-library-action{border:1px solid var(--ink);color:var(--ink);box-shadow:none;background:0 0}.teacher-library-action{margin-top:12px}.teacher-message{color:var(--ink-soft);margin:16px 0 0;font-size:.78rem}.teacher-draft-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:6px;display:flex}.teacher-draft-heading p,.teacher-draft-heading span{letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:800}.teacher-draft-heading span{border:1px solid var(--line);color:var(--ink-soft);border-radius:99px;padding:5px 8px}.teacher-review-list{border-top:1px solid var(--line);background:0 0;grid-template-columns:1fr;gap:0;margin:28px 0 14px;padding:0;list-style:none;display:grid}.teacher-review-list li{border-bottom:1px solid var(--line);background:0 0;grid-template-columns:minmax(132px,.42fr) minmax(0,1fr);gap:18px;min-width:0;min-height:0;padding:12px 0;display:grid}.teacher-review-list li[data-status=pass] strong{color:var(--success)}.teacher-review-list li[data-status=warning] strong{color:#8c641e}.teacher-review-list li[data-status=blocked] strong{color:var(--danger)}.teacher-review-list strong,.teacher-review-list span{display:block}.teacher-review-list strong{letter-spacing:.08em;text-transform:uppercase;font-size:.68rem}.teacher-review-list span{color:var(--ink-soft);margin-top:0;font-size:.7rem;line-height:1.45}.teacher-draft-empty{flex-direction:column;justify-content:flex-end;align-items:flex-start;min-height:440px;display:flex}.teacher-draft-empty>span,.library-empty>span{color:var(--accent-soft);font-family:var(--display-font);letter-spacing:-.1em;font-size:clamp(6rem,15vw,13rem);font-weight:800;line-height:.72}.teacher-draft-empty h2,.library-empty h2{max-width:520px;font-family:var(--display-font);letter-spacing:-.05em;margin:22px 0 8px;font-size:clamp(1.7rem,4vw,3.2rem);line-height:1}.teacher-draft-empty p,.library-empty p{max-width:500px;color:var(--ink-soft);margin:0}.teacher-exercise-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.teacher-exercise-list li{border-bottom:1px solid var(--line);min-height:172px;animation:student-rise .44s calc(var(--library-index) * 70ms) cubic-bezier(.2, .8, .2, 1) both;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:clamp(20px,4vw,58px);padding:clamp(20px,3vw,34px) 0;display:grid}.teacher-exercise-index{color:var(--accent);font-family:var(--display-font);letter-spacing:-.08em;font-size:clamp(2.5rem,5vw,5.4rem);font-weight:800}.teacher-exercise-copy h2{font-family:var(--display-font);letter-spacing:-.055em;margin:12px 0 8px;font-size:clamp(1.65rem,3vw,2.8rem);line-height:1}.teacher-exercise-copy p,.teacher-exercise-copy small{color:var(--ink-soft);margin:0}.teacher-exercise-meta{flex-wrap:wrap;gap:7px;display:flex}.teacher-exercise-meta span{border:1px solid var(--line);letter-spacing:.04em;text-transform:uppercase;border-radius:99px;padding:4px 7px;font-size:.64rem;font-weight:750}.teacher-exercise-list button{min-width:180px;padding:12px 16px}.library-empty,.library-skeleton{border:1px solid var(--line);background:#fffdf8db;border-radius:30px 10px 30px 30px;min-height:420px;padding:clamp(28px,5vw,64px)}.teacher-learning-signals{background:#eff4eb;border:1px solid #19221d1f;border-radius:24px 8px 24px 24px;margin:0 0 clamp(24px,3vw,36px);padding:clamp(18px,2.5vw,28px)}.teacher-learning-signals>header{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);align-items:end;gap:24px;display:grid}.teacher-learning-signals .eyebrow{margin-bottom:7px}.teacher-learning-signals h2{max-width:none;font-family:var(--display-font);font-size:clamp(1.7rem,3vw,2.7rem);font-weight:800}.teacher-learning-signals>header>p{color:var(--ink-soft);margin:0;font-size:.78rem}.teacher-learning-signals>ol{background:0 0;border:0;gap:8px;margin:18px 0 0;padding:0;list-style:none;display:grid}.teacher-learning-signals li{background:#ffffffb8;border:1px solid #19221d1a;border-radius:12px;grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);align-items:center;gap:18px;min-height:0;padding:14px 16px;display:grid}.teacher-learning-signals li>div:first-child{gap:3px;display:grid}.teacher-learning-signals li>div:first-child span{color:var(--accent-deep);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.62rem;font-weight:800}.teacher-learning-signals dl{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0;display:grid}.teacher-learning-signals dl>div{border-left:1px solid var(--line);min-width:0;padding-left:8px}.teacher-learning-signals dt{color:var(--ink-soft);font-size:.58rem;line-height:1.25}.teacher-learning-signals dd{font-family:var(--display-font);margin:2px 0 0;font-size:.92rem;font-weight:800}.library-skeleton{align-content:center;gap:12px;display:grid}.library-skeleton span{background:var(--panel);border-radius:6px;width:min(100%,760px);height:24px;animation:1.1s ease-in-out infinite alternate library-pulse}.library-skeleton span:nth-child(2){width:min(72%,560px)}.library-skeleton span:nth-child(3){width:min(48%,360px)}@keyframes library-pulse{to{opacity:.42}}@media (max-width:980px){.hero-student-paths{grid-template-columns:repeat(2,minmax(0,1fr))}.classroom-join-link{grid-column:1/-1}.teacher-howto{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr)}.teacher-howto li:last-child{border-top:1px solid var(--line);border-left:0;grid-column:1/-1}.teacher-layout,.classroom-teacher-panel>header,.classroom-join-layout,.classroom-list{grid-template-columns:1fr}.teacher-draft-panel{min-height:0}.teacher-draft-empty{min-height:360px}.teacher-learning-signals>header,.teacher-learning-signals li{grid-template-columns:1fr}.teacher-exercise-list li{grid-template-columns:70px minmax(0,1fr)}.teacher-exercise-list button{grid-column:2;width:fit-content}}@media (max-width:640px){.header-actions{gap:5px}.teacher-access{min-height:38px;padding:6px 8px;font-size:.62rem}.hero-student-paths{grid-template-columns:1fr}.hero-student-paths .primary-link,.student-library-link,.classroom-join-link{width:100%;min-height:120px}.classroom-join-link{grid-column:auto}.teacher-screen,.teacher-library-screen{padding-top:28px}.teacher-screen-topbar{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:24px}.teacher-howto{grid-template-columns:1fr}.teacher-howto li,.teacher-howto li:last-child{border-top:0;border-left:0;grid-column:auto}.teacher-howto li+li,.teacher-howto li:last-child{border-top:1px solid var(--line)}.teacher-hero h1,.library-hero h1{font-size:clamp(2.8rem,14vw,4.6rem)}.teacher-brief,.teacher-draft-panel{padding:20px 16px}.teacher-field-grid,.teacher-mode-switch{grid-template-columns:1fr}.classroom-teacher-panel{padding:20px 16px}.classroom-panel-toolbar,.classroom-login>div,.classroom-panel-toolbar form>div{grid-template-columns:1fr}.classroom-signout{width:100%}.classroom-groups form,.classroom-assignment-studio form,.classroom-assignment-list li,.classroom-group-list li{grid-template-columns:1fr}.classroom-groups form>button,.classroom-assignment-studio form>button{grid-column:1;width:100%}.classroom-assignment-list li>small{overflow-wrap:anywhere}.classroom-join-layout{gap:24px}.classroom-join-layout>header h1{font-size:clamp(3rem,15vw,5rem)}.teacher-review-list li{grid-template-columns:1fr;gap:3px}.teacher-learning-signals dl{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-learning-signals dl>div:last-child{grid-column:1/-1}.teacher-exercise-list li{grid-template-columns:54px minmax(0,1fr);gap:14px;min-height:0}.teacher-exercise-list button{grid-column:1/-1;width:100%}.teacher-exercise-index{align-self:start;font-size:2.5rem}}@media (prefers-reduced-motion:reduce){.teacher-screen,.teacher-library-screen,.classroom-join-screen,.teacher-exercise-list li,.library-skeleton span{animation:none}}
