*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-height:100svh;background:radial-gradient(#49404c 1px,transparent 1.5px) 0 0/9px 9px,#191821;font-family:system-ui,sans-serif;color:#fff}main{width:min(740px,96vw,max(320px,calc((100svh - 145px)*1.333)));margin:clamp(8px,3vh,30px) auto}.console{padding:clamp(5px,1vw,10px);background:#ed66a7;border:3px solid #100d16;border-radius:15px;box-shadow:0 6px #100d16,inset 0 2px #ffb2df}.stats,.controls{background:#24212d;display:flex;justify-content:space-between;align-items:center;gap:5px;padding:9px 12px;font-weight:800}.stats{border-radius:6px 6px 0 0;font-size:13px}.stats strong{color:#ffdf48}.stats b{font:900 23px monospace;color:#ffdf48}#screen{aspect-ratio:4/3;position:relative;isolation:isolate;overflow:hidden;background:#16141c;touch-action:none;overscroll-behavior:contain;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;cursor:pointer}canvas{width:100%;height:100%;display:block}#intro{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-left:6%;background:linear-gradient(90deg,#19121be8,transparent 85%)}h1{font-size:clamp(36px,7.6vw,78px);margin:0;font-weight:1000;line-height:1.1;transform:skew(-7deg);text-shadow:4px 4px #131019}h1 em{font-style:normal;color:#ffdf42}#intro p{font-weight:900;font-size:clamp(12px,2vw,18px);text-shadow:2px 2px #15151b}#hearts{position:absolute;top:2%;left:13%;color:#fa3b48;text-shadow:1px 2px #4c1720;font-size:clamp(20px,4vw,37px);line-height:1}#status{position:absolute;top:31%;left:0;width:100%;text-align:center;color:white;font-weight:1000;font-size:clamp(26px,5vw,50px);-webkit-text-stroke:4px #151019;paint-order:stroke fill;text-shadow:3px 3px #151019;pointer-events:none}.controls{border-radius:0 0 6px 6px}.controls a,.controls button{font-size:clamp(11px,2vw,16px);color:white;text-decoration:none;border:1px solid #66616f;border-radius:6px;padding:8px 11px;font-weight:850}.controls button{cursor:pointer;color:#19151b;background:#ffdd42;border:2px solid #19131f;box-shadow:0 2px #916812}.controls small{font-size:clamp(9px,1.6vw,13px)}footer{text-align:center;color:#b5b0be;font-size:11px;margin:13px}[hidden]{display:none!important}button:focus-visible,a:focus-visible,#screen:focus-visible{outline:3px solid #6adce8}

#screen canvas{touch-action:none}#screen:active{cursor:grabbing}
