@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Montserrat:wght@700;800&display=swap";:root{color:#20212a;font-synthesis:none;text-rendering:optimizelegibility;--purple:#6622cf;--purple-soft:#f2ebff;--cyan:#00ccfe;--yellow:#ffd24c;--green:#2cc970;--ink:#20212a;--muted:#777986;--line:#e8e6ec;--surface:#fff;--shadow:0 28px 80px #3d235c1c;background:#f8f5fb;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{min-height:100dvh;overflow-x:hidden}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.tutor-page{background:radial-gradient(circle at 3% 96%,#ffd24c33,#0000 27%),radial-gradient(circle at 96% 8%,#00ccfe24,#0000 27%),linear-gradient(135deg,#fbf5f8 0%,#f6f4ff 56%,#f2faff 100%);place-items:center;height:100dvh;padding:clamp(14px,3.2vw,42px);display:grid;overflow:hidden}.public-site{color:#25212d;background:radial-gradient(circle at 86% 16%,#00ccfe21,#0000 24%),radial-gradient(circle at 4% 96%,#ffd24c33,#0000 25%),linear-gradient(145deg,#fffafb 0%,#f9f7ff 58%,#f2fbff 100%);min-height:100dvh;overflow:hidden}.public-nav{justify-content:space-between;align-items:center;width:min(1220px,100% - 48px);height:84px;margin:0 auto;display:flex}.public-brand{color:#292431;align-items:center;gap:12px;font-family:Montserrat,Inter,sans-serif;font-size:18px;font-weight:800;text-decoration:none;display:inline-flex}.public-brand b{color:var(--purple)}.brand-mark{color:#fff;background:linear-gradient(135deg,var(--purple),#8e58ea);border-radius:12px 16px;place-items:center;width:38px;height:38px;display:grid;transform:rotate(45deg);box-shadow:0 8px 22px #6622cf3b}.brand-mark>span{font-size:16px;transform:rotate(-45deg)}.brand-mark.small{border-radius:9px 12px;width:30px;height:30px}.brand-mark.small>span{font-size:12px}.kody-character{-webkit-user-select:none;user-select:none;flex:none;display:block;position:relative}.kody-character img{object-fit:contain;pointer-events:none;width:100%;height:100%;display:block}.kody-character-avatar{background:linear-gradient(145deg,#f4edff,#e8faff);border:1px solid #6622cf1f;border-radius:15px;width:44px;height:44px;overflow:hidden;box-shadow:0 8px 20px #6622cf26}.kody-character-avatar img{width:78px;max-width:none;height:auto;position:absolute;top:2px;left:50%;transform:translate(-50%)}.kody-character-hero,.kody-character-celebration{filter:drop-shadow(0 18px 20px #431b7533);width:132px;height:182px}.public-nav-actions{align-items:center;gap:28px;display:flex}.nav-link,.nav-login{color:#68636e;font-size:13px;font-weight:700;text-decoration:none}.nav-login{color:#3b3542;text-align:center;background:#ffffffb3;border:1px solid #dcd6e4;border-radius:999px;min-width:94px;padding:11px 18px}.landing-hero{grid-template-columns:minmax(400px,.87fr) minmax(530px,1.13fr);align-items:center;gap:clamp(42px,6vw,90px);width:min(1220px,100% - 48px);min-height:calc(100dvh - 170px);margin:0 auto;padding:66px 0 78px;display:grid}.hero-copy{z-index:2;position:relative}.eyebrow{color:#675d70;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font-size:11px;font-weight:800;display:inline-flex}.eyebrow i{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #2cc9701f}.hero-copy h1{letter-spacing:-.045em;margin:20px 0;font-family:Montserrat,Inter,sans-serif;font-size:clamp(42px,5vw,68px);line-height:1.02}.hero-copy h1 em{color:var(--purple);font-style:normal}.hero-lead{color:#6a6570;max-width:560px;margin:0;font-size:17px;line-height:1.65}.hero-signup{margin-top:34px}.hero-signup>label{color:#4f4857;margin:0 0 9px 3px;font-size:12px;font-weight:800;display:block}.phone-control{background:#ffffffe6;border:1px solid #ddd7e4;border-radius:17px;align-items:center;max-width:570px;min-height:62px;padding:6px 6px 6px 15px;display:flex;box-shadow:0 15px 40px #33234514}.phone-control>span{color:#4b4551;white-space:nowrap;border-right:1px solid #e6e1e9;padding-right:13px;font-size:13px;font-weight:700}.phone-control input{color:#25212d;background:0 0;border:0;outline:0;flex:1;min-width:0;padding:0 14px;font-size:15px}.phone-control input::placeholder{color:#aaa4b0}.phone-control button{color:#fff;background:linear-gradient(135deg,var(--purple),#7c3fe0);cursor:pointer;border:0;border-radius:12px;min-height:49px;padding:0 19px;font-size:13px;font-weight:800;box-shadow:0 8px 20px #6622cf38}.phone-control button span{margin-left:8px}.hero-signup small{color:#85808b;margin:11px 0 0 3px;font-size:11px;display:block}.hero-signup small b{color:var(--green)}.hero-product{perspective:1200px;min-width:0;position:relative}.hero-product>.kody-character-hero{z-index:3;width:145px;height:200px;position:absolute;bottom:-38px;left:-72px;transform:rotate(-4deg)}.preview-window{background:#fff;border:1px solid #43355317;border-radius:24px;overflow:hidden;transform:rotateY(-3deg)rotateX(1deg);box-shadow:0 35px 80px #442b5f26}.preview-top{color:#8b8790;border-bottom:1px solid #f0edf2;grid-template-columns:28px 1fr 28px;align-items:center;height:45px;padding:0 16px;font-size:15px;display:grid}.preview-top i{background:#ece9ee;border-radius:99px;justify-self:center;width:54%;height:5px}.preview-top i b{border-radius:inherit;background:var(--green);width:37%;height:100%;display:block}.preview-body{grid-template-columns:31% 69%;height:425px;display:grid}.preview-chat{background:#fcfbfd;border-right:1px solid #ece9ee;padding:20px 14px}.preview-kody{align-items:center;gap:9px;font-size:10px;display:flex}.preview-kody .kody-character-avatar{border-radius:10px;width:30px;height:30px}.preview-kody .kody-character-avatar img{width:52px}.preview-chat>p{color:#514b56;background:#fff;border:1px solid #e9e5ec;border-radius:13px 13px 13px 4px;margin:24px 0 5px;padding:12px;font-size:10px;line-height:1.5}.preview-chat>button{color:#837d88;background:0 0;border:0;padding:5px;font-size:8px;font-weight:700}.preview-thinking{color:#98929d;align-items:center;gap:4px;margin-top:125px;font-size:8px;display:flex}.preview-thinking i{background:#9f74e7;border-radius:50%;width:4px;height:4px}.preview-activity{flex-direction:column;align-items:center;padding:28px 28px 18px;display:flex}.preview-activity>span{color:var(--purple);letter-spacing:.12em;font-size:7px;font-weight:800}.preview-activity h2{margin:6px 0 5px;font-family:Montserrat,Inter,sans-serif;font-size:17px}.preview-activity .fraction-stage{flex:1;gap:9px;width:100%}.preview-activity .fraction-visual{width:185px}.preview-activity .fraction-controls{gap:5px}.preview-activity .fraction-controls button{border-radius:8px;width:30px;height:30px;font-size:9px}.preview-check{color:#25202c;background:var(--yellow);border:0;border-radius:10px;width:52%;min-height:34px;font-size:9px;font-weight:800}.floating-note{color:#4c4652;background:#fffffff2;border:1px solid #5c4a6d14;border-radius:12px;padding:11px 15px;font-size:10px;font-weight:800;position:absolute;box-shadow:0 13px 35px #3e2a521f}.note-one{top:44px;right:-18px}.note-two{bottom:40px;left:-28px}.trust-strip{border-top:1px solid #4f425b1f;grid-template-columns:repeat(3,1fr);width:min(1050px,100% - 48px);margin:-20px auto 50px;padding:24px 0;display:grid}.trust-strip article{border-right:1px solid #4f425b1a;gap:14px;padding:0 30px;display:flex}.trust-strip article:last-child{border:0}.trust-strip article>span{color:#b194e2;font-family:Montserrat,sans-serif;font-size:11px;font-weight:800}.trust-strip b{font-size:13px}.trust-strip p{color:#817b86;margin:4px 0 0;font-size:11px}.access-page{background:radial-gradient(circle at 80% 15%,#00ccfe21,#0000 25%),radial-gradient(circle at 12% 88%,#ffd24c2e,#0000 24%),#faf7fc;grid-template-rows:auto 1fr auto;place-items:center;min-height:100dvh;padding:30px;display:grid}.access-brand{justify-self:start}.access-card{text-align:center;background:#fffffff0;border:1px solid #4a3b5a17;border-radius:25px;width:min(440px,100%);padding:38px;box-shadow:0 28px 70px #3e28551f}.access-card>.kody-character-avatar{border-radius:22px;width:68px;height:68px;margin:0 auto 18px}.access-card>.kody-character-avatar img{width:112px;top:3px}.access-icon{color:#fff;background:var(--purple);border-radius:15px;place-items:center;width:48px;height:48px;margin:0 auto 18px;display:grid;box-shadow:0 10px 24px #6622cf38}.access-step{letter-spacing:.13em;font-weight:800;color:var(--purple)!important;margin:0 0 8px!important;font-size:9px!important}.access-card h1{letter-spacing:-.03em;margin:0;font-family:Montserrat,Inter,sans-serif;font-size:28px}.access-card>p{color:#76717b;max-width:330px;margin:12px auto 25px;font-size:13px;line-height:1.55}.access-card form{text-align:left}.access-card label{color:#4f4856;margin:0 0 8px 2px;font-size:11px;font-weight:800;display:block}.access-phone{background:#fff;border:1px solid #ded8e4;border-radius:14px;align-items:center;height:54px;display:flex}.access-phone span{border-right:1px solid #e7e2ea;padding:0 13px;font-size:13px;font-weight:700}.access-phone input{background:0 0;border:0;outline:0;flex:1;min-width:0;padding:0 13px;font-size:15px}.access-card form>button{color:#fff;background:linear-gradient(135deg,var(--purple),#7e42dd);cursor:pointer;border:0;border-radius:14px;width:100%;min-height:52px;margin-top:13px;font-size:13px;font-weight:800;box-shadow:0 10px 24px #6622cf33}.access-card form>button:disabled,.billing-button:disabled{opacity:.48;cursor:default;box-shadow:none}.access-card form>.text-action{color:#746d7b;min-height:36px;box-shadow:none;background:0 0;margin-top:6px}.otp-input{color:#2d2733;text-align:center;letter-spacing:.3em;background:#fff;border:1px solid #ded8e4;border-radius:14px;outline:0;width:100%;height:60px;padding:0 14px;font-family:Montserrat,Inter,sans-serif;font-size:25px;font-weight:800}.otp-input:focus,.access-phone:focus-within{border-color:#ae8cde;box-shadow:0 0 0 4px #6622cf14}.development-code{text-align:center;background:#f5f1fb;border-radius:8px;padding:7px;color:#635b69!important;margin:8px 0 0!important;font-size:10px!important}.access-error{background:#fff0ed;border-radius:10px;padding:9px 11px;color:#9c3f39!important;margin:13px 0 0!important;font-size:10px!important}.access-card>small{color:#96909a;margin-top:17px;font-size:9px;line-height:1.5;display:block}.access-help{color:#827c88;font-size:11px}.access-help a{color:var(--purple);font-weight:700}.subscription-loading{color:#77717d;font-size:13px}.subscription-card .access-icon{color:#3e2d05;background:var(--yellow)}.billing-note{background:#f5f2f8;border-radius:10px;padding:9px;margin:0 0 13px!important;font-size:10px!important}.billing-note.success{background:#eaf9f0;color:#16643c!important}.continue-tutor,.billing-button{cursor:pointer;border:0;border-radius:14px;place-items:center;width:100%;min-height:52px;margin-top:9px;font-size:13px;font-weight:800;text-decoration:none;display:grid}.continue-tutor{color:#25202c;background:var(--yellow)}.billing-button{color:#fff;background:linear-gradient(135deg,var(--purple),#7e42dd);box-shadow:0 10px 24px #6622cf33}.logout-link{color:#7e7784;cursor:pointer;background:0 0;border:0;font-size:11px;text-decoration:underline}@media (width<=980px){.landing-hero{text-align:center;grid-template-columns:1fr;padding-top:42px}.hero-lead,.phone-control{margin-inline:auto}.hero-signup>label,.hero-signup small{text-align:left;max-width:570px;margin-inline:auto}.hero-product{text-align:left;width:min(680px,100%);margin:0 auto}}@media (width<=620px){.public-nav{width:calc(100% - 30px);height:70px}.public-brand{font-size:15px}.public-nav-actions{gap:9px}.nav-link{display:none}.nav-login{min-width:78px;padding:9px 14px}.landing-hero{gap:55px;width:calc(100% - 30px);min-height:0;padding:40px 0 65px}.hero-copy h1{margin-top:17px;font-size:clamp(37px,12vw,52px)}.hero-lead{font-size:15px}.phone-control{flex-wrap:wrap;gap:8px;padding:10px}.phone-control>span{width:88px}.phone-control input{width:calc(100% - 96px);min-height:40px}.phone-control button{width:100%}.preview-body{grid-template-columns:1fr;height:375px}.hero-product>.kody-character-hero,.preview-chat{display:none}.preview-activity{padding:22px 15px 14px}.preview-activity .fraction-visual{width:175px}.floating-note{font-size:9px}.note-one{right:-5px}.note-two{bottom:22px;left:-5px}.trust-strip{grid-template-columns:1fr;width:calc(100% - 30px);margin-top:0}.trust-strip article{border-bottom:1px solid #4f425b1a;border-right:0;padding:17px 4px}.access-page{padding:20px 15px}.access-card{padding:32px 20px}}.learning-shell{background:var(--surface);width:min(1360px,100%);height:min(850px,100dvh - clamp(28px,6.4vw,84px));min-height:590px;box-shadow:var(--shadow);border:1px solid #261f300d;border-radius:28px;grid-template:68px minmax(0,1fr)/minmax(286px,25%) minmax(0,1fr);display:grid;position:relative;overflow:hidden}.topbar{border-bottom:1px solid #f3f1f5;grid-column:1/-1;grid-template-columns:48px minmax(150px,1fr) 48px;align-items:center;gap:22px;padding:0 22px;display:grid}.icon-button{color:#7d7c86;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:42px;height:42px;font-size:24px;display:grid}.icon-button:hover,.icon-button:focus-visible{color:var(--ink);background:#f5f3f7;outline:none}.top-actions{justify-content:flex-end;display:flex}.progress-track{background:#f0eff2;border-radius:999px;justify-self:center;width:min(480px,62%);height:7px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#27cb71,#55d98f);height:100%;transition:width .3s;display:block}.chat-panel{z-index:3;border-right:1px solid var(--line);background:#fcfbfd;flex-direction:column;min-width:0;min-height:0;padding:22px 18px 18px;display:flex;position:relative}.chat-heading{align-items:center;gap:11px;padding:0 3px 18px;display:flex}.chat-heading .kody-character-avatar{flex-basis:44px;width:44px;height:44px}.chat-heading strong{font-family:Montserrat,Inter,sans-serif;font-size:14px;display:block}.chat-heading small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.mobile-close{display:none}.kody-mark{background:linear-gradient(135deg, var(--purple), #8d5ce8);border-radius:13px 18px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid;position:relative;transform:rotate(45deg);box-shadow:0 7px 20px #6622cf38}.kody-mark span{color:#fff;font-family:Montserrat,sans-serif;font-size:19px;font-weight:800;transform:rotate(-45deg)}.message-list{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;flex:auto;gap:12px;min-height:0;padding:5px 3px 18px;display:flex;overflow-y:auto}.message{width:fit-content;max-width:94%;animation:.22s ease-out message-in}.message p{border:1px solid var(--line);background:#fff;border-radius:15px 15px 15px 5px;margin:0;padding:11px 13px;font-size:13px;line-height:1.45;box-shadow:0 5px 15px #1c192209}.message.learner{align-self:flex-end}.message.learner p{background:var(--purple-soft);border-color:#e3d5ff;border-radius:15px 15px 5px}.listen-button{color:#777581;cursor:pointer;background:0 0;border:0;border-radius:8px;margin:6px 0 0 5px;padding:4px 7px;font-size:10px;font-weight:700}.listen-button:hover,.listen-button:focus-visible{color:var(--purple);background:var(--purple-soft);outline:none}.thinking{color:#8a8790;align-items:center;gap:4px;padding:8px 5px;font-size:11px;display:flex}.thinking span{background:#9d79db;border-radius:50%;width:5px;height:5px;animation:1.1s ease-in-out infinite pulse}.thinking span:nth-child(2){animation-delay:.13s}.thinking span:nth-child(3){margin-right:4px;animation-delay:.26s}.quick-actions{scrollbar-width:none;gap:6px;padding:1px 1px 10px;display:flex;overflow-x:auto}.quick-actions::-webkit-scrollbar{display:none}.quick-actions button{border:1px solid var(--line);color:#4d4a55;cursor:pointer;background:#fff;border-radius:999px;flex:none;min-height:32px;padding:6px 10px;font-size:10px;font-weight:700}.quick-actions button:hover,.quick-actions button:focus-visible{color:var(--purple);border-color:#cdb6f5;outline:none}.chat-input{border:1px solid var(--line);background:#fff;border-radius:15px;align-items:center;gap:8px;min-height:47px;padding:6px 6px 6px 14px;display:flex}.chat-input:focus-within{border-color:#bda2ec;box-shadow:0 0 0 3px #6622cf14}.chat-input input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:12px}.chat-input input::placeholder{color:#aaa8b1}.chat-input button{color:#fff;background:var(--purple);cursor:pointer;border:0;border-radius:11px;flex:0 0 34px;width:34px;height:34px;font-size:17px;font-weight:800}.chat-input button:disabled{opacity:.35;cursor:default}.chat-error{color:#a84646;margin:8px 4px 0;font-size:10px;line-height:1.3}.activity-panel{background:#fff;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;padding:clamp(18px,2.5vw,34px);display:grid}.activity-copy{text-align:center}.activity-copy span{color:var(--purple);letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-weight:800}.activity-copy h1{color:#25232b;margin:7px 0 0;font-family:Montserrat,Inter,sans-serif;font-size:clamp(17px,2vw,25px);font-weight:700}.activity-stage{place-items:center;min-width:0;min-height:0;padding:16px 0;display:grid;overflow:hidden}.tool-frame{background:#fff;border:0;border-radius:19px;width:100%;height:100%}.fraction-stage{justify-items:center;gap:22px;width:min(560px,86%);display:grid}.fraction-visual{aspect-ratio:1;width:min(330px,66%)}.fraction-visual svg{filter:drop-shadow(0 14px 22px #37254f14);width:100%;height:100%;overflow:visible}.fraction-visual polygon{fill:#fff;stroke:#312b3b;stroke-width:1.15px;cursor:pointer;transform-box:fill-box;transform-origin:50%;transition:fill .17s,stroke .17s,filter .17s,transform .17s}.fraction-visual polygon:hover{fill:#f5efff;transform:scale(.985)}.fraction-visual polygon.is-selected{fill:#a875ed;stroke:#5b23aa}.fraction-visual .is-highlighted polygon{stroke:#ffae16;stroke-width:2.1px;filter:drop-shadow(0 0 4px #ffae168c)}.fraction-visual text{fill:#51495e;text-anchor:middle;pointer-events:none;font-size:6px;font-weight:800}.fraction-visual polygon.is-selected+text{fill:#fff}.fraction-controls{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.fraction-controls button{color:#4f4a56;cursor:pointer;background:#fff;border:1px solid #dedbe3;border-radius:12px;width:44px;height:44px;font-weight:800;transition:all .16s}.fraction-controls button:hover{background:#faf7ff;border-color:#ad8fdf}.fraction-controls button.active{border-color:var(--purple);color:#fff;background:var(--purple);box-shadow:0 6px 16px #6622cf33}.activity-footer{border-top:1px solid #f0eef2;grid-template-columns:minmax(150px,1fr) auto;align-items:center;gap:18px;padding-top:15px;display:grid}.feedback{min-height:22px;color:var(--muted);font-size:12px;line-height:1.45}.feedback.success{color:#147a43;font-weight:700}.feedback.error{color:#aa4c38}.activity-buttons{gap:9px;display:flex}.activity-buttons button{cursor:pointer;border-radius:13px;min-height:44px;padding:0 22px;font-size:12px;font-weight:800}.secondary-action{color:#3f3b46;background:#f5f4f6;border:1px solid #dedbe3}.primary-action{color:#19151f;background:linear-gradient(180deg, #ffdb63, var(--yellow));border:0;min-width:150px;box-shadow:0 7px 17px #e1ae1536}.primary-action:disabled{color:#929098;box-shadow:none;cursor:default;background:#e7e6e9}.secondary-action:hover,.secondary-action:focus-visible,.primary-action:hover,.primary-action:focus-visible{outline:none;transform:translateY(-1px)}.mobile-chat-trigger,.chat-backdrop{display:none}.boot-screen{min-height:100dvh;color:var(--muted);background:#f8f5fb;place-content:center;justify-items:center;gap:14px;display:grid}.boot-screen .kody-character-avatar{border-radius:23px;width:72px;height:72px}.boot-screen .kody-character-avatar img{width:120px}.boot-mark{color:#fff;background:var(--purple);border-radius:18px;place-items:center;width:55px;height:55px;font-family:Montserrat,sans-serif;font-weight:800;display:grid;transform:rotate(45deg)}.boot-screen p{margin:0;font-size:14px}.error-screen button{color:#fff;background:var(--purple);border:0;border-radius:12px;min-height:44px;padding:0 18px;font-weight:700}@keyframes pulse{0%,70%,to{opacity:.28;transform:translateY(0)}35%{opacity:1;transform:translateY(-2px)}}@keyframes message-in{0%{opacity:0;transform:translateY(4px)}}@media (width<=900px){.learning-shell{grid-template-columns:260px minmax(0,1fr)}.activity-panel{padding-inline:20px}.activity-footer{grid-template-columns:1fr;gap:10px}.activity-buttons{justify-content:flex-end}}@media (height<=760px) and (width>=768px){.learning-shell{grid-template-rows:58px minmax(0,1fr);min-height:560px}.topbar{padding-inline:18px}.chat-panel{padding-block:18px 15px}.activity-panel{padding-block:18px}.activity-stage{padding-block:8px}.fraction-stage{gap:12px}.fraction-visual{width:min(250px,56%)}.fraction-controls button{width:38px;height:38px}.activity-footer{padding-top:10px}}@media (width<=767px){body{overflow:hidden}.tutor-page{background:#fff;place-items:stretch stretch;padding:0}.learning-shell{width:100%;height:100dvh;min-height:0;box-shadow:none;border:0;border-radius:0;grid-template:56px minmax(0,1fr) 72px/1fr}.topbar{grid-area:1/1;grid-template-columns:40px 1fr 40px;gap:10px;padding:0 12px}.icon-button{width:40px;height:40px}.progress-track{width:74%}.activity-panel{grid-area:2/1;padding:14px 14px 10px}.activity-copy span{display:none}.activity-copy h1{margin-top:0;font-size:clamp(16px,4.6vw,20px)}.activity-stage{padding:8px 0}.fraction-stage{gap:12px;width:100%}.fraction-visual{width:min(245px,63vw)}.fraction-controls{gap:6px}.fraction-controls button{border-radius:11px;width:42px;height:42px}.activity-footer{flex-direction:column;align-items:stretch;gap:8px;padding-top:9px;display:flex}.feedback{text-align:center;min-height:17px;font-size:11px}.activity-buttons{width:100%}.activity-buttons button{flex:1;padding-inline:9px}.secondary-action{display:none}.primary-action{width:100%}.mobile-chat-trigger{z-index:4;border:0;border-top:1px solid var(--line);width:100%;padding:9px 16px calc(9px + env(safe-area-inset-bottom));text-align:left;color:var(--ink);cursor:pointer;background:#fff;grid-area:3/1;align-items:center;gap:12px;display:flex}.mobile-chat-trigger .kody-mark,.mobile-chat-trigger .kody-character-avatar{width:42px;height:42px}.mobile-chat-trigger>span:nth-child(2){flex:1;min-width:0}.mobile-chat-trigger strong{font-size:12px;display:block}.mobile-chat-trigger small{color:var(--muted);margin-top:2px;font-size:10px;display:block}.mobile-chat-trigger b{color:#92909a;font-size:18px}.chat-backdrop{z-index:8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1f172a40;border:0;display:block;position:fixed;inset:0}.chat-panel{z-index:9;height:min(72dvh,620px);padding:15px 14px calc(14px + env(safe-area-inset-bottom));visibility:hidden;border:0;border-radius:24px 24px 0 0;transition:transform .25s,visibility .25s;position:fixed;inset:auto 0 0;transform:translateY(104%);box-shadow:0 -20px 60px #21162f29}.chat-panel.is-open{visibility:visible;transform:translateY(0)}.chat-heading{padding-bottom:12px}.mobile-close{color:#73707a;background:#f2f0f4;border:0;border-radius:50%;place-items:center;width:40px;height:40px;margin-left:auto;font-size:22px;display:grid}.message p{font-size:13px}.quick-actions button{min-height:36px;font-size:11px}.chat-input{min-height:50px}}@media (width<=380px),(height<=660px) and (width<=767px){.learning-shell{grid-template-rows:50px minmax(0,1fr) 64px}.activity-panel{padding-top:8px}.activity-copy h1{font-size:15px}.fraction-visual{width:min(205px,55vw)}.fraction-controls button{width:38px;height:38px}.activity-footer{padding-top:6px}.activity-buttons button{min-height:40px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.welcome-page{padding:clamp(12px,2.4vw,34px)}.welcome-shell{width:min(1220px,100%);height:min(850px,100dvh - clamp(24px,4.8vw,68px));min-height:620px;box-shadow:var(--shadow);background:#fff;border:1px solid #48345b14;border-radius:26px;grid-template-rows:76px minmax(0,1fr) 102px;display:grid;overflow:hidden}.welcome-topbar{grid-template-columns:42px minmax(180px,1fr) 42px;align-items:center;gap:18px;width:min(760px,100% - 44px);margin:0 auto;display:grid}.welcome-icon-button{color:#77717e;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:42px;height:42px;font-size:30px;line-height:1;display:grid}.welcome-icon-button:hover{color:var(--purple);background:var(--purple-soft)}.welcome-icon-button.sound{font-size:17px;font-weight:800}.welcome-icon-button.sound.active{color:var(--purple)}.welcome-progress{align-items:center;gap:5px;display:flex}.welcome-progress i{background:#ece9ef;border-radius:999px;flex:1;min-width:12px;height:7px;transition:background .22s,transform .22s}.welcome-progress i.active{background:linear-gradient(90deg,var(--purple),#955ae5)}.welcome-progress i:last-child.active{background:linear-gradient(90deg,#955ae5,var(--cyan))}.welcome-step{place-items:center;width:min(900px,100% - 40px);min-height:0;margin:0 auto;padding:10px 0;animation:.3s cubic-bezier(.2,.75,.3,1) welcome-in;display:grid;overflow:auto}.welcome-intro{text-align:center;max-width:480px}.welcome-intro .kody-character-hero{margin:0 auto}.welcome-intro h1{letter-spacing:-.045em;margin:28px 0 8px;font:800 clamp(29px,3.3vw,42px) Montserrat,Inter,sans-serif}.welcome-intro p{color:#77717d;max-width:430px;margin:0 auto;font-size:15px;line-height:1.55}.welcome-kody{color:#fff;background:linear-gradient(145deg,var(--purple) 10%,#8b4ee6 62%,var(--cyan));border-radius:25px 34px;place-items:center;width:86px;height:86px;margin:0 auto;display:grid;position:relative;transform:rotate(45deg);box-shadow:0 18px 40px #6622cf45}.welcome-kody:after{content:"";border-radius:inherit;border:1px solid #ffffff3d;position:absolute;inset:7px}.welcome-kody>span{z-index:2;font:800 31px Montserrat,Inter,sans-serif;transform:rotate(-45deg)}.welcome-kody>i,.welcome-kody>b{background:var(--yellow);border-radius:50%;width:14px;height:14px;position:absolute;transform:rotate(-45deg)}.welcome-kody>i{top:14px;right:-4px}.welcome-kody>b{background:var(--cyan);width:9px;height:9px;bottom:-3px;left:8px}.welcome-kody.small{border-radius:17px 23px;flex:0 0 56px;width:56px;height:56px;box-shadow:0 10px 26px #6622cf36}.welcome-kody.small>span{font-size:20px}.welcome-kody.small>i{width:9px;height:9px}.welcome-kody.small>b{width:6px;height:6px}.welcome-question{align-self:center;width:100%;max-width:800px}.wizard-heading{align-items:center;gap:25px;width:min(650px,100%);margin:0 auto 58px;display:flex}.wizard-heading .kody-character-avatar{border-radius:19px;width:58px;height:58px;margin:0}.wizard-heading .kody-character-avatar img{width:96px}.wizard-heading h1{letter-spacing:-.035em;margin:0;font:800 clamp(22px,2.3vw,31px) Montserrat,Inter,sans-serif}.wizard-heading p{color:#7c7582;margin:7px 0 0;font-size:12px;line-height:1.5}.welcome-name-field{gap:9px;width:min(500px,100%);margin:0 auto;display:grid}.welcome-name-field span{color:#5f5765;font-size:11px;font-weight:800}.welcome-name-field input{color:#2d2733;background:#fff;border:2px solid #ddd7e3;border-radius:16px;outline:0;height:66px;padding:0 20px;font-size:18px}.welcome-name-field input:focus{border-color:var(--purple);box-shadow:0 0 0 5px #6622cf14}.welcome-card-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.welcome-card-grid button,.audio-choice-grid button{color:#363039;cursor:pointer;background:#f8f7f9;border:2px solid #0000;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:196px;padding:22px 15px;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;display:flex}.welcome-card-grid button:hover,.audio-choice-grid button:hover{background:#fbf9ff;transform:translateY(-3px)}.welcome-card-grid button.selected,.audio-choice-grid button.selected{border-color:var(--purple);background:linear-gradient(160deg,#faf7ff,#f0e7ff);box-shadow:0 13px 30px #6622cf1f}.welcome-card-grid button>i{width:60px;height:60px;color:var(--purple);background:#fff;border-radius:19px;place-items:center;font-size:27px;font-style:normal;display:grid;box-shadow:0 9px 24px #38274914}.welcome-card-grid button>b,.audio-choice-grid button>b{margin-top:17px;font-size:12px}.welcome-card-grid button>small,.audio-choice-grid button>small{color:#89828e;margin-top:6px;font-size:9px;line-height:1.4}.audio-choice-grid{grid-template-columns:1fr 1fr;gap:14px;width:min(480px,100%);margin:0 auto;display:grid}.audio-choice-grid button{min-height:225px}.audio-orbit{color:#fff;background:linear-gradient(145deg,var(--purple),#a06aed);border-radius:50%;place-items:center;width:74px;height:74px;font-size:28px;font-weight:800;display:grid;box-shadow:0 0 0 12px #f0e8ff,0 14px 28px #6622cf33}.audio-orbit.quiet{color:#5b5362;background:#fff;font-size:18px;box-shadow:0 0 0 12px #eeecef,0 14px 28px #30253914}.age-picker{grid-template-columns:62px minmax(150px,1fr) 62px;align-items:center;gap:16px;width:min(450px,100%);margin:0 auto;display:grid}.age-picker>button{width:62px;height:62px;color:var(--purple);cursor:pointer;background:#f8f5fd;border:1px solid #e1dce5;border-radius:18px;font-size:29px}.age-picker label{border:2px solid var(--purple);background:linear-gradient(145deg,#fff,#faf6ff);border-radius:22px;justify-content:center;align-items:center;gap:9px;height:112px;display:flex;box-shadow:0 16px 35px #6622cf1a}.age-picker input{color:#2d2733;text-align:right;background:0 0;border:0;outline:0;width:82px;font:800 42px Montserrat,Inter,sans-serif}.age-picker label span{color:#716978;font-size:13px;font-weight:700}.grade-cards button>i{color:#3b64c9;background:linear-gradient(145deg,#fff,#edf3ff);border-radius:12px;width:82px;font-family:Georgia,serif;font-size:22px}.grade-cards button:nth-child(2)>i{color:var(--purple);background:linear-gradient(145deg,#fff,#f2eaff)}.grade-cards button:nth-child(3)>i{color:#bd3d96;background:linear-gradient(145deg,#fff,#fff0fa)}.grade-cards button:nth-child(4)>i{color:#117d8d;background:linear-gradient(145deg,#fff,#eafcff)}.confidence-question .wizard-heading{margin-bottom:15px}.confidence-graphic{background:#fff;border:1px solid #ece8ef;border-radius:24px;width:300px;height:240px;margin:0 auto 17px;padding:10px;box-shadow:0 16px 38px #34284217}.confidence-graphic svg{width:100%;height:100%}.confidence-graphic line{stroke:#2d2931;stroke-width:2px}.confidence-graphic path{fill:#2d2931}.confidence-graphic circle{fill:var(--purple)}.confidence-graphic text{fill:#4a444f;font-size:13px;font-weight:700}.confidence-options{justify-content:center;gap:9px;display:flex}.confidence-options button{color:#514a57;cursor:pointer;background:#f8f7f9;border:1px solid #e1dce5;border-radius:999px;min-height:44px;padding:0 20px;font-size:11px;font-weight:800}.confidence-options button.selected{border-color:var(--purple);color:var(--purple);background:var(--purple-soft);box-shadow:inset 0 0 0 1px var(--purple)}.welcome-footer{align-content:center;place-items:center;padding:8px 20px 24px;display:grid}.welcome-footer p{color:#a3423c;margin:0 0 7px;font-size:10px}.welcome-continue{color:#fff;background:linear-gradient(135deg,var(--purple),#8750df);cursor:pointer;border:0;border-radius:16px;width:min(340px,100%);min-height:54px;font-size:13px;font-weight:800;box-shadow:0 12px 28px #6622cf38}.welcome-continue:disabled{color:#aaa4ad;box-shadow:none;cursor:default;background:#eeecef}.onboarding-shell{grid-template-columns:minmax(270px,29%) minmax(0,1fr)}.onboarding-topbar{grid-template-columns:48px minmax(150px,1fr) 48px}.onboarding-count{color:#8a8490;text-align:center;font-size:11px;font-weight:800}.onboarding-guide{border-right:1px solid var(--line);background:linear-gradient(#fdfcff,#faf8fd);flex-direction:column;min-height:0;padding:26px 22px;display:flex}.onboarding-message{margin-top:34px}.onboarding-message>p{color:#46404b;background:#fff;border:1px solid #e8e3ec;border-radius:18px 18px 18px 6px;margin:0;padding:16px 17px;font-size:13px;line-height:1.62;box-shadow:0 9px 28px #2c1f390d}.privacy-note{color:#837b89;background:#f2ebff8c;border:1px solid #6622cf14;border-radius:15px;gap:11px;margin-top:auto;padding:14px;font-size:10px;line-height:1.45;display:flex}.privacy-note>span{width:28px;height:28px;color:var(--purple);background:#fff;border-radius:50%;flex:0 0 28px;place-items:center;font-size:17px;display:grid}.privacy-note p{margin:0}.privacy-note b{color:#5a5261}.onboarding-workspace{background:#fff;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;padding:clamp(22px,3.2vw,46px);display:grid;overflow:hidden}.learner-profile-form{flex-direction:column;justify-content:center;align-self:center;width:min(720px,100%);height:100%;margin:0 auto;display:flex}.profile-form-heading>span,.diagnostic-heading>span,.result-eyebrow{color:var(--purple);letter-spacing:.14em;font-size:9px;font-weight:800}.profile-form-heading h1,.diagnostic-heading h1,.diagnostic-complete h1{color:#242129;letter-spacing:-.04em;margin:8px 0 7px;font-family:Montserrat,Inter,sans-serif;font-size:clamp(24px,3vw,38px)}.profile-form-heading p,.diagnostic-heading p{color:#817a86;margin:0;font-size:12px;line-height:1.5}.profile-fields{grid-template-columns:.65fr 1.35fr;gap:12px;margin-top:26px;display:grid}.profile-field{gap:7px;min-width:0;display:grid}.profile-field.wide{grid-column:1/-1}.profile-field>span,.goal-selector legend{color:#5e5765;font-size:10px;font-weight:800}.profile-field input,.profile-field select{color:#2e2933;background:#fff;border:1px solid #e1dce5;border-radius:13px;outline:0;width:100%;height:51px;padding:0 14px;font-size:13px}.profile-field input:focus,.profile-field select:focus{border-color:#aa87df;box-shadow:0 0 0 4px #6622cf14}.goal-selector{border:0;grid-template-columns:1fr 1fr;gap:9px;margin:22px 0 0;padding:0;display:grid}.goal-selector legend{margin-bottom:9px}.goal-selector button{text-align:left;color:#514a56;cursor:pointer;background:#fff;border:1px solid #e4e0e7;border-radius:14px;align-items:center;gap:10px;min-height:60px;padding:10px 12px;transition:border-color .16s,background .16s,transform .16s;display:flex}.goal-selector button:hover{border-color:#cbb6ea;transform:translateY(-1px)}.goal-selector button.selected{background:#f7f2ff;border-color:#9468d8;box-shadow:inset 0 0 0 1px #9468d8}.goal-selector i{background:#fff;border:2px solid #cbc5d0;border-radius:50%;flex:0 0 17px;width:17px;height:17px;box-shadow:inset 0 0 0 4px #fff}.goal-selector button.selected i{border-color:var(--purple);background:var(--purple)}.goal-selector b,.goal-selector small{display:block}.goal-selector b{color:#3c3641;font-size:11px}.goal-selector small{color:#8c8591;margin-top:3px;font-size:9px;line-height:1.3}.profile-continue{color:#fff;background:linear-gradient(135deg,var(--purple),#8751df);cursor:pointer;border:0;border-radius:14px;align-self:flex-end;min-height:52px;margin-top:22px;padding:0 22px;font-size:12px;font-weight:800;box-shadow:0 12px 28px #6622cf38}.profile-continue span{margin-left:14px}.profile-continue:disabled{opacity:.4;cursor:default;box-shadow:none}.diagnostic-heading{text-align:center}.diagnostic-heading h1{font-size:clamp(19px,2.4vw,30px)}.diagnostic-stage{place-items:center;min-width:0;min-height:0;padding:10px 0;transition:opacity .15s,transform .15s;display:grid}.diagnostic-stage.is-working{opacity:.65;transform:scale(.992)}.diagnostic-footer{border-top:1px solid #f0edf2;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;min-height:74px;padding-top:14px;display:grid}.diagnostic-footer>span{color:#918a96;font-size:10px}.diagnostic-footer .primary-action{border-radius:999px;min-width:220px;min-height:52px;padding:0 32px;font-size:13px}.diagnostic-interactive{place-items:center;gap:12px;width:min(780px,100%);max-height:100%;animation:.38s cubic-bezier(.2,.75,.3,1) diagnostic-in;display:grid}.diagnostic-slider{accent-color:#3267dc;cursor:grab;width:min(560px,82%);height:28px}.diagnostic-slider:active{cursor:grabbing}.answer-orb{color:#2658c9;background:#f5f8ff;border:1px solid #dce3f5;border-radius:18px;place-items:center;min-width:88px;height:58px;padding:0 18px;font-family:Montserrat,Inter,sans-serif;font-size:26px;font-weight:800;display:grid;box-shadow:0 12px 32px #2856ba17}.number-line-graphic{width:min(760px,100%);max-height:220px;overflow:visible}.axis-line{stroke:#171a20;stroke-width:5px;stroke-linecap:round}.axis-arrow{fill:#171a20}.tick-line{stroke:#3d4148;stroke-width:4px}.tick-label{fill:#474b53;text-anchor:middle;font-size:20px;font-weight:600}.guide-line{stroke:#89a8ef;stroke-width:4px;stroke-dasharray:8 9}.moving-point{fill:#3267dc;stroke:#fff;stroke-width:7px;transition:cx .12s}.marble-graphic{width:min(700px,100%);max-height:410px}.chart-grid line,.coordinate-grid line{stroke:#e6e7eb;stroke-width:2px}.relation-line{fill:none;stroke:#3567d8;stroke-width:5px}.relation-dot{fill:#3567d8;stroke:#fff;stroke-width:3px}.axis-title{fill:#252932;letter-spacing:.08em;font-size:15px;font-weight:800}.beaker-outline{fill:none;stroke:#15171c;stroke-width:6px;stroke-linecap:round}.beaker-water{fill:#9db3f3;opacity:.86;transition:d .22s}.marble-ball circle{fill:#f052bf;stroke:#d6389f;stroke-width:2px}.marble-ball path{fill:none;stroke:#ff9bdd;stroke-width:6px;stroke-linecap:round}.marble-ball{animation:.32s both marble-pop}.beaker-value{fill:#2e5ecb;text-anchor:middle;font:800 23px Montserrat,Inter,sans-serif}.fraction-grid-interactive{gap:18px}.fraction-readout{color:#746d79;align-items:baseline;gap:7px;display:flex}.fraction-readout b{color:var(--purple);font:800 30px Montserrat,Inter,sans-serif}.fraction-readout span{font-size:13px;font-weight:700}.diagnostic-fraction-grid{aspect-ratio:1.5;background:#fff;border:3px solid #29252e;border-radius:8px;gap:7px;width:min(430px,70vw);padding:7px;display:grid;box-shadow:0 18px 35px #30253e14}.diagnostic-fraction-grid button{cursor:pointer;background:#fff;border:2px solid #37313d;border-radius:4px;min-width:0;min-height:0;padding:0;overflow:hidden}.diagnostic-fraction-grid button span{opacity:0;background:linear-gradient(145deg,#9b70eb,#7d4ad8);width:100%;height:100%;transition:transform .2s cubic-bezier(.2,.8,.2,1),opacity .18s;display:block;transform:scale(0)}.diagnostic-fraction-grid button.selected span{opacity:1;transform:scale(1)}.interaction-caption{color:#948e98;margin:0;font-size:10px}.sequence-track{justify-content:center;align-items:center;gap:clamp(7px,2vw,18px);width:100%;display:flex}.sequence-node{align-items:center;gap:clamp(7px,2vw,18px);display:flex}.sequence-node span{color:#325ec2;background:#f8faff;border:2px solid #dfe3ed;border-radius:20px;place-items:center;width:clamp(58px,9vw,82px);height:clamp(58px,9vw,82px);font:800 clamp(20px,3vw,30px) Montserrat,Inter,sans-serif;display:grid;box-shadow:0 10px 25px #254ea412}.sequence-node i{color:#a7a8ae;font-size:24px;font-style:normal}.sequence-node.answer span{background:#edf3ff;border-color:#8fa9e5;box-shadow:0 0 0 7px #4a70c914}.angle-graphic{width:min(720px,100%);max-height:420px;overflow:visible}.angle-base,.angle-ray{fill:none;stroke:#171920;stroke-width:8px;stroke-linecap:round}.angle-ray{stroke:#3467d8;transition:d .1s linear}.angle-arc{fill:#ffc75473;stroke:#e6a51b;stroke-width:4px}.angle-origin{fill:#3467d8}.angle-value{fill:#272a31;text-anchor:middle;font:800 42px Montserrat,Inter,sans-serif}.reflection-graphic{width:min(720px,100%);max-height:360px}.mirror-line{stroke:#16191e;stroke-width:5px;stroke-dasharray:10 9}.source-shape{fill:#6f4cdca6;stroke:#6035bd;stroke-width:4px}.ghost-shape{fill:#3168da47;stroke:#3267d8;stroke-width:4px;transform-box:fill-box;transform-origin:50%;transition:transform .3s cubic-bezier(.2,.75,.3,1)}.reflection-options{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;display:flex}.reflection-options button{color:#4a4e57;cursor:pointer;background:#fff;border:1px solid #dfe1e7;border-radius:12px;min-height:44px;padding:0 15px;font-size:11px;font-weight:750}.reflection-options button.selected{color:#2456be;background:#eef4ff;border-color:#386bd8;box-shadow:inset 0 0 0 1px #386bd8}.diagnostic-complete{text-align:center;width:min(670px,100%);margin:auto;animation:.45s ease-out diagnostic-in}.result-orbit{place-items:center;width:100px;height:100px;margin:0 auto 22px;display:grid;position:relative}.result-orbit>span{z-index:2;color:#fff;background:linear-gradient(135deg,#31c872,#1eaa5a);border-radius:50%;place-items:center;width:64px;height:64px;font-size:29px;font-weight:800;display:grid;box-shadow:0 14px 35px #24b56440}.result-orbit i,.result-orbit b{border:1px solid #31c87238;border-radius:50%;animation:5s linear infinite orbit;position:absolute;inset:5px}.result-orbit i:after,.result-orbit b:after{content:"";background:#ffd24c;border-radius:50%;width:9px;height:9px;position:absolute;top:4px;left:12px}.result-orbit b{animation-duration:7s;animation-direction:reverse;inset:-6px}.result-orbit b:after{background:#00ccfe;inset:auto 8px 16px auto}.diagnostic-complete h1{font-size:clamp(29px,4vw,44px)}.diagnostic-complete>p{color:#746d79;width:min(520px,100%);margin:0 auto;font-size:13px;line-height:1.6}.result-columns{text-align:left;grid-template-columns:1fr 1fr;gap:12px;margin:27px 0 0;display:grid}.result-columns article{background:#fcfbfd;border:1px solid #e8e4eb;border-radius:16px;min-height:120px;padding:16px}.result-columns span,.result-columns b{display:block}.result-columns span{color:#8a838e;letter-spacing:.07em;text-transform:uppercase;margin-bottom:10px;font-size:9px;font-weight:800}.result-columns b{color:#46404b;margin-top:7px;font-size:11px}.diagnostic-complete .profile-continue{margin-inline:auto}.diagnostic-complete>small{color:#9a939e;margin-top:13px;font-size:9px;display:block}.diagnostic-loading{text-align:center;color:#847d88;place-self:center;font-size:12px}.diagnostic-loading span{border:4px solid #eee9f4;border-top-color:var(--purple);border-radius:50%;width:45px;height:45px;margin:0 auto 12px;animation:.8s linear infinite spin;display:block}.onboarding-error{color:#9c3f39;text-align:center;font-size:11px}.result-character{width:112px;height:145px;margin:0 auto 12px;position:relative}.result-character .kody-character-celebration{width:100%;height:100%}.result-character>span{color:#fff;background:var(--green);border:4px solid #fff;border-radius:50%;place-items:center;width:38px;height:38px;font-size:18px;font-weight:800;display:grid;position:absolute;bottom:11px;right:2px;box-shadow:0 8px 18px #22a45a38}@keyframes diagnostic-in{0%{opacity:0;transform:translateY(8px)scale(.99)}}@keyframes welcome-in{0%{opacity:0;transform:translateY(10px)scale(.995)}}@keyframes marble-pop{0%{opacity:0;transform:translateY(-18px)scale(.7)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=767px){.welcome-page{background:#fff;padding:0}.welcome-shell{width:100%;height:100dvh;min-height:0;box-shadow:none;border:0;border-radius:0;grid-template-rows:62px minmax(0,1fr) 88px}.welcome-topbar{grid-template-columns:38px minmax(100px,1fr) 38px;gap:9px;width:calc(100% - 24px)}.welcome-icon-button{width:38px;height:38px}.welcome-progress{gap:3px}.welcome-progress i{min-width:5px;height:5px}.welcome-step{align-items:start;width:calc(100% - 32px);padding:15px 0}.welcome-intro{align-self:center;margin:auto}.welcome-intro h1{margin-top:25px;font-size:30px}.welcome-intro p{font-size:13px}.welcome-intro .kody-character-hero{width:115px;height:158px}.welcome-question{align-self:start;padding-top:4px}.wizard-heading{gap:16px;margin-bottom:28px}.wizard-heading h1{font-size:21px}.wizard-heading p{font-size:10px}.wizard-heading .kody-character-avatar{border-radius:16px;flex-basis:48px;width:48px;height:48px}.wizard-heading .kody-character-avatar img{width:82px}.welcome-name-field input{height:58px;font-size:16px}.welcome-card-grid{grid-template-columns:1fr 1fr;gap:9px}.welcome-card-grid button{min-height:155px;padding:14px 10px}.welcome-card-grid button>i{border-radius:14px;width:48px;height:48px;font-size:21px}.welcome-card-grid button>b{margin-top:12px;font-size:10px}.welcome-card-grid button>small{font-size:8px}.audio-choice-grid{gap:10px}.audio-choice-grid button{min-height:200px;padding-inline:12px}.audio-orbit{width:62px;height:62px}.audio-choice-grid button>b{font-size:11px}.age-picker{grid-template-columns:52px minmax(130px,1fr) 52px;gap:10px}.age-picker>button{width:52px;height:52px}.age-picker label{height:98px}.age-picker input{width:72px;font-size:36px}.confidence-question .wizard-heading{margin-bottom:8px}.confidence-graphic{width:min(270px,75vw);height:215px;margin-bottom:12px}.confidence-options{flex-wrap:wrap;gap:7px}.confidence-options button{min-height:40px;padding-inline:14px;font-size:9px}.welcome-footer{padding:7px 16px calc(14px + env(safe-area-inset-bottom))}.welcome-continue{min-height:50px}.onboarding-page{overflow:auto}.onboarding-shell{grid-template:56px auto minmax(0,1fr)/1fr;height:auto;min-height:100dvh;overflow:visible}.onboarding-topbar{grid-row:1}.onboarding-guide{border:0;border-bottom:1px solid var(--line);grid-row:2;padding:13px 16px}.onboarding-guide .chat-heading{padding:0}.onboarding-guide .chat-heading small,.privacy-note{display:none}.onboarding-guide .kody-character-avatar{border-radius:12px;flex-basis:36px;width:36px;height:36px}.onboarding-guide .kody-character-avatar img{width:64px}.onboarding-message{margin:10px 0 0}.onboarding-message>p{border-radius:13px 13px 13px 5px;padding:10px 12px;font-size:11px;line-height:1.45}.onboarding-message .listen-button{margin-top:3px}.onboarding-workspace{min-height:590px;padding:22px 16px calc(22px + env(safe-area-inset-bottom));grid-row:3;overflow:visible}.learner-profile-form{justify-content:flex-start}.profile-form-heading h1{font-size:25px}.profile-fields{margin-top:18px}.goal-selector{grid-template-columns:1fr;margin-top:18px}.goal-selector button{min-height:54px}.profile-continue{align-self:stretch;width:100%}.diagnostic-heading h1{font-size:20px}.diagnostic-heading p{font-size:10px}.diagnostic-stage{min-height:330px;padding:4px 0}.diagnostic-footer{text-align:center;grid-template-columns:1fr;gap:7px}.diagnostic-footer .primary-action{width:100%}.diagnostic-slider{width:88%}.marble-graphic{max-height:310px}.number-line-graphic{max-height:180px}.angle-graphic{max-height:300px}.reflection-graphic{max-height:280px}.reflection-options button{min-height:40px;padding-inline:11px;font-size:9px}.result-columns{grid-template-columns:1fr}.result-columns article{min-height:0}.diagnostic-complete{padding-top:10px}}@media (height<=720px) and (width>=768px){.onboarding-workspace,.onboarding-guide{padding-block:18px}.onboarding-message{margin-top:18px}.profile-form-heading h1{font-size:27px}.profile-fields{margin-top:17px}.goal-selector{margin-top:15px}.goal-selector button{min-height:52px}.profile-continue{min-height:46px;margin-top:14px}.diagnostic-stage{padding-block:2px}.marble-graphic,.angle-graphic{max-height:300px}.reflection-graphic{max-height:270px}}
