@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(/assets/nunito-latin-600-normal-Cd0eNu1l.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/nunito-latin-900-normal-BVB1fGs6.woff2)format("woff2"),url(/assets/nunito-latin-900-normal-CVn49sIn.woff)format("woff")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-thai-400-normal-BEOmKAI1.woff2)format("woff2"),url(/assets/noto-sans-thai-thai-400-normal-Dxb_unuU.woff)format("woff")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-thai-thai-600-normal-Cs73sVjl.woff2)format("woff2"),url(/assets/noto-sans-thai-thai-600-normal-CmgB8_JK.woff)format("woff")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-thai-700-normal-Cm52XUnT.woff2)format("woff2"),url(/assets/noto-sans-thai-thai-700-normal-C9ISMlQq.woff)format("woff")}:root{color:#29324f;font-synthesis:none;--purple:#7354cc;--line:#e1e4f1;--muted:#626c86;--pink:#ff7fa8;--mint:#c4f1df;background:#ecf8ff;font-family:Nunito,Noto Sans Thai,Tahoma,sans-serif;font-weight:600;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;transition:transform .15s,background .15s,box-shadow .15s}button:hover:not(:disabled){transform:translateY(-2px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #4179d3}button:disabled{cursor:not-allowed;opacity:.5}button svg{flex-shrink:0}a{color:var(--purple)}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.6px;margin-bottom:8px;font-size:clamp(26px,2.4vw,36px);font-weight:900;line-height:1.3}h2{margin-bottom:6px;font-size:22px;font-weight:900;line-height:1.35}h3{font-size:18px}p{color:var(--muted)}small{font-size:12px}button{background:0 0;border:0}input,select,textarea{background:#fff;border:1.5px solid #dce0ec;border-radius:12px;min-width:0;max-width:100%;padding:10px 12px}textarea{resize:vertical;min-height:100px}input[type=checkbox]{accent-color:var(--purple);vertical-align:middle;width:16px;height:16px}summary{cursor:pointer;padding:10px 0;font-weight:800}.topbar{z-index:5;background:#fff;border-bottom:2px solid #d8ebf7;justify-content:space-between;align-items:center;gap:25px;height:91px;padding:0 34px;display:flex;position:relative}.brand{color:#57439b;white-space:nowrap;align-items:center;gap:12px;font-size:24px;font-weight:900;line-height:1.15;display:flex}.brand span:not(.brand-icon){color:#3d658d}.brand small{letter-spacing:1.6px;color:#6d7c97;margin-top:8px;font-size:9px;display:block}.brand-icon{color:#df9f27;background:#fff0ad;border-radius:16px;place-items:center;width:48px;height:48px;display:grid;transform:rotate(-7deg);box-shadow:0 3px #eed682}.top-actions{align-items:center;gap:16px;display:flex}.pill{letter-spacing:.7px;white-space:nowrap;border-radius:30px;justify-content:center;align-items:center;gap:7px;padding:7px 11px;font-size:10px;font-weight:900;display:inline-flex}.mint{color:#2d745a;background:#d9f5e9}.yellow{color:#785a14;background:#ffecad}.pink{color:#b13d68;background:#ffe0eb}.lavender,.pale-purple{color:#7354cc;background:#eee7ff}.white{color:#6c5897;background:#fff}.dot{background:#409879;border-radius:50%;width:7px;height:7px}.icon-button{color:#6c7590;place-items:center;padding:8px;display:grid}.admin-badge{color:#8e621b;background:#ffe3b0;border-radius:15px;align-items:center;gap:11px;padding:7px 10px;font-size:23px;display:flex}.admin-badge>span{text-align:left;color:#3e4360;font-size:14px}.admin-badge small{letter-spacing:.7px;color:#737d91;font-size:8px;display:block}.shell{min-height:calc(100vh - 91px);display:flex}.sidebar{background:#fff;border-right:2px solid #dcecf7;flex-direction:column;flex-shrink:0;gap:7px;width:236px;padding:32px 17px 20px;display:flex}.nav-label{letter-spacing:1px;color:#8a8fa5;margin:0 12px 16px;font-size:9px}.nav{text-align:left;color:#69738b;white-space:nowrap;border-radius:13px;align-items:center;gap:12px;padding:14px;font-size:14px;font-weight:800;display:flex}.nav.active{color:#7150c8;background:#eee8ff;box-shadow:inset 3px 0 #9f7be8}.nav svg{color:#8a85ac}.nav.active svg{color:#7c58cf}.tiny-new{color:#bb4c7b;background:#ffe4ee;border-radius:5px;margin-left:auto;padding:3px 4px;font-size:8px}.sidebar-bottom{text-align:center;background:linear-gradient(#edf9ff,#f6f0ff);border:1.5px dashed #d8ddf3;border-radius:20px;margin:auto 5px 18px;padding:18px 6px}.mini-sun{color:#f8bf4a;font-size:54px;line-height:1.2}.sidebar-bottom strong{color:#6e5d9e;font-size:18px;line-height:1.4;display:block}.sidebar-bottom p{margin:8px 0 0;font-size:11px}.logout{font-size:13px}.workspace{width:calc(100% - 236px);max-width:1700px;margin:0 auto;padding:0 32px 20px}.classbar{border-bottom:1px solid #dce9f4;align-items:center;gap:12px;padding:20px 0 14px;font-size:13px;display:flex}.classbar>span:first-child{align-items:center;gap:6px;display:flex}.classbar select{background:#fff;border-color:#d4e2ed;max-width:200px;padding:7px 12px;font-weight:800}.class-date{color:#69758e;margin-left:auto;font-size:12px}.text-button{color:#7654b2;justify-content:center;align-items:center;gap:5px;padding:6px;font-size:12px;font-weight:800;display:inline-flex}.feedback{min-height:30px;padding:6px 0;font-size:12px}.success{color:#287457;align-items:center;gap:5px;display:flex}.error{color:#9e2852;background:#ffe8ed;border:1px solid #f9b6c7;border-radius:10px;padding:10px;font-size:13px;display:block}.error button{text-decoration:underline}.heading{justify-content:space-between;align-items:center;gap:16px;margin:8px 0 23px;display:flex}.eyebrow{color:#7c6aa1;letter-spacing:1.6px;align-items:center;gap:7px;margin-bottom:9px;font-size:10px;font-weight:900;display:flex}.stats{grid-template-columns:repeat(3,1fr);gap:17px;margin-bottom:23px;display:grid}.stats>div{background:#fff;border:1.5px solid #e0e8f3;border-radius:19px;align-items:center;gap:15px;padding:16px 20px;display:flex;box-shadow:0 4px #dcecf5}.stat-icon{border-radius:15px;place-items:center;width:46px;height:46px;display:grid}.stats b{font-size:26px;line-height:1;display:block}.stats small{color:#6c7690;margin-top:7px;font-size:12px;display:block}.stats em{color:#8992aa;font-size:15px;font-style:normal}.panel{background:#fff;border:1.5px solid #dce3f0;border-radius:23px;min-width:0;margin-bottom:23px;padding:24px;box-shadow:0 5px #dcebf4}.panel h2{align-items:center;gap:9px;display:flex}.dashboard-grid{grid-template-columns:minmax(0,1.28fr) minmax(340px,1fr);align-items:start;gap:23px;display:grid}.right-stack{flex-direction:column;gap:21px;display:flex}.right-stack>.panel{margin:0}.section-title{align-items:center;gap:11px;margin-bottom:19px;display:flex}.section-title h2{margin:0;font-size:19px}.section-title p{margin:4px 0 0;font-size:11px}.section-title .pill{margin-left:auto;font-size:8px}.title-icon{border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.step{color:#d6dfeb;margin-left:auto;font-size:24px;font-weight:900}.selection-stage{text-align:center;background:linear-gradient(140deg,#f5f0ff,#ebe6ff 55%,#fbecfa);border:2px dashed #d4c6f1;border-radius:20px;flex-direction:column;align-items:center;min-height:306px;padding:25px 14px 22px;display:flex;position:relative;overflow:hidden}.selection-stage h2{color:#644790;margin:10px 0;font-size:27px;display:block}.selection-stage p{color:#87739d;margin:0;font-size:12px}.stage-star{color:#f2bb45;font-size:30px;position:absolute}.stage-star.one{top:25%;left:9%}.stage-star.two{color:#ca9be5;font-size:41px;top:15%;right:11%}.stage-star.three{font-size:20px;bottom:17%;right:15%}.mystery-star{color:#ffd164;filter:drop-shadow(0 5px #e5aa44);height:118px;margin:10px 0 0;font-size:119px;line-height:1;position:relative;transform:rotate(-9deg)}.mystery-star span{color:#a8752c;font-size:42px;position:absolute;top:33%;left:42%;transform:rotate(9deg)}.identity{color:#735384;border:1px solid #ffffffa0;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:18px;display:inline-flex}.identity.large{border-radius:35px;width:105px;height:105px;margin:18px 0 0;font-size:66px;transform:rotate(-6deg);box-shadow:0 5px #c0addf}.draw-actions{align-items:stretch;gap:10px;margin-top:17px;display:flex}.button{border-radius:12px;justify-content:center;align-items:center;gap:9px;min-height:43px;padding:11px 17px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.primary{color:#63451b;background:#ffc956;border:1.5px solid #f2b83d;box-shadow:0 4px #e0a334}.button.huge{flex:1;min-height:63px;font-size:23px}.huge span{letter-spacing:.4px;margin-left:auto;font-size:10px}.subtle{color:#76619b;background:#f6f3fd;border:1px solid #e6def3}.purple{color:#fff;background:#8b65d6;box-shadow:0 4px #6844b4}.mint-button{color:#2d725b;background:#bcebd8;border:1px solid #8ed5bb;width:100%;margin-top:10px;box-shadow:0 3px #94cfb9}.draw-footer{color:#83798e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:18px 0 5px;font-size:10px;display:flex}.draw-footer label{align-items:center;gap:5px;display:flex}.round-complete{color:#92691d;text-align:center;background:#fff4ca;border-radius:10px;margin:10px 0 0;padding:10px;font-weight:900}.random-panel details{border-top:1px solid #eee8f6;margin-top:14px;font-size:12px}.random-panel details p{font-size:11px}.attendance-list{max-height:280px;margin:0 -3px;padding:0 3px;overflow:auto}.attendance-row{border-bottom:1px solid #edf0f7;align-items:center;gap:7px;padding:8px 0;font-size:13px;display:flex}.student-label{overflow-wrap:anywhere;flex-direction:column;flex:1;min-width:0;display:flex}.student-label small{color:#8c94a8;font-size:9px}.attendance-row select{border-radius:8px;max-width:119px;padding:5px 6px;font-size:11px}.pause-student{color:#8a7999;padding:4px;font-size:10px}.pause-student.paused{color:#b04a73;background:#ffe2ed;border-radius:6px}.empty-hint{padding:16px 6px;font-size:13px;line-height:1.8}.field{flex-direction:column;gap:6px;margin-bottom:13px;font-size:12px;font-weight:800;display:flex}.field input,.field select,.field textarea{width:100%}.field.compact{margin-bottom:11px;font-size:11px}.compact input,.compact select{padding:7px 10px}.segmented{background:#f5f3fa;border-radius:10px;margin-bottom:12px;padding:4px;display:flex}.segmented button{color:#82758b;border-radius:8px;flex:1;padding:7px;font-size:11px}.segmented button.active{color:#75509f;background:#fff;box-shadow:0 2px 6px #cabee447}.reward-buttons{gap:8px;display:flex}.reward-buttons button{color:#8f6a2c;background:#fff5d2;border:1.5px solid #eed685;border-radius:11px;flex:1;padding:7px 0;font-size:19px;font-weight:900;box-shadow:0 3px #eddda9}.reward-note{color:#8e8395;margin-top:12px;font-size:10px;display:block}.custom-reward{align-items:center;gap:6px;margin-top:12px;display:flex}.custom-reward input{width:70px;padding:5px 8px;font-size:12px}.lesson-teaser{background:linear-gradient(110deg,#fffaf0,#fff0e5 60%,#ffe5ed);border-color:#f1d5b9;align-items:center;gap:25px;padding:22px 27px;display:flex}.lesson-teaser h2{color:#755077;margin:3px 0 6px;font-size:23px}.lesson-teaser p{margin:4px 0;font-size:13px}.lesson-teaser span:not(.eyebrow){color:#91778b;font-size:11px}.lesson-teaser .button{white-space:nowrap;margin-left:auto;font-size:12px}.academy-art{color:#d39351;align-items:center;gap:5px;min-width:80px;font-size:20px;display:flex}.academy-art span{filter:drop-shadow(0 5px #f1c9a6);font-size:58px!important}.seating{font-size:13px}.page-footer{color:#8b8fa5;align-items:center;gap:6px;padding-top:10px;font-size:10px;display:flex}.page-footer span{margin-left:auto}.two-columns{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);align-items:start;gap:23px;display:grid}.two-columns>.panel>p{font-size:12px}.stack{flex-direction:column;gap:4px;display:flex}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.toolbar input{width:85px}.toolbar .button{padding:7px 10px;font-size:12px}.toolbar label{align-items:center;gap:6px;display:flex}.file-input{cursor:pointer;position:relative;overflow:hidden}.file-input input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.roster-row{border-bottom:1px solid #eceef4;flex-wrap:wrap;align-items:center;gap:10px;padding:15px 0;display:flex}.roster-row>div{flex:1;min-width:160px}.roster-row strong{font-size:14px}.roster-row p{margin:2px 0;font-size:12px}.uuid{color:#8f90a6;overflow-wrap:anywhere;font-family:monospace;font-size:10px}.archived{opacity:.6}.empty-state{text-align:center;padding:45px 15px}.empty-state svg{color:#b5a0db}.empty-state h3{color:#6e618d;margin:15px 0 6px}.empty-state p{font-size:13px}.import-preview{background:#fff9df;border-radius:15px;padding:18px}.import-preview p{font-size:12px}.score-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;display:grid}.score-card{flex-direction:column;align-items:center;gap:10px;padding:20px 12px;font-size:14px;display:flex}.score-card div{gap:18px;font-size:13px;display:flex}.score-card div span{color:#88642c;align-items:center;gap:4px;display:flex}.chosen{outline:3px solid #ad83e5}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;margin-top:14px;font-size:12px}th{color:#7d6699;background:#f4f1fc;padding:12px 9px}td{border-bottom:1px solid #eeedf5;padding:13px 9px}td:first-child{font-size:10px}.progress-row{border-bottom:1px solid #eee;flex-wrap:wrap;gap:20px;padding:12px 0;font-size:12px;display:flex}.inline-form{gap:8px;margin:10px 0;display:flex}.inline-form input{flex:1}.chip-list{flex-wrap:wrap;gap:8px;margin:15px 0;display:flex}.chip-list button{background:#f5f0fc;border:1px solid #dfd5ef;border-radius:10px;align-items:center;gap:6px;padding:6px 9px;font-size:12px;display:flex}.chip-list small{color:#81728d;font-size:9px}.seat-grid{gap:9px;margin:20px 0;display:grid;overflow:auto}.seat-grid button{background:#f7f3fd;border:1.5px dashed #d5c8eb;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:85px;font-size:12px;display:flex}.seat-grid small{color:#9b8da9;font-size:10px}.seat-grid .disabled-seat{opacity:.65;background:#e4e8ed}.demo-banner{color:#795c24;text-align:center;background:#fff0b4;padding:7px;font-size:12px}.demo-banner button{font-size:11px;text-decoration:underline}.help p{font-size:13px}.loading{color:#8a6ab8;background:#d1efff;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;display:flex}.focus-mode .topbar,.focus-mode .sidebar,.focus-mode .classbar,.focus-mode .stats,.focus-mode .right-stack,.focus-mode .lesson-teaser,.focus-mode .heading,.focus-mode .seating,.focus-mode .page-footer,.focus-mode details,.focus-mode .draw-actions,.focus-mode .draw-footer,.focus-mode .feedback{display:none}.focus-mode .workspace{width:100%;max-width:1400px;padding:50px}.focus-mode .dashboard-grid{display:block}.focus-mode .selection-stage{justify-content:center;min-height:70vh}.focus-mode .selection-stage h2{font-size:80px}.focus-mode .selection-stage .large{width:160px;height:160px;font-size:90px}.exit-focus{color:#775598;z-index:99;background:#fff;border:1px solid #d7c3eb;position:fixed;bottom:15px;right:15px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.login-scene{background:linear-gradient(#a7dfff 0%,#d7f0ff 70%,#e7f8ff);justify-content:center;align-items:center;min-height:100vh;padding:48px 20px 65px;display:flex;position:relative;overflow:hidden}.login-wrap{z-index:2;width:min(100%,450px);position:relative}.login-wrap>.brand{justify-content:center;margin-bottom:29px;font-size:23px}.login-card{text-align:center;background:#fffdfb;border:3px solid #fff;border-radius:32px;padding:28px 37px 22px;box-shadow:0 9px #95bad757,0 20px 55px #609dc22a}.login-card>.pill{letter-spacing:1px;font-size:8px}.login-mascot{color:#f3bb4b;filter:drop-shadow(0 4px #f4d99e);margin:17px 0 9px;font-size:74px;line-height:1.25;display:inline-block;position:relative}.login-mascot span{color:#bc95e0;font-size:25px;position:absolute;top:6px;right:-30px}.login-card h1{color:#58457f;letter-spacing:-.8px;margin-bottom:9px;font-size:30px}.login-card h1 span{font-size:25px}.login-intro{color:#8a8195;margin:0 0 26px;font-size:12px}.login-card form{text-align:left}.fixed-user{background:#f7f3fc;border:1.5px solid #eee6f4;border-radius:13px;align-items:center;gap:12px;margin-bottom:17px;padding:11px 12px;display:flex}.user-avatar{color:#7958ac;background:#e1d2f5;border-radius:12px;place-items:center;width:38px;height:38px;font-size:19px;font-weight:900;display:grid}.fixed-user strong{font-size:15px;display:block}.fixed-user small{letter-spacing:1px;color:#8d7e9c;font-size:8px;display:block}.fixed-user>.pill{margin-left:auto;font-size:8px}.login-card .field{font-size:12px}.login-card .field input{background:#fff;border-color:#e2daee;border-radius:12px;padding:13px;font-size:13px}.login-card .button{justify-content:space-between;width:100%;min-height:49px;margin-top:3px;padding:12px 19px}.demo-link{color:#8b70ab;margin-top:22px;font-size:12px;text-decoration:underline}.login-note{color:#9b91a6;margin:10px 0 0;font-size:9px}.login-footer{text-align:center;letter-spacing:2px;color:#698aab;margin:25px 0 0;font-size:10px}.sun{background:#ffdf80;border-radius:50%;width:130px;height:130px;position:absolute;top:11%;left:13%;transform:rotate(-10deg);box-shadow:0 0 0 17px #ffe39b80,0 0 0 34px #ffe7b138}.sun:before{content:"◡";color:#a97f36;font-size:36px;position:absolute;top:48%;left:37%}.sun:after{content:"•  •";color:#a97f36;font-size:21px;position:absolute;top:30%;left:34%}.cloud{filter:drop-shadow(0 5px #b2d9f147);background:#ffffffd9;border-radius:45px;width:170px;height:47px;position:absolute}.cloud:before,.cloud:after{content:"";background:inherit;border-radius:100%;width:70px;height:70px;position:absolute;top:-30px;left:23px}.cloud:after{width:90px;height:90px;top:-43px;left:72px}.cloud-a{top:41%;left:5%;transform:scale(.9)}.cloud-b{top:24%;right:7%;transform:scale(1.25)}.cloud-c{bottom:19%;right:11%;transform:scale(.8)}.login-stars{color:#ecba55;font-size:45px;position:absolute;bottom:19%;left:21%;transform:rotate(10deg)}.login-stars span{color:#b999df;font-size:30px;position:absolute;top:-65px;left:-40px}.ground{background:#bfebdb;border-radius:50% 50% 0 0;width:120%;height:110px;position:absolute;bottom:-46px;left:-10%;box-shadow:0 -15px #d8f3e7}@keyframes pop{0%{transform:scale(.97)rotate(-1deg)}50%{transform:scale(1.02)rotate(1deg)}to{transform:scale(1)}}.drawing{animation:.35s ease-in-out pop}.no-motion *{transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (width>=1650px){.workspace{padding:0 50px 30px}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(400px,1fr)}.selection-stage{justify-content:center;min-height:390px}.selection-stage h2{font-size:35px}.random-panel{padding:30px}.section-title h2{font-size:23px}.panel{padding:28px}.attendance-row{font-size:16px}.attendance-row select{font-size:13px}.sidebar{width:265px}.workspace{width:calc(100% - 265px)}.nav{padding:17px 14px;font-size:15px}.stats{margin-top:8px}.reward-buttons button{font-size:23px}}@media (width<=1150px){.sidebar{width:195px;padding:25px 10px}.nav{gap:9px;padding:12px 10px;font-size:12px}.tiny-new{display:none}.workspace{width:calc(100% - 195px);padding:0 20px 20px}.dashboard-grid{grid-template-columns:1fr}.right-stack{grid-template-columns:1fr 1fr;gap:16px;display:grid}.two-columns{grid-template-columns:1fr}.class-date,.heading>.pill,.section-title .pill{display:none}.lesson-teaser{gap:15px}.academy-art{min-width:40px}.academy-art span{font-size:39px!important}.lesson-teaser h2{font-size:18px}.lesson-teaser .button{white-space:normal}.two-columns>.right-stack{display:flex}.stats>div{gap:10px;padding:12px}.stats b{font-size:23px}.stats small{font-size:10px}}@media (width<=800px){.topbar{gap:10px;height:76px;padding:0 18px}.brand{gap:8px;font-size:19px}.brand-icon{border-radius:12px;width:39px;height:39px}.brand small{letter-spacing:.8px;font-size:7px}.top-actions{gap:5px}.top-actions>.pill,.admin-badge{display:none}.shell{flex-direction:column}.sidebar{border-bottom:1px solid #dce7f2;border-right:0;flex-flow:wrap;justify-content:center;gap:4px;width:100%;padding:10px}.sidebar-bottom,.nav-label,.logout{display:none}.nav{gap:5px;padding:8px;font-size:10px}.nav svg{width:16px}.nav.active{box-shadow:none}.workspace{width:100%;padding:0 16px 20px}.classbar{flex-wrap:wrap;gap:8px;padding:14px 0 10px;font-size:11px}.classbar select{max-width:170px;font-size:11px}.classbar>span:first-child{display:none}.classbar>.text-button{margin-left:auto;font-size:10px}.heading{margin-bottom:18px}.heading h1{font-size:26px}.eyebrow{font-size:8px}.panel{border-radius:19px;padding:18px}.stats{gap:8px}.stats>div{border-radius:13px;gap:7px;padding:10px 8px}.stat-icon{border-radius:10px;width:34px;height:34px}.stat-icon svg{width:18px}.stats b{font-size:22px}.stats small{font-size:9px}.right-stack{grid-template-columns:1fr 1fr;gap:15px}.section-title h2{font-size:16px}.section-title p{font-size:10px}.section-title{gap:8px}.title-icon{width:33px;height:33px}.step{display:none}.lesson-teaser{flex-wrap:wrap;gap:14px}.lesson-teaser .button{margin-left:auto}.lesson-teaser .academy-art{display:none}.reward-buttons{gap:5px}.reward-buttons button{font-size:17px}.page-footer{font-size:8px}.page-footer span{font-size:7px}.seat-grid{grid-template-columns:repeat(3,minmax(60px,1fr))!important}.focus-mode .workspace{padding:20px}.focus-mode .selection-stage h2{font-size:52px}.sun{top:12%;left:-45px;transform:scale(.65)}.cloud-a{left:-90px}.cloud-b{right:-110px}.cloud-c{right:-90px}.login-stars{font-size:27px;bottom:10%;left:2%}.login-card{padding:25px}.login-scene{padding:30px 18px 60px}}@media (width<=560px){.right-stack{display:flex}.stats small{font-size:8px}.stat-icon{display:none}.stats>div{justify-content:center}.selection-stage h2{font-size:23px}.button.huge{font-size:21px}.huge span{font-size:8px}.heading h1{font-size:24px}.roster-row .uuid{font-size:8px}.topbar>.brand{font-size:16px}.topbar .brand small{font-size:6px}.reward-buttons button{font-size:23px}.login-card h1{font-size:27px}.login-card h1 span{font-size:22px}.login-wrap>.brand{font-size:21px}.nav{gap:4px;padding:7px 6px;font-size:9px}.nav svg{width:14px}}@media (width>=1151px) and (height<=850px){.topbar{height:76px}.classbar{padding:12px 0 8px}.feedback{min-height:23px}.heading{margin:3px 0 16px}.heading h1{font-size:29px}.stats{margin-bottom:17px}.stats>div{padding:11px 17px}.panel{padding:20px}.section-title{margin-bottom:13px}.selection-stage{min-height:220px;padding:15px 12px}.selection-stage>.pill{padding:5px 10px;font-size:8px}.mystery-star{height:78px;margin:3px 0 0;font-size:78px}.mystery-star span{font-size:30px}.identity.large{width:78px;height:78px;margin:8px 0 0;font-size:48px}.selection-stage h2{margin:7px 0;font-size:23px}.selection-stage p{font-size:11px}.draw-actions{margin-top:13px}.button.huge{min-height:53px;font-size:21px}.draw-footer{margin-top:13px}.attendance-row{padding:6px 0}.attendance-list{max-height:220px}}.game-projection .topbar,.game-projection .sidebar,.game-projection .classbar,.game-projection .feedback,.game-projection .demo-banner,.game-projection .page-footer{display:none}.game-projection .workspace{width:100%;max-width:1800px;padding:25px}.game-projection .shell{min-height:100vh}.gifted-hero{background:linear-gradient(115deg,#e7e2ff,#ecedff 48%,#d9f3f6);border:2px solid #d4d4f3;border-radius:25px;justify-content:space-between;align-items:center;gap:25px;margin-bottom:24px;padding:31px 35px;display:flex;overflow:hidden}.gifted-hero h1{color:#655193;max-width:570px;font-size:35px}.gifted-hero p{color:#797094;margin:8px 0 18px;font-size:14px}.skill-pills{flex-wrap:wrap;gap:9px;display:flex}.skill-pills span{letter-spacing:.8px;color:#8060a3;background:#ffffffbf;border:1px solid #d6cef0;border-radius:7px;padding:6px 9px;font-size:8px}.hero-brain{filter:drop-shadow(0 6px #d2badf);font-size:100px;line-height:1.2;position:relative;transform:rotate(-7deg)}.hero-brain span{color:#d0a047;font-size:30px;position:absolute;top:-12px;left:-30px}.hero-brain small{letter-spacing:1px;color:#8b6f99;background:#fff5be;border-radius:8px;padding:7px;font-size:9px;display:block;transform:rotate(7deg)}.challenge-gate{justify-content:space-between;align-items:center;gap:20px;padding:19px 25px;display:flex}.challenge-gate h2{margin-top:8px;font-size:21px}.challenge-gate p{margin:0;font-size:12px}.challenge-gate .button{white-space:nowrap;font-size:12px}.game-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:25px;display:grid}.game-card{text-align:left;background:#fff;border:2px solid #e2d4f1;border-radius:23px;padding:0;overflow:hidden;box-shadow:0 5px #d7e4ef}.game-art{background:linear-gradient(130deg,#ece2ff,#d8ccf7);place-items:center;height:160px;display:grid;position:relative;overflow:hidden}.game-art:after{content:"";background:#fff5;border-radius:50%;width:180px;height:70px;position:absolute;bottom:-30px}.game-art>span{z-index:1;filter:drop-shadow(0 6px #9577be44);font-size:91px;transform:rotate(-10deg)}.game-art i,.game-art b{color:#fff9cb;font-size:29px;font-style:normal;position:absolute;top:15%;left:20%}.game-art b{font-size:39px;inset:auto 15% 15% auto}.game-card-copy{padding:21px}.game-card-copy>small{letter-spacing:1.5px;color:#9b7bb6;font-size:9px;font-weight:900}.game-card h2{color:#64518a;margin:5px 0 8px;font-size:25px;display:block}.game-card p{min-height:65px;margin-bottom:17px;font-size:12px;line-height:1.75}.game-card-footer{color:#91749f;letter-spacing:.7px;border-top:1px dashed #e7dbf1;justify-content:space-between;align-items:center;padding-top:13px;font-size:9px;display:flex}.escape-card .game-art{background:linear-gradient(130deg,#d3f0e4,#a9ded4)}.escape-card{border-color:#bfdfd2}.escape-card h2{color:#427568}.escape-card .game-card-copy>small,.escape-card .game-card-footer{color:#609b89}.dragon-card .game-art{background:linear-gradient(130deg,#ffe7c2,#ffd4b1)}.dragon-card{border-color:#f1d1ad}.dragon-card h2{color:#8e614c}.dragon-card .game-card-copy>small,.dragon-card .game-card-footer{color:#ad8163}.setup-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:16px;display:grid}.mission-setup>p{font-size:12px}.learning-principles{color:#8e7c9f;background:#fffdfa;flex-wrap:wrap;justify-content:space-between;gap:15px;font-size:12px;display:flex}.game-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 18px;display:flex}.game-toolbar .icon-button{margin-left:auto}.teacher-controls{background:#fff;border:1px solid #dfd9ec;border-radius:14px;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:20px;padding:12px;display:flex}.teacher-controls .button{min-height:35px;padding:8px 11px;font-size:11px}.teacher-controls label{align-items:center;gap:6px;font-size:11px;display:flex}.teacher-controls select{padding:5px;font-size:11px}.game-scene{background:linear-gradient(110deg,#f0e8ff,#e7d5fa);border:2px solid #d9c9ee;border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:22px;padding:25px 30px;display:flex;position:relative;overflow:hidden}.game-scene.escape-card{background:linear-gradient(110deg,#e1f5eb,#c9eade);border-color:#b5daca}.game-scene.dragon-card{background:linear-gradient(110deg,#fff0d7,#ffdbc2);border-color:#f2cda4}.game-scene h1{color:#644b88;font-size:34px}.game-scene p{margin:10px 0 0;font-size:12px}.scene-mascot{filter:drop-shadow(0 6px #97728d33);font-size:85px;line-height:1.3}.game-columns{grid-template-columns:minmax(0,1.1fr) minmax(330px,1fr);align-items:start;gap:22px;display:grid}.passage{color:#3c4260;font-size:19px;font-weight:600;line-height:1.95}.clue-cards{flex-direction:column;gap:12px;margin-top:20px;display:flex}.clue-cards>div{background:#fffbed;border:1px solid #e7daac;border-radius:12px;padding:15px;transform:rotate(-.5deg)}.clue-cards>div:nth-child(2){background:#f5f0ff;border-color:#e4d4f4;transform:rotate(.5deg)}.clue-cards span{color:#a38c56;letter-spacing:1.2px;font-size:9px}.clue-cards p{color:#655b63;margin:7px 0 0;font-size:15px;line-height:1.8}.hint-area{border-top:1px dashed #e3daee;margin-top:18px;padding-top:20px}.hint-area p{background:#fff9df;border-radius:10px;padding:12px;font-size:13px;line-height:1.8}.challenge-question{margin-bottom:20px;font-size:22px;line-height:1.65;display:block!important}.answer-options{flex-direction:column;gap:12px;display:flex}.answer-options .option{text-align:left;color:#6e538d;white-space:normal;background:#f9f6ff;border:2px solid #e3d8f1;justify-content:space-between;min-height:57px;padding:15px 17px;line-height:1.6}.answer-options .option:hover{background:#eee3ff}.review-message{background:#eff9f3;border:1px solid #c5e4d4;border-radius:15px;padding:20px}.review-message>span{color:#46785c;background:#c2e8d3;border-radius:50%;place-items:center;width:40px;height:40px;margin-bottom:12px;font-size:25px;display:grid}.review-message h3{color:#4d7f6b;font-size:18px;line-height:1.5}.review-message p{margin:0;font-size:13px}.teacher-review>.pill{margin-bottom:18px}.teacher-review details{font-size:12px}.teacher-review details p{font-size:11px}.evidence-checks{flex-direction:column;gap:9px;margin:15px 0;font-size:12px;display:flex}.evidence-checks label{align-items:flex-start;gap:9px;line-height:1.8;display:flex}.evidence-checks input{flex-shrink:0;margin-top:5px}.teacher-note{margin:14px 0 0;font-size:10px;line-height:1.8}.mission-complete{text-align:center;padding:15px 0}.mission-complete>div{filter:drop-shadow(0 4px #f4dba5);font-size:67px}.mission-complete>.eyebrow{color:#b07e33;letter-spacing:2px;margin:15px 0;font-size:11px;display:block}.mission-complete h2{color:#6e5196;font-size:23px;line-height:1.5;display:block}.mission-complete p{font-size:12px}.adaptive-note{color:#6a5988;background:#f3ebff;border-radius:12px;margin-top:20px;padding:15px;font-size:12px}.boss-health{align-items:center;gap:15px;width:100%;margin-top:16px;display:flex}.boss-health span{letter-spacing:1px;color:#a7764e;font-size:10px}.boss-health progress{appearance:none;background:#fff3e9;border:2px solid #e9bbaa;border-radius:20px;flex:1;height:15px;overflow:hidden}.boss-health progress::-webkit-progress-bar{background:#fff3e9}.boss-health progress::-webkit-progress-value{background:linear-gradient(90deg,#e994aa,#f5b96f);border-radius:20px;transition:width .4s}.room-map{background:linear-gradient(#e1f2e8,#c7e4d9);border:2px solid #b5d5c5;border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:23px 0;padding:22px 14px;display:grid;position:relative}.room-map>button{z-index:1;background:#ffffff9c;border:1.5px dashed #96beaa;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:10px 4px;display:flex}.room-map>button>span{font-size:38px}.room-map>button strong{font-size:12px}.room-map>button small{letter-spacing:.5px;color:#6c8a78;font-size:7px}.room-map>button.collected{background:#fff6c7;border:2px solid #d5b965}.exit-door{color:#426a55;letter-spacing:1px;background:#9cc3ae;border:2px solid #80a88f;border-radius:12px;grid-column:1/-1;justify-content:center;align-items:center;gap:10px;padding:20px;font-size:12px;display:flex}.exit-door.open{color:#8e6c25;background:#fff6c7;border-color:#dfbf61}.room-line{border:2px dashed #a0c2ad;border-radius:20px;height:40%;position:absolute;top:50%;left:10%;right:10%}.inventory article{background:#f4faf6;border:1px solid #d7e8dd;border-radius:10px;margin-bottom:10px;padding:13px 15px;font-size:12px}.inventory article p{color:#476c5a;margin:5px 0 0;font-size:14px;line-height:1.8}.lock-progress{flex-wrap:wrap;gap:7px;margin-top:15px;display:flex}.lock-progress>span{color:#9d98a5;background:#f1f0f3;border:1px solid #e4e2e8;border-radius:9px;align-items:center;gap:4px;padding:9px;font-size:10px;display:flex}.lock-progress>.current{color:#987b2e;background:#fff6cf;border-color:#e2c976}.lock-progress>.unlocked{color:#3d7c5c;background:#d6eddf;border-color:#afd5bd}.paused-screen{text-align:center;color:#8970ab;background:#f2ebff;padding:100px 25px}.paused-screen>svg{margin-bottom:25px}.paused-screen h1{font-size:35px}.paused-screen p{font-size:18px}.answer-reveal{background:#fff9e8;border-color:#e7d4a9;font-size:15px;line-height:1.9}.gate-body{background:#faf6ff;border-color:#dcccfa}.gate-body h3{line-height:1.8}.project-game .teacher-controls,.project-game .teacher-review,.project-game .game-toolbar,.project-game .answer-reveal,.project-game .restart-confirm{display:none}.project-game .game-columns{grid-template-columns:1.1fr 1fr}.project-game .passage{font-size:25px}.project-game .challenge-question{font-size:28px}.project-game .answer-options .option{font-size:21px}.project-game .game-scene h1{font-size:48px}.project-game .hint-area{font-size:18px}.celebrate{animation:.5s ease-in-out pop}.game-workspace .right-stack{display:flex}.gate-body .field textarea{min-height:100px}@media (width>=1650px){.game-art{height:200px}.game-art>span{font-size:115px}.game-card-copy{padding:26px}.game-card h2{font-size:30px}.game-card p{min-height:70px;font-size:15px}.passage{font-size:23px}.game-scene h1{font-size:40px}.challenge-question{font-size:27px}}@media (width<=1150px){.game-columns{grid-template-columns:1fr}.game-columns .right-stack{grid-template-columns:1fr 1fr;display:grid}.game-art{height:125px}.game-art>span{font-size:70px}.game-card-copy{padding:16px}.game-card h2{font-size:21px}.game-card p{min-height:95px;font-size:11px}.game-cards{gap:14px}.game-card-footer{font-size:7px}.setup-grid{grid-template-columns:1fr 1fr}.hero-brain{font-size:75px}.gifted-hero h1{font-size:29px}.project-game .game-columns{grid-template-columns:1fr}}@media (width<=800px){.gifted-hero{padding:22px}.gifted-hero h1{font-size:25px}.hero-brain{font-size:65px}.hero-brain small{font-size:7px}.skill-pills span{padding:4px 6px;font-size:7px}.challenge-gate{padding:18px}.challenge-gate h2{font-size:18px}.challenge-gate .button{padding:10px;font-size:10px}.game-cards{gap:11px}.game-art{height:120px}.game-card-copy{padding:13px}.game-card h2{font-size:22px}.game-card p{min-height:95px;font-size:11px}.game-card-copy>small{font-size:7px}.game-card-footer{letter-spacing:.4px;font-size:6px}.game-scene{padding:20px}.game-scene h1{font-size:29px}.scene-mascot{font-size:60px}.game-columns .right-stack{display:flex}.passage{font-size:19px}.project-game .passage{font-size:23px}.project-game .game-scene h1{font-size:35px}.game-toolbar .pill{font-size:8px}.game-columns{gap:17px}.boss-health{gap:10px}.boss-health span{font-size:8px}.learning-principles{font-size:11px}.room-map{gap:8px;padding:15px 10px}.lock-progress>span{font-size:9px}}@media (width<=560px){.game-cards{grid-template-columns:1fr}.game-card{grid-template-columns:110px 1fr;display:grid}.game-art{height:100%;min-height:180px}.game-art>span{font-size:64px}.game-card p{min-height:auto;margin-bottom:12px;font-size:12px}.game-card-copy{padding:18px}.game-card-footer{font-size:8px}.game-card h2{font-size:25px}.game-card-copy>small{font-size:8px}.hero-brain{display:none}.gifted-hero h1{font-size:27px}.gifted-hero p{font-size:13px}.challenge-gate{flex-wrap:wrap;gap:13px}.challenge-gate .button{margin-left:auto}.setup-grid{grid-template-columns:1fr}.game-scene h1{font-size:25px}.game-scene p{font-size:10px}.scene-mascot{font-size:43px}.challenge-question{font-size:20px}.room-map>button>span{font-size:29px}.room-map>button strong{font-size:10px}.room-map>button small{font-size:6px}}
