:root{--ink:#17243e;--muted:#6f7c93;--purple:#d92f35;--purple-dark:#ad1f28;--lav:#fff0ed;--blue:#2f9cff;--coral:#ff7043;--green:#23b87d;--amber:#ffbd3d;--red:#e6383e;--navy:#10274c;--gold:#ffd34f;--card:#fff;--bg:#f5f8ff;--shadow:0 16px 45px rgba(23,50,95,.14);font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:var(--ink)}
*{box-sizing:border-box}
body{margin:0;background:linear-gradient(180deg,#eaf2ff 0,#fbfcff 36%,#f5f8ff 100%);min-height:100vh;padding-top:env(safe-area-inset-top)}
button,input,select{font:inherit}
button{cursor:pointer}
.sky{position:fixed;inset:0;pointer-events:none;overflow:hidden;color:#fff;opacity:.7}
.sky span{position:absolute}.sky span:nth-child(1){left:6%;top:10%;font-size:24px}.sky span:nth-child(2){right:12%;top:8%;font-size:30px}.sky span:nth-child(3){left:14%;top:32%;color:#d6d0ff}.sky span:nth-child(4){right:5%;top:38%;font-size:20px}.sky span:nth-child(5){left:3%;top:67%;color:#e6e1ff}
.app-shell{width:min(100%,980px);margin:auto;padding:0 24px calc(110px + env(safe-area-inset-bottom));position:relative}
.topbar{height:90px;display:flex;align-items:center;justify-content:space-between}
.brand{border:0;background:transparent;display:flex;align-items:center;gap:10px;color:var(--ink);text-align:left;padding:0}.brand-mark{width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,#ef3b3f,#a91422);color:var(--gold);display:grid;place-items:center;font-size:18px;font-weight:1000;box-shadow:0 8px 25px rgba(190,31,40,.24)}.brand b{font-size:18px;display:block}.brand small{color:var(--muted)}
.score-pill{display:flex;align-items:center;gap:8px;background:#fff;border:2px solid #ebe7ff;border-radius:999px;padding:9px 15px;box-shadow:0 8px 25px rgba(78,64,146,.08)}.score-pill b{font-size:18px}
.view{display:none;animation:rise .3s ease}.view.active{display:block}@keyframes rise{from{opacity:0;transform:translateY(8px)}}
.hero-card{min-height:350px;border-radius:34px;background-image:linear-gradient(90deg,rgba(7,25,55,.98) 0%,rgba(7,25,55,.88) 34%,rgba(7,25,55,.3) 55%,rgba(7,25,55,.04) 72%),url("assets/hero-victory-banner-v3.png");background-size:cover;background-position:center right;box-shadow:0 22px 50px rgba(16,39,76,.3);color:#fff;padding:46px 52px;display:flex;justify-content:space-between;overflow:hidden;position:relative}.hero-card:after{content:"";position:absolute;width:260px;height:260px;border:44px solid rgba(255,211,79,.07);border-radius:50%;right:-60px;top:-80px}.hero-card>div{position:relative;z-index:1}.hero-card>div:first-child{max-width:48%}.eyebrow{font-size:12px;font-weight:900;letter-spacing:2px;color:#d92f35;margin:0 0 12px}.hero-card .eyebrow{color:#91d1ff}.hero-card h1{font-size:42px;line-height:1.2;margin:0}.hero-card h1 em{font-style:normal;color:var(--gold)}.hero-card p:not(.eyebrow){opacity:.9;margin:15px 0 24px}.primary,.secondary,.danger,.file-button{border:0;border-radius:15px;font-weight:800;min-height:46px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:.18s}.primary{background:var(--purple);color:#fff;box-shadow:0 8px 18px rgba(202,38,47,.25)}.primary:hover{background:var(--purple-dark);transform:translateY(-1px)}.hero-card .primary{background:var(--gold);color:#4a2700;box-shadow:0 8px 22px rgba(255,211,79,.25)}.big{min-height:55px;padding:0 26px;gap:22px}.secondary{background:var(--lav);color:var(--purple);border:1px solid #ffd1ca}.secondary:disabled{color:#a7a1bd;background:#f2f0f7;border-color:#e7e4ee;cursor:not-allowed}.danger{background:#fff0f1;color:#d94352;border:1px solid #ffcdd2}
.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:22px 0 34px}.stats-grid article{background:#fff;border:1px solid #ece9fa;border-radius:20px;padding:17px;display:flex;align-items:center;gap:11px;box-shadow:0 8px 30px rgba(78,64,146,.06)}.stat-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;font-weight:900;flex:0 0 auto}.stat-icon.blue{background:#e9f5ff;color:var(--blue)}.stat-icon.green{background:#e7fbf3;color:var(--green)}.stat-icon.amber{background:#fff5dc;color:#dc9010}.stat-icon.red{background:#ffecee;color:var(--red)}.stat-icon.purple{background:#f0edff;color:var(--purple)}.stats-grid b{display:block;font-size:23px}.stats-grid small{color:var(--muted)}
h2{font-size:21px}.mode-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.mode-card{text-align:left;background:#fff;border:2px solid transparent;border-radius:22px;padding:22px;box-shadow:0 9px 30px rgba(23,50,95,.08);position:relative;min-height:142px;color:var(--ink);transition:.2s}.mode-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.mode-card.purple:hover{border-color:#f0a0a4}.mode-card.coral:hover{border-color:#ffb2b0}.mode-card.blue:hover{border-color:#a5d3ff}.mode-card.survival:hover{border-color:#ffd868}.mode-card.survival{background:linear-gradient(135deg,#fff,#fff8dc)}.mode-emoji{font-size:31px;display:block;margin-bottom:12px}.mode-card b{display:block;font-size:18px}.mode-card small{display:block;color:var(--muted);line-height:1.5;margin-top:5px}.mode-card i{position:absolute;right:14px;top:14px;background:#ffe7e4;color:var(--purple);font-style:normal;font-size:11px;font-weight:800;border-radius:999px;padding:4px 8px}
.reward-card{margin-top:25px;background:linear-gradient(135deg,#fff9df,#fff);border:2px solid #ffe07a;border-radius:25px;padding:24px;box-shadow:0 10px 35px rgba(136,91,0,.1)}.reward-head,.reward-head>div{display:flex;align-items:center;justify-content:space-between}.reward-head>div{justify-content:flex-start;gap:11px}.reward-head>div>span{font-size:34px}.reward-head small,.reward-head b{display:block}.reward-head small{color:#a46c00}.reward-head strong{font-size:14px;color:#9b6810}.reward-rule{margin:15px 0 10px;color:#795b1d;font-size:14px}.meter{height:10px;background:#eceaf3;border-radius:999px;overflow:hidden}.meter>div{height:100%;width:0;background:linear-gradient(90deg,#e62f35,#ffd34f);border-radius:inherit;transition:.35s}.reward-card>.meter{margin:12px 0 16px}.reward-card button{width:100%}
.quiz-top{display:flex;align-items:center;gap:16px;max-width:720px;margin:10px auto 22px}.icon-button{border:0;background:#fff;width:45px;height:45px;border-radius:14px;color:var(--ink);font-size:22px;box-shadow:0 6px 20px rgba(78,64,146,.09)}.session-progress{flex:1;display:flex;align-items:center;gap:11px}.session-progress>div:first-child{font-weight:800}.session-progress .meter{flex:1}.combo{font-weight:900;background:#fff6db;color:#d88800;border-radius:13px;padding:10px 12px}
.quiz-card{max-width:720px;margin:auto;background:#fff;border:1px solid #eae7f8;border-radius:30px;padding:28px 42px 35px;box-shadow:var(--shadow);text-align:center;min-height:500px}.question-meta{display:flex;justify-content:space-between;align-items:center}.question-meta span{background:#f1eeff;color:var(--purple);border-radius:999px;padding:6px 11px;font-size:12px;font-weight:800}.question-meta span:last-child{background:#fff4dc;color:#cc8210}.question-hint{color:var(--muted);margin:34px 0 7px}.quiz-card h2{font-size:39px;margin:0 0 16px}.visual-prompt{font-size:110px;min-height:150px;display:grid;place-items:center;margin:8px auto -2px}.visual-prompt img{width:190px;height:150px;object-fit:cover;border-radius:22px;box-shadow:0 8px 22px rgba(50,42,98,.14)}.speak-button{border:0;background:#eef7ff;color:#377fbd;border-radius:999px;padding:8px 14px;margin-bottom:17px}.answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.answer{min-height:62px;border:2px solid #ebe8f5;background:#fff;border-radius:17px;color:var(--ink);font-weight:800;padding:10px;transition:.15s}.answer:hover{border-color:#a99ff1;background:#faf9ff}.answer.correct{border-color:#40c694;background:#e9fbf4;color:#16855d}.answer.wrong{border-color:#ff767e;background:#fff0f1;color:#cf3f4b}.answer:disabled{cursor:default}.feedback{min-height:25px;font-weight:800;margin-top:15px}.feedback.good{color:#179266}.feedback.bad{color:#d84a55}.next{display:flex;margin:17px auto 0;min-width:210px}.hidden{display:none!important}
.result-card{max-width:570px;margin:25px auto;background:#fff;border-radius:32px;padding:35px;text-align:center;box-shadow:var(--shadow)}.result-badge{font-size:78px}.result-card h1{font-size:37px;margin:5px}.result-card>p:not(.eyebrow){color:var(--muted)}.result-score{margin:25px auto;background:#fff7df;border-radius:18px;padding:16px;max-width:300px}.result-score span,.result-score b{display:block}.result-score b{color:#d78c11;font-size:29px;margin-top:3px}.result-details{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.result-details div{background:#f8f7fc;border-radius:17px;padding:14px}.result-details b,.result-details small{display:block}.result-details b{font-size:22px}.result-details small{color:var(--muted);margin-top:4px}.result-card .primary{width:100%}.text-button{border:0;background:transparent;color:var(--muted);padding:15px}
.section-title{display:flex;justify-content:space-between;align-items:end;margin:20px 0}.section-title h1{margin:0;font-size:34px}.section-title>span{background:#fff;border-radius:999px;padding:8px 13px;color:var(--muted);font-size:13px}.toolbar{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-bottom:16px}.toolbar input,.toolbar select,.panel input{width:100%;height:48px;border:1px solid #ddd9ed;border-radius:14px;background:#fff;padding:0 14px;color:var(--ink);outline:none}.toolbar input:focus,.toolbar select:focus,.panel input:focus{border-color:#988bea;box-shadow:0 0 0 3px #e9e5ff}.word-list{display:grid;gap:10px}.word-row{background:#fff;border:1px solid #ece9f7;border-radius:17px;padding:14px 17px;display:grid;grid-template-columns:55px 1fr 150px 110px;align-items:center;gap:12px}.word-picture{font-size:34px;text-align:center}.word-main b{font-size:18px;display:block}.word-main small{color:var(--muted)}.status-badge{justify-self:start;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.status-mastered{background:#e7fbf3;color:#188a62}.status-learning{background:#fff4dc;color:#bf790d}.status-weak{background:#ffecee;color:#d44250}.word-rate{text-align:right;color:var(--muted);font-size:13px}.empty{background:#fff;border-radius:20px;padding:40px;text-align:center;color:var(--muted)}
.parent-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel{background:#fff;border:1px solid #eae7f7;border-radius:23px;padding:24px;box-shadow:0 8px 28px rgba(78,64,146,.06)}.panel h2{margin-top:0}.panel p,.panel li{color:var(--muted);line-height:1.7}.panel label:not(.file-button){font-size:13px;font-weight:800;display:block;margin:12px 0}.panel label input{display:block;margin-top:6px}.panel .primary,.panel .secondary,.file-button{width:100%;margin:5px 0}.text-link{display:block;text-align:center;color:var(--purple);font-weight:800;font-size:13px;padding:12px}.inline-status{font-size:13px;text-align:center;color:var(--green);min-height:18px}.danger-panel{border-color:#ffe0e3}
.bottom-nav{position:fixed;z-index:10;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(calc(100% - 32px),520px);height:72px;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border:1px solid #e8e5f5;border-radius:24px;box-shadow:0 16px 40px rgba(54,44,105,.16);display:grid;grid-template-columns:repeat(3,1fr);padding:7px}.bottom-nav button{border:0;background:transparent;border-radius:17px;color:#858da1;font-size:12px;font-weight:800}.bottom-nav button span{display:block;font-size:20px;margin-bottom:2px}.bottom-nav button.active{background:#eeebff;color:var(--purple)}
.toast{position:fixed;z-index:30;left:50%;bottom:105px;transform:translate(-50%,20px);background:#27314a;color:#fff;padding:12px 18px;border-radius:999px;opacity:0;pointer-events:none;transition:.25s;box-shadow:0 10px 25px rgba(0,0,0,.18)}.toast.show{opacity:1;transform:translate(-50%,0)}
.install-panel{background:linear-gradient(145deg,#fff,#fff6e3);border-color:#ffe195}.install-state{display:flex;align-items:center;gap:9px;background:#fff8df;color:#936617;border-radius:14px;padding:11px 13px;margin:13px 0}.install-state span{color:#ffbd3d}.install-state.ready{background:#e8faf3;color:#167e59}.install-state.ready span{color:#23b87d}.install-guide{width:min(calc(100% - 32px),430px);border:0;border-radius:28px;padding:30px;color:var(--ink);box-shadow:0 25px 80px rgba(10,25,55,.34)}.install-guide::backdrop{background:rgba(7,20,43,.7);backdrop-filter:blur(5px)}.install-guide[open]{animation:guideIn .2s ease}.dialog-close{position:absolute;right:16px;top:14px;border:0;background:#f2f3f8;width:38px;height:38px;border-radius:50%;font-size:24px;color:#657087}.install-icon{width:82px;height:82px;border-radius:22px;overflow:hidden;box-shadow:0 12px 26px rgba(173,31,40,.23);margin-bottom:17px}.install-icon img{display:block;width:100%;height:100%}.install-guide h2{font-size:24px;margin:4px 0 20px}.install-guide ol{list-style:none;padding:0;margin:0 0 23px;display:grid;gap:12px;counter-reset:install}.install-guide li{counter-increment:install;position:relative;padding:13px 13px 13px 52px;background:#f7f8fc;border-radius:16px;min-height:58px}.install-guide li:before{content:counter(install);position:absolute;left:13px;top:13px;width:28px;height:28px;border-radius:9px;background:#d92f35;color:#fff;display:grid;place-items:center;font-weight:900}.install-guide li b,.install-guide li small{display:block}.install-guide li small{color:var(--muted);margin-top:4px;line-height:1.45}.install-guide>.primary{width:100%}@keyframes guideIn{from{opacity:0;transform:translateY(12px) scale(.98)}}
.word-main .phonetic{font-size:13px;font-weight:500;font-style:normal;color:#78869e;margin-left:5px}
.question-phonetic{font-size:20px;color:#77849a;margin:0 0 10px}.answer.image-answer{min-height:156px;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;overflow:hidden}.option-visual{height:100px;width:100%;display:grid;place-items:center;font-size:72px;line-height:1}.option-visual img{width:100%;height:100%;object-fit:contain;border-radius:13px}.color-swatch{display:block;width:88px;height:88px;border-radius:24px;border:3px solid rgba(23,36,62,.12);box-shadow:inset 0 0 0 3px rgba(255,255,255,.7),0 7px 16px rgba(23,36,62,.13)}.option-caption{height:0;opacity:0;color:inherit;transition:.2s}.answer.show-caption .option-caption{height:auto;opacity:1}.status-unrated{background:#eaf5ff;color:#2c7dbb}
.reward-zone{margin-top:28px}.reward-zone-title,.reward-zone-title>div{display:flex;align-items:center;justify-content:space-between}.reward-zone-title>div{justify-content:flex-start;gap:10px}.reward-zone-title>div>span{font-size:33px}.reward-zone-title small{display:block;color:#a46c00;font-size:10px;letter-spacing:1.2px;font-weight:900}.reward-zone-title h2{margin:2px 0 14px}.reward-zone-title>b{font-size:12px;color:#a46c00}.reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.reward-zone .reward-card{margin-top:0;padding:16px;display:flex;flex-direction:column}.reward-image{width:100%;height:145px;object-fit:contain;background:#fff;border-radius:17px;margin-bottom:14px}.reward-zone .reward-head{align-items:flex-start;gap:8px}.reward-zone .reward-head>div{align-items:flex-start}.reward-zone .reward-head>div>span{font-size:25px}.reward-zone .reward-head b{line-height:1.35}.reward-zone .reward-head strong{font-size:11px;white-space:nowrap}.reward-zone .reward-rule{font-size:12px;line-height:1.55;min-height:58px}.reward-zone .reward-card button{font-size:12px;margin-top:auto;padding:0 10px}.reward-points{border-color:#8ed3ff;background:linear-gradient(135deg,#eef9ff,#fff)}.reward-points .meter>div{background:linear-gradient(90deg,#2f9cff,#4ed6c2)}.reward-ultimate{border-color:#8db8ff;background:linear-gradient(135deg,#eef3ff,#fff2f4)}.reward-ultimate .meter>div{background:linear-gradient(90deg,#1769d2,#e6383e)}
@media(max-width:720px){.app-shell{padding:0 15px 105px}.topbar{height:73px}.brand small{display:none}.hero-card{padding:30px 24px;min-height:340px;background-position:63% center;background-image:linear-gradient(90deg,rgba(7,25,55,.98) 0%,rgba(7,25,55,.92) 40%,rgba(7,25,55,.46) 60%,rgba(7,25,55,.08) 82%),url("assets/hero-victory-banner-v3.png")}.hero-card h1{font-size:31px}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid article:last-child{grid-column:1/-1}.mode-grid{grid-template-columns:1fr}.mode-card{min-height:125px}.quiz-card{padding:24px 17px;min-height:480px}.quiz-card h2{font-size:32px}.answer-grid{grid-template-columns:1fr 1fr;gap:10px}.answer.image-answer{min-height:132px}.option-visual{height:82px;font-size:61px}.color-swatch{width:72px;height:72px;border-radius:19px}.reward-grid{grid-template-columns:1fr}.reward-zone .reward-rule{min-height:0}.reward-image{height:170px}.parent-grid{grid-template-columns:1fr}.toolbar{grid-template-columns:1fr}.word-row{grid-template-columns:48px 1fr 125px}.word-rate{display:none}}
@media(max-width:420px){.hero-card{padding:27px 20px;min-height:480px;background-image:linear-gradient(180deg,rgba(7,25,55,.98) 0%,rgba(7,25,55,.92) 34%,rgba(7,25,55,.42) 55%,rgba(7,25,55,.04) 78%),linear-gradient(90deg,rgba(7,25,55,.42),transparent 72%),url("assets/hero-victory-mobile-v4.png");background-position:center;background-size:cover}.hero-card>div:first-child{max-width:58%}.hero-card h1{font-size:27px}.hero-card p:not(.eyebrow){font-size:13px}.hero-card .big{position:absolute;left:0;bottom:0;padding:0 14px;gap:8px;font-size:13px}.stats-grid article{padding:14px;gap:9px}.word-row{grid-template-columns:42px 1fr}.status-badge{grid-column:2}.quiz-card{min-height:520px}.answer{min-height:56px}}

/* Real-photo answer cards and automatic wordbook sync */
.sync-status{margin-top:8px;padding:10px 12px;border-radius:12px;background:#f1f6ff;color:#55708e;text-align:center;font-size:12px;line-height:1.5}
.word-row{grid-template-columns:66px 1fr 150px 110px}
.word-picture{width:58px;height:48px;border-radius:11px;overflow:hidden;background:#eef2f8;display:grid;place-items:center;color:var(--muted);font-size:10px}
.word-picture img{width:100%;height:100%;object-fit:cover;display:block}
.answer.image-answer{min-height:176px;padding:9px}
.option-visual{position:relative;height:126px;background:#fff;border:2px solid #edf0f5;border-radius:14px;overflow:hidden;font-size:0}
.option-visual img{width:100%;height:100%;object-fit:contain;display:block;border-radius:12px;padding:6px;background:#fff}
.option-visual.photo-loading:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(100deg,#edf1f6 20%,#fff 42%,#edf1f6 64%);background-size:220% 100%;animation:photoPulse 1.2s infinite}
.option-visual.photo-error{padding:15px;color:#7b879a;font-size:12px;line-height:1.45}
.image-credit{position:absolute;z-index:2;right:5px;bottom:5px;padding:3px 5px;border-radius:7px;background:rgba(12,24,43,.68);color:#fff;font-size:8px;line-height:1;text-decoration:none;opacity:.72}
.external-button{display:block;text-align:center;text-decoration:none}.publish-panel small{display:block;color:var(--muted);line-height:1.6;margin-top:10px}.attribution-panel .text-link{text-align:left;padding-left:0}
@keyframes photoPulse{to{background-position:-220% 0}}
@media(max-width:720px){.quiz-card{min-height:500px}.answer.image-answer{min-height:154px}.option-visual{height:108px}.word-row{grid-template-columns:58px 1fr 125px}}
@media(max-width:420px){.word-row{grid-template-columns:58px 1fr}.option-visual{height:102px}.answer.image-answer{min-height:148px}}

/* THREE MATH CHALLENGE */
.math-hero .eyebrow{color:#ffd76a}.math-stats article{min-width:0}
.math-quiz-card{min-height:500px}.math-question{font-size:clamp(44px,9vw,72px)!important;letter-spacing:2px;margin:42px 0!important;font-variant-numeric:tabular-nums}
.math-answer-grid{grid-template-columns:repeat(2,1fr)}.math-answer{font-size:38px;font-weight:1000;min-height:92px;color:#1e3155;font-variant-numeric:tabular-nums}
.math-answer.correct{background:#e8fff2;border-color:#38be7c;color:#157348}.math-answer.wrong{background:#fff0f1;border-color:#ef5a68;color:#bd2637}
.math-visual{display:grid;grid-template-columns:minmax(90px,1fr) auto minmax(90px,1fr) auto;align-items:center;gap:12px;margin:28px auto;max-width:680px}
.object-group{display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:4px;min-height:130px;padding:12px;background:#fff9e9;border:2px solid #ffe083;border-radius:22px}
.object-group>span{font-size:31px;line-height:1}.math-operator{font-size:36px;color:var(--purple)}.zero-box{font-size:42px!important;font-weight:1000;color:#53627c}
.object-answer{min-height:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:10px}.answer-objects{display:flex;flex-wrap:wrap;justify-content:center;gap:1px;max-width:190px}.answer-objects>span{font-size:22px;line-height:1}.object-answer small{font-size:14px;color:#758096}
.level-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.level-card{display:grid;grid-template-columns:52px 1fr;gap:13px;align-items:start;background:#fff;border:1px solid #eae7f7;border-radius:22px;padding:20px;box-shadow:0 8px 28px rgba(78,64,146,.06)}.level-card>span{font-size:34px}.level-card small,.level-card b,.level-card em{display:block}.level-card small{color:var(--muted)}.level-card b{font-size:20px;margin:4px 0 12px}.level-card em{font-size:12px;color:var(--muted);font-style:normal;margin-top:7px}.mistake-list{display:flex;flex-wrap:wrap;gap:9px}.mistake-chip{padding:10px 13px;border-radius:13px;background:#fff0f1;color:#bd2637;font-weight:900}.mistake-panel{margin-bottom:20px}.external-button{display:block;text-align:center;text-decoration:none}
@media(max-width:720px){.level-progress{grid-template-columns:1fr}.math-visual{grid-template-columns:minmax(70px,1fr) auto minmax(70px,1fr);gap:7px}.math-visual>.math-operator:last-child{grid-column:1/-1}.object-group{min-height:105px;padding:8px}.object-group>span{font-size:25px}.math-answer{min-height:80px;font-size:32px}.object-answer{min-height:128px}.answer-objects>span{font-size:19px}}
@media(max-width:420px){.math-question{font-size:43px!important;margin:35px 0!important}.math-visual{margin:20px auto}.object-group{min-height:96px}.object-group>span{font-size:22px}.math-operator{font-size:28px}.answer-objects>span{font-size:17px}.math-answer-grid{gap:10px}}
