.sport-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
.sport-chip,.chip,.filter-chip{font-family:var(--font-meta);font-size:.8rem;padding:.45rem .9rem;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);border-radius:var(--radius);cursor:pointer;transition:background .2s,color .2s}
.sport-chip:hover,.chip:hover,.filter-chip:hover{border-color:var(--accent)}
.sport-chip.is-active,.chip.is-active,.filter-chip.is-active{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.is-hidden{display:none!important}
.sport-grid,.card-grid,.feature-grid,.promo-grid,.method-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-bottom:2rem}
@media(min-width:640px){.sport-grid,.card-grid,.promo-grid,.method-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:780px){.feature-grid{grid-template-columns:repeat(3,1fr)}.card-grid{grid-template-columns:repeat(3,1fr)}}
.sport-card,.hub-card,.feature-card,.promo-card,.info-card,.spec-card,.article-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;color:var(--text);box-shadow:var(--shadow);transition:transform .22s,box-shadow .22s;clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%)}
.sport-card *,.hub-card *,.feature-card *,.promo-card *,.info-card *{color:inherit}
.sport-card:hover,.hub-card:hover,.feature-card:hover,.promo-card:hover,.info-card:hover,.article-card:hover{transform:translateY(-5px);box-shadow:0 10px 22px rgba(15,26,36,.18)}
.sport-card h3,.hub-card h3,.feature-card h3,.promo-card h3{font-family:var(--font-display);font-size:1.05rem;margin:0 0 .6rem}
.card-stack:hover .info-card{transform:translateY(-3px)}
.tabs,.tab-bar{display:flex;flex-wrap:wrap;gap:.25rem;border-bottom:2px solid var(--border);margin-bottom:1.5rem}
.tab-btn{font-family:var(--font-meta);font-size:.85rem;background:none;border:none;border-bottom:3px solid transparent;padding:.7rem 1rem;cursor:pointer;color:var(--muted)}
.tab-btn:hover{color:var(--text)}
.tab-btn.is-active{color:var(--accent);border-bottom-color:var(--accent)}
.tab-panel{display:none}
.tab-panel.is-active{display:block}
.seg-control{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:1.25rem}
.seg-btn{font-family:var(--font-meta);font-size:.8rem;background:var(--bg-elevated);border:none;padding:.55rem 1.1rem;cursor:pointer;color:var(--text)}
.seg-btn.is-active{background:var(--accent);color:var(--on-accent)}
.seg-panel{display:none}
.seg-panel.is-active{display:block}
.faq-accordion,.accordion{margin-bottom:2rem}
.faq-item,.accordion-item,.checklist-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.75rem;background:var(--bg-elevated)}
.faq-trigger,.accordion-trigger,.checklist-trigger{width:100%;text-align:left;background:none;border:none;padding:1rem 1.1rem;font-family:var(--font);font-weight:600;font-size:1rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--text)}
.acc-icon{font-family:var(--font-meta);color:var(--accent);transition:transform .2s;flex-shrink:0}
.faq-body,.accordion-body,.checklist-body{display:none;padding:0 1.1rem 1.1rem;word-break:break-word;overflow-wrap:break-word}
.faq-item.is-open .faq-body,.accordion-item.is-open .accordion-body,.checklist-item.is-expanded .checklist-body{display:block}
.faq-item.is-open .faq-trigger .acc-icon,.accordion-item.is-open .accordion-trigger .acc-icon{transform:rotate(45deg)}
.accordion-trigger .check-icon,.checklist-trigger .check-icon,.faq-trigger .check-icon{display:none}
.check-icon{display:inline-flex;width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;align-items:center;justify-content:center;font-size:.7rem;margin-right:.5rem;flex-shrink:0}
.dense-list{list-style:none;padding:0;margin:0}
.dense-list li{display:block;padding:1rem 0}
.dense-list li+li{border-top:1px solid var(--border);padding-top:1.5rem}
.dense-list__marker{display:block;font-weight:600;color:var(--accent);margin-bottom:.5rem;font-family:var(--font-meta);font-size:.85rem}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:2rem;border:1px solid var(--border);border-radius:var(--radius);position:relative;background:linear-gradient(90deg,var(--bg-elevated) 30%,transparent),linear-gradient(90deg,transparent,var(--bg-elevated) 70%) 100% 0;background-size:40px 100%,40px 100%;background-repeat:no-repeat;background-attachment:local,local}
.data-table,table.data-table{width:100%;border-collapse:collapse;min-width:520px;font-size:.9rem;background:var(--bg-elevated);color:var(--text)}
.data-table th{background:var(--pitch);color:var(--text-light);font-family:var(--font-meta);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;padding:.7rem .8rem;text-align:left;position:sticky;top:0;z-index:2}
.data-table td{padding:.65rem .8rem;border-bottom:1px solid var(--border)}
.data-table tbody tr:nth-child(even){background:var(--bg)}
.data-table tbody tr:hover{background:rgba(255,61,0,.07)}
.data-table tr.is-highlight{background:rgba(255,193,7,.2)!important}
.rank-col,.mono-col{font-family:var(--font-meta);color:var(--accent)}
.steps-strip{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}
.step-item{flex:1 1 180px;background:var(--bg-elevated);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius);padding:1.2rem;color:var(--text);transition:border-color .2s,transform .2s}
.step-item:hover{transform:translateY(-3px);border-left-color:var(--gold)}
.step-num{font-family:var(--font-display);font-size:1.6rem;color:var(--accent);display:block;margin-bottom:.4rem}
.timeline{list-style:none;padding:0;margin:0 0 2rem;position:relative}
.timeline:before{content:"";position:absolute;left:10px;top:0;bottom:0;width:2px;background:var(--border)}
.timeline-item{position:relative;padding:0 0 1.5rem 2.5rem}
.timeline-item:before{content:"";position:absolute;left:3px;top:4px;width:16px;height:16px;border-radius:50%;background:var(--accent);border:3px solid var(--bg)}
.timeline-item:hover:before{background:var(--gold)}
.scorer-bar{display:flex;align-items:center;gap:.75rem;margin-bottom:.6rem}
.scorer-bar__label{font-family:var(--font-meta);font-size:.8rem;min-width:120px}
.scorer-bar__track{flex:1;background:var(--border);border-radius:var(--radius);height:14px;overflow:hidden}
.scorer-bar__fill,.bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--gold));width:0;transition:width 1s ease}
.live-dot{display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--accent);position:relative;margin-right:.5rem}
.live-dot:after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--accent);animation:pulse 1.6s infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.6);opacity:0}}
.ticker{overflow:hidden;white-space:nowrap;background:var(--pitch);color:var(--text-light);padding:.6rem 0;margin-bottom:2rem}
.ticker *{color:inherit}
.ticker__track{display:inline-block;animation:ticker 22s linear infinite;font-family:var(--font-meta);font-size:.85rem}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.stats-ribbon{display:flex;flex-wrap:wrap;gap:1.5rem;overflow-x:auto;background:var(--pitch);color:var(--text-light);padding:1.5rem;border-radius:var(--radius);margin-bottom:2rem}
.stats-ribbon *{color:inherit}
.stat-item{flex:1 1 140px;text-align:center}
.stat-item .stat-num{font-family:var(--font-display);font-size:2rem;display:block}
.stat-item.gold .stat-num{color:var(--gold)}
.stat-item .stat-label{font-family:var(--font-meta);font-size:.7rem;color:var(--on-pitch-muted)}
.promo-badge{display:inline-block;background:linear-gradient(90deg,var(--gold),#fff,var(--gold));background-size:200% 100%;color:var(--pitch);font-family:var(--font-meta);font-size:.7rem;padding:.2rem .5rem;border-radius:var(--radius);animation:shimmer 3s linear infinite}
@keyframes shimmer{0%{background-position:0 0}100%{background-position:200% 0}}
.device-mock{width:160px;height:300px;border:6px solid var(--pitch);border-radius:24px;background:var(--bg-elevated);margin:0 auto;position:relative}
.device-mock:before{content:"";position:absolute;top:10px;left:50%;transform:translateX(-50%);width:40px;height:5px;border-radius:3px;background:var(--border)}
.progress-ring{width:90px;height:90px;border-radius:50%;background:conic-gradient(var(--accent) var(--pct,60%),var(--border) 0);display:flex;align-items:center;justify-content:center;margin:1rem auto}
.progress-ring span{width:66px;height:66px;border-radius:50%;background:var(--bg-elevated);display:flex;align-items:center;justify-content:center;font-family:var(--font-meta);font-weight:600}
.team-list-wrap{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}
@media(min-width:780px){.team-list-wrap{grid-template-columns:220px 1fr}}
.team-row{display:block;width:100%;text-align:left;padding:.6rem .8rem;border:none;border-bottom:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;font-family:var(--font);color:var(--text)}
.team-row:hover{background:rgba(255,61,0,.08)}
.team-row.is-active{background:var(--accent);color:var(--on-accent)}
.team-panel{display:none}
.team-panel.is-active{display:block}
.pill-links{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}
.pill-links a{font-family:var(--font-meta);font-size:.8rem;padding:.4rem .9rem;border:1px solid var(--border);border-radius:999px;text-decoration:none;background:var(--bg-elevated)}
.pill-links a:hover{border-color:var(--accent);color:var(--accent)}
.legend-row{display:flex;flex-wrap:wrap;gap:1rem;font-family:var(--font-meta);font-size:.8rem;margin-bottom:2rem}
.legend-row span{display:inline-flex;align-items:center;gap:.4rem}
.legend-dot{width:12px;height:12px;border-radius:3px;display:inline-block}
.legend-dot.group{background:var(--accent)}
.legend-dot.knockout{background:var(--gold)}
.has-tooltip{position:relative;cursor:help;border-bottom:1px dotted var(--accent)}
.tooltip-pop{position:absolute;bottom:120%;left:50%;transform:translateX(-50%);background:var(--pitch);color:var(--text-light);padding:.4rem .6rem;border-radius:var(--radius);font-size:.75rem;white-space:nowrap;z-index:20}
.modal{display:none;position:fixed;inset:0;background:rgba(15,26,36,.7);z-index:2000;align-items:center;justify-content:center;padding:1rem}
.modal.is-open{display:flex}
.modal__box{background:var(--bg-elevated);color:var(--text);padding:2rem;border-radius:var(--radius);max-width:480px;width:100%;box-shadow:var(--shadow)}
.toc{position:sticky;top:80px;font-family:var(--font-meta);font-size:.85rem}
.toc-link{display:block;padding:.3rem 0;color:var(--muted);text-decoration:none}
.toc-link.is-active{color:var(--accent);font-weight:600}
.slider-row{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}
.slider-row input[type=range]{flex:1;accent-color:var(--accent)}
.slider-output{font-family:var(--font-display);font-size:1.4rem;color:var(--accent)}
.read-more-body,.promo-card .promo-detail{display:none}
.read-more-body.is-open,.promo-card .promo-detail.is-open{display:block}
@media(prefers-reduced-motion:reduce){.live-dot:after,.ticker__track,.promo-badge,.scorer-bar__fill,.bar-fill{animation:none!important;transition:none!important}}