@charset "UTF-8";
:root{--ink:#302e4d;--muted:#767487;--purple:#6955ba;--purple-dark:#514296;--yellow:#ffcf65;--paper:#fff;--line:#e8e5ee;--bg:#f8f8fc;--shadow:0 6px 22px #30255008;font-family:'Malgun Gothic','Apple SD Gothic Neo',system-ui,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.55}button,input,select{font:inherit}button{cursor:pointer;color:inherit;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.46}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #178eae;outline-offset:4px}button{border:0}h1,h2,p{margin-top:0}h1{font-size:clamp(27px,3vw,42px);line-height:1.4;letter-spacing:-1.7px;margin-bottom:12px}h2{font-size:21px;letter-spacing:-.6px;margin-bottom:14px}p{color:var(--muted)}small{font-size:14px}strong{font-weight:800}.topbar{height:100px;padding:0 4%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:13px;background:none;text-align:left;font-size:22px;font-weight:900;letter-spacing:-1px;padding:0}.brand small{display:block;font-size:12px;font-weight:500;color:var(--muted);letter-spacing:0;margin-top:2px}.brand-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:var(--purple);color:var(--yellow);font-size:34px;box-shadow:0 4px 0 #ded7f3}.header-right{display:flex;align-items:center;gap:18px}.local-tag{padding:5px 12px;background:#f1eff9;color:#786499;border-radius:8px;font-size:13px;font-weight:700}.room-name{font-size:14px;color:var(--muted)}.primary,.secondary,.dark,.danger{min-height:52px;padding:12px 20px;border-radius:13px;font-weight:800;transition:transform .15s,background .15s}.primary{background:var(--purple);color:white;box-shadow:0 3px 0 var(--purple-dark)}.primary:hover{background:#5d48ac}.secondary{background:#fff;border:1px solid #ded9e9}.secondary:hover{background:#f2eff9}.dark{background:var(--ink);color:white}.danger{background:#fff0ee;color:#b64d49}.compact{min-height:42px;padding:8px 14px;font-size:14px}.full{width:100%}.text-button{padding:10px 2px;background:none;color:var(--purple);font-weight:700;min-height:44px}.text-button:hover{text-decoration:underline}.subtle{color:#908698;font-size:14px}.icon-button{background:#f4f2f7;border-radius:50%;width:44px;height:44px}.eyebrow{font-size:13px;font-weight:800;color:var(--purple);letter-spacing:1.3px;display:block;margin-bottom:15px}.home{min-height:calc(100vh - 160px);max-width:1500px;margin:auto;display:grid;grid-template-columns:1fr 1.18fr;align-items:center;gap:3%;padding:46px 5% 36px}.home-copy h1{font-size:clamp(35px,3.7vw,55px);line-height:1.45;letter-spacing:-2.8px;font-weight:900;margin-bottom:18px}.home-copy h1 em{font-style:normal;color:var(--purple);background:linear-gradient(transparent 76%,#e6def8 0)}.intro{line-height:1.85;margin-bottom:29px;font-size:17px}.role-options{display:grid;gap:13px;max-width:420px}.role-card{display:flex;text-align:left;align-items:center;gap:18px;border-radius:18px;padding:20px 22px;min-height:99px;transition:transform .2s}.role-card:hover{transform:translateY(-3px)}.role-card.teacher{background:var(--purple);color:white;box-shadow:0 5px 0 #504090}.role-card.student{background:#fff;border:1.5px solid #ded8ed;box-shadow:0 4px 0 #e9e5f2}.role-symbol{font-size:32px;display:grid;place-items:center;width:49px;height:49px;border-radius:13px;background:#ffffff23}.student .role-symbol{color:#bd8618;background:#fff3cf}.role-card strong{display:block;font-size:22px}.role-card small{display:block;opacity:.8;margin-top:2px;font-size:14px}.role-card b{font-size:24px;margin-left:auto}.home-links{display:flex;gap:25px;margin-top:21px;font-size:14px}.local-note{font-size:12px;line-height:1.8;margin-top:16px}.hero-art{background:#eeeff9;border-radius:40% 40% 30px 30px;position:relative;padding:40px 0 20px;overflow:hidden}.hero-art img{width:100%;display:block;mix-blend-mode:multiply}.art-label{position:relative;display:block;text-align:center;letter-spacing:2px;color:#797090;font-size:12px;font-weight:800}.art-label i{font-style:normal;color:#c49a45;margin-right:10px}.art-caption{display:flex;align-items:center;gap:15px;background:#ffffffd9;width:max-content;max-width:90%;padding:16px 25px;margin:0 auto;border-radius:16px;box-shadow:0 5px 15px #50408006}.art-caption>span{font-size:35px;color:#d3a230}.art-caption strong{font-size:15px}.art-caption small{display:block;font-size:12px;color:var(--muted);margin-top:3px}footer{display:flex;justify-content:space-between;padding:18px 5%;border-top:1px solid var(--line);font-size:12px;color:#9691a2}.layout{max-width:1500px;padding:32px 4% 40px;margin:auto}.paper{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.setup{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;max-width:1150px}.setup-story h1{font-size:40px}.setup-story img{width:100%;border-radius:30px;mix-blend-mode:multiply}.setup-story p{line-height:1.9}.form-panel{padding:30px}.form-panel h2{font-size:25px;margin-bottom:25px}label{display:block;font-size:15px;font-weight:700;margin-bottom:19px}input:not([type=radio]),select{display:block;width:100%;margin-top:8px;border:1px solid #dedbe8;border-radius:11px;min-height:51px;padding:11px 14px;background:#fff;color:var(--ink)}input::placeholder{color:#a6a0b5}label small{font-size:12px;color:var(--muted);font-weight:400}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}fieldset{border:0;padding:0;margin:0 0 20px}legend{font-size:15px;font-weight:700;margin-bottom:12px}legend small{display:block;font-weight:400;color:var(--muted);font-size:12px}.radio{border:1px solid var(--line);border-radius:10px;padding:11px 13px;margin-bottom:9px;display:flex;align-items:center;gap:8px;font-weight:500}.radio:has(input:checked){background:#f4f1fc;border-color:#aa97d8}.radio input{accent-color:var(--purple);width:18px;height:18px}.muted{color:var(--muted);font-size:14px;margin:14px 0 0}.join-screen{padding:45px 20px;max-width:620px;margin:auto;text-align:center}.join-screen .form-panel{text-align:left;margin-top:25px}.step{display:flex;align-items:flex-start;gap:16px}.step>b{display:grid;place-items:center;width:30px;height:30px;background:#ede7fc;color:var(--purple);border-radius:50%;flex-shrink:0;margin-top:2px}.step label{flex:1}.code-input{font-size:30px;letter-spacing:10px;font-weight:800}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.page-heading h1{font-size:29px;margin-bottom:6px}.page-heading p{font-size:14px;margin-bottom:0}.page-heading .eyebrow{margin-bottom:6px;font-size:12px}.entry-code{padding:10px 24px;background:#ffefc7;border:1px dashed #e2be69;border-radius:15px;min-width:200px;text-align:center}.entry-code small{display:block;color:#91702c;font-size:12px}.entry-code strong{font-size:31px;letter-spacing:6px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:24px;flex-wrap:wrap}.toolbar-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar button{font-size:14px}.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.team-lobby{padding:20px 16px 12px;border-top:5px solid var(--team)}.team-title{display:flex;align-items:center;gap:10px;margin-bottom:18px}.team-title h2{font-size:19px;margin-bottom:0;word-break:break-all}.team-title small{font-size:12px;color:var(--muted)}.team-emblem{display:grid;place-items:center;flex-shrink:0;width:35px;height:40px;color:var(--team);font-size:28px}.mini-button{margin-left:auto;min-height:44px;background:#f6f4fa;border-radius:9px;padding:7px 10px;font-size:13px;flex-shrink:0}.members{min-height:112px}.empty-team{font-size:13px;text-align:center;padding-top:28px}.player-card{background:#f8f7fb;border:1px solid #eeebf3;border-radius:12px;padding:10px;display:flex;align-items:center;gap:9px;margin-bottom:8px;font-size:14px;flex-wrap:wrap}.player-card[draggable=true]{cursor:grab}.avatar{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;background:#ece6f9;color:var(--purple);border-radius:50%;font-size:13px;font-weight:800}.player-card small{display:block;font-size:11px;color:var(--muted)}.player-card select{min-height:38px;font-size:12px;padding:5px;margin:0;width:100%}.unassigned{padding:20px;margin-top:22px}.unassigned h2{font-size:17px}.count{color:var(--purple);margin-left:5px}.unassigned-list{display:flex;gap:10px;flex-wrap:wrap}.unassigned-list .player-card{min-width:180px}.notice{background:#f0edf9;border:1px solid #e3dcf4;border-radius:13px;padding:15px 20px;margin-bottom:22px}.dialog-head{display:flex;justify-content:flex-end;margin:-12px -12px 0 0}dialog{border:0;border-radius:23px;padding:30px;width:min(600px,calc(100vw - 30px));max-height:90vh;color:var(--ink);box-shadow:0 30px 100px #19143540}dialog::backdrop{background:#25213b77;backdrop-filter:blur(5px)}dialog h2{font-size:25px;margin:0 0 16px}dialog p{font-size:15px}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}.swatches{display:flex;flex-wrap:wrap;gap:12px}.swatch{margin:0;position:relative;cursor:pointer}.swatch input{position:absolute;opacity:0;width:44px;height:44px;margin:0}.swatch span{display:block;width:44px;height:44px;background:var(--swatch);border-radius:12px;border:4px solid white;box-shadow:0 0 0 1px #ddd}.swatch input:checked+span{box-shadow:0 0 0 3px var(--ink)}.swatch input:checked+span:after{content:'✓';display:block;text-align:center;color:white;font-size:24px}.swatch input:disabled+span{opacity:.22}.swatch input:disabled+span:after{content:'×';display:block;text-align:center;font-size:25px}.swatch input:focus-visible+span{outline:3px solid #178eae;outline-offset:4px}.switch-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.switch-student{background:#f7f5fb;border:1px solid #eae5f1;display:flex;align-items:center;text-align:left;gap:10px;border-radius:12px;padding:14px}.switch-student small{display:block;font-size:12px;color:var(--muted)}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#302c47;color:white;border-radius:14px;padding:15px 25px;max-width:90vw;z-index:10000;text-align:center;transition:opacity .2s,transform .2s;box-shadow:0 8px 30px #0002}#toast.show{opacity:1;transform:translate(-50%,0)}.game-layout{padding-top:22px}.game-heading{margin-bottom:17px}.game-heading h1{font-size:25px}.timer{display:flex;align-items:center;gap:18px;padding:11px 20px;background:#fff;border:1px solid var(--line);border-radius:14px}.timer small{font-size:12px;color:var(--muted)}.timer strong{font-size:31px;font-variant-numeric:tabular-nums;letter-spacing:1px}.timer.urgent strong{color:#c45b42}.team-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:20px}.team-status{padding:11px 15px;border:1px solid var(--line);border-top:3px solid var(--team);background:#fff;border-radius:13px;font-size:14px}.team-status.mine{background:#f6f3ff;border-color:#c9bce7}.team-status>div{display:flex;align-items:center;gap:8px;justify-content:space-between}.my-badge{font-size:10px;color:var(--purple);background:#e7dff6;border-radius:5px;padding:1px 5px}.hp-row{margin-top:7px;font-size:12px}.hp-row span{white-space:nowrap}progress{height:7px;width:100%;accent-color:var(--team);border:0;border-radius:8px;overflow:hidden;background:#ece9f1}progress::-webkit-progress-bar{background:#ece9f1}progress::-webkit-progress-value{background:var(--team);border-radius:8px}.play-columns{display:grid;grid-template-columns:1.75fr 1fr;gap:22px;align-items:stretch}.question-panel{padding:23px 28px;min-width:0}.question-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:var(--muted)}.question-meta .eyebrow{font-size:12px;margin:0}.question-caption{text-align:center;font-size:19px;font-weight:600;margin:24px 0 0}.equation{display:flex;justify-content:center;align-items:center;gap:30px;font-size:56px;line-height:1;margin:25px 0 28px;font-weight:700}.fraction{display:inline-flex;flex-direction:column;align-items:stretch;text-align:center;vertical-align:middle;line-height:1.08;min-width:1em}.fraction>span:first-child{border-bottom:2px solid currentColor;padding:0 .15em .13em}.fraction>span:last-child{padding:.12em .15em 0}.multiply,.equals{font-weight:400;color:#aaa3bc;font-size:36px}.question-mark{display:grid;place-items:center;width:73px;height:87px;background:#f0ecfa;color:var(--purple);border-radius:16px;font-size:45px}.answers{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.answer{min-height:94px;border:1.5px solid #e3ddec;border-radius:15px;background:#fff;position:relative;font-size:27px;padding:15px 10px;transition:background .15s,transform .15s}.answer:hover:enabled{background:#f5f0ff;border-color:var(--purple);transform:translateY(-2px)}.answer-number{position:absolute;top:9px;left:10px;font-size:11px;color:#a6a0b6}.answer:disabled{opacity:1}.answer.correct{background:#e5f5eb;border-color:#6aaa82;color:#32744b}.answer.incorrect{background:#fff0e8;border-color:#e3a88d;color:#ab6650}.question-hint{text-align:center;font-size:12px;margin:19px 0 0}.feedback{display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:12px;padding:11px 14px;margin-top:15px;animation:pop .3s ease-out}.feedback.success{background:#eaf7ee;color:#36754c}.feedback.retry{background:#fff5e6;color:#8f6935}.feedback strong{display:block;font-size:17px}.feedback span{display:block;font-size:12px;margin-top:3px}.feedback .fraction{display:inline-flex;font-size:15px;margin:0 5px}.feedback .fraction span{font-size:inherit;margin:0}.feedback button{min-height:44px;font-size:14px;white-space:nowrap}.board-side{background:#efedf8;border-radius:20px;padding:17px;display:flex;flex-direction:column}.board-heading{display:flex;align-items:center;justify-content:space-between;padding:0 3px;font-size:15px}.board-heading span{font-size:11px;color:#8e829f}.board{height:310px;position:relative;isolation:isolate;flex:1;min-height:280px;overflow:hidden;border-radius:20px;background:radial-gradient(ellipse at center,#e1efcf 0%,#eaf1db 56%,#f5f1e6 57%,#f6f2e8 65%,transparent 66%)}.board-path{position:absolute;inset:17% 12%;border:12px dashed #fcfff4;border-radius:50%;box-shadow:0 0 0 2px #cad7b1, inset 0 0 0 2px #cad7b1;opacity:.9}.board-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;width:45%;z-index:-1}.board-center>span{display:block;font-size:38px;color:#e1ac3a;text-shadow:0 3px #f9df85}.board-center strong{font-size:13px;display:block;color:#718a54}.board-center small{display:block;font-size:10px;color:#8ba070}.fort{position:absolute;transform:translate(-50%,-50%);text-align:center;min-width:80px;max-width:130px;padding:6px 8px;border-radius:45%;line-height:1.2}.castle{font-size:43px;display:block;filter:drop-shadow(0 5px 1px #8f8f7222)}.fort-flag{position:absolute;top:0;right:10px;font-size:20px;color:var(--team);background:#fff;border-radius:8px;padding:1px 5px;border:1px solid #eee}.fort strong{font-size:11px;background:white;padding:4px 8px;display:block;white-space:nowrap;border-radius:5px;color:var(--team);box-shadow:0 2px 3px #0001;max-width:135px;overflow:hidden;text-overflow:ellipsis}.fort small{display:block;font-size:10px;margin-top:4px;color:#685872}.fort small span{color:#6e91b3;margin-left:3px}.fort.shielded{background:#b5e4ff66;box-shadow:0 0 0 3px #a0d4f777,inset 0 0 20px #f4fbff}.fort.resting .castle{opacity:.45}.board-tip{text-align:center;font-size:12px;line-height:1.7;color:#8a7d9c;margin-top:7px}.flying-star{position:absolute;font-size:43px;color:#ffc73f;filter:drop-shadow(0 0 8px #fff6af);opacity:0;z-index:5;pointer-events:none}.action-bar{margin-top:20px;display:flex;align-items:center;padding:17px 20px;gap:22px}.energy{display:flex;align-items:center;gap:12px;min-width:147px}.energy>span{font-size:39px;color:#e7b443}.energy small{display:block;font-size:11px;color:var(--muted)}.energy strong{font-size:32px;display:block;line-height:1.2;color:#6e51a4}.energy strong small{display:inline;font-size:13px;margin-left:5px}.action-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;flex:1}.action-button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:72px;padding:11px 12px;border-radius:13px;text-align:left;border:1px solid #e8ddeb;background:#f7f2fc}.action-button.defend{background:#ecf7fb;border-color:#d2e9f0}.action-button.repair{background:#eff7ec;border-color:#d9e9d3}.action-button.strong{background:#fff6df;border-color:#ede0bb}.action-icon{font-size:27px;color:#8d72b8}.action-button strong{display:block;font-size:14px;white-space:nowrap}.action-button small{display:block;font-size:10px;margin-top:3px;color:#847b8c;white-space:nowrap}.balance-note{text-align:right;color:#9a90a6;font-size:11px;margin-top:10px}.pause-banner{position:sticky;bottom:20px;margin-top:20px;background:#443869;color:white;text-align:center;border-radius:12px;padding:14px}.teacher-columns{display:grid;grid-template-columns:2fr 1fr;gap:22px}.board-panel{padding:15px;background:#f0edf7}.board.large{height:390px}.large .castle{font-size:57px}.large .fort strong{font-size:13px}.large .fort small{font-size:12px}.large .board-center strong{font-size:21px}.large .board-center small{font-size:12px}.large .board-center>span{font-size:52px}.live-feed{padding:23px}.live-feed h2{font-size:18px;display:flex;justify-content:space-between}.live-pill{font-size:10px;color:var(--purple);border:1px solid #d7cde9;padding:3px 8px;border-radius:6px}.live-feed>div{max-height:280px;overflow:auto}.live-feed>div p{border-bottom:1px solid var(--line);padding:12px 0;font-size:13px;margin:0;display:flex;gap:10px}.live-feed>div span{color:#dcb454}.live-feed .muted{font-size:12px}.inline-label{display:flex;align-items:center;gap:8px;font-size:12px;margin:0}.inline-label select{width:auto;min-height:46px;margin:0;font-size:13px}.table-wrap{margin-top:23px;overflow:auto;padding:10px 22px 16px}table{border-collapse:collapse;width:100%;text-align:center;white-space:nowrap;font-size:14px}caption{text-align:left;font-weight:800;font-size:18px;padding:15px 0}th,td{padding:15px 13px;border-bottom:1px solid #efedf4}thead th{color:#8c839c;background:#faf9fc;font-size:12px}th:first-child{text-align:left}tbody th{font-weight:700}.energy-cell{color:#987028}.move-list{max-height:55vh;overflow:auto}.move-list select{width:155px;margin-left:auto}.target-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.target-card{background:#f6f3fc;border:1px solid #e5dfee;border-radius:16px;padding:18px}.target-card strong,.target-card small{display:block}.target-card small{color:var(--muted);margin-top:7px}.target-castle{font-size:50px;display:block;margin-bottom:10px}.results{max-width:1200px}.results-title{text-align:center}.results-title .eyebrow{margin:0}.trophy{font-size:62px;margin:7px 0}.results-title h1{font-size:35px}.results-title p{font-size:16px}.awards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.awards article{display:flex;align-items:center;gap:25px;padding:25px;border-bottom:4px solid #ddcfef}.awards article:nth-child(2){border-bottom-color:#f2d685}.awards article>span{font-size:43px}.awards small{font-size:12px;color:var(--muted)}.awards h2{margin:5px 0;font-size:21px}.awards p{font-size:13px;margin:0}.centered{text-align:center}.results-actions{display:flex;justify-content:center;gap:15px;margin-top:25px}.waiting{padding:50px;text-align:center}.storage-notice{padding:10px;background:#fff0c3;color:#715b22;text-align:center;font-size:13px}@keyframes pop{from{transform:scale(.98);opacity:.4}to{transform:scale(1);opacity:1}}
@media(min-width:1400px){.home{gap:5%}.hero-art{padding-top:60px}.hero-art img{margin:0}.question-panel{padding:28px 35px}.equation{font-size:65px}.answer{min-height:104px}.board-side .board{min-height:330px}}
@media(max-width:1100px){.topbar{height:85px;padding:0 3%}.layout{padding:25px 3%}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.player-card select{width:auto;flex:1;min-width:90px}.home{padding:35px 4%;gap:2%}.home-copy h1{font-size:38px}.intro{font-size:15px}.role-card{padding:16px 18px;min-height:88px}.art-caption{padding:12px 14px}.art-caption strong{font-size:13px}.art-caption small{font-size:11px}.play-columns{gap:16px;grid-template-columns:1.6fr 1fr}.question-panel{padding:18px}.equation{font-size:48px;gap:23px;margin:21px 0}.question-caption{font-size:17px;margin-top:22px}.answer{min-height:90px;font-size:26px}.question-meta{font-size:10px}.question-hint{font-size:11px}.action-bar{padding:14px;gap:13px}.energy{min-width:115px;gap:7px}.action-button{gap:6px;padding:10px 8px}.action-button strong{font-size:12px}.action-button small{font-size:9px}.action-icon{font-size:22px}.action-buttons{gap:8px}.board{min-height:275px}.game-heading h1{font-size:23px}.team-status{padding:9px 12px}.feedback{padding:10px}.feedback strong{font-size:14px}.feedback span{font-size:11px}.feedback button{padding:9px 12px}.balance-note{font-size:10px}}
@media(max-width:760px){.topbar{height:auto;min-height:80px;padding:14px 20px;gap:10px}.brand{font-size:18px;gap:8px}.brand small{display:none}.brand-icon{width:38px;height:38px;font-size:27px;border-radius:12px}.header-right{gap:6px}.room-name{display:none}.local-tag{font-size:10px;padding:4px 7px}.compact{font-size:12px;padding:8px}.home{grid-template-columns:1fr;padding:32px 22px}.home-copy h1{font-size:38px}.home-copy{max-width:550px;margin:auto;width:100%}.hero-art{margin:20px auto 0;max-width:520px;width:100%;padding-top:25px}.role-options{max-width:none}.home-links{gap:20px}.home .local-note{margin-bottom:0}.home .eyebrow{font-size:12px}.setup{grid-template-columns:1fr;gap:15px}.setup-story h1{font-size:28px}.setup-story img{display:none}.form-panel{padding:24px}.page-heading{align-items:flex-start;gap:10px}.page-heading h1{font-size:22px}.page-heading p{font-size:12px}.entry-code{min-width:135px;padding:8px 12px}.entry-code strong{font-size:23px;letter-spacing:3px}.entry-code small{font-size:10px}.toolbar-group{gap:8px}.toolbar button{font-size:12px;padding:10px 13px}.team-grid{gap:12px}.team-lobby{padding:14px 12px}.team-title{gap:4px}.team-title h2{font-size:16px}.team-title .mini-button{padding:6px;font-size:11px}.team-emblem{width:25px;font-size:22px}.player-card{padding:8px}.player-card select{width:100%}.play-columns,.teacher-columns{grid-template-columns:1fr}.board-side{display:none}.action-bar{align-items:stretch;flex-direction:column}.energy{justify-content:center}.energy strong{display:inline;margin-left:10px}.energy small{display:inline}.action-buttons{grid-template-columns:repeat(2,1fr)}.action-button{min-height:65px}.action-button strong{font-size:14px}.action-button small{font-size:11px}.action-icon{font-size:28px}.timer{padding:8px 12px;gap:6px;flex-direction:column}.timer small{font-size:10px}.timer strong{font-size:23px;line-height:1}.game-heading h1{font-size:20px}.team-strip{grid-template-columns:repeat(2,1fr);gap:9px}.game-heading .eyebrow{font-size:11px}.question-meta{font-size:10px}.equation{font-size:45px;gap:24px}.answers{gap:9px}.answer{font-size:26px}.question-mark{height:73px;width:58px}.awards{grid-template-columns:1fr;gap:13px}.results-title h1{font-size:29px}.awards article{padding:20px}.table-wrap{padding:5px 12px 12px}th,td{padding:13px 10px}.board.large{height:350px}.large .castle{font-size:45px}.large .fort strong{font-size:11px}footer span{display:none}.inline-label{flex-wrap:wrap}.switch-list{grid-template-columns:1fr 1fr}.switch-student{padding:11px}.balance-note{text-align:center;line-height:1.8}}
@media(min-width:761px) and (max-height:850px){.topbar{height:70px}.game-layout{padding-top:14px;padding-bottom:14px}.game-heading{margin-bottom:12px}.game-heading h1{font-size:22px}.timer{padding:7px 15px}.team-strip{margin-bottom:14px}.question-panel{padding:16px 20px}.question-caption{margin-top:13px}.equation{margin:16px 0;font-size:48px}.question-mark{height:75px}.answer{min-height:82px}.question-hint{margin-top:13px}.board-side{padding:13px}.board-side .board{min-height:248px}.action-bar{margin-top:14px;padding:12px}.action-button{min-height:65px}.balance-note{margin-top:6px}.feedback{padding:8px 10px;margin-top:10px}.game-layout .page-heading .eyebrow{margin-bottom:3px}}
.action-button strong{font-size:14px}.action-button small{font-size:11px}.hp-row{font-size:13px}.question-hint{font-size:13px}.balance-note{font-size:12px}.mini-button{min-width:44px}.player-card select{min-height:44px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
