: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);color:var(--text);font-family:-apple-system,Hiragino Kaku Gothic ProN,Noto Sans JP,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;overscroll-behavior:none}#app{width:100%;height:100dvh;margin:0 auto;display:flex;align-items:center;justify-content:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}#game{display:block;touch-action:none}.modal-wrap{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#040612b8;z-index:30;animation:fadeIn .22s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{width:min(320px,86vw);background:linear-gradient(180deg,#131a3a,#0d1330);border:1px solid rgba(120,160,220,.18);border-radius:18px;padding:22px 20px 18px;color:#e8eeff;text-align:center;box-shadow:0 18px 60px #0000008c;animation:popIn .26s cubic-bezier(.2,1.4,.4,1)}@keyframes popIn{0%{transform:scale(.86);opacity:0}to{transform:scale(1);opacity:1}}.modal .label{font-size:12px;letter-spacing:.18em;color:#8b97c6}.modal .score{font-size:44px;font-weight:800;margin:4px 0 2px;color:#fff}.modal .best-tag{font-size:13px;color:#ffb454;font-weight:700;min-height:18px}.modal .rows{margin:14px 0 16px;display:flex;flex-direction:column;gap:7px}.modal .row{display:flex;justify-content:space-between;font-size:13.5px;color:#aeb9e2;background:#ffffff09;border-radius:9px;padding:8px 12px}.modal .row b{color:#e8eeff}.modal button{width:100%;padding:14px 0;font-size:16px;font-weight:700;color:#06241e;background:linear-gradient(180deg,#00e0ba,#00c9a7);border:none;border-radius:13px;cursor:pointer;transition:transform .08s ease}.modal button:active{transform:scale(.96)}
