@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{font-size:calc((clamp(26px,2.4vw,36px)) * var(--ui-scale));letter-spacing:-.6px;margin-bottom:8px;font-weight:900;line-height:1.3}h2{font-size:calc((22px) * var(--ui-scale));margin-bottom:6px;font-weight:900;line-height:1.35}h3{font-size:calc((18px) * var(--ui-scale))}p{color:var(--muted)}small{font-size:calc((16px) * var(--ui-scale))}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{font-size:calc((24px) * var(--ui-scale));color:#57439b;white-space:nowrap;align-items:center;gap:12px;font-weight:900;line-height:1.15;display:flex}.brand span:not(.brand-icon){color:#3d658d}.brand small{font-size:calc((16px) * var(--ui-scale));letter-spacing:1.6px;color:#6d7c97;margin-top:8px;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{font-size:calc((16px) * var(--ui-scale));letter-spacing:.7px;white-space:nowrap;border-radius:30px;justify-content:center;align-items:center;gap:7px;padding:7px 11px;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{font-size:calc((23px) * var(--ui-scale));color:#8e621b;background:#ffe3b0;border-radius:15px;align-items:center;gap:11px;padding:7px 10px;display:flex}.admin-badge>span{text-align:left;font-size:calc((16px) * var(--ui-scale));color:#3e4360}.admin-badge small{font-size:calc((16px) * var(--ui-scale));letter-spacing:.7px;color:#737d91;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{font-size:calc((16px) * var(--ui-scale));letter-spacing:1px;color:#8a8fa5;margin:0 12px 16px}.nav{text-align:left;color:#69738b;font-size:calc((16px) * var(--ui-scale));white-space:nowrap;border-radius:13px;align-items:center;gap:12px;padding: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{font-size:calc((16px) * var(--ui-scale));color:#bb4c7b;background:#ffe4ee;border-radius:5px;margin-left:auto;padding:3px 4px}.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{font-size:calc((54px) * var(--ui-scale));color:#f8bf4a;line-height:1.2}.sidebar-bottom strong{font-size:calc((18px) * var(--ui-scale));color:#6e5d9e;line-height:1.4;display:block}.sidebar-bottom p{font-size:calc((16px) * var(--ui-scale));margin:8px 0 0}.logout{font-size:calc((16px) * var(--ui-scale))}.workspace{width:calc(100% - 236px);max-width:1700px;margin:0 auto;padding:0 32px 20px}.classbar{font-size:calc((16px) * var(--ui-scale));border-bottom:1px solid #dce9f4;align-items:center;gap:12px;padding:20px 0 14px;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{font-size:calc((16px) * var(--ui-scale));color:#69758e;margin-left:auto}.text-button{color:#7654b2;font-size:calc((16px) * var(--ui-scale));justify-content:center;align-items:center;gap:5px;padding:6px;font-weight:800;display:inline-flex}.feedback{min-height:30px;font-size:calc((16px) * var(--ui-scale));padding:6px 0}.success{color:#287457;align-items:center;gap:5px;display:flex}.error{color:#9e2852;font-size:calc((16px) * var(--ui-scale));background:#ffe8ed;border:1px solid #f9b6c7;border-radius:10px;padding:10px;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;font-size:calc((16px) * var(--ui-scale));letter-spacing:1.6px;align-items:center;gap:7px;margin-bottom:9px;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:calc((26px) * var(--ui-scale));line-height:1;display:block}.stats small{font-size:calc((16px) * var(--ui-scale));color:#6c7690;margin-top:7px;display:block}.stats em{font-size:calc((16px) * var(--ui-scale));color:#8992aa;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{font-size:calc((19px) * var(--ui-scale));margin:0}.section-title p{font-size:calc((16px) * var(--ui-scale));margin:4px 0 0}.section-title .pill{font-size:calc((16px) * var(--ui-scale));margin-left:auto}.title-icon{border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.step{font-size:calc((24px) * var(--ui-scale));color:#d6dfeb;margin-left:auto;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{font-size:calc((27px) * var(--ui-scale));color:#644790;margin:10px 0;display:block}.selection-stage p{font-size:calc((16px) * var(--ui-scale));color:#87739d;margin:0}.stage-star{color:#f2bb45;font-size:calc((30px) * var(--ui-scale));position:absolute}.stage-star.one{top:25%;left:9%}.stage-star.two{color:#ca9be5;font-size:calc((41px) * var(--ui-scale));top:15%;right:11%}.stage-star.three{font-size:calc((20px) * var(--ui-scale));bottom:17%;right:15%}.mystery-star{height:118px;font-size:calc((119px) * var(--ui-scale));color:#ffd164;filter:drop-shadow(0 5px #e5aa44);margin:10px 0 0;line-height:1;position:relative;transform:rotate(-9deg)}.mystery-star span{color:#a8752c;font-size:calc((42px) * var(--ui-scale));position:absolute;top:33%;left:42%;transform:rotate(9deg)}.identity{width:30px;height:30px;font-size:calc((18px) * var(--ui-scale));color:#735384;border:1px solid #ffffffa0;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.identity.large{width:105px;height:105px;font-size:calc((66px) * var(--ui-scale));border-radius:35px;margin:18px 0 0;transform:rotate(-6deg);box-shadow:0 5px #c0addf}.draw-actions{align-items:stretch;gap:10px;margin-top:17px;display:flex}.button{font-size:calc((16px) * var(--ui-scale));border-radius:12px;justify-content:center;align-items:center;gap:9px;min-height:43px;padding:11px 17px;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{min-height:63px;font-size:calc((23px) * var(--ui-scale));flex:1}.huge span{font-size:calc((16px) * var(--ui-scale));letter-spacing:.4px;margin-left:auto}.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{font-size:calc((16px) * var(--ui-scale));color:#83798e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:18px 0 5px;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{font-size:calc((16px) * var(--ui-scale));border-top:1px solid #eee8f6;margin-top:14px}.random-panel details p{font-size:calc((16px) * var(--ui-scale))}.attendance-list{max-height:280px;margin:0 -3px;padding:0 3px;overflow:auto}.attendance-row{font-size:calc((16px) * var(--ui-scale));border-bottom:1px solid #edf0f7;align-items:center;gap:7px;padding:8px 0;display:flex}.student-label{overflow-wrap:anywhere;flex-direction:column;flex:1;min-width:0;display:flex}.student-label small{font-size:calc((16px) * var(--ui-scale));color:#8c94a8}.attendance-row select{font-size:calc((16px) * var(--ui-scale));border-radius:8px;max-width:119px;padding:5px 6px}.pause-student{font-size:calc((16px) * var(--ui-scale));color:#8a7999;padding:4px}.pause-student.paused{color:#b04a73;background:#ffe2ed;border-radius:6px}.empty-hint{font-size:calc((16px) * var(--ui-scale));padding:16px 6px;line-height:1.8}.field{font-size:calc((16px) * var(--ui-scale));flex-direction:column;gap:6px;margin-bottom:13px;font-weight:800;display:flex}.field input,.field select,.field textarea{width:100%}.field.compact{font-size:calc((16px) * var(--ui-scale));margin-bottom:11px}.compact input,.compact select{padding:7px 10px}.segmented{background:#f5f3fa;border-radius:10px;margin-bottom:12px;padding:4px;display:flex}.segmented button{font-size:calc((16px) * var(--ui-scale));color:#82758b;border-radius:8px;flex:1;padding:7px}.segmented button.active{color:#75509f;background:#fff;box-shadow:0 2px 6px #cabee447}.reward-buttons{gap:8px;display:flex}.reward-buttons button{font-size:calc((19px) * var(--ui-scale));color:#8f6a2c;background:#fff5d2;border:1.5px solid #eed685;border-radius:11px;flex:1;padding:7px 0;font-weight:900;box-shadow:0 3px #eddda9}.reward-note{color:#8e8395;font-size:calc((16px) * var(--ui-scale));margin-top:12px;display:block}.custom-reward{align-items:center;gap:6px;margin-top:12px;display:flex}.custom-reward input{width:70px;font-size:calc((16px) * var(--ui-scale));padding:5px 8px}.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{font-size:calc((23px) * var(--ui-scale));color:#755077;margin:3px 0 6px}.lesson-teaser p{font-size:calc((16px) * var(--ui-scale));margin:4px 0}.lesson-teaser span:not(.eyebrow){font-size:calc((16px) * var(--ui-scale));color:#91778b}.lesson-teaser .button{white-space:nowrap;font-size:calc((16px) * var(--ui-scale));margin-left:auto}.academy-art{color:#d39351;min-width:80px;font-size:calc((20px) * var(--ui-scale));align-items:center;gap:5px;display:flex}.academy-art span{font-size:calc((58px!important) * var(--ui-scale));filter:drop-shadow(0 5px #f1c9a6)}.seating{font-size:calc((16px) * var(--ui-scale))}.page-footer{font-size:calc((16px) * var(--ui-scale));color:#8b8fa5;align-items:center;gap:6px;padding-top:10px;display:flex}.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:calc((16px) * var(--ui-scale))}.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{font-size:calc((16px) * var(--ui-scale));padding:7px 10px}.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:calc((16px) * var(--ui-scale))}.roster-row p{font-size:calc((16px) * var(--ui-scale));margin:2px 0}.uuid{font-family:monospace;font-size:calc((16px) * var(--ui-scale));color:#8f90a6;overflow-wrap:anywhere}.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:calc((16px) * var(--ui-scale))}.import-preview{background:#fff9df;border-radius:15px;padding:18px}.import-preview p{font-size:calc((16px) * var(--ui-scale))}.score-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;display:grid}.score-card{font-size:calc((16px) * var(--ui-scale));flex-direction:column;align-items:center;gap:10px;padding:20px 12px;display:flex}.score-card div{font-size:calc((16px) * var(--ui-scale));gap:18px;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;width:100%;font-size:calc((16px) * var(--ui-scale));text-align:left;margin-top:14px}th{color:#7d6699;background:#f4f1fc;padding:12px 9px}td{border-bottom:1px solid #eeedf5;padding:13px 9px}td:first-child{font-size:calc((16px) * var(--ui-scale))}.progress-row{font-size:calc((16px) * var(--ui-scale));border-bottom:1px solid #eee;flex-wrap:wrap;gap:20px;padding:12px 0;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{font-size:calc((16px) * var(--ui-scale));background:#f5f0fc;border:1px solid #dfd5ef;border-radius:10px;align-items:center;gap:6px;padding:6px 9px;display:flex}.chip-list small{font-size:calc((16px) * var(--ui-scale));color:#81728d}.seat-grid{gap:9px;margin:20px 0;display:grid;overflow:auto}.seat-grid button{min-height:85px;font-size:calc((16px) * var(--ui-scale));background:#f7f3fd;border:1.5px dashed #d5c8eb;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.seat-grid small{font-size:calc((16px) * var(--ui-scale));color:#9b8da9}.seat-grid .disabled-seat{opacity:.65;background:#e4e8ed}.demo-banner{color:#795c24;font-size:calc((16px) * var(--ui-scale));text-align:center;background:#fff0b4;padding:7px}.demo-banner button{font-size:calc((16px) * var(--ui-scale));text-decoration:underline}.help p{font-size:calc((16px) * var(--ui-scale))}.loading{color:#8a6ab8;background:#d1efff;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;display:flex}.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{font-size:calc((23px) * var(--ui-scale));justify-content:center;margin-bottom:29px}.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{font-size:calc((16px) * var(--ui-scale));letter-spacing:1px}.login-mascot{font-size:calc((74px) * var(--ui-scale));color:#f3bb4b;filter:drop-shadow(0 4px #f4d99e);margin:17px 0 9px;line-height:1.25;display:inline-block;position:relative}.login-mascot span{font-size:calc((25px) * var(--ui-scale));color:#bc95e0;position:absolute;top:6px;right:-30px}.login-card h1{font-size:calc((30px) * var(--ui-scale));color:#58457f;letter-spacing:-.8px;margin-bottom:9px}.login-card h1 span{font-size:calc((25px) * var(--ui-scale))}.login-intro{font-size:calc((16px) * var(--ui-scale));color:#8a8195;margin:0 0 26px}.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;font-size:calc((19px) * var(--ui-scale));background:#e1d2f5;border-radius:12px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.fixed-user strong{font-size:calc((16px) * var(--ui-scale));display:block}.fixed-user small{font-size:calc((16px) * var(--ui-scale));letter-spacing:1px;color:#8d7e9c;display:block}.fixed-user>.pill{font-size:calc((16px) * var(--ui-scale));margin-left:auto}.login-card .field{font-size:calc((16px) * var(--ui-scale))}.login-card .field input{font-size:calc((16px) * var(--ui-scale));background:#fff;border-color:#e2daee;border-radius:12px;padding:13px}.login-card .button{justify-content:space-between;width:100%;min-height:49px;margin-top:3px;padding:12px 19px}.demo-link{font-size:calc((16px) * var(--ui-scale));color:#8b70ab;margin-top:22px;text-decoration:underline}.login-note{font-size:calc((16px) * var(--ui-scale));color:#9b91a6;margin:10px 0 0}.login-footer{text-align:center;font-size:calc((16px) * var(--ui-scale));letter-spacing:2px;color:#698aab;margin:25px 0 0}.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:"◡";font-size:calc((36px) * var(--ui-scale));color:#a97f36;position:absolute;top:48%;left:37%}.sun:after{content:"•  •";font-size:calc((21px) * var(--ui-scale));color:#a97f36;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{font-size:calc((45px) * var(--ui-scale));color:#ecba55;position:absolute;bottom:19%;left:21%;transform:rotate(10deg)}.login-stars span{font-size:calc((30px) * var(--ui-scale));color:#b999df;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:calc((35px) * var(--ui-scale))}.random-panel{padding:30px}.section-title h2{font-size:calc((23px) * var(--ui-scale))}.panel{padding:28px}.attendance-row,.attendance-row select{font-size:calc((16px) * var(--ui-scale))}.sidebar{width:265px}.workspace{width:calc(100% - 265px)}.nav{font-size:calc((16px) * var(--ui-scale));padding:17px 14px}.stats{margin-top:8px}.reward-buttons button{font-size:calc((23px) * var(--ui-scale))}}@media (width<=1150px){.sidebar{width:195px;padding:25px 10px}.nav{font-size:calc((16px) * var(--ui-scale));gap:9px;padding:12px 10px}.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:calc((39px!important) * var(--ui-scale))}.lesson-teaser h2{font-size:calc((18px) * var(--ui-scale))}.lesson-teaser .button{white-space:normal}.two-columns>.right-stack{display:flex}.stats>div{gap:10px;padding:12px}.stats b{font-size:calc((23px) * var(--ui-scale))}.stats small{font-size:calc((16px) * var(--ui-scale))}}@media (width<=800px){.topbar{gap:10px;height:76px;padding:0 18px}.brand{font-size:calc((19px) * var(--ui-scale));gap:8px}.brand-icon{border-radius:12px;width:39px;height:39px}.brand small{font-size:calc((16px) * var(--ui-scale));letter-spacing:.8px}.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{font-size:calc((16px) * var(--ui-scale));gap:5px;padding:8px}.nav svg{width:16px}.nav.active{box-shadow:none}.workspace{width:100%;padding:0 16px 20px}.classbar{font-size:calc((16px) * var(--ui-scale));flex-wrap:wrap;gap:8px;padding:14px 0 10px}.classbar select{max-width:170px;font-size:calc((16px) * var(--ui-scale))}.classbar>span:first-child{display:none}.classbar>.text-button{font-size:calc((16px) * var(--ui-scale));margin-left:auto}.heading{margin-bottom:18px}.heading h1{font-size:calc((26px) * var(--ui-scale))}.eyebrow{font-size:calc((16px) * var(--ui-scale))}.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:calc((22px) * var(--ui-scale))}.stats small{font-size:calc((16px) * var(--ui-scale))}.right-stack{grid-template-columns:1fr 1fr;gap:15px}.section-title h2,.section-title p{font-size:calc((16px) * var(--ui-scale))}.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:calc((17px) * var(--ui-scale))}.page-footer,.page-footer span{font-size:calc((16px) * var(--ui-scale))}.seat-grid{grid-template-columns:repeat(3,minmax(60px,1fr))!important}.sun{top:12%;left:-45px;transform:scale(.65)}.cloud-a{left:-90px}.cloud-b{right:-110px}.cloud-c{right:-90px}.login-stars{font-size:calc((27px) * var(--ui-scale));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:calc((16px) * var(--ui-scale))}.stat-icon{display:none}.stats>div{justify-content:center}.selection-stage h2{font-size:calc((23px) * var(--ui-scale))}.button.huge{font-size:calc((21px) * var(--ui-scale))}.huge span{font-size:calc((16px) * var(--ui-scale))}.heading h1{font-size:calc((24px) * var(--ui-scale))}.roster-row .uuid,.topbar>.brand,.topbar .brand small{font-size:calc((16px) * var(--ui-scale))}.reward-buttons button{font-size:calc((23px) * var(--ui-scale))}.login-card h1{font-size:calc((27px) * var(--ui-scale))}.login-card h1 span{font-size:calc((22px) * var(--ui-scale))}.login-wrap>.brand{font-size:calc((21px) * var(--ui-scale))}.nav{font-size:calc((16px) * var(--ui-scale));gap:4px;padding:7px 6px}.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:calc((29px) * var(--ui-scale))}.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{font-size:calc((16px) * var(--ui-scale));padding:5px 10px}.mystery-star{font-size:calc((78px) * var(--ui-scale));height:78px;margin:3px 0 0}.mystery-star span{font-size:calc((30px) * var(--ui-scale))}.identity.large{width:78px;height:78px;font-size:calc((48px) * var(--ui-scale));margin:8px 0 0}.selection-stage h2{font-size:calc((23px) * var(--ui-scale));margin:7px 0}.selection-stage p{font-size:calc((16px) * var(--ui-scale))}.draw-actions{margin-top:13px}.button.huge{min-height:53px;font-size:calc((21px) * var(--ui-scale))}.draw-footer{margin-top:13px}.attendance-row{padding:6px 0}.attendance-list{max-height:220px}}.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;font-size:calc((35px) * var(--ui-scale));max-width:570px}.gifted-hero p{font-size:calc((16px) * var(--ui-scale));color:#797094;margin:8px 0 18px}.skill-pills{flex-wrap:wrap;gap:9px;display:flex}.skill-pills span{font-size:calc((16px) * var(--ui-scale));letter-spacing:.8px;color:#8060a3;background:#ffffffbf;border:1px solid #d6cef0;border-radius:7px;padding:6px 9px}.hero-brain{font-size:calc((100px) * var(--ui-scale));filter:drop-shadow(0 6px #d2badf);line-height:1.2;position:relative;transform:rotate(-7deg)}.hero-brain span{font-size:calc((30px) * var(--ui-scale));color:#d0a047;position:absolute;top:-12px;left:-30px}.hero-brain small{font-size:calc((16px) * var(--ui-scale));letter-spacing:1px;color:#8b6f99;background:#fff5be;border-radius:8px;padding:7px;display:block;transform:rotate(7deg)}.challenge-gate{justify-content:space-between;align-items:center;gap:20px;padding:19px 25px;display:flex}.challenge-gate h2{font-size:calc((21px) * var(--ui-scale));margin-top:8px}.challenge-gate p{font-size:calc((16px) * var(--ui-scale));margin:0}.challenge-gate .button{white-space:nowrap;font-size:calc((16px) * var(--ui-scale))}.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{font-size:calc((91px) * var(--ui-scale));z-index:1;filter:drop-shadow(0 6px #9577be44);transform:rotate(-10deg)}.game-art i,.game-art b{color:#fff9cb;font-size:calc((29px) * var(--ui-scale));font-style:normal;position:absolute;top:15%;left:20%}.game-art b{font-size:calc((39px) * var(--ui-scale));inset:auto 15% 15% auto}.game-card-copy>small{font-size:calc((16px) * var(--ui-scale));letter-spacing:1.5px;color:#9b7bb6;font-weight:900}.game-card h2{font-size:calc((25px) * var(--ui-scale));color:#64518a;margin:5px 0 8px;display:block}.game-card p{font-size:calc((16px) * var(--ui-scale));min-height:65px;margin-bottom:17px;line-height:1.75}.game-card-footer{color:#91749f;font-size:calc((16px) * var(--ui-scale));letter-spacing:.7px;border-top:1px dashed #e7dbf1;justify-content:space-between;align-items:center;padding-top:13px;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:calc((16px) * var(--ui-scale))}.learning-principles{font-size:calc((16px) * var(--ui-scale));color:#8e7c9f;background:#fffdfa;flex-wrap:wrap;justify-content:space-between;gap:15px;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{font-size:calc((16px) * var(--ui-scale));min-height:35px;padding:8px 11px}.teacher-controls label{font-size:calc((16px) * var(--ui-scale));align-items:center;gap:6px;display:flex}.teacher-controls select{font-size:calc((16px) * var(--ui-scale));padding:5px}.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{font-size:calc((34px) * var(--ui-scale));color:#644b88}.game-scene p{font-size:calc((16px) * var(--ui-scale));margin:10px 0 0}.scene-mascot{font-size:calc((85px) * var(--ui-scale));filter:drop-shadow(0 6px #97728d33);line-height:1.3}.game-columns{grid-template-columns:minmax(0,1.1fr) minmax(330px,1fr);align-items:start;gap:22px;display:grid}.passage{font-size:calc((19px) * var(--ui-scale));color:#3c4260;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{font-size:calc((16px) * var(--ui-scale));color:#a38c56;letter-spacing:1.2px}.clue-cards p{font-size:calc((16px) * var(--ui-scale));color:#655b63;margin:7px 0 0;line-height:1.8}.hint-area{border-top:1px dashed #e3daee;margin-top:18px;padding-top:20px}.hint-area p{font-size:calc((16px) * var(--ui-scale));background:#fff9df;border-radius:10px;padding:12px;line-height:1.8}.challenge-question{font-size:calc((22px) * var(--ui-scale));margin-bottom:20px;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;width:40px;height:40px;font-size:calc((25px) * var(--ui-scale));background:#c2e8d3;border-radius:50%;place-items:center;margin-bottom:12px;display:grid}.review-message h3{color:#4d7f6b;line-height:1.5;font-size:calc((18px) * var(--ui-scale))}.review-message p{font-size:calc((16px) * var(--ui-scale));margin:0}.teacher-review>.pill{margin-bottom:18px}.teacher-review details,.teacher-review details p{font-size:calc((16px) * var(--ui-scale))}.evidence-checks{font-size:calc((16px) * var(--ui-scale));flex-direction:column;gap:9px;margin:15px 0;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{font-size:calc((16px) * var(--ui-scale));margin:14px 0 0;line-height:1.8}.mission-complete{text-align:center;padding:15px 0}.mission-complete>div{font-size:calc((67px) * var(--ui-scale));filter:drop-shadow(0 4px #f4dba5)}.mission-complete>.eyebrow{color:#b07e33;font-size:calc((16px) * var(--ui-scale));letter-spacing:2px;margin:15px 0;display:block}.mission-complete h2{font-size:calc((23px) * var(--ui-scale));color:#6e5196;line-height:1.5;display:block}.mission-complete p{font-size:calc((16px) * var(--ui-scale))}.adaptive-note{font-size:calc((16px) * var(--ui-scale));color:#6a5988;background:#f3ebff;border-radius:12px;margin-top:20px;padding:15px}.boss-health{align-items:center;gap:15px;width:100%;margin-top:16px;display:flex}.boss-health span{font-size:calc((16px) * var(--ui-scale));letter-spacing:1px;color:#a7764e}.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:calc((38px) * var(--ui-scale))}.room-map>button strong{font-size:calc((16px) * var(--ui-scale))}.room-map>button small{font-size:calc((16px) * var(--ui-scale));letter-spacing:.5px;color:#6c8a78}.room-map>button.collected{background:#fff6c7;border:2px solid #d5b965}.exit-door{color:#426a55;font-size:calc((16px) * var(--ui-scale));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;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{font-size:calc((16px) * var(--ui-scale));background:#f4faf6;border:1px solid #d7e8dd;border-radius:10px;margin-bottom:10px;padding:13px 15px}.inventory article p{font-size:calc((16px) * var(--ui-scale));color:#476c5a;margin:5px 0 0;line-height:1.8}.lock-progress{flex-wrap:wrap;gap:7px;margin-top:15px;display:flex}.lock-progress>span{font-size:calc((16px) * var(--ui-scale));color:#9d98a5;background:#f1f0f3;border:1px solid #e4e2e8;border-radius:9px;align-items:center;gap:4px;padding:9px;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:calc((35px) * var(--ui-scale))}.paused-screen p{font-size:calc((18px) * var(--ui-scale))}.answer-reveal{font-size:calc((16px) * var(--ui-scale));background:#fff9e8;border-color:#e7d4a9;line-height:1.9}.gate-body{background:#faf6ff;border-color:#dcccfa}.gate-body h3{line-height:1.8}.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:calc((115px) * var(--ui-scale))}.game-card-copy{padding:26px}.game-card h2{font-size:calc((30px) * var(--ui-scale))}.game-card p{font-size:calc((16px) * var(--ui-scale));min-height:70px}.passage{font-size:calc((23px) * var(--ui-scale))}.game-scene h1{font-size:calc((40px) * var(--ui-scale))}.challenge-question{font-size:calc((27px) * var(--ui-scale))}}@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:calc((70px) * var(--ui-scale))}.game-card-copy{padding:16px}.game-card h2{font-size:calc((21px) * var(--ui-scale))}.game-card p{font-size:calc((16px) * var(--ui-scale));min-height:95px}.game-cards{gap:14px}.game-card-footer{font-size:calc((16px) * var(--ui-scale))}.setup-grid{grid-template-columns:1fr 1fr}.hero-brain{font-size:calc((75px) * var(--ui-scale))}.gifted-hero h1{font-size:calc((29px) * var(--ui-scale))}}@media (width<=800px){.gifted-hero{padding:22px}.gifted-hero h1{font-size:calc((25px) * var(--ui-scale))}.hero-brain{font-size:calc((65px) * var(--ui-scale))}.hero-brain small{font-size:calc((16px) * var(--ui-scale))}.skill-pills span{font-size:calc((16px) * var(--ui-scale));padding:4px 6px}.challenge-gate{padding:18px}.challenge-gate h2{font-size:calc((18px) * var(--ui-scale))}.challenge-gate .button{font-size:calc((16px) * var(--ui-scale));padding:10px}.game-cards{gap:11px}.game-art{height:120px}.game-card-copy{padding:13px}.game-card h2{font-size:calc((22px) * var(--ui-scale))}.game-card p{font-size:calc((16px) * var(--ui-scale));min-height:95px}.game-card-copy>small{font-size:calc((16px) * var(--ui-scale))}.game-card-footer{font-size:calc((16px) * var(--ui-scale));letter-spacing:.4px}.game-scene{padding:20px}.game-scene h1{font-size:calc((29px) * var(--ui-scale))}.scene-mascot{font-size:calc((60px) * var(--ui-scale))}.game-columns .right-stack{display:flex}.passage{font-size:calc((19px) * var(--ui-scale))}.game-toolbar .pill{font-size:calc((16px) * var(--ui-scale))}.game-columns{gap:17px}.boss-health{gap:10px}.boss-health span,.learning-principles{font-size:calc((16px) * var(--ui-scale))}.room-map{gap:8px;padding:15px 10px}.lock-progress>span{font-size:calc((16px) * var(--ui-scale))}}@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:calc((64px) * var(--ui-scale))}.game-card p{min-height:auto;font-size:calc((16px) * var(--ui-scale));margin-bottom:12px}.game-card-copy{padding:18px}.game-card-footer{font-size:calc((16px) * var(--ui-scale))}.game-card h2{font-size:calc((25px) * var(--ui-scale))}.game-card-copy>small{font-size:calc((16px) * var(--ui-scale))}.hero-brain{display:none}.gifted-hero h1{font-size:calc((27px) * var(--ui-scale))}.gifted-hero p{font-size:calc((16px) * var(--ui-scale))}.challenge-gate{flex-wrap:wrap;gap:13px}.challenge-gate .button{margin-left:auto}.setup-grid{grid-template-columns:1fr}.game-scene h1{font-size:calc((25px) * var(--ui-scale))}.game-scene p{font-size:calc((16px) * var(--ui-scale))}.scene-mascot{font-size:calc((43px) * var(--ui-scale))}.challenge-question{font-size:calc((20px) * var(--ui-scale))}.room-map>button>span{font-size:calc((29px) * var(--ui-scale))}.room-map>button strong,.room-map>button small{font-size:calc((16px) * var(--ui-scale))}}:root{--reading-size:22px;--reading-line-height:1.7;--font-english:Nunito;--font-thai:"Noto Sans Thai";--reading-fallback:sans-serif}body{font-family:var(--font-english),var(--font-thai),sans-serif}[lang=th],.reading-dialog{font-family:var(--font-thai),var(--font-english),sans-serif}.reading-trigger{color:#7651a2;font-size:calc((16px) * var(--ui-scale));white-space:nowrap;background:#faf7ff;border:1px solid #ded7ec;border-radius:12px;align-items:center;gap:6px;padding:9px 11px;font-weight:800;display:flex}.reading-settings.floating{z-index:90;position:fixed;bottom:77px;right:18px}.reading-settings.floating>.reading-trigger{background:#fff;box-shadow:0 3px 16px #51417622}.reading-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;background:#3030534d;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.reading-dialog{color:#35354e;text-align:left;background:#fffefc;border:3px solid #fff;border-radius:25px;width:min(470px,100%);max-height:calc(100dvh - 40px);padding:25px;overflow:auto;box-shadow:0 20px 100px #2a325447}.reading-dialog>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px;display:flex}.reading-dialog h2{font-size:calc((22px) * var(--ui-scale));margin:0}.reading-dialog .eyebrow{font-size:calc((16px) * var(--ui-scale));letter-spacing:1px}.reading-presets{gap:10px;margin-bottom:20px;display:flex}.reading-presets button{font-size:calc((16px) * var(--ui-scale));color:#7954a7;background:#f4ebff;border:1.5px solid #dfd0f3;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;padding:11px;display:flex}.slider-label{margin-top:18px;position:relative}.slider-label strong{color:#815ba9;position:absolute;right:0}.slider-label input{accent-color:#9272bd;width:100%;margin-top:5px;padding:0}.reading-dialog .field{font-size:calc((16px) * var(--ui-scale))}.reading-preview{background:#f3f7ff;border:1px dashed #cddaea;border-radius:15px;margin:20px 0 10px;padding:15px}.reading-preview p{color:#39475c;font-size:calc((var(--reading-size)) * var(--ui-scale));line-height:var(--reading-line-height);margin:0}.reading-preview [lang=en]{font-family:var(--font-english)}.reading-preview [lang=th]{font-family:var(--font-thai)}.reading-note{font-size:calc((16px) * var(--ui-scale));line-height:1.8}.reading-dialog select{background:#fff}.character{aspect-ratio:1;filter:drop-shadow(0 7px 6px #6f50891b);background-repeat:no-repeat;background-size:200% 200%;flex-shrink:0;width:150px;display:inline-block}.sidebar-fox{width:130px}.sidebar-bottom{padding:12px 6px 20px}.sidebar-bottom strong{font-size:calc((17px) * var(--ui-scale))}.home-adventure-hero{background:#e2f4ff;border:2px solid #d3e2ed;border-radius:24px;align-items:center;min-height:170px;margin:3px 0 21px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px #dceaf3}.home-adventure-hero>img{object-fit:cover;object-position:45% 60%;width:55%;height:100%;position:absolute;top:0;right:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 25%);mask-image:linear-gradient(90deg,#0000,#000 25%)}.home-hero-copy{z-index:1;background:linear-gradient(90deg,#ecf8ff 65%,#0000);width:66%;padding:20px 28px;position:relative}.home-hero-copy .eyebrow{font-size:calc((16px) * var(--ui-scale));color:#8363ad}.home-hero-copy h1{font-size:calc((32px) * var(--ui-scale));color:#554a86;max-width:650px;margin:8px 0}.home-hero-copy p{font-size:calc((16px) * var(--ui-scale));color:#7d7492;margin:0}.selection-stage.randomizer-illustrated{text-align:left;background:radial-gradient(at 10%,#fff5db,#f2eaff 65%);border:2px dashed #d8c3ef;flex-direction:row;justify-content:center;align-items:center;gap:9px;min-height:230px;padding:17px 20px;display:flex}.randomizer-fox{align-self:center;width:43%;max-width:210px}.selection-copy{flex:1;min-width:0}.selection-copy>.identity{vertical-align:middle;margin-left:7px}.selection-stage .selection-copy>h2{font-size:calc((max(27px,var(--reading-size))) * var(--ui-scale));font-family:var(--font-thai),var(--font-english),sans-serif;overflow-wrap:anywhere;color:#68509a;margin:12px 0 9px;line-height:1.35}.selection-stage .selection-copy>p{font-size:calc((16px) * var(--ui-scale));line-height:1.8}.selection-stage .selection-copy .pill{font-size:calc((16px) * var(--ui-scale))}.teaser-dragon{width:100px}.lesson-teaser h2{font-size:calc((22px) * var(--ui-scale))}.lesson-teaser{gap:18px}.login-backdrop{object-fit:cover;object-position:35% 60%;width:100%;height:100%;position:absolute;inset:0}.login-scene:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 35%,#e4f4ff66 65%,#e8f6ffb3);position:absolute;inset:0}.login-scene .cloud,.login-scene .sun,.login-scene .ground,.login-scene .login-stars{display:none}.login-scene .login-wrap{margin-left:auto;margin-right:7vw}.login-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffefbf5}.login-fox{width:90px;margin:8px auto 4px;display:block}.login-card .login-fox~h1{font-size:calc((28px) * var(--ui-scale));margin-top:0}.login-card .login-fox~h1 span{font-size:calc((23px) * var(--ui-scale))}.login-wrap>.brand{background:#ffffffdf;border:2px solid #fff;border-radius:18px;margin-bottom:18px;padding:12px}.login-card>.pill{font-size:calc((16px) * var(--ui-scale))}.login-scene .reading-settings{z-index:100}.login-footer{color:#4d5f7a;font-size:calc((16px) * var(--ui-scale));background:#ffffffc4;border-radius:10px;margin-top:15px;padding:6px}.gifted-hero{background:#ecf4ff;min-height:240px;padding:30px;position:relative;overflow:hidden}.gifted-hero>div:first-child{z-index:1;background:linear-gradient(90deg,#f0edff 65%,#f0edffe6 85%,#f0edff00);border-radius:15px;width:62%;padding:14px 15px;position:relative}.gifted-hero h1{font-size:calc((34px) * var(--ui-scale));line-height:1.2}.gifted-hero>img{object-fit:cover;object-position:50% 65%;width:70%;height:100%;position:absolute;inset:0 0 0 auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 28%);mask-image:linear-gradient(90deg,#0000,#000 28%)}.game-card .game-art{background:#edf0fb;height:195px;padding:0;position:relative;overflow:hidden}.game-art>img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.game-card:hover .game-art>img{transform:scale(1.035)}.game-art:after{display:none}.game-art>.card-dragon{z-index:2;width:72%;height:auto;position:absolute;bottom:2%;left:15%;transform:none}.game-card-copy{padding:18px 20px}.game-card-copy p{min-height:63px;font-size:calc((16px) * var(--ui-scale))}.game-card-copy h2{font-size:calc((26px) * var(--ui-scale))}.game-card-footer{font-size:calc((16px) * var(--ui-scale))}.mission-banner.game-scene{min-height:112px;margin-bottom:18px;padding:18px 25px}.mission-banner h1{font-size:calc((29px) * var(--ui-scale));margin:3px 0}.mission-banner .eyebrow{font-size:calc((16px) * var(--ui-scale));margin:0}.mission-banner p{font-size:calc((16px) * var(--ui-scale));margin:5px 0 0}.banner-guide{width:100px;margin:-14px 0}.mission-banner .boss-health{margin-top:9px}.illustrated-game{grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr);gap:20px}.illustrated-game>.mission-reading{padding:0;overflow:hidden}.illustrated-game>.right-stack{max-height:none;position:sticky;top:18px}.case-illustration{aspect-ratio:2;width:100%;position:relative;overflow:hidden}.case-illustration>img{object-fit:cover;object-position:50% 51%;width:100%;height:100%}.case-caption{width:fit-content;font-size:calc((16px) * var(--ui-scale));color:#665277;background:#fffdf5e8;border:1px solid #ffffff80;border-radius:9px;padding:7px 10px;position:absolute;bottom:12px;left:15px;right:15px}.guided-reading{background:#fffdfa;padding:22px 25px}.reader-label{color:#927198;font-size:calc((16px) * var(--ui-scale));letter-spacing:1px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;font-weight:900;display:flex}.reader-label>span:first-child{align-items:center;gap:6px;display:flex}.app .student-text,.app .challenge-question,.app .answer-options .option,.app .game-workspace textarea,.app .evidence-checks{font-family:var(--font-english),var(--font-thai),var(--reading-fallback,sans-serif);font-size:calc((var(--reading-size)) * var(--ui-scale));line-height:var(--reading-line-height);color:#3c3c59;overflow-wrap:anywhere;font-weight:600}.app .challenge-question{font-weight:800;line-height:1.5}.app .student-text{margin:0}.passage-page{min-height:140px}.passage-controls{border-top:1px dashed #e4daed;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:7px;margin-top:18px;padding-top:12px;display:flex}.reader-nav{color:#8d65b3;background:#f6efff;border:1px solid #e2d6ef;border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.reader-nav:disabled{opacity:.3}.page-dots{flex-wrap:wrap;flex:1;justify-content:center;gap:2px;display:flex}.page-dots>button{padding:10px 5px}.page-dots>button>span{background:#d8cce9;border-radius:50%;width:7px;height:7px;display:block}.page-dots>button[aria-current]>span{background:#9372be;border-radius:6px;width:20px}.passage-controls>.text-button{font-size:calc((16px) * var(--ui-scale));white-space:nowrap}.illustrated-game .hint-area{background:#fffdf9;margin:0;padding:12px 25px 20px}.hint-area>p{font-size:calc((var(--reading-size)) * var(--ui-scale));line-height:var(--reading-line-height)}.detective-evidence{background:#f5effb;border-top:1px solid #e7dced;border-bottom:1px solid #e7dced;padding:20px 25px}.evidence-folders{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px;display:grid}.evidence-folders>button{text-align:center;background:linear-gradient(#fff6d6,#ffefd0);border:1.5px solid #ddc9a3;border-radius:5px 13px 13px;flex-direction:column;align-items:center;gap:7px;padding:17px 9px;display:flex;position:relative;box-shadow:0 3px #e4d0b0}.evidence-folders>button:before{content:"";background:#fff3ce;border:1.5px solid #ddc9a3;border-bottom:0;border-radius:5px 5px 0 0;width:35%;height:8px;position:absolute;top:-7px;left:-1.5px}.folder-picture{color:#a67d3b}.evidence-folders strong{font-size:calc((16px) * var(--ui-scale));color:#816945}.evidence-folders small{font-size:calc((16px) * var(--ui-scale));letter-spacing:.7px;color:#a28767}.evidence-folders>button[aria-pressed=true]{outline:3px solid #bb99d9}.active-clue{background:#fffefb;border:1px solid #e6d5ba;border-radius:13px;margin-top:17px;padding:20px 17px;box-shadow:0 3px #ded2c366}.illustrated-room{aspect-ratio:3/2;background:#e7f0ed;position:relative;overflow:hidden}.illustrated-room>img{object-fit:cover;width:100%;height:100%;display:block}.scene-hotspot{color:#5d4f6b;flex-direction:column;align-items:center;gap:5px;width:max-content;max-width:33%;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.scene-hotspot:hover:not(:disabled){transform:translate(-50%,-50%)scale(1.04)}.scene-hotspot>span{color:#8e6e20;background:#fff7c4ed;border:2px solid #fff;border-radius:50%;outline:6px solid #fff3af45;place-items:center;width:44px;height:44px;animation:2s ease-in-out infinite hotspot-glow;display:grid;box-shadow:0 3px 9px #62562d4d}.scene-hotspot>strong{font-size:calc((16px) * var(--ui-scale));color:#55495f;overflow-wrap:anywhere;background:#fffdf5f2;border:1px solid #fff;border-radius:8px;max-width:100%;padding:6px 9px;font-weight:900;line-height:1.3;box-shadow:0 2px 5px #56435d33}.scene-hotspot.is-collected>span{color:#32785a;background:#c5edda;outline-color:#bde6cc55;animation:none}.scene-hotspot:focus-visible{outline-offset:8px;border-radius:15px;outline:3px solid #7551b4}.room-door-status{font-size:calc((16px) * var(--ui-scale));letter-spacing:.5px;white-space:nowrap;color:#7e6b43;background:#fffef1e8;border:1px solid #fff;border-radius:9px;align-items:center;gap:6px;padding:7px 10px;display:flex;position:absolute;top:21%;left:50%;transform:translate(-50%)}.room-door-status.open{color:#3c7958;background:#d8ffe1}.room-complete:after{content:"";pointer-events:none;background:radial-gradient(at 50% 35%,#fff1a470,#0000 60%);position:absolute;inset:0}.inventory-strip{background:#ecf5ef;border-top:2px solid #d1e6d8;border-bottom:1px solid #d1e6d8;padding:15px 19px 13px}.inventory-strip>.eyebrow{font-size:calc((16px) * var(--ui-scale));color:#668c74;margin-bottom:9px}.inventory-strip>div{flex-wrap:wrap;gap:7px;display:flex}.inventory-strip button{color:#63846f;font-size:calc((16px) * var(--ui-scale));overflow-wrap:anywhere;background:#fffdf6;border:1px solid #cfded3;border-radius:9px;align-items:center;gap:6px;max-width:100%;padding:8px 10px;display:flex}.inventory-strip button.active{color:#8b7235;background:#fff1b6;border-color:#d7bf7c}.inventory-strip button:disabled{background:#f3f4f3}.room-clue{background:#fffdf0;border:1px solid #e6d9aa;border-radius:13px;margin:17px 20px;padding:17px 19px;box-shadow:0 3px #ecdfbd66}.room-clue>.eyebrow{font-size:calc((16px) * var(--ui-scale));color:#9d804e}.exploration-hint{font-size:calc((16px) * var(--ui-scale));color:#7d8e83;justify-content:center;align-items:center;gap:6px;margin:0 0 17px;padding:0 18px;display:flex}.illustrated-game .lock-progress{background:#fffdf9;border-top:1px solid #e7e5e9;margin:0;padding:14px 20px}.dragon-battle{aspect-ratio:2/1.18;position:relative;overflow:hidden}.dragon-battle>img{object-fit:cover;width:100%;height:100%;display:block}.dragon-battle>.battle-dragon{z-index:1;width:55%;position:absolute;bottom:10%;left:22%}.dragon-dialogue{text-align:center;width:fit-content;max-width:calc(100% - 40px);font-size:calc((16px) * var(--ui-scale));color:#6f5993;z-index:2;background:#fffef3f2;border:2px solid #fff;border-radius:14px;margin:auto;padding:9px 15px;font-weight:900;position:absolute;bottom:10px;left:20px;right:20px;box-shadow:0 3px #daccee88}.battle-won{background:#fff4d0}.completion-character{width:135px;margin:0 auto}.mission-complete>.completion-character{font-size:inherit;display:block}.app .game-workspace .answer-options .option{text-align:left;background:#fffefb;border-color:#e6d7f0;min-height:64px;padding:12px 16px;font-weight:700}.app .game-workspace .answer-options .option:hover{background:#f1e7ff}.teacher-review .evidence-checks{font-size:calc((16px) * var(--ui-scale))}.app .game-workspace textarea{min-height:120px}@keyframes hotspot-glow{50%{outline-width:10px;outline-color:#fff3af17}}@media (width>=1650px){.home-adventure-hero{min-height:185px}.home-hero-copy h1{font-size:calc((36px) * var(--ui-scale))}.game-card .game-art{height:240px}.randomizer-fox{max-width:230px}.selection-stage.randomizer-illustrated{min-height:300px}.case-illustration{aspect-ratio:2.1}.guided-reading{padding:25px 30px}.passage-page{min-height:155px}.dragon-battle{aspect-ratio:2}.scene-hotspot>strong{font-size:calc((16px) * var(--ui-scale))}.scene-hotspot>span{width:50px;height:50px}}@media (width>=1151px) and (height<=850px){.home-adventure-hero{min-height:117px;margin:2px 0 15px}.home-hero-copy{padding:14px 22px}.home-hero-copy h1{font-size:calc((27px) * var(--ui-scale));margin:4px 0}.home-hero-copy p{font-size:calc((16px) * var(--ui-scale))}.home-hero-copy .eyebrow{font-size:calc((16px) * var(--ui-scale));margin-bottom:3px}.selection-stage.randomizer-illustrated{min-height:180px;padding:8px 13px}.randomizer-fox{max-width:155px}.selection-stage .selection-copy>h2{font-size:calc((26px) * var(--ui-scale));margin:9px 0}.selection-stage .selection-copy>p{font-size:calc((16px) * var(--ui-scale))}.stats{margin-bottom:15px}.stats>div{padding:9px 15px}.mission-banner.game-scene{min-height:96px;padding:11px 22px}.banner-guide{width:82px}.mission-banner h1{font-size:calc((27px) * var(--ui-scale))}.gifted-hero{min-height:210px}.game-card .game-art{height:175px}}@media (width<=1150px){.home-hero-copy h1{font-size:calc((27px) * var(--ui-scale))}.home-adventure-hero{min-height:150px}.home-hero-copy{padding:19px}.home-hero-copy p{font-size:calc((16px) * var(--ui-scale))}.illustrated-game{grid-template-columns:1fr}.illustrated-game>.right-stack{display:flex;position:static}.gifted-hero h1{font-size:calc((28px) * var(--ui-scale))}.gifted-hero{min-height:220px}.game-card .game-art{height:155px}.game-card-copy p{font-size:calc((16px) * var(--ui-scale));min-height:86px}.randomizer-fox{max-width:210px}.selection-stage.randomizer-illustrated{min-height:220px}.login-scene .login-wrap{margin-right:3vw}.case-illustration{aspect-ratio:2.5}.dragon-battle{aspect-ratio:2.2}.dragon-battle>.battle-dragon{width:42%;bottom:8%;left:29%}.room-door-status,.scene-hotspot>strong{font-size:calc((16px) * var(--ui-scale))}}@media (width<=800px){.reading-trigger{padding:8px}.reading-trigger>span{display:none}.top-actions{gap:6px}.home-adventure-hero{min-height:145px}.home-hero-copy{background:linear-gradient(90deg,#ecf8ff 65%,#0000);width:75%;padding:15px}.home-hero-copy h1{font-size:calc((25px) * var(--ui-scale))}.home-hero-copy .eyebrow,.home-hero-copy p{font-size:calc((16px) * var(--ui-scale))}.home-adventure-hero>img{object-position:30% 60%;width:65%}.game-card .game-art{height:155px}.gifted-hero{min-height:220px;padding:20px}.gifted-hero>div:first-child{background:linear-gradient(90deg,#f0edff 70%,#f0edffcc 95%,#0000);width:70%;padding:10px}.gifted-hero h1{font-size:calc((27px) * var(--ui-scale))}.gifted-hero p{font-size:calc((16px) * var(--ui-scale))}.gifted-hero>img{width:85%}.game-card-copy h2{font-size:calc((22px) * var(--ui-scale))}.game-card-copy p{font-size:calc((16px) * var(--ui-scale))}.game-card-copy{padding:15px}.game-card-footer{font-size:calc((16px) * var(--ui-scale))}.guided-reading{padding:18px 20px}.passage-page{min-height:130px}.detective-evidence{padding:20px}.scene-hotspot>strong{font-size:calc((16px) * var(--ui-scale))}.scene-hotspot>span{width:40px;height:40px}.inventory-strip{padding:13px 15px}.room-clue{margin:15px;padding:15px}.mission-banner h1{font-size:calc((26px) * var(--ui-scale))}.banner-guide{width:83px}.selection-stage .selection-copy>h2{font-size:calc((28px) * var(--ui-scale))}.lesson-teaser .teaser-dragon{width:85px}.login-scene .login-wrap{margin:0 auto}.login-backdrop{object-position:25% 50%;opacity:.65}.login-scene:after{background:#eaf6ff55}.reading-dialog{padding:20px}.case-illustration{aspect-ratio:2.1}.dragon-battle{aspect-ratio:1.8}.dragon-battle>.battle-dragon{width:53%;bottom:8%;left:24%}.room-door-status{font-size:calc((16px) * var(--ui-scale))}.mission-banner.game-scene{min-height:105px}.reader-label{font-size:calc((16px) * var(--ui-scale))}.reading-settings.floating{bottom:70px;right:12px}}@media (width<=560px){.home-adventure-hero{min-height:165px}.home-hero-copy{width:82%;padding:14px}.home-hero-copy h1{font-size:calc((25px) * var(--ui-scale));max-width:250px}.home-hero-copy p{max-width:200px}.home-adventure-hero>img{object-position:25% 70%;width:65%}.home-hero-copy .eyebrow{letter-spacing:.8px}.selection-stage.randomizer-illustrated{gap:3px;min-height:200px;padding:10px 9px}.randomizer-fox{width:43%;max-width:155px}.selection-stage .selection-copy>h2{font-size:calc((24px) * var(--ui-scale));line-height:1.45}.selection-copy>.identity{width:23px;height:23px;font-size:calc((16px) * var(--ui-scale));margin-left:4px}.selection-stage .selection-copy .pill{font-size:calc((16px) * var(--ui-scale));letter-spacing:.2px;padding:5px 6px}.selection-stage .selection-copy>p{font-size:calc((16px) * var(--ui-scale))}.lesson-teaser .teaser-dragon{display:none}.gifted-hero{min-height:225px;padding:14px}.gifted-hero>div:first-child{background:linear-gradient(90deg,#f0edfffa 60%,#f0edffe6 85%,#0000);width:90%;padding:12px}.gifted-hero>img{object-position:40% 50%;width:100%}.gifted-hero h1{font-size:calc((29px) * var(--ui-scale));max-width:270px}.gifted-hero .skill-pills{gap:5px}.game-card .game-art{width:100%;height:100%;min-height:190px}.game-card .game-art>img{object-position:60% 50%}.game-art>.card-dragon{width:110%;bottom:22%;left:-5%}.game-card-copy h2{font-size:calc((24px) * var(--ui-scale))}.game-card-copy p{font-size:calc((16px) * var(--ui-scale));min-height:0}.game-card-footer{font-size:calc((16px) * var(--ui-scale))}.mission-banner.game-scene{min-height:103px;padding:15px}.mission-banner h1{font-size:calc((23px) * var(--ui-scale))}.mission-banner>div:first-child{max-width:78%}.banner-guide{width:68px;margin:0}.case-caption{font-size:calc((16px) * var(--ui-scale));padding:5px 8px;bottom:9px;left:10px;right:10px}.guided-reading{padding:17px}.scene-hotspot>span{width:35px;height:35px}.scene-hotspot>strong{font-size:calc((16px) * var(--ui-scale));padding:5px 6px}.room-door-status{font-size:calc((16px) * var(--ui-scale));gap:3px;padding:5px 7px}.room-door-status svg{width:12px;height:12px}.inventory-strip button{font-size:calc((16px) * var(--ui-scale));padding:6px}.inventory-strip>.eyebrow,.exploration-hint{font-size:calc((16px) * var(--ui-scale))}.reading-dialog h2{font-size:calc((20px) * var(--ui-scale))}.reading-presets button{font-size:calc((16px) * var(--ui-scale))}.dragon-dialogue{font-size:calc((16px) * var(--ui-scale));padding:7px 11px;bottom:8px;left:12px;right:12px}.passage-controls>.text-button{font-size:calc((16px) * var(--ui-scale))}.completion-character{width:120px}.app .evidence-checks{font-size:calc((16px) * var(--ui-scale))}}.dragon-battle>.battle-dragon{aspect-ratio:1;width:auto;height:82%;bottom:10%;left:50%;transform:translate(-50%)}.selection-stage .selection-copy>h2{font-size:calc((max(26px,var(--reading-size))) * var(--ui-scale))}.reading-settings:has(.reading-backdrop){z-index:20000;position:relative}.reading-settings.floating:has(.reading-backdrop){z-index:20000;position:fixed}.topbar:has(.reading-backdrop){z-index:20000}.game-art>.card-dragon{aspect-ratio:1;width:min(155px,90%);height:auto;top:50%;bottom:auto;left:50%;transform:translate(-50%,-50%)}@media (width>=1650px){.game-art>.card-dragon{width:210px}}:root{--ui-scale:1;--sidebar-width:clamp(250px,calc(250px * var(--ui-scale)),380px)}body{font-size:calc(18px * var(--ui-scale));line-height:1.6}button,input,select,textarea,summary{font-family:inherit}.topbar{flex-wrap:wrap;gap:12px;height:auto;min-height:90px;padding-top:12px;padding-bottom:12px}.brand{white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%}.brand>div{min-width:0}.brand small{white-space:normal;letter-spacing:.5px}.top-actions{flex-wrap:wrap;gap:10px;max-width:100%}.top-actions>.pill{max-width:100%}.sidebar{width:var(--sidebar-width)}.workspace{width:calc(100% - var(--sidebar-width))}.nav{white-space:normal;overflow-wrap:anywhere;line-height:1.55}.nav-label{letter-spacing:.5px}.tiny-new{display:none}.pill{white-space:normal;overflow-wrap:anywhere;text-align:center;letter-spacing:.3px;max-width:100%;line-height:1.5}.classbar{flex-wrap:wrap}.classbar select{max-width:100%;min-height:44px}.class-date{white-space:normal}.section-title{flex-wrap:wrap}.section-title>div{min-width:0}.section-title>div:not(.title-icon){flex:1}.section-title .pill{margin-left:0}.field{line-height:1.6}.field input,.field select,.field textarea{min-height:44px;line-height:1.5}.field input[type=range]{min-height:30px}.button,.text-button,.pause-student{white-space:normal;overflow-wrap:anywhere;min-height:44px;line-height:1.5}.attendance-row{flex-wrap:wrap;gap:8px}.attendance-row .student-label{min-width:90px}.attendance-row select{flex:185px;min-width:min(185px,100%);max-width:100%;min-height:44px;line-height:1.5}.pause-student{padding:6px 9px}.reward-buttons{flex-wrap:wrap}.reward-buttons button{min-width:55px;min-height:48px}.custom-reward{flex-wrap:wrap}.custom-reward input{width:100px}.draw-footer{gap:12px}.draw-actions{flex-wrap:wrap}.button.huge{min-width:0}.huge span{display:none}.random-panel details p{line-height:1.7}.stats small{line-height:1.6}.stats>div,.stats>div>span:last-child{min-width:0}.stats small{overflow-wrap:anywhere}.toolbar{align-items:flex-start}.toolbar label{flex-wrap:wrap}.toolbar input{width:max(85px,5em);max-width:100%}.inline-form{flex-wrap:wrap}.inline-form input{min-width:0}.roster-row>div{min-width:min(160px,100%)}.roster-row .uuid{overflow-wrap:anywhere}.score-cards{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}.table-scroll{max-width:100%;overflow:auto}.seat-grid button{overflow-wrap:anywhere;min-width:0}.seat-grid small{line-height:1.5}.lesson-teaser{flex-wrap:wrap}.lesson-teaser>div{flex:260px;min-width:0}.lesson-teaser .button{white-space:normal}.page-footer{flex-wrap:wrap;line-height:1.6}.page-footer span{margin-left:0}.game-toolbar{flex-wrap:wrap}.teacher-controls{align-items:flex-start}.teacher-controls label{flex-wrap:wrap}.setup-grid>*{min-width:0}.game-card-copy p{min-height:0}.game-card-footer{flex-wrap:wrap}.game-scene>div:first-child{min-width:0;max-width:100%}.mission-banner h1{overflow-wrap:anywhere}.game-cards{align-items:stretch}.inventory-strip>div{flex-wrap:wrap}.inventory-strip button{min-width:0;line-height:1.6}.room-door-status{white-space:normal;max-width:45%}.scene-hotspot{max-width:34%}.scene-hotspot>strong{padding:7px 8px;line-height:1.45}.passage-controls{flex-wrap:wrap}.passage-controls>.text-button{white-space:normal}.reader-label{letter-spacing:.4px;flex-wrap:wrap;line-height:1.6}.reading-settings{flex-wrap:wrap;align-items:center;gap:7px;max-width:100%;display:flex}.font-quick{background:#fff;border:1.5px solid #d7c6ef;border-radius:11px;align-items:center;display:flex;overflow:hidden}.font-quick button{font-size:calc(18px * var(--ui-scale));color:#735299;min-width:44px;min-height:44px;padding:6px;font-weight:900}.font-quick .font-scale-value{font-size:calc(16px * var(--ui-scale));color:#645777;padding:4px 6px;font-weight:800}.font-quick button:disabled{opacity:.35}.reading-trigger{font-size:calc(16px * var(--ui-scale));white-space:normal;min-height:44px}.reading-trigger>span{display:inline}.reading-settings.floating{background:#fffffff5;border-radius:14px;max-width:calc(100vw - 24px);padding:5px;bottom:77px;right:12px;box-shadow:0 3px 16px #55436633}.reading-backdrop{padding:12px}.reading-dialog{width:min(650px,100%);max-height:calc(100dvh - 24px);padding:22px}.reading-dialog>header{z-index:2;background:#fffefc;align-items:flex-start;padding:12px 0;position:sticky;top:-22px}.reading-dialog>header>div{min-width:0}.reading-dialog>header h2{overflow-wrap:anywhere}.reading-dialog .icon-button{background:#f4ecff;border-radius:11px;flex-shrink:0;min-width:44px;min-height:44px}.whole-ui-control{background:#f1e8ff;border:2px solid #cbb0e8;border-radius:16px;margin:0 0 18px;padding:17px}.whole-ui-control .field{font-size:calc(18px * var(--ui-scale));margin:0}.whole-ui-control p{font-size:calc(16px * var(--ui-scale));color:#6d567d;margin:12px 0 0;line-height:1.7}.slider-label strong{display:block;position:static}.slider-label{gap:5px}.reading-presets{flex-wrap:wrap}.reading-presets button{white-space:normal;min-width:170px}.reading-preview p{overflow-wrap:anywhere}.reading-note{line-height:1.75}.login-wrap>.brand{justify-content:flex-start}.login-card .field input{line-height:1.6}.fixed-user{flex-wrap:wrap}.fixed-user>.pill{margin-left:0}.login-note,.login-footer{line-height:1.7}.login-scene .reading-settings.floating{z-index:100;position:absolute;top:12px;bottom:auto;right:12px}html[data-ui-size=medium] .dashboard-grid,html[data-ui-size=medium] .two-columns{grid-template-columns:1fr}html[data-ui-size=medium] .sidebar-bottom{display:none}html[data-ui-size=large] .shell{display:block}html[data-ui-size=large] .sidebar{flex-flow:wrap;gap:8px;width:100%;padding:14px}html[data-ui-size=large] .nav{flex:0 auto;padding:12px}html[data-ui-size=large] .nav-label,html[data-ui-size=large] .sidebar-bottom{display:none}html[data-ui-size=large] .workspace{width:100%;padding:0 20px 24px}html[data-ui-size=large] .dashboard-grid,html[data-ui-size=large] .two-columns,html[data-ui-size=large] .game-columns,html[data-ui-size=large] .setup-grid,html[data-ui-size=large] .game-cards{grid-template-columns:1fr}html[data-ui-size=large] .right-stack{display:flex}html[data-ui-size=large] .game-card{display:block}html[data-ui-size=large] .game-card .game-art{height:240px;min-height:0}html[data-ui-size=large] .illustrated-game>.right-stack{position:static}html[data-ui-size=large] .home-hero-copy,html[data-ui-size=large] .gifted-hero>div:first-child{width:85%}@media (width<=1150px){.workspace{width:calc(100% - var(--sidebar-width));padding:0 18px 24px}.right-stack{display:flex}.game-cards{grid-template-columns:1fr}.game-card{grid-template-columns:200px 1fr;display:grid}.game-card .game-art{height:100%;min-height:220px}.game-card-copy p{min-height:0}.game-card-footer{font-size:calc(16px * var(--ui-scale))}.gifted-hero>div:first-child{width:82%}}@media (width<=800px){.shell{display:block}.sidebar{flex-flow:wrap;justify-content:flex-start;width:100%;padding:12px}.nav{white-space:normal;font-size:calc(16px * var(--ui-scale));padding:10px}.nav.logout{display:flex}.sidebar-bottom{display:none}.workspace{width:100%;padding:0 14px 20px}.topbar{padding:12px 16px}.top-actions{justify-content:flex-start;width:100%}.classbar{gap:10px}.home-hero-copy{width:85%}.gifted-hero>div:first-child{width:92%}.reading-trigger>span{display:inline}.home-hero-copy h1{font-size:calc(27px * var(--ui-scale))}.stats{grid-template-columns:1fr}.stats>div{justify-content:flex-start}.stats b{display:inline}.stats small{margin-left:12px;display:inline-block}.stat-icon{display:grid}.section-title .step{display:none}.game-scene .banner-guide{width:75px}.room-door-status{max-width:50%;top:10%}.scene-hotspot>strong{font-size:calc(16px * var(--ui-scale))}.scene-hotspot>span{width:40px;height:40px}.reading-settings.floating .reading-trigger>span{max-width:200px}.login-scene{padding-top:135px}.login-scene .reading-settings.floating{max-width:calc(100% - 24px)}}@media (width<=560px){.game-card{display:block}.game-card .game-art{height:210px;min-height:0}.reading-dialog{padding:17px}.reading-dialog>header{top:-17px}.reading-presets button{flex:100%;min-width:0}.home-hero-copy{background:#eff8ffdd;width:100%}.home-hero-copy h1,.home-hero-copy p{max-width:100%}.selection-stage.randomizer-illustrated{text-align:center;flex-direction:column}.randomizer-fox{width:125px}.selection-copy{width:100%}.draw-actions>.button{flex:100%}.stats>div{padding:14px}.table-scroll{width:100%}.game-columns .right-stack{display:flex}.game-toolbar .pill{max-width:100%}.scene-hotspot>strong{font-size:calc(16px * var(--ui-scale));padding:5px}.room-door-status{max-width:100%;font-size:calc(16px * var(--ui-scale));border-radius:0;justify-content:center;position:static;transform:none}.illustrated-room{aspect-ratio:auto}.illustrated-room>img{aspect-ratio:3/2}.exploration-hint{flex-wrap:wrap}.inventory-strip button{flex:100%}}@media (width>=1151px) and (height<=850px){html[data-ui-size=normal] .topbar{min-height:76px;padding-top:8px;padding-bottom:8px}html[data-ui-size=normal] .home-hero-copy{padding-top:10px;padding-bottom:10px}html[data-ui-size=normal] .stats>div>span:last-child{align-items:center;gap:10px;display:flex}html[data-ui-size=normal] .stats small{margin-top:0}html[data-ui-size=normal] .stats b{white-space:nowrap}}.teacher-canvas{background-color:#edf8ff;background-image:linear-gradient(#f6fbff66,#f6fbff66),url(/art/pixel-cloud-sky.webp);background-position:top;background-repeat:repeat;background-size:auto,1440px}.teacher-canvas .selection-stage[data-state=ready] .selection-copy>h2{font-size:calc(max(40px,var(--reading-size)*1.65) * var(--ui-scale))}.teacher-canvas .shell{min-height:100vh;display:block}.teacher-canvas .teacher-navigation{background:#ffffffed;border-bottom:1px solid #dce4f1;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 28px;display:flex}.teacher-canvas .teacher-navigation .nav{white-space:normal;line-height:1.5;font-size:calc(16px * var(--ui-scale));border:1px solid #0000;flex:0 auto;align-items:center;gap:9px;padding:10px 15px;display:flex}.teacher-canvas .teacher-navigation .nav.active{box-shadow:none;background:#eee5ff;border-color:#d7c3f0}.teacher-canvas .teacher-navigation .logout{margin-left:auto}.teacher-canvas .workspace{width:100%;max-width:1800px;margin:auto;padding:0 28px 30px}.teacher-canvas .topbar{background:#fffffff2;min-height:76px;padding:10px 28px}.teacher-canvas .topbar .brand{font-size:calc(23px * var(--ui-scale))}.teacher-canvas .topbar .brand small,.teacher-canvas .topbar .admin-badge small{display:none}.teacher-canvas .classbar{gap:12px;padding:14px 0}.teacher-canvas .home-adventure-hero{min-height:130px;margin-bottom:18px}.teacher-canvas .stats{gap:12px;margin-bottom:20px}.teacher-canvas .stats>div{padding:12px 18px}.teacher-canvas .stats>div>span:last-child{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.teacher-canvas .stats small{margin:0}.teacher-canvas .dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(340px,1fr);gap:22px}.teacher-canvas .random-panel{padding:24px}.teacher-canvas .selection-stage.randomizer-illustrated{background:radial-gradient(at 15%,#fff2ca,#f0e7ff 70%);gap:28px;min-height:340px;padding:22px 28px}.teacher-canvas .randomizer-fox{width:36%;max-width:300px}.teacher-canvas .selection-stage .selection-copy>h2{font-size:calc(max(48px,var(--reading-size)*2) * var(--ui-scale));overflow-wrap:anywhere;margin:17px 0;line-height:1.3}.teacher-canvas .selection-copy>.identity{width:48px;height:48px;font-size:calc(28px * var(--ui-scale));margin-left:12px}.teacher-canvas .selection-stage .selection-copy>p{font-size:calc(18px * var(--ui-scale));line-height:1.7}.teacher-canvas .draw-actions .button.huge{font-size:calc(25px * var(--ui-scale));min-height:60px}.teacher-canvas .right-stack{display:flex}.teacher-canvas .attendance-list{max-height:340px}.teacher-canvas .attendance-row{flex-wrap:wrap;gap:8px}.teacher-canvas .reward-panel select{width:100%;min-height:48px;font-size:calc(18px * var(--ui-scale));padding:9px 12px;line-height:1.5}.teacher-canvas .segmented button{min-height:46px}.teacher-canvas .mission-banner.game-scene{min-height:130px;padding:18px 26px}.teacher-canvas .mission-banner h1{font-size:calc(40px * var(--ui-scale));line-height:1.3}.teacher-canvas .banner-guide{width:115px}.teacher-canvas .illustrated-game{grid-template-columns:minmax(0,1.25fr) minmax(370px,1fr);gap:24px}.teacher-canvas .illustrated-game>.right-stack{position:static}.teacher-canvas .case-illustration{aspect-ratio:2.4}.teacher-canvas .teacher-controls{background:#fffe;gap:10px;padding:14px;box-shadow:0 3px #e1e8f4}.teacher-canvas .teacher-controls .button,.teacher-canvas .teacher-controls select{font-size:calc(17px * var(--ui-scale));min-height:44px}.teacher-canvas .lesson-teaser{margin-top:10px}@media (width>=1650px){.teacher-canvas .selection-stage.randomizer-illustrated{min-height:440px}.teacher-canvas .randomizer-fox{max-width:370px}.teacher-canvas .selection-stage .selection-copy>h2{font-size:calc(max(64px,var(--reading-size)*2) * var(--ui-scale))}.teacher-canvas .workspace{padding:0 36px 35px}}@media (width<=1150px){.teacher-canvas .dashboard-grid,.teacher-canvas .illustrated-game{grid-template-columns:1fr}.teacher-canvas .selection-stage.randomizer-illustrated{min-height:330px}.teacher-canvas .teacher-navigation{padding:10px 16px}.teacher-canvas .workspace{padding:0 18px 25px}.teacher-canvas .teacher-navigation .nav{padding:10px}.teacher-canvas .teacher-navigation .logout{margin-left:0}}@media (width<=800px){.teacher-canvas .selection-stage.randomizer-illustrated{gap:16px;min-height:290px;padding:20px}.teacher-canvas .randomizer-fox{max-width:230px}.teacher-canvas .topbar{padding:12px 16px}.teacher-canvas .workspace{padding:0 14px 24px}.teacher-canvas .mission-banner h1{font-size:calc(31px * var(--ui-scale))}.teacher-canvas .banner-guide{width:85px}.teacher-canvas .stats>div>span:last-child{display:block}.teacher-canvas .stats small{margin-left:10px}}@media (width<=560px){.teacher-canvas .selection-stage.randomizer-illustrated{text-align:center;flex-direction:column;gap:5px;min-height:330px}.teacher-canvas .randomizer-fox{width:135px}.teacher-canvas .selection-stage .selection-copy>h2{font-size:calc(43px * var(--ui-scale))}.teacher-canvas .teacher-navigation{gap:5px;padding:10px}.teacher-canvas .teacher-navigation .nav{flex:43%;padding:10px 8px}.teacher-canvas .mission-banner h1{font-size:calc(28px * var(--ui-scale))}.teacher-canvas .banner-guide{width:70px}.teacher-canvas .mission-banner.game-scene{padding:16px}.teacher-canvas .stats{grid-template-columns:1fr}}html[data-ui-size=medium] .teacher-canvas .dashboard-grid,html[data-ui-size=medium] .teacher-canvas .illustrated-game,html[data-ui-size=large] .teacher-canvas .dashboard-grid,html[data-ui-size=large] .teacher-canvas .illustrated-game{grid-template-columns:1fr}@media (width<=560px){.teacher-canvas .selection-stage[data-state=ready] .selection-copy>h2{font-size:calc(30px * var(--ui-scale));overflow-wrap:normal;word-break:normal}}
