:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}body{margin:0;background:#080c19;color:#f8fbff;display:flex;justify-content:center;min-height:100vh}.app{width:min(100%,510px);padding:10px 12px 16px}.stage{aspect-ratio:9/16;max-height:calc(100dvh - 112px);margin:auto;position:relative;overflow:hidden;border-radius:22px;border:1px solid #293651;background:#0c1328;box-shadow:0 18px 70px #0009}canvas{height:100%;width:100%;display:block}.hud{position:absolute;inset:0 0 auto 0;padding:17px 20px;pointer-events:none;background:linear-gradient(#080d20f5,#080d20bc 75%,transparent)}.brand{font-size:11px;font-weight:900;letter-spacing:2px;opacity:.95}.brand>span:first-child{color:#ffba67}.live{font-size:8px;letter-spacing:1px;border:1px solid #3f5473;border-radius:30px;padding:4px 6px;float:right;color:#85eac6}.scoreboard{display:flex;align-items:flex-start;justify-content:space-between;margin-top:20px}.scoreboard>div{display:flex;flex-direction:column}.scoreboard strong{font-size:clamp(37px,11vw,62px);line-height:1.04;letter-spacing:-4px;font-weight:950;font-variant-numeric:tabular-nums}.scoreboard .target{text-align:right}.scoreboard .target strong{color:#ffc16e}.tiny{font-size:9px;font-weight:800;letter-spacing:1.25px;color:#a3aec4}.track{height:7px;border:1px solid #5a6680;background:#283248;overflow:hidden;border-radius:20px;margin-top:12px}.track>div{height:100%;width:1%;border-radius:20px;background:linear-gradient(90deg,#5bdbd6,#ffe194);transition:width .1s}.callout{text-align:center;margin-top:12px;color:#c2cadb;font-size:10px;letter-spacing:1.1px;font-weight:850}.bottom-hint{position:absolute;bottom:19px;width:100%;text-align:center;font-size:10px;letter-spacing:1px;font-weight:850;color:#fff7dd;text-shadow:0 2px 10px #050a20;pointer-events:none}.bottom-hint span{color:#ffc766}.flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none}.center-message{position:absolute;inset:35% 0 auto;text-align:center;opacity:0;transform:scale(.87);transition:opacity .2s,transform .22s;pointer-events:none;text-shadow:0 3px 20px #000}.center-message.visible{opacity:1;transform:scale(1)}.center-message h1{font-size:clamp(38px,11vw,64px);letter-spacing:-3px;line-height:1;margin:8px 0}.center-message p{margin:0;font-size:15px;font-weight:800}.center-message #endTag{font-size:11px;font-weight:900;letter-spacing:3px;color:#ffd787}footer{display:flex;gap:8px;padding-top:12px}button{cursor:pointer;border:1px solid #354661;color:#d4def3;border-radius:12px;padding:13px 10px;font-size:11px;font-weight:900;letter-spacing:.4px;background:#14203a}button:hover{filter:brightness(1.22)}button:active{transform:scale(.98)}button.primary{background:#ffbc71;color:#1c1d33;border-color:#ffbc71;flex:1.2}button.secondary{flex:1}button.active{border-color:#59c49e;color:#97f3c8}#runNo{font-size:9px;opacity:.5;margin-left:4px}.footer-note{text-align:center;color:#74839c;font-size:10px;margin:11px 0 0}@media(max-width:410px){.app{padding:0 0 12px}.stage{border-radius:0;max-height:calc(100dvh - 103px)}footer{padding:8px;gap:5px}button{font-size:9px;padding:12px 5px}.hud{padding:13px 16px}.brand{font-size:10px}.scoreboard{margin-top:12px}.scoreboard strong{font-size:43px}}
