/* ── BETS TAB ── */
.bets-filter-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:1.2rem}
.bets-filter-btn{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 14px;border-radius:3px;cursor:pointer;border:1px solid var(--border2);background:var(--surface2);color:var(--muted);transition:all .15s}
.bets-filter-btn:hover{border-color:var(--muted);color:var(--text)}
.bets-filter-btn.active{background:var(--text);color:#f7f4ef;border-color:var(--text)}
.bet-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:10px;overflow:hidden;transition:border-color .2s,box-shadow .25s var(--ease-out);box-shadow:var(--shadow-xs)}
.bet-card:hover{border-color:var(--border2);box-shadow:var(--shadow-md)}
.bet-card.bet-mine{border-color:rgba(192,57,43,.25)}
.bet-card.bet-settled{opacity:.78}
.bet-card.bet-expired{opacity:.55}
.bet-card-header{display:flex;align-items:center;gap:12px;padding:13px 16px 12px;border-bottom:1px solid var(--border);flex-wrap:wrap}
.bet-driver-pill{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:4px;border:1px solid var(--border2);flex-shrink:0}
.bet-driver-pill .driver-avatar{width:28px !important;height:28px !important;flex-shrink:0}
.bet-driver-pill-name{font-size:13px;font-weight:600;color:#f7f4ef}
.bet-driver-pill-team{font-size:10px;font-family:'Space Mono',monospace;opacity:.75}
.bet-type-label{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text);flex:1;min-width:120px}
.bet-race-tag{font-family:'Space Mono',monospace;font-size:10px;color:var(--muted);background:var(--surface2);border:1px solid var(--border);padding:2px 7px;border-radius:2px;flex-shrink:0}
.bet-status-pill{font-family:'Space Mono',monospace;font-size:10px;padding:3px 8px;border-radius:3px;flex-shrink:0}
.bet-status-pill.open{background:var(--saved-bg);color:var(--saved-text);border:1px solid rgba(0,200,100,.2)}
.bet-status-pill.live{background:rgba(255,180,0,.1);color:#c99a00;border:1px solid rgba(255,180,0,.25)}
.bet-status-pill.expired{background:rgba(140,132,120,.1);color:var(--muted);border:1px solid var(--border2)}
.bet-status-pill.settled-win{background:rgba(39,174,96,.15);color:var(--saved-text);border:1px solid rgba(0,200,100,.3)}
.bet-status-pill.settled-loss{background:rgba(192,57,43,.1);color:var(--accent);border:1px solid rgba(192,57,43,.25)}
.bet-status-pill.no-contest{background:rgba(140,132,120,.12);color:var(--muted);border:1px solid var(--border2)}
.bet-card-body{padding:10px 16px 12px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.bet-stakes-bar{flex:1;min-width:160px}
.bet-stakes-label{display:flex;justify-content:space-between;font-family:'Space Mono',monospace;font-size:10px;color:var(--muted);margin-bottom:4px}
.bet-bar-track{height:6px;border-radius:3px;background:var(--surface2);border:1px solid var(--border);overflow:hidden;display:flex}
.bet-bar-for{background:var(--up);transition:width .4s ease}
.bet-bar-against{background:var(--accent);transition:width .4s ease}
.bet-pot{font-family:'Space Mono',monospace;font-size:11px;color:var(--muted);white-space:nowrap}
.bet-pot strong{color:var(--gold);font-size:14px}
.bet-creator-info{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);flex-shrink:0}
.bet-creator-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;border:1px solid var(--border2);flex-shrink:0}
.bet-creator-avatar-fb{width:22px;height:22px;border-radius:50%;background:var(--surface2);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--accent);border:1px solid var(--border2);flex-shrink:0}
.bet-expiry-bar{padding:5px 16px 0;font-family:'Space Mono',monospace;font-size:10px;color:var(--muted)}
.bet-expiry-bar.urgent{color:#c99a00}
.bet-expiry-bar.imminent{color:var(--accent)}
.bet-my-pos{font-family:'Space Mono',monospace;font-size:10px;padding:3px 8px;border-radius:3px}
.bet-my-pos.for{background:rgba(39,174,96,.1);color:var(--up);border:1px solid rgba(39,174,96,.25)}
.bet-my-pos.against{background:rgba(192,57,43,.1);color:var(--accent);border:1px solid rgba(192,57,43,.25)}
.bet-result-notice{display:inline-flex;align-items:center;gap:6px;font-family:'Space Mono',monospace;font-size:11px;padding:5px 12px;border-radius:3px}
.bet-result-notice.won{background:rgba(39,174,96,.12);color:var(--saved-text);border:1px solid rgba(39,174,96,.28)}
.bet-result-notice.lost{background:rgba(192,57,43,.1);color:var(--accent);border:1px solid rgba(192,57,43,.25)}
.bet-result-notice.refund{background:rgba(140,132,120,.1);color:var(--muted);border:1px solid var(--border2)}
.bet-card-actions{padding:0 16px 12px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.bet-for-btn{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:6px 16px;border-radius:3px;cursor:pointer;border:1px solid rgba(39,174,96,.4);background:rgba(39,174,96,.08);color:var(--up);transition:all .15s}
.bet-for-btn:hover{background:rgba(39,174,96,.18);border-color:var(--up)}
.bet-for-btn:disabled{opacity:.4;cursor:default}
.bet-against-btn{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:6px 16px;border-radius:3px;cursor:pointer;border:1px solid rgba(192,57,43,.35);background:rgba(192,57,43,.07);color:var(--accent);transition:all .15s}
.bet-against-btn:hover{background:rgba(192,57,43,.16);border-color:var(--accent)}
.bet-against-btn:disabled{opacity:.4;cursor:default}
.bet-takers-toggle{font-family:'Space Mono',monospace;font-size:10px;color:var(--muted);cursor:pointer;text-decoration:underline;padding:2px 16px 10px;display:block;transition:color .12s}
.bet-takers-toggle:hover{color:var(--text)}
.bet-takers-panel{padding:8px 16px 12px;border-top:1px solid var(--border);display:none}
.bet-takers-panel.open{display:block}
.bet-taker-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--border);font-size:12px}
.bet-taker-row:last-child{border-bottom:none}
.bet-taker-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;border:1px solid var(--border2);flex-shrink:0}
.bet-taker-avatar-fb{width:22px;height:22px;border-radius:50%;background:var(--surface2);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:var(--muted);border:1px solid var(--border2);flex-shrink:0}
.bet-taker-side{font-family:'Space Mono',monospace;font-size:9px;padding:2px 6px;border-radius:2px}
.bet-taker-side.for{background:rgba(39,174,96,.1);color:var(--up)}
.bet-taker-side.against{background:rgba(192,57,43,.1);color:var(--accent)}
.bet-taker-pts{font-family:'Space Mono',monospace;font-size:10px;color:var(--gold);margin-left:auto}
.bet-admin-row{padding:6px 16px 10px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--border);background:rgba(28,26,23,.02)}
.bet-settle-btn{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:3px;cursor:pointer;border:1px solid var(--border2);background:var(--surface2);color:var(--muted);transition:all .15s}
.bet-settle-btn.win{background:rgba(39,174,96,.08);color:var(--up);border-color:rgba(39,174,96,.3)}
.bet-settle-btn.win:hover{background:var(--up);color:#fff}
.bet-settle-btn.loss{background:rgba(192,57,43,.08);color:var(--accent);border-color:rgba(192,57,43,.3)}
.bet-settle-btn.loss:hover{background:var(--accent);color:#fff}
.bets-empty{text-align:center;padding:4rem 2rem;color:var(--muted)}
.bets-empty-icon{font-size:40px;margin-bottom:1rem;opacity:.5}
.bets-empty p{font-size:14px;line-height:1.6}
/* Bet history */
.bet-history-section{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border)}
.bet-history-section h3{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:1rem;color:var(--text)}
.bet-history-summary{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:1rem}
.bhs-chip{font-family:'Space Mono',monospace;font-size:11px;padding:5px 12px;border-radius:3px;border:1px solid var(--border)}
.bhs-chip.won{background:rgba(39,174,96,.08);color:var(--up);border-color:rgba(39,174,96,.2)}
.bhs-chip.lost{background:rgba(192,57,43,.07);color:var(--accent);border-color:rgba(192,57,43,.2)}
.bhs-chip.pending{background:rgba(255,180,0,.08);color:#c99a00;border-color:rgba(255,180,0,.2)}
.bhs-chip.neutral{background:var(--surface2);color:var(--muted)}
.bet-history-row{display:flex;align-items:center;gap:10px;padding:9px 14px;background:var(--surface);border:1px solid var(--border);border-radius:4px;margin-bottom:3px;font-size:12px}
.bhr-driver{display:flex;align-items:center;gap:6px;min-width:120px;flex-shrink:0}
.bhr-driver img{width:22px;height:22px;border-radius:50%;object-fit:cover;object-position:top center;border:1px solid var(--border2);flex-shrink:0}
.bhr-type{font-size:11px;color:var(--muted);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bhr-side{font-family:'Space Mono',monospace;font-size:9px;padding:2px 6px;border-radius:2px;flex-shrink:0}
.bhr-side.for{background:rgba(39,174,96,.1);color:var(--up)}
.bhr-side.against{background:rgba(192,57,43,.1);color:var(--accent)}
.bhr-result{font-family:'Space Mono',monospace;font-size:11px;flex-shrink:0;min-width:70px;text-align:right}
.bhr-result.won{color:var(--gold)}
.bhr-result.lost{color:var(--accent)}
.bhr-result.pending{color:#c99a00}
.bhr-result.refund{color:var(--muted)}
/* Modal create bet */
.bet-modal-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
@media(max-width:500px){.bet-modal-two-col{grid-template-columns:1fr}}
.bet-drop-zone{min-height:58px;border:1.5px dashed var(--border2);border-radius:4px;background:var(--surface2);display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s;position:relative}
.bet-drop-zone::before{content:attr(data-placeholder);font-size:11px;font-family:'Space Mono',monospace;color:var(--muted2);pointer-events:none}
.bet-drop-zone.drag-over{border-color:var(--accent);background:var(--accent-dim)}
.bet-drop-zone.has-driver{border-style:solid;border-color:var(--border2);background:var(--surface)}
.bet-drop-zone .driver-avatar{width:32px !important;height:32px !important;flex-shrink:0}
.bet-drop-zone .driver-avatar img{width:100%;height:100%;object-fit:cover;object-position:top center}
.bet-select{width:100%;background:var(--surface2);border:1px solid var(--border2);color:var(--text);font-family:'Barlow',sans-serif;font-size:13px;padding:8px 32px 8px 10px;border-radius:4px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%238c8478' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer;min-height:38px}
.bet-select:focus{outline:none;border-color:var(--muted)}
.bet-select option,.bet-select optgroup{background:#1c1a17;color:#f7f4ef}
.bet-dir-row{display:flex;gap:6px}
.bet-dir-btn{flex:1;font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:7px 0;border-radius:3px;cursor:pointer;border:1px solid var(--border2);background:var(--surface2);color:var(--muted);transition:all .15s}
.bet-dir-btn.active{background:var(--text);color:#f7f4ef;border-color:var(--text)}
.bet-stake-row{display:flex;align-items:center;gap:6px}
.bet-stake-input{width:80px;background:var(--surface2);border:1px solid var(--border2);color:var(--text);font-family:'Space Mono',monospace;font-size:16px;font-weight:700;text-align:center;padding:6px 4px;border-radius:4px}
.bet-stake-input:focus{outline:none;border-color:var(--muted)}
.bet-stake-input::-webkit-inner-spin-button,.bet-stake-input::-webkit-outer-spin-button{-webkit-appearance:none}
.bet-stake-adj{width:32px;height:34px;border-radius:3px;border:1px solid var(--border2);background:var(--surface2);color:var(--text);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s;font-weight:300;line-height:1}
.bet-stake-adj:hover{border-color:var(--muted);background:var(--text);color:#f7f4ef}
.bet-preview{background:rgba(183,134,11,.07);border:1px solid rgba(183,134,11,.22);border-radius:4px;padding:10px 14px;font-size:13px;line-height:1.6;margin-bottom:1rem;color:var(--text)}
.bet-modal-pool{display:flex;flex-wrap:wrap;gap:5px;max-height:148px;overflow-y:auto;padding:6px;background:var(--surface2);border:1px solid var(--border);border-radius:4px;scrollbar-width:thin}
.bet-modal-pool::-webkit-scrollbar{width:4px}
.bet-modal-pool::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}
.bet-pool-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 8px 4px 4px;border-radius:3px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:12px;font-weight:600;transition:border-color .12s,transform .1s;user-select:none}
.bet-pool-chip:hover{transform:scale(1.02)}
.bet-pool-chip.selected{border-color:var(--gold);background:rgba(183,134,11,.08)}
.bet-pool-chip img{width:22px;height:22px;border-radius:50%;object-fit:cover;object-position:top center;border:1px solid var(--border2);flex-shrink:0}
.bet-balance-notice{font-family:'Space Mono',monospace;font-size:11px;color:var(--gold);margin-bottom:.8rem;padding:6px 10px;background:rgba(183,134,11,.07);border:1px solid rgba(183,134,11,.2);border-radius:3px}
.place-bet-confirm-btn-for{background:var(--up) !important;border-color:var(--up) !important}
.place-bet-confirm-btn-against{background:var(--accent) !important;border-color:var(--accent) !important}
/* Coin earn toast */
@keyframes coin-toast-in{from{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes coin-toast-out{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-16px) scale(.9)}}
.coin-toast{position:fixed;bottom:2rem;right:2rem;z-index:9999;background:var(--text);color:var(--gold);font-family:'Space Mono',monospace;font-size:13px;font-weight:700;padding:12px 20px;border-radius:6px;box-shadow:0 8px 32px rgba(28,26,23,.25);animation:coin-toast-in .3s cubic-bezier(.34,1.56,.64,1) forwards;border:1px solid rgba(183,134,11,.3);pointer-events:none;display:flex;align-items:center;gap:8px}
.coin-toast.out{animation:coin-toast-out .3s ease forwards}
@media(max-width:680px){.coin-toast{bottom:calc(56px + 1rem + env(safe-area-inset-bottom,0));right:1rem;left:1rem;text-align:center;justify-content:center}}

