:root{font-family:DM Sans,sans-serif;color:#17213b;background:#f4efe8;font-synthesis:none;--navy: #14213d;--indigo: #5954d9;--cream: #fffaf4;--terra: #dc744b;--sage: #3b9b78;--line: #e6ddd2}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 70% 0,#fff7e9 0,transparent 38%),#f4efe8}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}h1,h2,p{margin-top:0}h1,h2{font-family:Fraunces,serif;letter-spacing:-.025em}.loading-screen{min-height:100vh;display:grid;place-content:center;gap:12px;text-align:center;color:var(--indigo)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:700;color:var(--terra);margin-bottom:8px}.primary-button{border:0;border-radius:14px;background:linear-gradient(135deg,var(--indigo),#756fe9);color:#fff;padding:13px 18px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:9px;box-shadow:0 10px 24px #5954d933}.primary-button svg{width:18px}.form-error{color:#b33d3d;font-size:.88rem}.back-link{display:flex;align-items:center;gap:8px;color:var(--navy);text-decoration:none;font-weight:700}.auth-shell{min-height:100vh;padding:28px;display:grid;place-content:center}.auth-shell>.back-link{position:fixed;top:24px;left:28px}.auth-card{width:min(1040px,94vw);display:grid;grid-template-columns:1.25fr .75fr;background:#fff;border:1px solid #fff;border-radius:28px;overflow:hidden;box-shadow:0 28px 80px #4a37251a}.auth-visual{min-height:600px;position:relative;background:linear-gradient(180deg,#f7dfbd,#e9cda7);overflow:hidden}.auth-visual>img{width:100%;height:100%;object-fit:cover}.auth-visual>div{position:absolute;left:30px;right:30px;bottom:28px;background:#fffdf9e8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:24px;border-radius:20px}.auth-visual h1{font-size:2.2rem;margin-bottom:10px}.brand-mark{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--indigo);color:#fff;margin-bottom:12px}.auth-form{padding:48px 38px;display:flex;flex-direction:column;justify-content:center;gap:18px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f4f1ed;border-radius:12px;padding:4px}.auth-tabs button{border:0;background:transparent;padding:10px;border-radius:9px;color:#657087}.auth-tabs .active{background:#fff;color:var(--navy);box-shadow:0 4px 12px #0000000d}.auth-form label,.goal-input,.exercise-panel label,.audit-card label{display:grid;gap:8px;font-weight:700;font-size:.87rem}.auth-form input,.goal-input textarea,.exercise-panel input,.audit-card input{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:#fffcf8;outline:none}.auth-form input:focus,.goal-input textarea:focus,.exercise-panel input:focus,.audit-card input:focus{border-color:var(--indigo);box-shadow:0 0 0 3px #5954d91c}.password-field{position:relative;display:block}.password-field input{padding-right:48px}.password-field button{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#687187}.password-field button:hover{background:#eeecff;color:var(--indigo)}.password-field svg{width:19px}.privacy-note{font-size:.78rem;line-height:1.5;color:#7a8190;text-align:center}.workspace{min-height:100vh;display:grid;grid-template-columns:244px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(165deg,#121e39,#182849);color:#fff;padding:28px 18px;display:flex;flex-direction:column;z-index:20}.side-brand{display:grid;padding:0 8px 34px}.side-brand strong{font-family:Fraunces;font-size:1.45rem}.side-brand span{font-size:.78rem;color:#79c9ff;margin-top:3px}.sidebar nav{display:grid;gap:8px}.sidebar button{border:0;color:#dfe7f8;background:transparent;border-radius:12px;padding:12px;text-align:left;display:flex;align-items:center;gap:12px;font-weight:600}.sidebar button svg{width:19px}.sidebar nav button.active{background:linear-gradient(135deg,#514ed4,#6864df);color:#fff;box-shadow:0 10px 22px #050b1f55}.side-mat{margin-top:auto;background:#ffffff10;border:1px solid #ffffff14;border-radius:16px;padding:10px;display:flex;align-items:center;gap:10px}.side-mat img{width:48px;height:48px;object-fit:cover;border-radius:13px}.side-mat div{display:grid}.side-mat strong{font-size:.9rem}.side-mat span{font-size:.67rem;color:#aebbd5}.sidebar .logout{margin-top:14px}.mobile-menu{display:none}.main-area{min-width:0;padding:26px 28px 40px}.dashboard{max-width:1280px;margin:auto}.welcome{height:305px;border-radius:24px;overflow:hidden;position:relative;background:linear-gradient(100deg,#fff6e8,#e7c79e);box-shadow:0 18px 45px #4e392019;margin-bottom:22px}.welcome>img{position:absolute;right:0;top:0;width:55%;height:100%;object-fit:cover;object-position:center 28%}.welcome-copy{position:relative;z-index:2;width:52%;padding:42px 0 30px 42px}.welcome h1{font-size:2.45rem;margin-bottom:10px}.welcome-copy>p:not(.eyebrow){line-height:1.55;max-width:520px}.speech{position:absolute;z-index:3;right:38px;top:28px;background:#fff;border-radius:24px 24px 24px 5px;padding:14px 18px;display:grid;box-shadow:0 8px 24px #00000012}.speech span{font-size:.78rem;color:#596277;margin-top:3px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card,.diagnostic-intro{background:#fffdf9;border:1px solid #fff;border-radius:20px;padding:24px;box-shadow:0 10px 32px #432c1810}.card-title{display:flex;justify-content:space-between;align-items:flex-start}.card-title svg{color:var(--indigo)}.card h2,.diagnostic-intro h2{font-size:1.35rem}.knowledge{display:grid;grid-template-columns:150px 1fr;gap:18px}.knowledge .card-title{grid-column:1/-1}.global-ring{width:142px;height:142px;border-radius:50%;background:conic-gradient(var(--indigo) var(--score),#ebe8e4 0);display:grid;place-items:center}.global-ring:before{content:"";position:absolute;width:110px;height:110px;border-radius:50%;background:#fffdf9}.global-ring div{position:relative;display:grid;text-align:center}.global-ring strong{font-size:1.8rem;color:var(--indigo)}.global-ring span{font-size:.68rem}.domain-list{display:grid;align-content:center;gap:10px}.domain-list>div{display:grid;grid-template-columns:110px 1fr 65px;align-items:center;gap:8px;font-size:.78rem}.domain-list i{height:7px;background:#ebe8e4;border-radius:8px;overflow:hidden}.domain-list b{display:block;height:100%;background:linear-gradient(90deg,var(--sage),#72cda8);border-radius:8px}.domain-list em{font-style:normal;text-align:right;color:#697085;font-size:.68rem}.next>p,.mat-note p,.diagnostic-intro p{color:#626b7d;line-height:1.55}.skill-pills{display:flex;gap:7px;flex-wrap:wrap;margin:16px 0}.skill-pills button{border:1px solid var(--line);background:#fff;border-radius:99px;padding:7px 10px;font-size:.74rem}.skill-pills button.active{background:#eeecff;color:#403bb9;border-color:#aaa6f0}.goal-input textarea{resize:vertical;min-height:70px;margin-bottom:14px}.next .primary-button{width:100%}.mat-note{display:grid;grid-template-columns:1fr 140px;overflow:hidden}.mat-note img{width:150px;height:155px;object-fit:cover;border-radius:50% 50% 10px 10px;align-self:end}.history-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-top:1px solid var(--line)}.history-row>svg{color:var(--sage);background:#e2f5ec;padding:5px;width:30px;height:30px;border-radius:50%}.history-row span{display:grid;flex:1}.history-row small{color:#82899a}.history-row em{font-style:normal;font-size:.72rem;background:#e7f5ea;color:#26704f;padding:5px 8px;border-radius:7px}.empty-copy{color:#82899a}.diagnostic-intro{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px}.round-icon{width:58px;height:58px;border-radius:18px;background:#eeecff;color:var(--indigo);display:grid;place-items:center}.audit-count{display:grid;text-align:center;background:#f7f0e7;padding:15px 20px;border-radius:14px}.audit-count strong{font-size:1.6rem}.audit-count span{font-size:.7rem}.audit-page{max-width:850px;margin:40px auto}.audit-page>header{display:flex;justify-content:space-between;align-items:center}.audit-page header span{font-weight:700;color:#5e6678}.audit-progress{height:8px;background:#ded9d2;border-radius:10px;margin:14px 0 36px;overflow:hidden}.audit-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--indigo),#817bed);border-radius:10px;transition:width .3s}.audit-card{background:#fffdf9;border-radius:24px;padding:48px;box-shadow:0 20px 60px #3d291516;text-align:center}.quiet-badge{display:inline-flex;align-items:center;gap:8px;background:#edf3ff;color:#465581;border-radius:99px;padding:8px 12px;font-size:.8rem}.audit-card h1{font-size:2rem;line-height:1.35;margin:34px auto;max-width:650px}.audit-card form{max-width:480px;margin:auto;display:grid;gap:14px}.skip-button{border:0;background:transparent;color:#646c7e;text-decoration:underline;margin:16px}.audit-card>p{color:#8a8f9b;font-size:.8rem}.lesson>header{display:flex;align-items:center;gap:24px;margin-bottom:20px}.lesson>header>button,.success-box button{border:0;background:transparent;color:var(--indigo);display:flex;align-items:center;gap:7px}.lesson>header h1{font-size:1.55rem;margin:0}.lesson-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:18px;height:calc(100vh - 130px);min-height:600px}.exercise-panel,.chat-panel{background:#fffdf9;border-radius:22px;border:1px solid #fff;box-shadow:0 14px 40px #3c281312}.exercise-panel{padding:34px;display:flex;flex-direction:column}.level-chip{align-self:flex-start;background:#eeecff;color:#4d48bf;padding:7px 10px;border-radius:99px;font-size:.76rem;font-weight:700}.exercise-panel h2{font-size:2rem;line-height:1.4;margin:auto 0}.exercise-panel form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.exercise-panel .hint-button{align-self:flex-start;border:0;background:transparent;color:#a15c24;margin-top:14px;display:flex;gap:7px}.success-box{margin-top:18px;background:#eaf7ef;color:#236c4d;padding:14px;border-radius:13px;display:flex;justify-content:space-between}.chat-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}.chat-head{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:11px}.chat-head img{width:48px;height:48px;object-fit:cover;border-radius:50%}.chat-head div{display:grid}.chat-head span{font-size:.72rem;color:#7b8392}.chat-head i{display:inline-block;width:7px;height:7px;background:#38ad76;border-radius:50%;margin-right:5px}.messages{padding:18px;overflow:auto;display:flex;flex-direction:column;gap:10px;flex:1}.message{max-width:84%;padding:11px 13px;border-radius:14px;line-height:1.45;font-size:.9rem}.message.mat{align-self:flex-start;background:#f1eee9;border-bottom-left-radius:4px}.message.learner{align-self:flex-end;background:var(--indigo);color:#fff;border-bottom-right-radius:4px}.composer{border-top:1px solid var(--line);padding:12px;display:flex;gap:8px}.composer textarea{flex:1;border:1px solid var(--line);border-radius:12px;padding:10px;resize:none}.composer button{width:44px;border:0;border-radius:12px;background:var(--indigo);color:#fff}.empty-session{min-height:70vh;display:grid;place-content:center;text-align:center;justify-items:center;gap:8px}.empty-session>svg{width:52px;height:52px;color:var(--indigo)}@media(max-width:950px){.workspace{grid-template-columns:1fr}.mobile-menu{display:grid;place-items:center;position:fixed;right:15px;top:15px;z-index:40;width:44px;height:44px;border:0;border-radius:13px;background:var(--navy);color:#fff}.sidebar{position:fixed;left:-260px;width:244px;transition:left .25s}.sidebar.open{left:0}.main-area{padding:18px}.welcome{height:420px}.welcome>img{width:100%;opacity:.45}.welcome-copy{width:72%;padding:32px 0 20px 28px}.speech{right:18px;bottom:18px;top:auto}.dashboard-grid{grid-template-columns:1fr}.lesson-grid{grid-template-columns:1fr;height:auto}.exercise-panel{min-height:460px}.chat-panel{height:600px}.auth-card{grid-template-columns:1fr}.auth-visual{min-height:390px}.auth-form{padding:30px}.knowledge{grid-template-columns:140px 1fr}}@media(max-width:620px){.main-area{padding:12px}.welcome{height:470px;border-radius:18px}.welcome>img{object-position:60% center;opacity:.38}.welcome-copy{width:100%;padding:26px 22px}.welcome h1{font-size:2rem}.speech{left:22px;right:auto}.dashboard-grid{gap:12px}.card{padding:19px}.knowledge{grid-template-columns:1fr}.global-ring{margin:auto}.domain-list>div{grid-template-columns:90px 1fr 58px}.mat-note{grid-template-columns:1fr 90px}.mat-note img{width:100px;height:120px}.diagnostic-intro{grid-template-columns:1fr;text-align:center}.round-icon{margin:auto}.audit-card{padding:28px 18px}.audit-card h1{font-size:1.55rem}.lesson>header{padding-right:46px}.lesson>header h1{font-size:1.2rem}.exercise-panel{padding:23px;min-height:500px}.exercise-panel h2{font-size:1.6rem}.exercise-panel form{grid-template-columns:1fr}.chat-panel{height:540px}.auth-shell{padding:12px}.auth-shell>.back-link{top:14px;left:14px;z-index:4}.auth-card{width:100%;border-radius:20px}.auth-visual{min-height:350px}.auth-visual>div{left:15px;right:15px;bottom:15px;padding:17px}.auth-visual h1{font-size:1.55rem}.auth-form{padding:24px 18px}.success-box{display:grid;gap:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}.spin{animation:none}}.classroom-app{min-height:100vh}.room-content{max-width:1500px;margin:auto}.mat-room{min-height:100vh;background:linear-gradient(180deg,#ead8be 0 64%,#9f7755 64%);padding:18px 24px 26px;display:grid;grid-template-rows:auto 1fr;overflow:hidden}.room-header{height:54px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:#493724}.room-brand{font-family:Fraunces,serif;font-size:1.35rem;font-weight:800;color:#1d2945;text-decoration:none}.room-header>span{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.room-header>button{justify-self:end;border:0;background:#ffffff75;color:#493724;border-radius:99px;padding:9px 13px;display:flex;align-items:center;gap:7px;font-weight:700}.room-header>.room-back{justify-self:start;background:transparent;padding-left:0}.room-header svg{width:17px}.room-scene{width:min(1500px,100%);margin:auto;display:grid;grid-template-columns:minmax(520px,1.55fr) minmax(330px,.65fr);align-items:end;gap:0;min-height:0}.room-board{align-self:stretch;min-height:680px;background:radial-gradient(circle at 30% 5%,#285448,#12382f 70%);border:14px solid #8b5e35;border-bottom-width:23px;border-radius:8px;color:#f8f1d8;box-shadow:inset 0 0 55px #031d1766,0 22px 45px #3d251d35;padding:48px 56px;position:relative;overflow:auto}.room-board:after{content:"";position:absolute;left:10%;right:10%;bottom:-16px;height:7px;background:#ead9bd80;border-radius:50%}.room-board h1{font-family:Segoe Print,Comic Sans MS,cursive;font-size:clamp(2.2rem,4.3vw,4.6rem);line-height:1.16;letter-spacing:-.04em;margin:18px 0 26px;font-weight:500}.board-kicker{text-transform:uppercase;letter-spacing:.16em;color:#efc475;font-size:.72rem;font-weight:800}.board-rule{height:2px;width:72%;background:#f8f1d855;margin:28px 0}.board-promises{display:grid;gap:17px;margin:0;padding-left:28px;font-family:Segoe Print,cursive;font-size:clamp(1rem,1.6vw,1.35rem)}.room-progress{margin-top:42px;height:7px;background:#ffffff20;border-radius:10px;position:relative}.room-progress>span{display:block;height:100%;border-radius:10px;background:#efbd65;transition:width .35s}.room-progress small{display:block;margin-top:10px;color:#d5e2da}.room-mat{position:relative;min-height:680px;padding:12px 0 0 20px;overflow:hidden}@media(min-width:1001px){.room-board,.room-mat{min-height:calc(100vh - 98px)}.room-mat{height:calc(100vh - 98px)}}.mat-chatbox{height:100%;min-height:0;width:100%;background:#fffdf8;color:#1d2945;border-radius:26px;box-shadow:0 18px 38px #3a261d2d;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.room-chat-head{display:flex;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid #e9e2d8;background:#fffaf2}.room-chat-head img{width:54px;height:54px;border-radius:16px;object-fit:cover;object-position:50% 18%}.room-chat-head>div{display:grid;gap:3px}.room-chat-head strong{font-family:Fraunces,serif;font-size:1.15rem}.room-chat-head span{color:#6c7485;font-size:.76rem}.room-chat-head i{display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:50%;background:#3aae78}.room-chat-messages{min-height:0;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px}.room-message{width:fit-content;max-width:92%;padding:14px 15px;border-radius:18px;line-height:1.48;overflow-wrap:anywhere}.room-message.mat{align-self:flex-start;background:#f0ede8;border-bottom-left-radius:5px}.room-message.learner{align-self:flex-end;background:var(--indigo);color:#fff;border-bottom-right-radius:5px}.room-chat-composer{padding:12px;border-top:1px solid #e9e2d8;background:#fff}.room-chat-composer form{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px}.room-chat-composer textarea{resize:none;border:1px solid #ddd7ce;border-radius:14px;padding:11px 12px;color:#1d2945;background:#fffdf9;outline:none;font:inherit}.room-chat-composer textarea:focus{border-color:var(--indigo);box-shadow:0 0 0 3px #5c57df16}.room-chat-composer button{border:0;border-radius:14px;background:var(--indigo);color:#fff;display:grid;place-items:center}.room-chat-composer button:disabled{opacity:.5}.room-chat-composer svg{width:19px}.bubble-copy strong{font-family:Fraunces,serif;font-size:1.3rem}.bubble-copy p{margin:7px 0 0;line-height:1.55;color:#4d586d}.bubble-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.bubble-actions button{border:1px solid #dcd6ca;background:#fff;color:#2b3650;border-radius:99px;padding:9px 13px;font-weight:700;font-size:.82rem;display:flex;align-items:center;gap:6px}.bubble-actions button:hover,.bubble-actions button:focus-visible{background:#eceaff;border-color:#8984e9}.bubble-actions .bubble-primary{background:var(--indigo);border-color:var(--indigo);color:#fff}.board-question{font-size:clamp(1.8rem,3.2vw,3.25rem)!important;max-width:950px}.board-answer{max-width:680px;margin-top:34px}.board-answer form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.board-answer label{display:grid;gap:8px;color:#d7e4dc;font-weight:700}.board-answer input{border:1px solid #ffffff38;background:#ffffff12;color:#fff;border-radius:12px;padding:14px 16px;outline:none}.board-answer input::placeholder{color:#dce6df99}.board-answer input:focus{border-color:#efbd65;background:#ffffff18}.chalk-button{border:0;background:#efbd65;color:#26362f;border-radius:12px;padding:14px 18px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:7px}.chalk-skip{border:0;background:transparent;color:#f4dcae;text-decoration:underline;padding:15px 0}.audit-counter{display:grid;gap:4px}.audit-counter span{font-size:.75rem;color:#687187}.audit-counter strong{font-size:1.15rem}.board-welcome{max-width:700px;margin-top:36px;padding-top:24px;border-top:1px solid #f8f1d842;font-family:Segoe Print,Comic Sans MS,cursive}.board-welcome p{font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.65}.board-welcome span{color:#efc475;font-size:.9rem}.board-transition{min-height:100%;display:grid;place-content:center;justify-items:center;gap:14px;text-align:center;font-family:Segoe Print,Comic Sans MS,cursive}.board-transition p{margin:0;font-size:clamp(1.25rem,2.3vw,2rem)}.board-transition small{color:#efc475}.board-transition>svg{width:38px;height:38px;color:#efc475}.board-sponge{width:94px;height:48px;border-radius:12px 12px 7px 7px;background:linear-gradient(#edc36f 0 56%,#b77b3f 57%);box-shadow:0 8px #092a23aa,0 0 24px #ffffff20;animation:wipe-board .82s ease-in-out infinite alternate}.board-erasing{animation:board-dust .85s ease both}@keyframes wipe-board{0%{transform:translate(-110px) rotate(-5deg)}to{transform:translate(110px) rotate(5deg)}}@keyframes board-dust{50%{filter:brightness(1.18)}}.board-course-title{font-size:clamp(1.8rem,3vw,3.15rem)!important;margin-bottom:14px!important}.course-board-progress{height:6px;background:#ffffff1f;border-radius:9px;overflow:hidden;margin-bottom:12px}.course-board-progress i{display:block;height:100%;background:#efc475;transition:width .35s ease}.course-room-notes{min-height:55px;padding-top:10px}.course-room-notes p{font-size:clamp(1rem,1.35vw,1.2rem)}.room-board .board-visual{height:min(250px,28vh);margin:4px auto 10px}.room-checkpoint{margin-top:14px;padding:18px;background:#ffffff0c;border:1px solid #ffffff20;border-radius:14px}.room-checkpoint h2{margin:8px 0;font-family:Segoe Print,Comic Sans MS,cursive;font-size:clamp(1.1rem,1.6vw,1.45rem);line-height:1.45}.room-checkpoint span{color:#d1e0d8;font-size:.8rem}.board-course-complete{min-height:380px;display:grid;place-content:center;justify-items:center;gap:15px;font-family:Segoe Print,cursive;text-align:center}.board-course-complete svg{width:58px;height:58px;color:#efc475}.chat-success,.chat-nudge{display:block;margin-top:9px;font-weight:700}.chat-success{color:#2f8a61}.chat-nudge{color:#a26524}.room-exercise-answer{margin-top:18px}.board-domains{display:grid;gap:18px;margin-top:34px;max-width:760px}.board-domains>div{display:grid;grid-template-columns:minmax(150px,220px) 1fr 80px;align-items:center;gap:14px}.board-domains i{height:9px;background:#ffffff1c;border-radius:9px;overflow:hidden}.board-domains b{display:block;height:100%;background:#efbd65;border-radius:9px}.board-domains em{font-style:normal;color:#d2e1d8;font-size:.78rem}@media(max-width:1000px){.mat-room{overflow:auto}.room-scene{grid-template-columns:1fr}.room-board{min-height:620px}.room-mat{min-height:0;height:520px;padding:18px 0 0}.mat-chatbox{height:100%;min-height:0}.room-header>span{display:none}}@media(max-width:620px){.mat-room{padding:10px 10px 0;background:linear-gradient(180deg,#ead8be 0 72%,#9f7755 72%)}.room-header{height:48px;grid-template-columns:1fr auto}.room-header>button{font-size:0;width:40px;height:40px;padding:0;justify-content:center}.room-header>button svg{width:18px}.room-scene{display:flex;flex-direction:column}.room-board{order:2;width:100%;min-height:540px;border-width:8px;border-bottom-width:14px;padding:28px 20px 80px}.room-board h1{font-size:2.25rem}.room-mat{order:1;width:100%;min-height:0;height:430px;padding:8px 0 0}.mat-chatbox{width:100%;height:100%;min-height:0;border-radius:20px}.room-chat-head{padding:11px 13px}.room-chat-head img{width:45px;height:45px}.room-chat-messages{padding:13px}.room-message{max-width:96%;padding:12px}.bubble-actions{gap:7px}.bubble-actions button{font-size:.76rem;padding:8px 10px}.board-answer form{grid-template-columns:1fr}.chalk-button{width:100%}.board-domains>div{grid-template-columns:105px 1fr 64px;font-size:.78rem}.room-progress{margin-top:28px}}.answer-zone{background:#f7f3ee;border:1px solid var(--line);border-radius:17px;padding:15px}.exercise-panel label small{color:#777f8f;font-weight:400;line-height:1.4}.talk-button{border:0;background:transparent;color:var(--indigo);padding:12px 2px 0;display:flex;align-items:center;gap:7px;font-weight:700}.talk-button svg{width:18px}.course-invite{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;background:linear-gradient(120deg,#fffdf9,#f0efff)}.course-invite p{margin-bottom:0;line-height:1.5;color:#626b7d}.course-invite .primary-button{white-space:nowrap}.page-heading{min-height:220px;background:linear-gradient(120deg,#172645,#2e4270);color:#fff;border-radius:24px;padding:34px 250px 34px 36px;position:relative;overflow:hidden;display:flex;align-items:center}.page-heading>div{position:relative;z-index:2}.page-heading h1{font-size:2.25rem;margin-bottom:10px}.page-heading p:not(.eyebrow){color:#d5deef;line-height:1.55;max-width:700px}.page-heading img{position:absolute;right:10px;bottom:-70px;width:250px;height:310px;object-fit:cover;border-radius:50% 50% 20px 20px}.courses-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.course-maker,.course-library{background:#fffdf9;border:1px solid #fff;border-radius:20px;padding:26px;box-shadow:0 10px 32px #432c1810}.course-maker .primary-button{width:100%}.course-recommendation{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin:18px 0;padding:18px;border:1px solid #cbc5ff;border-radius:16px;background:linear-gradient(135deg,#f0eeff,#fff9ef)}.course-recommendation h3{margin:2px 0 6px}.course-recommendation p:last-child{margin:0;color:#606a80;line-height:1.45}.course-recommendation .primary-button{width:auto;white-space:nowrap}.catalog-note{color:#687187;line-height:1.55;margin:12px 0 18px}.official-domains{display:grid;gap:14px}.official-domains article{border:1px solid var(--line);border-radius:15px;padding:16px;background:#fffaf4}.official-domains h3{font-size:1rem;margin:0 0 4px}.official-domains article>p{color:#737b8d;font-size:.82rem;line-height:1.4;margin:0 0 10px}.official-domains button{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px;border:0;border-radius:12px;background:#eeecff;color:var(--navy);text-align:left}.official-domains button:hover{background:#e2dfff}.official-domains button>svg{width:19px;color:var(--indigo)}.official-domains button span{display:grid;gap:3px}.official-domains button small{color:#687187;line-height:1.3}.course-list{display:grid;gap:9px}.course-list>button{border:1px solid var(--line);background:#fffaf4;border-radius:14px;padding:12px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;text-align:left;gap:11px;color:var(--navy)}.course-list>button:hover{border-color:#aaa6f0;background:#f7f5ff}.course-status{width:38px;height:38px;border-radius:12px;background:#eeecff;color:var(--indigo);display:grid;place-items:center}.course-status svg{width:18px}.course-list>button>span:nth-child(2){display:grid;gap:4px}.course-list strong{font-size:.9rem}.course-list small{color:#737b8d;line-height:1.35}.course-list i{height:5px;background:#e7e3de;border-radius:8px;overflow:hidden;margin-top:3px}.course-list i b{display:block;height:100%;background:var(--indigo)}.course-list em{font-style:normal;font-size:.7rem;color:#697085}.empty-course{min-height:250px;display:grid;place-content:center;justify-items:center;color:#858b98}.empty-course svg{width:46px;height:46px;color:#aaa6f0}.course-room{max-width:1450px;margin:auto}.course-room>header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;margin-bottom:12px}.course-room>header>button{border:0;background:transparent;color:var(--indigo);display:flex;align-items:center;gap:7px}.course-room>header h1{font-size:1.45rem;margin:0}.course-room>header>span{font-weight:700;color:#687187;font-size:.78rem}.course-progress{height:7px;background:#dcd7d0;border-radius:10px;overflow:hidden;margin-bottom:16px}.course-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--terra),#f1ae58);transition:width .5s}.course-room-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);gap:18px;min-height:calc(100vh - 145px)}.classroom{min-width:0}.teacher-strip{min-height:128px;background:#fffdf9;border-radius:20px 20px 0 0;padding:17px 18px 17px 132px;position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px}.teacher-strip>img{position:absolute;left:18px;bottom:0;width:104px;height:120px;object-fit:cover;object-position:top;border-radius:48% 48% 0 0}.teacher-strip>div{animation:teacher-in .45s ease both}.teacher-strip strong{color:var(--terra);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.teacher-strip p{margin:5px 0 0;line-height:1.5}.teacher-strip>button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;color:var(--indigo);font-weight:700;display:flex;align-items:center;gap:7px}.teacher-strip>button svg{width:17px}.chalkboard{background:radial-gradient(circle at 20% 10%,#254d42,#14382f 65%);color:#f8f4dc;border:10px solid #9b7048;border-bottom-width:17px;border-radius:4px 4px 13px 13px;box-shadow:inset 0 0 35px #071e1977,0 16px 35px #38261320;padding:25px 30px 28px;min-height:590px;position:relative;overflow:hidden}.chalkboard:after{content:"";position:absolute;left:15%;right:15%;bottom:-12px;height:7px;background:#e3d3b9aa;border-radius:50%}.board-top{display:flex;align-items:baseline;gap:14px;border-bottom:1px solid #ffffff2b;padding-bottom:10px}.board-top span{font-size:.7rem;color:#efc987;text-transform:uppercase;letter-spacing:.1em}.board-top h2{font-family:DM Sans;font-size:1.35rem;margin:0}.chalk-notes{min-height:90px;padding:16px 0 3px}.chalk-notes p{margin:0 0 7px;font-family:Comic Sans MS,Segoe Print,cursive;font-size:1.03rem;opacity:0;transform:translate(-10px);animation:chalk-write .5s ease forwards}.board-visual{display:block;width:100%;height:190px;margin:2px auto 12px;color:#f8f4dc;overflow:visible}.board-visual text{fill:currentColor;font-family:Comic Sans MS,Segoe Print,cursive;font-size:15px}.board-visual path,.board-visual rect{fill:none;stroke:currentColor;stroke-width:2}.board-visual .draw-line{stroke-dasharray:900;stroke-dashoffset:900;animation:draw-board 1.1s .2s ease forwards}.board-visual .right-angle-mark{fill:none;stroke:#efc475;stroke-width:3}.board-visual .vertex-label{fill:#efc475;font-weight:800;font-size:18px}.board-visual circle,.board-visual .filled{fill:#f3ba55;stroke:#f8f4dc}.fraction-visual rect{stroke:#d7e8df}.fraction-visual .filled{animation:fill-piece .45s ease both}.plane-visual .grid{stroke:#d7e8df88;stroke-width:1.5}.plot-dot,.number-point{animation:pop-mark .45s .8s ease both}.plot-dot.second{animation-delay:1s}.number-visual g path{stroke:#d7e8df}.balance-visual>path:not(.draw-line){fill:#ffffff0b;stroke:#f8f4dc}.symbol-cloud{height:170px;display:flex;align-items:center;justify-content:center;gap:36px;font-family:Fraunces;font-size:3rem;color:#f3d38e}.symbol-cloud span{animation:pop-mark .4s ease both}.symbol-cloud span:nth-child(2){animation-delay:.15s}.symbol-cloud span:nth-child(3){animation-delay:.3s}.symbol-cloud span:nth-child(4){animation-delay:.45s}.checkpoint{background:#ffffff0c;border-top:1px solid #ffffff2b;padding-top:17px}.checkpoint .eyebrow{color:#efc987}.checkpoint h3{font-size:1rem;margin:0 0 13px;line-height:1.45}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice-grid button{min-height:48px;border:1px solid #ffffff30;background:#ffffff0d;color:#fff;border-radius:10px;padding:9px 11px;text-align:left;display:flex;align-items:center;gap:9px}.choice-grid button:hover{background:#ffffff1c;border-color:#f3d38e}.choice-grid button span{width:26px;height:26px;border-radius:50%;background:#ffffff14;display:grid;place-items:center;color:#efc987;font-weight:700;flex:0 0 auto}.course-feedback{margin-top:10px;border-radius:14px;padding:13px 15px;display:flex;align-items:center;gap:11px}.course-feedback p{margin:0;line-height:1.45}.course-feedback.correct{background:#e5f5eb;color:#276c4f}.course-feedback.retry{background:#fff1db;color:#8a541d}.feedback-icon{width:34px;height:34px;border-radius:50%;background:#fff8;display:grid;place-items:center;flex:0 0 auto}.feedback-icon svg{width:18px}.course-chat{background:#fffdf9;border-radius:20px;display:flex;flex-direction:column;min-height:0;overflow:hidden;box-shadow:0 14px 40px #3c281312}.course-chat .messages{min-height:350px}.mat-secret{min-height:600px;background:linear-gradient(145deg,#fff9ed,#eeeaff);border-radius:0 0 22px 22px;padding:60px;display:grid;place-content:center;text-align:center;justify-items:center}.mat-secret>svg{width:62px;height:62px;color:var(--terra);margin-bottom:18px}.mat-secret h2{font-size:2rem}.mat-secret p:not(.eyebrow){font-size:1.12rem;line-height:1.7;max-width:720px}.mat-secret .primary-button{margin-top:22px}@keyframes teacher-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes chalk-write{to{opacity:1;transform:none}}@keyframes draw-board{to{stroke-dashoffset:0}}@keyframes pop-mark{0%{opacity:0;transform:scale(.5);transform-origin:center}to{opacity:1;transform:scale(1)}}@keyframes fill-piece{0%{fill:transparent}to{fill:#f3ba55}}@media(max-width:1100px){.course-room-grid{grid-template-columns:1fr}.course-chat{height:560px}.courses-grid{grid-template-columns:1fr}.course-invite{grid-template-columns:auto 1fr}.course-invite .primary-button{grid-column:1/-1}.page-heading{padding-right:210px}}@media(max-width:620px){.course-recommendation{grid-template-columns:1fr}.course-recommendation .primary-button{width:100%;white-space:normal}.page-heading{min-height:360px;padding:25px 20px 170px}.page-heading h1{font-size:1.8rem}.page-heading img{width:180px;height:210px;right:50%;transform:translate(50%);bottom:-45px}.course-maker,.course-library{padding:19px}.course-room>header{grid-template-columns:1fr auto;padding-right:46px}.course-room>header>button{grid-column:1/-1}.course-room>header h1{font-size:1.2rem}.teacher-strip{padding:16px 15px 16px 92px;grid-template-columns:1fr;min-height:155px}.teacher-strip>img{width:76px;height:102px;left:10px}.teacher-strip>button{justify-self:start}.chalkboard{border-width:7px;border-bottom-width:14px;padding:20px 15px;min-height:620px}.choice-grid{grid-template-columns:1fr}.board-visual{height:160px}.course-chat{height:520px}.mat-secret{min-height:520px;padding:35px 20px}.course-invite{grid-template-columns:1fr;text-align:center}.course-invite .round-icon{margin:auto}}@media(prefers-reduced-motion:reduce){.board-sponge,.board-erasing{animation:none!important}.teacher-strip>div,.chalk-notes p,.board-visual .draw-line,.plot-dot,.number-point,.symbol-cloud span,.fraction-visual .filled{animation:none!important;opacity:1;transform:none;stroke-dashoffset:0}}.course-feedback p{flex:1}.course-feedback>button{border:0;background:var(--sage);color:#fff;border-radius:10px;padding:10px 12px;font-weight:700;display:flex;align-items:center;gap:6px;white-space:nowrap}.course-feedback>button svg{width:17px}@media(max-width:620px){.course-feedback{align-items:flex-start;flex-wrap:wrap}.course-feedback>button{width:100%;justify-content:center}}.home-mat{background:linear-gradient(120deg,#fffdf9,#f2efff 70%);border:1px solid #fff;border-radius:22px;box-shadow:0 12px 35px #34265714;margin-bottom:18px;padding:23px 25px 23px 122px;min-height:185px;display:grid;grid-template-columns:minmax(0,1fr) 210px;align-items:center;gap:24px;position:relative;overflow:hidden}.home-mat>img{position:absolute;left:15px;bottom:-16px;width:100px;height:145px;object-fit:cover;object-position:top;border-radius:48% 48% 12px 12px}.home-mat-copy h2{font-size:1.35rem;margin:2px 0 6px}.home-mat-copy>p:not(.eyebrow){color:#626b7d;line-height:1.45;margin:0 0 12px}.home-mat form{display:grid;grid-template-columns:1fr auto;gap:9px}.home-mat textarea{border:1px solid #d8d3e2;background:#fff;border-radius:13px;padding:12px 14px;resize:none;min-height:54px}.home-mat form .primary-button{white-space:nowrap}.home-mat-reply{margin-top:10px;background:#fff8ec;color:#79501d;border:1px solid #f0d8b8;border-radius:12px;padding:10px 12px;display:flex;align-items:flex-start;gap:9px}.home-mat-reply svg{width:18px;flex:0 0 auto;margin-top:2px}.home-mat-reply p{margin:0;line-height:1.4}.mini-board{height:132px;background:radial-gradient(circle at 20% 10%,#285247,#14382f 68%);border:7px solid #9b7048;border-bottom-width:11px;border-radius:5px;color:#f7efd1;display:grid;place-content:center;justify-items:center;position:relative;box-shadow:inset 0 0 20px #071e1970}.mini-board span{font-family:Segoe Print,cursive;font-size:.75rem;color:#efc987}.mini-board b{font-family:Segoe Print,cursive;font-size:3.2rem;font-weight:400}.mini-board i{position:absolute;left:35px;right:35px;bottom:24px;height:2px;background:#f7efd1;transform:scaleX(.15);transform-origin:left;opacity:.35}.mini-board.drawing i{animation:home-draw 1.15s ease-in-out infinite}.mini-board.drawing b{animation:pop-mark .7s ease-in-out infinite alternate}.thales-visual .parallel{stroke:#f3ba55;animation-delay:.65s}.thales-visual circle{animation:pop-mark .35s .9s ease both}@keyframes home-draw{0%{transform:scaleX(.08);opacity:.25}70%,to{transform:scaleX(1);opacity:1}}@media(max-width:850px){.home-mat{grid-template-columns:1fr;padding-right:22px}.mini-board{display:none}}@media(max-width:620px){.home-mat{padding:20px 17px 20px 82px;min-height:0}.home-mat>img{width:68px;height:105px;left:8px;bottom:auto;top:20px}.home-mat form{grid-template-columns:1fr}.home-mat form .primary-button{width:100%}}@media(prefers-reduced-motion:reduce){.mini-board.drawing i,.mini-board.drawing b,.thales-visual circle{animation:none!important;opacity:1;transform:none}.mini-board.drawing i{transform:scaleX(1)}}.exercise-visual{margin:18px 0 22px;padding:12px 14px 6px;background:linear-gradient(145deg,#f8fbff,#f3f0ff);border:1px solid #dcd8ee;border-radius:18px;overflow:hidden}.exercise-visual svg{display:block;width:100%;height:auto;max-height:330px;color:#34415f}.exercise-grid path{stroke:#d9deea;stroke-width:1}.exercise-grid text,.exercise-ticks text,.exercise-axis-label{fill:#5f6980;font:12px DM Sans,sans-serif}.exercise-axes path,.exercise-ticks path{fill:#34415f;stroke:#34415f;stroke-width:2}.exercise-ticks path{stroke-width:1.3}.exercise-point{fill:#ee9b43;stroke:#fff;stroke-width:3;filter:drop-shadow(0 3px 3px #8b5a2438)}.exercise-point-label{fill:#212a42;font:700 16px DM Sans,sans-serif}.exercise-bar{fill:#5c57df;opacity:.88}.exercise-line{fill:none;stroke:#5c57df;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}@media(max-width:620px){.exercise-visual{margin:14px 0 18px;padding:7px 7px 2px}.exercise-visual svg{min-width:430px}.exercise-visual{overflow-x:auto}.exercise-axis-label{font-size:11px}}.teacher-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.teacher-actions button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;color:var(--indigo);font-weight:700;display:flex;align-items:center;gap:7px}.teacher-actions button:first-child{background:var(--indigo);color:#fff;border-color:var(--indigo)}.teacher-actions button svg{width:17px}.checkpoint-reveal{animation:teacher-in .45s ease both}.board-listening{min-height:72px;border-top:1px solid #ffffff20;display:flex;align-items:center;gap:10px;color:#d8e5df;font-size:.85rem}.board-listening span{width:9px;height:9px;border-radius:50%;background:#f3ba55;box-shadow:0 0 #f3ba5580;animation:listening-pulse 1.4s infinite}@keyframes listening-pulse{70%{box-shadow:0 0 0 9px #f3ba5500}}@media(max-width:620px){.teacher-actions{justify-content:flex-start}.teacher-strip>.teacher-actions{animation:none}}@media(prefers-reduced-motion:reduce){.board-listening span,.checkpoint-reveal{animation:none!important}}
