:root{--ink:#f2f5f8;--good:#4ade80;--bad:#f87171;--gold:#fbbf24;--panel:#0c1018e0}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#0b0e14;font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif;overflow:hidden}#app{width:100%;height:100%;position:relative}#game{touch-action:none;cursor:grab;width:100%;height:100%;display:block}#game:active{cursor:grabbing}.hidden{display:none!important}#hud{pointer-events:none;position:absolute;inset:0}.hud-row{justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 0;display:flex}.stat{flex-direction:column;gap:2px;min-width:74px;display:flex}.stat-center{flex:1;align-items:center;max-width:320px}.stat-right{align-items:flex-end}.stat-label{letter-spacing:1px;color:#f2f5f899;text-shadow:0 1px 3px #000c;font-size:12px}.stat-label b{color:var(--gold);font-size:14px}.stat-value{font-variant-numeric:tabular-nums;text-shadow:0 2px 6px #000000e6;font-size:30px;font-weight:800;line-height:1}.stat-value.small{color:var(--gold);padding-top:6px;font-size:18px}#progress{background:#ffffff29;border-radius:99px;width:100%;height:7px;margin-top:6px;overflow:hidden}#progress-fill{background:linear-gradient(90deg,#38bdf8,#a3e635);border-radius:99px;width:0%;height:100%;transition:width .12s linear}#progress-fill.danger{background:linear-gradient(90deg,#b91c1c,#f87171)}#btn-sound{letter-spacing:0;width:42px;height:42px;color:var(--ink);box-shadow:none;pointer-events:auto;opacity:.6;background:#0a0e166b;border:1px solid #ffffff2e;border-radius:50%;margin:0;padding:0;font-size:19px;line-height:42px;position:absolute;bottom:14px;left:14px}#btn-sound:active{box-shadow:none;transform:scale(.92)}#btn-sound.muted{opacity:.35}#toast-layer{flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:26%;left:0;right:0}.toast{letter-spacing:1px;text-shadow:0 2px 10px #000000e6;font-size:26px;font-weight:800;animation:.9s ease-out forwards pop}@keyframes pop{0%{opacity:0;transform:translateY(16px)scale(.7)}22%{opacity:1;transform:translateY(0)scale(1.12)}70%{opacity:1;transform:translateY(-10px)scale(1)}to{opacity:0;transform:translateY(-34px)scale(.96)}}.panel{text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(120% 90% at 50% 40%,#141c2ad1,#06080df5);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:32px 26px;display:flex;position:absolute;inset:0}.panel h1{letter-spacing:6px;background:linear-gradient(#fff,#7dd3fc);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(38px,11vw,68px);font-weight:900;line-height:1}.panel h2{letter-spacing:8px;font-size:40px;font-weight:900}.panel .sub{letter-spacing:8px;color:var(--gold);margin-top:-6px;font-size:15px}.panel .blurb{color:#f2f5f8bd;max-width:460px;font-size:14px;line-height:1.85}.panel .blurb b{color:var(--ink)}.controls-hint{color:#f2f5f880;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.controls-hint span:nth-child(odd){border:1px solid #ffffff2e;border-radius:6px;padding:4px 10px}button{letter-spacing:4px;color:#06202c;cursor:pointer;background:linear-gradient(#7dd3fc,#38bdf8);border:none;border-radius:12px;margin-top:8px;padding:14px 44px;font-family:inherit;font-size:19px;font-weight:800;transition:transform 80ms,box-shadow 80ms;box-shadow:0 6px #0369a1,0 12px 24px #0284c759}button:active{transform:translateY(4px);box-shadow:0 2px #0369a1}button.ghost{color:#f2f5f8b8;box-shadow:none;letter-spacing:2px;background:0 0;border:1px solid #ffffff38;padding:9px 24px;font-size:14px}button.ghost:active{transform:translateY(2px)}.record{color:#f2f5f86b;min-height:16px;font-size:12px}#result-title.win{color:var(--good)}#result-title.lose{color:var(--bad)}.result-grid{grid-template-columns:repeat(2,minmax(120px,1fr));gap:10px 26px;margin-top:6px;display:grid}.result-grid>div{background:#ffffff0d;border-radius:10px;flex-direction:column;gap:3px;padding:10px 14px;display:flex}.result-grid span{color:#f2f5f88c;font-size:12px}.result-grid b{font-variant-numeric:tabular-nums;font-size:24px}.score{color:#f2f5f899;font-size:14px}.score b{color:var(--gold);font-size:26px}
