*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#073f4d;color:#f7fbf7}button{font:inherit;touch-action:manipulation}.screen{position:fixed;top:0;right:0;bottom:0;left:0;height:100vh;height:100dvh;min-width:100vw;overflow:hidden;padding:clamp(14px,2.4vh,28px) clamp(30px,4vw,56px);background:linear-gradient(90deg,rgba(255,213,107,.08) 1px,transparent 1px),linear-gradient(rgba(255,213,107,.08) 1px,transparent 1px),#073f4d;background-size:84px 84px}.screen:focus{outline:0}.quiz{height:100%;width:min(1180px,100%);margin:0 auto;text-align:center}.intro-page,.answer-page{display:grid;align-content:center}.intro-page{row-gap:10px}.answer-page{align-content:stretch;grid-template-rows:auto auto auto auto auto;row-gap:clamp(6px,1.2vh,10px);overflow:hidden}.numeric-answer-page{display:block}.eyebrow{margin:0 0 12px;font-size:24px;color:#bde7ee;font-weight:700}h1{margin:0;color:#ffd367;font-size:54px;line-height:1.1}.status{min-height:36px;margin:8px 0 10px;color:#d9f5f6;font-size:26px;font-weight:800}.animal-panel{width:min(1040px,78vw);aspect-ratio:16 / 8;margin:0 auto 20px;overflow:hidden;border:12px solid #f8fff4;background:#d6eef2}.animal-panel img{width:100%;height:100%;object-fit:cover;display:block}.rule-panel{width:min(860px,78vw);margin:12px auto 0;padding:30px 42px;background:#f8fff4f5;color:#073f4d;border:8px solid #ffd367}.rule-panel p,.rule-panel strong{display:block;margin:0}.rule-panel p{font-size:40px;line-height:1.25;font-weight:900}.rule-panel strong{margin:8px 0;color:#e87f00;font-size:58px;line-height:1.15;font-weight:900}.answer-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,250px);align-items:center;gap:16px;width:min(900px,100%);margin:0 auto}.generic-answer-page .answer-header{grid-template-columns:minmax(0,.85fr) minmax(320px,520px);width:min(1040px,100%)}.generic-answer-page.no-question-image .answer-header{display:block}.answer-header h1{font-size:clamp(34px,5vh,44px)}.generic-answer-page .answer-header h1{font-size:clamp(28px,5vh,42px);line-height:1.25}.mini-animal{aspect-ratio:16 / 9;overflow:hidden;border:6px solid #f8fff4;background:#d6eef2}.mini-animal img{width:100%;height:100%;object-fit:cover;display:block}.mini-animal.worksheet-image{border-color:#ffd367;background:#fff}.mini-animal.worksheet-image img{object-fit:contain}.image-fallback{width:100%;height:100%;display:grid;place-items:center;padding:10px;color:#073f4d;background:#fff3c0;font-size:clamp(26px,4.4vh,42px);font-weight:900}.answer-slots{display:grid;justify-content:center;gap:clamp(7px,1.1vh,10px);margin:0 auto}.answer-slots span{aspect-ratio:1;display:grid;place-items:center;background:linear-gradient(90deg,transparent calc(50% - 1px),rgba(232,127,0,.28) 50%,transparent calc(50% + 1px)),linear-gradient(0deg,transparent calc(50% - 1px),rgba(232,127,0,.28) 50%,transparent calc(50% + 1px)),linear-gradient(45deg,transparent calc(50% - 1px),rgba(7,63,77,.12) 50%,transparent calc(50% + 1px)),linear-gradient(-45deg,transparent calc(50% - 1px),rgba(7,63,77,.12) 50%,transparent calc(50% + 1px)),#f8fff4;color:#073f4d;border:4px solid rgba(7,63,77,.28);border-radius:0;font-size:clamp(28px,5.4vh,38px);font-weight:900;box-shadow:inset 0 0 0 2px #ffffffc7}.answer-slots span.filled{background:linear-gradient(90deg,transparent calc(50% - 1px),rgba(232,127,0,.28) 50%,transparent calc(50% + 1px)),linear-gradient(0deg,transparent calc(50% - 1px),rgba(232,127,0,.28) 50%,transparent calc(50% + 1px)),linear-gradient(45deg,transparent calc(50% - 1px),rgba(7,63,77,.12) 50%,transparent calc(50% + 1px)),linear-gradient(-45deg,transparent calc(50% - 1px),rgba(7,63,77,.12) 50%,transparent calc(50% + 1px)),#fff3c0;border-color:#e87f00;box-shadow:inset 0 0 0 2px #ffffffd1}.choices{display:grid;grid-template-columns:repeat(5,minmax(78px,1fr));gap:clamp(8px,1.2vh,12px);margin:0 auto;width:min(760px,84vw)}.choices button,.actions button{min-height:clamp(46px,8.2vh,58px);border:0;color:#073f4d;font-size:clamp(24px,4.8vh,32px);font-weight:900;cursor:pointer}.choices button{background:#f8fff4}.choices button:focus-visible,.actions button:focus-visible{outline:0;box-shadow:inset 0 0 0 8px #ff9f1c}.choices button.selected{background:#ffd367}.numeric-panel{display:grid;grid-template-columns:minmax(180px,300px) minmax(280px,430px);align-items:center;justify-content:center;gap:clamp(12px,2vw,24px);margin:0 auto;width:min(820px,88vw)}.numeric-answer{display:grid;gap:10px}.numeric-field{min-height:clamp(54px,8vh,70px);border:4px solid #d9f5f6;background:#f8fff4;color:#073f4d;font-size:clamp(26px,4.6vh,34px);font-weight:900}.numeric-field.active{border-color:#ff9f1c;background:#ffd367}.number-pad{display:grid;grid-template-columns:repeat(3,minmax(72px,1fr));gap:clamp(8px,1.2vh,12px)}.number-pad button{min-height:clamp(44px,7vh,58px);border:0;background:#f8fff4;color:#073f4d;font-size:clamp(22px,4vh,30px);font-weight:900}.number-pad button:focus-visible,.numeric-field:focus-visible{outline:0;box-shadow:inset 0 0 0 8px #ff9f1c}.numeric-tv-layout{height:100%;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);align-items:stretch;gap:clamp(16px,2.2vw,28px)}.numeric-question-pane,.numeric-response-pane{min-height:0;min-width:0;display:grid;align-content:center}.numeric-question-pane{grid-template-rows:minmax(76px,auto) minmax(220px,1fr);gap:clamp(12px,2vh,22px)}.numeric-question-pane h1{align-self:end;color:#ffd367;font-size:clamp(32px,5.4vh,50px);line-height:1.18}.numeric-question-pane h1.long-prompt{font-size:clamp(24px,4.3vh,38px)}.numeric-question-pane .mini-animal{width:100%;max-height:min(48vh,360px);align-self:start;border-width:7px}.numeric-response-pane{grid-template-rows:auto auto auto;justify-content:stretch}.numeric-response-pane .status{margin:0 0 clamp(14px,2vh,22px);font-size:clamp(22px,3.8vh,30px)}.numeric-response-pane .numeric-panel{min-width:0;width:100%;grid-template-columns:1fr;gap:clamp(14px,2vh,22px)}.numeric-response-pane .numeric-answer{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.numeric-response-pane .numeric-field{min-height:clamp(54px,7vh,72px)}.numeric-response-pane .number-pad{min-width:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(8px,1.4vh,12px)}.numeric-response-pane .number-pad button{min-width:0;min-height:clamp(44px,6.4vh,60px);padding:0 8px}.numeric-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1.2vh,12px);margin-top:clamp(16px,2.6vh,28px)}.numeric-actions button{min-width:0}.actions{display:flex;justify-content:center;gap:clamp(8px,1.2vh,12px);margin-top:0}.actions.numeric-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1.2vh,12px);margin-top:clamp(16px,2.6vh,28px);width:100%}.pager-actions{margin-top:8px}.actions button{min-width:clamp(130px,18vw,180px);padding:0 28px;font-size:clamp(20px,3.8vh,26px)}.numeric-actions button{min-width:0;padding:0 12px;font-size:clamp(18px,3.2vh,24px)}.actions .ghost{background:#d9f5f6}.actions .primary{background:#ffd367}.actions button:disabled{opacity:.55}.feedback-mark{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;z-index:10;background:#073f4d2e;font-size:min(42vh,320px);line-height:1;font-weight:900;pointer-events:none;text-shadow:0 16px 42px rgba(0,0,0,.24)}.feedback-symbol{position:relative;z-index:1}.feedback-mark.correct{color:#52d273}.feedback-mark.wrong{color:#ff5a5f}.fireworks{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:hidden}.fireworks span{--angle: calc(var(--spark-index) * 45deg);position:absolute;width:clamp(22px,3.8vh,38px);aspect-ratio:1;border-radius:50%;background:#ffd367;box-shadow:0 0 24px #ffd367b8;transform:rotate(var(--angle)) translateY(0) scale(.4);animation:firework-pop .78s ease-out both}.fireworks span:nth-child(2n){background:#ff9f1c}.fireworks span:nth-child(3n){background:#d7f9fb}@keyframes firework-pop{0%{opacity:0;transform:rotate(var(--angle)) translateY(0) scale(.35)}22%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translateY(min(-34vh,-260px)) scale(1)}}@media (max-height: 760px){.screen{padding:10px 32px}h1{font-size:42px}.status{min-height:28px;margin:4px 0;font-size:20px}.answer-header{grid-template-columns:minmax(0,1fr) minmax(150px,200px);gap:12px;width:min(800px,100%)}.generic-answer-page .answer-header{grid-template-columns:minmax(0,.8fr) minmax(260px,440px);width:min(920px,100%)}.answer-header h1{font-size:34px}.mini-animal{border-width:4px}.animal-panel{width:min(880px,76vw);border-width:8px}.rule-panel{margin-top:8px;padding:22px 34px;border-width:6px}.rule-panel p{font-size:32px}.rule-panel strong{font-size:48px}.answer-slots{gap:7px}.choices{width:min(700px,82vw);gap:8px}.answer-slots span,.choices button,.actions button{min-height:46px}.actions button{min-width:138px}.numeric-panel{grid-template-columns:minmax(150px,240px) minmax(260px,380px)}.numeric-field,.number-pad button{min-height:44px}.numeric-tv-layout{grid-template-columns:minmax(0,1fr) minmax(330px,.9fr);gap:18px}.numeric-question-pane{grid-template-rows:minmax(58px,auto) minmax(180px,1fr);gap:10px}.numeric-question-pane h1{font-size:32px}.numeric-question-pane h1.long-prompt{font-size:26px}.numeric-response-pane .status{font-size:22px;margin-bottom:10px}.numeric-response-pane .numeric-panel{grid-template-columns:1fr;gap:10px}.numeric-response-pane .number-pad{grid-template-columns:repeat(5,minmax(46px,1fr));gap:8px}.numeric-actions{gap:8px;margin-top:10px}}.expression-field-wrap{display:grid;gap:clamp(4px,.8vh,8px);min-width:0}.expression-field-wrap span{color:#d7f9fb;font-size:clamp(18px,3vh,24px);font-weight:900;line-height:1;text-align:center}.expression-field{min-width:0;overflow:hidden;text-overflow:ellipsis}.expression-equals{display:grid;place-items:center;color:#ffd367;font-size:clamp(28px,5vh,42px);font-weight:900}.expression-pad-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.2vh,12px);margin-top:clamp(8px,1.2vh,12px)}.expression-pad-tools button{min-height:clamp(44px,7vh,58px);border:0;background:#f8fff4;color:#073f4d;font-size:clamp(22px,4vh,30px);font-weight:900}.expression-pad-tools button:focus-visible{outline:0;box-shadow:inset 0 0 0 8px #ff9f1c}.numeric-response-pane .numeric-answer.expression-answer{grid-template-columns:minmax(0,1fr) auto minmax(86px,.45fr);align-items:center}.numeric-response-pane .expression-pad-tools button{min-width:0;min-height:clamp(38px,5.6vh,52px);padding:0 8px}@media (max-height: 760px){.expression-pad-tools{gap:8px;margin-top:10px}.numeric-response-pane .numeric-answer.expression-answer{grid-template-columns:minmax(0,1fr) auto minmax(72px,.42fr)}}.admin-root{min-height:100vh;background:#f5f7fb;color:#1f2937}.admin-login{min-height:100vh;display:grid;place-items:center;padding:32px;background:#eef3f8}.admin-login-card{width:min(420px,100%)}.admin-login-title{font-size:22px;font-weight:700}.admin-login-button{width:100%;margin-top:18px}.admin-shell{height:100vh;display:flex;overflow:hidden}.admin-sidebar{width:236px;flex:0 0 236px;background:#0f172a;color:#fff;display:flex;flex-direction:column;box-shadow:1px 0 #0f172a1a;transition:width .18s ease,flex-basis .18s ease}.admin-shell-collapsed .admin-sidebar{width:76px;flex-basis:76px}.admin-brand{display:flex;align-items:center;gap:12px;height:72px;padding:0 18px;border-bottom:1px solid rgba(226,232,240,.12)}.admin-brand-mark{width:36px;height:36px;border-radius:8px;background:#f8c85f;color:#0b4350;display:grid;place-items:center;font-weight:800}.admin-brand strong,.admin-brand small{display:block}.admin-brand-text{min-width:0;white-space:nowrap;overflow:hidden;transition:opacity .18s ease}.admin-brand small{margin-top:2px;color:#cbd5e1}.admin-shell-collapsed .admin-brand{justify-content:center;padding:0}.admin-shell-collapsed .admin-brand-text{width:0;opacity:0}.admin-sidebar-toggle{justify-content:flex-start;height:44px;margin:12px;padding:0 14px;border-radius:8px;color:#cbd5e1;background:#94a3b814}.admin-sidebar-toggle:hover,.admin-sidebar-toggle:focus{color:#fff;background:#f8c85f29}.admin-sidebar-toggle .el-icon{margin-right:10px;font-size:18px}.admin-shell-collapsed .admin-sidebar-toggle{width:44px;justify-content:center;margin:12px 16px;padding:0}.admin-shell-collapsed .admin-sidebar-toggle .el-icon{margin-right:0}.admin-shell-collapsed .admin-sidebar-toggle-label{display:none}.admin-menu{--el-menu-bg-color: #0f172a;--el-menu-text-color: #cbd5e1;--el-menu-hover-bg-color: rgba(148, 163, 184, .18);--el-menu-hover-text-color: #ffffff;--el-menu-active-color: #0f172a;flex:1;border-right:0;background:#0f172a;padding:0 10px 16px}.admin-menu:not(.el-menu--collapse){width:100%}.admin-menu.el-menu--collapse{width:100%;padding:0 10px 16px}.admin-menu .el-menu-item{height:46px;margin:4px 0;border-radius:8px;background:transparent;color:#cbd5e1;font-weight:600}.admin-menu .el-menu-item:hover,.admin-menu .el-menu-item:focus{background:#94a3b81f;color:#fff}.admin-menu .el-menu-item .el-icon{color:#bfdbfe}.admin-menu .el-menu-item.is-active{background:#f8c85f;color:#0f172a}.admin-menu .el-menu-item.is-active .el-icon{color:#0f172a}.admin-main{min-width:0;flex:1;height:100vh;overflow:auto;padding:24px}.admin-topbar{min-height:64px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:18px}.admin-topbar h1{margin:0;color:#111827;font-size:28px}.admin-topbar p{margin:6px 0 0;color:#6b7280}.admin-page{display:grid;gap:16px}.admin-header-actions,.admin-filter-actions,.admin-row-actions,.admin-table-summary,.admin-card-header{display:flex;align-items:center;gap:12px}.admin-card-header{justify-content:space-between}.admin-card-header p{margin:4px 0 0;color:#6b7280}.admin-policy-form{max-width:520px}.admin-policy-form .el-select{width:240px}.admin-form-suffix{margin-left:12px;color:#6b7280}.admin-filter-card .el-form-item{margin-bottom:0}.admin-filter-grid{display:grid;grid-template-columns:minmax(260px,1fr) 180px 180px auto;gap:16px;align-items:end}.question-filter-grid{grid-template-columns:repeat(3,minmax(180px,1fr))}.admin-filter-actions{justify-content:flex-end}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid #e5e7eb}.admin-toolbar-summary,.admin-toolbar-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.admin-toolbar-summary{color:#4b5563}.admin-row-actions{flex-wrap:wrap}.admin-pagination{display:flex;justify-content:flex-end;position:sticky;bottom:0;z-index:2;background:#fff;padding-top:16px}.admin-batch-form{margin-top:18px}.admin-table-summary{justify-content:space-between;margin-bottom:12px;color:#6b7280;font-size:14px}.admin-question-image{width:112px;height:72px;object-fit:cover;border:1px solid #d1d5db;background:#fff}.admin-question-editor{max-height:calc(90vh - 132px);display:grid;grid-template-columns:minmax(360px,.9fr) minmax(520px,1.1fr);gap:24px;align-items:start;overflow:hidden}.admin-question-dialog{max-height:90vh;display:flex;flex-direction:column}.admin-question-dialog .el-dialog__body{min-height:0;overflow:hidden}.admin-question-dialog .el-dialog__footer{flex:0 0 auto}.admin-question-form{min-height:0;max-height:calc(90vh - 132px);overflow:auto;padding-right:8px}.tv-preview-panel{position:sticky;top:0}.tv-preview-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:#374151}.tv-preview-title span{color:#6b7280;font-size:13px}.tv-preview-frame{position:relative;width:100%;max-width:1280px;aspect-ratio:16 / 9;overflow:hidden;border:1px solid #d1d5db;background:#073f4d}.tv-preview-stage{position:absolute;top:0;left:0;transform-origin:top left;overflow:hidden;background:linear-gradient(90deg,rgba(255,213,107,.08) 1px,transparent 1px),linear-gradient(rgba(255,213,107,.08) 1px,transparent 1px),#073f4d;background-size:84px 84px;padding:22px 44px}.tv-preview-stage .quiz{width:100%}.admin-taxonomy-table{margin-top:14px}.learning-stats-filter{grid-template-columns:220px 220px auto}.learning-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:16px}.learning-stat-card{min-height:112px;border:1px solid #e5e7eb;border-radius:8px;padding:18px;background:#fff}.learning-stat-card span,.learning-stat-card small{display:block;color:#6b7280}.learning-stat-card strong{display:block;margin:10px 0 6px;color:#111827;font-size:30px}@media (max-width: 900px){.admin-shell{display:block;height:auto;min-height:100vh;overflow:visible}.admin-sidebar{width:auto;flex:none;min-height:auto}.admin-shell-collapsed .admin-sidebar{width:auto}.admin-sidebar-toggle{display:none}.admin-shell-collapsed .admin-brand{justify-content:flex-start;padding:0 18px}.admin-shell-collapsed .admin-brand-text{width:auto;opacity:1}.admin-main{height:auto;overflow:visible}.admin-filter-grid{grid-template-columns:1fr}.admin-topbar{display:block}.admin-header-actions{margin-top:12px}.admin-question-editor{grid-template-columns:1fr}.tv-preview-panel{position:static}.learning-stats-grid{grid-template-columns:1fr}}
