
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#080c16;color:#eef4ff;font:15px system-ui,-apple-system,sans-serif;background-image:radial-gradient(ellipse at top,#182038,transparent 60%)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:1px solid #2b3850;background:#172033;border-radius:12px;min-height:44px;padding:12px 18px}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #b4ff70;outline-offset:3px}[hidden]{display:none!important}.shell{width:min(100%,760px);margin:auto;padding:16px 20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:1px;height:44px}.topbar a{color:#8e9ab1;text-decoration:none}.topbar b{color:#b4ff70}.icon{padding:8px 15px}.hud{display:grid;grid-template-columns:1fr 1.5fr 1fr 1fr;gap:10px;margin:14px 0}.hud>div{background:#101828;border:1px solid #233048;border-radius:14px;padding:13px 16px}.hud small,.prompt small{display:block;font-size:9px;letter-spacing:2px;color:#899bb8}.hud strong{display:block;font-size:23px;margin-top:5px;font-variant-numeric:tabular-nums}.hud .score strong{color:#b4ff70;font-size:30px}.hud #hp{color:#ff9aac}#combo{color:#b9a0ff}#arena{height:clamp(380px,62vh,620px);position:relative;border:1px solid #2e3e56;border-radius:22px;overflow:hidden;isolation:isolate;background:linear-gradient(#10182b,#101c26 85%)}#arena:before{content:'';position:absolute;inset:0;background-image:radial-gradient(#9dc1d955 1px,transparent 1px);background-size:61px 73px;pointer-events:none}.moon{position:absolute;right:12%;top:8%;width:85px;height:85px;border-radius:50%;background:#b4ff7015;box-shadow:0 0 80px #b4ff7010}.skyline{position:absolute;inset:65% 0 0;opacity:.3;background:repeating-linear-gradient(90deg,#030814 0 35px,transparent 35px 44px);clip-path:polygon(0 20%,15% 20%,15% 40%,30% 40%,30% 0,45% 0,45% 30%,60% 30%,60% 10%,80% 10%,80% 50%,100% 50%,100% 100%,0 100%)}.defense{position:absolute;top:94%;width:100%;border-top:2px solid #ff759577;color:#ff92a6;text-align:center;padding:5px;font-size:8px;letter-spacing:4px}.monster{position:absolute;width:29%;left:var(--x);top:var(--y);transform:translate(-50%,-50%);border:0;background:transparent;padding:4px;min-height:85px;display:flex;align-items:center;flex-direction:column;gap:7px;touch-action:manipulation}.monster:hover .word,.monster:focus-visible .word{border-color:#d1ffa8}.word{display:block;padding:6px 9px;border:1px solid #4e735866;border-radius:7px;background:#162c26;color:#d5ffbf;font-size:clamp(11px,2.5vw,16px);font-weight:700;max-width:100%;overflow-wrap:anywhere;letter-spacing:.2px}.creature{position:relative;width:44px;height:41px;background:var(--skin,#9cb879);border:3px solid #d3e4b44d;border-radius:13px 15px 8px 8px;box-shadow:inset -7px -7px 0 #0002,0 5px 18px #0004;transform:rotate(-6deg)}.creature:before,.creature:after{content:'';position:absolute;width:9px;height:10px;background:#07131a;border-radius:50%;top:10px}.creature:before{left:7px}.creature:after{right:6px}.creature i{position:absolute;width:14px;height:4px;left:12px;bottom:8px;background:#25302c;transform:rotate(8deg)}.creature i:after{content:'';position:absolute;width:5px;height:5px;background:white;left:2px;top:0}.creature b{position:absolute;bottom:-10px;left:5px;width:9px;height:12px;background:var(--skin,#9cb879);box-shadow:21px 0 var(--skin,#9cb879)}.wrong .word{color:#ffb0bd;border-color:#ff5e83;background:#5b2334}.wrong .creature{background:#ff5e83;animation:shake .35s}.prompt{display:flex;justify-content:space-between;align-items:center;border:1px solid #375437;border-radius:16px;background:linear-gradient(115deg,#16261d,#101a1b);padding:17px 23px;margin-top:14px;min-height:88px}.prompt strong{display:block;font-size:clamp(22px,5vw,32px);margin-top:5px;color:#e6ffd6}.crosshair{font-size:40px;color:#b4ff70}.screen{position:absolute;inset:0;background:#0c1221ef;display:grid;place-items:center;padding:20px;text-align:center;overflow:auto;z-index:10}.eyebrow{font-size:9px;letter-spacing:3px;color:#8499b6}h1{font-size:clamp(40px,8vw,64px);line-height:.95;letter-spacing:-3px;margin:15px 0;position:relative}h1 span{color:#b4ff70;text-shadow:0 0 32px #b4ff7025}h1 em{font-style:normal;color:#9e83ff;font-size:24px;vertical-align:top;letter-spacing:0;margin-left:6px}.tagline{color:#b1bed0;font-size:14px}.instructions{font-size:12px;line-height:1.8;color:#7f93b0}.hero-monster{position:relative;width:66px;height:58px;margin:14px auto;background:#a6cd82;border-radius:19px 19px 11px 11px;box-shadow:inset -10px -10px #0002;transform:rotate(-8deg)}.hero-monster i{position:absolute;width:13px;height:14px;top:17px;left:13px;border-radius:50%;background:#132317}.hero-monster i:nth-child(2){left:39px}.hero-monster span{position:absolute;width:20px;height:5px;background:#2d452d;bottom:12px;left:23px}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;background:#b4ff70;color:#152112;font-weight:850;letter-spacing:2px;border:0;padding:16px 24px;box-shadow:0 7px 24px #b4ff7015}.menu-row{display:flex;gap:10px;margin-top:10px}.menu-row button{flex:1;font-size:11px;font-weight:700;letter-spacing:1px}.best{font-size:9px;letter-spacing:2px;color:#7f93b0}.best strong{color:#b4ff70;margin-left:10px}.secondary{margin-top:12px;width:100%}h2{font-size:28px;margin:15px 0}.end-score{font-size:68px;color:#b4ff70;font-weight:850;margin:15px}.screen #end-info{color:#a7b9d0;font-size:12px}.screen #home{max-width:350px;width:100%}#feedback{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);font-size:30px;font-weight:900;pointer-events:none;z-index:6;white-space:nowrap;color:#b4ff70;text-shadow:0 3px 10px #000}#feedback.show{animation:feedback .8s both}#feedback.bad{color:#ff789b}.combo-pop{animation:pop .3s}.particle{position:absolute;width:7px;height:7px;background:#b4ff70;border-radius:2px;animation:burst .55s ease-out forwards;pointer-events:none}#particles{position:absolute;inset:0;pointer-events:none}footer{display:flex;justify-content:space-between;color:#536984;letter-spacing:1px;font-size:9px;padding:16px 2px}#storage{font-size:11px;color:#ffb89c;line-height:1.5}#storage:empty{display:none}dialog{width:min(94vw,620px);max-height:85vh;border:1px solid #374960;border-radius:20px;background:#111b2b;color:#e8f2ff;padding:23px}dialog::backdrop{background:#04080de0}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-head h2{font-size:20px}table{width:100%;border-collapse:collapse;font-size:12px}td,th{text-align:left;border-bottom:1px solid #26334a;padding:12px 5px;overflow-wrap:anywhere}th{color:#8297b5;font-size:10px}td:first-child{color:#b4ff70;font-weight:700}.table-wrap{overflow:auto}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stats-grid div{border:1px solid #2b3c53;background:#172236;border-radius:12px;padding:15px;font-size:12px;color:#9aacbf}.stats-grid strong{display:block;color:#b4ff70;font-size:30px;margin-top:7px}.empty{color:#9aacbf;line-height:1.8}@keyframes shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@keyframes feedback{0%{opacity:0;translate:0 10px}20%{opacity:1}100%{opacity:0;translate:0 -20px}}@keyframes pop{50%{transform:scale(1.15)}}@keyframes burst{to{transform:translate(var(--dx),var(--dy)) rotate(120deg);opacity:0}}@media(max-width:480px){.shell{padding:10px}.topbar{font-size:9px}.hud{gap:6px;margin:10px 0}.hud>div{padding:10px 8px}.hud strong{font-size:18px}.hud .score strong{font-size:25px}.hud small{font-size:8px;letter-spacing:1px}.screen{padding:14px}.hero-monster{width:55px;height:47px;margin:10px auto}.instructions{font-size:11px}.prompt{padding:13px 17px}.word{padding:6px 4px}.monster{gap:5px}.screen h1{font-size:44px}.menu-row button{padding:12px}footer{font-size:8px}}@media(max-height:700px){#arena{height:390px}.hero-monster{display:none}.screen h1{font-size:44px}.instructions{margin:8px 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important}}

