:root{color:#eef3ef;font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--mint:#9ce4c3;--muted:#99abb0;background:#101b24;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button,select{color:inherit;cursor:pointer;background:#192a34;border:1px solid #3b5058;border-radius:9px;padding:10px 15px}button:hover{border-color:var(--mint);background:#233c43}button:disabled{opacity:.4;cursor:default}button:focus-visible,canvas:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--mint);outline-offset:4px}.primary{background:var(--mint);color:#142923;border-color:var(--mint);padding:13px 24px;font-weight:650}.primary:hover{color:#142923;background:#b9f2d8}.shell{flex-direction:column;gap:16px;max-width:1300px;height:100dvh;margin:auto;padding:24px 32px 16px;display:flex}header{flex-shrink:0;align-items:center;gap:38px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand h1{letter-spacing:-1.5px;margin:0;font-size:32px;font-weight:750;line-height:1}.brand h1 span{color:var(--mint);vertical-align:top;margin-left:5px;font-size:9px}.brand p{color:var(--muted);letter-spacing:.3px;margin:7px 0 0;font-size:11px}.stats{gap:34px;margin-left:auto;display:flex}.stats div{flex-direction:column;gap:5px;display:flex}.stats span{color:var(--muted);text-transform:uppercase;letter-spacing:1.5px;font-size:10px}.stats strong{font-variant-numeric:tabular-nums;font-size:25px;font-weight:550}nav{gap:7px;display:flex}nav button{padding:9px 12px;font-size:12px}#help{font-weight:700}.arena-heading{color:var(--muted);letter-spacing:1px;justify-content:space-between;align-items:center;width:100%;max-width:min(100%,150dvh - 306px);margin:auto auto 0;font-size:11px;display:flex}.arena-heading b{color:var(--mint);margin-left:7px;font-weight:500}.divider{color:#475c66;margin:0 12px}#level-name{letter-spacing:.3px}#lives{color:var(--mint)}.arena{aspect-ratio:3/2;background:#111f29;border:1px solid #34444b;border-radius:14px;width:min(100%,150dvh - 306px);min-height:0;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 14px 50px #0002}canvas{width:100%;height:100%;display:block}canvas:focus-visible{outline-offset:-4px}.overlay{text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#101b24b8;place-items:center;padding:25px;display:grid;position:absolute;inset:0}.overlay>div{max-width:490px}.eyebrow{color:var(--mint);letter-spacing:3px;font-size:10px}.overlay h2{letter-spacing:-1.4px;margin:22px 0 15px;font-size:clamp(24px,3.4vw,42px);font-weight:500;line-height:1.12}.overlay p{color:#bac9ca;max-width:370px;margin:0 auto 26px;font-size:14px;line-height:1.7}footer{color:var(--muted);justify-content:space-between;align-items:center;gap:20px;width:100%;max-width:100%;margin:auto auto 0;font-size:10px;line-height:1.6;display:flex}#footer-mark{letter-spacing:1.7px;white-space:nowrap;color:#6d858d;font-size:9px}#notice{color:#c8ba96;text-align:center;font-size:11px}#notice:empty{display:none}#update{border:1px solid var(--mint);background:#243c46;border-radius:12px;padding:12px 16px;font-size:13px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0008}#update button{margin-left:15px}dialog{color:#eef3ef;background:#172731;border:1px solid #456069;border-radius:18px;width:min(500px,100% - 32px);padding:30px;box-shadow:0 30px 100px #0008}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#07121acc}dialog h2{letter-spacing:-.7px;margin-top:35px;font-size:26px;font-weight:500}dialog p{color:#b2c5c8;font-size:14px;line-height:1.8}.dialog-close{float:right;font-size:12px}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}label{border-bottom:1px solid #344750;justify-content:space-between;align-items:center;padding:15px 0;font-size:14px;display:flex}input{accent-color:var(--mint);width:20px;height:20px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}[hidden]{display:none!important}@media (width<=1000px){.shell{gap:12px;padding:16px}header{gap:16px}.stats{gap:20px}nav button{padding:8px}.arena{width:min(100%,150dvh - 285px)}#footer-mark{display:none}}canvas{touch-action:none;-webkit-user-select:none;user-select:none}.touch-actions{justify-content:center;display:flex}.touch-actions:has(button[hidden]){display:none}dialog{max-height:calc(100dvh - 24px);overflow-y:auto}#update{width:max-content;max-width:calc(100% - 24px)}@media (width<=899px),(height<=649px){.shell{height:auto;min-height:100dvh;padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));gap:12px}header{flex-wrap:wrap;gap:12px}.brand h1{font-size:28px}.stats{gap:14px;margin-left:auto}.stats span{letter-spacing:0;font-size:9px}.stats strong{font-size:22px}nav{flex-wrap:wrap;width:100%}nav button{flex:1;min-height:44px;padding:8px}.arena{aspect-ratio:3/2;flex:none;width:100%;min-height:0}.arena-heading{letter-spacing:0;flex-wrap:wrap;gap:8px;max-width:100%;margin-top:0}.divider{margin:0 6px}.overlay{padding:12px;overflow-y:auto}.overlay h2{letter-spacing:-.6px;margin:8px 0;font-size:clamp(19px,5vw,28px)}.overlay p{margin-bottom:12px;font-size:12px;line-height:1.4}.primary{min-height:44px;padding:10px 18px}footer{margin-top:auto;font-size:11px}dialog{padding:18px}.dialog-close,.dialog-actions button{min-height:44px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}#materials{color:#b1c2c5;letter-spacing:0;white-space:nowrap;font-size:10px}@media (width<=899px){#materials{display:none}}@media (height<=500px) and (width>=500px){.shell{gap:8px}header{flex-wrap:nowrap;gap:12px}.brand img{width:30px;height:30px}.brand h1{font-size:24px}.brand p{display:none}.stats{gap:12px}.stats strong{font-size:18px}nav{width:auto;margin-left:auto}nav button{font-size:11px}.arena,.arena-heading{width:min(100%,150dvh - 285px)}.arena-heading{gap:4px;font-size:10px}#level-name,.divider,#materials,footer{display:none}.overlay h2{font-size:21px}}@media (width>=900px) and (height>=650px){:is(.shell:has(#launch:not([hidden])) .arena,.shell:has(#launch:not([hidden])) .arena-heading){width:min(100%,150dvh - 396px)}}
