:root{--ink:#24324a;--muted:#64748b;--cream:#fff8e8;--paper:#fffdf8;--blue:#3675f4;--line:#e8dfcf;--pine:#f1b52b;--berry:#6970dc;--mango:#ed7b45}*{box-sizing:border-box}body{background:radial-gradient(circle at 95% 2%,#ffe5a9 0,transparent 25%),radial-gradient(circle at 5% 30%,#e7f0ff 0,transparent 28%),var(--cream);color:var(--ink);margin:0;font-family:Avenir Next,ui-rounded,system-ui,sans-serif}main{max-width:1160px;margin:auto;padding:42px 28px 88px}.wordmark{letter-spacing:-.08em;margin-bottom:28px;font-size:1.55rem;font-weight:950}.wordmark-bend{color:var(--mango);font-size:1.8em;line-height:.5;display:inline-block;transform:rotate(-13deg)}.wordmark span:last-child{color:var(--blue)}.eyebrow{color:#68809b;letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:900}h1{letter-spacing:-.075em;margin:0;font-size:clamp(3.1rem,8vw,6.2rem);font-weight:950;line-height:.9}.intro{max-width:560px;color:var(--muted);margin:24px 0 44px;font-size:1.15rem;line-height:1.55}.grid{grid-template-columns:1.15fr .85fr;gap:20px;display:grid}.card,.review,.engine{border:2px solid var(--line);background:var(--paper);border-radius:28px;padding:24px;box-shadow:0 9px #e5d9c6,0 17px 34px #49351c12}.card h2,.engine h2{letter-spacing:-.035em;margin:0 0 14px;font-size:1.45rem}textarea{resize:vertical;width:100%;min-height:160px;color:var(--ink);font:inherit;background:#fff;border:2px solid #e7dfd2;border-radius:19px;outline:none;padding:16px;line-height:1.5;transition:border .18s,box-shadow .18s}textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px #dbeafe}.safe,.warning{margin:14px 0 0;font-size:.9rem;font-weight:700;line-height:1.4}.safe{color:#17875a}.warning{color:#a64b18}.profiles{gap:10px;display:grid}.profile-option{cursor:pointer;display:block}.profile-option article{background:#fff;border:2px solid #e7dfd2;border-radius:18px;padding:13px 14px 13px 45px;transition:transform .16s,border .16s,box-shadow .16s;position:relative}.profile-option:hover article{transform:translateY(-2px);box-shadow:0 5px #eee4d5}.profile-option input{opacity:0;position:absolute}.profile-option h3{margin:0 0 4px;font-size:1.08rem}.profile-option p,.profile-option small{color:var(--muted);margin:0;line-height:1.35;display:block}.profile-option small{margin-top:5px}.profile-dot{background:#dbe3ef;border:3px solid #fff;border-radius:50%;width:17px;height:17px;position:absolute;top:18px;left:15px;box-shadow:0 0 0 2px #b5c1d1}.profile-option.chosen article{border-color:currentColor}.profile-option.chosen .profile-dot{background:currentColor}.short-concrete-loops{color:#c68000}.audio-first{color:#5663d8}.math-language-support{color:#d75a25}.engine{margin-top:22px}.engine>div>p:not(.eyebrow){color:var(--muted)}button{font:inherit;cursor:pointer}.generate,.approve,.start-lesson{background:var(--blue);color:#fff;border:0;border-radius:16px;padding:14px 18px;font-weight:900;transition:transform .12s,box-shadow .12s;box-shadow:0 5px #2053bb}.generate:hover,.approve:hover,.start-lesson:hover{transform:translateY(-2px);box-shadow:0 7px #2053bb}.generate:active,.approve:active,.start-lesson:active{transform:translateY(3px);box-shadow:0 2px #2053bb}.generate:disabled{opacity:.55;cursor:wait}.gallery-picker{margin:18px 0 0;font-size:.86rem;font-weight:900;display:block}.gallery-picker select{border:2px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;max-width:420px;margin-left:8px;padding:8px}.timeline{gap:10px;margin-top:22px;display:grid}.timeline div{border-left:7px solid var(--blue);background:#f8f4eb;border-radius:15px;gap:3px;padding:11px 14px;display:grid}.timeline .failed{border-color:var(--mango)}.timeline span,.token-count{color:var(--muted);font-size:.9rem}.review-actions{gap:10px;display:flex}.review-actions button:not(.approve){border:2px solid var(--line);background:#fff;border-radius:16px;padding:12px 15px;font-weight:900}.review-actions .approve{background:#26a269;box-shadow:0 5px #147444}.generated-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px;display:grid}.generated-frame{border:2px solid var(--line);background:#fff;border-radius:22px;transition:transform .16s,box-shadow .16s;overflow:hidden;box-shadow:0 6px #e9decb}.generated-frame:hover{transform:translateY(-3px);box-shadow:0 10px #e9decb}.generated-frame p{background:#fff5dc;justify-content:space-between;margin:0;padding:11px 13px;font-size:.84rem;display:flex}.generated-frame span{color:var(--muted)}.generated-frame.short-concrete-loops{border-color:#efbd39}.generated-frame.short-concrete-loops p{background:#fff1bd}.generated-frame.audio-first{border-color:#777fe6}.generated-frame.audio-first p{background:#e9ebff}.generated-frame.math-language-support{border-color:#ef8a5c}.generated-frame.math-language-support p{background:#ffe2d5}.generated-frame iframe{border:0;width:100%;height:440px;display:block}.start-lesson{width:calc(100% - 20px);margin:0 10px 11px}.generated-frame.short-concrete-loops .start-lesson{background:#c68100;box-shadow:0 5px #865900}.generated-frame.audio-first .start-lesson{background:#5966da;box-shadow:0 5px #3c459c}.generated-frame.math-language-support .start-lesson{background:#db6431;box-shadow:0 5px #9e401e}.lesson-fullscreen{z-index:20;background:#14213d;padding:18px;position:fixed;inset:0}.lesson-fullscreen iframe{background:#fff;border:0;border-radius:22px;width:100%;height:100%}.exit-lesson{z-index:1;color:var(--ink);background:#fff;border:0;border-radius:14px;padding:10px 14px;font-weight:900;position:absolute;top:30px;right:32px}.debug{color:var(--muted);margin-top:26px}.review{grid-template-columns:.78fr 1.22fr;align-items:start;gap:24px;margin-top:12px;display:grid}.player{border:2px solid var(--line);background:#fff;border-radius:18px;overflow:hidden}.player-bar{background:#fff5dc;justify-content:space-between;padding:10px 14px;font-size:.76rem;font-weight:800;display:flex}.player iframe{border:0;width:100%;height:430px;display:block}@media (max-width:780px){main{padding:32px 18px}.grid,.review,.generated-grid{grid-template-columns:1fr}.player iframe,.generated-frame iframe{height:455px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.friendly-progress{grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0;display:grid}.friendly-progress article{background:#fffaf0;border:2px solid #e8dfcf;border-radius:18px;gap:7px;min-height:92px;padding:14px;display:grid}.friendly-progress b{font-size:.95rem}.friendly-progress span{color:#64748b;font-size:.8rem}.friendly-progress .current{background:#e9f0ff;border-color:#3675f4;animation:1.6s ease-in-out infinite bend-pulse;box-shadow:0 5px #b9cffb}.friendly-progress .complete{background:#edfbf1;border-color:#77bd91}.technical-run{color:#64748b;margin-top:22px}.technical-run summary{cursor:pointer;font-weight:850}.lesson-fullscreen{overflow:hidden}.lesson-fullscreen iframe{height:calc(100vh - 36px)}@keyframes bend-pulse{50%{transform:translateY(-3px)}}@media (max-width:780px){.friendly-progress{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){.friendly-progress .current{animation:none}}.past-lessons{border-top:2px dashed #e8dfcf;margin-top:34px;padding-top:22px}.past-lessons h3{margin:0;font-size:1.1rem}.past-lessons .gallery-picker{margin-top:12px;display:block}.past-lessons select{color:#24324a;width:min(100%,520px);font:inherit;background:#fff;border:2px solid #e8dfcf;border-radius:12px;margin-top:8px;padding:10px;display:block}.gallery-page{gap:34px;display:grid}.gallery-lesson{background:#fffdf8;border:2px solid #e8dfcf;border-radius:28px;padding:26px;box-shadow:0 9px #e5d9c6}.gallery-lesson h2{letter-spacing:-.05em;margin:0;font-size:clamp(1.7rem,4vw,2.4rem)}.gallery-lesson>p:not(.eyebrow){color:#64748b;margin:10px 0 0}.local-note{color:#745000;background:#fff1bd;border-radius:15px;max-width:620px;padding:12px 16px;font-weight:750;display:inline-block}.profile-option{color:var(--profile-color,#5663d8)}.profile-prep{background:#fffaf0;border:2px dashed #cfc2ac;border-radius:20px;margin-top:15px;padding:18px}.profile-prep-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.profile-prep h3{margin:0;font-size:1.2rem}.add-profile{color:#715a37;cursor:pointer;background:#fffaf0;border:2px dashed #b6a486;border-radius:16px;width:100%;margin-top:14px;padding:13px;font-weight:900}.add-profile:hover{background:#fff1bd}.close-profile{color:#64748b;cursor:pointer;background:0 0;border:0;font-size:1.8rem;line-height:1}.profile-name,.profile-brief{gap:7px;margin-top:15px;font-weight:850;display:grid}.profile-name input,.chip-editor input{min-width:0;font:inherit;color:#24324a;background:#fff;border:2px solid #e7dfd2;border-radius:12px;padding:10px}.profile-name small{color:#64748b;font-size:.8rem;font-weight:650}.profile-brief textarea{min-height:120px}.privacy-note{color:#17875a;margin:12px 0;font-size:.87rem;font-weight:800}.research-status{color:#5663d8;align-items:center;gap:8px;margin:14px 0 0;font-size:.9rem;font-weight:850;display:flex}.research-status span{border:3px solid #c5c9ff;border-top-color:#5663d8;border-radius:50%;width:13px;height:13px;animation:.8s linear infinite spin}.proposal-card{background:#f7f7ff;border:2px solid #6871dc;border-radius:18px;gap:14px;margin-top:18px;padding:18px;display:grid}.proposal-card h3{font-size:1.45rem}.chip-editor{gap:8px;display:grid}.chips{flex-wrap:wrap;gap:7px;display:flex}.edit-chip{color:#344092;background:#e9eaff;border-radius:999px;align-items:center;gap:6px;padding:7px 8px 7px 11px;font-size:.88rem;font-weight:800;display:inline-flex}.edit-chip button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:1.1rem}.chips input{flex:130px}.references{background:#fff;border-radius:14px;gap:6px;padding:14px;display:grid}.references p{color:#64748b;margin:0;font-size:.82rem}.references a{color:#344092;gap:2px;font-weight:800;text-decoration:underline;display:grid}.references small{color:#64748b;font-weight:650;text-decoration:none}@keyframes spin{to{transform:rotate(360deg)}}.grid{align-items:stretch;margin-top:28px}.card{position:relative}.profile-explainer{color:#64748b;margin:-5px 0 16px;font-size:.9rem;line-height:1.4}.why-works{color:#596a7f;margin-top:10px;font-size:.82rem}.why-works summary{cursor:pointer;color:inherit;font-weight:850}.why-works span{padding-top:7px;line-height:1.4;display:block}.science-section{background:#f7f4ff;border:2px solid #e8dfcf;border-radius:30px;margin-top:54px;padding:clamp(24px,4vw,42px);box-shadow:0 9px #e4def4}.science-section h2{letter-spacing:-.055em;max-width:680px;margin:0 0 18px;font-size:clamp(1.8rem,4vw,2.8rem)}.science-section p{color:#4d5b71;max-width:800px;line-height:1.65}.science-section a{color:#4151bd;font-weight:850}.generated-frame{border-color:var(--profile-color,#e8dfcf)}.generated-frame p{background:color-mix(in srgb,var(--profile-color,#f1b52b) 16%,#fff)}.generated-frame .start-lesson{background:var(--profile-color,#3675f4);box-shadow:0 5px 0 color-mix(in srgb,var(--profile-color,#3675f4) 70%,#24324a)}.profile-more{color:#64748b;margin-top:8px;font-size:.82rem}.profile-more summary{cursor:pointer;font-weight:850}.profile-more span{padding-top:7px;line-height:1.4;display:block}.edit-chip{max-width:100%;position:relative}.edit-chip summary{cursor:pointer}.edit-chip span{min-width:220px;max-width:440px;padding-top:8px;line-height:1.4;display:block}.edit-chip button{position:absolute;top:2px;right:3px}.profile-modal{z-index:50;background:#14213daa;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.profile-modal .profile-prep{background:#fffdf8;width:min(680px,100%);max-height:calc(100vh - 36px);overflow:auto;box-shadow:0 20px 60px #14213d55}.profile-name select{color:#24324a;width:100%;font:inherit;background:#fff;border:2px solid #e7dfd2;border-radius:12px;padding:10px}h1{font-size:clamp(2.7rem,6vw,5rem)}.class-insights{background:#fffdf8;border:2px solid #e8dfcf;border-radius:26px;margin-top:26px;padding:24px}.insight-privacy{color:#64748b}.insight-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.insight-card{border:2px solid var(--profile-color);border-radius:18px;padding:16px}.insight-card h3{margin:0}.insight-bar{background:#eee7da;border-radius:99px;height:12px;overflow:hidden}.insight-bar i{background:var(--profile-color);height:100%;display:block}.step-timeline{gap:6px;display:flex}.step-timeline span{background:#eaf4ee;border-radius:10px;padding:7px;font-size:.75rem;display:grid}.step-timeline .retry{background:#fff0c8}.step-timeline .stuck{background:#f2e9e9}.step-timeline small{font-size:.65rem}.insight-copy{line-height:1.45}.aggregate{background:#f7f4ff;border-radius:14px;gap:18px;margin-top:16px;padding:12px;display:flex}@media (max-width:780px){.insight-grid{grid-template-columns:1fr}}.profile-option .profile-summary{-webkit-line-clamp:1;-webkit-box-orient:vertical;min-height:1.4em;display:-webkit-box;overflow:hidden}.generated-grid+.approve{margin-top:20px}.evidence-links{flex-wrap:wrap;gap:7px;padding-top:9px;display:flex}.evidence-links a{color:#4151bd;font-size:.78rem;font-weight:850;text-decoration:underline}@media (min-width:900px){.grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:24px}.profile-picker .profiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.profile-picker .profile-option article{min-height:194px}}.profile-picker .profiles{align-items:stretch;gap:14px}.profile-picker .profile-option{height:100%}.profile-picker .profile-option article{flex-direction:column;height:100%;padding-right:12px;display:flex}.profile-picker .profile-summary{min-height:2.8em;font-size:.9rem}.profile-picker .why-works{margin-top:auto}.profile-picker .profile-more{min-height:1.45em}@media (max-width:1080px) and (min-width:781px){.profile-picker .profiles{grid-template-columns:repeat(2,minmax(0,1fr))}}main>header{max-width:700px;padding:8px 0 4px}main>header .wordmark{color:#33435c;letter-spacing:-.055em;align-items:baseline;margin-bottom:22px;font-size:1.18rem;font-weight:760;display:inline-flex}main>header .wordmark-bend{color:#e47848;margin-right:-.015em;font-size:1.2em;line-height:1;transform:rotate(-10deg)translateY(-1px)}main>header .wordmark span:last-child{color:#5d70bd;font-weight:820}main>header .eyebrow{color:#78889a;letter-spacing:.15em;margin-bottom:12px;font-size:.66rem;font-weight:800}main>header h1{letter-spacing:-.065em;max-width:10.5ch;font-size:clamp(2.4rem,5.25vw,4.55rem);font-weight:760;line-height:.98}main>header .intro{color:#66758b;max-width:48ch;margin:18px 0 36px;font-size:1.04rem;line-height:1.58}@media (max-width:780px){main>header h1{font-size:clamp(2.3rem,11vw,3.3rem)}main>header .wordmark{margin-bottom:18px}}.generation-retry{color:#75420b;background:#fff6db;border:2px solid #e8b965;border-radius:18px;gap:8px;margin-top:18px;padding:16px;display:grid}.generation-retry span{color:#7f6241}.generation-retry .approve{background:#c68100;justify-self:start;box-shadow:0 5px #865900}.demo-login{color:#fff;font:inherit;cursor:pointer;background:#24324a;border:0;border-radius:16px;padding:14px 18px;font-weight:900;box-shadow:0 5px #14213d}.demo-login small{font:inherit;opacity:.8;font-weight:700}.demo-login:hover{transform:translateY(-2px);box-shadow:0 7px #14213d}.demo-login-modal{z-index:60;background:#14213daa;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.demo-login-modal form{background:#fffdf8;border:2px solid #e8dfcf;border-radius:26px;gap:14px;width:min(420px,100%);padding:28px;display:grid;position:relative;box-shadow:0 20px 60px #14213d55}.demo-login-modal h2{letter-spacing:-.05em;margin:0;font-size:2rem}.demo-login-modal p:not(.eyebrow){color:#64748b;margin:0;line-height:1.5}.demo-login-modal label{color:#34435a;gap:7px;font-weight:850;display:grid}.demo-login-modal input{font:inherit;border:2px solid #e7dfd2;border-radius:12px;padding:11px}.demo-login-modal .approve{justify-self:start}.gallery-hero{max-width:720px}.generated-frame.short-concrete-loops{--profile-color:#c68000}.generated-frame.audio-first{--profile-color:#5663d8}.generated-frame.math-language-support{--profile-color:#d75a25}.gallery-intro>p:not(.eyebrow){color:#64748b;max-width:540px;margin:15px 0 0;font-size:1.02rem;line-height:1.55}.route-card-head{background:color-mix(in srgb,var(--profile-color,#f1b52b) 16%,#fff);gap:8px;padding:12px 13px 11px;display:grid}.route-card-head>div{justify-content:space-between;gap:10px;font-size:.84rem;display:flex}.route-card-head span{color:#64748b}.route-tags{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.route-tags li{border:1px solid color-mix(in srgb,var(--profile-color,#5663d8) 45%,#fff);color:#4c5b70;background:#fffdf8;border-radius:99px;padding:3px 7px;font-size:.67rem;font-weight:780;line-height:1.2}.live-generation-status{color:#5663d8;align-items:center;gap:9px;margin:14px 0 0;font-weight:800;display:flex}.live-generation-status span{border:3px solid #c5c9ff;border-top-color:#5663d8;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin}.live-generation-status b{color:#7c8aa0;font-size:.85rem;font-weight:700}@media (min-width:900px){.grid{grid-template-columns:1fr;gap:24px}.lesson-card textarea{min-height:132px}.profile-picker .profiles{grid-template-columns:1fr;gap:12px}.profile-picker .profile-option article{text-align:left;grid-template-columns:240px minmax(0,1fr) 220px;align-items:center;column-gap:12px;min-height:92px;display:grid}.profile-picker .profile-option h3{grid-area:1/1}.profile-picker .profile-option .profile-summary{text-align:left;flex-wrap:wrap;grid-area:1/2;align-items:center;gap:6px;min-height:0;display:flex}.profile-picker .support-pill{background:color-mix(in srgb, var(--profile-color) 11%, #fff);color:color-mix(in srgb, var(--profile-color) 70%, #24324a);border-radius:999px;padding:5px 9px;font-size:.8rem;font-weight:800;line-height:1.15}.profile-picker .profile-option .profile-more,.profile-picker .profile-option .why-works{grid-column:3;align-self:start;margin-top:0}.profile-picker .profile-option .profile-more{grid-row:1}.profile-picker .profile-option .why-works{grid-row:2}.profile-picker .profile-option .profile-more{min-height:0}}.password-field{align-items:stretch;gap:12px;display:flex}.password-field input{flex:1;min-width:0}.password-field button{color:#34435a;min-width:74px;font:inherit;cursor:pointer;background:#f4f7fb;border:2px solid #c9d2df;border-radius:12px;padding:0 14px;font-weight:850;transition:transform .12s,background .12s}.password-field button:hover{background:#e8edf6;transform:translateY(-1px)}.delete-profile{color:#9b4b2b;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;justify-self:start;margin-top:8px;padding:4px 0;font-size:.78rem;font-weight:850;text-decoration:underline}.delete-profile:hover{color:#7d2e18}@media (min-width:781px){.profile-picker .delete-profile{grid-area:3/3;margin-top:0}}.landing-shell{max-width:1200px;padding-top:28px}.landing-hero{flex-direction:column;justify-content:center;align-items:flex-start;max-width:none;min-height:calc(100vh - 116px);padding:clamp(52px,10vw,128px) 4vw;display:flex}.landing-hero .wordmark{margin:0 0 42px}.landing-hero h1{letter-spacing:-.078em;max-width:12ch;font-size:clamp(3.4rem,8vw,6.6rem);font-weight:760;line-height:.91}.landing-hero>p{color:#64748b;max-width:670px;margin:30px 0 0;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.55}.landing-actions{align-items:center;gap:25px;margin-top:38px;display:flex}.landing-actions .demo-login{border-radius:17px;padding:17px 23px;font-size:1.03rem}.landing-actions a{color:#41516b;border-bottom:1px solid #9da9b7;padding:8px 0;font-weight:800;text-decoration:none}.landing-actions a:hover{color:#24324a;border-color:#24324a}.landing-actions a span{padding-left:5px}.how-it-works{border-top:1px solid #dfd6c6;border-bottom:1px solid #dfd6c6;margin:28px 4vw 92px;padding:clamp(28px,5vw,54px)}.how-it-works h2,.gallery-intro h2{letter-spacing:-.06em;max-width:620px;margin:0;font-size:clamp(2rem,4vw,3.35rem);line-height:1.02}.how-it-works ol{counter-reset:steps;grid-template-columns:repeat(3,1fr);gap:28px;margin:42px 0 0;padding:0;list-style:none;display:grid}.how-it-works li{color:#64748b;gap:8px;line-height:1.45;display:grid}.how-it-works li:before{counter-increment:steps;content:"0" counter(steps);color:#8a9aad;letter-spacing:.12em;font-size:.75rem;font-weight:900}.how-it-works b{color:#24324a;font-size:1.02rem}.gallery-page{gap:34px;margin:0 4vw}.gallery-intro{margin:0 0 12px}.gallery-intro .eyebrow{margin-bottom:12px}.landing-shell .science-section{margin:92px 4vw 0}.landing-shell .gallery-lesson{padding:30px}.landing-shell .generated-grid{margin-top:26px}@media (max-width:780px){.landing-shell{padding:0 18px 64px}.landing-hero{min-height:calc(100svh - 28px);padding:64px 4px}.landing-hero .wordmark{margin-bottom:32px}.landing-hero h1{font-size:clamp(3.1rem,14vw,4.6rem)}.landing-actions{flex-direction:column;align-items:flex-start;gap:20px;margin-top:32px}.how-it-works,.gallery-page,.landing-shell .science-section{margin-left:4px;margin-right:4px}.how-it-works{margin-top:12px;margin-bottom:64px}.how-it-works ol{grid-template-columns:1fr;gap:24px;margin-top:32px}.landing-shell .gallery-lesson{padding:20px}}
