@font-face{font-family:Fredoka;src:url('assets/fredoka.ttf') format('truetype');font-display:swap;font-weight:300 700}*{box-sizing:border-box}html{background:#102f35}body{margin:0;color:#143b3a;font-family:Fredoka,system-ui,sans-serif;font-weight:400;background:linear-gradient(90deg,rgba(10,40,43,.88),rgba(10,40,43,.22)),url('assets/arena.webp') center/cover fixed;min-height:100dvh}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #e8aa3d;outline-offset:4px}button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}button:active:not(:disabled){transform:translateY(2px)}button:focus:not(:focus-visible){outline:none}img{max-width:100%;user-select:none}header{height:100px;max-width:1260px;padding:22px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:3;color:#fff9e7}.brand{border:0;background:transparent;color:inherit;text-align:left;padding:0;line-height:1}.brand>span{display:block;font:600 10px system-ui;letter-spacing:2.8px;margin-bottom:7px;color:#b1ded6}.brand strong{font-size:31px;font-weight:600;letter-spacing:-1px}.brand-star{font-size:25px;color:#f7c862;margin-left:8px}.header-right{display:flex;align-items:center;gap:10px}.star-total{padding:10px 16px;border-radius:40px;border:1px solid #b3d5ca45;background:#0c303c85;color:#f4ca6d;display:flex;gap:10px;align-items:center}.star-total b{font-size:19px;color:#fff8dd}.icon-button{width:42px;height:42px;border-radius:50%;background:#f6f3df14;color:#fff8e6;border:1px solid #c4e8dc55;font-size:24px}.parent{font-size:22px}.home{position:relative;max-width:1260px;margin:auto;min-height:calc(100dvh - 100px);padding:45px 40px 30px;display:grid;grid-template-columns:1fr 1.1fr;align-content:center;gap:25px}.hero-copy{position:relative;z-index:2;padding:25px 0}.eyebrow{font:700 10px system-ui;letter-spacing:2.2px;display:block;color:#57817b}.hero-copy .eyebrow{color:#bbddd1;display:flex;align-items:center;gap:9px;letter-spacing:1.5px}.eyebrow i{width:6px;height:6px;background:#f3cf6e;border-radius:50%}h1,h2,p{margin:0}.home h1{font-size:clamp(56px,5.8vw,82px);font-weight:550;letter-spacing:-2.5px;color:#fff7dc;line-height:1.02;margin:24px 0}.home h1 em{font-style:normal;color:#ffd475}.hero-copy>p{font-size:19px;line-height:1.55;color:#d2e6df}.subject-pills{display:flex;gap:8px;margin-top:27px;flex-wrap:wrap}.subject-pills>span{background:#143e4299;border:1px solid #9dc9b65c;padding:8px 12px;border-radius:40px;color:#ffd886;font-size:13px}.subject-pills b{font-size:12px;font-weight:450;color:#ecf3df;margin-left:5px}.home-actions{margin-top:32px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.cta{display:inline-flex;justify-content:center;gap:22px;align-items:center;padding:17px 24px;border-radius:15px;border:0;font-size:17px;font-weight:550;box-shadow:0 5px 0 #042e3330;transition:transform .12s;min-height:54px}.gold{background:linear-gradient(#ffe4a3,#f7bf58);color:#4c3715}.teal{background:linear-gradient(#278d83,#1a6b66);color:#fff9e4}.ghost,.how-link{border:0;background:transparent;color:#edf3db;padding:10px 0;font-size:14px}.ghost{text-decoration:underline;text-underline-offset:5px}.how-link{margin-top:15px;color:#b6d9cf}.dark{color:#476b65}.hero-scene{position:relative;min-height:460px;align-self:end}.sprite{object-fit:contain;object-position:center bottom;pointer-events:none}.hero-art{position:absolute;height:400px;width:280px;z-index:2;left:-20px;bottom:0;filter:drop-shadow(0 15px 13px #082c424d)}.golem-art{position:absolute;height:390px;width:310px;right:0;bottom:7px;filter:drop-shadow(0 12px 13px #082c424d)}.magic-ring{position:absolute;left:0;bottom:-8px;width:100%;height:130px;border-radius:50%;background:radial-gradient(ellipse,#83e7dd60,transparent 65%);border:2px solid #8be8ce4d;box-shadow:0 0 30px #b4f3d654,inset 0 0 20px #88e5e788;transform:rotate(-8deg)}.floating-label{position:absolute;right:10px;top:8px;background:#fff7dfed;border:1px solid #fff;padding:11px 18px 11px 11px;border-radius:40px;box-shadow:0 5px 15px #102f3540;transform:rotate(5deg);font-size:14px}.floating-label i{display:inline-flex;border-radius:50%;background:#ffcf71;width:28px;height:28px;align-items:center;justify-content:center;margin-right:6px;font-style:normal;color:#775019}.hero-caption{position:absolute;left:0;right:0;bottom:-34px;text-align:center;color:#e1efdb;font:600 9px system-ui;letter-spacing:2px}.hero-caption span{color:#f8cf78;margin:0 8px}.home-bottom{grid-column:1/-1;margin-top:44px;border-top:1px solid #b7d9c640;display:flex;align-items:center;gap:15px;padding:20px 0 0;color:#c4dfd6}.mini-avatar{height:60px;width:60px;background:#8ab7a535;border-radius:50%;display:flex;justify-content:center}.mini-avatar img{height:65px;margin-top:-5px}.home-bottom p{font-size:13px;line-height:1.7}.home-bottom b{font-weight:450;color:#fff3d5}.sample-tag{margin-left:auto;text-align:right;font:600 9px system-ui;letter-spacing:1.5px;line-height:1.8;color:#acd0c6}.sample-tag b{font-weight:400;letter-spacing:0;font-size:11px}.map{max-width:1150px;margin:auto;padding:30px 40px 50px;color:#f9f2da}.page-heading{display:flex;align-items:center;justify-content:space-between;margin:10px 0 30px;gap:20px}.page-heading .eyebrow{color:#a9d4ca}.page-heading h1{font-size:45px;font-weight:500;letter-spacing:-1px;margin:9px 0}.page-heading p{font-size:15px;color:#c4ded2}.small-button{border:1px solid #8cb5ae60;background:#fff9e718;border-radius:10px;color:inherit;font-size:13px;padding:9px 13px;min-height:38px}.campaign-path{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.stage-card{position:relative;border:1px solid #eaf9df9e;padding:16px;border-radius:24px;min-height:240px;background:linear-gradient(160deg,#e8f4e5eb,#aecfbaef);box-shadow:0 8px 25px #05272b3b;text-align:left;overflow:hidden;color:#24453e;transition:transform .2s}.stage-card:hover:not(:disabled){transform:translateY(-5px);border-color:#ffe5a5}.stage-card.locked{background:linear-gradient(160deg,#54716dc9,#28474bc9);border-color:#93b2a333;color:#c4d6ce}.stage-number{position:absolute;top:15px;left:17px;font-size:13px;font-weight:600;z-index:2}.stage-art{height:160px;margin-top:-3px}.stage-art img{height:100%;width:100%;filter:drop-shadow(0 7px 5px #133c3926)}.locked .stage-art{filter:grayscale(.8);opacity:.5}.stage-copy{display:block}.stage-copy small{font-size:10px;letter-spacing:1px;display:block}.stage-copy strong{font-weight:500;font-size:21px;display:block;margin:5px 0}.stars{display:flex;gap:4px}.stars i,.result-stars i{font-style:normal;color:#879e95}.stars .earned,.result-stars .earned{color:#d19c30;text-shadow:0 1px 0 #fff3c1}.stage-go{position:absolute;right:18px;bottom:20px;border:1px solid #5e9d8840;border-radius:50%;width:32px;height:32px;text-align:center;line-height:30px}.map-footer{display:flex;justify-content:space-between;margin:25px 0;color:#c8e0d4;font-size:13px}.map-footer button{background:transparent;color:#ffdd91;border:0;text-decoration:underline}.resume{display:flex;margin:auto}.battle{max-width:1080px;margin:auto;padding:0 30px 35px}.battle-nav{display:flex;align-items:center;justify-content:space-between;color:#edf4e4;gap:15px;height:52px}.battle-nav>span{font:600 10px system-ui;letter-spacing:1.2px;text-align:center}.battle-nav i{font-style:normal;color:#eaca85;margin:0 6px}.arena-scene{height:340px;position:relative;background:linear-gradient(#1d414519,transparent 25%,#16484400 80%,#173d42a6),url('assets/arena.webp') center 70%/cover;border-radius:26px 26px 0 0;border:1px solid #afdfd84d;border-bottom:0;overflow:hidden}.fighter-status{position:absolute;top:19px;width:35%;z-index:2;padding:11px 13px;background:#123c3ce6;color:#fff5d5;border:1px solid #a7d9c95e;border-radius:15px;box-shadow:0 3px 12px #143a3a26}.player-status{left:20px}.opponent-status{right:20px}.fighter-status>div:first-child{display:flex;justify-content:space-between;gap:8px;margin-bottom:7px;font-size:13px}.fighter-status b{font-weight:500}.fighter-status span{font-size:11px}.fighter-status>small{display:block;font:500 8px system-ui;letter-spacing:1px;margin-top:6px;color:#d3e9dd}.health{height:9px;background:#0b262e;border-radius:20px;overflow:hidden}.health i{height:100%;display:block;background:linear-gradient(90deg,#48a395,#b6e78b);border-radius:20px;transition:width .3s}.enemy-health i{background:linear-gradient(90deg,#de855c,#f7c77a)}.energy{display:flex;align-items:center;margin-top:3px;gap:3px}.energy i{font-style:normal;color:#638c88}.energy i.full{color:#ffe38e;text-shadow:0 0 7px #e9d59a88}.energy small{font:400 8px system-ui;margin-left:5px;color:#d4e9dc}.fighter{position:absolute;bottom:29px;height:217px;width:210px;display:flex;align-items:end;justify-content:center;z-index:1}.fighter img{height:100%;max-width:100%;filter:drop-shadow(0 8px 5px #13373c66)}.hero-fighter{left:13%}.enemy-fighter{right:12%}.ground-glow{position:absolute;bottom:-8px;width:85%;height:28px;border:2px solid #b1eddd99;border-radius:50%;box-shadow:0 0 12px #57decec9;z-index:-1;background:#254d4366}.enemy-fighter .ground-glow{border-color:#f3cf9d99;box-shadow:0 0 12px #f9b264ab}.duel-symbol{position:absolute;top:47%;left:50%;transform:translate(-50%,-50%);font-size:21px;color:#fff2b8;font-weight:550;text-shadow:0 2px 5px #194744}.intent{position:absolute;bottom:0;left:0;right:0;padding:10px 20px;display:flex;align-items:center;gap:10px;background:#113a3ce8;z-index:3;color:#d7f1e6;backdrop-filter:blur(10px);border-top:1px solid #b9e2cf40}.intent>span:first-child{font-size:22px;color:#f6cf84}.intent b{font-size:12px;font-weight:500;display:block}.intent small{display:block;font-size:11px;color:#b5d7cb;margin-top:2px}.intent.danger{background:#654323ed}.intent.danger small{color:#ffddb0}.turn-label{margin-left:auto;white-space:nowrap;font:500 10px system-ui;color:#c8dfd2}.control-panel{background:linear-gradient(140deg,#fffcef,#f2f3df);padding:24px 28px 25px;border-radius:0 0 26px 26px;min-height:255px;box-shadow:0 12px 28px #062a3355;border:1px solid #fef6d5}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.panel-heading h2{font-size:24px;font-weight:500;margin-top:5px;letter-spacing:-.5px}.step-chip{background:#e4eade;color:#607e72;padding:8px 12px;border-radius:20px;font-size:10px;white-space:nowrap}.step-chip i{font-style:normal;padding:0 6px}.action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.action-card{position:relative;border:1px solid #a4c5b8;padding:12px 8px;border-radius:17px;display:flex;flex-direction:column;align-items:center;color:#fffef0;background:#2b8178;box-shadow:0 4px 0 #164a493b}.action-card.blue{background:#477c9d;border-color:#81acbe}.action-card.pink{background:#b97385;border-color:#db9c9b}.action-card.gold{background:linear-gradient(140deg,#f9da8c,#e9b85c);border-color:#d3a346;color:#655025}.action-card b{font-size:17px;font-weight:500}.action-card small{font-size:10px;margin-top:4px;opacity:.85}.action-icon{font-size:30px;line-height:1.1;margin-bottom:5px}.action-card:disabled{filter:grayscale(.75);opacity:.52}.lock-caption{position:absolute;top:-8px;background:#50675c;color:#fffbe4;font-size:8px;padding:3px 7px;border-radius:20px}.panel-note{font-size:11px;color:#719086;margin-top:16px;text-align:center;line-height:1.5}.question-top{display:flex;align-items:center;gap:9px}.subject-tag{padding:6px 10px;background:#e1e9dc;font-size:10px;border-radius:20px;color:#4b7368}.chosen-power{font-size:11px;color:#729185}.question-top button{margin-left:auto;background:#e8eddc;color:#41655b;border:0;font-size:11px;min-height:32px}.question-text{text-align:center;font-weight:500;font-size:25px;margin:18px 0 20px;line-height:1.3;letter-spacing:-.3px}.question-text.math-text{font-size:42px;margin:13px 0 17px}.answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.answer{border:1px solid #b4cebc;background:#fffef6;border-radius:13px;padding:13px;display:flex;align-items:center;gap:12px;text-align:left;color:#2b5b50;min-height:52px;box-shadow:0 3px 0 #c2d0b545}.answer>span{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0;background:#edf1e4;border-radius:8px;font-size:12px;color:#7c9b8c}.answer>b{font-size:16px;font-weight:500}.answer:hover{border-color:#47917f;background:#eaf5e5}.sequence{display:flex;justify-content:center;align-items:center;gap:9px;margin:-3px 0 20px}.sequence>span{padding:9px 15px;background:#e6eddd;border-radius:10px;font-size:23px}.sequence>i{font-style:normal;color:#8ca394}.sequence .missing{background:#f8dda1;color:#9c6b20}.feedback{display:flex;align-items:center;gap:14px;margin:4px 0 18px}.feedback-icon{display:flex;width:54px;height:54px;align-items:center;justify-content:center;background:#cce4c7;border-radius:50%;font-size:30px;color:#4c9268;flex-shrink:0}.feedback.wrong .feedback-icon{background:#f6dfc4;color:#ab784c}.feedback h2{font-size:25px;font-weight:500;margin-top:6px}.explanation{font-size:17px;line-height:1.6;color:#56796b;max-width:710px}.feedback-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:22px}.feedback-bottom>span{font-size:12px;color:#718879;line-height:1.6}.feedback-bottom .cta{font-size:14px;white-space:nowrap;padding:14px 20px;min-height:46px}.float-number{position:absolute;top:45px;font-size:30px;z-index:4;text-shadow:0 3px 0 #143b3a,0 0 10px #143b3a;color:#fff9db;animation:float-up 1.3s both}.float-number.damage{color:#ffdf99}.result{display:flex;gap:20px;align-items:flex-start}.result-icon{font-size:70px;line-height:1;color:#e8b549;text-shadow:0 3px 0 #ac8d3c3b}.result h2{font-size:29px;font-weight:500;margin:7px 0 10px}.result p{font-size:14px;line-height:1.7;color:#6b8578}.result-stars{font-size:32px;margin:7px 0}.result-actions{display:flex;gap:20px;align-items:center;margin-top:15px}.result-actions .cta{font-size:14px;padding:13px 18px;min-height:46px}.cast img{animation:cast .45s}.hit img{animation:hit .4s}.particle{position:fixed;width:9px;height:9px;border-radius:3px;animation:particle .7s ease-out forwards;z-index:100;pointer-events:none}#fx{position:fixed;inset:0;pointer-events:none;z-index:20}#notice{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);max-width:min(90%,480px);width:max-content;padding:14px 19px;border-radius:14px;background:#113c3af5;color:#fff8df;font-size:13px;line-height:1.5;z-index:120;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}#notice.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid #fff7d6;max-width:500px;width:calc(100% - 32px);max-height:calc(100dvh - 36px);background:linear-gradient(145deg,#fffdf0,#eef1dd);color:#285247;border-radius:25px;padding:35px;box-shadow:0 20px 80px #0b333b70;overflow:auto}dialog::backdrop{background:#092d35b5;backdrop-filter:blur(5px)}.modal-close{position:absolute;top:12px;right:14px;width:31px;height:31px;display:flex;align-items:center;justify-content:center;font-size:26px;background:#d7e5d45e;color:#658675;border:0;border-radius:50%}dialog h2{font-size:32px;line-height:1.15;font-weight:500;letter-spacing:-.5px;margin:11px 0 16px}dialog p{font-size:15px;line-height:1.7;color:#678777}dialog .cta{margin-top:22px;width:100%;font-size:15px}.stage-intro{text-align:center}.stage-intro>img{height:170px;display:block;margin:0 auto 18px}.tip{padding:14px 17px;background:#ddebd8;border-radius:13px;color:#608270;font-size:12px;line-height:1.65;margin-top:19px;text-align:left}.replace-note{font-size:11px!important;background:#f8e9cb;border-radius:10px;padding:9px;margin-top:14px}.how-steps{display:flex;flex-direction:column;gap:17px;margin-top:23px}.how-steps p>b{font-size:15px;display:block;color:#3a6f5e;font-weight:500}.how-steps p>span{display:block;font-size:12px;margin-top:4px;line-height:1.7}.fine{font-size:10px!important;line-height:1.7!important;margin-top:16px!important;color:#7b9386!important}form label{display:block;font-size:25px;margin:20px 0 9px}input{background:#fffef7;border:1px solid #b9cdb7;border-radius:12px;width:100%;font-size:23px;padding:12px;color:#245c4c}.parent-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:23px 0}.parent-stats>div{padding:14px 6px;text-align:center;background:#e3ecda;border-radius:13px}.parent-stats b{font-size:23px;font-weight:500;display:block}.parent-stats small{font-size:9px;display:block;margin-top:4px;color:#71947d}.setting{font-size:13px;display:block;margin-top:20px}.setting select{display:block;width:100%;font-size:12px;background:#fffef5;border:1px solid #b4c6aa;border-radius:10px;padding:12px;margin-top:9px;color:#3b6855}.export{margin-top:18px;background:#e6ecd8;color:#4d7663;width:100%}@keyframes cast{40%{transform:translateX(25px) rotate(5deg)}75%{filter:drop-shadow(0 0 15px #d4ffff)}}@keyframes hit{25%,75%{transform:translateX(9px)}50%{transform:translateX(-9px);filter:brightness(1.5)}}@keyframes float-up{0%{opacity:0;transform:translateY(16px) scale(.7)}20%{opacity:1}90%{opacity:1}100%{opacity:0;transform:translateY(-30px) scale(1.1)}}@keyframes particle{to{transform:translate(var(--x),var(--y)) rotate(180deg);opacity:0}}
@media(min-width:1450px){.home{padding-top:65px;padding-bottom:50px}.hero-scene{min-height:500px}.hero-art{height:450px;width:300px}.golem-art{height:440px;width:330px}.arena-scene{height:370px}.fighter{height:245px}}
@media(max-width:900px){.home{grid-template-columns:1fr 1fr;padding:25px 30px}.hero-scene{min-height:390px}.hero-art{height:310px;width:220px;left:-20px}.golem-art{height:300px;width:240px;right:-20px}.floating-label{top:30px;font-size:11px}.home h1{font-size:62px}.home-actions{gap:12px}.hero-copy>p{font-size:17px}.home-bottom{margin-top:32px}.panel-heading h2{font-size:21px}.step-chip{display:none}.fighter{height:205px;width:180px}.hero-fighter{left:12%}.enemy-fighter{right:11%}.map{padding:20px 30px 40px}.page-heading h1{font-size:37px}}
@media(max-width:600px){body{background:linear-gradient(#0b3239b0,#0e323ce6),url('assets/arena.webp') center top/auto 100dvh fixed}header{height:78px;padding:16px 21px}.brand>span{font-size:7px;letter-spacing:2px;margin-bottom:6px}.brand strong{font-size:24px;letter-spacing:-.8px}.brand-star{font-size:20px}.header-right{gap:6px}.star-total{font-size:14px;padding:8px 12px;gap:8px}.star-total b{font-size:15px}.icon-button{width:34px;height:34px;font-size:20px}.home{padding:13px 23px 25px;display:flex;flex-direction:column;gap:0;min-height:calc(100dvh - 78px)}.hero-copy{padding:13px 0 0}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.3px}.home h1{font-size:53px;line-height:1.02;margin:18px 0 14px;letter-spacing:-1.8px}.hero-copy>p{font-size:15px;line-height:1.55}.subject-pills{gap:6px;margin-top:17px}.subject-pills>span{font-size:11px;padding:6px 10px}.subject-pills b{font-size:10px;margin-left:4px}.home-actions{margin-top:23px;gap:13px}.home-actions .cta{padding:14px 18px;font-size:15px;min-height:49px;gap:15px}.home-actions .ghost{font-size:11px}.how-link{font-size:11px;margin-top:9px}.hero-scene{width:100%;min-height:240px;margin-top:6px}.hero-art{height:242px;width:165px;left:3px;bottom:0}.golem-art{height:226px;width:188px;right:-1px;bottom:4px}.magic-ring{height:65px;bottom:0}.floating-label{right:2px;top:3px;font-size:10px;padding:6px 10px 6px 6px;z-index:3}.floating-label i{width:21px;height:21px;margin-right:4px}.hero-caption{font-size:6.5px;letter-spacing:1.4px;bottom:-18px}.hero-caption span{margin:0 4px}.home-bottom{margin-top:40px;padding-top:15px;gap:10px}.mini-avatar{height:41px;width:41px;flex-shrink:0}.mini-avatar img{height:46px}.home-bottom p{font-size:10px}.sample-tag{font-size:6px;line-height:1.8;letter-spacing:.8px}.sample-tag b{font-size:8px}.map{padding:17px 20px 30px}.page-heading{align-items:start;margin:7px 0 23px;gap:10px}.page-heading h1{font-size:31px;line-height:1.1;margin:10px 0}.page-heading .eyebrow{font-size:8px;letter-spacing:1.5px}.page-heading p{font-size:12px;max-width:215px;line-height:1.5}.page-heading .small-button{font-size:10px;padding:7px 9px;min-height:32px;margin-top:20px;white-space:nowrap}.campaign-path{grid-template-columns:1fr 1fr;gap:12px}.stage-card{min-height:204px;padding:13px;border-radius:20px}.stage-art{height:125px}.stage-number{top:12px;left:13px;font-size:10px}.stage-copy small{font-size:7px;letter-spacing:.7px;line-height:1.4}.stage-copy strong{font-size:16px;margin:5px 0}.stars{font-size:13px;gap:2px}.stage-go{width:25px;height:25px;font-size:13px;line-height:23px;right:11px;bottom:14px}.map-footer{font-size:10px;gap:10px;margin:20px 0}.resume{font-size:13px;padding:13px 15px}.battle{padding:0 12px 25px}.battle-nav{height:43px;gap:8px}.battle-nav>span{font-size:7px;letter-spacing:.6px}.battle-nav i{margin:0 3px}.battle-nav .small-button{font-size:10px;min-height:30px;padding:6px 10px}.arena-scene{height:283px;border-radius:20px 20px 0 0;background-position:center 75%}.fighter-status{top:13px;padding:9px 9px;width:43%;border-radius:12px}.player-status{left:10px}.opponent-status{right:10px}.fighter-status>div:first-child{font-size:11px;margin-bottom:6px;gap:5px}.fighter-status span{font-size:9px}.health{height:7px}.fighter-status>small{font-size:6px;margin-top:7px}.energy{margin-top:3px}.energy small{font-size:6px;margin-left:3px}.fighter{height:161px;width:145px;bottom:43px}.hero-fighter{left:5%}.enemy-fighter{right:4%}.duel-symbol{font-size:15px;top:54%}.intent{padding:8px 10px;gap:7px;min-height:43px}.intent>span:first-child{font-size:19px}.intent b{font-size:10px}.intent small{font-size:8px;line-height:1.3;max-width:230px}.turn-label{font-size:7px}.control-panel{padding:20px 17px 21px;border-radius:0 0 20px 20px;min-height:277px}.panel-heading{margin-bottom:20px}.panel-heading .eyebrow{font-size:8px;letter-spacing:1.6px}.panel-heading h2{font-size:20px;line-height:1.2;margin-top:7px}.action-grid{grid-template-columns:1fr 1fr;gap:11px}.action-card{padding:10px 6px;border-radius:14px;min-height:85px;display:grid;grid-template-columns:40px 1fr;grid-template-rows:1fr 1fr;text-align:left;column-gap:3px}.action-icon{grid-column:1;grid-row:1/3;font-size:33px;text-align:center;margin:0}.action-card b{font-size:16px;align-self:end}.action-card small{font-size:9px;margin:3px 0 0;align-self:start;line-height:1.4}.lock-caption{font-size:6px;top:-6px;right:5px;padding:2px 4px}.panel-note{font-size:9px;margin-top:16px;line-height:1.6}.question-text{font-size:22px;margin:22px 0;line-height:1.3}.question-text.math-text{font-size:39px;margin:18px 0}.subject-tag{font-size:8px;padding:6px 8px}.chosen-power{font-size:9px}.question-top{gap:6px}.question-top button{font-size:9px;padding:7px 8px;min-height:30px}.answer-grid{gap:9px}.answer{padding:11px 9px;gap:8px;min-height:59px;border-radius:12px}.answer>span{width:22px;height:22px;font-size:10px;border-radius:7px}.answer>b{font-size:14px;line-height:1.25;overflow-wrap:anywhere}.feedback{gap:11px;margin:3px 0 15px}.feedback-icon{width:39px;height:39px;font-size:24px}.feedback .eyebrow{font-size:7px;letter-spacing:1.1px}.feedback h2{font-size:21px;line-height:1.2}.explanation{font-size:15px;line-height:1.7}.feedback-bottom{flex-direction:column;align-items:stretch;gap:15px;margin-top:18px}.feedback-bottom>span{font-size:11px}.feedback-bottom .cta{font-size:14px;width:100%;padding:13px 15px}.float-number{font-size:24px;top:38px}.sequence{gap:6px;margin-bottom:18px}.sequence>span{padding:8px 12px;font-size:21px}.result{gap:11px}.result-icon{font-size:42px}.result h2{font-size:23px;margin:8px 0}.result .eyebrow{font-size:7px;letter-spacing:1.2px}.result p{font-size:12px;line-height:1.6}.result-stars{font-size:29px;margin:10px 0}.result-actions{flex-direction:column;align-items:stretch;gap:7px;margin-top:14px}.result-actions .cta{font-size:12px;min-height:43px;padding:12px}.result-actions .ghost{font-size:12px;text-align:center}dialog{padding:32px 24px;border-radius:23px}dialog h2{font-size:29px}dialog p{font-size:14px}.stage-intro>img{height:155px;margin-bottom:16px}.stage-intro>.eyebrow{font-size:8px;letter-spacing:1.3px}.stage-intro h2{font-size:30px}.how-steps{gap:14px}.how-steps p>b{font-size:14px}.how-steps p>span{font-size:12px}.tip{font-size:11px;padding:12px 14px}.setting select{font-size:11px}.parent-stats b{font-size:21px}.parent-stats small{font-size:8px}}
@media(max-width:370px){.home{padding-inline:18px}.home h1{font-size:47px}.home-actions{gap:10px}.home-actions .cta{font-size:13px;padding:13px 14px}.home-actions .ghost{font-size:10px}.hero-art{width:150px;height:220px}.golem-art{width:175px;height:205px}.hero-scene{min-height:220px}.fighter{width:125px;height:150px}.fighter-status>div:first-child{font-size:10px}.fighter-status span{font-size:8px}.arena-scene{height:273px}.stage-copy strong{font-size:14px}.action-card b{font-size:14px}.answer>b{font-size:12px}.answer{gap:5px;padding:9px 7px}.control-panel{padding-inline:13px}.brand strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.combat-fx{position:absolute;inset:0;pointer-events:none;z-index:5;overflow:hidden}.magic-bolt,.enemy-bolt{position:absolute;top:52%;left:25%;font-style:normal;font-size:45px;color:#f9e8a2;text-shadow:0 0 10px #fff,0 0 25px #a0f5ec;animation:bolt .6s ease-in both}.magic-bolt.super-bolt{font-size:70px;color:#adfff0}.enemy-bolt{left:auto;right:25%;font-size:35px;color:#ffcf91;animation:enemy-bolt .6s .4s ease-in both;text-shadow:0 0 15px #ffd7a6}.shield-bubble{position:absolute;width:25%;height:59%;left:15%;bottom:15%;border:4px solid #a6efff;border-radius:50%;background:radial-gradient(ellipse,#b2eeff07,#acf1ff44);box-shadow:0 0 25px #9ee7f5,inset 0 0 20px #adfff4;animation:shield 1.3s both}.heal-burst{position:absolute;left:25%;top:43%;font-style:normal;font-size:70px;color:#edb4d2;text-shadow:0 0 20px #fef2ff;animation:healing 1.3s both}@keyframes bolt{0%{opacity:0;transform:translateX(0) scale(.4)}15%{opacity:1}80%{opacity:1}100%{opacity:0;left:70%;transform:scale(1.5)}}@keyframes enemy-bolt{0%{opacity:0;transform:scale(.4)}15%{opacity:1}80%{opacity:1}100%{opacity:0;right:70%;transform:scale(1.5)}}@keyframes shield{0%{opacity:0;transform:scale(.7)}20%,75%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.1)}}@keyframes healing{0%{opacity:0;transform:translateY(20px) scale(.6)}20%{opacity:1}100%{opacity:0;transform:translateY(-60px) scale(1.2)}}@media(max-width:600px){.shield-bubble{left:7%;width:37%;bottom:16%;height:56%}.magic-bolt,.enemy-bolt{font-size:34px}.magic-bolt.super-bolt{font-size:52px}.heal-burst{left:19%;font-size:50px}}@media(prefers-reduced-motion:reduce){.combat-fx{display:none}}
