:root{font-family:Inter,Noto Sans TC,PingFang TC,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1f2a37;background:#f6f8fb;--ink: #1f2a37;--muted: #64748b;--line: #d8e0ea;--panel: #ffffff;--blue: #2563eb;--green: #0f9f6e;--amber: #d97706;--red: #dc2626;--cyan: #06b6d4;--coral: #f97362;--yellow: #facc15}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}th{color:var(--muted);font-size:13px;font-weight:700}label{color:var(--muted);display:grid;gap:6px;font-size:13px;font-weight:700}input,select,textarea{border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:42px;padding:10px 12px;width:100%}textarea{min-height:96px;resize:vertical}.screen-center,.data-state{display:grid;min-height:50vh;place-items:center}.data-state.error,.form-error{color:var(--red)}.form-success{color:var(--green);font-size:13px;font-weight:900;margin:0}.primary-button,.ghost-button,.text-button{align-items:center;border:0;border-radius:8px;cursor:pointer;display:inline-flex;font-weight:800;justify-content:center;min-height:42px;padding:10px 14px}.primary-button{background:var(--blue);color:#fff;box-shadow:0 8px 18px #2563eb33}.primary-button:disabled{cursor:not-allowed;opacity:.55}.ghost-button{background:#edf2f7;color:var(--ink)}.text-button{background:transparent;color:var(--red);min-height:auto;padding:0}.danger-text{color:#b42318}.muted-note,.field-help{color:var(--muted);font-size:12px;font-weight:700}.eyebrow{color:var(--blue);font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.login-screen{display:grid;min-height:100vh}.login-visual{align-items:center;background:linear-gradient(135deg,#06b6d4d1,#0f9f6edb),radial-gradient(circle at 15% 25%,rgba(250,204,21,.55),transparent 30%);color:#fff;display:grid;gap:16px;grid-template-columns:112px 1fr;padding:28px}.login-visual img{filter:drop-shadow(0 14px 24px rgba(0,0,0,.22));max-width:112px}.login-visual h1,.student-hero h1{font-size:clamp(34px,8vw,72px);line-height:1;margin:6px 0}.login-visual p,.login-visual span,.student-hero p{font-weight:800;margin:0}.login-panel{background:#fff;display:grid;gap:18px;padding:28px}.login-panel h2{font-size:32px;margin:4px 0 0}.sso-bridge-screen{align-items:center;background:transparent;color:#17212b;display:grid;min-height:220px;padding:28px}.sso-bridge-screen div{background:#fffaf4;border:1px solid #fed7aa;border-radius:8px;display:grid;gap:6px;padding:14px 16px}.sso-bridge-screen strong{color:#7c2d12;font-size:16px}.sso-bridge-screen span{color:#8a6a52;font-size:13px;font-weight:800}.demo-account-grid{display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.login-picker-grid{display:grid;gap:12px}.login-sso-status{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#9a3412;font-weight:900;line-height:1.6;margin:0;padding:12px 14px}.demo-account-grid button{background:#eef6ff;border:1px solid #cfe4ff;border-radius:8px;color:var(--blue);cursor:pointer;font-weight:800;min-height:40px}.app-shell{display:grid;min-height:100vh}.app-shell.embedded-shell{background:transparent;display:block;min-height:auto}.embedded-shell .main-panel{padding:0}.embedded-staff-nav{background:#fffaf4;border:1px solid #fed7aa;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:8px;position:sticky;top:0;z-index:10}.embedded-staff-nav a{align-items:center;background:#fff;border:1px solid #fde7d1;border-radius:8px;color:#7c2d12;display:inline-flex;font-size:13px;font-weight:900;min-height:36px;padding:8px 11px}.embedded-staff-nav a.active{background:#f47a25;border-color:#f47a25;color:#fff}.embedded-shell .page-stack{max-width:none}.embedded-shell .page-header{border-bottom:1px solid #e6ded5;padding-bottom:12px}.embedded-shell .eyebrow{display:none}.embedded-shell .page-header h1{color:#17212b;font-size:26px;line-height:1.2}.embedded-shell .primary-button{background:#f47a25;border:1px solid #f47a25;box-shadow:0 8px 18px #f47a252e}.embedded-shell .primary-button:hover{background:#e66912;border-color:#e66912}.embedded-shell .stat-card,.embedded-shell .panel{border-color:#e6ded5;box-shadow:none}.embedded-shell .stat-card{min-height:92px;padding:14px}.embedded-shell .stat-card span,.embedded-shell th{color:#66717c}.embedded-shell .stat-card strong{color:#17212b;font-size:30px}.embedded-shell .panel h2{color:#17212b;font-size:22px}.embedded-shell .panel-header a,.embedded-shell table a{color:#c2410c;font-weight:900}.embedded-shell .chip{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.sidebar{background:#fff;border-bottom:1px solid var(--line);display:grid;gap:14px;padding:14px}.brand-lockup{align-items:center;display:flex;gap:12px}.brand-lockup img{height:46px;object-fit:contain;width:46px}.brand-lockup div{display:grid}.brand-lockup span{color:var(--muted);font-size:12px}.sidebar nav{display:flex;gap:8px;overflow-x:auto}.sidebar nav a{border-radius:8px;color:var(--muted);flex:0 0 auto;font-weight:800;padding:10px 12px}.sidebar nav a.active{background:#eaf2ff;color:var(--blue)}.main-panel{padding:18px}.page-stack{display:grid;gap:18px;margin:0 auto;max-width:1160px;width:100%}.page-header,.panel-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.page-header h1,.panel h2{margin:0}.page-header h1{font-size:clamp(30px,6vw,48px)}.dashboard-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.panel,.stat-card,.task-card,.result-hero,.play-stage{background:var(--panel);border:1px solid var(--line);border-radius:8px}.panel{display:grid;gap:16px;padding:16px}.stat-grid,.student-stat-row{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{display:grid;gap:10px;min-height:112px;padding:16px}.stat-card span,.student-stat-row span{color:var(--muted);font-size:13px;font-weight:800}.stat-card strong,.student-stat-row strong{font-size:34px}.stat-card.green{border-color:#0f9f6e47}.stat-card.amber{border-color:#d977064d}.stat-card.red{border-color:#dc262642}.content-grid{display:grid;gap:16px}.table-wrap{overflow-x:auto}.chip-list,.filter-row,.settings-row{display:flex;flex-wrap:wrap;gap:10px}.chip{background:#eff6ff;border:1px solid #cfe4ff;border-radius:8px;color:var(--blue);font-weight:800;padding:8px 10px}.filter-row label,.settings-row label{flex:1 1 160px}.form-grid,.two-col{display:grid;gap:14px}.question-tool-stack{display:grid;gap:16px}.form-action-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.question-import-textarea{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;min-height:260px}.ai-source-textarea{min-height:190px}.ai-type-group{display:grid;gap:8px}.ai-type-group>span{color:var(--muted);font-size:13px;font-weight:700}.empty-callout{background:#fff7ed;border:1px dashed #fb923c;border-radius:8px;display:grid;gap:8px;padding:14px}.empty-callout strong{color:#7c2d12;font-size:17px}.empty-callout p{color:#8a6a52;font-weight:800;line-height:1.6;margin:0}.empty-callout .primary-button{justify-self:start}.assignment-target-panel{border:1px dashed #fed7aa;border-radius:8px;display:grid;gap:14px;padding:14px}.segmented-row{display:flex;flex-wrap:wrap;gap:8px}.segmented-row button{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-weight:900;min-height:40px;padding:8px 12px}.segmented-row button.selected{background:#fff7ed;border-color:#fb923c;color:#9a3412}.assignment-preview,.assignment-summary-body{background:#fffaf5;border:1px solid #fed7aa;border-radius:8px;display:grid;gap:10px;padding:12px}.assignment-preview h3{margin:0}.preview-student-list{display:flex;flex-wrap:wrap;gap:8px}.preview-student-list span{background:#fff;border:1px solid #fde7d1;border-radius:999px;color:#7c2d12;font-size:12px;font-weight:800;padding:7px 9px}.assignment-summary-body strong{color:var(--ink);font-size:20px}.assignment-summary-body span{color:var(--muted);font-weight:800}.toggle-row{align-items:center;display:flex;min-height:42px}.toggle-row input{min-height:18px;width:18px}.question-picker{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.picker-item{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:grid;gap:6px;padding:12px;text-align:left}.picker-item.selected{background:#ecfdf5;border-color:#86efac}.game-mode-picker{display:grid;gap:12px}.ai-activity-helper{background:linear-gradient(135deg,#eff6ff,#fff7ed);border:1px solid #bfdbfe;border-radius:8px;display:grid;gap:12px;padding:14px}.ai-activity-helper .panel-header span{color:var(--muted);font-size:13px;font-weight:800}.ai-activity-helper .panel-header strong{background:#fff;border:1px solid #dbeafe;border-radius:999px;color:var(--blue);padding:7px 10px}.ai-activity-body{display:grid;gap:10px}.ai-activity-body article{background:#ffffffd1;border:1px solid #fed7aa;border-radius:8px;display:grid;gap:5px;padding:12px}.ai-activity-body article strong{color:#9a3412}.ai-activity-body article span{color:var(--muted);font-weight:800}.ai-transform-preview{background:#ffffffc7;border:1px dashed #bfdbfe;border-radius:8px;display:grid;gap:12px;padding:12px}.ai-transform-list{display:grid;gap:10px}.ai-transform-list article{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:4px;padding:10px}.ai-transform-list article strong{color:var(--blue)}.ai-transform-list article span{color:var(--ink);font-weight:800;line-height:1.45}.game-mode-picker article{border:1px solid #dbeafe;border-radius:8px;display:grid;gap:12px;padding:12px}.game-mode-picker h2,.game-mode-picker p{margin:0}.game-mode-picker p{color:var(--muted);font-size:13px;font-weight:800}.game-mode-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.game-mode-grid button{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:grid;gap:5px;min-height:86px;padding:10px;text-align:left}.game-mode-grid button.selected{background:#fff7ed;border-color:#fb923c;box-shadow:inset 0 0 0 2px #fb923c}.game-mode-grid strong{font-size:15px}.game-mode-grid span{color:var(--muted);font-size:12px;font-weight:800}.bar-list,.class-summary-list,.hotspot-list,.review-list,.score-list{display:grid;gap:10px}.bar-row,.class-summary-list article{background:#f8fafc;border-radius:8px;display:grid;gap:8px;overflow:hidden;padding:12px;position:relative}.bar-row i,.class-summary-list i{background:linear-gradient(90deg,var(--green),var(--cyan));bottom:0;height:4px;left:0;position:absolute}.student-shell{background:#f2fbff}.student-shell .sidebar{background:#fff}.student-hero{align-items:center;background:linear-gradient(135deg,#e6fbff,#f8ffdf 52%,#fff0ef);border:1px solid #c8eef6;border-radius:8px;display:grid;gap:16px;grid-template-columns:1fr 120px;overflow:hidden;padding:20px}.student-hero img{max-width:120px;width:100%}.student-stat-row{grid-template-columns:repeat(3,1fr)}.student-stat-row div{background:#fff;border:1px solid #c8eef6;border-radius:8px;display:grid;gap:8px;padding:14px}.task-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.task-card{color:#fff;display:grid;gap:10px;min-height:168px;overflow:hidden;padding:16px;position:relative}.task-card:after{background:#ffffff29;border-radius:999px;content:"";height:72px;position:absolute;right:-18px;top:-18px;width:72px}.task-card.quiz,.task-card.quiz-mode{background:linear-gradient(135deg,var(--blue),var(--cyan))}.task-card.match,.task-card.sort-mode{background:linear-gradient(135deg,var(--green),#84cc16)}.task-card.battle,.task-card.arcade-mode{background:linear-gradient(135deg,var(--coral),var(--amber))}.task-card.maze,.task-card.card-mode{background:linear-gradient(135deg,#0f766e,var(--yellow))}.task-card.puzzle-mode{background:linear-gradient(135deg,#0ea5e9,#22c55e)}.task-card.done{background:linear-gradient(135deg,#475569,#0f766e)}.task-card span{font-weight:900}.task-card h2,.task-card p{margin:0}.score-list div,.leaderboard-list li,.hotspot-list div{align-items:center;background:#f8fafc;border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:12px}.leaderboard-list{display:grid;gap:10px;list-style:none;margin:0;padding:0}.leaderboard-list span{align-items:center;background:var(--yellow);border-radius:999px;display:inline-flex;font-weight:900;height:28px;justify-content:center;width:28px}.play-stage{display:grid;gap:18px;margin:0 auto;max-width:760px;padding:18px;width:100%}.play-stage.quiz-mode{background:linear-gradient(180deg,#eff6ff,#fff)}.play-stage.sort-mode{background:linear-gradient(180deg,#ecfdf5,#fff)}.play-stage.card-mode{background:linear-gradient(180deg,#fff7ed,#fff)}.play-stage.arcade-mode{background:linear-gradient(180deg,#fff1f2,#fffbeb)}.play-stage.puzzle-mode{background:linear-gradient(180deg,#ecfeff,#f0fdf4)}.play-stage header{display:grid;gap:8px}.play-stage header h1{margin:0}.progress-track{background:#e5e7eb;border-radius:999px;height:10px;overflow:hidden}.progress-track i{animation:progressGlow 1.8s ease-in-out infinite;background:linear-gradient(90deg,var(--green),var(--yellow));display:block;height:100%}.question-stage{display:grid;gap:18px}.question-stage h2{font-size:clamp(28px,7vw,44px);line-height:1.12;margin:0}.question-stage img{max-height:180px;object-fit:contain;width:100%}.answer-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.answer-option{background:#fff;border:2px solid var(--line);border-radius:8px;cursor:pointer;font-weight:900;min-height:64px;padding:12px}.answer-option.selected{background:#fff7cc;border-color:var(--amber)}.big-input{font-size:24px;min-height:64px}.match-list{display:grid;gap:12px}.match-list label{align-items:center;background:#f8fafc;border-radius:8px;display:grid;gap:10px;grid-template-columns:1fr;padding:12px}.match-list span{color:var(--ink);font-size:20px}.play-button{min-height:56px}.open-box-stage{background:linear-gradient(90deg,rgba(251,191,36,.12) 1px,transparent 1px),linear-gradient(180deg,#fff7ed,#fff);background-size:22px 22px,auto;max-width:980px;overflow:hidden;position:relative}.open-box-stage header small,.whack-mole-stage header small{color:var(--muted);font-weight:900}.flash-card-stage header small,.matching-pairs-stage header small,.wordsearch-stage header small{color:var(--muted);font-weight:900}.open-box-layout{display:grid;gap:14px}.open-box-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.open-box-card{background:linear-gradient(180deg,#fbbf24,#f97316);border:0;border-radius:8px;box-shadow:inset 0 -8px #7c2d1233,0 12px 20px #d977062e;color:#fff;cursor:pointer;display:grid;gap:7px;min-height:104px;overflow:hidden;padding:12px;position:relative;text-align:center;transform:translateY(0);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.open-box-card:before{background:#ffffff5c;content:"";height:12px;left:0;position:absolute;right:0;top:32px}.open-box-card:hover:not(:disabled){box-shadow:inset 0 -8px #7c2d1233,0 16px 24px #d977063d;filter:saturate(1.08);transform:translateY(-3px)}.open-box-card.active{animation:wiggleBox .7s ease-in-out infinite;background:linear-gradient(180deg,#fb7185,#f97316)}.open-box-card.done{background:linear-gradient(180deg,#34d399,#0f766e);cursor:default}.open-box-card.done:after{animation:starPop .5s ease both;color:#fff7cc;content:"★";font-size:30px;position:absolute;right:10px;top:5px}.open-box-card .box-lid{background:#ffffff47;border:2px solid rgba(255,255,255,.36);border-radius:8px 8px 3px 3px;height:28px;justify-self:center;margin-bottom:2px;width:min(82px,78%)}.open-box-card.active .box-lid{animation:boxLidPeek .8s ease-in-out infinite}.open-box-card .box-glow{animation:boxShine 1.8s ease-in-out infinite;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);height:140%;left:-80%;pointer-events:none;position:absolute;top:-20%;transform:rotate(18deg);width:42%}.open-box-card span,.open-box-card strong{position:relative;z-index:1}.open-box-question{animation:questPanelPop .34s ease both;background:#ffffffeb;border:1px solid #fed7aa;border-radius:8px;display:grid;gap:12px;padding:14px}.stage-badge{background:#fff7cc;border:1px solid #fbbf24;border-radius:999px;color:#9a3412;font-size:12px;font-weight:950;justify-self:start;padding:6px 10px}.open-box-question p{color:#9a3412;font-size:13px;font-weight:950;margin:0}.open-box-question h2{font-size:clamp(24px,5vw,36px);line-height:1.15;margin:0}.open-box-question img{justify-self:center;max-height:150px;object-fit:contain;width:min(220px,100%)}.whack-mole-stage{background:linear-gradient(135deg,rgba(254,215,170,.4) 25%,transparent 25%),linear-gradient(225deg,rgba(254,215,170,.35) 25%,transparent 25%),linear-gradient(180deg,#fff1f2,#fffbeb);background-size:30px 30px,30px 30px,auto;max-width:920px;overflow:hidden}.mole-question{display:grid;gap:16px}.mole-question h2{font-size:clamp(28px,6vw,44px);line-height:1.12;margin:0}.mole-question img{justify-self:center;max-height:160px;object-fit:contain;width:100%}.mole-field{background:linear-gradient(180deg,#fef3c7,#fed7aa);border:2px solid #fdba74;border-radius:8px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));padding:12px}.mole-option{align-items:end;background:radial-gradient(ellipse at center bottom,#78350f 0%,#78350f 38%,transparent 40%),linear-gradient(180deg,#fed7aa,#ffedd5);border:2px solid #fdba74;border-radius:8px;color:#7c2d12;cursor:pointer;display:grid;font-weight:950;min-height:112px;padding:12px;position:relative;text-align:center;transition:transform .16s ease,box-shadow .16s ease}.mole-option:hover{box-shadow:0 12px 18px #7c2d1224;transform:translateY(-2px)}.mole-option span{align-items:center;animation:molePop 1.1s ease-in-out infinite;background:#fff;border:2px solid #fb923c;border-radius:8px;display:inline-flex;justify-content:center;min-height:54px;padding:8px}.mole-option:after{border:3px solid transparent;border-radius:999px;content:"";inset:18px 20px auto;opacity:0;pointer-events:none;position:absolute;transform:scale(.4)}.mole-option.selected span{animation:moleBonk .36s ease both;background:#dcfce7;border-color:#22c55e;color:#047857}.mole-option.selected:after{animation:hitRing .42s ease both;border-color:#22c55e94}.mole-fallback,.game-control-row{display:grid;gap:12px}.flash-card-stage{max-width:920px}.flash-card-shell{perspective:1200px}.flash-card-face{background:linear-gradient(135deg,#fffffff0,#f0fdfae6),radial-gradient(circle at 20% 20%,rgba(251,191,36,.24),transparent 32%);border:2px solid #bae6fd;border-radius:8px;box-shadow:0 14px 28px #0e749021;display:none;gap:16px;min-height:330px;padding:clamp(18px,4vw,32px);position:relative;transform-origin:center}.flash-card-shell.front .flash-card-face.front,.flash-card-shell.back .flash-card-face.back{animation:cardFlipIn .42s ease both;display:grid}.flash-card-face>span{background:#e0f2fe;border-radius:999px;color:#0369a1;font-size:12px;font-weight:950;justify-self:start;padding:6px 10px}.flash-card-face h2{font-size:clamp(28px,6vw,48px);line-height:1.1;margin:0}.flash-card-face img{justify-self:center;max-height:170px;object-fit:contain;width:min(240px,100%)}.matching-pairs-stage{max-width:960px}.matching-pairs-question{display:grid;gap:16px}.matching-pairs-question h2{font-size:clamp(24px,5vw,38px);line-height:1.15;margin:0}.pair-card-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.pair-card{background:linear-gradient(145deg,#2563eb,#0ea5e9);border:0;border-radius:8px;box-shadow:inset 0 -7px #0f172a2e,0 10px 16px #0ea5e929;color:#fff;cursor:pointer;display:grid;font-size:clamp(20px,4vw,34px);font-weight:950;min-height:118px;padding:12px;place-items:center;text-align:center;transition:transform .18s ease,background .18s ease}.pair-card.flipped{animation:cardFlipIn .28s ease both;background:linear-gradient(145deg,#fff7cc,#fed7aa);color:#7c2d12}.pair-card.matched{background:linear-gradient(145deg,#bbf7d0,#2dd4bf);color:#064e3b;cursor:default;transform:translateY(-3px)}.pair-card span{overflow-wrap:anywhere}.wordsearch-stage{max-width:1080px}.wordsearch-layout{display:grid;gap:16px}.wordsearch-question{align-content:start;background:#ffffffeb;border:1px solid #bfdbfe;border-radius:8px;display:grid;gap:14px;padding:16px}.wordsearch-question h2{font-size:clamp(24px,5vw,38px);line-height:1.15;margin:0}.wordsearch-question img{justify-self:center;max-height:150px;object-fit:contain;width:min(220px,100%)}.wordsearch-targets{display:flex;flex-wrap:wrap;gap:8px}.wordsearch-targets span,.wordsearch-picked{background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;color:#1d4ed8;font-size:14px;font-weight:950;padding:8px 11px}.wordsearch-targets span.found{background:#dcfce7;border-color:#86efac;color:#047857}.wordsearch-grid{align-self:start;background:#dbeafe;border:3px solid #60a5fa;border-radius:8px;display:grid;gap:5px;padding:8px}.wordsearch-cell{aspect-ratio:1;background:#fff;border:1px solid #bfdbfe;border-radius:6px;color:#1e3a8a;cursor:pointer;font-size:clamp(15px,3vw,24px);font-weight:950;min-width:0;padding:0;transition:background .16s ease,color .16s ease,transform .16s ease}.wordsearch-cell:hover{transform:translateY(-1px)}.wordsearch-cell.found{animation:sparkleCell .54s ease both;background:#fde68a;border-color:#f59e0b;color:#7c2d12}.play-stage.maze{background:linear-gradient(90deg,rgba(15,118,110,.08) 1px,transparent 1px),linear-gradient(180deg,#ecfeff,#fefce8);background-size:24px 24px,auto;border:1px solid #bdebf2;border-radius:8px;max-width:1120px;overflow:hidden;position:relative}.maze-header small{color:var(--muted);font-weight:800}.maze-layout{display:grid;gap:16px}.maze-board{aspect-ratio:1;background:linear-gradient(135deg,#0f172a,#134e4a);border:4px solid #0f766e;border-radius:8px;display:grid;gap:4px;grid-template-columns:repeat(9,minmax(0,1fr));margin:0 auto;max-width:560px;padding:6px;width:100%}.maze-cell{align-items:center;aspect-ratio:1;border-radius:6px;display:grid;font-size:clamp(8px,2.5vw,13px);font-weight:950;justify-items:center;min-width:0;overflow:hidden;position:relative;text-align:center}.maze-cell.wall{background:#172033;box-shadow:inset 0 0 0 1px #ffffff0a}.maze-cell.floor{background:#fff7cc;border:1px solid #fde68a}.maze-cell.floor:after{background:#f59e0b47;content:"";height:7px;position:absolute;transform:rotate(45deg);width:7px}.maze-cell.gate{animation:gatePulse 1.5s ease-in-out infinite;background:#ffedd5;border-color:#fdba74;color:#9a3412}.maze-cell.gate:after,.maze-cell.exit:after,.maze-cell.start:after{display:none}.maze-cell.gate.open{animation:none;background:#dcfce7;border-color:#86efac;color:#047857}.maze-cell.gate.active-gate{box-shadow:inset 0 0 0 3px #fb7185,0 0 0 3px #fb718538}.maze-cell.start{background:#fef3c7;color:#92400e}.maze-cell.exit{animation:exitGlow 1.8s ease-in-out infinite;background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}.maze-cell.current{animation:playerTilePulse .7s ease-in-out infinite alternate;outline:3px solid var(--coral);outline-offset:-3px;z-index:1}.maze-cell.current:after{display:none}.maze-player{animation:mazeRun .56s ease-in-out infinite alternate;filter:drop-shadow(0 8px 10px rgba(15,23,42,.24));max-height:86%;object-fit:contain;width:86%}.maze-side{align-content:start;display:grid;gap:12px}.maze-status,.maze-question-panel{animation:questPanelPop .32s ease both;background:#ffffffeb;border:1px solid #bdebf2;border-radius:8px;display:grid;gap:12px;padding:14px}.maze-status strong{color:#0f766e}.maze-status span,.maze-question-panel span{color:var(--muted);font-weight:800}.maze-question-panel p{color:#0f766e;font-size:12px;font-weight:950;letter-spacing:0;margin:0}.maze-question-panel h2{font-size:clamp(22px,5vw,32px);line-height:1.15;margin:0}.maze-question-panel img{max-height:130px;object-fit:contain;width:100%}.maze-question-panel .answer-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.maze-question-panel .answer-option{min-height:54px}.maze-controls{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.maze-controls button{background:#0f766e;border:0;border-radius:8px;color:#fff;cursor:pointer;font-weight:950;font-size:22px;min-height:54px;transition:transform .16s ease,background .16s ease}.maze-controls button:hover:not(:disabled){background:#0d9488;transform:translateY(-2px)}.maze-controls button:disabled{background:#94a3b8;cursor:not-allowed}.result-hero{align-items:center;background:linear-gradient(135deg,#e6fbff,#fff7cc);display:grid;gap:12px;justify-items:center;padding:28px 16px;text-align:center}.result-hero strong{color:var(--blue);font-size:clamp(64px,18vw,120px);line-height:1}.result-hero p{color:var(--muted);font-weight:800;margin:0}.review-list article{border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;padding:12px}.review-list article.correct{border-color:#86efac}.review-list article.wrong{border-color:#fecaca}@media(min-width:760px){.login-screen{grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr)}.login-visual{align-content:center;grid-template-columns:180px 1fr;padding:56px}.login-visual img{max-width:180px}.login-panel{align-content:center;padding:56px}.login-picker-grid{grid-template-columns:.8fr 1.2fr}.app-shell{grid-template-columns:250px minmax(0,1fr)}.sidebar{align-content:start;border-bottom:0;border-right:1px solid var(--line);min-height:100vh;position:sticky;top:0}.sidebar nav{display:grid;overflow-x:visible}.main-panel{padding:28px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.content-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.match-list label{grid-template-columns:1fr 1.1fr}.maze-layout{grid-template-columns:minmax(420px,560px) minmax(300px,1fr)}.open-box-layout{grid-template-columns:minmax(320px,1fr) minmax(300px,.85fr)}.game-control-row{grid-template-columns:minmax(170px,.45fr) minmax(220px,.55fr)}.wordsearch-layout{grid-template-columns:minmax(280px,.72fr) minmax(360px,1fr)}}@keyframes wiggleBox{0%,to{transform:rotate(0) translateY(0)}35%{transform:rotate(-2deg) translateY(-2px)}70%{transform:rotate(2deg) translateY(-1px)}}@keyframes boxLidPeek{0%,to{transform:rotate(0) translateY(0)}45%{transform:rotate(-5deg) translateY(-7px)}}@keyframes boxShine{0%{left:-80%}55%,to{left:125%}}@keyframes starPop{0%{opacity:0;transform:scale(.2) rotate(-18deg)}70%{opacity:1;transform:scale(1.16) rotate(8deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes questPanelPop{0%{opacity:.45;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes molePop{0%,to{transform:translateY(4px)}50%{transform:translateY(-8px)}}@keyframes moleBonk{0%{transform:translateY(-8px) scale(1)}45%{transform:translateY(10px) scale(.96)}to{transform:translateY(0) scale(1.02)}}@keyframes hitRing{0%{opacity:.85;transform:scale(.42)}to{opacity:0;transform:scale(1.35)}}@keyframes cardFlipIn{0%{opacity:.3;transform:rotateY(-16deg) translateY(8px)}to{opacity:1;transform:rotateY(0) translateY(0)}}@keyframes gatePulse{0%,to{box-shadow:inset 0 0 #f9731633;transform:scale(1)}50%{box-shadow:inset 0 0 0 3px #f973164d;transform:scale(1.03)}}@keyframes exitGlow{0%,to{box-shadow:0 0 #3b82f600}50%{box-shadow:0 0 18px #3b82f661}}@keyframes playerTilePulse{0%{outline-color:var(--coral)}to{outline-color:#fbbf24}}@keyframes mazeRun{0%{transform:translateY(0) rotate(-1deg)}to{transform:translateY(-3px) rotate(2deg)}}@keyframes progressGlow{0%,to{filter:brightness(1)}50%{filter:brightness(1.16)}}@keyframes sparkleCell{0%{transform:scale(1)}50%{transform:scale(1.08) rotate(-2deg)}to{transform:scale(1) rotate(0)}}
