:root{--ink:#214f4d;--muted:#748c81;--teal:#177e73;--line:#dbe6db;--cream:#fffdf6;--gold:#f5c45d;--bg:#f2f7ef}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Trebuchet MS',Arial,sans-serif;line-height:1.45}button,input,select,textarea{font:inherit}button{border:0;color:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e9ad39;outline-offset:4px}input,select,textarea{color:var(--ink);border:1px solid #cbdccf;border-radius:10px;background:white;padding:12px;min-width:0}textarea{resize:vertical;min-height:90px;width:100%}input[type=checkbox]{accent-color:var(--teal);width:18px;height:18px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,4vw,48px);letter-spacing:-1.5px;line-height:1.15;margin-bottom:16px}h2{font-size:23px;letter-spacing:-.5px}p{color:var(--muted);line-height:1.7}em{font-style:normal;color:var(--teal)}.header{max-width:1250px;margin:auto;padding:25px 36px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{display:flex;gap:12px;align-items:center;background:none;text-align:left;font-size:27px;font-weight:bold;letter-spacing:-1px;padding:0}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:2px}.brand-icon{background:var(--teal);color:#ffe091;font-size:36px;width:51px;height:51px;display:grid;place-items:center;border-radius:16px}.header-actions,.nav-tools{display:flex;align-items:center;gap:10px}.class-badge{font-size:10px;letter-spacing:1.7px;border:1px solid #cbdcce;border-radius:20px;padding:10px 15px;font-weight:bold}.icon{background:#fff9;min-width:43px;height:43px;border:1px solid var(--line);border-radius:50%;font-size:20px}.primary{background:var(--teal);color:white;border-radius:13px;padding:14px 23px;font-weight:bold;box-shadow:0 4px 0 #164e4938;transition:transform .2s}.primary:hover:enabled{transform:translateY(-2px);filter:brightness(1.05)}.secondary,.file-button{background:#fffdf5;border:1px solid #d2dfd1;border-radius:11px;padding:11px 16px;font-size:13px;font-weight:bold;display:inline-flex;align-items:center;justify-content:center;gap:5px;cursor:pointer}.text-btn{background:transparent;font-size:13px;font-weight:bold;padding:10px 0}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:2px;color:var(--teal);margin-bottom:16px}.eyebrow:before{content:'✦';color:#d8aa41;font-size:15px;margin-right:9px}main{max-width:1180px;margin:auto;padding:18px 30px 50px;min-height:calc(100vh - 180px)}footer{max-width:1180px;margin:auto;border-top:1px solid var(--line);padding:20px 30px;display:flex;gap:15px;justify-content:space-between;color:#82968a;font-size:11px}.login-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;min-height:580px}.login-copy h1{font-size:clamp(42px,5.5vw,66px);line-height:1.07;letter-spacing:-2.5px}.lead{font-size:17px}.login-card{margin-top:30px;background:#fffdf6;border:1px solid white;border-radius:24px;padding:25px;box-shadow:0 12px 40px #3c644a09}.login-card h2{font-size:15px;letter-spacing:0;margin:13px 0}.lock-mark{display:inline-grid;place-items:center;width:38px;height:38px;background:#edf1e3;border-radius:12px;font-size:19px}.login-card label{font-size:12px;color:var(--muted);display:block;margin-bottom:10px}.password-row{display:flex;gap:10px}.password-row input{width:100%;letter-spacing:6px;font-size:18px}.password-row button{white-space:nowrap;font-size:13px}.error{font-size:12px;color:#ab5143;min-height:18px;margin:9px 0 0}.mini-tags{display:flex;gap:18px;margin-top:21px;font-size:10px;font-weight:bold;color:#77917f;flex-wrap:wrap}.login-art{height:470px;position:relative;isolation:isolate}.login-art>.scene-svg{position:absolute;inset:10px 0;width:100%;height:95%;border-radius:45% 45% 36% 36%;transform:rotate(-4deg);box-shadow:0 16px 0 #dce8d4;z-index:-1}.login-friend{position:absolute;filter:drop-shadow(0 12px 5px #456e4b1f);animation:float 5s infinite ease-in-out}.login-friend.one{width:230px;bottom:75px;left:2%;transform:rotate(-9deg)}.login-friend.two{width:190px;bottom:50px;right:0;transform:rotate(10deg);animation-delay:-2s}.float-tile{position:absolute;background:#fffaf0;border-radius:18px;padding:10px 21px;font-size:35px;font-weight:bold;box-shadow:0 5px 0 #c8d8bd;animation:float 4s ease-in-out infinite}.float-tile.a{left:5%;top:30px;rotate:-12deg}.float-tile.b{right:23%;top:0;rotate:10deg;background:#f5d8bb;color:#b7794e}.float-tile.c{right:0;top:110px;rotate:14deg;background:#dcd2ed;color:#81709c}.art-bubble{position:absolute;bottom:5px;left:15%;border-radius:15px;background:white;padding:15px 21px;font-size:13px;font-weight:bold;box-shadow:0 5px 20px #456e4b0a}.scene-svg,.creature{width:100%;height:100%;display:block}.creature{overflow:visible}.eyes{animation:blink 7s infinite;transform-origin:center}.page-heading{margin:22px 0 32px}.page-heading h1{margin-bottom:12px}.page-heading p{font-size:14px}.centered{text-align:center}.student-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:30px}.student-card{position:relative;background:var(--cream);border:2px solid white;box-shadow:0 6px 0 #dce7d6;border-radius:25px;padding:25px 14px;transition:.2s;overflow:hidden}.student-card:before{content:'';position:absolute;width:220px;height:180px;border-radius:50%;background:#e4efdc;top:-65px;left:50%;translate:-50%}.student-card:nth-child(2):before{background:#dfebeb}.student-card:nth-child(3):before{background:#f5e2d3}.student-card:nth-child(4):before{background:#e7e0f2}.student-art{width:130px;height:140px;margin:0 auto 16px;position:relative}.student-card strong{display:block;font-size:19px;position:relative}.student-card small{display:block;margin-top:5px;font-size:11px;letter-spacing:1px;color:#7d9381}.student-card .star-chip{display:inline-block;margin-top:20px}.student-card:hover{transform:translateY(-5px);border-color:#a1c8af}.soft-note{background:#e7eee1;padding:18px 22px;border-radius:15px;font-size:13px;color:#6d836e;text-align:center;margin-top:28px}.page-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.star-chip{background:#fff2c9;border:1px solid #eddfaf;color:#a07b27;font-size:12px;font-weight:bold;border-radius:20px;padding:8px 14px;white-space:nowrap}.overview{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:26px 0}.overview>div,.overview>button{display:grid;grid-template-columns:40px 1fr;align-items:center;text-align:left;background:#fffdf6;border:1px solid white;border-radius:18px;padding:16px 20px;gap:2px 10px}.overview span{grid-row:span 2;font-size:30px;color:#d4ac4b}.overview strong{font-size:19px}.overview small{color:#82927d;font-size:11px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:30px 0 17px}.section-title h2{margin:0}.section-title>span{font-size:11px;color:#8c9b87}.resume{width:100%;border:1px dashed #a8c8b0;background:#e6f2e4;border-radius:14px;padding:16px 22px;text-align:left;font-weight:bold}.resume span{font-size:12px;font-weight:normal;margin-left:12px}.goal-code{font-size:11px;color:#809780;font-weight:bold}.segmented{padding:4px;background:#e0eadd;border-radius:12px;display:flex}.segmented button{padding:10px 14px;background:transparent;border-radius:9px;font-size:12px;font-weight:bold}.segmented button.active{background:#fffdf5;box-shadow:0 2px 5px #31533312}.secondary.on{border-color:#97c0a8;background:#e3efdf}.model-panel{text-align:center;background:#eef4e7;border-radius:14px;padding:14px 20px;min-height:80px;overflow-wrap:anywhere}.model-panel small{font-size:9px;letter-spacing:2px;color:#8ca083;display:block;margin-bottom:5px}.model-panel strong{font-size:25px;letter-spacing:3px}.model-hidden{display:none}.instruction{text-align:center;font-size:17px;font-weight:bold;margin:24px 0}.choices{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px auto;max-width:900px}.choice{border:2px solid #dbe4d1;background:#fffef8;border-radius:20px;min-height:105px;font-size:25px;padding:20px;font-weight:bold;box-shadow:0 5px 0 #e0e7d7;overflow-wrap:anywhere}.choice:hover:enabled{border-color:#83b69a;background:#f2f8e9}.choice.correct{background:#dcefcf;border-color:#8ab777;opacity:1}.feedback{text-align:center;color:var(--teal);font-weight:bold;min-height:26px;margin:22px 0;font-size:16px}.task-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px}.slots{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;margin:25px 0}.word{display:flex;gap:5px;flex-wrap:wrap;justify-content:center}.slot{display:grid;place-items:center;width:45px;height:57px;border:2px dashed #c2d2bd;background:#f1f5e9;border-radius:10px;font-size:27px;font-weight:bold}.slot.current{border-color:#e5b54e;background:#fff4c9}.slot.filled{border:2px solid #b5d0a8;background:#e1efda}.letters{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;max-width:900px;margin:25px auto}.letter{min-width:58px;height:64px;background:#fff3d5;border:1px solid #e9d7aa;box-shadow:0 4px 0 #decca0;border-radius:13px;font-size:29px;font-weight:bold;cursor:grab}.letter:disabled{opacity:.18;box-shadow:none}.hinted{outline:4px solid #e7b94f;outline-offset:3px}.subtle{font-size:11px;color:#869780;line-height:1.65;margin:17px 0}.canvas-wrap{border:2px solid #d9e4d2;border-radius:16px;overflow:hidden;background:#fffefa}.canvas-wrap canvas{width:100%;height:auto;display:block;touch-action:none;cursor:crosshair}.evaluation{background:#fffef6;border:2px solid #dae6d2;border-radius:24px;padding:26px;margin-top:30px;scroll-margin-top:20px}.evaluation .section-title{margin-top:0}.evaluation p{font-size:13px}.grade-options{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.grade-options button{background:#f4f5ea;border:2px solid transparent;border-radius:14px;padding:15px 10px;font-size:12px;font-weight:bold;display:flex;align-items:center;gap:8px}.grade-options button>span{background:var(--grade);color:white;border-radius:8px;width:29px;height:29px;display:grid;place-items:center;flex-shrink:0}.grade-options .chosen{border-color:var(--grade);background:white}.evaluation label{display:block;font-size:12px;font-weight:bold}.evaluation textarea{margin-top:10px}.evaluation .task-actions{justify-content:flex-start;margin-top:15px}.report-toolbar{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:14px;background:#fffdf6;padding:20px;border-radius:19px}.report-toolbar label{font-size:11px;font-weight:bold}.report-toolbar input,.report-toolbar select{display:block;width:100%;margin-top:7px;font-size:13px}.report-actions{display:flex;align-items:center;gap:12px;margin:20px 0;flex-wrap:wrap}.check{display:flex!important;align-items:center;gap:8px;font-size:12px;font-weight:normal!important}.table-wrap{overflow:auto;border:1px solid #dbe5d2;border-radius:17px;background:#fffdf7}table{width:100%;border-collapse:collapse;font-size:12px;min-width:650px}th{text-align:left;background:#e7efe0;color:#718367;font-size:10px;text-transform:uppercase;letter-spacing:.8px;padding:15px}td{padding:15px;border-bottom:1px solid #e8ecdf}td:first-child{width:48%}td small{display:block;color:#87977f;font-size:11px;line-height:1.5;margin-top:4px}td:first-child b{color:var(--teal)}tbody tr:last-child td{border-bottom:0}.progress-track{height:6px;background:#e8eee0;border-radius:10px;margin-top:7px;min-width:100px}.progress-track i{display:block;height:100%;border-radius:10px;background:#83b590}.percentage{font-size:10px;white-space:nowrap}.record-list{display:grid;gap:10px}.record-card{display:flex;align-items:center;gap:15px;border:1px solid #e2e9d9;border-radius:15px;background:#fffdf5;padding:17px;text-align:left}.record-card small{display:block;color:#84957b;font-size:10px;margin-top:4px}.record-card b{font-size:13px}.record-card>span:last-child{margin-left:auto;font-size:11px;color:#78916d}.record-badge{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;color:white;font-weight:bold;flex-shrink:0}.empty-state{padding:35px;background:#e9f0e0;text-align:center;border-radius:20px;font-size:14px;color:#78906d}dialog{border:1px solid white;border-radius:25px;padding:28px;width:min(720px,94vw);max-height:90dvh;color:var(--ink);box-shadow:0 30px 100px #173b4940;background:#fffef8}dialog::backdrop{background:#183d4d77;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.dialog-top h2{margin:0;font-size:24px}dialog p{font-size:13px}dialog form>label{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;margin:16px 0}dialog input{max-width:55%}dialog .primary{margin-top:8px}.record-details{display:grid;grid-template-columns:1fr 1fr;gap:9px;font-size:12px;background:#edf3e6;padding:15px;border-radius:12px}.sample{width:100%;height:auto;border:1px solid #d6e3cd;border-radius:14px;margin:20px 0}.reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.reward{background:#fff2ce;border:1px solid #e8d9a5;border-radius:20px;padding:15px}.reward svg{width:90px;height:90px;margin:auto}.reward strong,.reward small{display:block}.reward strong{font-size:13px}.reward small{font-size:10px;margin-top:6px;color:#927c47}.reward.locked{background:#f0f2e9;border-color:#e0e6d8}.reward.locked svg{filter:grayscale(1);opacity:.35}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#214f4d;color:white;padding:15px 22px;max-width:calc(100vw - 30px);width:max-content;font-size:13px;border-radius:15px;box-shadow:0 8px 30px #234d492a;z-index:50;opacity:0;pointer-events:none;transition:.2s}#toast.visible{opacity:1;transform:translate(-50%,0)}#celebration{pointer-events:none;position:fixed;inset:0;z-index:40;overflow:hidden}#celebration i{position:absolute;top:-20px;width:10px;height:15px;animation:fall 2.3s ease-in forwards}.enter{animation:enter .25s ease-out}.wiggle{animation:wiggle .3s}body[data-theme=ocean]{--bg:#edf6f7;--teal:#277e94}body[data-theme=space]{--bg:#f0eff8;--teal:#7562a4}[hidden]{display:none!important}.calm *{animation:none!important;transition:none!important;scroll-behavior:auto!important}@keyframes float{50%{translate:0 -9px}}@keyframes blink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.1)}}@keyframes enter{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes fall{to{transform:translateY(105vh) rotate(600deg);opacity:0}}@keyframes wiggle{25%{translate:-5px}75%{translate:5px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:950px){.student-grid{gap:14px}.student-art{width:110px;height:120px}.student-card strong{font-size:16px}.grade-options{grid-template-columns:1fr 1fr}.report-toolbar{grid-template-columns:1fr 1fr}.login-layout{gap:25px}.login-friend.one{width:190px;left:-5%}.login-friend.two{width:160px;right:-4%}.login-art{height:420px}.login-card{padding:21px}.password-row{flex-wrap:wrap}.password-row input{flex:1;min-width:90px}}@media(max-width:680px){.header{padding:19px 18px}.brand{font-size:23px;gap:9px}.brand-icon{width:43px;height:43px;font-size:30px}.brand small{font-size:7px;letter-spacing:1.6px}.class-badge{display:none}.header-actions{gap:7px}.icon{min-width:39px;height:39px}main{padding:12px 16px 35px}.login-layout{display:flex;flex-direction:column;gap:20px;min-height:0}.login-copy{width:100%}.login-copy h1{font-size:49px}.login-art{height:330px;width:100%;max-width:420px;margin:20px auto}.login-friend.one{width:165px;left:5%;bottom:55px}.login-friend.two{width:145px;right:5%;bottom:30px}.float-tile{font-size:28px;padding:9px 16px}.float-tile.a{top:0}.float-tile.b{top:-10px}.float-tile.c{top:60px}.art-bubble{bottom:-8px;left:10%;font-size:12px}.login-card{margin-top:22px}.mini-tags{gap:12px}.student-grid{grid-template-columns:1fr 1fr;gap:14px}.student-card{padding:20px 10px}.student-art{width:110px;height:120px}.student-card strong{font-size:16px}.student-card small{font-size:10px}.page-heading{margin-top:15px}.page-heading h1{font-size:31px}.page-heading .eyebrow{font-size:9px}.page-nav{gap:8px;flex-wrap:wrap;margin-bottom:14px}.nav-tools .secondary{font-size:11px;padding:10px}.overview{gap:7px;margin:22px 0}.overview>div,.overview>button{padding:13px 9px;display:block;text-align:center}.overview span{display:block;font-size:23px;margin-bottom:3px}.overview strong{display:block;font-size:16px}.overview small{font-size:9px;display:block;margin-top:3px}.overview>button strong{font-size:12px}.section-title h2{font-size:21px}.resume{font-size:13px}.resume span{display:block;margin:5px 0 0;font-size:11px}.segmented button{font-size:11px;padding:9px 11px}.model-panel strong{font-size:20px;letter-spacing:1px}.model-panel{padding:12px;min-height:70px}.instruction{font-size:15px;margin:20px 5px}.choices{gap:10px}.choice{min-height:95px;font-size:19px;padding:15px 10px;line-height:1.4}.task-actions{gap:8px}.task-actions button{font-size:12px;padding:12px 13px}.feedback{font-size:14px}.slot{width:29px;height:43px;font-size:23px}.word{gap:3px}.slots{gap:12px}.letter{min-width:48px;height:55px;font-size:26px}.letters{gap:8px}.evaluation{padding:20px 16px}.evaluation h2{font-size:21px}.grade-options{gap:8px}.grade-options button{font-size:11px;padding:12px 8px}.report-toolbar{padding:15px;gap:10px}.report-toolbar label{font-size:10px}.report-toolbar select,.report-toolbar input{font-size:11px;padding:9px}.report-actions{gap:10px}.report-actions .primary{font-size:12px}.report-actions .check{font-size:11px}.record-card{gap:10px;padding:13px}.record-card>span:last-child{font-size:0}.record-card>span:last-child:after{content:'→';font-size:16px}.record-card small{line-height:1.6}.record-card b{font-size:12px}footer{padding:18px;flex-direction:column;gap:7px;font-size:10px}dialog{padding:23px 18px}dialog form>label{font-size:12px;gap:12px}dialog input{max-width:50%;font-size:13px}.reward-grid{grid-template-columns:1fr 1fr;gap:12px}.reward svg{width:75px;height:75px}.record-details{grid-template-columns:1fr;font-size:12px}#toast{font-size:12px;bottom:15px}.soft-note{font-size:12px;padding:15px}}
/* Focus edition: all learning controls remain stable, with no ambient motion. */
.welcome-compact{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:28px 0}.welcome-compact .eyebrow{display:block;margin-bottom:10px}.welcome-compact h1{font-size:36px;margin-bottom:10px}.welcome-compact p{font-size:14px;margin:0}.album-shortcut{display:grid;grid-template-columns:30px auto;gap:0 8px;align-items:center;background:#fff5d9;border:1px solid #eadcb4;border-radius:18px;padding:15px 20px}.album-shortcut>span{color:#d8a440;font-size:27px;grid-row:span 2}.album-shortcut strong{font-size:23px;text-align:left}.album-shortcut small{font-size:10px;color:#a38b51}.subject-tabs{display:flex;border-bottom:1px solid #d7e2d3;gap:12px;margin:28px 0 24px}.subject-tabs button{position:relative;padding:15px 23px;background:transparent;font-weight:bold;font-size:15px;color:#7a8a77;border-bottom:3px solid transparent;display:flex;align-items:center;gap:9px}.subject-tabs button.active{color:var(--teal);border-bottom-color:var(--teal)}.subject-tabs span{font-size:22px}.activity-menu{display:grid;grid-template-columns:1fr 1fr;gap:20px}.activity-tile{display:flex;align-items:center;background:#fffef8;border:1px solid #dce5d4;box-shadow:0 4px 0 #e2e9db;border-radius:22px;padding:22px;text-align:left;gap:23px;min-height:180px;transition:transform .18s,border-color .18s}.activity-tile:hover{border-color:#a6c0a1;transform:translateY(-3px)}.activity-art{width:140px;height:130px;background:#edf2e3;border-radius:18px;display:flex;align-items:center;justify-content:center;position:relative;color:#668d70;flex-shrink:0;gap:6px}.art-1{background:#f7efd9;color:#a68339}.art-2{background:#e7edf3;color:#7396ac}.art-3{background:#eee8f3;color:#9d85b2}.activity-art svg{width:105px;height:90px}.mini-card{font-style:normal;font-size:20px;font-weight:bold;background:#fffdf6;border:1px solid #cfddc7;border-radius:7px;width:31px;height:44px;display:grid;place-items:center;transform:rotate(-7deg)}.mini-card.selected{background:#fff6d2;border:2px solid #bbcc9b;height:51px;transform:rotate(5deg);position:relative}.mini-card span{position:absolute;right:-5px;top:-7px;background:#79a77f;color:white;width:17px;height:17px;font-size:11px;border-radius:50%;display:grid;place-items:center}.letter-block{font-style:normal;background:#fffdf5;border-radius:8px;padding:7px 8px;font-size:22px;font-weight:bold;box-shadow:0 4px 0 #e2d6b7;rotate:-8deg}.letter-block:nth-child(2){rotate:7deg;background:#ffe3a3}.tile-copy{display:block;min-width:0}.tile-copy small{font-size:10px;letter-spacing:2px;color:#9aa48b}.tile-copy strong{display:block;font-size:22px;margin:5px 0 9px}.tile-copy>span{display:block;font-size:12px;color:#8a9781;line-height:1.6}.tile-copy em{display:block;font-style:normal;font-size:11px;font-weight:bold;color:var(--teal);margin-top:17px}.home-footnote{color:#91a087;font-size:11px;text-align:center;margin-top:27px}.resume{margin-top:22px;font-size:12px;padding:13px 20px}.quiet-button{border:0;background:transparent;padding:10px 12px;color:#708077;font-size:12px;border-radius:8px;font-weight:normal}.quiet-button:hover{background:#edf2e9;color:#315c4a}.focus-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:30px;padding-bottom:16px;border-bottom:1px solid #e4e9df}.focus-nav>span{font-size:12px;font-weight:bold;color:#8b9787}.focus-nav .quiet-button{padding:9px 8px}.focus-work{max-width:1000px;margin:0 auto}.focus-instruction{text-align:center;margin:0 0 25px}.focus-instruction h1{font-size:clamp(24px,3vw,34px);font-weight:bold;line-height:1.4;letter-spacing:-.6px;margin:0 0 13px}.focus-controls{display:flex;align-items:center;justify-content:center;gap:15px}.focus-controls .quiet-button{font-size:12px;padding:8px 10px}.model-switch{display:flex;align-items:center;gap:7px;font-size:11px;color:#7c8b77;background:none;border:0;padding:8px 10px}.model-switch i{display:block;position:relative;width:28px;height:16px;background:#d5ddcf;border-radius:20px}.model-switch i:after{content:'';width:12px;height:12px;position:absolute;top:2px;left:2px;background:white;border-radius:50%}.model-switch[aria-pressed=true] i{background:#6fa68e}.model-switch[aria-pressed=true] i:after{left:14px}.focus-work .model-panel{background:#edf2e7;border:1px solid #e1e8d9;padding:12px 20px;min-height:70px;max-width:760px;margin:0 auto 26px}.focus-work .model-panel small{font-size:8px;letter-spacing:1.6px;margin-bottom:5px}.focus-work .model-panel strong{font-size:27px;letter-spacing:2px}.focus-work .choices{max-width:900px;margin:30px auto 22px;gap:22px}.focus-work .choice{min-height:128px;background:#fffefb;border:2px solid #d9e2d4;box-shadow:0 4px 0 #e5ebde;font-size:29px;border-radius:20px}.focus-work .choice.correct{background:#e4f1db;border-color:#93b884}.focus-work .choice:disabled:not(.correct){opacity:.55}.focus-work .choice.correct:disabled{opacity:1}.focus-work .slots{margin:32px 0 25px;gap:15px}.focus-work .letters{margin:27px auto;gap:12px}.focus-work .letter{background:#fffaf0;border-color:#e3dbc5;box-shadow:0 4px 0 #e3dac5;min-width:62px;height:68px;font-size:30px}.focus-work .slot{width:48px;height:61px;font-size:29px}.focus-work .slot.current{background:#fff3cc}.focus-bottom{min-height:90px;display:flex;align-items:center;justify-content:center;gap:22px;margin:12px 0 0}.focus-bottom .feedback{margin:0;min-height:24px;font-size:16px}.focus-bottom .primary{padding:13px 24px;font-size:14px}.feedback-star{display:inline-grid;place-items:center;color:#d9a838;background:#fff0be;width:34px;height:34px;border-radius:50%;font-size:22px;margin-right:9px;animation:star-pop .55s ease-out 1}.success-feedback{display:flex;align-items:center;justify-content:center}.writing-shortcuts{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:10px}.focus-work .canvas-wrap{max-width:1000px;margin:auto;border:1px solid #d6dfce;border-radius:17px;box-shadow:0 4px 0 #e9eee2}.focus-work .canvas-wrap canvas{background:#fffefa}.teacher-student{padding:12px 15px;background:#edf2e7;border-radius:11px;font-size:13px;margin:15px 0}.field-label{display:block;font-size:11px;color:#85927c;margin:20px 0 10px}.teacher-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.grade-dialog{max-width:670px}.grade-dialog .evaluation{margin:0;border:0;background:transparent;padding:0}.grade-dialog .evaluation h2{font-size:20px}.grade-dialog .evaluation .eyebrow{display:none}.grade-dialog .grade-options{grid-template-columns:1fr 1fr}.grade-dialog .section-title{margin-bottom:15px}.reward-screen{position:relative;max-width:700px;margin:20px auto;text-align:center;padding:35px 30px;isolation:isolate}.reward-character{width:145px;height:155px;margin:0 auto 23px;animation:gentle-cheer .7s ease-in-out 1}.reward-orbit{position:absolute;top:55px;left:50%;width:300px;translate:-50%;pointer-events:none;height:130px;z-index:-1}.reward-orbit i{position:absolute;color:#deb456;font-style:normal;font-size:27px;animation:reward-spark .8s ease-out 1}.reward-orbit i:nth-child(1){left:0;top:0}.reward-orbit i:nth-child(2){right:8px;top:18px;font-size:35px}.reward-orbit i:nth-child(3){right:35px;bottom:0;font-size:17px}.reward-eyebrow{font-size:9px;letter-spacing:2px;color:#95a087;font-weight:bold}.reward-screen h1{font-size:36px;margin:14px 0 12px;letter-spacing:-1px}.reward-screen>p{font-size:14px}.earned-star{display:inline-flex;align-items:center;gap:10px;padding:13px 20px;background:#fff3ca;border:1px solid #eddfb3;border-radius:15px;font-size:23px;font-weight:bold;color:#b08a32;margin:7px 0 27px}.earned-star>span{font-size:26px}.earned-star small{font-size:11px;color:#a3946c;font-weight:normal;border-left:1px solid #e9d9a8;padding-left:12px;margin-left:4px}.reward-buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.reward-buttons .quiet-button{flex-basis:100%;font-size:12px}.bonus-row{display:flex;justify-content:center;gap:19px;margin-top:25px}.bonus-star{background:#eef2e6;color:#bdc9ad;font-size:33px;border:1px solid #e0e7d5;border-radius:50%;width:57px;height:57px;line-height:1}.bonus-star.lit{opacity:1;background:#ffedb6;border-color:#e9cb7d;color:#d9a941;animation:star-pop .4s ease 1}.bonus-caption{font-size:11px!important;color:#9aa68e;min-height:20px;margin:13px 0 0}.calm .reward-character{animation:none}.reward-screen .creature .eyes{animation:none}body[data-page=activity]{background:#f7f9f3;--teal:#187b6b}body[data-page=activity]>.header,body[data-page=activity]>footer{display:none}body[data-page=activity] main{padding:20px 30px 25px;min-height:100dvh;max-width:1120px}body[data-page=activity] main.enter{animation:none}body[data-page=reward]>.header{padding-top:18px;padding-bottom:10px}body[data-page=reward] main{min-height:auto}body[data-page=activity] .focus-work .subtle{display:none}
@keyframes star-pop{0%{transform:scale(.65)}65%{transform:scale(1.2)}100%{transform:scale(1)}}@keyframes gentle-cheer{35%{transform:translateY(-10px) rotate(-5deg)}70%{transform:rotate(5deg)}100%{transform:translateY(0)}}@keyframes reward-spark{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}
@media(min-width:1000px) and (min-height:800px){body[data-page=activity] .focus-nav{margin-bottom:45px}.focus-work .choices{margin-top:40px}.focus-work .choice{min-height:155px}.focus-bottom{margin-top:28px}}
@media(max-width:850px){.activity-tile{padding:18px;gap:17px;min-height:162px}.activity-art{width:105px;height:115px}.tile-copy strong{font-size:19px}.mini-card{width:24px;font-size:17px}.letter-block{font-size:19px;padding:7px}.activity-art svg{width:90px}.welcome-compact h1{font-size:30px}.focus-work .slot{width:38px;height:52px;font-size:26px}}
@media(max-width:600px){.welcome-compact{margin:20px 0;gap:14px}.welcome-compact h1{font-size:26px;line-height:1.25}.welcome-compact p{font-size:12px}.welcome-compact .eyebrow{font-size:9px}.album-shortcut{padding:11px 12px;display:block;min-width:76px}.album-shortcut>span{font-size:20px;margin-right:5px}.album-shortcut strong{display:inline;font-size:19px}.album-shortcut small{display:block;font-size:8px;margin-top:4px}.subject-tabs{gap:2px;margin:23px 0 18px;justify-content:space-between}.subject-tabs button{padding:12px 7px;font-size:12px;gap:6px}.subject-tabs span{font-size:18px}.activity-menu{grid-template-columns:1fr;gap:13px}.activity-tile{padding:15px 17px;min-height:125px;gap:20px;border-radius:18px}.activity-art{height:95px;width:100px;border-radius:14px}.tile-copy small{font-size:9px}.tile-copy strong{font-size:20px;margin:3px 0 5px}.tile-copy>span{font-size:11px}.tile-copy em{font-size:10px;margin-top:9px}.home-footnote{font-size:10px;line-height:1.6;margin-top:20px}.focus-nav{padding-bottom:12px;margin-bottom:23px;gap:5px}.focus-nav>span{font-size:10px}.focus-nav .quiet-button{font-size:11px;padding:8px 5px}body[data-page=activity] main{padding:12px 15px 22px}.focus-instruction{margin-bottom:18px}.focus-instruction h1{font-size:24px;line-height:1.35;letter-spacing:-.5px;margin-bottom:10px}.focus-controls{gap:10px}.focus-controls .quiet-button{font-size:11px}.model-switch{font-size:10px;padding:8px}.focus-work .model-panel{min-height:64px;padding:11px;margin-bottom:20px}.focus-work .model-panel strong{font-size:21px;letter-spacing:1px}.focus-work .choices{gap:12px;margin-top:22px}.focus-work .choice{min-height:110px;padding:16px 10px;font-size:21px;line-height:1.4;border-radius:16px;overflow-wrap:normal;word-break:normal}.focus-work .letters{gap:9px;margin:23px auto}.focus-work .letter{min-width:49px;height:57px;font-size:27px}.focus-work .slot{width:29px;height:44px;font-size:23px}.focus-work .word{gap:3px}.focus-work .slots{gap:13px;margin:24px 0}.focus-bottom{gap:12px;min-height:80px;flex-wrap:wrap;margin-top:17px}.focus-bottom .feedback{font-size:14px}.focus-bottom .primary{font-size:13px;padding:12px 20px}.feedback-star{width:29px;height:29px;font-size:18px;margin-right:7px}.focus-work .canvas-wrap{border-radius:12px}.writing-shortcuts .quiet-button{font-size:11px}.reward-screen{padding:24px 10px;margin:5px auto 15px}.reward-character{width:118px;height:128px;margin-bottom:20px}.reward-orbit{width:250px;height:115px;top:35px}.reward-screen h1{font-size:29px;line-height:1.2}.reward-screen>p{font-size:13px}.reward-buttons .primary,.reward-buttons .secondary{font-size:12px;padding:12px 15px}.bonus-row{margin-top:20px}.bonus-star{width:50px;height:50px;font-size:29px}.grade-dialog .grade-options{gap:9px}.grade-dialog .evaluation .section-title{gap:7px}.grade-dialog .evaluation h2{font-size:19px}}
@media(max-width:360px){.focus-work .choice{font-size:18px;padding:12px 7px}.focus-instruction h1{font-size:21px}.focus-work .slot{width:26px;height:41px}.activity-art{width:83px}.activity-tile{gap:14px}.tile-copy strong{font-size:18px}}
@media(max-height:600px) and (orientation:landscape){body[data-page=activity] main{padding-top:8px}.focus-nav{margin-bottom:13px;padding-bottom:8px}.focus-instruction{margin-bottom:10px}.focus-instruction h1{font-size:23px;margin-bottom:3px}.focus-work .choices{margin:15px auto;gap:12px}.focus-work .choice{min-height:80px;font-size:24px}.focus-work .model-panel{min-height:50px;margin-bottom:12px;padding:8px}.focus-work .canvas-wrap{max-width:700px}.focus-bottom{min-height:55px;margin-top:10px}}
