:root{--bg:var(--tg-theme-bg-color,#0f1216);--card:var(--tg-theme-secondary-bg-color,#171b21);--accent:var(--tg-theme-link-color,#ffd54a);--text:var(--tg-theme-text-color,#f2f4f8);--hint:var(--tg-theme-hint-color,#8b93a1);--button:var(--tg-theme-button-color,#ffd54a);--button-text:var(--tg-theme-button-text-color,#0f1216);--danger:#ff6b6b;--radius:14px}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.45}#root{flex-direction:column;height:100%;display:flex}button{font:inherit}.app{flex-direction:column;height:100%;display:flex}.app-header{z-index:10;padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top));background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in srgb, var(--text) 8%, transparent);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.app-title{font-size:17px;font-weight:700}.app-balance{font-variant-numeric:tabular-nums;color:var(--accent);background:var(--card);border-radius:999px;padding:4px 12px;font-weight:700}.app-main{padding:16px;padding-bottom:calc(60px + env(safe-area-inset-bottom));flex:1;overflow-y:auto}.screen{max-width:480px;margin:0 auto}.app-nav{height:calc(44px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--card);border-top:1px solid color-mix(in srgb, var(--text) 8%, transparent);z-index:10;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-tab{color:var(--hint);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex:1;font-size:12px;font-weight:600}.nav-tab.active{color:var(--accent)}.link-button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:8px;font-weight:600}.fullscreen-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;padding:24px;display:flex}.fullscreen-state .big{margin:0;font-size:20px;font-weight:700}.fullscreen-state .hint{color:var(--hint);margin:0}.fullscreen-state.error .big:first-child{font-size:42px}.spinner{border:3px solid var(--card);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.card{background:var(--card);border-radius:var(--radius);margin-bottom:12px;padding:16px}.field-label{color:var(--hint);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.hint{color:var(--hint)}.pos{color:#4cd97b}.neg{color:var(--danger)}.balance-card{background:var(--card);border-radius:var(--radius);flex-direction:column;gap:2px;margin-bottom:12px;padding:18px 16px;display:flex}.balance-label{color:var(--hint);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.balance-value{color:var(--accent);font-variant-numeric:tabular-nums;font-size:34px;font-weight:800}.game-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:4px;display:grid}.game-card{border:1px solid color-mix(in srgb, var(--text) 10%, transparent);border-radius:var(--radius);background:var(--card);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;flex-direction:column;align-items:center;gap:4px;padding:14px 6px;display:flex}.game-card:active{transform:scale(.97)}.game-emoji{font-size:30px}.game-name{font-weight:700}.game-blurb{color:var(--hint);text-align:center;font-size:11px}.fair-link{text-align:center;width:100%;display:block}.section-title{color:var(--hint);text-transform:uppercase;letter-spacing:.04em;margin:18px 0 8px;font-size:13px;font-weight:700}.bet-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.bet-row{background:var(--card);border-radius:10px;grid-template-columns:1fr auto auto auto;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:grid}.bet-game{text-transform:capitalize;font-weight:700}.bet-num{font-variant-numeric:tabular-nums}.skeleton-row{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:10px;height:34px;animation:1.2s ease-in-out infinite pulse}.skeleton-block{border-radius:var(--radius);background:color-mix(in srgb, var(--text) 8%, transparent);height:160px;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.45}}.stake-field{margin-bottom:12px}.stake-input{font-variant-numeric:tabular-nums;width:100%;color:var(--text);background:var(--bg);border:1px solid color-mix(in srgb, var(--text) 14%, transparent);border-radius:10px;padding:10px 12px;font-size:18px;font-weight:700}.stake-input.invalid{border-color:var(--danger)}.stake-presets{gap:8px;margin-top:8px;display:flex}.chip{border:1px solid color-mix(in srgb, var(--text) 14%, transparent);color:var(--text);font-variant-numeric:tabular-nums;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:999px;flex:1;padding:7px 0;font-weight:700}.chip.active{background:var(--accent);border-color:var(--accent);color:var(--button-text)}.dice-mult{flex-direction:column;align-items:center;gap:2px;padding:20px 16px;display:flex}.mult-value{color:var(--accent);font-variant-numeric:tabular-nums;font-size:42px;font-weight:800;line-height:1.1}.mult-sub{color:var(--hint);font-size:13px}.dice-target input[type=range]{width:100%;accent-color:var(--accent);margin:8px 0 2px}.target-ends{color:var(--hint);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:12px;display:flex}.target-now{color:var(--text);font-size:16px;font-weight:800}.roll-button{background:var(--button);width:100%;color:var(--button-text);letter-spacing:.06em;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;padding:14px 0;font-size:17px;font-weight:800}.roll-button:disabled{opacity:.45;cursor:default}.dice-result{flex-direction:column;align-items:center;gap:4px;padding:18px 16px;display:flex}.dice-result.win{border:1px solid #4cd97b73}.dice-result.lose{border:1px solid color-mix(in srgb, var(--danger) 45%, transparent)}.result-roll{font-variant-numeric:tabular-nums;font-size:46px;font-weight:800;line-height:1.1}.dice-result.win .result-roll,.dice-result.win .result-verdict{color:#4cd97b}.dice-result.lose .result-roll,.dice-result.lose .result-verdict{color:var(--danger)}.result-verdict{letter-spacing:.12em;font-size:13px;font-weight:800}.result-payout{font-variant-numeric:tabular-nums;font-size:19px;font-weight:700}.result-balance{color:var(--hint);font-variant-numeric:tabular-nums;font-size:13px}.seed-pair{width:100%;margin-top:10px}.seed-toggle{border:1px dashed color-mix(in srgb, var(--text) 18%, transparent);width:100%;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:8px 10px;display:flex}.seed-row{word-break:break-all;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.seed-note{color:var(--hint);font-size:11px}.seed-hint{color:var(--accent);font-size:11px}.result-toast{left:50%;bottom:calc(56px + env(safe-area-inset-bottom));z-index:20;background:color-mix(in srgb, var(--danger) 18%, var(--card));border:1px solid var(--danger);border-radius:12px;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:10px 14px;font-size:14px;font-weight:700;animation:.16s ease-out toast-in;display:flex;position:fixed;transform:translate(-50%)}.toast-close{color:var(--hint);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:18px;line-height:1}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}.fair-block{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--card);border-radius:var(--radius);margin:0 0 10px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.55}.fair-error{text-align:center}.fair-error p{margin:0 0 6px}.back-button{text-align:center;width:100%;margin-top:6px;display:block}.crash-banner{flex-direction:column;align-items:center;gap:2px;padding:18px 16px;display:flex}.crash-round{color:var(--hint);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.crash-phase-text{font-variant-numeric:tabular-nums;color:var(--text);font-size:34px;font-weight:800;line-height:1.15}.crash-banner.flight .crash-phase-text{color:var(--accent)}.crash-banner.ended .crash-phase-text{color:var(--danger)}.crash-chart-card{padding:10px}.crash-chart{background:color-mix(in srgb, var(--bg) 60%, var(--card));border-radius:10px;width:100%;height:160px;display:block}.crash-line{stroke:var(--accent);stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.crash-banner.ended~.crash-chart-card .crash-line,.crash-screen.crashed .crash-line{stroke:var(--danger)}.crash-mybet{text-align:center;font-variant-numeric:tabular-nums;font-weight:700}.crash-join{flex-direction:column;gap:10px;display:flex}.auto-field{flex-direction:column;display:flex}.auto-input{border:1px solid color-mix(in srgb, var(--text) 14%, transparent);background:var(--bg);width:100%;color:var(--text);font-variant-numeric:tabular-nums;border-radius:10px;padding:12px 14px;font-size:17px}.auto-input.invalid{border-color:var(--danger)}.auto-hint{color:var(--hint);margin-top:5px;font-size:12px}.join-button,.cashout-button{background:var(--button);width:100%;color:var(--button-text);letter-spacing:.06em;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;padding:14px 0;font-size:17px;font-weight:800}.join-button:disabled,.cashout-button:disabled{opacity:.45;cursor:default}.cashout-button{background:#4cd97b}.mines-loading{color:var(--hint);flex-direction:column;align-items:center;gap:10px;padding:40px 16px;display:flex}.mines-setup{flex-direction:column;gap:10px;display:flex}.risk-row{gap:8px;display:flex}.risk-chip{flex:1}.start-button{background:var(--button);width:100%;color:var(--button-text);letter-spacing:.06em;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;padding:14px 0;font-size:17px;font-weight:800}.start-button:disabled{opacity:.45;cursor:default}.mines-board{flex-direction:column;gap:12px;display:flex}.mines-info{color:var(--hint);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:14px;font-weight:700;display:flex}.mines-info span:nth-child(3){color:var(--accent)}.mines-grid{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.mines-tile{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--text) 12%, transparent);background:var(--bg);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:10px;justify-content:center;align-items:center;padding:0;font-size:22px;display:flex}.mines-tile:active{border-color:var(--accent)}.mines-tile.open{background:color-mix(in srgb, #4cd97b 14%, var(--bg));cursor:default;border-color:#4cd97b66}.mines-tile.done{cursor:default;color:var(--text)}.mines-summary{flex-direction:column;align-items:center;gap:4px;padding:18px 16px;display:flex}.mines-summary.win{background:color-mix(in srgb, #4cd97b 12%, var(--card))}.mines-summary.lose{background:color-mix(in srgb, var(--danger) 12%, var(--card))}.summary-title{font-size:24px;font-weight:800}.summary-payout{font-variant-numeric:tabular-nums;font-size:20px;font-weight:800}.summary-balance{color:var(--hint);font-variant-numeric:tabular-nums;font-size:13px}.again-button{background:var(--button);width:100%;color:var(--button-text);letter-spacing:.06em;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;padding:14px 0;font-size:17px;font-weight:800}.wallet-tabs{background:var(--card);border-radius:12px;gap:6px;margin-bottom:12px;padding:4px;display:flex}.wallet-tab{color:var(--hint);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:9px;flex:1;padding:9px 0;font-size:14px;font-weight:700}.wallet-tab.active{background:var(--accent);color:var(--button-text)}.wallet-body{flex-direction:column;display:flex}.chain-chips{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;display:grid}.chain-chip{border:1px solid color-mix(in srgb, var(--text) 14%, transparent);color:var(--text);letter-spacing:.03em;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:999px;padding:9px 0;font-size:13px;font-weight:700}.chain-chip.active{background:var(--accent);border-color:var(--accent);color:var(--button-text)}.chain-chip:disabled{opacity:.45;cursor:default}.qr-wrap{justify-content:center;margin-bottom:12px;display:flex}.qr-canvas{background:#fff;border-radius:10px}.qr-fallback{border:1px dashed color-mix(in srgb, var(--text) 18%, transparent);border-radius:10px;flex-direction:column;align-items:center;gap:6px;width:100%;padding:18px 12px;display:flex}.qr-fallback-label{color:var(--hint);font-size:12px}.qr-fallback-text{word-break:break-all;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.copy-address,.copy-desttag{border:1px solid color-mix(in srgb, var(--text) 12%, transparent);background:var(--bg);width:100%;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;display:flex}.address-text{word-break:break-all;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.copy-hint{color:var(--hint);font-size:12px;font-weight:700}.copy-hint.ok{color:#4cd97b}.dest-tag-row{flex-direction:column;gap:6px;margin-top:10px;display:flex}.dest-tag-value{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700}.required-badge{background:color-mix(in srgb, var(--danger) 22%, transparent);color:var(--danger);letter-spacing:.06em;border-radius:6px;margin-left:4px;padding:1px 6px;font-size:10px;font-weight:800;display:inline-block}.deposit-note{text-align:center;margin:10px 0 0;font-size:12px}.deposit-unconfigured{text-align:center}.unconfigured-title{margin:0 0 6px;font-weight:700}.env-var{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.withdraw-form{flex-direction:column;display:flex}.withdraw-form .field-label{margin-top:10px}.withdraw-form .field-label:first-child{margin-top:0}.amount-input,.address-input,.dest-tag-input{font-variant-numeric:tabular-nums;width:100%;color:var(--text);background:var(--bg);border:1px solid color-mix(in srgb, var(--text) 14%, transparent);border-radius:10px;padding:11px 12px;font-size:15px;font-weight:600}.address-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:400}.amount-input[aria-invalid=true],.address-input[aria-invalid=true],.dest-tag-input[aria-invalid=true]{border-color:var(--danger)}.field-note{margin:5px 0 0;font-size:12px}.continue-button{background:var(--button);width:100%;color:var(--button-text);letter-spacing:.06em;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;margin-top:14px;padding:14px 0;font-size:17px;font-weight:800}.continue-button:disabled{opacity:.45;cursor:default}.confirm-title{text-align:center;margin:0 0 10px;font-size:17px}.confirm-rows{flex-direction:column;gap:8px;margin:0;display:flex}.confirm-row{flex-direction:column;gap:1px;display:flex}.confirm-row dt{color:var(--hint);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.confirm-row dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.confirm-address{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;font-weight:400}.confirm-note{text-align:center;margin:12px 0 0;font-size:12px}.confirm-actions{gap:10px;margin-top:14px;display:flex}.confirm-back,.confirm-send{letter-spacing:.04em;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;flex:1;padding:14px 0;font-size:16px;font-weight:800}.confirm-back{border:1px solid color-mix(in srgb, var(--text) 16%, transparent);color:var(--text);background:0 0}.confirm-send{background:var(--button);color:var(--button-text)}.confirm-send:disabled{opacity:.45;cursor:default}.withdraw-success{background:color-mix(in srgb, #4cd97b 10%, var(--card));border:1px solid #4cd97b73;flex-direction:column;align-items:center;gap:4px;padding:20px 16px;display:flex}.success-title{font-size:19px;font-weight:800}.success-id{color:var(--hint);font-size:13px;font-weight:700}.success-detail{word-break:break-all;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.success-usd{color:var(--accent);font-variant-numeric:tabular-nums;font-size:21px;font-weight:800}.success-balance{color:var(--hint);font-variant-numeric:tabular-nums;font-size:13px}.new-withdrawal{background:var(--button);width:100%;color:var(--button-text);letter-spacing:.04em;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;margin-top:12px;padding:13px 0;font-size:16px;font-weight:800}.hist-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.hist-row{background:var(--card);border-radius:10px;grid-template-columns:1fr auto auto auto auto;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:grid}.hist-game{text-transform:capitalize;font-weight:700}.hist-num{font-variant-numeric:tabular-nums}.hist-date{color:var(--hint);font-variant-numeric:tabular-nums;font-size:11px}.page-nav{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.page-prev,.page-next{border:1px solid color-mix(in srgb, var(--text) 14%, transparent);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:10px;flex:1;padding:10px 0;font-size:14px;font-weight:700}.page-prev:disabled,.page-next:disabled{opacity:.4;cursor:default}.page-label{color:var(--hint);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}
