:root{--sand:#dca95e;--sand2:#f3cf8c;--ink:#111516;--panel:#1c2325;--edge:#506065;--orange:#ff8b21;--gold:#ffd060;--green:#68e388;--red:#ff5b51;font-family:Impact,"Arial Black",system-ui,sans-serif;color:#fff}*{box-sizing:border-box}body{margin:0;background:#0d1011;color:#fff;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}.screen{display:none}.screen.active{display:flex}#menu{min-height:100vh;position:relative;align-items:center;justify-content:center;gap:4vw;background:radial-gradient(circle at 45% 5%,#4b4539 0,#24282a 36%,#101314 75%);overflow:auto;padding:28px}.sand-haze{position:absolute;inset:0;opacity:.35;background:repeating-linear-gradient(160deg,transparent 0 72px,#f5bb62 74px 78px,transparent 81px 150px);mask-image:linear-gradient(transparent,#000 65%)}.logo-wrap,.console{z-index:1}.logo-wrap{width:min(500px,40vw);text-shadow:3px 4px 0 #000}.eyebrow{color:var(--orange);letter-spacing:.2em;font-size:.78rem}.logo-wrap h1{font-size:clamp(3.3rem,9vw,8.5rem);line-height:.76;margin:.2em 0;transform:skew(-7deg)}.logo-wrap h1 span{display:block;color:var(--orange)}.logo-wrap p:not(.eyebrow){font:600 1.1rem system-ui;max-width:23ch}.console{width:min(550px,96vw);padding:26px;border:3px solid #5b6b70;border-radius:13px;background:linear-gradient(145deg,#2c3739,#12191b);box-shadow:inset 0 0 0 2px #101415,0 20px 55px #0008}.console label,.skin-row{display:flex;gap:10px;align-items:center;justify-content:space-between;font:600 .9rem system-ui}.console input,.console select{background:#0d1213;border:1px solid #607074;border-radius:5px;padding:10px;color:#fff;min-width:0}.console input{width:65%}fieldset{border:1px solid #4d6064;margin:18px 0;padding:10px}legend{color:#f7c66c;font-size:.75rem;letter-spacing:.12em}.row-choices{display:flex;gap:8px}.row-choices label{flex:1;justify-content:center;background:#111819;padding:9px;border-radius:4px;cursor:pointer}.row-choices input{accent-color:var(--orange);width:auto}.skin-row small{display:block;color:#aeb9bb;font:12px system-ui;max-width:225px}.menu-buttons{display:flex;gap:11px;margin-top:22px}.metal{flex:1;border:2px solid #687b80;border-radius:7px;padding:13px 10px;color:#fff;background:linear-gradient(#374448,#1a2224);text-shadow:1px 1px #000;box-shadow:inset 0 1px #89999c,0 4px 0 #080b0c}.metal:active{transform:translateY(3px);box-shadow:inset 0 1px #89999c,0 1px 0 #080b0c}.primary{background:linear-gradient(#ffad40,#cf5b11);border-color:#ffc062}.help{font:12px/1.45 system-ui;color:#bbc4c5;margin:20px 0 0}.modal-screen{position:fixed;inset:0;z-index:10;align-items:center;justify-content:center;padding:16px;background:#05090bd9}.modal{max-height:92vh;overflow:auto;width:min(680px,96vw);background:linear-gradient(145deg,#2b3638,#12191a);border:3px solid #687b80;border-radius:12px;padding:28px;box-shadow:0 0 70px #000}.modal h2{margin:0 0 15px;color:var(--orange);font-size:2.3rem}.modal p,.modal li{font-family:system-ui;line-height:1.5}.modal button{margin-top:15px}.achievement{display:grid;grid-template-columns:1fr auto;gap:4px;padding:10px 0;border-bottom:1px solid #405054;font-family:system-ui}.achievement b{color:var(--gold)}.bar{height:9px;background:#080c0d;border-radius:9px;overflow:hidden;grid-column:1/-1}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--orange),var(--gold))}#game{position:fixed;inset:0;background:#d7a35c}canvas{width:100%;height:100%;display:block;cursor:crosshair}#hud{position:absolute;top:12px;left:14px;right:14px;display:flex;gap:10px;align-items:stretch;pointer-events:none}.hud-card{min-width:120px;padding:7px 12px;border:1px solid #829091;background:#11191bd9;clip-path:polygon(0 0,93% 0,100% 23%,100% 100%,0 100%)}.hud-card span,.hud-card small{display:block;font:700 11px system-ui;letter-spacing:.11em;color:#b9c5c7}.hud-card strong{font-size:1.55rem;color:var(--gold)}.player strong{display:inline-block}.lives{min-width:150px}#lifeIcons{color:#ff694e;font-size:1.1rem;letter-spacing:2px;white-space:nowrap}#pauseBtn{margin-left:auto;pointer-events:auto;width:44px;border:1px solid #8b999a;background:#151d1f;color:#fff;font-size:1.35rem}.combo strong{color:var(--orange)}#taskPanel{position:absolute;top:15px;left:50%;transform:translateX(-50%);width:min(360px,47vw);text-align:center;text-shadow:2px 2px 1px #000;pointer-events:none}#equation{font-size:clamp(1.8rem,3vw,3rem);letter-spacing:.06em}#timerWrap{height:15px;border:2px solid #f7d18d;margin-top:4px;background:#171a19;transform:skew(-10deg);overflow:hidden}#timerBar{height:100%;width:100%;background:linear-gradient(90deg,#ff552d,#ff9a24,#f7df64);transition:width .08s linear}#timerText{font-size:1.05rem;margin-top:4px}#tierText{font:700 10px system-ui;color:#ffe284;letter-spacing:.1em}#callout{position:absolute;left:50%;top:32%;transform:translateX(-50%) scale(.5);text-align:center;font-size:clamp(2rem,5vw,4rem);color:#fff;text-shadow:0 4px 0 #9c4300,0 0 20px #ff9300;opacity:0;pointer-events:none}.pop{animation:pop .85s ease-out}@keyframes pop{15%{opacity:1;transform:translateX(-50%) scale(1.15)}75%{opacity:1;transform:translateX(-50%) scale(1)}100%{opacity:0;transform:translateX(-50%) scale(.9)}}#practiceNote{position:absolute;bottom:23px;left:50%;transform:translateX(-50%);padding:8px 14px;background:#111a1bcc;border:1px solid #ffb641;color:#ffce62;font:700 12px system-ui;letter-spacing:.08em;pointer-events:none}#touchControls{display:none;position:absolute;left:16px;bottom:15px;gap:4px;flex-direction:column;align-items:center}#touchControls div{display:flex;gap:4px}#touchControls button{width:47px;height:42px;border:1px solid #9e7e53;border-radius:8px;background:#20282ad9;color:#fff;font-size:1.2rem;touch-action:none}
@media (pointer:coarse){#touchControls{display:flex}canvas{cursor:default}}@media(max-width:700px){#menu{align-items:flex-start;padding-top:24px;gap:12px;flex-direction:column}.logo-wrap{width:100%}.logo-wrap h1{font-size:4.5rem}.console{padding:18px}.help{display:none}.hud-card{min-width:0;padding:5px 8px}.lives{display:none}.hud-card strong{font-size:1.2rem}#taskPanel{top:64px;width:72vw}#equation{font-size:2rem}.combo{margin-left:auto}#pauseBtn{margin-left:0}#practiceNote{font-size:9px;bottom:5px;white-space:nowrap}.modal{padding:21px}}