.music-toggle{margin-left:auto;white-space:nowrap;font-size:10px;padding:8px 10px;color:#b4ff70}.topbar>span{white-space:nowrap}@media(max-width:480px){.topbar{gap:6px}.topbar>a{font-size:8px;letter-spacing:0}.music-toggle{font-size:9px;padding:8px}.topbar>.icon{min-width:40px}}

.topbar{flex-wrap:wrap;height:auto;min-height:44px}.topbar .icon{font-size:9px;padding:9px 10px;min-height:44px}.arcade-meter{display:flex;align-items:center;gap:15px;margin:12px 3px 0}.arcade-meter>div{flex:1}.arcade-meter span{color:#9ca8c3;font-size:10px;letter-spacing:2px}.meter-track{height:5px;background:#222d43;border-radius:4px;margin-top:6px;overflow:hidden}.meter-track i{display:block;height:100%;width:0;background:#b6a2ff;transition:width .15s}.arcade-meter>strong{color:#c4b2ff;font-size:22px;min-width:40px}.fever{border-color:#a7fc68!important;box-shadow:inset 0 0 30px #b4ff7014,0 0 18px #b4ff7015}.fever .word{border-color:#8abe6266}.floating-score{position:absolute;transform:translate(-50%,-50%);color:#e3ffc9;font-size:20px;font-weight:900;animation:float-score .7s both;pointer-events:none;z-index:4;text-shadow:0 2px 8px #000}.defeated{animation:defeat .28s both;pointer-events:none!important}.screen-shake{animation:small-shake .16s}#boss{position:absolute;left:50%;transform:translate(-50%,-50%);z-index:1;pointer-events:none;display:grid;justify-items:center;gap:2px;opacity:.85;color:#ffb698;background:#3a233144;border:1px solid #a2516944;border-radius:16px;padding:8px 15px;min-width:95px}.boss-face{font-size:40px;line-height:1}#boss strong{font-size:11px;letter-spacing:3px}#boss-progress{font-size:9px;color:#ffcab9}.boss-hit{animation:boss-impact .3s}.run-review{margin:14px 0 20px;padding:12px;border:1px solid #293c50;border-radius:12px;background:#111c2d;text-align:left}.run-review h3{font-size:12px;margin:0}.review-help{font-size:10px;color:#8c9cb4}.review-row{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:8px;border-top:1px solid #243248;padding:8px 0;font-size:12px}.review-row strong{color:#b4ff70;overflow-wrap:anywhere}.review-row span{color:#b9c7d7}.review-row b{color:#ffb59e}#run-review{max-height:150px;overflow:auto;font-size:12px}#end{width:min(100%,430px)}.monster{min-height:90px;min-width:48px}.word{min-height:32px;display:grid;place-items:center}@keyframes float-score{to{translate:0 -35px;opacity:0}}@keyframes defeat{30%{filter:brightness(1.7)}to{opacity:0;scale:.65;rotate:12deg}}@keyframes small-shake{25%{translate:1px 0}75%{translate:-1px 1px}}@keyframes boss-impact{50%{filter:brightness(1.8)}}@media(max-width:480px){.shell{padding-bottom:max(12px,env(safe-area-inset-bottom))}.topbar>a{flex:1}.topbar>span{display:none}#arena{height:clamp(330px,55svh,480px)}.prompt{position:sticky;bottom:max(8px,env(safe-area-inset-bottom));z-index:8;min-height:78px;background:#14251df5;margin-top:10px}.monster{min-height:96px;padding:8px 2px}.word{font-size:12px;line-height:1.3;max-width:100%}.creature{width:46px;height:43px}.hud{position:sticky;top:0;z-index:9;background:#080c16;padding:3px 0}.screen #end-score{font-size:42px;margin:8px}.screen h2{font-size:24px}.end-score{font-size:42px}.arcade-meter{margin-top:9px}.prompt strong{font-size:25px}}@media(prefers-reduced-motion:reduce){.screen-shake,.defeated,.floating-score,.boss-hit{animation:none!important}}

.screen.game-over{align-items:start}.screen.game-over #end{padding-bottom:12px}@media(max-width:480px){#run-review{max-height:110px}.game-over .run-review{margin:10px 0}.game-over h2{margin:8px 0}}
