.section-rail{font-family:var(--font-meta);font-size:0.75rem;letter-spacing:0.1em;color:var(--accent);margin-bottom:0.5rem;display:block}
.mono-label{font-family:var(--font-meta);font-size:0.75rem;letter-spacing:0.08em;color:var(--muted);text-transform:uppercase}
.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2rem}
@media(max-width:780px){.hub-grid{grid-template-columns:1fr}}
.hub-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:border-color 0.2s ease,transform 0.2s ease}
.hub-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.hub-card__index{font-family:var(--font-meta);color:var(--accent);font-size:0.8rem}
.sport-chips{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:1.5rem}
.sport-chip{font-family:var(--font-meta);font-size:0.8rem;padding:0.4rem 0.9rem;border:1px solid var(--border);background:var(--bg-elevated);border-radius:var(--radius);cursor:pointer;color:var(--text)}
.sport-chip.is-active{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.sport-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
@media(max-width:780px){.sport-cards{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.sport-cards{grid-template-columns:1fr}}
.sport-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}
.market-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;transition:transform 0.2s ease,border-color 0.2s ease}
.market-card:hover{transform:scale(1.02);border-color:var(--accent)}
.tablist{display:flex;gap:1rem;border-bottom:1px solid var(--border);margin-bottom:1.5rem;flex-wrap:wrap}
.tab-btn{font-family:var(--font-display);font-weight:600;background:none;border:none;border-bottom:2px solid transparent;padding:0.6rem 0.25rem;cursor:pointer;color:var(--muted)}
.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.5rem}
.seg-btn{font-family:var(--font-meta);font-size:0.85rem;background:var(--bg-elevated);border:none;padding:0.6rem 1.2rem;cursor:pointer;color:var(--text)}
.seg-btn.is-active{background:var(--accent);color:var(--on-accent)}
.seg-panel{display:none;animation:fade 0.3s ease}
.seg-panel.is-active{display:block}
@keyframes fade{from{opacity:0}to{opacity:1}}
.faq-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:0.75rem;background:var(--bg-elevated)}
.faq-trigger{width:100%;text-align:left;background:none;border:none;padding:1rem 1.25rem;font-family:var(--font-display);font-weight:600;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:var(--text)}
.faq-trigger:hover{background:var(--bg)}
.acc-icon{color:var(--accent);transition:transform 0.2s ease;font-size:1.2rem}
.faq-body{display:none;padding:0 1.25rem 1.25rem;word-break:break-word;overflow-wrap:break-word}
.faq-item.is-open .faq-body{display:block}
.faq-item.is-open .faq-trigger .acc-icon{transform:rotate(45deg)}
.accordion-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:0.75rem;background:var(--bg-elevated)}
.accordion-trigger{width:100%;text-align:left;background:none;border:none;padding:1rem 1.25rem;font-family:var(--font-display);font-weight:600;cursor:pointer;display:flex;justify-content:space-between;color:var(--text)}
.accordion-body{display:none;padding:0 1.25rem 1.25rem;word-break:break-word;overflow-wrap:break-word}
.accordion-item.is-open .accordion-body{display:block}
.checklist-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:0.75rem;background:var(--bg-elevated)}
.checklist-trigger{width:100%;text-align:left;background:none;border:none;padding:1rem 1.25rem;font-family:var(--font-display);font-weight:600;cursor:pointer;color:var(--text)}
.checklist-body{display:none;padding:0 1.25rem 1.25rem}
.checklist-item.is-expanded .checklist-body{display:block}
.disclosure-card,.method-card,.expand-card{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;background:var(--bg-elevated);transition:box-shadow 0.2s ease}
.disclosure-card:hover,.promo-card:hover{box-shadow:0 4px 12px rgba(30,36,48,0.12)}
.disclosure-trigger,.method-trigger,.expand-trigger{width:100%;text-align:left;background:none;border:none;padding:1rem 1.25rem;font-family:var(--font-display);font-weight:600;cursor:pointer;display:flex;justify-content:space-between;color:var(--text)}
.disclosure-body,.method-body,.expand-body{display:none;padding:0 1.25rem 1.25rem}
.disclosure-card.is-expanded .disclosure-body,.method-card.is-expanded .method-body,.expand-card.is-expanded .expand-body{display:block}
.promo-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:transform 0.2s ease,box-shadow 0.2s ease;margin-bottom:1rem}
.promo-card:hover{transform:translateY(-3px)}
.ticker{overflow:hidden;background:var(--pitch);border-radius:var(--radius);padding:0.75rem 0;white-space:nowrap}
.ticker-track{display:inline-block;white-space:nowrap;animation:ticker 24s linear infinite;font-family:var(--font-meta);color:var(--on-pitch-muted)}
.ticker-track span{padding:0 1.5rem;color:var(--link-on-dark)}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.live-badge{display:inline-flex;align-items:center;gap:0.4rem;font-family:var(--font-meta);font-size:0.75rem;color:var(--accent);text-transform:uppercase}
.live-badge::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 1.4s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.4;transform:scale(1.4)}}
.timeline{list-style:none;padding:0;margin:0;position:relative;border-left:2px solid var(--border);padding-left:1.5rem}
.timeline-item{position:relative;margin-bottom:1.5rem}
.timeline-item::before{content:"";position:absolute;left:-1.95rem;top:0.25rem;width:12px;height:12px;border-radius:50%;background:var(--accent);transition:transform 0.2s ease}
.timeline-item:hover::before{transform:scale(1.5)}
.step-rail{list-style:none;counter-reset:step;padding:0;margin:0 0 2rem}
.step-rail li{position:relative;padding:1rem 1rem 1rem 3.25rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);margin-bottom:0.75rem;counter-increment:step;transition:border-color 0.2s ease}
.step-rail li:hover{border-color:var(--accent)}
.step-rail li::before{content:counter(step,decimal-leading-zero);position:absolute;left:1rem;top:1rem;font-family:var(--font-meta);color:var(--accent);font-weight:500}
.flip-card{height:300px;perspective:1000px;margin-bottom:1rem}
.flip-card__inner{position:relative;width:100%;height:100%;transition:transform 0.6s ease;transform-style:preserve-3d}
.flip-card:hover .flip-card__inner{transform:rotateY(180deg)}
.flip-card__front,.flip-card__back{position:absolute;inset:0;overflow-y:auto;backface-visibility:hidden;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}
.flip-card__back{transform:rotateY(180deg)}
.device-frame{border:8px solid var(--pitch);border-radius:24px;max-width:280px;margin:0 auto;overflow:hidden;transition:transform 0.3s ease}
.device-frame:hover{transform:translateY(-6px) rotate(-1deg)}
.app-mockup{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);min-height:380px;display:flex;align-items:center;justify-content:center}
.carousel{position:relative}
.carousel-slide{display:none}
.carousel-slide.is-active{display:block}
.carousel-dots{display:flex;justify-content:center;gap:0.5rem;margin-top:1rem}
.carousel-dot{width:10px;height:10px;border-radius:50%;border:none;background:var(--border);cursor:pointer}
.carousel-dot.is-active{background:var(--accent)}
.resource-card,.link-card,.doc-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;transition:transform 0.2s ease,box-shadow 0.2s ease,border-color 0.2s ease;margin-bottom:1rem;display:block;text-decoration:none}
.resource-card:hover,.link-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.doc-card:hover{border-color:var(--accent)}
.status-badge{display:inline-block;font-family:var(--font-meta);font-size:0.7rem;padding:0.2rem 0.6rem;border-radius:var(--radius);background:var(--gold);color:var(--text);text-transform:uppercase}
.stat-cell{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;text-align:center;transition:transform 0.2s ease}
.stat-cell:hover{transform:translateY(-3px)}
.stat-num{font-family:var(--font-display);font-weight:700;font-size:2.5rem;color:var(--accent)}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2rem}
@media(max-width:640px){.stats-grid{grid-template-columns:1fr}}
.pull-quote{border-left:4px solid var(--accent);padding:1rem 1.5rem;font-family:var(--font-display);font-size:1.25rem;font-style:italic;margin:1.5rem 0;word-break:break-word;overflow-wrap:break-word}
.toc{position:static}
@media(min-width:780px){.toc,.sidenav{position:sticky;top:80px}}
.toc-link,.sidenav-link{display:block;padding:0.4rem 0.75rem;text-decoration:none;color:var(--muted);border-left:2px solid transparent;font-size:0.9rem}
.toc-link.is-active,.sidenav-link.is-active{color:var(--accent);border-left-color:var(--accent)}
.legal-layout{display:grid;grid-template-columns:1fr;gap:2rem}
@media(min-width:780px){.legal-layout{grid-template-columns:240px 1fr}}
.cookie-pill{font-family:var(--font-meta);font-size:0.8rem;padding:0.4rem 0.9rem;border:1px solid var(--border);background:var(--bg-elevated);border-radius:var(--radius);cursor:pointer;color:var(--text)}
.cookie-pill.is-active{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.def-list dt{font-family:var(--font-display);font-weight:600;transition:color 0.2s ease}
.def-list dt:hover{color:var(--accent)}
.def-list dd{margin:0 0 1rem;color:var(--muted)}