:root{color-scheme:light dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;--tg-theme-bg-color: #0f1115;--tg-theme-text-color: #f2f3f5;--tg-theme-button-color: #4f8cff;--tg-theme-button-text-color: #ffffff;--tg-theme-hint-color: #8a8f98;--tg-theme-link-color: #4f8cff;--tg-theme-secondary-bg-color: #161922;--tg-theme-header-bg-color: #0f1115;--bg: var(--tg-theme-bg-color);--fg: var(--tg-theme-text-color);--muted: var(--tg-theme-hint-color);--accent: var(--tg-theme-button-color);--accent-fg: var(--tg-theme-button-text-color);--surface: var(--tg-theme-secondary-bg-color);--radius: 12px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html,body{overflow-x:hidden;overflow-x:clip}body{background:var(--tg-theme-bg-color);color:var(--fg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}a{color:var(--tg-theme-link-color);text-decoration:none}button{font:inherit}.orientation-blocker{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;min-height:100vh;min-height:100dvh;place-items:center;padding:24px;background:var(--bg);color:var(--fg);font-size:20px;font-weight:600;text-align:center}.shell{display:flex;flex-direction:column;min-height:100%;background:var(--bg)}.shell__main{flex:1;padding:calc(env(safe-area-inset-top,0px) + 16px) calc(env(safe-area-inset-right,0px) + 16px) calc(env(safe-area-inset-bottom,0px) + 24px) calc(env(safe-area-inset-left,0px) + 16px);padding-top:calc(max(env(safe-area-inset-top,0px),var(--tg-safe-area-inset-top, 0px)) + var(--tg-content-safe-area-inset-top, 0px) + 16px)}.page{display:flex;flex-direction:column;gap:16px}.muted{color:var(--muted)}.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px}.dim{opacity:.7;word-break:break-all}.card{background:var(--surface);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:12px}.profile__head{display:flex;align-items:center;gap:14px}.profile__name{display:flex;flex-direction:column;gap:2px}.profile__title{font-size:18px;font-weight:600}.profile__meta{margin:0;display:grid;grid-template-columns:1fr;gap:8px}.profile__meta>div{display:flex;flex-direction:column;gap:2px}.profile__meta dt{font-size:12px;margin:0}.profile__meta dd{margin:0;font-size:14px}.avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;background:var(--bg);flex-shrink:0}.avatar--initial{display:grid;place-items:center;font-size:24px;font-weight:600;color:var(--accent-fg);background:var(--accent)}.actions{display:flex;flex-direction:column;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:var(--radius);border:0;font-weight:600;cursor:pointer;text-align:center}.btn--primary{background:var(--accent);color:var(--accent-fg)}.btn--primary:disabled{opacity:.5;cursor:not-allowed}.btn--ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}.btn--stacked{flex-direction:column;gap:2px}.btn__subtitle{display:block;font-size:12px;font-weight:500;opacity:.75}.btn--sm{padding:8px 12px;font-size:13px;flex-shrink:0}.btn:disabled{opacity:.5;cursor:not-allowed}.topup__input{width:100%;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--muted);background:var(--bg);color:inherit;font-size:15px}.topup__actions{display:flex;flex-direction:column;gap:10px}.error-card{color:#e5484d;font-size:14px}.fd-bonus-promo{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;padding:10px 12px;border:1px solid var(--accent);border-radius:var(--radius);font-size:14px}.fd-bonus-promo p{margin:0}.fd-bonus-promo__title{font-weight:600;color:var(--accent)}.fd-bonus-promo__example,.fd-bonus-promo__once,.fd-bonus-promo__note{font-size:13px}.history__title{font-weight:600}.history__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.history__item{display:flex;align-items:center;justify-content:space-between;gap:12px}.history__amount{font-size:14px;font-weight:600}.history__meta{font-size:12px}.wallet-panel__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.wallet-panel__amount{font-size:18px;font-weight:600}.wallet-panel__todo{list-style:disc;margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:14px}.game-frame__iframe--standalone{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;display:block;background:#050607;z-index:100}.auth-state{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px}.auth-state .card{width:100%;max-width:360px;align-items:stretch}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--muted);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(120% 80% at 50% 22%,#f6c04d1a,#05060700 60%),#050607;color:#f7f1df}.splash__panel{display:flex;flex-direction:column;align-items:center;gap:14px;padding:32px 40px;border-radius:22px;background:#0c0e10b8;border:1px solid rgba(246,192,77,.45);box-shadow:0 0 24px #f6c04d2e,0 12px 40px #0000008c}.splash__emblem{display:grid;place-items:center;filter:drop-shadow(0 0 12px rgba(246,192,77,.4));animation:splash-pulse 1.8s ease-in-out infinite}.splash__tagline{margin:0;font-size:11px;font-weight:600;letter-spacing:.4em;text-indent:.4em;color:#a69b84}.splash__loader{display:flex;align-items:center;gap:10px;margin-top:6px}.splash__spinner{width:20px;height:20px;border-radius:50%;border:3px solid rgba(246,192,77,.2);border-top-color:#f6c04d;animation:spin .9s linear infinite}.splash__loading-text{font-size:13px;color:#a69b84}@keyframes splash-pulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.08);opacity:1}}@media (prefers-reduced-motion: reduce){.splash__emblem{animation:none}}.lobby__error{color:tomato;font-size:14px}.invite{display:flex;flex-direction:column;gap:8px}.invite__link{background:var(--bg);padding:10px 12px;border-radius:8px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;word-break:break-all;color:var(--muted)}.players{display:grid;grid-template-columns:1fr 1fr;gap:12px}.player-slot{background:var(--bg);border-radius:12px;padding:14px;display:flex;flex-direction:column;align-items:center;gap:6px}.player-slot--mine{outline:2px solid var(--accent)}.player-slot__name{font-weight:600}.player-slot__ready{font-size:12px;color:var(--muted)}.player-slot__ready--yes{color:#4ade80}.game{display:flex;flex-direction:column;align-items:stretch;gap:24px;height:100%}.scoreboard{display:grid;grid-template-columns:1fr 1fr;gap:12px}.score-card{background:var(--surface);border-radius:var(--radius);padding:12px;display:flex;flex-direction:column;align-items:center;gap:4px}.score-card--mine{outline:2px solid var(--accent)}.score-card__name{font-size:13px;color:var(--muted)}.score-card__score{font-size:32px;font-weight:800}.timer{text-align:center}.timer__value{font-size:64px;font-weight:800;color:var(--accent);line-height:1}.timer__label{font-size:12px;color:var(--muted);margin-top:4px}.tap-btn-wrap{display:flex;justify-content:center;padding-top:8px}.tap-btn{width:78vmin;height:78vmin;max-width:360px;max-height:360px;border-radius:50%;border:0;background:var(--accent);color:var(--accent-fg);font-size:56px;font-weight:800;letter-spacing:.05em;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform 60ms ease;outline:none}.tap-btn:active:not(:disabled){transform:scale(.95)}.tap-btn:disabled{opacity:.5;cursor:not-allowed}.tap-btn:focus-visible{outline:3px solid var(--fg);outline-offset:4px}.result{text-align:center;display:flex;flex-direction:column;gap:16px;align-items:stretch}.result__headline{font-size:28px;font-weight:800;margin:0}.result__score{font-size:18px;color:var(--muted)}.result__match-id{font-size:12px;color:var(--muted);font-family:ui-monospace,SF Mono,Menlo,monospace}.center{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 16px}
