:root{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-card: #0f3460;--text-primary: #eaeaea;--text-secondary: #a0a0a0;--accent: #e94560;--accent-hover: #ff6b6b;--success: #4ade80;--warning: #fbbf24;--error: #ef4444;--border-radius: 12px}*{margin:0;padding:0;box-sizing:border-box}html{padding-top:env(safe-area-inset-top,0);padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0);background:var(--bg-primary)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased}.app{max-width:100%;min-height:100vh;padding:16px;padding-top:calc(env(safe-area-inset-top,0px) + 16px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 16px);padding-left:calc(env(safe-area-inset-left,0px) + 16px);padding-right:calc(env(safe-area-inset-right,0px) + 16px)}.page,.tab-content{animation:fadeIn .2s ease-out;padding-bottom:100px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}h1{font-size:24px;font-weight:700;margin-bottom:16px}.tagline{color:var(--text-secondary);font-size:16px;margin-bottom:24px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border:none;border-radius:var(--border-radius);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-hover)}.btn.secondary{background:var(--bg-card);color:var(--text-primary)}.btn.secondary:hover{background:var(--bg-secondary)}.btn.full-width{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text-secondary)}.form-group input,.form-group textarea{width:100%;padding:14px;background:var(--bg-secondary);border:1px solid var(--bg-card);border-radius:var(--border-radius);color:var(--text-primary);font-size:16px}.form-group textarea{min-height:100px;resize:vertical}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group .hint{display:block;font-size:12px;color:var(--text-secondary);margin-top:6px}.mode-picker{display:flex;gap:10px}.mode-btn{flex:1;padding:14px 8px;background:var(--bg-secondary);border:2px solid var(--bg-card);border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:6px}.mode-btn:hover{border-color:var(--bg-card);background:var(--bg-card)}.mode-btn.active{border-color:var(--accent);background:#e945601a}.mode-btn .mode-icon{font-size:20px}.mode-btn .mode-label{font-size:12px;font-weight:600;text-align:center}.versus-info{background:#e945601a;border:1px solid rgba(233,69,96,.3);border-radius:var(--border-radius);padding:16px;text-align:center}.versus-info .versus-icon{font-size:32px;display:block;margin-bottom:8px}.versus-info p{color:var(--text-secondary);font-size:14px;margin:0}.versus-info .hint{display:block;margin-top:8px;font-size:12px;opacity:.7}.custom-labels{display:flex;align-items:center;gap:10px}.custom-labels input{flex:1;padding:12px 14px;background:var(--bg-secondary);border:2px solid var(--bg-card);border-radius:8px;color:var(--text-primary);font-size:14px}.custom-labels input:focus{outline:none;border-color:var(--accent)}.custom-labels .vs-divider{color:var(--text-secondary);font-weight:600;font-size:12px}.side-picker{display:flex;gap:12px}.side-btn{flex:1;padding:14px;background:var(--bg-secondary);border:2px solid var(--bg-card);border-radius:var(--border-radius);color:var(--text-primary);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.side-btn.active{border-color:var(--accent);background:#e945601a}.home .header{text-align:center;padding:32px 0}.home .wallet-section{display:flex;justify-content:center;margin-bottom:32px}.home .actions{display:flex;flex-direction:column;gap:12px}.home .onboarding{margin-top:32px}.home .step{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-secondary);border-radius:var(--border-radius);margin-bottom:12px}.home .step-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--accent);border-radius:50%;font-weight:700;font-size:14px}.challenge-card{background:var(--bg-card);border-radius:var(--border-radius);padding:20px;margin-bottom:24px}.challenge-card .description{font-size:18px;font-style:italic;margin-bottom:12px}.challenge-card .pool-info{display:flex;justify-content:space-between;color:var(--text-secondary);font-size:14px}.challenge-list{display:flex;flex-direction:column;gap:12px}.challenge-item{background:var(--bg-card);border-radius:var(--border-radius);padding:16px}.challenge-item.clickable{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;border:1px solid transparent}.challenge-item.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003;border-color:var(--bg-secondary)}.challenge-item.clickable:active{transform:translateY(0);box-shadow:none}.challenge-item .description{font-size:16px;margin-bottom:8px}.challenge-item .meta{display:flex;justify-content:space-between;align-items:center}.challenge-item .status{font-size:12px;font-weight:600;padding:4px 8px;border-radius:6px;text-transform:uppercase}.challenge-item .status.green{background:#4ade8033;color:var(--success)}.challenge-item .status.yellow{background:#fbbf2433;color:var(--warning)}.challenge-item .status.orange{background:#fb923c33;color:#fb923c}.challenge-item .status.blue{background:#60a5fa33;color:#60a5fa}.challenge-item .status.gray{background:#9ca3af33;color:#9ca3af}.challenge-item .pool{font-size:14px;color:var(--text-secondary)}.challenge-item .creator-badge{font-size:11px;padding:2px 6px;border-radius:4px;background:#9ca3af26;color:var(--text-secondary)}.challenge-item .creator-badge.you{background:#60a5fa33;color:#60a5fa}.challenge-item .outcome-row{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:8px 12px;background:#0003;border-radius:8px}.challenge-item .outcome-winner{font-size:13px;color:var(--text-secondary)}.challenge-item .outcome-refunded{font-size:13px;color:var(--text-secondary);font-style:italic}.challenge-item .ton-change{font-size:14px;font-weight:600}.challenge-item .ton-change.win{color:var(--success)}.challenge-item .ton-change.loss{color:var(--error)}.challenge-item .ton-change.neutral{color:var(--text-secondary)}.empty-state{text-align:center;padding:48px 16px}.empty-state p{color:var(--text-secondary);margin-bottom:24px}.loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--text-secondary)}.balance-card{background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-secondary) 100%);border-radius:var(--border-radius);padding:20px;margin-bottom:24px;text-align:center;border:1px solid rgba(233,69,96,.3)}.balance-card .label{display:block;font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.balance-card .amount{display:block;font-size:28px;font-weight:700;color:var(--accent)}.error-banner{background:#ef44441a;border:1px solid var(--error);color:var(--error);padding:12px 16px;border-radius:var(--border-radius);margin-bottom:16px;font-size:14px}.error-banner.dismissible{cursor:pointer;display:flex;justify-content:space-between;align-items:center}.error-banner .dismiss{font-size:18px;font-weight:700;margin-left:12px;opacity:.7}.error-banner .dismiss:hover{opacity:1}.loading-state{text-align:center;padding:32px;color:var(--text-secondary)}.error-state{text-align:center;padding:32px;color:var(--error)}.error-state .debug-info{margin-top:16px;font-size:11px;color:var(--text-secondary);font-family:monospace}.sides-info{display:flex;gap:12px;margin-top:16px}.side-info{flex:1;background:var(--bg-secondary);padding:12px;border-radius:8px;text-align:center}.side-info .label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;margin-bottom:4px}.side-info.yes .label{color:var(--success)}.side-info.no .label{color:var(--error)}.side-info .total{display:block;font-size:16px;font-weight:600;margin-bottom:2px}.side-info .count{display:block;font-size:11px;color:var(--text-secondary)}.page-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:8px}.header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.header-row h1{margin-bottom:0}.balance-badge{background:var(--bg-card);padding:8px 14px;border-radius:20px;font-size:14px;font-weight:600;color:var(--accent)}.sides-summary{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:var(--text-secondary)}.sides-summary .yes-side{color:var(--success)}.sides-summary .no-side{color:var(--error)}.challenge-item .date{font-size:11px;color:var(--text-secondary);margin-top:8px}.challenge-item .outcome{font-size:13px;color:var(--accent);margin-top:8px;font-weight:600}.challenges .actions{display:flex;flex-direction:column;gap:12px;margin-top:24px}.duration-picker{display:flex;flex-wrap:wrap;gap:8px}.duration-btn{padding:10px 16px;background:var(--bg-secondary);border:2px solid var(--bg-card);border-radius:8px;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.duration-btn.active{border-color:var(--accent);background:#e945601a}.custom-duration{display:flex;align-items:center;gap:12px;margin-top:12px}.custom-duration input{width:100px;padding:10px 14px;background:var(--bg-secondary);border:2px solid var(--bg-card);border-radius:8px;color:var(--text-primary);font-size:16px}.custom-duration input:focus{outline:none;border-color:var(--accent)}.toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600}.toggle-label input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);cursor:pointer}.datetime-inputs{display:flex;gap:12px;margin-top:8px}.datetime-inputs input{flex:1;padding:12px 14px;background:var(--bg-secondary);border:2px solid var(--bg-card);border-radius:8px;color:var(--text-primary);font-size:16px}.datetime-inputs input:focus{outline:none;border-color:var(--accent)}.resolution-time-picker{background:#e945600d;padding:16px;border-radius:var(--border-radius);border:1px solid rgba(233,69,96,.2)}.success-screen{text-align:center;padding-top:40px}.success-icon{font-size:64px;margin-bottom:16px}.success-screen h1{margin-bottom:24px}.challenge-preview{background:var(--bg-card);border-radius:var(--border-radius);padding:20px;margin-bottom:24px}.challenge-preview .description{font-size:18px;font-style:italic;margin-bottom:16px}.challenge-preview .details{display:flex;justify-content:space-around;font-size:14px;color:var(--text-secondary)}.share-prompt{color:var(--text-secondary);margin-bottom:24px}.success-actions{display:flex;flex-direction:column;gap:12px}.balance-note{margin-top:24px;font-size:14px;color:var(--text-secondary)}.btn.text{background:transparent;color:var(--text-secondary);padding:12px}.btn.text:hover{color:var(--text-primary)}.btn.small{padding:8px 16px;font-size:13px}.timer{display:inline-block;background:#4ade801a;color:var(--success);padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;margin-top:8px}.timer.expired{background:#ef44441a;color:var(--error)}.timer.time-up{background:#e9456033;color:var(--accent);font-weight:700;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.locked-banner.time-up{background:#e9456033;color:var(--accent);border-color:#e9456066}.resolution-time-badge{display:inline-block;background:#60a5fa26;color:#60a5fa;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;margin-top:8px}.resolution-time-badge.time-passed{background:#e9456033;color:var(--accent);font-weight:700;animation:pulse 1.5s infinite}.challenge-actions{margin-top:12px;display:flex;gap:8px}.locked-banner{display:inline-block;background:#fbbf2426;color:var(--warning);padding:8px 14px;border-radius:8px;font-size:14px;font-weight:600;margin-top:10px;border:1px solid rgba(251,191,36,.3)}.resolving-banner{display:inline-block;background:#fb923c26;color:#fb923c;padding:8px 14px;border-radius:8px;font-size:14px;font-weight:600;margin-top:10px;border:1px solid rgba(251,146,60,.3)}.resolve h1{margin-bottom:20px}.resolve h2{font-size:18px;margin-bottom:12px}.voting-status,.start-resolution,.resolution-result{background:var(--bg-secondary);padding:20px;border-radius:var(--border-radius);margin-top:20px}.vote-prompt,.resolve-info{color:var(--text-secondary);margin-bottom:16px;font-size:14px}.vote-buttons{display:flex;gap:12px}.vote-btn{flex:1;padding:16px;font-size:16px;font-weight:700}.vote-btn.yes{background:#4ade8026;border:2px solid var(--success);color:var(--success)}.vote-btn.yes:hover:not(:disabled){background:#4ade8040}.vote-btn.no{background:#ef444426;border:2px solid var(--error);color:var(--error)}.vote-btn.no:hover:not(:disabled){background:#ef444440}.voted-message{color:var(--success);font-weight:500}.outcome-result{font-size:18px;margin-bottom:20px}.outcome-result strong{color:var(--accent)}.outcome-screen{text-align:center;padding-top:20px}.outcome-icon{font-size:64px;margin-bottom:16px}.outcome-screen h1{margin-bottom:24px}.outcome-screen .challenge-card{text-align:left;margin-bottom:24px}.outcome-label{margin-top:12px;color:var(--text-secondary)}.outcome-screen.winner h1{color:var(--success)}.earnings-card{background:var(--bg-secondary);border-radius:var(--border-radius);padding:20px;margin-bottom:20px}.earnings-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px;color:var(--text-secondary)}.earnings-row.total{border-top:1px solid var(--bg-card);margin-top:8px;padding-top:16px;font-size:18px;font-weight:700;color:var(--text-primary)}.earnings-row .amount{color:var(--success)}.balance-credited{color:var(--success);font-size:14px;margin-bottom:24px}.outcome-screen.loser h1{color:var(--text-secondary)}.loss-info{background:var(--bg-secondary);border-radius:var(--border-radius);padding:20px;margin-bottom:24px;text-align:left}.loss-info p{margin-bottom:8px;color:var(--text-secondary)}.stake-lost{color:var(--error);font-weight:600;margin-top:12px}.outcome-screen.refunded h1{color:var(--warning)}.dispute-info{background:var(--bg-secondary);border-radius:var(--border-radius);padding:20px;margin-bottom:20px;text-align:left}.dispute-info p{margin-bottom:8px;color:var(--text-secondary)}.votes-comparison{padding:12px 0;font-size:14px}.refund-note{margin-top:12px;font-style:italic}.refund-card{background:var(--bg-card);border-radius:var(--border-radius);padding:16px 20px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.refund-card .amount{font-size:18px;font-weight:700;color:var(--warning)}.waiting-status{background:var(--bg-secondary);border-radius:var(--border-radius);padding:30px 20px;margin-top:20px;text-align:center}.waiting-status h2{color:var(--success)}.waiting-status .waiting-text{color:var(--text-secondary);margin-top:8px}.waiting-status .hint{font-size:12px;color:var(--text-secondary);margin-top:16px;opacity:.7}.spinner{width:40px;height:40px;border:3px solid var(--bg-card);border-top-color:var(--accent);border-radius:50%;margin:0 auto 20px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.voting-section{background:var(--bg-secondary);border-radius:var(--border-radius);padding:20px;margin-top:20px}.voting-section h2{text-align:center}.your-side{text-align:center;color:var(--text-secondary);margin-bottom:16px}.vote-hint{text-align:center;font-size:12px;color:var(--text-secondary);margin-top:16px}.avatar{display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;color:#fff;flex-shrink:0;overflow:hidden}.avatar-img{width:100%;height:100%;object-fit:cover}.avatar-sm{width:32px;height:32px;font-size:14px}.avatar-md{width:48px;height:48px;font-size:20px}.avatar-lg{width:64px;height:64px;font-size:28px}.avatar-placeholder{width:64px;height:64px;border-radius:50%;background:var(--bg-secondary);border:2px dashed var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--text-secondary)}.challenge-detail{padding-bottom:24px}.progress-indicator{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;position:relative;padding:0 8px}.progress-step{display:flex;flex-direction:column;align-items:center;gap:6px;z-index:1}.progress-step .step-dot{width:12px;height:12px;border-radius:50%;background:var(--bg-card);border:2px solid var(--text-secondary);transition:all .3s ease}.progress-step.completed .step-dot{background:var(--accent);border-color:var(--accent)}.progress-step.current .step-dot{border-color:var(--accent);box-shadow:0 0 0 4px #e9456033}.progress-step .step-label{font-size:10px;color:var(--text-secondary);text-align:center}.progress-step.completed .step-label,.progress-step.current .step-label{color:var(--text-primary)}.progress-line{position:absolute;top:5px;left:24px;right:24px;height:2px;background:var(--bg-card)}.progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.matchup-header{display:flex;align-items:center;justify-content:space-between;padding:20px 16px;background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-secondary) 100%);border-radius:var(--border-radius);margin-bottom:20px}.matchup-header .player{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1}.matchup-header .vs{font-size:18px;font-weight:700;color:var(--accent);padding:0 8px}.matchup-header .username{font-size:13px;font-weight:600;color:var(--text-primary);text-align:center;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-badge{font-size:11px;font-weight:700;padding:4px 10px;border-radius:12px;text-transform:uppercase}.side-badge.yes{background:#4ade8033;color:var(--success)}.side-badge.no{background:#ef444433;color:var(--error)}.waiting-opponent{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px}.stakes-card{background:var(--bg-secondary);border-radius:var(--border-radius);padding:16px;margin-bottom:20px}.stake-row{display:flex;justify-content:space-between;padding:10px 0;font-size:14px}.stake-row:not(:last-child){border-bottom:1px solid var(--bg-card)}.stake-row .amount{font-weight:600;color:var(--accent)}.challenge-card .status-row{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.challenge-card .pool{font-size:14px;color:var(--text-secondary)}.actions-section{background:var(--bg-secondary);border-radius:var(--border-radius);padding:20px;margin-top:20px}.status-message{text-align:center;color:var(--text-secondary);margin-bottom:16px;font-size:14px}.status-message.ready{color:var(--success)}.status-message.waiting{color:var(--warning)}.turn-indicator{text-align:center}.turn-indicator.your-turn .turn-label{font-size:16px;font-weight:700;color:var(--accent);margin-bottom:16px;animation:pulse 1.5s infinite}.turn-indicator.their-turn{color:var(--text-secondary)}.turn-indicator .waiting-text{margin-top:8px;font-size:14px}.spinner-small{width:24px;height:24px;border:2px solid var(--bg-card);border-top-color:var(--accent);border-radius:50%;margin:16px auto 0;animation:spin 1s linear infinite}.challenge-detail .outcome-section{text-align:center;padding:32px 20px;background:var(--bg-secondary);border-radius:var(--border-radius);margin-top:20px}.challenge-detail .outcome-section .result-icon{font-size:48px;margin-bottom:12px}.challenge-detail .outcome-section h3{margin-bottom:8px;font-size:20px}.challenge-detail .outcome-section .earnings{font-size:24px;font-weight:700;color:var(--success)}.challenge-detail .outcome-section .stake-lost{font-size:20px;color:var(--error)}.challenge-detail .outcome-section .outcome-detail{margin-top:12px;font-size:14px;color:var(--text-secondary)}.challenge-detail .outcome-section.refunded h3{color:var(--warning)}.challenge-detail .outcome-section .refund-amount{margin-top:12px;font-size:18px;color:var(--warning);font-weight:600}.challenge-detail .outcome-section.expired h3{color:var(--text-secondary)}.stats-bar{display:flex;align-items:center;justify-content:center;gap:16px;background:var(--bg-card);border-radius:var(--border-radius);padding:14px 20px;margin-bottom:20px}.stats-bar .stat{display:flex;flex-direction:column;align-items:center;gap:2px}.stats-bar .stat-value{font-size:18px;font-weight:700}.stats-bar .stat-value.wins{color:var(--success)}.stats-bar .stat-value.losses{color:var(--error)}.stats-bar .stat-value.earned{color:var(--success)}.stats-bar .stat-value.lost{color:var(--error)}.stats-bar .stat-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase}.stats-bar .stat-divider{width:1px;height:30px;background:var(--bg-secondary)}.active-section{margin-bottom:24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header h3{font-size:16px;font-weight:600;margin:0}.view-all-link{background:none;border:none;color:var(--accent);font-size:14px;font-weight:500;cursor:pointer;padding:4px 8px}.active-list{display:flex;flex-direction:column;gap:10px}.active-item{background:var(--bg-card);border-radius:var(--border-radius);padding:14px;cursor:pointer;transition:transform .15s ease,border-color .15s ease;border:1px solid transparent}.active-item:hover{transform:translateY(-2px)}.active-item.needs-action{border-color:var(--accent);animation:pulse-border 2s infinite}@keyframes pulse-border{0%,to{border-color:var(--accent)}50%{border-color:#e945604d}}.active-matchup{display:flex;align-items:center;gap:10px;margin-bottom:8px}.active-matchup .opponent-name{font-weight:600;font-size:14px}.active-matchup .opponent-name.waiting{color:var(--text-secondary);font-weight:400;font-style:italic}.avatar-placeholder-sm{width:32px;height:32px;border-radius:50%;background:var(--bg-secondary);border:2px dashed var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--text-secondary)}.active-description{font-size:13px;color:var(--text-secondary);margin-bottom:10px;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.active-meta{display:flex;align-items:center;gap:8px}.action-badge{background:var(--accent);color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:10px;animation:pulse 1.5s infinite}.their-turn{font-size:12px;color:var(--text-secondary);font-style:italic}.btn-mini{background:var(--bg-secondary);border:none;color:var(--text-primary);font-size:12px;font-weight:500;padding:4px 10px;border-radius:6px;cursor:pointer}.btn-mini:hover{background:var(--accent);color:#fff}.empty-active{text-align:center;padding:24px 16px;background:var(--bg-card);border-radius:var(--border-radius);margin-bottom:24px}.empty-active p{color:var(--text-secondary);margin:0}.empty-active .empty-hint{font-size:13px;margin-top:4px;opacity:.7}.fab{position:fixed;bottom:calc(env(safe-area-inset-bottom,0px) + 24px);left:50%;transform:translate(-50%);width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,#ff6b8a 100%);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #e9456066,0 2px 4px #0003;z-index:1000;transition:all .2s cubic-bezier(.4,0,.2,1);animation:fabEntry .4s cubic-bezier(.34,1.56,.64,1)}@keyframes fabEntry{0%{opacity:0;transform:translate(-50%) scale(0) rotate(-180deg)}to{opacity:1;transform:translate(-50%) scale(1) rotate(0)}}.fab:hover{transform:translate(-50%) scale(1.08);box-shadow:0 6px 20px #e9456080,0 4px 8px #00000040}.fab:active{transform:translate(-50%) scale(.95);box-shadow:0 2px 8px #e945604d,0 1px 2px #00000026}.fab-icon{display:flex;align-items:center;justify-content:center;color:#fff;transition:transform .2s ease}.fab:hover .fab-icon{transform:rotate(90deg)}.fab-label{position:absolute;bottom:70px;left:50%;transform:translate(-50%) translateY(10px);background:var(--bg-card);color:var(--text-primary);padding:8px 14px;border-radius:8px;font-size:14px;font-weight:500;white-space:nowrap;box-shadow:0 2px 8px #0000004d;opacity:0;transition:all .2s ease;pointer-events:none}.fab:hover .fab-label{opacity:1;transform:translate(-50%) translateY(0)}.fab.pulse{animation:fabEntry .4s cubic-bezier(.34,1.56,.64,1),fabPulse 2s ease-in-out 1s infinite}@keyframes fabPulse{0%,to{box-shadow:0 4px 12px #e9456066,0 2px 4px #0003}50%{box-shadow:0 4px 12px #e9456066,0 2px 4px #0003,0 0 0 8px #e9456026}}.tab-container,.tab-panel{min-height:100vh}.tabbar{position:fixed;bottom:calc(env(safe-area-inset-bottom,0px) + 16px);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:4px;padding:8px 12px;background:#16213ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:28px;box-shadow:0 4px 24px #0006,0 2px 8px #0003,inset 0 1px #ffffff0d;z-index:1000;border:1px solid rgba(255,255,255,.08)}.tabbar-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 16px;background:transparent;border:none;border-radius:20px;cursor:pointer;transition:all .2s ease;color:var(--text-secondary);min-width:60px}.tabbar-item:hover{color:var(--text-primary)}.tabbar-item.active{color:var(--accent);background:#e9456026}.tabbar-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:transform .2s ease}.tabbar-item.active .tabbar-icon{transform:scale(1.1)}.tabbar-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.tabbar-indicator{position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--accent);border-radius:50%;animation:indicatorPop .2s ease}@keyframes indicatorPop{0%{transform:translate(-50%) scale(0)}50%{transform:translate(-50%) scale(1.5)}to{transform:translate(-50%) scale(1)}}.profile-header{display:flex;align-items:center;gap:16px;padding:24px 0;position:relative}.profile-info{flex:1}.profile-name{font-size:20px;font-weight:700;margin:0 0 4px}.profile-wallet{font-size:12px;color:var(--text-secondary);margin:0;font-family:monospace}.refresh-btn{width:40px;height:40px;border-radius:50%;background:var(--bg-secondary);border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.refresh-btn:hover{background:var(--bg-card);color:var(--text-primary)}.refresh-btn:active{transform:rotate(180deg)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.profile-balance{margin-bottom:20px}.profile-balance .earned-label{display:block;font-size:12px;color:var(--success);margin-top:4px}.profile-balance .earned-label.negative{color:var(--error)}.about-section{margin-top:24px;padding:20px;background:var(--bg-secondary);border-radius:var(--border-radius)}.about-section h3{font-size:16px;font-weight:600;margin-bottom:4px}.about-section .about-tagline{font-size:13px;color:var(--text-secondary);margin-bottom:16px}.about-features{display:flex;flex-direction:column;gap:14px}.about-feature{display:flex;gap:12px;align-items:flex-start}.about-feature .feature-icon{font-size:20px;line-height:1;flex-shrink:0;width:28px;text-align:center}.about-feature strong{display:block;font-size:13px;font-weight:600;margin-bottom:2px}.about-feature p{font-size:12px;color:var(--text-secondary);line-height:1.4;margin:0}.about-version{margin-top:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);font-size:11px;color:var(--text-secondary);text-align:center}.wallet-connect-section{display:flex;justify-content:center;margin-bottom:20px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}.stat-card{background:var(--bg-secondary);border-radius:var(--border-radius);padding:14px 8px;text-align:center}.stat-card .stat-value{display:block;font-size:20px;font-weight:700;margin-bottom:4px}.stat-card .stat-value.wins{color:var(--success)}.stat-card .stat-value.losses{color:var(--error)}.stat-card .stat-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.activity-summary{display:flex;justify-content:center;gap:32px;padding:16px 0;margin-bottom:20px;border-top:1px solid var(--bg-card);border-bottom:1px solid var(--bg-card)}.activity-item{text-align:center}.activity-count{display:block;font-size:24px;font-weight:700;color:var(--text-primary)}.activity-count.active{color:var(--accent)}.activity-label{font-size:12px;color:var(--text-secondary)}.history-section{margin-top:16px}.history-section h3{font-size:16px;font-weight:600;margin-bottom:12px}.history-list{display:flex;flex-direction:column;gap:10px}.history-item{display:flex;align-items:center;gap:12px;background:var(--bg-secondary);border-radius:var(--border-radius);padding:12px;cursor:pointer;transition:all .2s ease}.history-item:hover{background:var(--bg-card)}.history-content{flex:1;min-width:0}.history-description{font-size:14px;font-style:italic;margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-meta{display:flex;align-items:center;gap:8px}.history-outcome{font-size:12px;font-weight:600;color:var(--success);padding:4px 10px;background:#4ade8026;border-radius:12px;white-space:nowrap}.history-meta .creator-tag{font-size:11px;color:var(--text-secondary)}.history-result{display:flex;flex-direction:column;align-items:flex-end}.history-result .ton-change{font-size:14px;font-weight:600;white-space:nowrap}.history-result .ton-change.win{color:var(--success)}.history-result .ton-change.loss{color:var(--error)}.history-result .ton-change.neutral{color:var(--text-secondary)}.demo-badge{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:var(--border-radius);color:var(--warning);font-size:13px;margin-top:20px}.demo-icon{font-size:18px}
