:root{--bg-primary: #0a0e17;--bg-secondary: #111827;--bg-card: #1a2332;--bg-card-hover: #1f2b3d;--bg-surface: #0f1623;--accent: #f59e0b;--accent-hover: #fbbf24;--accent-dim: rgba(245, 158, 11, .15);--green: #10b981;--green-dim: rgba(16, 185, 129, .15);--red: #ef4444;--red-dim: rgba(239, 68, 68, .15);--blue: #3b82f6;--blue-dim: rgba(59, 130, 246, .15);--purple: #8b5cf6;--text-primary: #f9fafb;--text-secondary: #9ca3af;--text-muted: #6b7280;--border: rgba(255, 255, 255, .08);--border-active: rgba(245, 158, 11, .4);--radius: .5rem;--radius-lg: .75rem;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .3)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:var(--bg-primary);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:3px}.header{background:var(--bg-secondary);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:64px}.header-logo{display:flex;align-items:center;gap:.75rem}.logo-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--accent),#f97316);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.85rem;color:#000;letter-spacing:-.02em}.logo-text{display:flex;flex-direction:column;line-height:1.1}.logo-title{font-size:1.1rem;font-weight:800;letter-spacing:.05em;color:var(--text-primary)}.logo-subtitle{font-size:.6rem;letter-spacing:.2em;color:var(--accent);text-transform:uppercase}.header-nav{display:flex;gap:.25rem}.nav-link{padding:.5rem 1rem;color:var(--text-secondary);text-decoration:none;font-size:.875rem;font-weight:500;border-radius:var(--radius);transition:all .2s}.nav-link:hover{color:var(--text-primary);background:#ffffff0d}.nav-link.active{color:var(--accent);background:var(--accent-dim)}.header-actions,.wallet-info{display:flex;align-items:center;gap:1rem}.wallet-balance{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}.balance-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.balance-amount{font-size:.95rem;font-weight:700;color:var(--green)}.wallet-address{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:var(--bg-card);border-radius:var(--radius);font-family:monospace;font-size:.8rem;color:var(--text-secondary)}.wallet-dot{width:8px;height:8px;background:var(--green);border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.btn-faucet{padding:.4rem .75rem;background:var(--blue-dim);color:var(--blue);border:1px solid rgba(59,130,246,.3);border-radius:var(--radius);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-faucet:hover{background:#3b82f640}.btn-connect{padding:.5rem 1.25rem;background:linear-gradient(135deg,var(--accent),#f97316);color:#000;border:none;border-radius:var(--radius);font-size:.875rem;font-weight:700;cursor:pointer;transition:all .2s}.btn-connect:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.main-layout{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:260px 1fr 320px;gap:1.5rem;padding:1.5rem;min-height:calc(100vh - 264px)}.teams-sidebar{position:sticky;top:80px;max-height:calc(100vh - 96px);overflow-y:auto}.sidebar-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:1rem}.teams-list{display:flex;flex-direction:column;gap:.5rem}.team-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;transition:all .2s;cursor:pointer}.team-card:hover{background:var(--bg-card-hover);border-color:var(--border-active)}.team-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.team-card-logo{font-size:1.25rem}.team-card-info{flex:1;display:flex;flex-direction:column}.team-card-name{font-weight:700;font-size:.85rem}.team-card-region{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.team-card-rank{font-size:.75rem;color:var(--accent);font-weight:700}.team-card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;margin-bottom:.5rem}.stat-item{text-align:center}.stat-label{display:block;font-size:.55rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:.75rem;font-weight:700;color:var(--green)}.team-card-form{display:flex;gap:.2rem;margin-bottom:.5rem}.form-badge{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700;border-radius:3px}.form-badge.win{background:var(--green-dim);color:var(--green)}.form-badge.loss{background:var(--red-dim);color:var(--red)}.team-card-players{display:flex;flex-wrap:wrap;gap:.25rem}.player-tag{font-size:.65rem;padding:.15rem .35rem;background:#ffffff0d;border-radius:3px;color:var(--text-secondary);cursor:help}.main-content{min-width:0}.content-tabs{display:flex;gap:.25rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border);padding-bottom:.5rem}.tab-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:none;border:none;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;border-radius:var(--radius) var(--radius) 0 0;transition:all .2s;position:relative}.tab-btn:hover{color:var(--text-primary);background:#ffffff08}.tab-btn.active{color:var(--accent)}.tab-btn.active:after{content:"";position:absolute;bottom:-.5rem;left:0;right:0;height:2px;background:var(--accent)}.tab-dot{width:8px;height:8px;border-radius:50%}.tab-dot.live{background:var(--red);animation:pulse 1.5s infinite}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.section-header h2{font-size:1.1rem;font-weight:700}.section-count{font-size:.8rem;color:var(--text-muted)}.matches-grid{display:flex;flex-direction:column;gap:.75rem}.match-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;cursor:pointer;transition:all .2s}.match-card:hover{background:var(--bg-card-hover);border-color:var(--border-active);transform:translateY(-1px);box-shadow:var(--shadow)}.match-card.live{border-left:3px solid var(--red)}.match-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;font-size:.75rem}.live-badge{display:flex;align-items:center;gap:.35rem;padding:.2rem .5rem;background:var(--red-dim);color:var(--red);border-radius:4px;font-weight:700;font-size:.65rem;letter-spacing:.05em}.live-dot{width:6px;height:6px;background:var(--red);border-radius:50%;animation:pulse 1s infinite}.match-time{padding:.2rem .5rem;background:var(--accent-dim);color:var(--accent);border-radius:4px;font-weight:600;font-size:.7rem}.match-tournament{color:var(--text-secondary);flex:1}.match-format{color:var(--text-muted);font-weight:600}.match-teams{display:flex;flex-direction:column;gap:.5rem}.team-row{display:flex;align-items:center;gap:.75rem}.team-info{flex:1;display:flex;align-items:center;gap:.5rem}.team-logo{font-size:1.25rem}.team-name{font-weight:700;font-size:.9rem}.team-rank{font-size:.7rem;color:var(--text-muted)}.team-score{font-size:1.5rem;font-weight:800;color:var(--accent);min-width:32px;text-align:center}.team-form{display:flex;gap:.2rem}.form-dot{width:8px;height:8px;border-radius:2px}.form-dot.win{background:var(--green)}.form-dot.loss{background:var(--red)}.odds-btn{min-width:70px;padding:.5rem .75rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-weight:700;font-size:.9rem;cursor:pointer;transition:all .2s;text-align:center}.odds-btn:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.odds-btn.favorite{color:var(--green)}.match-vs{text-align:center;font-size:.75rem;color:var(--text-muted);font-weight:700;letter-spacing:.1em}.match-status-bar{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.35rem;background:#ffffff08;border-radius:4px;font-size:.7rem}.current-map{color:var(--accent);font-weight:600}.round-info{color:var(--text-secondary)}.ct-t-info{color:var(--blue);font-weight:600}.match-viewers{display:flex;align-items:center;gap:.35rem;margin-top:.5rem;font-size:.7rem;color:var(--text-muted)}.betting-slip{position:sticky;top:80px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.slip-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--bg-surface);border-bottom:1px solid var(--border)}.slip-header h3{font-size:.9rem;font-weight:700}.slip-actions{display:flex;align-items:center;gap:.5rem}.slip-count{background:var(--accent);color:#000;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.7rem;font-weight:700}.slip-clear{padding:.25rem .5rem;background:none;border:1px solid var(--border);color:var(--text-muted);font-size:.7rem;border-radius:4px;cursor:pointer}.slip-clear:hover{color:var(--red);border-color:var(--red)}.slip-empty{padding:2rem;text-align:center;color:var(--text-muted)}.slip-empty-icon{font-size:2rem;display:block;margin-bottom:.5rem}.slip-empty p{font-size:.8rem}.slip-selections{max-height:300px;overflow-y:auto}.slip-item{padding:.75rem 1rem;border-bottom:1px solid var(--border)}.slip-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.slip-item-match{font-size:.75rem;color:var(--text-secondary)}.slip-item-remove{background:none;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:0 .25rem}.slip-item-remove:hover{color:var(--red)}.slip-item-details{font-size:.85rem;font-weight:600;margin-bottom:.25rem}.slip-item-odds{font-size:.9rem;font-weight:700;color:var(--accent)}.slip-summary{padding:.75rem 1rem;border-bottom:1px solid var(--border)}.summary-row{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary);margin-bottom:.35rem}.summary-row.potential{color:var(--green);font-weight:700;font-size:.9rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}.summary-value{font-weight:600;color:var(--text-primary)}.summary-row.potential .summary-value{color:var(--green)}.quick-stakes{display:flex;gap:.35rem;padding:.5rem 1rem}.quick-stake-btn{flex:1;padding:.35rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.quick-stake-btn:hover{border-color:var(--accent);color:var(--accent)}.stake-input-row{display:flex;align-items:center;margin:0 1rem .75rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.stake-input{flex:1;padding:.6rem .75rem;background:none;border:none;color:var(--text-primary);font-size:.9rem;font-weight:600;outline:none}.stake-input::placeholder{color:var(--text-muted)}.stake-max{padding:.35rem .75rem;color:var(--accent);font-size:.7rem;font-weight:700;cursor:pointer;border-left:1px solid var(--border)}.stake-max:hover{background:var(--accent-dim)}.btn-place-bet{display:block;width:calc(100% - 2rem);margin:0 1rem 1rem;padding:.75rem;background:linear-gradient(135deg,var(--accent),#f97316);color:#000;border:none;border-radius:var(--radius);font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s}.btn-place-bet:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.btn-place-bet:disabled{opacity:.5;cursor:not-allowed}.bet-success{padding:.75rem 1rem;background:var(--green-dim);color:var(--green);font-size:.8rem;font-weight:600;text-align:center;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.match-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:200;display:flex;align-items:flex-start;justify-content:center;padding:2rem;overflow-y:auto;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.match-detail{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:800px;position:relative;animation:modalIn .3s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.detail-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;background:var(--bg-card);border:1px solid var(--border);border-radius:50%;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.detail-close:hover{background:var(--red-dim);color:var(--red);border-color:var(--red)}.detail-header{padding:1.5rem;background:var(--bg-surface);border-bottom:1px solid var(--border)}.detail-teams{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:1rem}.detail-team{display:flex;flex-direction:column;align-items:center;gap:.35rem}.detail-team-logo{font-size:2.5rem}.detail-team-name{font-weight:700;font-size:1rem}.detail-team-rank{font-size:.75rem;color:var(--accent)}.detail-vs{display:flex;flex-direction:column;align-items:center;gap:.25rem;font-size:1.5rem;font-weight:800;color:var(--text-muted)}.detail-format{font-size:.65rem;color:var(--accent);letter-spacing:.05em}.detail-tournament{text-align:center;font-size:.85rem;color:var(--text-secondary)}.detail-section{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.section-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.75rem}.bet-options-row{display:flex;gap:.5rem;flex-wrap:wrap}.bet-option{flex:1;min-width:120px;padding:.75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:.25rem}.bet-option:hover{background:var(--accent-dim);border-color:var(--accent)}.bet-option.small{min-width:90px;padding:.5rem}.bet-option-label{font-size:.85rem;font-weight:600;color:var(--text-primary)}.bet-option.small .bet-option-label{font-size:.75rem}.bet-option-odds{font-size:1rem;font-weight:700;color:var(--accent)}.bet-option.small .bet-option-odds{font-size:.85rem}.prediction-card{padding:1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.75rem}.prediction-card.highlight{border-color:var(--accent);background:var(--accent-dim)}.prediction-header{display:flex;align-items:center;gap:.75rem}.prediction-icon{font-size:1.5rem}.prediction-value{font-weight:700;font-size:1rem}.prediction-sub{display:block;font-size:.75rem;color:var(--text-secondary)}.prediction-prob{margin-left:auto;font-size:1.25rem;font-weight:800;color:var(--accent)}.damage-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.damage-team h4{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem}.damage-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.damage-name{font-size:.75rem;font-weight:600;min-width:70px}.damage-bar-container{flex:1;height:12px;background:var(--bg-surface);border-radius:6px;overflow:hidden}.damage-bar{height:100%;background:linear-gradient(90deg,var(--accent),#f97316);border-radius:6px;transition:width .5s ease}.damage-bar.team2{background:linear-gradient(90deg,var(--blue),var(--purple))}.damage-value{font-size:.75rem;font-weight:700;min-width:28px;text-align:right}.damage-role{font-size:.6rem;color:var(--text-muted);min-width:50px;text-align:right}.rounds-prediction{display:flex;align-items:center;gap:1rem}.rounds-team{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:60px}.rounds-team-name{font-size:.75rem;color:var(--text-secondary)}.rounds-value{font-size:1.5rem;font-weight:800}.rounds-bar{flex:1;height:16px;background:var(--bg-surface);border-radius:8px;overflow:hidden;display:flex}.rounds-fill{height:100%;transition:width .5s ease}.rounds-fill.team1{background:linear-gradient(90deg,var(--accent),#f97316);border-radius:8px 0 0 8px}.rounds-fill.team2{background:linear-gradient(90deg,var(--blue),var(--purple));border-radius:0 8px 8px 0}.ct-t-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.75rem}.ct-t-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem}.ct-t-card h4{font-size:.85rem;margin-bottom:.5rem}.ct-t-bars{display:flex;flex-direction:column;gap:.4rem}.ct-t-item{display:flex;align-items:center;gap:.5rem}.ct-label,.t-label{font-size:.7rem;font-weight:700;min-width:20px}.ct-label{color:var(--blue)}.t-label{color:#f97316}.ct-t-bar{flex:1;height:10px;background:var(--bg-surface);border-radius:5px;overflow:hidden}.ct-fill{height:100%;background:var(--blue);border-radius:5px;transition:width .5s ease}.t-fill{height:100%;background:#f97316;border-radius:5px;transition:width .5s ease}.ct-t-value{font-size:.8rem;font-weight:700;min-width:20px;text-align:right}.map-prediction{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.map-name{font-size:.8rem;font-weight:600;min-width:70px}.map-bar{flex:1;height:14px;background:var(--bg-surface);border-radius:7px;overflow:hidden;display:flex}.map-fill{height:100%;transition:width .5s ease}.map-fill.team1{background:linear-gradient(90deg,var(--accent),#f97316)}.map-fill.team2{background:linear-gradient(90deg,var(--blue),var(--purple))}.map-probs{display:flex;gap:.5rem;font-size:.75rem;font-weight:600;min-width:80px;justify-content:space-between}.map-probs span:first-child{color:var(--accent)}.map-probs span:last-child{color:var(--blue)}.my-bets-empty{text-align:center;padding:3rem;color:var(--text-muted)}.my-bets-icon{font-size:3rem;display:block;margin-bottom:1rem}.my-bets-empty p{font-size:.9rem;margin-bottom:.25rem}.my-bets-sub{font-size:.8rem;color:var(--text-muted)}.my-bets h3{font-size:1.1rem;margin-bottom:1rem}.bet-history-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;margin-bottom:.75rem}.bet-history-header{display:flex;justify-content:space-between;margin-bottom:.75rem}.bet-id{font-family:monospace;font-size:.75rem;color:var(--text-muted)}.bet-status{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .5rem;border-radius:4px}.bet-status.pending{background:var(--accent-dim);color:var(--accent)}.bet-status.won{background:var(--green-dim);color:var(--green)}.bet-status.lost{background:var(--red-dim);color:var(--red)}.bet-history-selections{margin-bottom:.75rem}.bet-history-selection{display:flex;justify-content:space-between;font-size:.8rem;padding:.35rem 0;border-bottom:1px solid var(--border)}.bet-history-selection span:last-child{color:var(--accent);font-weight:600}.bet-history-footer{display:flex;flex-direction:column;gap:.25rem}.bet-history-row{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary)}.bet-history-row.potential{color:var(--green);font-weight:700}.bet-tx{display:flex;align-items:center;gap:.5rem;font-size:.7rem;color:var(--text-muted);margin-top:.5rem}.bet-tx a{color:var(--blue);text-decoration:none}.bet-tx a:hover{text-decoration:underline}.results-placeholder{text-align:center;padding:3rem;color:var(--text-muted)}.footer{background:var(--bg-secondary);border-top:1px solid var(--border);margin-top:2rem}.footer-inner{max-width:1400px;margin:0 auto;padding:2rem 1.5rem;text-align:center}.footer-brand{margin-bottom:1rem}.footer-logo{font-size:1.1rem;font-weight:800;letter-spacing:.05em;color:var(--accent)}.footer-tagline{display:block;font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.footer-links{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1rem}.footer-links a{color:var(--text-secondary);text-decoration:none;font-size:.8rem;transition:color .2s}.footer-links a:hover{color:var(--accent)}.footer-network{display:flex;justify-content:center;gap:.5rem;margin-bottom:1rem}.network-badge{padding:.3rem .75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:20px;font-size:.7rem;font-weight:600;color:var(--text-secondary)}.footer-disclaimer{font-size:.7rem;color:var(--text-muted);max-width:500px;margin:0 auto}.datasource-bar{background:var(--bg-surface);border-bottom:1px solid var(--border);padding:.5rem 0}.datasource-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem}.datasource-toggle{display:flex;gap:.25rem;background:var(--bg-primary);border-radius:var(--radius);padding:.2rem;border:1px solid var(--border)}.ds-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .85rem;background:none;border:none;border-radius:calc(var(--radius) - 2px);color:var(--text-muted);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.ds-btn:hover:not(:disabled){color:var(--text-primary);background:#ffffff0d}.ds-btn.active{background:var(--accent-dim);color:var(--accent)}.ds-btn:disabled{opacity:.5;cursor:not-allowed}.ds-icon{font-size:.85rem}.ds-lock{font-size:.65rem;margin-left:.2rem}.datasource-info{font-size:.72rem;color:var(--text-muted);letter-spacing:.02em}.datasource-hint{font-size:.72rem;color:var(--text-muted)}.datasource-hint code{background:var(--bg-card);padding:.1rem .35rem;border-radius:3px;font-size:.68rem;color:var(--accent);border:1px solid var(--border)}.api-matches-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.api-badge{padding:.2rem .6rem;background:var(--green-dim);color:var(--green);border-radius:4px;font-size:.65rem;font-weight:700;letter-spacing:.08em}.api-updated{font-size:.72rem;color:var(--text-muted);margin-left:auto}.api-refresh-btn{padding:.3rem .6rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.api-refresh-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.api-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.api-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:3rem;color:var(--text-muted);font-size:.85rem}.api-spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.api-error{text-align:center;padding:2rem;color:var(--red)}.api-error-icon{font-size:2rem;display:block;margin-bottom:.5rem}.api-retry-btn{margin-top:.75rem;padding:.4rem 1rem;background:var(--red-dim);color:var(--red);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.api-retry-btn:hover{background:#ef444440}.api-empty{text-align:center;padding:2.5rem;color:var(--text-muted)}.api-empty-icon{font-size:2.5rem;display:block;margin-bottom:.5rem}.api-match .match-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}.stream-watch-btn{display:flex;align-items:center;gap:.35rem;padding:.35rem .7rem;background:linear-gradient(135deg,#9146ff,#772ce8);border:none;border-radius:var(--radius);color:#fff;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .2s}.stream-watch-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #9146ff66}.stream-watch-icon{font-size:.85rem}.no-stream-badge{font-size:.7rem;color:var(--text-muted);padding:.3rem .5rem;background:#ffffff08;border-radius:4px}.match-exact-time{font-size:.75rem;color:var(--accent);font-weight:600}.match-result-badge{font-size:.7rem;color:var(--text-muted);padding:.2rem .5rem;background:#ffffff0d;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.tournament-logo-img{width:16px;height:16px;object-fit:contain;border-radius:2px;vertical-align:middle}.team-logo-img{width:24px;height:24px;object-fit:contain;border-radius:4px}.stream-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;z-index:300;display:flex;align-items:center;justify-content:center;padding:1.5rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.stream-modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:560px;position:relative;animation:modalIn .3s ease}.stream-modal-large{max-width:960px}.stream-close{position:absolute;top:.75rem;right:.75rem;width:36px;height:36px;background:var(--bg-card);border:1px solid var(--border);border-radius:50%;color:var(--text-secondary);font-size:1.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.stream-close:hover{background:var(--red-dim);color:var(--red);border-color:var(--red)}.stream-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:var(--bg-surface);border-bottom:1px solid var(--border)}.stream-match-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.stream-title{font-size:1rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stream-tournament{font-size:.75rem;color:var(--text-muted)}.stream-status{display:flex;align-items:center;gap:.35rem;padding:.3rem .65rem;border-radius:4px;font-size:.7rem;font-weight:700;letter-spacing:.05em;background:var(--bg-card);color:var(--text-muted)}.stream-status.live{background:var(--red-dim);color:var(--red)}.stream-live-dot{width:6px;height:6px;background:var(--red);border-radius:50%;animation:pulse 1s infinite}.stream-content{padding:1rem 1.25rem}.stream-player-container{width:100%;aspect-ratio:16 / 9;background:#000;border-radius:var(--radius);overflow:hidden;margin-bottom:1rem}.stream-iframe{width:100%;height:100%;border:none}.stream-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--text-muted);font-size:.9rem}.stream-placeholder span{font-size:3rem}.stream-empty{padding:3rem;text-align:center;color:var(--text-muted)}.stream-empty-icon{font-size:3rem;display:block;margin-bottom:.75rem}.stream-sources{margin-bottom:1rem}.stream-sources h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.5rem}.stream-source-list{display:flex;gap:.5rem;flex-wrap:wrap}.stream-source-btn{display:flex;align-items:center;gap:.5rem;padding:.45rem .75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s}.stream-source-btn:hover{border-color:var(--accent);color:var(--text-primary)}.stream-source-btn.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.stream-source-platform{display:flex;align-items:center;gap:.3rem}.stream-source-lang{padding:.1rem .35rem;background:#ffffff0f;border-radius:3px;font-size:.65rem;color:var(--text-muted)}.stream-source-badge{padding:.1rem .35rem;background:var(--green-dim);color:var(--green);border-radius:3px;font-size:.6rem;font-weight:700}.stream-links{display:flex;gap:.5rem;flex-wrap:wrap}.stream-external-link{padding:.4rem .75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);font-size:.75rem;font-weight:500;text-decoration:none;transition:all .2s}.stream-external-link:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-dim)}@media(max-width:1200px){.main-layout{grid-template-columns:1fr 300px}.teams-sidebar{display:none}}@media(max-width:900px){.main-layout{grid-template-columns:1fr;padding:1rem}.slip-container{order:-1}.betting-slip{position:static}.header-nav{display:none}.damage-grid,.ct-t-grid{grid-template-columns:1fr}.datasource-inner{flex-direction:column;gap:.5rem;align-items:flex-start}.stream-modal-large{max-width:100%}.stream-player-container{aspect-ratio:16 / 10}.stream-source-list{flex-direction:column}}
