.sheet-backdrop{-webkit-backdrop-filter:blur(4px);z-index:300;opacity:0;pointer-events:none;background:#0000008c;transition:opacity .3s;position:fixed;inset:0}.sheet-backdrop.open{opacity:1;pointer-events:auto}.detail-sheet{background:var(--bg-elevated);z-index:301;border-radius:16px 16px 0 0;flex-direction:column;max-width:440px;max-height:85vh;margin:0 auto;transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden;transform:translateY(100%)}.detail-sheet.open{transform:translateY(0)}.sheet-handle-area{cursor:grab;touch-action:none;flex-shrink:0;justify-content:center;padding:12px 0 8px;display:flex}.sheet-handle-pill{background:var(--text-muted);opacity:.35;border-radius:2px;width:36px;height:4px}.sheet-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:max(32px,env(safe-area-inset-bottom));flex:1;overflow-y:auto}.sheet-body::-webkit-scrollbar{display:none}.sheet-hero{text-align:center;border-bottom:1px solid var(--border-subtle);padding:0 20px 20px}.sheet-hero--football{background:#22c55e08}.sheet-hero-venue{color:var(--text-muted);justify-content:center;align-items:center;gap:4px;margin-top:8px;font-size:11px;display:flex}.sheet-comp-row{justify-content:center;align-items:center;gap:6px;margin-bottom:20px;display:flex}.sheet-comp-logo{border-radius:2px;flex-shrink:0}.sheet-comp-name{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}.sheet-comp-name-btn{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;align-items:center;gap:3px;padding:0;font-size:11px;font-weight:600;-webkit-text-decoration:underline #ff6b354d;text-decoration:underline #ff6b354d;transition:color .2s;display:flex}.sheet-comp-name-btn:hover{color:var(--accent)}.sheet-comp-name-arrow{color:var(--accent);opacity:.7;font-size:13px;font-style:normal}.sheet-stage-pill{color:var(--text-muted);white-space:nowrap;background:#ffffff0f;border:1px solid #ffffff0f;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:500}[data-theme=light] .sheet-stage-pill{background:#0000000a;border-color:#0000000f}.sheet-tv-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.sheet-tv-team{flex-direction:column;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.sheet-tv-name{color:var(--text-primary);text-align:center;word-break:break-word;white-space:normal;width:100%;font-size:13px;font-weight:600;line-height:1.25}.sheet-team-tap{cursor:pointer;border-radius:10px;transition:opacity .15s}.sheet-team-tap:active{opacity:.55}@media (hover:hover){.sheet-team-tap:hover{background:#ffffff0f}[data-theme=light] .sheet-team-tap:hover{background:#0000000d}}.sheet-crest-lg{flex-shrink:0;width:72px;height:72px}.sheet-team-name{color:var(--text-secondary);text-align:center;word-break:break-word;font-size:13px;font-weight:500;line-height:1.2}.sheet-score-col{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;min-width:88px;display:flex}.sheet-score{color:var(--text-primary);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:42px;font-weight:800;line-height:1}.sheet-score.finished{color:var(--text-secondary);font-weight:700}.sheet-time-lg{color:var(--text-primary);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:300;line-height:1}.sheet-hero-star{border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:5px;margin:2px auto 10px;padding:5px 12px;font-size:11px;font-weight:500;transition:color .2s,border-color .2s;display:flex}.sheet-hero-star:hover{color:var(--accent);border-color:#ff6b3566}.sheet-hero-star.active{color:var(--accent);border-color:var(--accent)}.sheet-live-stale{color:var(--text-tertiary);font-weight:500}.sheet-live-row{color:var(--status-live);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:5px;font-size:12px;font-weight:700;display:flex}.sheet-status-sub{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:500}.sheet-badges{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:12px;display:flex}.sheet-badge{text-transform:uppercase;letter-spacing:.06em;border:1px solid;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:600}.sheet-badge.derby{color:var(--accent);background:var(--accent-subtle);border-color:#ff6b3540}.sheet-badge.big-match{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b40}.sheet-badge.final,.sheet-badge.semifinal{color:#a855f7;background:#a855f71a;border-color:#a855f740}.sheet-generic-hero{text-align:center;border-bottom:1px solid var(--border-subtle);padding:0 20px 20px}.sheet-generic-name{color:var(--text-primary);margin-bottom:10px;font-size:18px;font-weight:600;line-height:1.3}.sheet-generic-time{color:var(--text-tertiary);margin-bottom:6px;font-size:14px}.sheet-action-bar{border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-around;align-items:stretch;padding:4px 0;display:flex}.sheet-action-btn{cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;align-items:center;gap:5px;min-width:52px;padding:12px 8px;font-family:inherit;transition:background .15s;display:flex}.sheet-action-btn:hover{background:#ffffff0a}[data-theme=light] .sheet-action-btn:hover{background:#0000000a}.sheet-action-icon{color:var(--text-tertiary);flex-shrink:0;transition:color .2s,transform .15s}.sheet-action-btn.active .sheet-action-icon{color:var(--accent)}.sheet-action-btn.active .sheet-action-icon.fav-filled{transform:scale(1.1)}.sheet-action-label{color:var(--text-muted);white-space:nowrap;font-size:10px;font-weight:400}.sheet-action-btn.active .sheet-action-label{color:var(--accent)}.sheet-section{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;margin:12px 12px 0;padding:20px}.sheet-section+.sheet-section{margin-top:12px}.sheet-section-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;border-left:2px solid var(--accent);margin:0 0 14px;padding-left:8px;font-size:13px;font-weight:700;display:block}[data-theme=light] .sheet-section{background:var(--bg-elevated);box-shadow:0 1px 4px #0000000d}.sheet-broadcaster-list{flex-direction:column;gap:8px;display:flex}.sheet-broadcaster-row{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.sheet-broadcaster-name{color:var(--text-secondary);flex:1;font-size:13px;font-weight:500}.sheet-free-badge{letter-spacing:.06em;color:#22c55e;text-transform:uppercase;background:#22c55e1f;border:1px solid #22c55e40;border-radius:3px;padding:2px 6px;font-size:9px;font-weight:700}.sheet-broadcast-typical-row{align-items:center;gap:8px;display:flex}.sheet-broadcast-typical{color:var(--text-tertiary);font-size:13px;line-height:1.5}.sheet-not-televised{color:var(--text-secondary);font-size:13px;line-height:1.5}.sheet-broadcast-fallback{color:var(--text-tertiary);font-size:13px;line-height:1.5}.sheet-broadcast-hint{color:var(--text-muted);margin-top:8px;font-size:12px}.sheet-context-row{align-items:flex-start;gap:10px;padding:8px 0;display:flex}.sheet-context-row+.sheet-context-row{border-top:1px solid var(--border-faint)}.sheet-context-icon{color:var(--text-muted);flex-shrink:0;margin-top:1px}.sheet-context-label{color:var(--text-muted);margin-bottom:2px;font-size:11px;display:block}.sheet-context-value{color:var(--text-secondary);font-size:13px;line-height:1.4}.sheet-venue-row{align-items:flex-start;gap:10px;display:flex}.sheet-venue-name{color:var(--text-secondary);font-size:13px;font-weight:500}.sheet-venue-city{color:var(--text-muted);margin-top:1px;font-size:12px}.sheet-bottom-spacer{height:8px}.sheet-golf-lb{flex-direction:column;gap:0;display:flex}.sheet-golf-row{border-bottom:1px solid #ffffff0a;border-left:3px solid #0000;grid-template-columns:28px 28px 22px 1fr 36px 40px 52px 24px;align-items:center;column-gap:4px;padding:5px 0;display:grid}.sheet-golf-row:last-child{border-bottom:none}.sheet-golf-row.british{background:#3b82f60f;border-left-color:#3b82f6}.sheet-golf-row.fav{border-left-color:var(--accent);background:#ff6b350f}.sheet-golf-gap{color:var(--text-muted);opacity:.5;letter-spacing:.08em;padding:2px 0 2px 28px;font-size:10px}.sheet-golf-pos{color:var(--text-muted);text-align:center;font-variant-numeric:tabular-nums;font-size:12px}.sheet-golf-flag{justify-content:center;align-items:center;display:flex}.sheet-golf-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.sheet-golf-today{text-align:right;opacity:.75;font-variant-numeric:tabular-nums;font-size:11px}.sheet-golf-total{text-align:right;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.sheet-golf-thru{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.sheet-golf-thru.tee-time{opacity:.55;font-size:10px}.sheet-golf-star{cursor:pointer;touch-action:manipulation;justify-content:center;align-items:center;padding:4px 0;display:flex}.golf-row-star{color:var(--text-muted);transition:color .15s}.golf-row-star.filled{color:var(--accent)}[data-theme=light] .sheet-golf-row{border-bottom-color:#0000000f}[data-theme=light] .sheet-broadcaster-row{box-shadow:0 1px 3px #0000000d}[data-theme=light] .sheet-handle-pill{background:#0003}.detail-sheet.golf-sheet{max-height:92vh}.sheet-golf-hero-wrap{text-align:center;border-bottom:1px solid var(--border-subtle);border-top:2px solid #3b82f680;padding:0;overflow:hidden}.golf-hero-identity{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:14px 20px 10px;display:flex}.golf-hero-tour-chip{letter-spacing:.1em;text-transform:uppercase;color:#60a5fa;background:#3b82f61a;border:1px solid #3b82f633;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.golf-hero-major-badge{letter-spacing:.08em;text-transform:uppercase;color:#fbbf24;background:#fbbf241a;border:1px solid #fbbf2440;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.golf-hero-tournament{color:var(--text-primary);margin:0;padding:0 20px 6px;font-size:22px;font-weight:700;line-height:1.25}.golf-hero-location{color:var(--text-muted);justify-content:center;align-items:center;gap:4px;padding:0 20px 10px;font-size:12px;display:flex}.golf-hero-course-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:0 20px 10px;display:flex}.golf-hero-course-pill{color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:5px;padding:3px 9px;font-size:11px;font-weight:500}[data-theme=light] .golf-hero-course-pill{background:var(--bg-filter);border-color:#00000014}.golf-hero-defending{color:var(--text-tertiary);justify-content:center;align-items:center;gap:5px;padding:0 20px 10px;font-size:11px;display:flex}.golf-hero-status-bar{background:var(--bg-elevated);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);justify-content:center;align-items:center;gap:10px;margin:2px 0 0;padding:9px 20px;display:flex}.golf-hero-status-round{color:var(--text-primary);font-size:13px;font-weight:600}.golf-hero-status-live{letter-spacing:.1em;text-transform:uppercase;color:var(--status-live);align-items:center;gap:5px;font-size:10px;font-weight:700;display:inline-flex}.golf-hero-status-done{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}.golf-hero-cut-bar{background:#f59e0b0f;border-bottom:1px solid #f59e0b1f;align-items:center;gap:8px;padding:8px 20px;display:flex}.golf-hero-cut-dashes{background:repeating-linear-gradient(90deg,#f59e0b66 0 4px,#0000 4px 8px);flex:1;height:1px}.golf-hero-cut-text{color:#f59e0b;letter-spacing:.02em;white-space:nowrap;font-size:11px;font-weight:600}[data-theme=light] .golf-hero-cut-bar{background:#f59e0b0a}.golf-hero-weather{color:var(--text-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:8px 20px;display:flex}.golf-hero-weather-temp{color:var(--text-secondary);font-size:12px;font-weight:600}.golf-hero-weather-desc{color:var(--text-muted);text-transform:capitalize;font-size:11px}.golf-hero-weather-wind{color:var(--text-muted);align-items:center;gap:3px;font-size:11px;display:inline-flex}.golf-hero-broadcaster{color:var(--text-muted);justify-content:center;align-items:center;gap:5px;padding:6px 20px 14px;font-size:11px;display:flex}.golf-lb-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.golf-lb-count{color:var(--text-muted);text-transform:none;letter-spacing:0;font-weight:400}.golf-search-toggle{cursor:pointer;touch-action:manipulation;width:28px;height:28px;color:var(--text-muted);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.golf-search-toggle:hover,.golf-search-toggle.active{color:var(--text-secondary);background:#ffffff12}[data-theme=light] .golf-search-toggle:hover,[data-theme=light] .golf-search-toggle.active{background:#0000000f}.golf-expand-btn{border:1px solid var(--border-subtle);width:100%;color:var(--text-muted);cursor:pointer;touch-action:manipulation;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:5px;margin-top:6px;padding:9px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:background .15s,color .15s;display:flex}.golf-expand-btn:hover{color:var(--text-secondary);background:#ffffff0a}[data-theme=light] .golf-expand-btn:hover{background:#00000008}.golf-search-wrapper{margin-bottom:10px}.golf-search-input{box-sizing:border-box;background:var(--bg-card);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);-webkit-appearance:none;border-radius:8px;outline:none;padding:8px 12px;font-family:inherit;font-size:14px}.golf-search-input::placeholder{color:var(--text-muted)}.golf-search-input:focus{border-color:#fff3}[data-theme=light] .golf-search-input:focus{border-color:#0003}.golf-cut-divider{align-items:center;gap:8px;padding:6px 0 4px;display:flex}.golf-cut-divider:before,.golf-cut-divider:after{content:"";background:#ffffff1a;flex:1;height:1px}[data-theme=light] .golf-cut-divider:before,[data-theme=light] .golf-cut-divider:after{background:#0000001a}.golf-cut-divider-text{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:9px;font-weight:700}.sheet-golf-row{cursor:pointer;touch-action:manipulation;border-radius:4px;transition:background .12s}.sheet-golf-row:active{background:#ffffff0d}[data-theme=light] .sheet-golf-row:active{background:#0000000a}.sheet-golf-row.missed-cut{opacity:.38}.golf-cut-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:500}.golf-profile{padding:0 20px 24px}.golf-profile-topbar{justify-content:space-between;align-items:center;padding-bottom:4px;display:flex}.golf-profile-back{cursor:pointer;color:var(--text-muted);touch-action:manipulation;background:0 0;border:none;align-items:center;gap:6px;padding:12px 0;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex}.golf-profile-back:active{opacity:.7}.golf-profile-fav-btn{cursor:pointer;touch-action:manipulation;width:36px;height:36px;color:var(--text-muted);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.golf-profile-fav-btn.active{color:var(--accent)}.golf-profile-fav-btn:hover{background:#ffffff0f}[data-theme=light] .golf-profile-fav-btn:hover{background:#0000000d}.golf-profile-identity{align-items:center;gap:12px;margin-bottom:20px;display:flex}.golf-profile-flag-lg{transform-origin:0;flex-shrink:0;align-items:center;margin-right:8px;display:flex;transform:scale(1.4)}.golf-profile-identity-text{flex:1;min-width:0}.golf-profile-name{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:20px;font-weight:700;line-height:1.2}.golf-profile-nationality{color:var(--text-muted);margin-top:2px;font-size:12px;display:block}.golf-profile-cut-badge{text-transform:uppercase;letter-spacing:.07em;color:#f87171;background:#f871711a;border:1px solid #f8717140;border-radius:4px;flex-shrink:0;padding:3px 7px;font-size:10px;font-weight:700}.golf-profile-scores{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;gap:0;margin-bottom:16px;display:flex;overflow:hidden}.golf-profile-score-stat{border-right:1px solid var(--border-subtle);flex-direction:column;flex:1;align-items:center;gap:4px;padding:14px 8px;display:flex}.golf-profile-score-stat:last-child{border-right:none}.golf-profile-score-num{font-size:28px;line-height:1}.golf-profile-score-pos{color:var(--text-primary);font-size:28px;font-weight:700;line-height:1}.golf-profile-score-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-size:10px}.golf-profile-rounds{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px;display:grid}.golf-profile-round-box{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;display:flex}.golf-profile-round-box.empty{opacity:.35}.golf-profile-round-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:9px;font-weight:700}.golf-profile-round-score{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.golf-profile-bio{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:10px;overflow:hidden}.golf-profile-bio-row{border-bottom:1px solid var(--border-faint);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.golf-profile-bio-row:last-child{border-bottom:none}.golf-profile-bio-label{color:var(--text-muted);font-size:12px}.golf-profile-bio-value{color:var(--text-secondary);font-size:13px;font-weight:500}.golf-profile-bio-cut{color:#f87171}.golf-profile-section{margin-top:16px}.golf-profile-section-title{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);border-bottom:1px solid var(--border-faint);margin-bottom:8px;padding-bottom:6px;font-size:9px;font-weight:700}.golf-profile-majors-list{flex-direction:column;gap:6px;display:flex}.golf-profile-major-item{align-items:center;gap:8px;display:flex}.golf-profile-major-dot{background:#fbbf24;border-radius:50%;flex-shrink:0;width:6px;height:6px}.golf-profile-major-name{color:var(--text-secondary);flex:1;font-size:13px}.golf-profile-major-year{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px}.golf-profile-no-majors{color:var(--text-muted);font-size:13px;font-style:italic}.sheet-golf-mov{font-variant-numeric:tabular-nums;white-space:nowrap;justify-content:center;align-items:center;font-size:10px;display:flex}.golf-mov-up{color:#4ade80;font-weight:600}.golf-mov-down{color:#f87171;font-weight:600}.golf-mov-dash{color:var(--text-muted);opacity:.5;font-size:11px}.golf-fav-first-btn{border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;touch-action:manipulation;white-space:nowrap;background:0 0;border-radius:5px;align-items:center;gap:4px;padding:3px 7px;font-family:inherit;font-size:10px;font-weight:500;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.golf-fav-first-btn.active{color:var(--accent);background:#ff6b350f;border-color:#ff6b3566}.golf-fav-section-header{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);opacity:.8;padding:4px 0 2px 3px;font-size:9px;font-weight:700}.golf-others-section-header{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);padding:6px 0 2px 3px;font-size:9px;font-weight:700}.golf-profile-round-score.under-par{color:#ef4444}.golf-profile-round-score.over-par{color:#60a5fa}.golf-scorecard-toggle{border:1px solid var(--border-subtle);width:100%;color:var(--text-muted);cursor:pointer;touch-action:manipulation;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:5px;margin-bottom:12px;padding:8px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:background .15s,color .15s;display:flex}.golf-scorecard-toggle:hover{color:var(--text-secondary);background:#ffffff0a}[data-theme=light] .golf-scorecard-toggle:hover{background:#00000008}.golf-scorecard{margin-bottom:16px}.golf-scorecard-tabs{gap:6px;margin-bottom:10px;display:flex}.golf-sc-tab{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;touch-action:manipulation;border-radius:6px;flex:1;padding:5px 0;font-family:inherit;font-size:11px;font-weight:600;transition:background .15s,color .15s,border-color .15s}.golf-sc-tab.active{color:#60a5fa;background:#60a5fa1a;border-color:#60a5fa4d}.golf-sc-nine{margin-bottom:8px}.golf-sc-nine-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:4px;font-size:9px;font-weight:700}.golf-sc-rows{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden}.golf-sc-row{border-bottom:1px solid var(--border-faint);grid-template-columns:repeat(9,1fr);display:grid}.golf-sc-row:last-child{border-bottom:none}.golf-sc-cell{text-align:center;font-variant-numeric:tabular-nums;border-right:1px solid var(--border-faint);padding:5px 2px;font-size:11px}.golf-sc-cell:last-child{border-right:none}.golf-sc-header .golf-sc-cell{color:var(--text-muted);background:#ffffff05;font-size:9px;font-weight:700}[data-theme=light] .golf-sc-header .golf-sc-cell{background:#00000005}.golf-sc-par-row .golf-sc-cell{color:var(--text-muted);font-size:10px}.golf-sc-score-row .golf-sc-cell{color:var(--text-secondary);font-size:12px;font-weight:600}.fb-skeleton{background:#ffffff0f;border-radius:6px;height:14px;margin-bottom:8px;animation:1.4s ease-in-out infinite fb-pulse}.fb-skeleton.short{width:60%}[data-theme=light] .fb-skeleton{background:#0000000f}@keyframes fb-pulse{0%,to{opacity:1}50%{opacity:.4}}.fb-timeline{flex-direction:column;display:flex;position:relative}.fb-timeline:before{content:"";pointer-events:none;background:#ffffff0f;width:1px;position:absolute;top:4px;bottom:4px;left:50%;transform:translate(-50%)}[data-theme=light] .fb-timeline:before{background:#00000012}.fb-tl-row{grid-template-columns:1fr 44px 1fr;align-items:center;min-height:32px;padding:3px 0;display:grid}.fb-tl-row.is-goal{min-height:36px}.fb-tl-row.is-sub{opacity:.7}.fb-tl-home{justify-content:flex-end;align-items:center;gap:6px;min-width:0;padding-right:10px;display:flex}.fb-tl-away{justify-content:flex-start;align-items:center;gap:6px;min-width:0;padding-left:10px;display:flex}.fb-tl-min{text-align:center;color:var(--text-muted);font-variant-numeric:tabular-nums;background:var(--bg-card);z-index:1;white-space:nowrap;border:1px solid #ffffff12;border-radius:10px;flex-shrink:0;padding:2px 5px;font-size:11px;position:relative}[data-theme=light] .fb-tl-min{background:var(--bg-surface,#f5f5f5);border-color:#00000014}.fb-tl-icon{flex-shrink:0;font-size:14px;line-height:1}.fb-tl-player{color:var(--text-secondary);white-space:normal;word-break:break-word;min-width:0;font-size:12px;line-height:1.3}.fb-tl-player.goal-player{color:var(--text-primary);font-size:13px;font-weight:600}.fb-tl-sub{flex-direction:column;gap:1px;min-width:0;display:flex}.fb-tl-sub-off{color:var(--text-muted);white-space:normal;word-break:break-word;font-size:11px;line-height:1.3}.fb-tl-sub-on{color:var(--text-secondary);white-space:normal;word-break:break-word;font-size:11px;line-height:1.3}.fb-no-detail{color:var(--text-muted);text-align:center;padding:8px 0;font-size:13px}.fb-no-detail-kickoff{color:var(--text-primary);text-align:center;padding:4px 0 8px;font-size:22px;font-weight:700}.fb-lineup-pending{color:var(--text-muted);text-align:center;padding:8px 0;font-size:13px}.fb-lineup-grid{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.fb-lineup-col-header{align-items:baseline;gap:6px;margin-bottom:6px;display:flex}.fb-lineup-col-team{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;font-weight:600;overflow:hidden}.fb-lineup-col-form{color:var(--text-muted);flex-shrink:0;font-size:10px}.fb-lineup-player{align-items:center;gap:5px;min-height:24px;padding:1px 0;display:flex}.fb-lineup-player-sub{opacity:.65}.fb-lineup-jersey{color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0;width:16px;font-size:10px;font-weight:600}.fb-lineup-pname{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:12px;overflow:hidden}.fb-lineup-marks{flex-shrink:0;align-items:center;gap:2px;display:flex}.fb-ev{font-size:10px;line-height:1}.fb-ev-card{border-radius:1px;flex-shrink:0;width:7px;height:10px;display:inline-block}.fb-ev-card.yellow{background:#fbbf24}.fb-ev-card.red{background:#f87171}.fb-ev-sub-out{color:#f87171;font-size:10px}.fb-ev-sub-in{color:#4ade80;font-size:10px}.fb-lineup-bench-divider{background:#ffffff12;height:1px;margin:5px 0}[data-theme=light] .fb-lineup-bench-divider{background:#00000012}.fb-stats{flex-direction:column;gap:14px;display:flex}.fb-stat-row{grid-template-columns:40px 1fr 40px;align-items:center;gap:10px;display:grid}.fb-stat-val{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.fb-stat-val.home{text-align:right}.fb-stat-val.away{text-align:left}.fb-stat-mid{flex-direction:column;align-items:center;gap:5px;display:flex}.fb-stat-track{background:#ffffff1a;border-radius:3px;width:100%;height:6px;position:relative;overflow:hidden}[data-theme=light] .fb-stat-track{background:#00000014}.fb-stat-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .5s cubic-bezier(.34,1.56,.64,1);position:absolute;top:0;left:0}.fb-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-size:10px}.fb-form{flex-direction:column;gap:4px;display:flex}.fb-form-team-section{border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.fb-form-row{cursor:pointer;text-align:left;background:#ffffff08;border:none;border-radius:8px;align-items:center;gap:12px;width:100%;padding:8px 10px;font-family:inherit;transition:background .15s;display:flex}.fb-form-row:hover{background:#ffffff0f}[data-theme=light] .fb-form-row{background:#00000008}[data-theme=light] .fb-form-row:hover{background:#0000000f}.fb-form-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.fb-form-chevron.open{transform:rotate(180deg)}.fb-form-results{flex-direction:column;gap:1px;padding:2px 4px 6px;display:flex}.fb-form-detail-row{border-left:3px solid #0000;border-radius:6px;grid-template-columns:26px 48px 1fr 60px;align-items:center;gap:8px;padding:6px;display:grid}.fb-form-detail-row.win{background:#4ade800a;border-left-color:#4ade80}.fb-form-detail-row.loss{background:#f871710a;border-left-color:#f87171}.fb-form-detail-row.draw{background:#fbbf240a;border-left-color:#fbbf24}.fb-form-detail-score{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.fb-form-detail-opp{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.fb-form-detail-date{color:var(--text-muted);text-align:right;white-space:nowrap;font-size:11px}.fb-form-team{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;font-size:12px;font-weight:600;display:-webkit-box;overflow:hidden}.fb-form-pills{gap:5px;display:flex}.fb-form-pill{letter-spacing:0;border-radius:5px;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;font-weight:700;display:flex}.fb-form-pill.form-w{color:#4ade80;background:#4ade802e}.fb-form-pill.form-l{color:#f87171;background:#f871712e}.fb-form-pill.form-d{color:#fbbf24;background:#fbbf241f}.fb-mini-tables{flex-direction:column;gap:16px;display:flex}.fb-mini-block{flex-direction:column;gap:4px;display:flex}.fb-mini-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-size:11px;font-weight:600}.fb-mini-cols-head{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #ffffff0f;grid-template-columns:20px 1fr 22px 30px 30px;gap:4px;padding:0 4px 4px;font-size:10px;font-weight:600;display:grid}[data-theme=light] .fb-mini-cols-head{border-bottom-color:#00000012}.fb-mini-cols-head .fb-mini-played,.fb-mini-cols-head .fb-mini-gd,.fb-mini-cols-head .fb-mini-pts{text-align:center}.fb-mini-table{flex-direction:column;display:flex}.fb-mini-row{border-radius:5px;grid-template-columns:20px 1fr 22px 30px 30px;align-items:center;gap:4px;padding:5px 4px;transition:background .15s;display:grid}.fb-mini-row.is-focal{border-left:2px solid var(--accent);background:#ff6b3514;padding-left:2px}.fb-mini-pos{color:var(--text-muted);text-align:center;font-size:11px}.fb-mini-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.fb-mini-row.is-focal .fb-mini-name{font-weight:600}.fb-mini-played,.fb-mini-gd,.fb-mini-pts{text-align:center;font-variant-numeric:tabular-nums;font-size:12px}.fb-mini-played{color:var(--text-muted)}.fb-mini-gd{color:var(--text-muted);font-size:11px}.fb-mini-pts{color:var(--text-primary);font-weight:700}.fb-standings{flex-direction:column;gap:6px;display:flex}.fb-standing-row{background:#ffffff08;border-radius:6px;align-items:center;gap:10px;padding:6px 8px;display:flex}[data-theme=light] .fb-standing-row{background:#00000008}.fb-standing-rank{color:var(--accent);min-width:28px;font-size:14px;font-weight:700}.fb-standing-rank sup{color:var(--text-muted);font-size:9px;font-weight:600}.fb-standing-team{color:var(--text-primary);flex:1;font-size:13px;font-weight:500}.fb-standing-pts{color:var(--text-primary);font-size:13px;font-weight:700}.fb-table{flex-direction:column;gap:0;display:flex}.fb-table-head{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #ffffff0f;grid-template-columns:20px 1fr 24px 32px 28px;gap:6px;margin-bottom:2px;padding:4px 8px 6px;font-size:10px;font-weight:600;display:grid}[data-theme=light] .fb-table-head{border-bottom-color:#00000014}.fb-table-row{border-radius:4px;grid-template-columns:20px 1fr 24px 32px 28px;gap:6px;padding:6px 8px;font-size:13px;display:grid}.fb-table-row.is-playing{border-left:2px solid var(--accent);background:#ff6b3514;padding-left:6px}.fb-col-pos{color:var(--text-muted);text-align:center;font-size:11px}.fb-col-team{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.fb-col-num{text-align:center;color:var(--text-secondary);font-variant-numeric:tabular-nums}.fb-col-num.fw{color:var(--text-primary);font-weight:700}.fb-h2h-summary-line{color:var(--text-primary);text-align:center;background:#ffffff08;border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:13px;font-weight:600}[data-theme=light] .fb-h2h-summary-line{background:#00000008}.fb-h2h-matches{flex-direction:column;gap:5px;margin-top:14px;display:flex}.fb-h2h-row{border-left:3px solid #0000;border-radius:6px;grid-template-columns:48px 1fr auto;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:grid}.fb-h2h-row.h2h-home{border-left-color:var(--accent);background:#ff6b350d}.fb-h2h-row.h2h-away{background:#60a5fa0d;border-left-color:#60a5fa}.fb-h2h-row.h2h-draw{background:#ffffff05;border-left-color:#ffffff1a}[data-theme=light] .fb-h2h-row.h2h-draw{background:#00000005;border-left-color:#0000001a}.fb-h2h-score{color:var(--text-primary);font-variant-numeric:tabular-nums;min-width:36px;font-weight:700}.fb-h2h-comp{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.fb-h2h-meta{flex-direction:column;gap:1px;min-width:0;display:flex}.fb-h2h-date{color:var(--text-muted);white-space:nowrap;font-size:11px}.fb-h2h-venue{color:var(--text-muted);opacity:.7;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.fb-aggregate{background:#ff6b3514;border:1px solid #ff6b3533;border-radius:8px;align-items:center;gap:8px;margin-bottom:14px;padding:10px 12px;display:flex}.fb-aggregate-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}.fb-aggregate-score{color:var(--accent);font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.fb-aggregate-note{color:var(--text-muted);text-align:right;flex:1;font-size:11px}.fb-countdown{flex-direction:column;gap:3px;display:flex}.fb-countdown-time{color:var(--text-primary);font-size:15px;font-weight:600}.fb-countdown-sub{color:var(--text-muted);font-size:12px}.sheet-hero--tennis{background:#3b82f60a}.tennis-detail-surface{color:var(--text-secondary);align-items:center;gap:5px;margin-left:auto;font-size:12px;font-weight:500;display:inline-flex}.tennis-detail-surface-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.tennis-hero-chips{flex-wrap:wrap;gap:6px;margin:6px 0 12px;display:flex}.tennis-hero-chip{color:var(--text-muted);background:var(--bg-tertiary);letter-spacing:.02em;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:500}.tennis-hero-chip.grand-slam{color:#f59e0b;background:#f59e0b1f}.tennis-hero-chip.circuit{color:var(--accent);background:#ff6b351f}.tennis-set-grid{border-collapse:collapse;width:100%;margin:4px 0 12px}.tennis-sg-row{align-items:center;gap:2px;display:flex}.tennis-sg-header{margin-bottom:4px}.tennis-sg-name-col{color:var(--text-primary);flex:1;align-items:center;gap:6px;min-width:0;font-size:13px;font-weight:600;display:flex;overflow:hidden}.tennis-sg-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tennis-sg-set-col{color:var(--text-secondary);text-align:center;font-variant-numeric:tabular-nums;flex-shrink:0;width:32px;font-size:14px;font-weight:600}.tennis-sg-set-col.current{color:var(--text-primary)}.tennis-sg-set-col.won{color:var(--text-primary);font-weight:700}.tennis-sg-header .tennis-sg-name-col,.tennis-sg-header .tennis-sg-set-col{color:var(--text-muted);font-size:11px;font-weight:500}.tennis-sg-tiebreak{vertical-align:super;color:var(--text-muted);margin-left:1px;font-size:9px}.tennis-hero-unavailable{font-size:var(--text-sm);color:var(--text-tertiary);margin:8px 0 0}.tennis-winner-check{color:var(--accent);margin-left:4px;font-size:12px}.tennis-hero-status{align-items:center;gap:6px;margin-top:4px;font-size:12px;display:flex}.tennis-hero-live{color:#ef4444;align-items:center;gap:5px;font-weight:600;display:inline-flex}.tennis-hero-ft{color:var(--text-muted)}.tennis-hero-time{color:var(--text-secondary);font-weight:500}.tennis-hero-court{color:var(--text-muted)}.tennis-hero-players-scheduled{flex-direction:column;gap:6px;padding:10px 0;display:flex}.tennis-hero-player-row{align-items:center;gap:8px;display:flex}.tennis-hero-player-tap{cursor:pointer;width:100%;color:inherit;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:4px 0;transition:background .15s;display:flex}.tennis-hero-player-tap:hover{background:var(--bg-card-hover)}.tennis-hero-player-name{color:var(--text-primary);text-align:left;flex:1;font-size:15px;font-weight:600}.tennis-hero-vs{color:var(--text-muted);padding-left:26px;font-size:12px}.tennis-players-section{flex-direction:column;gap:0;display:flex}.tennis-player-tap-row{border:none;border-bottom:1px solid var(--border-subtle);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:10px;padding:10px 0;display:flex}.tennis-player-tap-row:last-child{border-bottom:none}.tennis-player-tap-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.tennis-player-tap-rank{color:var(--text-muted);flex-shrink:0;font-size:12px}.tennis-sg-seed{color:var(--text-muted);margin-right:4px;font-size:12px;font-weight:400}.tennis-profile{padding:0}.tennis-profile-topbar{justify-content:space-between;align-items:center;padding:16px 20px 0;display:flex}.tennis-profile-identity{align-items:center;gap:16px;padding:20px 20px 16px;display:flex}.tennis-profile-stats-grid{background:var(--border-subtle);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);grid-template-columns:1fr 1fr;gap:1px;margin:8px 0;display:grid}.tennis-profile-stat{background:var(--bg-secondary);flex-direction:column;gap:3px;padding:14px 20px;display:flex}.tennis-profile-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.tennis-profile-stat-value{color:var(--text-primary);font-size:16px;font-weight:700}.tennis-profile-surface-row{color:var(--text-secondary);align-items:center;gap:8px;padding:12px 20px;font-size:13px;display:flex}.tennis-profile-surface-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.tennis-h2h-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.tennis-h2h-score{color:var(--text-primary);letter-spacing:-.5px;font-size:20px;font-weight:800}.tennis-h2h-score span{color:var(--text-muted);margin:0 4px}.tennis-h2h-meetings{flex-direction:column;gap:8px;display:flex}.tennis-h2h-row{background:var(--bg-tertiary);border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.tennis-h2h-surface-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.tennis-h2h-body{flex:1;min-width:0}.tennis-h2h-meta{color:var(--text-muted);margin-bottom:3px;font-size:11px}.tennis-h2h-sets{flex-wrap:wrap;gap:6px;display:flex}.tennis-h2h-set{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.tennis-h2h-set.won{color:var(--text-primary)}.tennis-h2h-winner{color:var(--accent);flex-shrink:0;align-self:center;font-size:11px;font-weight:600}.sheet-hero--fight,.sheet-hero--boxing{background:#dc26260a}.sheet-hero--mma{background:#ef44440a}.fight-comp-name{color:#ef4444!important}.fight-event-name{color:var(--text-primary);letter-spacing:-.02em;margin:6px 0 10px;font-size:22px;font-weight:800;line-height:1.1}.fight-title-badge{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b40;border-radius:6px;align-items:center;gap:6px;margin-bottom:12px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.fight-belt-icon{font-size:14px}.fight-format-badge{letter-spacing:.08em;border-radius:3px;margin-left:4px;padding:2px 6px;font-size:10px;font-weight:700}.fight-format-badge.mma{color:#ef4444;background:#ef44441f;border:1px solid #ef444440}.fight-faceoff{border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff0f;grid-template-columns:1fr 56px 1fr;align-items:center;gap:8px;margin:10px 0 12px;padding:14px 0;display:grid}.fight-faceoff-fighter{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.fight-faceoff-fighter.right{align-items:flex-end}.fight-faceoff-fighter.winner .fight-faceoff-name{color:var(--text-primary)}.fight-faceoff-tap{border-radius:8px;margin:-4px;padding:4px;transition:opacity .15s}.fight-faceoff-tap:active{opacity:.55}@media (hover:hover){.fight-faceoff-tap:hover{background:#ffffff0f}}.fight-faceoff-name{color:var(--text-secondary);word-break:break-word;font-size:15px;font-weight:700;line-height:1.2}.fight-record{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px}.fight-winner-badge{color:#fff;letter-spacing:.04em;background:#ef4444;border-radius:3px;padding:1px 5px;font-size:10px;font-weight:800}.fight-faceoff-centre{flex-direction:column;align-items:center;gap:4px;display:flex}.fight-vs{color:#ef4444;letter-spacing:.1em;font-size:11px;font-weight:800}.fight-faceoff-meta{color:var(--text-muted);text-align:center;font-size:10px;line-height:1.3}.fight-result-banner{color:var(--text-primary);background:#ef444414;border-left:3px solid #ef4444;border-radius:0 6px 6px 0;margin-bottom:10px;padding:8px 12px;font-size:14px;font-weight:600}.fight-result-winner{color:#ef4444}.fight-result-method{color:var(--text-secondary);font-weight:500}.fight-result-detail{color:var(--text-muted);font-size:12px}.fight-hero-status{flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.fight-live-label{color:#ef4444;letter-spacing:.06em;font-weight:700}.fight-ft-label{color:var(--text-muted)}.fight-time-label{color:var(--text-secondary);font-weight:500}.fight-venue-inline{color:var(--text-muted);align-items:center;gap:3px;margin-left:auto;font-size:11px;display:flex}.fight-card-list{flex-direction:column;gap:0;display:flex}.fight-row{border-bottom:1px solid #ffffff0d;padding:12px 0}.fight-row:last-child{border-bottom:none}.fight-row.main-event{background:#ef444408;border-bottom:none;border-radius:8px;margin:0 -4px 4px;padding:14px 10px}.fight-row.co-main{background:#ffffff05;border-bottom:none;border-radius:6px;margin:0 -2px 2px;padding:12px 8px}.fight-row-header{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.fight-row-section-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:700}.fight-row-section-badge.main{color:#ef4444;background:#ef44441f}.fight-row-section-badge.co-main{color:#f97316;background:#f973161a}.fight-row-title-badge{color:#f59e0b;font-size:11px;font-weight:600}.fight-row-meta{color:var(--text-muted);margin-left:auto;font-size:11px}.fight-row-fighters{align-items:center;gap:8px;display:flex}.fight-row-fighter{color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:5px;min-width:0;padding:2px 0;display:flex}.fight-row-fighter.right{text-align:right;flex-direction:row-reverse;justify-content:flex-end}.fight-row-fighter.winner .fight-row-name{color:var(--text-primary);font-weight:700}.fight-row-name{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.fight-row-record{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:11px}.fight-win-w{color:#fff;background:#ef4444;border-radius:3px;flex-shrink:0;padding:1px 4px;font-size:9px;font-weight:800}.fight-row-vs{color:var(--text-muted);flex-shrink:0;font-size:10px;font-weight:700}.fight-row-result{color:var(--text-muted);margin-top:5px;padding-left:2px;font-size:11px}.fight-row-result-winner{color:var(--accent);font-weight:600}.fight-row-result-method{color:var(--text-secondary)}.fight-row-result-detail{color:var(--text-muted)}.fight-card-section{margin-bottom:4px}.fight-card-section:last-child{margin-bottom:0}.fight-card-section-header{border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;margin-top:4px;padding:8px 0 6px;display:flex}.fight-card-section:first-child .fight-card-section-header{border-top:none;margin-top:0;padding-top:0}.fight-card-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:10px;font-weight:700}.fight-card-section-time{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:10px}.fight-details-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.fight-detail-item{flex-direction:column;gap:3px;display:flex}.fight-detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:10px}.fight-detail-val{color:var(--text-primary);font-size:15px;font-weight:600}.fight-profile{padding:0}.fight-profile-topbar{justify-content:space-between;align-items:center;padding:16px 20px 0;display:flex}.fight-profile-identity{align-items:center;gap:16px;padding:20px 20px 16px;display:flex}.fight-profile-record{color:var(--text-secondary);font-variant-numeric:tabular-nums;margin:3px 0 0;font-size:14px}.fight-profile-stats{background:var(--border-subtle);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);grid-template-columns:1fr 1fr;gap:1px;display:grid}.fight-profile-stat{background:var(--bg-secondary);flex-direction:column;gap:3px;padding:14px 20px;display:flex}.fight-profile-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.fight-profile-stat-val{color:var(--text-primary);font-size:18px;font-weight:700}.sheet-hero--rugby{--rugby-accent:#f59e0b;background:linear-gradient(160deg,#1a1a1a 0%,#0f0f0f 100%);padding:24px 20px 20px}.rugby-hero-competition{letter-spacing:.1em;text-transform:uppercase;color:var(--rugby-accent);margin-bottom:16px;font-size:11px;font-weight:600}.rugby-hero-teams{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.rugby-hero-team{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex}.rugby-hero-flag{font-size:32px;line-height:1}.rugby-hero-team-name{color:var(--text-primary);text-align:center;font-size:13px;font-weight:700;line-height:1.2}.rugby-hero-score-col{flex-direction:column;align-items:center;gap:4px;display:flex}.rugby-hero-score{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:44px;font-weight:800;line-height:1}.rugby-hero-score--live{color:var(--rugby-accent)}.rugby-hero-sep{color:var(--text-muted);font-size:28px;font-weight:300}.rugby-hero-ht{color:var(--text-muted);text-align:center;font-size:11px}.rugby-hero-status{color:var(--text-secondary);text-align:center;font-size:12px;font-weight:600}.rugby-hero-status--live{color:var(--rugby-accent)}.sheet-detail-unavailable{color:var(--text-muted);text-align:center;padding:8px 0;font-size:13px}.rugby-period-scores{flex-direction:column;gap:6px;display:flex}.rugby-period-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.rugby-period-row:last-child{border-bottom:none}.rugby-period-label{color:var(--text-secondary);font-size:13px}.rugby-period-score{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.rugby-events-list{flex-direction:column;display:flex}.sheet-tv-row--placeholder{flex-direction:column;align-items:center;gap:8px;display:flex}.rugby-events-incomplete{color:var(--text-secondary);margin:0 0 8px;font-size:12px}.rugby-event-row{border-bottom:1px solid var(--border-subtle);grid-template-columns:1fr 44px 1fr;align-items:center;gap:4px;min-height:34px;display:grid}.rugby-event-row:last-child{border-bottom:none}.rugby-ev-home,.rugby-ev-away{align-items:center;gap:5px;min-width:0;display:flex}.rugby-ev-away{justify-content:flex-end}.rugby-ev-time{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-size:11px}.rugby-ev-content{align-items:center;gap:4px;min-width:0;display:flex}.rugby-ev-icon{color:var(--text-muted);flex-shrink:0;min-width:14px;font-size:11px;font-weight:700}.rugby-ev-player{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.rugby-ev-content.is-try .rugby-ev-icon{color:#f59e0b}.rugby-ev-content.is-try .rugby-ev-player{color:var(--text-primary);font-weight:700}.rugby-ev-content.is-muted .rugby-ev-player{color:var(--text-muted);font-weight:400}.rugby-ev-score{color:var(--text-muted);text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px;font-weight:700}.rugby-ht-divider{align-items:center;gap:8px;padding:8px 0;display:flex}.rugby-ht-line{background:var(--border-subtle);flex:1;height:1px}.rugby-ht-label{letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;white-space:nowrap;font-size:10px;font-weight:700}.rugby-stats-section{padding:0 20px 16px}.rugby-stats-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-subtle);margin-bottom:10px;padding-bottom:6px;font-size:11px;font-weight:600}.rugby-stat-row{grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;margin-bottom:10px;display:grid}.rugby-stat-val{color:var(--text-primary);text-align:center;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.rugby-stat-bar-wrap{align-items:center;gap:2px;display:flex}.rugby-stat-bar-home,.rugby-stat-bar-away{border-radius:3px;height:6px}.rugby-stat-bar-home{background:#f59e0b;margin-left:auto}.rugby-stat-bar-away{background:var(--text-muted)}.rugby-stat-label{color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.06em;grid-column:1/-1;margin-top:2px;margin-bottom:-4px;font-size:11px}.sheet-error{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:48px 24px;display:flex}.sheet-error-text{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.sheet-error-btn{border:1px solid var(--border-subtle);background:var(--bg-card);min-height:44px;color:var(--text-primary);font:inherit;cursor:pointer;border-radius:10px;padding:0 24px;font-weight:600}
.lt-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:300;opacity:0;pointer-events:none;background:#0009;transition:opacity .3s;position:fixed;inset:0}.lt-backdrop.open{opacity:1;pointer-events:auto}.lt-sheet{background:var(--bg-elevated,#1e1e1e);z-index:301;border-radius:20px 20px 0 0;flex-direction:column;width:100%;max-width:440px;height:88vh;transition:transform .35s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)translateY(100%)}.lt-sheet.open{transform:translate(-50%)translateY(0)}.lt-handle-area{flex-shrink:0;justify-content:center;padding:12px 0 6px;display:flex}.lt-handle-pill{background:#ffffff26;border-radius:2px;width:36px;height:4px}[data-theme=light] .lt-handle-pill{background:#0000001a}.lt-header{border-bottom:1px solid #ffffff0f;flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:4px 20px 12px;display:flex}[data-theme=light] .lt-header{border-bottom-color:#00000014}.lt-title{color:var(--text-primary);margin:0 0 2px;font-size:17px;font-weight:700}.lt-season{color:var(--text-muted);font-size:12px}.lt-close-btn{width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-top:-2px;font-size:22px;transition:color .2s;display:flex}.lt-close-btn:hover{color:var(--text-primary)}.lt-body{-webkit-overflow-scrolling:touch;flex:1;padding:0;overflow-y:auto}.lt-skeleton-wrap{flex-direction:column;gap:10px;padding:16px 20px;display:flex}.lt-skeleton{background:#ffffff0f;border-radius:6px;height:18px;animation:1.4s ease-in-out infinite lt-pulse}.lt-skeleton.med{width:75%}.lt-skeleton.short{width:50%}[data-theme=light] .lt-skeleton{background:#0000000f}@keyframes lt-pulse{0%,to{opacity:1}50%{opacity:.4}}.lt-empty{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:14px}.lt-group{margin-bottom:20px}.lt-group-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;padding:12px 20px 6px;font-size:11px;font-weight:600}.lt-table{width:100%}.lt-row{grid-template-columns:26px 1fr 26px 26px 26px 26px 34px 34px;align-items:center;gap:2px;padding:8px 14px 8px 16px;display:grid}.lt-row-tappable{cursor:pointer;transition:background .1s}.lt-row-tappable:hover{background:#ffffff0a}.lt-row-tappable:active{background:#ffffff14}[data-theme=light] .lt-row-tappable:hover{background:#00000008}.lt-head{border-bottom:1px solid #ffffff0f;margin-bottom:2px;padding:6px 14px 6px 16px}[data-theme=light] .lt-head{border-bottom-color:#00000014}.lt-col{font-variant-numeric:tabular-nums}.lt-head .lt-col{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:600}.lt-col-pos{text-align:center;color:var(--text-muted);font-size:12px}.lt-col-team{align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.lt-team-logo{object-fit:contain;flex-shrink:0;width:18px;height:18px}.lt-team-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;overflow:hidden}.lt-head .lt-col-team{color:var(--text-muted);font-size:10px}.lt-col-num{text-align:center;color:var(--text-secondary);font-size:12px}.lt-col-num.gd{color:var(--text-muted);font-size:11px}.lt-col-num.fw{color:var(--text-primary);font-size:13px;font-weight:700}.lt-row.lt-champions{border-left:3px solid #4ade80;padding-left:13px}.lt-row.lt-europa{border-left:3px solid #f97316;padding-left:13px}.lt-row.lt-conference{border-left:3px solid #a78bfa;padding-left:13px}.lt-row.lt-europe{border-left:3px solid #60a5fa;padding-left:13px}.lt-row.lt-playoff{border-left:3px solid #fbbf24;padding-left:13px}.lt-row.lt-relegation{border-left:3px solid #f87171;padding-left:13px}.lt-divider{background:#ffffff0d;height:1px;margin:2px 16px}[data-theme=light] .lt-divider{background:#0000000f}.lt-legend{flex-wrap:wrap;align-items:center;gap:6px 12px;padding:10px 16px 0;display:flex}.lt-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.lt-legend-dot.champions{background:#4ade80}.lt-legend-dot.europa{background:#f97316}.lt-legend-dot.conference{background:#a78bfa}.lt-legend-dot.europe{background:#60a5fa}.lt-legend-dot.relegation{background:#f87171}.lt-legend-label{color:var(--text-muted);margin-right:4px;font-size:10px}.lt-bottom-spacer{height:32px}.lt-conf-tabs{border-bottom:1px solid #ffffff0f;gap:0;margin-bottom:4px;padding:12px 16px 0;display:flex}[data-theme=light] .lt-conf-tabs{border-bottom-color:#00000014}.lt-conf-tab{color:var(--text-muted);text-align:center;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:8px 4px;font-size:12px;font-weight:600;transition:color .15s,border-color .15s}.lt-conf-tab.active{color:var(--text-primary);border-bottom-color:var(--accent,#ff6b35)}.lt-nba .lt-row{grid-template-columns:26px 1fr 26px 26px 44px 34px 40px}.lt-row.lt-playin{border-left:3px solid #38bdf8;padding-left:13px}.lt-legend-dot.playin{background:#38bdf8}.lt-legend-dot.playoff{background:#fbbf24}[data-theme=light] .lt-sheet{background:#f8f8f8}
.tp-backdrop{z-index:600;background:#0000008c;position:fixed;inset:0}.tp-sheet{background:var(--bg-base);z-index:601;flex-direction:column;max-width:440px;margin:0 auto;animation:.22s cubic-bezier(.4,0,.2,1) forwards tpSlideUp;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes tpSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.tp-hero{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);flex-shrink:0;padding:0 0 16px;position:relative}.tp-hero:before{content:"";background:linear-gradient(180deg,color-mix(in srgb,var(--team-color,#ff6b35)28%,transparent)0%,transparent 100%);pointer-events:none;position:absolute;inset:0}[data-theme=light] .tp-hero{background:var(--bg-surface)}[data-theme=light] .tp-hero:before{background:linear-gradient(180deg,color-mix(in srgb,var(--team-color,#ff6b35)16%,transparent)0%,transparent 100%)}.tp-back-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:2px;min-height:44px;padding:14px 16px 10px;font-size:13px;font-weight:500;display:flex}.tp-hero-body{align-items:center;gap:16px;padding:4px 20px 0;display:flex}.tp-crest{flex-shrink:0}.tp-hero-meta{flex-direction:column;gap:3px;min-width:0;display:flex}.tp-team-name{color:var(--text-primary);letter-spacing:-.025em;font-size:22px;font-weight:800;line-height:1.1}.tp-team-sub{color:var(--text-tertiary);font-size:12px}.tp-team-standing{color:var(--accent);font-size:12px;font-weight:600}.tp-standing-btn{cursor:pointer;color:var(--accent);background:0 0;border:none;align-items:center;gap:3px;padding:0;font-family:inherit;font-size:12px;font-weight:600;display:inline-flex}.tp-standing-btn:active{opacity:.6}.tp-standing-chevron{opacity:.7;flex-shrink:0}.tp-team-record{color:var(--text-secondary);font-size:12px;font-weight:600}.tp-form-strip{align-items:center;gap:10px;padding:14px 20px 4px;display:flex}.tp-form-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0;font-size:10px;font-weight:700}.tp-form-pills{gap:5px;display:flex}.tp-form-pill-wrap{position:relative}.tp-form-pill{letter-spacing:0;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:800;transition:transform .1s,box-shadow .1s;display:inline-flex}.tp-form-pill:active{transform:scale(.9)}.tp-form-pill.tp-form-active{box-shadow:0 0 0 2px #ffffff40}.tp-form-w{color:#22c55e;background:#22c55e2e}.tp-form-l{color:#ef4444;background:#ef44442e}.tp-form-d{color:var(--text-tertiary);background:#6b72802e}[data-theme=light] .tp-form-w{color:#16a34a;background:#16a34a24}[data-theme=light] .tp-form-l{color:#dc2626;background:#dc262624}.tp-form-tooltip{background:var(--bg-card,#1a1a1a);white-space:nowrap;z-index:10;pointer-events:none;border:1px solid #ffffff1a;border-radius:10px;min-width:150px;max-width:200px;padding:8px 12px 9px;animation:.12s ease-out tp-tooltip-in;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000080}@keyframes tp-tooltip-in{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.tp-tooltip-row{align-items:center;gap:6px;margin-bottom:3px;display:flex}.tp-tooltip-result{background:#ffffff14;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:800;display:inline-flex}.tp-tooltip-score{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.tp-tooltip-opp{color:var(--text-secondary);text-overflow:ellipsis;margin-bottom:2px;font-size:12px;overflow:hidden}.tp-tooltip-date{color:var(--text-muted);font-size:11px}.tp-tooltip-arrow{border-left:6px solid #0000;border-right:6px solid #0000;border-top:6px solid var(--bg-card,#1a1a1a);width:0;height:0;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.tp-form-tooltip:after{content:"";z-index:-1;border-top:7px solid #ffffff1a;border-left:7px solid #0000;border-right:7px solid #0000;width:0;height:0;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)}[data-theme=light] .tp-form-tooltip{background:#fff;border-color:#0000001a;box-shadow:0 4px 20px #00000026}[data-theme=light] .tp-tooltip-arrow{border-top-color:#fff}[data-theme=light] .tp-form-tooltip:after{border-top-color:#0000001a}.tp-body{-webkit-overflow-scrolling:touch;background:var(--bg-base);flex:1;overflow-y:auto}.tp-section-title{letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin:0;padding:18px 20px 8px;font-size:10px;font-weight:700}.tp-stats-grid{background:var(--border-subtle);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);grid-template-columns:repeat(4,1fr);gap:1px;margin:0 0 2px;display:grid}.tp-stat-item{background:var(--bg-base);flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:12px 8px;display:flex}.tp-stat-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700;line-height:1}.tp-stat-label{letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);font-size:9px;font-weight:600}.tp-stat-highlight .tp-stat-value{color:var(--accent);font-size:22px}.tp-info-list{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);flex-direction:column;margin-bottom:2px;display:flex}.tp-info-row{border-bottom:1px solid var(--border-subtle);align-items:baseline;gap:8px;padding:11px 20px;display:flex}.tp-info-row:last-child{border-bottom:none}.tp-info-icon{color:var(--text-muted);vertical-align:middle;flex-shrink:0;margin-top:1px;margin-right:4px}.tp-info-label{color:var(--text-muted);flex-shrink:0;align-items:center;width:72px;font-size:11px;font-weight:600;display:flex}.tp-info-value{color:var(--text-primary);font-size:13px;line-height:1.4}.tp-venue-tag{color:var(--text-muted);margin-left:2px;font-size:11px;font-weight:500}.tp-match-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:10px 16px;display:flex}.tp-match-row:last-child{border-bottom:none}.tp-match-row.tp-upcoming{background:#ff6b350a}[data-theme=light] .tp-match-row.tp-upcoming{background:#e85d2a0a}.tp-result-badge{border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:10px;font-weight:800;display:inline-flex}.tp-result-w{color:#22c55e;background:#22c55e26}.tp-result-l{color:#ef4444;background:#ef444426}.tp-result-d{color:var(--text-tertiary);background:#6b728026}.tp-result-blank{background:0 0}[data-theme=light] .tp-result-w{color:#16a34a;background:#16a34a1f}[data-theme=light] .tp-result-l{color:#dc2626;background:#dc26261f}.tp-match-opponent{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.tp-match-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.tp-match-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:1px;display:flex}.tp-match-score{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.tp-match-time{color:var(--accent);font-size:13px;font-weight:600}.tp-match-date{color:var(--text-muted);font-size:11px}.tp-loading{flex-direction:column;gap:10px;padding:20px 16px;display:flex}.tp-skeleton-row{background:var(--bg-card);border-radius:8px;height:44px;animation:1.4s ease-in-out infinite tp-shimmer}@keyframes tp-shimmer{0%,to{opacity:.5}50%{opacity:1}}.tp-error,.tp-empty{text-align:center;color:var(--text-tertiary);padding:48px 20px;font-size:14px}.tp-bottom-spacer{height:max(32px,env(safe-area-inset-bottom))}.tp-hero-sub{align-items:center;gap:6px;margin-top:2px;display:flex}.tp-hero-flag{object-fit:cover;border-radius:1px;flex-shrink:0}.tp-hero-ground{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.tp-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);flex-shrink:0;align-items:center;padding:0 4px;display:flex;overflow-x:auto}.tp-tabs::-webkit-scrollbar{display:none}.tp-tab{height:40px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;align-items:center;gap:5px;padding:0 12px;font-family:inherit;font-size:12.5px;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.tp-tab:hover{color:var(--text-primary)}.tp-tab.is-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.tp-tab-flag{object-fit:cover;border-radius:1px;flex-shrink:0}.tp-tab-star{color:var(--accent);flex-shrink:0}.tp-zone-chip{white-space:nowrap;color:var(--text-muted);background:#6b728026;border-radius:3px;padding:1px 5px;font-size:9.5px;font-weight:600;display:inline-block}.tp-zone-chip.zone-ucl{color:#60a5fa;background:#3b82f626}.tp-zone-chip.zone-uel{color:#fb923c;background:#f9731626}.tp-zone-chip.zone-uecl{color:#2dd4bf;background:#14b8a626}.tp-zone-chip.zone-rel{color:#f87171;background:#ef444426}.tp-zone-chip.zone-prom{color:#4ade80;background:#22c55e26}.tp-form-dots{gap:3px;display:flex}.tp-form-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.tp-form-dot.tp-form-w{background:#22c55e}.tp-form-dot.tp-form-l{background:#ef4444}.tp-form-dot.tp-form-d{background:var(--text-muted)}.tp-comp-overview-row{border:none;border-bottom:1px solid var(--border-subtle);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:10px;width:100%;padding:12px 16px;font-family:inherit;transition:background .12s;display:flex}.tp-comp-overview-row:last-child{border-bottom:none}.tp-comp-overview-row:hover{background:#ffffff06}[data-theme=light] .tp-comp-overview-row:hover{background:#00000006}.tp-comp-overview-icon{flex-shrink:0;justify-content:center;align-items:center;width:20px;display:flex}.tp-comp-flag{object-fit:cover;border-radius:1px}.tp-comp-star-icon{color:var(--accent)}.tp-comp-overview-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.tp-comp-overview-name{color:var(--text-primary);font-size:13.5px;font-weight:500}.tp-comp-overview-meta{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.tp-comp-overview-pos{color:var(--text-secondary);font-size:11.5px}.tp-comp-overview-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.tp-comp-overview-next{color:var(--text-muted);white-space:nowrap;font-size:11px}.tp-comp-overview-chevron{color:var(--text-muted);flex-shrink:0}.tp-standings-snippet{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);margin-bottom:2px}.tp-standings-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;padding:8px 12px 8px 0;display:flex}.tp-standings-row:last-of-type{border-bottom:none}.tp-standings-row.is-our-team{background:#ff6b350f}.tp-zone-bar{border-radius:0 2px 2px 0;flex-shrink:0;align-self:stretch;width:3px}.tp-zone-bar.zone-ucl{background:#3b82f6}.tp-zone-bar.zone-uel{background:#f97316}.tp-zone-bar.zone-uecl{background:#14b8a6}.tp-zone-bar.zone-rel{background:#ef4444}.tp-zone-bar.zone-prom{background:#22c55e}.tp-standings-rank{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;width:18px;font-size:12px;font-weight:600}.tp-standings-club{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.tp-standings-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.tp-standings-row.is-our-team .tp-standings-name{font-weight:600}.tp-standings-played,.tp-standings-gd{color:var(--text-muted);text-align:center;font-variant-numeric:tabular-nums;flex-shrink:0;width:26px;font-size:12px}.tp-standings-pts{color:var(--text-primary);text-align:center;font-variant-numeric:tabular-nums;flex-shrink:0;width:26px;font-size:13px;font-weight:700}.tp-full-table-btn{width:100%;color:var(--accent);border:none;border-top:1px solid var(--border-subtle);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:3px;padding:10px;font-family:inherit;font-size:12px;font-weight:500;transition:background .12s;display:flex}.tp-full-table-btn:hover{background:var(--accent-subtle)}.tp-standing-summary{flex-wrap:wrap;align-items:center;gap:8px;padding:14px 20px 4px;display:flex}.tp-standing-pos{color:var(--text-primary);font-size:15px;font-weight:700}.tp-standing-pts{color:var(--accent);font-size:13px;font-weight:600}.tp-team-standing-text{color:var(--accent);margin:0;padding:10px 20px 0;font-size:12px;font-weight:600}.tp-cup-header{flex-wrap:wrap;align-items:center;gap:10px;padding:14px 20px 8px;display:flex}.tp-cup-round{color:var(--text-primary);font-size:14px;font-weight:600}.tp-cup-eliminated{letter-spacing:.04em;color:#ef4444;text-transform:uppercase;background:#ef44441f;border:1px solid #ef444440;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:700}.tp-road-entry{background:var(--bg-surface);border-radius:8px;flex-direction:column;gap:2px;margin-bottom:12px;padding:14px 16px;display:flex}.tp-road-entry-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600}.tp-road-entry-round{color:var(--text-primary);font-size:15px;font-weight:600}.tp-road-entry-note{color:var(--text-muted);margin-top:2px;font-size:12px}.tp-road{flex-direction:column;margin-bottom:4px;display:flex}.tp-road-row{gap:12px;min-height:52px;display:flex;position:relative}.tp-road-left{flex-direction:column;flex-shrink:0;align-items:center;width:28px;display:flex}.tp-road-indicator{z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:flex}.tp-road-dot-w{color:#22c55e;background:#22c55e2e;font-size:13px}.tp-road-dot-l{color:#ef4444;background:#ef44442e}.tp-road-dot-u{color:var(--accent);background:#ff6b3526;font-size:18px;line-height:1}.tp-road-dot-f{background:var(--bg-surface);color:var(--text-muted);font-size:18px;line-height:1}.tp-road-connector{background:var(--border-subtle);flex:1;width:2px;margin:2px 0 -2px}.tp-road-row:last-child .tp-road-connector{display:none}.tp-road-content{flex-direction:column;flex:1;gap:3px;min-width:0;padding:2px 0 14px;display:flex}.tp-road-round-name{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700}.tp-road-future .tp-road-round-name{opacity:.5}.tp-road-upcoming .tp-road-round-name,.tp-road-tie-in-progress .tp-road-round-name{color:var(--accent);opacity:1}.tp-road-opponent{align-items:center;gap:6px;min-width:0;display:flex}.tp-road-opp-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.tp-road-date{color:var(--accent);white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:600}.tp-road-score{color:var(--text-secondary);font-size:13px;font-weight:600}.tp-road-won .tp-road-score{color:#22c55e}.tp-road-lost .tp-road-score{color:#ef4444}.tp-road-legs{color:var(--text-muted);margin-left:4px;font-size:11px;font-weight:400}.tp-road-tip{color:var(--accent);font-size:12px;font-style:italic}.tp-bracket-wrap{margin-bottom:8px}.tp-bracket-toggle{background:var(--bg-surface);border:1px solid var(--border-subtle);width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600;transition:background .15s}.tp-bracket-toggle:hover{color:var(--accent);background:#ff6b350f}.tp-bracket-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:12px;padding:12px 0 4px;display:flex;overflow-x:auto}.tp-bracket-scroll::-webkit-scrollbar{display:none}.tp-bk-round{flex-shrink:0;min-width:156px;max-width:180px}.tp-bk-round-name{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 8px;padding:0 4px;font-size:10px;font-weight:700}.tp-bk-ties{flex-direction:column;gap:8px;display:flex}.tp-bk-tie{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;padding:4px 0;overflow:hidden}.tp-bk-tie.tp-bk-done{border-color:var(--border-subtle)}.tp-bk-tie.tp-bk-tbd{opacity:.35}.tp-bk-side{align-items:center;gap:6px;min-width:0;min-height:30px;padding:5px 8px;display:flex}.tp-bk-side-winner{background:#ff6b350f}.tp-bk-side-my{font-weight:700}.tp-bk-side-empty{min-height:30px;padding:5px 8px}.tp-bk-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:12px;overflow:hidden}.tp-bk-side-winner .tp-bk-name{color:var(--text-primary);font-weight:600}.tp-bk-side-my .tp-bk-name{color:var(--accent)}.tp-bk-score{color:var(--text-primary);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:13px;font-weight:700}.tp-bk-pso,.tp-bk-leg{text-align:center;color:var(--text-muted);padding:0 8px 2px;font-size:10px;display:block}.tp-bk-leg2-scores,.tp-bk-agg-row{color:var(--text-muted);border-top:1px solid var(--border-subtle);justify-content:center;align-items:center;gap:4px;padding:2px 8px;font-size:11px;display:flex}.tp-bk-agg{color:var(--text-muted);font-size:10px}.tp-bk-agg-row{color:var(--text-secondary);font-size:12px;font-weight:700}
.sp-backdrop{z-index:450;background:#00000080;position:fixed;inset:0}.sp-panel{background:var(--bg-surface);z-index:451;border-radius:0 0 16px 16px;flex-direction:column;max-width:440px;max-height:80vh;margin:0 auto;animation:.18s cubic-bezier(.4,0,.2,1) forwards spSlideDown;display:flex;position:fixed;top:0;left:0;right:0;overflow:hidden;box-shadow:0 8px 32px #0000004d}@keyframes spSlideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.sp-input-row{border-bottom:1px solid var(--border-subtle);padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top,0px));flex-shrink:0;align-items:center;gap:10px;display:flex}.sp-input-icon{color:var(--text-muted);flex-shrink:0}.sp-input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0;font-family:inherit;font-size:16px;font-weight:400}.sp-input::placeholder{color:var(--text-muted)}.sp-input::-webkit-search-decoration{display:none}.sp-input::-webkit-search-cancel-button{display:none}.sp-input::-webkit-search-results-button{display:none}.sp-input::-webkit-search-results-decoration{display:none}.sp-close-btn{background:var(--bg-card);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sp-results{-webkit-overflow-scrolling:touch;flex:1;padding-bottom:16px;overflow-y:auto}.sp-hint,.sp-no-results{color:var(--text-muted);text-align:center;padding:24px 20px;font-size:13px}.sp-section-header{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:6px;padding:12px 16px 4px;font-size:11px;font-weight:700;display:flex}.sp-result-row{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;width:100%;min-height:48px;padding:10px 16px;transition:background .1s;display:flex}.sp-result-row:hover,.sp-result-row:active{background:#ffffff0d}[data-theme=light] .sp-result-row:hover{background:#0000000a}.sp-result-icon{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sp-result-sport{color:var(--text-muted);display:flex}.sp-result-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.sp-result-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.sp-result-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.sp-result-arrow{color:var(--text-muted);flex-shrink:0;font-size:18px}
.pp-backdrop{z-index:700;background:#0000008c;position:fixed;inset:0}.pp-sheet{background:var(--bg-base);z-index:701;flex-direction:column;max-width:440px;margin:0 auto;animation:.22s cubic-bezier(.4,0,.2,1) forwards ppSlideUp;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes ppSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.pp-hero{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);flex-shrink:0;padding:0 0 16px}.pp-back-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:2px;min-height:44px;padding:14px 16px 10px;font-size:13px;font-weight:500;display:flex}.pp-hero-body{align-items:center;gap:16px;padding:4px 20px 0;display:flex}.pp-hero-flag{border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:40px;font-size:32px;line-height:1;display:flex;overflow:hidden}.pp-hero-flag img,.pp-hero-flag svg{object-fit:cover;width:100%;height:100%}.pp-hero-meta{flex-direction:column;gap:3px;min-width:0;display:flex}.pp-player-name{color:var(--text-primary);letter-spacing:-.025em;font-size:22px;font-weight:800;line-height:1.1}.pp-player-sub{color:var(--text-tertiary);font-size:12px}.pp-body{-webkit-overflow-scrolling:touch;background:var(--bg-base);flex:1;overflow-y:auto}.pp-ranking-pill{color:var(--accent);padding:10px 20px 0;font-size:13px;font-weight:700}.pp-record-pill{color:var(--text-primary);padding:10px 20px 0;font-size:13px;font-weight:700}.pp-stale-label{color:var(--text-muted);opacity:.75;font-size:10px;font-weight:500}.pp-weight-chip{color:var(--text-secondary);padding:3px 20px 0;font-size:11px;font-weight:600}.pp-section-title{letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin:0;padding:18px 20px 8px;font-size:10px;font-weight:700}.pp-stats-grid{background:var(--border-subtle);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);grid-template-columns:repeat(4,1fr);gap:1px;margin:0 0 2px;display:grid}.pp-stats-grid--2col{grid-template-columns:repeat(2,1fr)}.pp-stats-grid--3col{grid-template-columns:repeat(3,1fr)}.pp-stat-item{background:var(--bg-base);flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:12px 8px;display:flex}.pp-stat-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700;line-height:1}.pp-stat-label{letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);text-align:center;font-size:9px;font-weight:600}.pp-stat-highlight .pp-stat-value{color:var(--accent);font-size:22px}.pp-info-list{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);flex-direction:column;margin-bottom:2px;display:flex}.pp-info-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;padding:11px 20px;display:flex}.pp-info-row:last-child{border-bottom:none}.pp-info-label{color:var(--text-muted);flex-shrink:0;width:96px;font-size:11px;font-weight:600}.pp-info-value{color:var(--text-primary);align-items:center;gap:6px;font-size:13px;line-height:1.4;display:flex}.pp-surface-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.pp-major-wins{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);margin-bottom:2px}.pp-major-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:10px 20px;display:flex}.pp-major-row:last-child{border-bottom:none}.pp-major-trophy{flex-shrink:0;font-size:14px}.pp-major-name{color:var(--text-primary);flex:1;font-size:13px}.pp-major-year{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.pp-headshot-wrap{justify-content:center;padding:16px 20px 8px;display:flex}.pp-headshot{object-fit:cover;background:var(--bg-card);border:2px solid var(--border-subtle);border-radius:50%;width:96px;height:96px}.pp-loading{flex-direction:column;gap:10px;padding:20px 16px;display:flex}.pp-skeleton-row{background:var(--bg-card);border-radius:8px;height:44px;animation:1.4s ease-in-out infinite pp-shimmer}@keyframes pp-shimmer{0%,to{opacity:.5}50%{opacity:1}}.pp-error{text-align:center;color:var(--text-tertiary);padding:48px 20px;font-size:14px}.pp-empty{text-align:center;color:var(--text-muted);padding:32px 20px;font-size:13px}.pp-titles-list{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);margin-bottom:2px}.pp-title-row{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:10px;padding:10px 20px;display:flex}.pp-title-row:last-child{border-bottom:none}.pp-title-belt{flex-shrink:0;margin-top:1px;font-size:14px}.pp-title-text{color:var(--text-primary);font-size:12px;line-height:1.4}.pp-fights-list{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);margin-bottom:2px}.pp-fight-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:10px 20px;display:flex}.pp-fight-row:last-child{border-bottom:none}.pp-fight-result{flex-shrink:0;width:20px;font-size:11px;font-weight:700}.pp-fight-opponent{color:var(--text-primary);flex:1;font-size:13px}.pp-fight-method{color:var(--text-muted);flex-shrink:0;font-size:11px}.pp-bottom-spacer{height:max(32px,env(safe-area-inset-bottom))}
.fb-bubble{right:max(16px,50vw - 204px);bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:400;width:44px;height:44px;color:var(--accent);cursor:pointer;touch-action:manipulation;background:#1f1f1f;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;box-shadow:0 4px 14px #00000073}.fb-bubble:focus-visible{outline:2px solid var(--accent);outline-offset:2px}html.is-tester main{padding-bottom:88px!important}html.is-tester .sheet-bottom-spacer{height:80px}.fb-backdrop{z-index:600;background:#0000008c;position:fixed;inset:0}.fb-sheet{z-index:601;width:100%;max-width:440px;padding:8px 16px calc(16px + env(safe-area-inset-bottom,0px));background:var(--bg-card);border-radius:16px 16px 0 0;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 24px #0006}.fb-head{justify-content:space-between;align-items:center;display:flex}.fb-title{color:var(--text-primary);margin:0;font-size:17px;font-weight:700}.fb-close{width:44px;height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin-right:-10px;padding:0;display:flex}.fb-close:focus-visible{outline:2px solid var(--accent);outline-offset:-4px;border-radius:10px}.fb-form{flex-direction:column;gap:6px;display:flex}.fb-label{color:var(--text-secondary);margin-top:6px;font-size:13px;font-weight:600}.fb-optional{color:#8a8a8a;font-weight:400}.fb-text,.fb-input{box-sizing:border-box;background:var(--bg-surface);width:100%;color:var(--text-primary);font:inherit;border:1px solid #ffffff1f;border-radius:10px;padding:10px 12px;font-size:15px}.fb-text{resize:vertical;min-height:104px;line-height:1.4}.fb-input{min-height:44px}.fb-text::placeholder{color:#8a8a8a}.fb-text:focus,.fb-input:focus{outline:2px solid var(--accent);outline-offset:-1px}[data-theme=light] .fb-text,[data-theme=light] .fb-input{border-color:#00000026}.fb-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.fb-attached{color:#8a8a8a;margin:8px 0 2px;font-size:12.5px;line-height:1.4}.fb-error{color:#f87171;margin:4px 0 0;font-size:13px}.fb-btn{background:var(--accent);color:#fff;min-height:44px;font:inherit;cursor:pointer;border:0;border-radius:10px;margin-top:8px;font-size:15px;font-weight:700}.fb-btn:disabled{opacity:.5;cursor:default}.fb-btn:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.fb-done{flex-direction:column;padding:12px 0 4px;display:flex}.fb-done-text{color:var(--text-primary);margin:0 0 4px;font-size:16px;font-weight:600}
