:root{color:#3f3d57;background:#fbf8f0;font-family:PingFang HK,Noto Sans TC,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 10% 8%,#fff4bd 0 3%,#0000 3.2%),radial-gradient(circle at 92% 14%,#dceeff 0 5%,#0000 5.2%),#fbf8f0;min-width:320px;min-height:100vh;margin:0}button{font:inherit;cursor:pointer}.app-shell{width:min(1120px,100%);margin:0 auto;padding:18px 22px 32px}.site-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.brand{color:#514985;text-align:left;background:0 0;border:0;align-items:center;gap:10px;font-size:21px;font-weight:800;line-height:.8;display:flex}.brand small{color:#f0827d;font-size:15px}.brand-icon{color:#fff;background:#6d5bd0;border:3px solid #514985;border-radius:50%;place-items:center;width:42px;height:42px;font-size:32px;display:grid}.teacher-button{color:#675897;background:#fff;border:2px solid #d9c7ff;border-radius:999px;padding:10px 14px;font-weight:700;box-shadow:0 3px #eadfff}.teacher-button--active{color:#fff;background:#6d5bd0}.welcome{background:#fff;border:2px solid #efe7cc;border-radius:28px;justify-content:space-between;align-items:center;gap:22px;padding:clamp(22px,4vw,38px);display:flex;box-shadow:0 7px #eee6ce}.eyebrow{color:#ef8279;margin:0 0 7px;font-size:14px;font-weight:800}h1{color:#514985;margin:0;font-size:clamp(27px,4vw,42px)}.welcome p:not(.eyebrow){color:#6b6880;max-width:580px;margin:13px 0 0;font-size:17px;line-height:1.65}.flower{color:#f29a9a}.number-buddies{color:#fff;gap:2px;padding:12px 14px;font-size:clamp(27px,5vw,48px);font-weight:900;display:flex;transform:rotate(3deg)}.number-buddies span{background:#72c6c4;border:3px solid #3c9b9a;border-radius:15px;place-items:center;min-width:.83em;height:1.12em;display:grid}.number-buddies span:nth-child(2),.number-buddies span:nth-child(5){background:#f5a3a1;border-color:#d77478}.number-buddies span:nth-child(3){color:#f7c76d;background:0 0;border:0;min-width:.25em}.room-section{margin-top:35px}.room-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;display:grid}.room{color:#fff;text-align:center;border:0;border-radius:20px 20px 8px 8px;min-height:203px;padding:48px 15px 13px;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden;box-shadow:0 7px #53416026}.room:hover,.room:focus-visible{outline:3px solid #f9c856;transform:translateY(-5px);box-shadow:0 12px #53416026}.room:after{content:"";pointer-events:none;border:2px solid #ffffffb3;border-radius:13px 13px 4px 4px;position:absolute;inset:9px}.room--peach{background:#f5a5a3}.room--mint{background:#77c9bb}.room--sky{background:#80bce5}.room--lilac{background:#a89add}.room--yellow{background:#efc769}.room-number{z-index:1;font-size:20px;font-weight:900;position:absolute;top:10px;left:15px}.door-knob{z-index:2;background:#fff4aa;border-radius:50%;width:10px;height:10px;position:absolute;top:96px;right:22px}.room-name{z-index:1;overflow-wrap:anywhere;min-height:57px;padding-top:17px;font-size:clamp(17px,2vw,23px);font-weight:900;display:block;position:relative}.room-class{z-index:1;background:#ffffff45;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:800;display:inline-block;position:relative}.room-stars{z-index:1;font-size:13px;font-weight:800;position:absolute;bottom:13px;left:0;right:0}footer{text-align:center;color:#918aa0;padding:32px 0 4px;font-size:14px}.quiz-view,.teacher-view{max-width:820px;margin:0 auto}.back-button{color:#6d5bd0;background:0 0;border:0;padding:0 0 18px;font-size:16px;font-weight:800}.student-strip{background:#fff;border:2px solid #e8e0c8;border-radius:18px 18px 0 0;align-items:center;gap:12px;padding:13px 17px;display:flex}.student-strip b{color:#514985;font-size:18px;display:block}.student-strip small{color:#8d89a0;margin-top:2px;display:block}.mini-door{color:#fff;border:2px solid #352e4e3d;border-radius:9px 9px 3px 3px;flex:0 0 42px;place-items:center;width:42px;height:46px;font-weight:900;display:grid}.mini-door--peach{background:#f5a5a3}.mini-door--mint{background:#77c9bb}.mini-door--sky{background:#80bce5}.mini-door--lilac{background:#a89add}.mini-door--yellow{background:#efc769}.quiz-progress{text-align:right;color:#6d6680;min-width:115px;margin-left:auto;font-size:12px;font-weight:800}.quiz-progress div{background:#e9e4ef;border-radius:99px;height:8px;margin-top:5px;overflow:hidden}.quiz-progress i{border-radius:inherit;background:#76c3ac;height:100%;display:block}.question-card{background:#fff;border:2px solid #e8e0c8;border-top:0;border-radius:0 0 25px 25px;padding:clamp(22px,5vw,46px);box-shadow:0 8px #ede5ce}.question-top{justify-content:space-between;align-items:center;display:flex}.skill-pill{color:#6755b9;background:#eee9ff;border-radius:99px;padding:5px 11px;font-size:13px;font-weight:800}.star-count{color:#d59c2d;font-size:14px;font-weight:800}.question-title{color:#f0877e;margin:25px 0 5px;font-weight:800}.question-card h1{color:#45405c;font-size:clamp(25px,4vw,34px);line-height:1.45}.choices{gap:12px;margin-top:27px;display:grid}.choice{color:#45405c;text-align:left;background:#fff;border:2px solid #ded8ea;border-radius:16px;align-items:center;gap:14px;width:100%;min-height:62px;padding:10px 17px;font-size:20px;font-weight:800;display:flex}.choice:hover,.choice--selected{background:#f3f0ff;border-color:#8a77dc}.choice span{background:#eeea f5;color:#817b93;border-radius:50%;place-items:center;width:31px;height:31px;font-size:15px;display:grid}.choice--selected span{color:#fff;background:#7b67d5}.choice--correct{background:#e9f8f0;border-color:#55ba93}.choice--wrong{background:#fff0ee;border-color:#e27a74}.help-row{flex-wrap:wrap;gap:10px;margin-top:23px;display:flex}.help-button{color:#84672b;background:#fff2c9;border:0;border-radius:99px;padding:13px;font-size:14px;font-weight:800}.hint-box,.examples-box,.feedback{border-radius:14px;margin-top:14px;padding:14px 16px;line-height:1.55}.hint-box{color:#725c29;background:#fffdf8}.examples-box{color:#42757b;background:#eef8fa}.feedback--correct{color:#27825e;background:#e9f8f0}.feedback--try-again{color:#bb5c59;background:#fff0ee}.action-row{justify-content:flex-end;margin-top:24px;display:flex}.primary-button{color:#fff;background:#6d5bd0;border:0;border-radius:13px;min-width:160px;padding:14px 20px;font-size:17px;font-weight:900;box-shadow:0 4px #4e409f}.primary-button:disabled{cursor:not-allowed;background:#c7c2dd;box-shadow:0 4px #aaa3be}.section-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.teacher-note{color:#777387}.progress-list{gap:10px;margin-top:22px;display:grid}.student-progress{background:#fff;border:2px solid #eee8d7;border-radius:17px;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:9px 13px;display:grid}.progress-name b{color:#514985}.progress-name small{color:#8d89a0;display:block}.progress-number{color:#6d5bd0;font-size:14px;font-weight:900}.teacher-login{background:#fff;border:2px solid #e8e0c8;border-radius:18px;gap:12px;max-width:420px;margin-top:24px;padding:22px;display:grid}.teacher-login input{width:100%;font:inherit;border:2px solid #ded8ea;border-radius:12px;padding:13px 14px;font-size:16px}.error-text{color:#bb5c59;font-weight:700}.value-block{color:#fff;background:#73c6bc;border:2px solid #4a9991;border-radius:11px;place-items:center;min-width:49px;height:49px;font-size:16px;font-weight:900;display:grid}.value-block--thousand{background:#f5a5a3;border-color:#d88079}.value-block--hundred{background:#a89add;border-color:#8a76c7}.value-block--ten{background:#efc769;border-color:#c69231}.value-block--one{background:#80bce5;border-color:#559acb}@media (width<=780px){.app-shell{padding:15px 14px 28px}.welcome{align-items:flex-start;padding:22px}.number-buddies{display:none}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.room{min-height:180px}.room-name{font-size:18px}.student-progress{grid-template-columns:44px 1fr auto}.mini-progress{display:none}}@media (width<=430px){.brand{font-size:18px}.teacher-button{padding:9px 10px;font-size:13px}.welcome{display:block}.room{padding-left:8px;padding-right:8px}.room-name{padding-right:28px;font-size:16px}.student-strip{gap:9px;padding:11px}.student-strip small{max-width:150px}.quiz-progress{min-width:70px}.question-card{padding:23px 17px}.choice{font-size:18px}.section-heading{flex-direction:column;align-items:flex-start}.student-progress{gap:8px;padding:9px}}.save-status{color:#716a84;margin:13px 0 0;font-size:14px;font-weight:700}.save-status--success{color:#27825e}.save-status--error{color:#bb5c59}.room--student{border-style:solid;border-width:3px}.choice--wrong{color:#9b2020;background:#ffe4e2!important;border-color:#d13f3f!important}.choice--wrong span{color:#fff;background:#d13f3f}.feedback--wrong{color:#a93232;background:#ffe8e6;border:2px solid #e27a74;font-weight:800}.completion-view{text-align:center;max-width:620px;margin:35px auto 0}.completion-card{background:#fff;border:2px solid #e8e0c8;border-radius:28px;padding:clamp(28px,6vw,52px) 24px;box-shadow:0 9px #ede5ce}.completion-stars{color:#f5b72d;letter-spacing:5px;text-shadow:0 2px #d89b21;margin-bottom:22px;font-size:clamp(28px,7vw,48px)}.teacher-avatar{background:#eee9ff;border:3px solid #8a78d5;border-radius:50%;place-items:center;width:92px;height:92px;margin:0 auto 8px;font-size:54px;display:grid}.completion-teacher{color:#6755b9;margin:0 0 12px;font-size:16px;font-weight:800}.completion-card h1{color:#27825e;font-size:clamp(31px,6vw,43px)}.completion-message{color:#45405c;margin:13px 0 7px;font-size:19px;font-weight:800}.completion-note{color:#777387;margin:0 0 25px;font-size:16px}.completion-card .primary-button{margin-top:4px}.teacher-avatar-thumb{object-fit:cover;object-position:center 18%;vertical-align:middle;border-radius:50%;width:28px;height:28px;display:block}.teacher-avatar{overflow:hidden}.teacher-avatar img{object-fit:cover;object-position:center 18%;width:100%;height:100%;display:block}.student-progress{appearance:none;width:100%;font:inherit;cursor:pointer;transition:transform .15s,border-color .15s}.student-progress:hover,.student-progress:focus-visible{outline-offset:2px;border-color:#a797e7;outline:3px solid #f9c856;transform:translateY(-1px)}.progress-number small{color:#8d89a0;font-size:11px;font-weight:700;display:block}.teacher-detail{background:#fffdf6;border:2px solid #e8e0c8;border-radius:20px;margin-top:25px;padding:22px}.teacher-detail-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.teacher-detail h2{color:#514985;margin:4px 0 0;font-size:clamp(22px,3vw,30px)}.teacher-detail-note,.teacher-detail-empty{color:#777387;line-height:1.5}.wrong-question-list{gap:12px;margin-top:16px;display:grid}.wrong-question{background:#fff0ee;border:2px solid #f0b6b0;border-radius:16px;padding:16px}.wrong-question h3{color:#a93232;margin:0 0 7px;font-size:17px}.wrong-question p{color:#5c4c60;margin:6px 0;line-height:1.5}.wrong-question-text{font-weight:800;color:#45405c!important}.wrong-explanation{background:#fff6d8;border-radius:10px;padding:10px 12px}.wrong-question small{color:#8d6c70}.visual-aid{background:#f1fbf9;border:2px solid #cce9e5;border-radius:17px;margin-top:20px;padding:15px}.visual-aid>p{color:#397872;margin:0 0 11px;font-size:15px;font-weight:800}.place-value-grid{background:#fff;border:2px solid #7bc8bd;border-radius:12px;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow:hidden}.place-cell{text-align:center;border-right:2px solid #cce9e5;min-width:0}.place-cell:last-child{border-right:0}.place-cell span{color:#397872;background:#e2f5f1;padding:7px 2px;font-size:13px;font-weight:800;display:block}.place-cell b{color:#4f4778;padding:8px 2px;font-size:clamp(24px,5vw,34px);display:block}.place-cell--highlight span{color:#785b14;background:#ffe7a6}.place-cell--highlight b{color:#c65f58;background:#fff7d9}.value-blocks{flex-wrap:wrap;gap:7px;display:flex}.value-block{color:#fff;background:#73c6bc;border:2px solid #4a9991;border-radius:11px;place-items:center;min-width:49px;height:49px;font-size:16px;font-weight:900;display:grid;box-shadow:0 3px #c1e9e4}@media (width<=430px){.place-cell span{font-size:12px}.teacher-detail{padding:16px}}.teacher-view{max-width:1040px}.race-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 16px;display:grid}.race-summary:before{content:"🔄 全班進度每 5 秒自動更新；返回此分頁時亦會即時更新";color:#63746c;grid-column:1/-1;font-size:13px;font-weight:700}.race-summary>div{background:#fff;border:2px solid #e4dcf4;border-radius:18px;align-items:center;gap:10px;min-height:72px;padding:13px 16px;display:flex;box-shadow:0 4px #eee8d7}.race-summary strong{color:#6755b9;font-size:30px;line-height:1}.race-summary span{color:#716a84;font-size:14px;font-weight:800}.race-board{background:#f8f6ff;border:3px solid #79708d;border-radius:24px;padding:16px;overflow:hidden;box-shadow:0 8px #ddd7ea}.race-board-heading{color:#625b76;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-bottom:13px;font-size:14px;font-weight:900;display:grid}.race-board-heading b{color:#fff;letter-spacing:.05em;background:#6755b9;border-radius:99px;padding:8px 16px;font-size:16px}.race-board-heading span:last-child{text-align:right}.race-list{gap:10px;display:grid}.race-lane{--lane-color:#f49a8f;appearance:none;width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#fff;border:2px solid #e0dbea;border-radius:17px;grid-template-columns:minmax(150px,190px) minmax(260px,1fr) 105px;align-items:center;gap:12px;padding:10px 12px;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid}.race-lane:nth-child(5n+2){--lane-color:#efc769}.race-lane:nth-child(5n+3){--lane-color:#7bc8bd}.race-lane:nth-child(5n+4){--lane-color:#80bce5}.race-lane:nth-child(5n+5){--lane-color:#a89add}.race-lane:hover,.race-lane:focus-visible{border-color:var(--lane-color);box-shadow:0 4px 0 color-mix(in srgb,var(--lane-color) 35%,#fff);outline:none;transform:translateY(-2px)}.race-lane--finished{background:#f2fff8;border-color:#79c7a8}.race-name{align-items:center;gap:10px;min-width:0;display:flex}.race-name>span:last-child{min-width:0}.race-name b{color:#4f4778;text-overflow:ellipsis;white-space:nowrap;font-size:16px;display:block;overflow:hidden}.race-name small{color:#858095;margin-top:3px;font-size:12px;font-weight:800;display:block}.race-rank{background:var(--lane-color);color:#fff;border-radius:50%;flex:0 0 32px;place-items:center;width:32px;height:32px;font-size:13px;font-weight:900;display:grid}.race-track{background:repeating-linear-gradient(90deg,#0000 0 39px,#ffffff1f 40px 42px),linear-gradient(#8a8790 0 47%,#f7f1aa 47% 53%,#77747d 53% 100%);border:2px solid #6e6a75;border-radius:13px;height:54px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 3px #b8b4bd}.race-start-line{opacity:.8;background:repeating-linear-gradient(#fff 0 6px,#222 6px 12px);width:6px;position:absolute;top:0;bottom:0;left:7%}.race-finish{font-size:25px;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.race-car{z-index:2;background:var(--lane-color);filter:drop-shadow(0 3px 1px #2a23394d);border:3px solid #fff;border-radius:50%;place-items:center;width:40px;height:40px;font-size:25px;transition:left .7s cubic-bezier(.2,.8,.2,1);display:grid;position:absolute;top:50%;transform:translate(-50%,-50%)}.race-status{color:#6f687e;white-space:nowrap;background:#f0edf6;border-radius:99px;justify-self:end;padding:7px 9px;font-size:12px;font-weight:900}.race-status--finished{color:#247651;background:#dff7e9}.leaderboard-section{background:linear-gradient(145deg,#fffdf2,#fff7db);border:2px solid #e5d9a5;border-radius:24px;margin:24px 0 20px;padding:22px;box-shadow:0 6px #f0e7c9}.leaderboard-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;display:flex}.leaderboard-heading h2{color:#514985;margin:0;font-size:clamp(21px,3vw,29px)}.leaderboard-heading>span{color:#8b6d29;background:#fff;border-radius:999px;flex:none;padding:8px 12px;font-weight:900}.leaderboard-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.leaderboard-group{background:#fff;border:2px solid #eee5c8;border-radius:17px;min-width:0;padding:15px}.leaderboard-group h3{color:#5b527d;margin:0 0 10px;font-size:17px}.leaderboard-group ol{gap:7px;margin:0;padding:0;list-style:none;display:grid}.leaderboard-group li{background:#f8f6fc;border-radius:12px;grid-template-columns:auto minmax(50px,1fr) auto;align-items:center;gap:5px 10px;padding:9px 10px;display:grid}.leaderboard-group li.leaderboard-champion{background:#fff6cf;border:2px solid #edc452}.leaderboard-rank{color:#786b96;white-space:nowrap;font-size:12px;font-weight:900}.leaderboard-group li b{color:#514985;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.leaderboard-group li strong{color:#bd8120;white-space:nowrap}.leaderboard-group li small{color:#898398;grid-column:2/-1;font-size:11px}.leaderboard-empty{color:#8b8798;margin:0;font-size:14px;line-height:1.5}.completion-score{color:#8b6718;background:#fff5cc;border-radius:14px;margin:8px 0 12px;padding:10px 16px;font-size:21px;font-weight:900;display:inline-block}.teacher-round-picker{color:#514985;background:#fff;border:2px solid #e4dcf4;border-radius:17px;grid-template-columns:auto minmax(220px,1fr);align-items:center;gap:8px 14px;margin-top:20px;padding:16px 18px;font-weight:800;display:grid}.teacher-round-picker select{color:#514985;width:100%;min-height:44px;font:inherit;background:#fff;border:2px solid #d9d1ed;border-radius:11px;padding:8px 12px}.teacher-round-picker p{color:#777387;grid-column:1/-1;margin:0;font-size:13px}@media (width<=780px){.race-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.race-summary>div{text-align:center;gap:4px;padding:11px;display:grid}.race-lane{grid-template-columns:1fr;gap:8px}.race-track{width:100%}.race-status{justify-self:start}}@media (width<=520px){.race-summary{grid-template-columns:1fr;gap:8px}.race-summary>div{text-align:left;min-height:0;display:flex}.race-board{border-radius:19px;padding:11px}.race-board-heading{font-size:11px}.race-board-heading b{padding:7px 10px;font-size:13px}.race-lane{padding:10px}.race-track{min-width:0}.leaderboard-section{padding:15px}.leaderboard-heading{flex-direction:column;align-items:flex-start}.leaderboard-groups{grid-template-columns:1fr}.leaderboard-group li{grid-template-columns:auto minmax(40px,1fr) auto;gap:4px 7px;padding:8px}.teacher-round-picker{grid-template-columns:1fr;gap:8px;padding:13px}.teacher-round-picker p{grid-column:auto}}.weight-question{background:#f0fbf6;border:2px solid #b9e3d5;border-radius:18px;margin-top:15px;padding:14px}.weight-question>p:first-child{color:#397872;margin:0 0 10px;font-size:15px;font-weight:900}.weight-items{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.weight-item{color:#514985;background:#fff;border:2px solid #d9d4e5;border-radius:14px;justify-items:center;gap:4px;min-height:76px;padding:8px 5px;display:grid}.weight-item>span{font-size:28px;line-height:1}.weight-item b{font-size:14px}.weight-item--selected{background:#e3f8ee;border-color:#54aa96;box-shadow:0 3px #a9ddcb}.weight-item:disabled{cursor:default;opacity:.8}.weight-scale{background:linear-gradient(110deg,#e6eaeb,#cbd3d5 45%,#edf0ef);border:3px solid #79878c;border-radius:22px 22px 18px 18px;justify-items:center;width:min(100%,330px);margin:19px auto 0;padding:12px 13px 0;display:grid;box-shadow:inset 0 2px 4px #fff,0 8px #aab4b6,0 11px 14px #363e4429}.weight-tray{z-index:1;color:#514985;background:linear-gradient(#fbfcfa 0 25%,#dce2e2 26% 100%);border:3px solid #818d90;border-radius:8px 8px 13px 13px;place-items:center;width:92%;height:56px;margin-top:-31px;font-size:30px;display:grid;position:relative;box-shadow:0 5px #8d999c,inset 0 2px #fff}.weight-tray:before{content:"";background:#ffffffe6;height:1px;position:absolute;top:4px;left:9px;right:9px}.weight-platform-post{background:linear-gradient(90deg,#b5bfc1,#e6e9e8,#a9b3b5);border-left:3px solid #818d90;border-right:3px solid #818d90;width:33%;height:14px}.weight-meter-case{background:radial-gradient(at 50% 10%,#fff 0,#f7f5e9 66%,#e6e3d5 100%);border:7px solid #8e9a9d;border-radius:18px 18px 12px 12px;place-items:center;width:min(100%,280px);padding:6px 9px 0;display:grid;box-shadow:inset 0 2px 5px #2d363a3d,0 2px #fff}.weight-pan-empty{color:#918aa0;font-size:13px;font-weight:800}.weight-dial{width:100%;max-height:190px;display:block;overflow:visible}.weight-scale-base{background:linear-gradient(#e9eded,#aab5b7);border:3px solid #778589;border-radius:4px 4px 8px 8px;width:82%;height:13px;margin:0 0 -4px;box-shadow:0 4px #929d9f}.weight-scale-prompt{color:#514985;text-align:center;margin:10px 0 0;font-weight:900}.weight-select-message{color:#735c26;text-align:center;background:#fff8dd;border-radius:12px;grid-column:2;align-self:center;margin:0;padding:14px;font-weight:800}@media (width<=780px){.weight-select-message{grid-column:1}}@media (width<=430px){.weight-scale{width:min(100%,310px);padding-left:9px;padding-right:9px}.weight-meter-case{padding-left:4px;padding-right:4px}}.number-cards{flex-wrap:wrap;gap:10px;display:flex}.number-card{color:#5c4d78;background:#fff8d8;border:3px solid #e0a34c;border-radius:10px 10px 14px 14px;place-items:center;width:52px;height:64px;font-size:28px;font-weight:900;display:grid;box-shadow:0 4px #edd5a0}.choice-copy{width:auto;min-width:0;height:auto;color:inherit;background:0 0;border-radius:0;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:0;display:flex}.choice-copy b{font:inherit}.choice-copy small{color:#7b7690;font-size:.68em;font-weight:700;line-height:1.2;display:block}.choice--selected .choice-copy{color:inherit;background:0 0}.battle-topline{color:#57516f;justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;font-size:14px;display:flex}.battle-topline>span{color:#6755b9;white-space:nowrap;background:#eee9ff;border-radius:99px;padding:6px 10px;font-weight:900}.battle-stage{--battle-grass:#65c579;background:linear-gradient(#94ddf0 0 49%,#c5ee9c 49% 57%,#62c971 57% 74%,#44ad65 74% 100%);border:4px solid #59576a;border-radius:18px 18px 0 0;height:clamp(290px,43vw,410px);margin-bottom:0;position:relative;overflow:hidden;box-shadow:inset 0 0 0 4px #fff7de,0 6px #d8d2bd}.battle-stage:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 22px,#ffffff26 23px 25px);height:53%;position:absolute;inset:0 0 auto}.battle-stage:after{content:"";background:radial-gradient(at 50% 8%,#a8e776 0 8%,#0000 8.5%),repeating-linear-gradient(90deg,#0000 0 46px,#ffffff1c 47px 49px),linear-gradient(#59c977,#3ca95f);border:5px solid #248c4f59;border-radius:50% 50% 0 0;height:48%;position:absolute;bottom:-19%;left:-7%;right:-7%}.battle-status{z-index:3;background:#fffdf3;border:3px solid #646071;border-radius:12px 18px;width:min(310px,53%);padding:10px 12px;position:absolute;box-shadow:3px 4px #33304540}.battle-name-row{color:#434054;justify-content:space-between;align-items:center;gap:8px;display:flex}.battle-name-row b{font-size:18px}.battle-name-row span{color:#7c7886;font-size:12px;font-weight:800}.enemy-energy,.player-hearts{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:7px;display:grid}.enemy-energy>span,.player-hearts>span{color:#c47a25;font-size:11px;font-weight:1000}.enemy-energy>div,.player-hearts>div{align-items:center;gap:3px;min-width:0;display:flex}.enemy-energy small,.player-hearts small{color:#555064;white-space:nowrap;font-size:11px;font-weight:900}.energy-pip{color:#d5cfd5;background:0 0;border:0;border-radius:0;flex:none;place-items:center;width:16px;height:18px;font-size:17px;line-height:1;display:grid}.energy-pip:before{content:"♥"}.energy-pip--on{color:#9671ca;text-shadow:0 1px #624296;box-shadow:none;background:0 0}.heart-pip{color:#d5cfd5;text-shadow:0 1px #fff;font-size:20px;font-style:normal;line-height:1}.heart-pip--on{color:#ed5c68;text-shadow:0 1px #a73545}.enemy-energy,.player-hearts{grid-template-columns:1fr auto;gap:4px 8px}.enemy-energy>span,.player-hearts>span{grid-area:1/1}.enemy-energy>small,.player-hearts>small{grid-area:1/2}.enemy-energy>div,.player-hearts>div{grid-area:2/1/auto/-1;justify-content:space-between}.energy-pip{width:15px;height:16px;font-size:15px}.heart-pip{font-size:18px}.battle-sprite{z-index:2;filter:drop-shadow(0 6px #384f4140);border:4px solid #ffffffe6;border-radius:50%;place-items:center;width:clamp(86px,14vw,136px);height:clamp(86px,14vw,136px);font-size:clamp(62px,10vw,102px);line-height:1;display:grid;position:absolute}.battle-sprite--enemy{background:radial-gradient(circle at 40% 30%,#fff 0 7%,#0000 8%),linear-gradient(145deg,#e8d4ff,#9a77d7);top:87px;right:13%;transform:rotate(7deg)}.battle-sprite--player{background:radial-gradient(circle at 42% 30%,#fff 0 7%,#0000 8%),linear-gradient(145deg,#d6fbff,#6bc9d7);bottom:42px;left:14%;transform:scaleX(-1)rotate(-6deg)}.battle-sparkles{z-index:2;color:#fff7a9;text-shadow:0 2px #6caa69;font-size:32px;position:absolute;top:48%;left:49%}.battle-notice{z-index:4;color:#514985;text-align:center;background:#fffef4;border:2px solid #fff;border-radius:12px;width:max-content;max-width:calc(100% - 24px);padding:9px 13px;font-size:clamp(12px,2vw,16px);font-weight:900;position:absolute;top:47%;left:50%;transform:translate(-50%,-50%);box-shadow:0 3px #37314b40}.battle-notice--wrong{color:#983c55}.battle-stage--player-attack .battle-sprite--player{animation:.65s ease-in-out player-lunge}.battle-stage--player-attack .battle-sprite--enemy{animation:.55s ease-in-out enemy-hit}.battle-stage--enemy-attack .battle-sprite--enemy{animation:.55s ease-in-out enemy-lunge}.battle-stage--enemy-attack .battle-sprite--player{animation:.55s ease-in-out player-hit}@keyframes player-lunge{45%{transform:translate(55px)scaleX(-1)rotate(-6deg)}}@keyframes enemy-lunge{45%{transform:translate(-40px)rotate(7deg)}}@keyframes enemy-hit{30%,70%{opacity:.55;transform:translate(8px)rotate(-12deg)}}@keyframes player-hit{30%,70%{opacity:.55;transform:translate(-8px)scaleX(-1)rotate(9deg)}}.battle-console{border-top:4px solid #aaa4b3;border-radius:0 0 20px 20px;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:start;gap:18px 22px;display:grid;box-shadow:0 7px #d8d2bd}.battle-prompt{min-width:0}.battle-prompt h1{margin:15px 0 0;font-size:clamp(22px,3.2vw,31px);line-height:1.45}.battle-prompt .visual-aid{margin-top:13px;padding:10px}.battle-choice-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.battle-choice{color:#484457;text-align:left;background:linear-gradient(#fffef9,#e8e5e9);border:3px solid #626070;border-radius:13px;grid-template-columns:27px minmax(0,1fr);align-content:center;align-items:center;gap:1px 9px;min-height:68px;padding:10px 12px;display:grid;box-shadow:0 4px #b5b0b7}.battle-choice>span{color:#615b72;background:#dedbe5;border-radius:50%;grid-row:span 2;place-items:center;width:27px;height:27px;font-size:13px;font-weight:1000;display:grid}.battle-choice b{overflow-wrap:anywhere;font-size:clamp(16px,2vw,21px);line-height:1.22}.battle-choice small{color:#7b7690;font-size:12px;font-weight:700;line-height:1.2}.battle-choice:hover,.battle-choice--selected{background:linear-gradient(#f7f3ff,#dcd5fa);border-color:#7464bd}.battle-choice--selected>span{color:#fff;background:#7464bd}.battle-choice--correct{background:#e1f7e9;border-color:#3c9e75}.battle-choice--wrong{color:#9b2020;background:#ffe4e2!important;border-color:#d13f3f!important}.battle-choice--wrong>span{color:#fff;background:#d13f3f}.battle-console .help-row{grid-column:1/-1;align-items:center;margin-top:0}.battle-console .help-button{min-height:47px}.battle-console .battle-submit{min-height:49px;margin-left:auto}.battle-console .battle-next{margin-top:0}.battle-console .hint-box,.battle-console .examples-box,.battle-console .feedback,.battle-console .save-status,.battle-console .speech-notice{grid-column:1/-1;margin-top:0}@media (width<=650px){.battle-stage{height:300px}.battle-status{width:59%;padding:8px 9px}.enemy-status{top:13px;left:10px}.player-status{bottom:12px;right:9px}.battle-sprite--enemy{top:91px;right:9%}.battle-sprite--player{bottom:38px;left:8%}.battle-console{grid-template-columns:1fr;gap:16px;padding:21px 16px}.battle-prompt h1{margin-top:12px;font-size:24px}.battle-choice-grid{grid-template-columns:1fr 1fr}.battle-choice{min-height:64px;padding:9px}.battle-console .help-row{grid-column:1}.battle-console .help-button{flex:auto}.battle-console .battle-submit{flex:1 0 100%;margin-left:0}.battle-topline{font-size:12px}}@media (width<=390px){.battle-stage{height:274px}.battle-name-row b{font-size:16px}.enemy-energy,.player-hearts{gap:5px}.heart-pip{font-size:17px}.battle-choice{grid-template-columns:22px minmax(0,1fr);gap:1px 6px;min-height:61px}.battle-choice>span{width:22px;height:22px;font-size:11px}.battle-choice b{font-size:16px}}@media (prefers-reduced-motion:reduce){.battle-stage--player-attack .battle-sprite--player,.battle-stage--player-attack .battle-sprite--enemy,.battle-stage--enemy-attack .battle-sprite--enemy,.battle-stage--enemy-attack .battle-sprite--player{animation:none}}.battle-sprite img{object-fit:contain;width:100%;height:100%;display:block}.battle-sprite--enemy{width:clamp(132px,18vw,174px);height:clamp(132px,18vw,174px);box-shadow:none;background:0 0;border:0;border-radius:0;top:54px;right:7%;overflow:visible}.battle-sprite--enemy img{border-radius:0}.battle-sprite--player{width:clamp(100px,14vw,138px);height:clamp(100px,14vw,138px);box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}@media (width<=650px){.battle-status{width:56%}.battle-sprite--enemy{width:126px;height:126px;top:48px;right:5%}.battle-sprite--player{width:105px;height:105px}}@media (width<=390px){.battle-sprite--enemy{width:116px;height:116px;top:45px;right:5%}.battle-sprite--player{width:94px;height:94px}.energy-pip{width:13px;height:14px;font-size:14px}}.battle-sprite--player:after{content:"";z-index:4;opacity:0;pointer-events:none;transform-origin:0;background:linear-gradient(#e8fdff 0 16%,#65dff4 24% 54%,#268fe1 64% 82%,#50b7ff1a 100%);border:3px solid #ffffffd1;border-radius:999px 70% 70% 999px;width:clamp(170px,58vw,500px);height:26px;position:absolute;top:17%;left:18%;transform:scaleX(0)scaleX(-1)rotate(-28deg);box-shadow:0 0 7px 3px #5fdbffcc,0 0 19px 7px #339df480}.battle-stage--player-attack .battle-sprite--player:after{animation:.72s cubic-bezier(.18,.72,.24,1) both water-cannon}.battle-sprite--enemy:after{content:"";z-index:3;aspect-ratio:1;opacity:0;pointer-events:none;filter:drop-shadow(0 0 8px #8ceaff);background:radial-gradient(circle,#fff 0 10%,#c8f8ff 20% 35%,#6cdbffbf 48%,#0000 70%);border-radius:50%;width:54px;position:absolute;top:38%;left:38%}.battle-stage--player-attack .battle-sprite--enemy:after{animation:.42s ease-out .36s both water-impact}@keyframes water-cannon{0%{opacity:0;transform:scaleX(0)scaleX(-1)rotate(-28deg)}14%{opacity:1;transform:scaleX(.2)scaleX(-1)rotate(-28deg)}62%{opacity:1;transform:scaleX(1)scaleX(-1)rotate(-28deg)}to{opacity:0;transform:scaleX(1)scaleX(-1)rotate(-28deg)}}@keyframes water-impact{0%{opacity:0;transform:scale(.2)}45%{opacity:1;transform:scale(1.5)}to{opacity:0;transform:scale(2.1)}}.battle-bubbles{z-index:2;pointer-events:none;position:absolute;inset:0}.battle-bubbles span{--bubble-start-x:27%;--bubble-start-y:64%;--bubble-end-x:79%;--bubble-end-y:34%;left:var(--bubble-start-x);top:var(--bubble-start-y);aspect-ratio:1;opacity:0;background:radial-gradient(circle at 32% 28%,#fff 0 12%,#bdf7ff 22%,#64cef0 65%,#38a9e5 100%);border:3px solid #fffffff2;border-radius:50%;width:clamp(18px,3.4vw,31px);position:absolute;transform:translate(-50%,-50%)scale(.35);box-shadow:0 0 10px 3px #4fceffa6,inset -3px -3px 5px #156ebd4d}.battle-bubbles span:nth-child(2){--bubble-start-y:68%;--bubble-end-y:29%;--bubble-delay:80ms;width:clamp(13px,2.5vw,24px)}.battle-bubbles span:nth-child(3){--bubble-start-x:24%;--bubble-end-x:75%;--bubble-end-y:39%;--bubble-delay:.16s;width:clamp(22px,4vw,36px)}.battle-bubbles span:nth-child(4){--bubble-start-y:61%;--bubble-end-x:82%;--bubble-end-y:31%;--bubble-delay:.24s;width:clamp(15px,2.8vw,25px)}.battle-bubbles span:nth-child(5){--bubble-start-x:29%;--bubble-end-x:77%;--bubble-end-y:36%;--bubble-delay:.32s;width:clamp(17px,3vw,29px)}.battle-bubbles span:nth-child(6){--bubble-start-y:67%;--bubble-end-x:83%;--bubble-end-y:35%;--bubble-delay:.4s;width:clamp(12px,2.2vw,21px)}.battle-stage--bubble-attack .battle-bubbles span{animation:bubble-flight .95s ease-out var(--bubble-delay,0s) both}.battle-stage--bubble-attack .battle-sprite--player{animation:.72s ease-in-out bubble-cast}.battle-stage--bubble-attack .battle-sprite--enemy{animation:.5s ease-in-out .75s enemy-hit}.battle-stage--bubble-attack .battle-sprite--enemy:after{background:radial-gradient(circle,#fff 0 13%,#c9faff 25%,#5cd8f8d1 48%,#0000 72%);animation:.46s ease-out .72s both water-impact}@keyframes bubble-flight{0%{opacity:0;left:var(--bubble-start-x);top:var(--bubble-start-y);transform:translate(-50%,-50%)scale(.35)}13%{opacity:1}76%{opacity:1}to{opacity:0;left:var(--bubble-end-x);top:var(--bubble-end-y);transform:translate(-50%,-50%)scale(1.3)}}@keyframes bubble-cast{0%,to{transform:scaleX(-1)rotate(-6deg)}25%{transform:translateY(-9px)scaleX(-1)rotate(-13deg)}55%{transform:translate(10px)scaleX(-1)rotate(1deg)}}@media (prefers-reduced-motion:reduce){.battle-stage--bubble-attack .battle-sprite--player,.battle-stage--bubble-attack .battle-sprite--enemy{opacity:1;animation:none}}.claw-launch{text-align:left;color:#4f477d;cursor:pointer;background:linear-gradient(110deg,#fff8d9,#fff 70%);border:2px solid #d7b76d;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:min(880px,100% - 32px);margin:0 auto 22px;padding:15px 20px;display:grid;box-shadow:0 5px #eadfbe}.claw-launch>span{font-size:34px}.claw-launch b{font-size:19px}.claw-launch small{color:#77718b;grid-column:2}.claw-launch strong{color:#638d50;grid-area:1/3/span 2}.free-practice-view{background:#fff;border-radius:26px;width:min(920px,100% - 32px);margin:24px auto 60px;padding:clamp(20px,4vw,40px);box-shadow:0 8px 28px #32285014}.free-practice-view>h1{color:#514985}.free-practice-view>p{color:#696579;line-height:1.7}.free-student-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:24px;display:grid}.free-student{color:#514985;cursor:pointer;background:#fffdfa;border:2px solid #e3dceb;border-radius:16px;justify-items:center;gap:6px;padding:15px 10px;display:grid}.free-student span{font-size:26px}.free-student small{color:#827d91}.free-practice-heading{color:#514985;background:#fff8df;border-radius:14px;justify-content:space-between;gap:12px;padding:12px 16px;display:flex}.claw-game{text-align:center;background:#fff8f5;border:2px solid #f4c9d0;border-radius:22px;width:min(560px,100%);margin:18px auto;padding:16px}.claw-machine{background:#ff6c75;border:7px solid #f45b68;border-radius:26px 26px 15px 15px;overflow:hidden;box-shadow:0 7px #d94355,inset 0 0 0 2px #ffffff59}.claw-machine__header{color:#fff;text-shadow:0 2px #b42d414d;letter-spacing:.04em;background:linear-gradient(#ff6976,#f34e60);justify-content:center;align-items:center;min-height:54px;padding:7px 12px;font-weight:900;display:flex;position:relative}.claw-machine__lights{gap:6px;display:flex;position:absolute;left:12px}.claw-machine__lights i{background:#54c5db;border:2px solid #ffffff80;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 2px #b42d411f}.claw-machine__lights i:nth-child(2){background:#ffd557}.claw-machine__lights i:nth-child(3){background:#7ad565}.claw-machine__lights i:nth-child(4){background:#8bd7ed}.claw-machine__lights i:nth-child(5){background:#d99bcc}.claw-machine__window{background:linear-gradient(120deg,#ffffffbf,#0000 25%),linear-gradient(#dff7ff,#effcff 76%,#f7d7d3 76%);border:5px solid #ed586a;border-top-width:7px;border-radius:5px 5px 12px 12px;min-height:195px;margin:0 8px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 3px #fffc}.claw-machine__glass-shine{z-index:1;pointer-events:none;background:#ffffff7a;border-radius:10px;width:13px;position:absolute;inset:7px auto 20px 8px;transform:skew(-13deg)}.claw-arm{z-index:2;color:#e3ae18;justify-items:center;width:24px;transition:left .2s;display:grid;position:absolute;top:0;transform:translate(-50%)}.claw-arm span{z-index:1;font-size:25px;font-weight:900;line-height:.8;position:relative}.claw-arm i{background:linear-gradient(90deg,#d2a500,#ffe34f,#c59000);border-radius:0 0 5px 5px;width:5px;height:45px;margin-top:-2px}.claw-arm--drop{animation:.42s ease-in-out claw-drop}@keyframes claw-drop{50%{transform:translate(-50%,25px)}}.claw-prizes{z-index:2;grid-template-columns:repeat(9,minmax(0,1fr));align-items:end;gap:2px;min-height:66px;display:grid;position:absolute;bottom:10px;left:8px;right:8px}.number-plush{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;min-width:0;min-height:51px;padding:2px 0;transition:transform .16s,filter .16s;display:grid}.number-ball{aspect-ratio:1;color:#fff;text-shadow:0 2px 2px #82233766;background:radial-gradient(circle at 30% 24%,#fff 0 5%,#f8a0a8 7%,#f45b71 48%,#d93756 100%);border:2px solid #fffffff2;border-radius:50%;place-items:center;width:clamp(31px,7vw,43px);font-size:clamp(18px,4vw,25px);font-weight:1000;line-height:1;display:grid;box-shadow:0 3px #93404c59,inset -3px -4px 7px #82233733,inset 2px 2px 5px #ffffff94}.number-ball--2{background:radial-gradient(circle at 30% 24%,#fff 0 5%,#ffc5b0 7%,#ff925e 50%,#e9653c 100%)}.number-ball--3{background:radial-gradient(circle at 30% 24%,#fff 0 5%,#fff0a3 7%,#ffc841 50%,#e79d1d 100%)}.number-ball--4{background:radial-gradient(circle at 30% 24%,#fff 0 5%,#d4f5a7 7%,#8ed45e 50%,#5baa45 100%)}.number-ball--5{background:radial-gradient(circle at 30% 24%,#fff 0 5%,#b7eff4 7%,#4ac5d0 50%,#2689a7 100%)}.number-ball--6{background:radial-gradient(circle at 30% 24%,#fff 0 5%,#c9d8ff 7%,#7c98ed 50%,#5965c1 100%)}.number-ball--7{background:radial-gradient(circle at 30% 24%,#fff 0 5%,#e8caff 7%,#b07fe2 50%,#8053be 100%)}.number-ball--8{background:radial-gradient(circle at 30% 24%,#fff 0 5%,#ffc6e3 7%,#ed77ad 50%,#cb4d83 100%)}.number-ball--9{background:radial-gradient(circle at 30% 24%,#fff 0 5%,#c9f1c4 7%,#79c99a 50%,#42976f 100%)}.number-plush:hover:not(:disabled){transform:translateY(-4px)scale(1.08)}.number-plush--selected{filter:drop-shadow(0 4px 2px #5d718f4d);transform:translateY(-7px)scale(1.12)}.number-plush--selected .number-ball{outline-offset:2px;outline:3px solid #ffcf50}.number-plush--caught .number-ball{opacity:.38;filter:grayscale(.55)}.number-plush:disabled{cursor:not-allowed}.number-plush:focus-visible{outline-offset:1px;outline:3px solid #4d78b9}.claw-machine__sill{z-index:3;background:linear-gradient(#ec6674,#ce4259);height:9px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -2px #ffffffa6}.claw-machine__controls{background:linear-gradient(#ff7180,#ef5367);justify-content:space-between;align-items:center;min-height:56px;padding:6px 16px;display:flex}.claw-machine__prize-door{background:linear-gradient(#ffe7dd 0 55%,#eecac1 56%);border:3px solid #e8b6ba;border-radius:8px 8px 3px 3px;place-items:center;width:68px;height:35px;display:grid;box-shadow:inset 0 -3px #8232371f}.claw-machine__prize-door span{font-size:22px}.claw-machine__joystick{justify-items:center;width:28px;height:39px;display:grid;position:relative}.claw-machine__joystick i{background:linear-gradient(90deg,#4f83bf,#b6e7f3,#4f83bf);border-radius:5px;width:7px;height:20px;margin-top:9px}.claw-machine__joystick b{background:radial-gradient(circle at 30% 25%,#fff,#59b8e4 58%,#2781b7);border:2px solid #fff;border-radius:50%;width:19px;height:19px;position:absolute;top:1px}.claw-machine__buttons{gap:8px;display:flex}.claw-machine__buttons i{background:radial-gradient(circle at 30% 25%,#fff,#ffd352 58%,#e99b35);border:2px solid #fffc;border-radius:50%;width:18px;height:18px;box-shadow:0 2px #8c37394d}.claw-machine__buttons i+i{background:radial-gradient(circle at 30% 25%,#fff,#69dcda 58%,#3e9fb5)}.claw-machine__tray{background:linear-gradient(#ef5367,#e94a61);justify-content:center;gap:14px;padding:9px 10px 12px;display:flex}.caught-prize{color:#fff;border:2px dashed #ffffffd9;border-radius:12px;place-items:center;min-width:59px;min-height:49px;padding:4px 10px;font-size:24px;font-weight:900;display:grid}.caught-prize--filled{background:#fff3;border-style:solid}.caught-prize .number-ball{width:37px;font-size:22px}.claw-machine{transform-style:preserve-3d;background:linear-gradient(90deg,#d94758 0,#ff8188 4%,#ff6c75 9% 91%,#ea4b5e 96%,#d94758 100%);position:relative;transform:perspective(1000px)rotateX(1.5deg);box-shadow:0 8px #d94355,0 16px 20px #803a4d38,inset 0 0 0 2px #fff6,inset 9px 0 12px #9c2b3e29,inset -9px 0 12px #9c2b3e33}.claw-machine:before,.claw-machine:after{z-index:5;content:"";pointer-events:none;background:linear-gradient(90deg,#ffffff6b,#ffffff05);border-radius:5px;width:8px;position:absolute;top:9px;bottom:10px}.claw-machine:before{left:4px}.claw-machine:after{right:4px;transform:scaleX(-1)}.claw-machine__header{background:linear-gradient(#ff8490 0,#ff6976 35%,#f34e60 100%);border-bottom:3px solid #ca354861;box-shadow:inset 0 3px 3px #ffffff40,inset 0 -3px #b12f4124}.claw-machine__window{background:linear-gradient(120deg,#ffffffc2,#0000 25%),linear-gradient(90deg,#437f9726,#0000 9% 91%,#437f9733),linear-gradient(#dff7ff,#effcff 76%,#f7d7d3 76%);box-shadow:inset 0 0 0 3px #fffc,inset 9px 0 12px #4287a01f,inset -9px 0 12px #4287a02b,0 4px #9b2f4442}.number-ball{isolation:isolate;color:#292833;position:relative;overflow:hidden;box-shadow:0 5px #93404c57,0 8px 8px #4152652e,inset -5px -6px 8px #6a192b42,inset 2px 2px 5px #ffffffa3}.number-ball:before{z-index:2;content:"";background:#ffffffad;border-radius:50%;width:25%;height:8%;position:absolute;top:10%;left:18%;transform:rotate(-28deg)}.number-ball:after{z-index:0;content:"";background:linear-gradient(90deg,#ffffff3d,#282c3d1a);border-radius:50%;width:10%;height:64%;position:absolute;top:18%;right:12%;transform:rotate(-16deg)}.number-ball__label{z-index:1;aspect-ratio:1;color:#292833;width:68%;text-shadow:none;background:radial-gradient(circle at 34% 28%,#fffef8,#f1eddf 75%,#ddd6c4);border:1px solid #5b524740;border-radius:50%;place-items:center;font-size:.82em;font-weight:1000;line-height:1;display:grid;position:relative;box-shadow:0 1px 3px #312b2759,inset 1px 1px 2px #ffffffe6}.claw-machine__controls{background:linear-gradient(#ff8790 0,#ff7180 25%,#ef5367 100%);border-top:3px solid #ffffff40;box-shadow:inset 0 4px 5px #fff3,inset 0 -5px #ae293d33}.claw-machine__prize-door{box-shadow:inset 0 3px 2px #ffffffb3,inset 0 -4px #82323724,0 2px #9c304342}.claw-machine__joystick i{box-shadow:1px 2px 2px #3552744d}.claw-machine__joystick b{box-shadow:0 3px #235a7d6b,inset -2px -2px 3px #14507847}.claw-machine__buttons i{box-shadow:0 3px #8c37394d,inset -2px -2px 3px #85521933}.claw-instruction{color:#514985;font-weight:800}.claw-equation{color:#514985;justify-content:center;gap:12px;font-size:28px;font-weight:900;display:flex}.claw-controls{justify-content:center;gap:10px;display:flex}.claw-control,.claw-drop{color:#fff;cursor:pointer;background:#6c9d73;border:0;border-radius:12px;min-height:46px;padding:8px 18px;font-size:17px;font-weight:900}.claw-control{background:#8272a5;min-width:54px}.claw-control:disabled,.claw-drop:disabled{opacity:.5}.claw-accessibility-note{color:#817a8f;margin:10px 0 0;font-size:13px}@media (width<=520px){.claw-launch{grid-template-columns:auto 1fr;padding:12px}.claw-launch strong{grid-area:auto/2}.claw-launch b{font-size:16px}.claw-game{padding:8px}.claw-machine{border-width:5px}.claw-machine__header{min-height:48px;padding-left:74px;font-size:14px}.claw-machine__lights{gap:4px;left:8px}.claw-machine__lights i{width:10px;height:10px}.claw-machine__window{min-height:172px;margin:0 5px}.claw-prizes{gap:0;left:4px;right:4px}.number-plush{min-height:44px}.number-ball{width:clamp(27px,8vw,36px);font-size:19px}.claw-machine__controls{min-height:48px;padding:5px 10px}.claw-machine__prize-door{width:55px;height:31px}.claw-machine__tray{gap:10px}.caught-prize{min-width:51px;min-height:44px;padding:2px 7px}.free-practice-heading{flex-direction:column}}@media (width>=1000px){.app-shell:has(.quiz-view){width:min(1440px,100%);padding:12px 22px 18px}.app-shell:has(.quiz-view) .site-header{margin-bottom:12px}.quiz-view:has(.battle-stage):has(.claw-game){background:#fff;border:2px solid #e8e0c8;border-radius:20px;grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr);align-items:start;gap:8px 18px;max-width:none;padding:14px;display:grid;box-shadow:0 7px #ede5ce}.quiz-view:has(.battle-stage):has(.claw-game)>.back-button{grid-area:1/1;padding:0 0 2px}.quiz-view:has(.battle-stage):has(.claw-game)>.battle-topline{grid-area:1/2;align-self:center;margin:0}.quiz-view:has(.battle-stage):has(.claw-game)>.battle-stage{border-radius:16px;grid-area:2/2;height:clamp(210px,28vh,245px);min-height:210px}:is(.quiz-view:has(.battle-stage):has(.claw-game)>.battle-console,.quiz-view:has(.battle-stage):has(.claw-game) .battle-prompt){display:contents}.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .question-top{grid-area:3/2}.quiz-view:has(.battle-stage):has(.claw-game) .battle-prompt>h1{grid-area:4/2;margin:0;font-size:clamp(20px,2vw,26px);line-height:1.28}.quiz-view:has(.battle-stage):has(.claw-game) .claw-game{grid-area:2/1/span 6;align-self:stretch;width:100%;max-width:none;margin:0;padding:10px}:is(.quiz-view:has(.battle-stage):has(.claw-game) .battle-choice-grid,.quiz-view:has(.battle-stage):has(.claw-game) .weight-select-message){grid-area:5/2}.quiz-view:has(.battle-stage):has(.claw-game) .battle-choice-grid{gap:8px}.quiz-view:has(.battle-stage):has(.claw-game) .battle-choice{min-height:54px;padding:7px 10px}.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .help-row{grid-area:6/2;margin:0}.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .help-button{min-height:40px;padding:8px 11px}.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .battle-submit{min-height:42px}:is(.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .speech-notice,.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .hint-box,.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .examples-box,.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .feedback,.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .save-status,.quiz-view:has(.battle-stage):has(.claw-game) .battle-console .action-row){grid-column:2;margin:0}.quiz-view:has(.battle-stage):has(.claw-game) .claw-machine__header{min-height:44px}.quiz-view:has(.battle-stage):has(.claw-game) .claw-machine__window{min-height:clamp(140px,20vh,175px)}.quiz-view:has(.battle-stage):has(.claw-game) .claw-machine__controls{min-height:44px}.quiz-view:has(.battle-stage):has(.claw-game) .claw-machine__tray{padding-top:5px;padding-bottom:7px}.quiz-view:has(.battle-stage):has(.claw-game) .claw-instruction{margin:7px 0 5px;font-size:15px}.quiz-view:has(.battle-stage):has(.claw-game) .claw-equation{margin:7px auto;font-size:23px}}@media (width<=999px){.quiz-view:has(.battle-stage):has(.claw-game){box-shadow:none;background:0 0;border:0;padding:0;display:block}}@media (width>=1000px){.quiz-view:has(.battle-stage):has(.claw-game)>.battle-stage{height:clamp(260px,32vh,290px);min-height:260px}.quiz-view:has(.battle-stage):has(.claw-game) .battle-sprite--enemy{top:58px}.quiz-view:has(.battle-stage):has(.claw-game) .battle-sprite--player{bottom:22px;left:14%}}@media (width>=651px){.battle-stage{height:clamp(330px,42vh,370px);min-height:330px}.battle-sprite--enemy{width:clamp(118px,13vw,138px);height:clamp(118px,13vw,138px);top:24px;right:9%}.battle-sprite--player{width:clamp(116px,14vw,140px);height:clamp(116px,14vw,140px);bottom:18px;left:10%}}@media (width>=1000px){.quiz-view:has(.battle-stage):has(.claw-game)>.battle-stage{height:clamp(330px,42vh,370px);min-height:330px}}@media (width<=650px){.battle-stage{height:340px}.battle-sprite--enemy{width:116px;height:116px;top:24px;right:5%}.battle-sprite--player{bottom:18px;left:7%}}.battle-stage--thunderbolt .battle-sprite--player{animation:.55s ease-in-out pikachu-charge}.battle-stage--thunderbolt .battle-sprite--enemy{animation:.7s ease-in-out .36s electric-hit}.battle-electric-bolts{z-index:5;pointer-events:none;position:absolute;inset:0}.battle-electric-bolts span{color:#ffe43b;opacity:0;filter:drop-shadow(0 0 7px #fff59a)drop-shadow(0 0 12px #ffc400);font-size:clamp(30px,6vw,68px);line-height:1;position:absolute;top:64%;left:20%}.battle-electric-bolts span:first-child{--end-x:75%;--end-y:30%;--delay:0s}.battle-electric-bolts span:nth-child(2){--end-x:82%;--end-y:34%;--delay:80ms}.battle-electric-bolts span:nth-child(3){--end-x:78%;--end-y:25%;--delay:.16s}.battle-electric-bolts span:nth-child(4){--end-x:72%;--end-y:37%;--delay:.24s}.battle-electric-bolts span:nth-child(5){--end-x:84%;--end-y:28%;--delay:.32s}.battle-stage--thunderbolt .battle-electric-bolts span{animation:thunderbolt-flight .62s cubic-bezier(.2,.7,.3,1) var(--delay) both}.battle-stage--thunderbolt .battle-sprite--enemy:after,.battle-stage--steel-tail .battle-sprite--enemy:after{content:"";opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:20%}.battle-stage--thunderbolt .battle-sprite--enemy:after{background:radial-gradient(circle,#fff 0 10%,#fff36b 22%,#ffd21ecc 48%,#0000 72%);animation:.5s ease-out .48s both electric-impact}.battle-steel-tail{z-index:4;opacity:0;transform-origin:0;clip-path:polygon(0 42%,88% 10%,100% 50%,88% 90%,0 58%);pointer-events:none;background:linear-gradient(#fff 0%,#aeb7c4 28%,#f8fbff 50%,#798697 75%,#e6edf6 100%);border:3px solid #fff;border-radius:90% 20% 75% 35%;width:clamp(100px,22vw,250px);height:clamp(18px,3vw,32px);position:absolute;top:62%;left:21%;transform:rotate(-20deg);box-shadow:0 0 8px #c9d8ec,0 0 18px #fff}.battle-stage--steel-tail .battle-steel-tail{animation:.68s cubic-bezier(.2,.7,.3,1) both steel-tail-swing}.battle-stage--steel-tail .battle-sprite--player{animation:.55s ease-in-out steel-swing}.battle-stage--steel-tail .battle-sprite--enemy{animation:.55s ease-in-out .35s enemy-hit}.battle-stage--steel-tail .battle-sprite--enemy:after{background:radial-gradient(circle,#fff 0 12%,#d9e7fa 28%,#96beebc7 50%,#0000 72%);animation:.45s ease-out .4s both electric-impact}@keyframes pikachu-charge{0%,to{transform:scaleX(-1)translate(0)}45%{transform:scaleX(-1)translate(10px)scale(1.08)}}@keyframes electric-hit{0%,to{filter:none;transform:translate(0)}25%{filter:brightness(1.8)sepia()saturate(4);transform:translate(-8px)}55%{filter:brightness(1.6);transform:translate(7px)}}@keyframes thunderbolt-flight{0%{opacity:0;top:64%;left:20%;transform:scale(.25)rotate(-15deg)}20%{opacity:1;transform:scale(1.2)rotate(10deg)}to{left:var(--end-x);top:var(--end-y);opacity:0;transform:scale(.75)rotate(-12deg)}}@keyframes electric-impact{0%{opacity:0;transform:scale(.2)}35%{opacity:1;transform:scale(1.2)}to{opacity:0;transform:scale(1.8)}}@keyframes steel-tail-swing{0%{opacity:0;top:67%;left:20%;transform:rotate(-26deg)scaleX(.2)}25%{opacity:1;transform:rotate(-5deg)scaleX(.75)}75%{opacity:1;top:35%;left:68%;transform:rotate(-12deg)scaleX(1)}to{opacity:0;top:32%;left:76%;transform:rotate(-16deg)scaleX(.9)}}@keyframes steel-swing{0%,to{transform:scaleX(-1)rotate(0)}35%{transform:scaleX(-1)rotate(-12deg)translateY(-4px)}70%{transform:scaleX(-1)rotate(8deg)}}@media (prefers-reduced-motion:reduce){.battle-stage--thunderbolt .battle-electric-bolts span,.battle-stage--thunderbolt .battle-sprite--player,.battle-stage--thunderbolt .battle-sprite--enemy,.battle-stage--steel-tail .battle-steel-tail,.battle-stage--steel-tail .battle-sprite--player,.battle-stage--steel-tail .battle-sprite--enemy{opacity:1;animation:none}}.vertical-multiplication{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin:0 auto 18px;display:flex}.vertical-multiplication__work{color:#453e61;text-align:right;background:#fffdf5;border:2px solid #d9d0ef;border-radius:16px;min-width:112px;padding:10px 18px;font:800 clamp(1.4rem,3vw,2rem)/1.3 ui-monospace,monospace;box-shadow:0 3px #c9bfdc}.vertical-multiplication__work span,.vertical-multiplication__work strong{display:block}.vertical-multiplication__topline{justify-content:flex-end;gap:0;display:flex!important}.vertical-digit{border:2px solid #0000;border-radius:50%;place-items:center;width:1ch;height:1.15em;transition:color .2s,background-color .2s,transform .2s;display:inline-grid!important}.vertical-digit--active{color:#c94c3c;background:#fff0dd;border-color:#e66d5b;animation:.85s ease-in-out infinite alternate vertical-digit-pulse;transform:scale(1.12)}@keyframes vertical-digit-pulse{0%{box-shadow:0 0 #e66d5b26}to{box-shadow:0 0 0 5px #e66d5b4d}}@media (prefers-reduced-motion:reduce){.vertical-digit--active{animation:none}}.vertical-multiplication__work b{color:#7661b4;margin-right:8px;font-size:.8em}.vertical-multiplication__work i{background:#80769b;border-radius:4px;height:3px;margin:5px -4px;display:block}.vertical-multiplication__work strong{color:#d47751}.vertical-multiplication p{color:#645d78;margin:0;font-size:.95rem;font-weight:700}@media (prefers-reduced-motion:reduce){.battle-stage--thunderbolt .battle-electric-bolts span,.battle-stage--thunderbolt .battle-sprite--player,.battle-stage--thunderbolt .battle-sprite--enemy,.battle-stage--steel-tail .battle-steel-tail,.battle-stage--steel-tail .battle-sprite--player,.battle-stage--steel-tail .battle-sprite--enemy{animation:none}}.claw-groups{width:100%;margin:10px 0}.claw-show-groups{color:#785d20;background:#fff1bd;border:0;border-radius:999px;padding:9px 15px;font-weight:900}.claw-groups__visual{background:#fffaf0;border-radius:14px;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px;max-height:230px;margin-top:10px;padding:10px;display:grid;overflow:auto}.claw-groups__group{background:#fff;border:2px solid #eddaa3;border-radius:12px;gap:5px;padding:8px;display:grid}.claw-groups__group span{flex-wrap:wrap;gap:2px;font-size:16px;display:flex}.claw-groups__visual>strong{color:#605389;text-align:center;grid-column:1/-1}.vertical-multiplication{justify-content:flex-start;gap:10px}.vertical-multiplication__guide{text-align:left;justify-items:start;gap:7px;max-width:230px;display:grid}.vertical-hint-button{color:#785d20;background:#fff1bd;border:0;border-radius:999px;padding:7px 11px;font-weight:900}.vertical-multiplication__guide p,.vertical-steps{color:#645d78;margin:0;font-size:13px;line-height:1.4}.vertical-steps{gap:5px;display:grid}.vertical-steps button{color:#5f4caa;background:#eee9ff;border:0;border-radius:9px;justify-self:start;padding:6px 9px;font-weight:800}.battle-choice-grid>.vertical-multiplication{grid-column:1/-1;margin:0 0 3px}@media (width<=520px){.vertical-multiplication__work{min-width:88px;padding:8px 12px}.vertical-multiplication__guide{max-width:180px}}.battle-prompt h1.read-point-target,.battle-choice.read-point-target{z-index:2;outline-offset:3px;outline:4px solid #ffd84d;position:relative}.battle-prompt h1.read-point-target{background:#fff7d6;border-radius:12px;width:auto;margin-left:0;padding:.35rem .55rem .35rem 2.65rem}.battle-prompt h1.read-point-target:before,.battle-choice.read-point-target:before{content:"➜";z-index:3;color:#51448f;filter:drop-shadow(0 1px 1px #fff);font-size:2.45rem;font-weight:1000;line-height:1;animation:.7s ease-in-out infinite alternate read-pointer-bob;position:absolute;top:50%;left:-2rem;transform:translateY(-50%)}.battle-prompt h1.read-point-target:before{left:.25rem}.battle-choice.read-point-target:before{font-size:2.15rem;left:-1.05rem}@keyframes read-pointer-bob{0%{translate:0 -3px}to{translate:4px 1px}}@media (prefers-reduced-motion:reduce){.battle-prompt h1.read-point-target:before,.battle-choice.read-point-target:before{animation:none}}.battle-prompt .question-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.battle-prompt .question-reading-row{align-items:flex-start;gap:12px;min-width:0;margin-top:14px;display:flex}.battle-prompt .question-reading-row h1{flex:180px;min-width:140px;margin:0}.battle-prompt .question-reading-row .read-aloud-button{color:#614b16;white-space:nowrap;cursor:pointer;background:#fff1bd;border:2px solid #e8cf85;flex:none;min-height:42px;padding:8px 14px}.battle-prompt .question-reading-row .read-aloud-button:focus-visible{outline-offset:3px;outline:3px solid #6755b9}@media (width<=380px){.battle-prompt .question-reading-row{flex-wrap:wrap}.battle-prompt .question-reading-row h1{flex-basis:100%}}.battle-with-voice{grid-template-columns:minmax(0,1fr) 170px;align-items:stretch;gap:12px;display:grid}.battle-with-voice .battle-stage{min-width:0}.battle-voice-panel{color:#51496d;background:#fffaf0;border:2px solid #ddd5ef;border-radius:16px;flex-direction:column;gap:9px;min-width:0;padding:13px;display:flex;box-shadow:0 4px #ebe2ce}.battle-voice-panel b{font-size:15px}.battle-voice-panel p{margin:0 0 4px;font-size:13px;font-weight:800;line-height:1.4}.battle-voice-panel button{color:#564c78;cursor:pointer;background:#fff;border:2px solid #b7a9db;border-radius:12px;min-height:45px;padding:8px 10px;font-family:inherit;font-size:14px;font-weight:800;line-height:1.25}.battle-voice-panel button[aria-pressed=true]{color:#53439f;background:#eee9ff;border-color:#725fc2}.battle-voice-panel button:focus-visible{outline-offset:2px;outline:3px solid #ffd84d}.battle-voice-panel small{color:#756e83;margin-top:auto;font-size:11px;line-height:1.4}@media (width<=850px){.battle-with-voice{grid-template-columns:1fr;gap:7px}.battle-voice-panel{flex-flow:wrap;align-items:center;gap:7px;padding:9px}.battle-voice-panel p{margin:0 auto 0 0}.battle-voice-panel button{min-height:40px}.battle-voice-panel small{flex-basis:100%}}button{font-size:max(1.08em,16px)!important}.battle-voice-panel button{justify-content:center;align-items:center;gap:8px;display:flex}.battle-voice-avatar,.battle-voice-avatar-placeholder{border-radius:50%;flex:0 0 32px;place-items:center;width:32px;height:32px;display:inline-grid}.battle-voice-avatar{object-fit:cover}.battle-voice-avatar-placeholder{background:#eee9ff;font-size:18px!important}.battle-with-voice{grid-template-columns:minmax(0,1fr) 232px}.battle-voice-panel button{white-space:nowrap;justify-content:flex-start;gap:9px;padding:8px 9px}.battle-voice-avatar,.battle-voice-avatar-placeholder{flex-basis:50px;width:50px;height:50px}@media (width<=850px){.battle-with-voice{grid-template-columns:1fr}.battle-voice-panel button{flex:none}}.battle-stage{perspective:900px;isolation:isolate;background:radial-gradient(at 17% 45%,#1f7d47d9 0 2%,#0000 2.5%),radial-gradient(at 26% 39%,#289149cc 0 5%,#0000 5.5%),radial-gradient(at 78% 41%,#197742cc 0 3%,#0000 3.5%),radial-gradient(at 87% 35%,#289149cc 0 6%,#0000 6.5%),linear-gradient(#7fc9eb 0%,#c7e9f0 36%,#b5e5a0 37%,#78cf77 54%,#42a960 100%);border-radius:20px}.battle-stage:before{z-index:0;filter:saturate(.9);background:radial-gradient(at 10% 75%,#26824d 0 8%,#0000 8.5%),radial-gradient(at 23% 80%,#409958 0 10%,#0000 10.5%),radial-gradient(at 77% 78%,#328d51 0 9%,#0000 9.5%),radial-gradient(at 94% 74%,#25804b 0 11%,#0000 11.5%),linear-gradient(#0000 72%,#ffffff38 73% 75%,#0000 76%);height:48%}.battle-stage:after{z-index:0;transform-origin:top;background:repeating-linear-gradient(90deg,#0000 0 6.5%,#ffffff17 6.6% 6.9%),radial-gradient(at 50% 0,#b6ed83 0 12%,#0000 12.5%),linear-gradient(#59c977,#289653);border:3px solid #1b7e4b73;border-radius:50% 50% 0 0;height:68%;bottom:-37%;left:-12%;right:-12%;transform:rotateX(22deg);box-shadow:inset 0 12px 20px #17733d24}.battle-sprite{border-color:#ffffffd1}.battle-sprite--enemy{z-index:2;filter:drop-shadow(0 14px 8px #1e482b57);background:radial-gradient(at 50% 65%,#2e80368c 0 43%,#0000 44%);border:0;border-radius:50%;width:clamp(100px,16vw,154px);height:clamp(100px,16vw,154px);top:27%;right:14%;transform:translateZ(-50px)rotateY(-9deg)rotate(3deg)scale(.88)}.battle-sprite--player{z-index:2;filter:drop-shadow(0 17px 9px #1e482b66);background:radial-gradient(at 50% 76%,#1e8540b8 0 44%,#0000 45%);border:0;border-radius:50%;width:clamp(120px,19vw,180px);height:clamp(120px,19vw,180px);bottom:10%;left:11%;transform:translateZ(65px)scaleX(-1)rotateY(8deg)rotate(-4deg)}.battle-sprite img{object-fit:contain;filter:drop-shadow(0 8px 4px #1e3c2757);width:82%;height:82%}.enemy-status{top:14px;left:14px}.player-status{bottom:13px;right:14px}.battle-notice{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}@media (width<=600px){.battle-stage{height:clamp(255px,72vw,340px)}.battle-sprite--enemy{width:clamp(92px,25vw,126px);height:clamp(92px,25vw,126px);top:29%;right:7%}.battle-sprite--player{width:clamp(106px,30vw,145px);height:clamp(106px,30vw,145px);bottom:9%;left:5%}.battle-status{width:min(230px,62%);padding:8px 9px}}@media (prefers-reduced-motion:reduce){.battle-sprite--enemy,.battle-sprite--player{transform:none}}.battle-stage--3d{background:#9bd9e9}.battle-stage--3d:before,.battle-stage--3d:after{display:none}.battle-3d{z-index:1;position:absolute;inset:0;overflow:hidden}.battle-3d canvas{width:100%;height:100%;display:block}.battle-3d>span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width>=1050px){.quiz-view:has(.battle-stage):not(:has(.claw-game)){grid-template-rows:auto auto auto;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);align-items:start;gap:10px 18px;max-width:1600px;margin:8px auto 20px;padding:14px 18px;display:grid}.app-shell:has(.quiz-view) .site-header{margin-bottom:6px}.quiz-view:has(.battle-stage):not(:has(.claw-game))>.back-button{grid-area:1/1;margin:0;padding:4px 0}.quiz-view:has(.battle-stage):not(:has(.claw-game))>.battle-topline{grid-area:1/2;align-self:center;margin:0}.quiz-view:has(.battle-stage):not(:has(.claw-game))>.battle-with-voice{flex-direction:column;grid-area:2/1;gap:7px;display:flex}.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-stage{height:clamp(255px,36vh,370px);min-height:255px}.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-voice-panel{grid-template-columns:1fr 1fr;align-items:center;gap:6px 9px;min-height:0;padding:8px 11px;display:grid}:is(.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-voice-panel>b,.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-voice-panel>p){grid-column:1/-1;margin:0}.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-voice-panel button{min-height:42px}.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-voice-panel small{grid-column:1/-1;margin:0}.quiz-view:has(.battle-stage):not(:has(.claw-game))>.battle-feedback-banner{grid-area:3/1;min-height:44px;margin:0;padding:7px 10px;font-size:16px}.quiz-view:has(.battle-stage):not(:has(.claw-game))>.battle-console{grid-area:2/2/span 2;align-self:start;margin:0;padding:16px}.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-console .battle-prompt .question-reading-row{margin-top:8px}.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-console .battle-prompt h1{font-size:clamp(22px,2vw,34px);line-height:1.2}.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-console .battle-choice-grid{gap:9px}.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-console .battle-choice{min-height:62px;padding:10px 14px}.quiz-view:has(.battle-stage):not(:has(.claw-game)) .battle-console .vertical-multiplication{margin:0 auto 8px}}.avatar-flow-card,.room-ready-card{background:#fff;border:2px solid #eee6ce;border-radius:26px;max-width:920px;margin:0 auto 28px;padding:clamp(20px,4vw,36px);box-shadow:0 7px #eee6ce}.avatar-flow-card>p:not(.eyebrow){color:#6b6880;font-size:17px;line-height:1.65}.avatar-studio{grid-template-columns:minmax(240px,.78fr) minmax(0,1.22fr);gap:16px;margin-top:20px;display:grid}.avatar-preview-card{text-align:center;background:linear-gradient(145deg,#eef9ff,#fff8e9);border:2px solid #d9cef3;border-radius:22px;flex-direction:column;grid-row:span 2;justify-content:center;align-items:center;gap:10px;min-height:300px;padding:18px;display:flex}.avatar-preview-card>b{color:#514985;font-size:21px}.avatar-preview-card>small{color:#746e8b;font-weight:700}.avatar-preview-scene{justify-content:center;align-items:center;gap:5px;width:100%;min-height:190px;display:flex;position:relative}.avatar-preview-character{background:#fff;border-radius:48%;place-items:center;width:135px;height:150px;font-size:100px;display:grid;box-shadow:0 7px #ded7eb}.avatar-preview-outfit{flex-direction:column;gap:7px;display:flex}.avatar-preview-outfit span{color:#fff;text-shadow:0 1px 2px #3338;border:2px solid #443d582e;border-radius:14px;place-items:center;width:72px;height:48px;font-size:12px;font-weight:900;display:grid}.avatar-preview-accessory{font-size:30px}.avatar-options-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.avatar-option{color:#514985;background:#fff;border:2px solid #ded7eb;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:83px;padding:9px;display:flex;position:relative}.avatar-option>span{font-size:28px}.avatar-option>b{font-size:14px}.avatar-option>i{border-radius:99px;width:24px;height:8px}.avatar-option--selected{background:#f1edff;border-color:#6d5bd0;box-shadow:0 3px #d7cafa}.avatar-option--locked{color:#9a96a3;opacity:.8;background:#f4f2f6}.avatar-option:disabled{cursor:not-allowed}.avatar-category-tabs{flex-wrap:wrap;align-content:start;gap:7px;display:flex}.avatar-tab{color:#5b5278;background:#fff;border:2px solid #ded7eb;border-radius:999px;padding:9px 13px;font-size:14px;font-weight:800}.avatar-tab--active{color:#fff;background:#6d5bd0;border-color:#6d5bd0}.wardrobe-progress-card{background:#fff8e5;border:2px solid #f0dfa8;border-radius:17px;grid-column:1/-1;padding:15px 17px}.wardrobe-progress-card>div{color:#514985;justify-content:space-between;gap:12px;display:flex}.wardrobe-progress-card strong{color:#b57b1d}.wardrobe-progress-card progress{accent-color:#77c9bb;width:100%;height:13px;margin-top:10px}.wardrobe-progress-card p{color:#6b6880;margin:7px 0 0;font-weight:700}.wardrobe-collection{grid-column:1/-1}.wardrobe-collection h2{color:#514985;margin:4px 0 10px;font-size:20px}.wardrobe-collection>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.wardrobe-item{color:#827d8c;text-align:center;background:#f5f3f7;border:2px solid #ded7eb;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:112px;padding:8px;display:flex}.wardrobe-item--unlocked{color:#3d806a;background:#edfbf5;border-color:#8ccbb9}.wardrobe-item>span{font-size:25px}.wardrobe-item>b{font-size:12px}.wardrobe-item>small{font-size:10px;font-weight:700}.avatar-drawing{grid-column:1/-1;gap:10px;display:grid}.avatar-template-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.avatar-template-row .avatar-option{min-height:68px}.avatar-template-row .avatar-option>span{font-size:24px}.avatar-drawing canvas{touch-action:none;background-color:#fffdf5;border:2px dashed #b6a7dc;border-radius:18px;width:100%;height:260px;display:block}.avatar-drawing-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.avatar-drawing-tools>div{gap:6px;margin-right:auto;display:flex}.avatar-color{border:2px solid #fff;border-radius:50%;width:28px;height:28px;box-shadow:0 0 0 1px #aaa}.avatar-color--selected{box-shadow:0 0 0 3px #6857bb}.avatar-save-button{grid-column:1/-1;justify-self:center;min-width:min(100%,360px)}.room-ready-card{max-width:700px}.room-ready-card>h1{margin-bottom:20px}.room-ready-avatar{background:#f8f5ff;border:2px solid #ded7eb;border-radius:18px;align-items:center;gap:16px;margin:20px 0;padding:17px;display:flex}.room-ready-avatar>span{background:#fff;border-radius:50%;place-items:center;width:90px;height:90px;font-size:62px;display:grid}.room-ready-avatar b,.room-ready-avatar small{color:#514985;display:block}.room-ready-avatar b{font-size:20px}.room-ready-avatar small{color:#777187;margin-top:5px}.completion-avatar{margin:4px auto 10px;font-size:62px}.wardrobe-reward-banner{color:#217858;background:#e7f8ef;border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:16px auto;padding:14px;font-weight:800;line-height:1.5;display:flex}.wardrobe-reward-banner--error{color:#b74940;background:#fff0ed}.room-wardrobe-points{z-index:1;margin-top:3px;font-size:11px;font-weight:800;display:block;position:relative}.teacher-wardrobe-section{background:#fff;border:2px solid #e8e0c8;border-radius:22px;margin:22px 0;padding:18px}.teacher-wardrobe-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.teacher-wardrobe-card{text-align:center;border:1px solid #e2dbee;border-radius:14px;flex-direction:column;align-items:center;gap:3px;padding:12px 6px;display:flex}.teacher-wardrobe-card>span{font-size:32px}.teacher-wardrobe-card>b{color:#514985}.teacher-wardrobe-card>small{color:#777187;font-size:12px}@media (width<=680px){.avatar-studio{grid-template-columns:1fr}.avatar-preview-card{grid-row:auto;min-height:220px}.avatar-preview-scene{min-height:150px}.avatar-preview-character{width:110px;height:120px;font-size:78px}.avatar-options-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.avatar-category-tabs{flex-wrap:nowrap;padding-bottom:4px;overflow:auto}.avatar-tab{white-space:nowrap;padding:8px 10px;font-size:12px}.wardrobe-collection>div{grid-template-columns:repeat(2,minmax(0,1fr))}.avatar-template-row{grid-template-columns:repeat(3,minmax(0,1fr))}.avatar-drawing canvas{height:220px}.teacher-wardrobe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-ready-avatar>span{width:68px;height:68px;font-size:48px}}.avatar-portrait{flex:none;place-items:center;font-size:1em;line-height:1;display:inline-grid}.avatar-portrait canvas{object-fit:contain;width:100%;height:100%;display:block}.door-knob .avatar-portrait{width:32px;height:32px;font-size:28px}.room-ready-avatar>.avatar-portrait{background:#fff;border-radius:50%;place-items:center;width:90px;height:90px;font-size:62px;display:grid}.teacher-wardrobe-card>span>.avatar-portrait{font-size:32px}.completion-avatar{background:#f8f4ff;border-radius:50%;place-items:center;width:76px;height:76px;margin:4px auto 10px;font-size:52px;display:grid}@media (width<=680px){.room-ready-avatar>.avatar-portrait{width:68px;height:68px;font-size:48px}}.avatar-studio{margin-top:20px;display:block}.avatar-editor-layout{grid-template-columns:minmax(290px,.85fr) minmax(0,1.15fr);align-items:start;gap:20px;display:grid}.avatar-preview-card{background:linear-gradient(160deg,#f4efff 0%,#fff9ec 58%,#edf8ef 100%);border:2px solid #d7c7e9;border-radius:26px;flex-direction:column;align-items:center;gap:9px;min-height:560px;padding:18px 20px 23px;display:flex;position:sticky;top:14px;box-shadow:0 7px #e9dfed}.avatar-preview-top{color:#746b92;justify-content:space-between;width:100%;font-size:13px;font-weight:900;display:flex}.avatar-preview-scene{background:radial-gradient(at 50% 75%,#d7ead5 0 29%,#0000 30%),linear-gradient(#eaf6ff,#faf8f0);border-radius:20px;place-items:center;width:100%;height:405px;min-height:0;display:grid;position:relative}.avatar-preview-scene .avatar-figure{filter:drop-shadow(0 9px 3px #63769a22);width:min(94%,340px);height:390px}.avatar-preview-card>b{font-size:24px}.avatar-preview-card>small{text-align:center;font-size:14px}.avatar-preview-score{color:#66539f;background:#fff;border-radius:999px;margin-top:auto;padding:10px 16px;font-size:15px;font-weight:900}.avatar-editor-controls{align-content:start;gap:15px;min-width:0;display:grid}.avatar-editor-controls .wardrobe-progress-card{grid-column:auto}.avatar-category-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.avatar-tab{white-space:normal;border-radius:14px;min-height:49px;padding:8px 10px;font-size:15px}.avatar-options-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.avatar-options-grid .avatar-option{gap:4px;min-height:166px;padding:8px 5px;overflow:hidden}.avatar-options-grid .avatar-option .avatar-figure{flex:none;width:90px;height:111px}.avatar-options-grid .avatar-option>b{font-size:15px}.avatar-options-grid .avatar-option>small{font-size:11px;line-height:1.2}.avatar-option--selected{border-width:3px;box-shadow:0 4px #d7cafa}.avatar-editor-controls .avatar-drawing{grid-column:auto}.avatar-drawing canvas{height:310px}.wardrobe-collection{margin-top:25px}.avatar-save-button{min-width:min(100%,360px);margin:22px auto 4px;display:block}.avatar-portrait .avatar-figure{width:100%;height:100%;display:block}@media (width<=760px){.avatar-editor-layout{grid-template-columns:1fr}.avatar-preview-card{min-height:0;position:static}.avatar-preview-scene{height:330px}.avatar-preview-scene .avatar-figure{height:315px}.avatar-category-tabs{grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.avatar-tab{font-size:13px}.avatar-options-grid .avatar-option{min-height:145px}.avatar-options-grid .avatar-option .avatar-figure{width:77px;height:95px}}@media (width<=430px){.avatar-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
