
:root{color-scheme:dark;--bg:#10141f;--panel:#191f2c;--line:#303747;--text:#f4f2ed;--muted:#a2abba;--lime:#c2f88a;--teal:#83e5d5;--coral:#ffab97;font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 30%,#23283650,transparent 65%),var(--bg);color:var(--text);font-size:14px}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--lime);outline-offset:5px}a{color:inherit;text-decoration:none}button{color:inherit}button:active:not(:disabled){transform:translateY(1px)}.wrap{max-width:1320px;margin:auto;padding:0 40px}.topbar{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2a303c;gap:24px}.brand{display:flex;align-items:center;gap:12px;letter-spacing:1.8px;font-size:22px;font-weight:850}.brand-light{font-weight:400;color:#dddfe4}.brand small{display:block;font-size:8px;letter-spacing:1.6px;color:var(--muted);margin-top:6px}.topbar nav{display:flex;gap:6px;padding:5px;border:1px solid #2b3240;border-radius:12px;background:#151a25}.nav-tab{border:0;background:none;color:var(--muted);padding:11px 22px;border-radius:8px;font-weight:600}.nav-tab.active{background:#323a49;color:var(--text);box-shadow:0 2px 6px #0002}.nav-tab span{font-size:10px;margin-left:6px;color:var(--lime)}.utility{display:flex;gap:9px}.icon-button,.quiet{border:1px solid #364050;background:#1d2430;border-radius:9px;padding:10px 14px;min-height:42px}.icon-button{font-size:18px}.icon-button span{font-size:10px;padding-left:5px}.intro{display:flex;justify-content:space-between;align-items:center;padding:34px 0 28px;gap:24px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--muted);display:flex;align-items:center;gap:7px;margin:0}.live-dot{display:inline-block;width:6px;height:6px;background:var(--lime);border-radius:50%;flex:none}h1{font-size:32px;letter-spacing:-1px;line-height:1.3;margin:12px 0 7px;font-weight:700}h1 em{font-style:normal;color:#c1c6d0;font-weight:400}.intro p{margin:0;color:var(--muted)}.setup{display:flex;align-items:center;gap:10px}.setup label{font-size:11px;color:var(--muted)}select{border:1px solid #3a4352;border-radius:9px;background:#1d2430;color:var(--text);padding:11px 30px 11px 12px;min-height:44px}.arena{border:1px solid #39414e;border-radius:18px;background:#171d29;overflow:hidden;box-shadow:0 16px 60px #0002}.arena-top,.arena-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:9px;letter-spacing:1.4px;padding:13px 24px;border-bottom:1px solid var(--line)}.arena-top>span:first-child{color:#d2d7e0;font-weight:700}.tiny-diamond{color:var(--lime);margin-right:6px}.text-button{border:0;background:none;padding:4px;color:var(--muted);font-size:11px;min-height:24px}.battle-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,1.26fr) minmax(0,1fr);gap:30px;padding:26px 28px 20px;background-image:radial-gradient(#3a415340 .8px,transparent .8px);background-size:16px 16px}.fighter{--accent:var(--teal);min-width:0}.coral{--accent:var(--coral)}.fighter-top{display:flex;justify-content:space-between;align-items:center}.fighter-top .eyebrow{color:var(--accent);font-size:9px;letter-spacing:1.5px}h2{font-size:27px;letter-spacing:-.7px;margin:5px 0 17px;font-weight:700}.fighter-symbol{font-size:24px;color:var(--accent);height:45px;width:45px;display:grid;place-items:center;border:1px solid #486a6d;border-radius:50%}.coral .fighter-symbol{border-color:#78575d}.health-copy{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1.2px;color:var(--muted)}.health-copy strong{font-size:13px;letter-spacing:0;color:var(--text)}.health-copy small{font-weight:400;color:var(--muted);font-size:10px}.health{height:8px;border-radius:10px;background:#323b48;margin-top:8px;overflow:hidden}.health>span{display:block;width:100%;height:100%;border-radius:10px;background:var(--accent);transition:width .25s ease}.portrait{height:225px;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse,#57bca217 0,transparent 67%);margin:8px -10px 0}.portrait img{width:260px;height:225px;max-width:100%;position:relative;z-index:1}.coral .portrait{background:radial-gradient(ellipse,#ef9f841a 0,transparent 67%)}.portrait-tag{position:absolute;bottom:0;left:50%;transform:translateX(-50%);white-space:nowrap;color:var(--accent);font-size:8px;letter-spacing:1.8px}.power-row{display:flex;justify-content:space-between;margin:18px 0 22px;font-size:11px;color:var(--accent);gap:5px}.power-row small{font-size:8px;color:var(--muted);letter-spacing:.8px;margin-left:5px}.input-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:6px}.input-label strong{font-size:11px;font-weight:600}.input-label>span{font-size:8px;letter-spacing:.4px;color:var(--muted)}.answers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.answers button{min-width:0;min-height:67px;border:1px solid #426061;border-radius:10px;background:#233a3f;color:var(--teal);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:background .15s,transform .15s}.answers button:hover:not(:disabled){background:#35565a;border-color:var(--teal)}.coral .answers button{background:#412e36;color:var(--coral);border-color:#684650}.coral .answers button:hover:not(:disabled){background:#613e49;border-color:var(--coral)}kbd{font-size:9px;font-family:inherit;color:#c8d4d5;font-weight:500}.answers b{font-size:22px;font-weight:650}.player-feedback{min-height:14px;font-size:10px;color:var(--muted);text-align:center;margin:12px 0 0}.challenge{display:flex;align-items:center;flex-direction:column;min-width:0}.versus{display:flex;align-items:center;justify-content:center;gap:15px;width:100%;height:56px;margin-bottom:17px}.versus span{height:1px;background:linear-gradient(90deg,transparent,#64717e);width:35px}.versus span:last-child{transform:scaleX(-1)}.versus b{font-style:italic;font-size:24px;color:#b6c1cc;letter-spacing:1px}.question-card{width:100%;max-width:360px;background:#f0eddf;color:#212c35;border-radius:14px;padding:18px 23px 0;box-shadow:0 6px 0 #b3b5a9,0 12px 35px #0002;position:relative}.question-top{display:flex;justify-content:space-between;font-size:9px;font-weight:700;letter-spacing:1.2px;color:#5d6d6b}.question-top span:last-child{background:#dcded0;padding:4px 6px;border-radius:4px;margin-top:-3px}.question-card>p{text-align:center;font-size:12px;color:#68746f;margin:22px 0 17px}.equation{font-family:ui-rounded,"Arial Rounded MT Bold","Segoe UI",sans-serif;font-size:55px;font-weight:750;text-align:center;letter-spacing:1px;line-height:1.15;white-space:nowrap}.equation span{font-weight:400;color:#6c8177}.equals{font-size:28px;color:#839287;text-align:center;margin:10px 0 23px}.equals span{display:inline-grid;place-items:center;width:43px;height:43px;border:2px dashed #94a399;border-radius:9px;font-size:29px;margin-left:7px;color:#3a5a4b}.question-footer{border-top:1px solid #ccd1c5;padding:14px 0;text-align:center;font-size:8px;letter-spacing:1.2px;font-weight:650;color:#6d7a6f}.question-footer>span{color:#658472;font-size:12px;margin-right:4px}.match-status{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:24px;min-height:36px}.match-status p{font-size:11px;margin:0;color:#c2cad2;text-align:center;line-height:1.5}.primary{border:0;border-radius:9px;background:var(--lime);color:#233225;padding:15px 20px;font-weight:700;font-size:14px;min-height:48px;width:100%;max-width:300px;box-shadow:0 3px 0 #749650}.primary span{float:right}.primary:hover{background:#d5ffa8}.shared-hint{font-size:10px;line-height:1.6;color:var(--muted);text-align:center;margin:15px 0 0}.arena-bottom{border-top:1px solid var(--line);border-bottom:0;padding:10px 24px;font-size:8px;background:#1b2230}.arena-bottom>span:first-child{display:flex;align-items:center;gap:8px}.arena-bottom i{width:5px;height:5px;border-radius:50%;background:var(--teal)}.rule-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:26px 0}.rule-strip>div{display:flex;align-items:center;gap:12px}.rule-strip>div>span{border:1px solid #3b4552;color:#cad1db;border-radius:9px;width:34px;height:34px;display:grid;place-items:center;font-size:10px;flex:none}.rule-strip p{margin:0;font-size:10px;color:var(--muted);line-height:1.8}.rule-strip strong{display:block;color:#d6dce4;font-size:11px;font-weight:600}footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #2b3240;padding:22px 0 24px;font-size:9px;letter-spacing:.3px;color:#bac2cd}.footer-muted{color:var(--muted);margin-left:9px}footer a{text-decoration:underline;text-underline-offset:3px;color:var(--lime)}[hidden]{display:none!important}.skip{position:absolute;left:10px;top:-80px;padding:12px;background:var(--lime);color:#152020;z-index:100}.skip:focus{top:10px}dialog{border:1px solid #536070;border-radius:18px;padding:30px;background:#1b2330;color:var(--text);max-width:540px;width:calc(100% - 28px);box-shadow:0 30px 150px #0008}dialog::backdrop{background:#070c16c9;backdrop-filter:blur(5px)}dialog h2{font-size:27px}dialog p,dialog li{color:#bac6d3;line-height:1.65}dialog button{margin:8px 6px 0 0}dialog label{display:block;margin:18px 0}.modal-close{margin-top:20px}.campaign-map{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:20px}.campaign-card{background:#202938;border:1px solid #394659;border-radius:10px;padding:12px;text-align:left;min-height:90px}.campaign-card strong{display:block;font-size:13px;margin:8px 0}.campaign-card small{color:var(--muted);font-size:9px}.campaign-card.selected{border-color:var(--lime)}.explanation{max-width:360px;padding:14px;border:1px solid #55685a;border-radius:9px;background:#253831;font-size:12px;line-height:1.6;margin:12px 0}.hit{animation:hit .3s ease}.locked .answers{opacity:.5}.locked .player-feedback{color:#ffc2ac}.practice .battle-grid{grid-template-columns:1fr 1.2fr}.practice #player-1{display:none}.practice .challenge{grid-column:2}.practice #player-0{grid-column:1}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat{padding:12px;background:#293445;border-radius:9px}.stat strong{display:block;font-size:24px;color:var(--lime)}.stat small{color:var(--muted)}.save-note{font-size:10px}.setting-row{display:flex!important;align-items:center;gap:10px}.setting-row input{width:20px;height:20px;accent-color:var(--lime)}@keyframes hit{50%{filter:brightness(1.6);transform:translateY(-3px)}}.reduced-motion *{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(min-width:1400px){.wrap{max-width:1400px;padding:0 60px}.portrait{height:238px}.portrait img{height:238px;width:275px}.battle-grid{gap:40px;padding:28px 34px 24px}.intro{padding:36px 0 30px}}@media(max-width:1050px){.wrap{padding:0 24px}.topbar{height:90px}.brand{font-size:18px}.nav-tab{padding:10px 15px}.battle-grid{gap:18px;padding:22px 20px 18px;grid-template-columns:1fr 1.12fr 1fr}.input-label{align-items:start;flex-direction:column}.answers{grid-template-columns:repeat(2,1fr)}.answers button{min-height:48px;flex-direction:row;justify-content:space-around}.portrait{height:200px}.portrait img{height:200px}.equation{font-size:44px}.question-card{padding:17px 15px 0}.question-footer{font-size:7px}.intro h1{font-size:27px}.setup{flex-wrap:wrap;justify-content:flex-end}.setup label{display:none}.rule-strip{gap:10px}.rule-strip p{font-size:9px}.power-row{margin-bottom:16px}}@media(max-width:720px){.wrap{padding:0 16px}.topbar{flex-wrap:wrap;height:auto;padding-top:18px;padding-bottom:14px;gap:16px}.brand{font-size:19px}.brand small{font-size:7px}.topbar nav{order:3;width:100%;justify-content:center}.nav-tab{flex:1}.utility{margin-left:auto}.icon-button{padding:7px 10px;min-height:40px}.intro{padding:24px 0 20px;display:block}.intro h1{font-size:25px}.intro p{font-size:12px}.intro .eyebrow{font-size:8px}.setup{justify-content:flex-start;margin-top:18px}.setup label{display:inline;font-size:10px}.setup select{font-size:12px}.setup #pause{margin-left:auto}.arena{border-radius:13px}.arena-top{padding:9px 12px;letter-spacing:.7px;font-size:8px}.arena-top>span:nth-child(2){display:none}.battle-grid{grid-template-columns:1fr 1fr;gap:16px;padding:14px 12px}.challenge,.practice .challenge{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:1fr;justify-items:center}.versus{display:none}.question-card{max-width:none;padding:12px 16px 0;border-radius:9px;box-shadow:0 4px 0 #b3b5a9}.question-top{font-size:8px}.question-card>p{margin:10px 0 5px;font-size:10px}.equation{font-size:38px;display:inline-block;width:70%;text-align:right;padding-right:12px}.equals{display:inline-block;margin:0 0 12px;font-size:24px}.equals span{width:31px;height:31px;font-size:22px;margin-left:4px}.question-footer{padding:9px 0;font-size:7px}.match-status{margin-top:12px;min-height:26px}.match-status p{font-size:10px}.primary{min-height:44px;padding:12px;font-size:12px;max-width:none}.shared-hint{margin:8px 0 0;font-size:9px}.shared-hint br{display:none}.fighter{grid-row:2;padding-top:7px}.fighter-top h2{font-size:23px;margin-bottom:10px}.fighter-top .eyebrow{font-size:7px}.fighter-symbol{height:32px;width:32px;font-size:17px}.health-copy{font-size:7px;letter-spacing:.7px}.health-copy strong{font-size:11px}.health{height:6px}.portrait{height:130px;margin-top:3px}.portrait img{height:130px;width:145px}.portrait-tag{font-size:6px;letter-spacing:.7px}.power-row{font-size:8px;margin:12px 0 15px;flex-wrap:wrap}.power-row small{font-size:6px;margin-left:2px}.input-label strong{font-size:10px}.input-label>span{font-size:7px}.answers{gap:6px}.answers button{min-height:48px;padding:7px;gap:4px}.answers b{font-size:19px}.player-feedback{font-size:8px;line-height:1.5;min-height:24px;margin-top:9px}.arena-bottom{font-size:6px;letter-spacing:.6px;padding:8px 10px}.arena-bottom>span:nth-child(2){display:none}.rule-strip{grid-template-columns:1fr;padding:20px 0;gap:13px}.rule-strip p{font-size:10px}.rule-strip strong{font-size:11px}.rule-strip>div>span{width:29px;height:29px}.rule-strip strong{display:inline;margin-right:7px}footer{flex-direction:column;font-size:8px;line-height:1.6;padding:16px 0}.footer-muted{margin-left:5px}.campaign-map{grid-template-columns:repeat(3,1fr);gap:7px}.campaign-card{padding:9px;min-height:78px}.campaign-card strong{font-size:11px}.campaign-card small{font-size:8px}.practice .battle-grid{grid-template-columns:1fr}.practice #player-0{grid-column:1}.practice #player-0 .portrait{height:100px}.practice #player-0 .portrait img{height:110px}.practice #answers-0{grid-template-columns:repeat(4,1fr)}.explanation{max-width:none}.question-card.long .equation{font-size:28px}.question-card.long .equals{font-size:20px}.question-card.long .equals span{width:27px;height:27px}}

.question-card.long .equation{font-size:31px;letter-spacing:0;padding:16px 0 28px}.question-card.long .question-footer{margin-top:4px}body[data-skin="aurora"]{--bg:#101d24;--lime:#99ead8}body[data-skin="sunset"]{--bg:#241924;--lime:#ffd19a}@media(max-width:720px){.question-card.long .equation{font-size:25px;width:100%;text-align:center;padding:6px 0 16px}.setup{gap:7px}.setup select{max-width:145px}.setup:has(#practice-skill:not([hidden])){flex-wrap:wrap}.setup:has(#practice-skill:not([hidden])) #pause{display:none}}
@media(max-width:720px){.playing .intro{padding:12px 0}.playing .intro>div:first-child{display:none}.playing .setup{margin-top:0}.playing .topbar{padding-top:10px;padding-bottom:10px;gap:9px}.playing .topbar nav{padding:3px}.playing .topbar .nav-tab{padding:8px}.playing .portrait,.playing .portrait img{height:90px}.playing .portrait-tag{bottom:-5px}.playing .battle-grid{gap:10px}.playing .challenge{position:sticky;top:0;z-index:3;background:#171d29;padding:4px 0 6px}.playing .shared-hint{margin-top:4px}.playing .fighter{padding-top:4px}.playing .power-row{margin:12px 0 10px}.playing .rule-strip{display:none}.playing .input-label>span{font-size:8px}.playing .player-feedback{font-size:9px}.playing #campaign-map{display:none}}
