:root{--bg: #0a0e27;--surface: #131736;--surface-2: #1b2147;--accent: #00c9a7;--accent-dim: #0a8a76;--text: #e4e7f1;--text-dim: #8a91b8;--danger: #ff5757;--warning: #ffb830;--border: #2a3166;--radius: 14px;--radius-sm: 8px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--shadow-md: 0 8px 24px rgba(0, 0, 0, .35);--font-ui: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-num: "SF Mono", ui-monospace, "Roboto Mono", monospace;--ease: cubic-bezier(.22, 1, .36, 1);--press-scale: .96;--t-fast: .12s;--t-base: .2s}.fk-num{font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:.02em}.fk-btn{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);font-family:var(--font-ui);font-weight:600;cursor:pointer;transition:transform var(--t-fast) var(--ease),background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.fk-btn:active{transform:scale(var(--press-scale))}.fk-btn--primary{background:var(--accent);border-color:var(--accent);color:#03150f}.fk-btn--primary:active{background:var(--accent-dim)}@media (prefers-reduced-motion: reduce){.fk-btn{transition:none}}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100dvh;background:var(--bg, #070b1c);color:var(--text, #e4e7f1);font-family:system-ui,sans-serif;font-variant-numeric:tabular-nums;overflow:hidden;touch-action:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}#app{position:relative;width:100%;max-width:480px;height:100dvh;margin:0 auto}#game{display:block;width:100%;height:100%;touch-action:none}#ui{position:absolute;inset:0;pointer-events:none;z-index:10}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#04070fb8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fade .22s ease;padding:20px}@keyframes fade{0%{opacity:0}to{opacity:1}}.card{width:100%;max-width:340px;background:linear-gradient(180deg,#131b38,#0d1430);border:1px solid rgba(120,150,200,.14);border-radius:18px;padding:26px 22px;text-align:center;box-shadow:0 24px 60px #00000080;animation:pop .26s cubic-bezier(.2,1.1,.4,1)}@keyframes pop{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.badge{display:inline-block;color:#ffd66b;font-weight:700;font-size:14px;letter-spacing:1px;margin-bottom:8px;animation:shimmer 1.6s ease infinite}@keyframes shimmer{0%,to{opacity:.7}50%{opacity:1}}.big-score{font-size:64px;font-weight:800;color:#f3f6ff;line-height:1;text-shadow:0 0 24px rgba(0,201,167,.4)}.sub{color:#9fb0d0;font-size:13px;margin-top:8px;line-height:1.5}.streak{color:#ffb35e;font-size:13px;margin-top:10px}.lb{margin:18px 0 8px;text-align:left;background:#0003;border-radius:12px;padding:12px 14px}.lb-title{color:#00c9a7;font-size:12px;font-weight:600;letter-spacing:1px;margin-bottom:8px}.lb-row{display:flex;justify-content:space-between;gap:8px;font-size:13px;padding:3px 0;color:#cdd8ee}.lb-row .nm{flex:1;text-align:left;padding-left:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-row.dim{color:#7888a8;justify-content:center;font-size:12px}button{pointer-events:auto;width:100%;border:none;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;border-radius:12px;padding:14px;margin-top:10px;transition:transform .08s ease,filter .15s ease}button:active{transform:scale(.96)}.primary{background:#00c9a7;color:#05221c}.primary.gold{background:linear-gradient(180deg,#ffd66b,#f0b73e);color:#2a1d05}.ghost{background:#ffffff0f;color:#b9c6e2}.revive-head{font-size:20px;color:#f3f6ff;font-weight:700;margin-bottom:4px}.revive-head b{color:#ffd66b;font-size:26px}.ad{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px 22px}.ad-spin{width:64px;height:64px;border-radius:50%;background:conic-gradient(#ffd66b,#ffffff1a 0)}.ad-txt{color:#9fb0d0;font-size:14px}.toast{position:absolute;left:50%;bottom:80px;transform:translate(-50%);background:#131b38f2;border:1px solid rgba(120,150,200,.2);color:#e4e7f1;padding:10px 18px;border-radius:24px;font-size:14px;animation:toastIn .3s ease;box-shadow:0 8px 24px #0006}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.card,.overlay,.toast{animation:none}}
