.fan-hero,.fan-paths,.fan-champions-results,.fan-finale{--fan-on-primary:var(--color-text-primary-alternative)}:root:is(.dark,[data-mode=dark]) :is(.fan-hero,.fan-paths,.fan-champions-results,.fan-finale){--fan-on-primary:var(--color-bg-primary)}.fan-hero{isolation:isolate;color:var(--color-text-primary);background:radial-gradient(ellipse at 87% 8%, color-mix(in srgb, var(--playmaker-primary) 18%, transparent), transparent 54%), radial-gradient(ellipse at 8% 100%, color-mix(in srgb, var(--playmaker-accent) 14%, transparent), transparent 52%), var(--color-bg-primary);padding:64px 24px 72px;position:relative;overflow:clip}.fan-hero:after{content:"";background:linear-gradient(90deg, var(--playmaker-primary), var(--playmaker-accent), var(--playmaker-amazon));height:4px;position:absolute;inset:auto 0 0}.fan-stadium-lights{pointer-events:none;z-index:-1;position:absolute;inset:0}.fan-stadium-lights span{background:linear-gradient(180deg, color-mix(in srgb, var(--playmaker-primary) 12%, transparent), transparent 80%);width:220px;height:150%;animation:4s ease-out both fan-floodlight;position:absolute;top:-40%;left:45%;transform:rotate(32deg)}.fan-stadium-lights span:nth-child(2){width:100px;left:80%;transform:rotate(-26deg)}.fan-stadium-lights span:nth-child(3){border:1px solid color-mix(in srgb, var(--playmaker-primary) 16%, transparent);width:630px;height:630px;box-shadow:0 0 0 54px color-mix(in srgb, var(--playmaker-primary) 3%, transparent), 0 0 0 108px color-mix(in srgb, var(--playmaker-primary) 2%, transparent);background:0 0;border-radius:50%;top:12%;left:57%;transform:rotate(-26deg)scaleX(1.3)}.fan-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:64px;max-width:1200px;margin:auto;display:grid;position:relative}.fan-hero-copy{animation:.65s ease-out both fan-arrive}.fan-hero h1{font-family:var(--font-secondary);letter-spacing:-.05em;text-wrap:balance;margin:0 0 26px;font-size:clamp(48px,5.2vw,74px);font-weight:950;line-height:1.04}.fan-hero h1 em{color:var(--playmaker-primary);background:linear-gradient(110deg, var(--playmaker-primary), var(--playmaker-accent));-webkit-text-fill-color:transparent;background-clip:text;margin-top:8px;font-style:italic;display:block}.fan-hero-copy>p{max-width:440px;color:var(--color-text-secondary);font-size:18px;line-height:1.65}.fan-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.fan-button{border-radius:999px;justify-content:center;align-items:center;gap:12px;min-height:54px;padding:14px 22px;font-size:15px;font-weight:850;transition:transform .18s,box-shadow .18s;display:inline-flex}.fan-button svg{flex-shrink:0;transition:transform .18s}.fan-button:hover{transform:translateY(-3px);box-shadow:0 12px 32px #0004}.fan-button:hover svg{transform:translate(3px)}.fan-button-primary{background:var(--playmaker-primary);color:var(--fan-on-primary);box-shadow:0 4px 22px color-mix(in srgb, var(--playmaker-primary) 20%, transparent)}.fan-button-secondary{border:1px solid color-mix(in srgb, var(--playmaker-accent) 45%, var(--color-border-primary));background:var(--color-bg-surface);color:var(--color-text-primary)}.fan-editor-link{min-height:44px;color:var(--color-text-secondary);align-items:center;gap:8px;margin-top:14px;font-size:13px;font-weight:700;display:inline-flex}.fan-editor-link:hover{color:var(--playmaker-primary)}.fan-match-lab{border:1px solid color-mix(in srgb, var(--playmaker-primary) 35%, var(--color-border-primary));background:linear-gradient(145deg, color-mix(in srgb, var(--playmaker-primary) 8%, var(--color-bg-surface)), var(--color-bg-surface) 64%);min-width:0;color:var(--color-text-primary);box-shadow:var(--shadow-xl), 0 0 44px color-mix(in srgb, var(--playmaker-primary) 10%, transparent);border-radius:28px;padding:24px;animation:.8s ease-out both fan-arrive;position:relative}.fan-match-lab:before{content:"";background:linear-gradient(90deg, var(--playmaker-primary), var(--playmaker-accent));border-radius:5px;height:3px;position:absolute;top:-1px;left:26px;right:26px}.fan-lab-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.fan-real-competition{letter-spacing:.08em;color:#f6f9ff;background:#0e1951;border-radius:10px;align-items:center;gap:10px;padding:6px 10px;font-size:11px;font-weight:850;display:inline-flex}.fan-result-state{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:750;display:inline-flex}.fan-match-lab .fan-result-state{color:var(--color-text-secondary);background:var(--color-bg-tertiary)}.fan-match-date{color:var(--color-text-secondary);margin-top:10px;font-size:12px;font-weight:650;display:block}.fan-real-scoreboard{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin:18px 0 24px;display:grid}.fan-score-team{text-align:center;overflow-wrap:anywhere;flex-direction:column;align-items:center;gap:8px;font-size:14px;font-weight:800;line-height:1.3;display:flex}.fan-final-score{letter-spacing:-.04em;white-space:nowrap;background:color-mix(in srgb, var(--playmaker-primary) 12%, var(--color-bg-secondary));font-variant-numeric:tabular-nums;border-radius:16px;padding:8px 14px;font-size:clamp(30px,3vw,42px);font-weight:950}.fan-market-switch{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:16px;display:grid}.fan-market-switch button{border:1px solid var(--color-border-secondary);background:var(--color-bg-secondary);min-height:46px;color:var(--color-text-primary);border-radius:999px;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:800;transition:background .18s,transform .18s;display:flex}.fan-market-switch button:not(:disabled):hover{background:color-mix(in srgb, var(--playmaker-primary) 12%, var(--color-bg-secondary));transform:translateY(-2px)}.fan-market-switch button[aria-pressed=true]{background:var(--playmaker-primary);border-color:var(--playmaker-primary);color:var(--fan-on-primary)}.fan-market-switch button[aria-pressed=true]:hover{background:var(--playmaker-primary)}.fan-pitch{aspect-ratio:1.9;background:repeating-linear-gradient(90deg,#0c493e 0 12.5%,#105744 12.5% 25%);border:1px solid #4f9b8d;border-radius:18px;position:relative;overflow:clip;box-shadow:inset 0 0 70px #001e1866,0 8px 24px #0002}.fan-pitch:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 20%,#c4fff113 48%,#0000 70%);animation:1.4s ease-out both fan-pitch-light;position:absolute;inset:0}.fan-pitch svg{fill:none;stroke:#a3cdb7;stroke-width:.55px;width:100%;height:100%}.fan-pitch-figures{z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:12%;display:grid;position:absolute;inset:20% 8%}.fan-pitch-figures>div{text-align:center;color:#f3fff9;background:#051f29eb;border:1px solid #69b4a67a;border-radius:14px;min-width:0;padding:12px 6px;box-shadow:0 8px 20px #0003}.fan-pitch-figures>div[data-side=away]{border-color:#64bbde7a}.fan-pitch-figures span{overflow-wrap:anywhere;font-size:clamp(11px,1.2vw,13px);font-weight:700;line-height:1.3;display:block}.fan-pitch-figures strong{color:#6ef1be;font-variant-numeric:tabular-nums;font-size:clamp(28px,4vw,46px);font-weight:950;line-height:1.2;animation:.4s ease-out both fan-number-in;display:block}.fan-pitch-figures [data-side=away] strong{color:#7dd3fc}.fan-metric-balance{background:#69869926;border-radius:99px;gap:4px;height:7px;display:flex;overflow:clip}.fan-match-lab>.fan-metric-balance{margin-top:18px}.fan-metric-balance span{border-radius:inherit;flex-basis:0;min-width:0;transition:flex-grow .45s cubic-bezier(.2,.8,.2,1)}.fan-metric-balance [data-side=home]{background:#10b981}.fan-metric-balance [data-side=away]{background:#38bdf8}.fan-real-total{color:var(--color-text-secondary);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:14px;font-weight:750;display:flex}.fan-real-total strong{color:var(--color-text-primary);font-size:26px;font-weight:950;animation:.4s ease-out both fan-number-in}.fan-lab-link{border-top:1px solid var(--color-border-primary);justify-content:space-between;align-items:center;gap:12px;min-height:48px;font-size:13px;font-weight:850;display:flex}.fan-match-lab .fan-lab-link{border-color:var(--color-border-primary);color:var(--playmaker-primary)}.fan-lab-link svg{transition:transform .18s}.fan-lab-link:hover svg{transform:translate(3px,-3px)}.fan-paths{max-width:1248px;color:var(--color-text-primary);margin:auto;padding:52px 24px}.fan-paths>h2{letter-spacing:-.035em;margin-bottom:24px;font-size:clamp(26px,3vw,36px);font-weight:950}.fan-path-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.fan-path-card{isolation:isolate;border:1px solid var(--playmaker-primary);background:linear-gradient(135deg, var(--playmaker-primary), var(--playmaker-accent));color:var(--fan-on-primary);box-shadow:var(--shadow-md);border-radius:24px;padding:28px;transition:transform .22s,box-shadow .22s;display:block;position:relative;overflow:clip}.fan-path-card:before{content:"";z-index:-1;opacity:.14;border:1px solid;border-radius:50%;width:230px;height:230px;position:absolute;top:-90px;right:-90px;box-shadow:0 0 0 28px #ffffff08,0 0 0 56px #ffffff05}.fan-path-card[data-tone=surface]{background:linear-gradient(135deg, color-mix(in srgb, var(--playmaker-primary) 16%, var(--color-bg-surface)), var(--color-bg-secondary));border-color:color-mix(in srgb, var(--playmaker-primary) 40%, var(--color-border-primary));color:var(--color-text-primary)}.fan-path-card[data-tone=deep]{background:linear-gradient(135deg, var(--playmaker-green-pea), color-mix(in srgb, var(--playmaker-green-pea) 75%, var(--color-bg-primary)));border-color:var(--playmaker-amazon);color:var(--playmaker-white)}.fan-path-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-6px)}.fan-path-card>div{justify-content:space-between;align-items:center;display:flex}.fan-path-icon{background:#ffffff15;border:1px solid;border-radius:18px;place-items:center;width:58px;height:58px;display:grid}.fan-path-card[data-tone=surface] .fan-path-icon{color:var(--playmaker-primary);background:color-mix(in srgb, var(--playmaker-primary) 10%, var(--color-bg-surface))}.fan-path-number{font-family:var(--font-secondary);color:inherit;font-size:36px;font-style:italic;font-weight:950}.fan-path-card h3{justify-content:space-between;align-items:center;gap:8px;margin-top:26px;font-size:22px;font-weight:900;line-height:1.2;display:flex}.fan-path-card h3 svg{flex-shrink:0;transition:transform .2s}.fan-path-card:hover h3 svg{transform:translate(3px,-3px)}.fan-path-card p{color:inherit;margin-top:10px;font-size:14px;line-height:1.6}.fan-path-card[data-tone=surface] p{color:var(--color-text-secondary)}.fan-champions-results{isolation:isolate;border:1px solid var(--color-border-primary);max-width:1200px;color:var(--color-text-primary);background:radial-gradient(ellipse at 95% 0, color-mix(in srgb, var(--playmaker-primary) 12%, transparent), transparent 60%), var(--color-bg-primary);border-radius:30px;margin:4px auto 52px;padding:36px;scroll-margin-top:100px;position:relative;overflow:clip}.fan-results-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}.fan-results-heading h2{letter-spacing:-.035em;margin-top:16px;font-size:clamp(28px,4vw,42px);font-weight:950;line-height:1.12}.fan-results-all{min-height:44px;color:var(--playmaker-primary);align-items:center;gap:8px;font-size:14px;font-weight:800;display:inline-flex}.fan-results-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.fan-result-card{border:1px solid var(--color-border-primary);min-width:0;color:var(--color-text-primary);background:var(--color-bg-secondary);border-top:3px solid #7d9bff;border-radius:22px;padding:20px;transition:transform .2s,box-shadow .2s}.fan-result-card:hover{transform:translateY(-5px);box-shadow:0 16px 32px #0004}.fan-result-card>header{color:var(--color-text-secondary);justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.fan-result-teams{gap:14px;margin:24px 0;display:grid}.fan-result-teams>div{align-items:center;gap:10px;display:flex}.fan-result-teams strong{overflow-wrap:anywhere;flex:1;min-width:0;font-size:15px;line-height:1.3}.fan-result-teams b{font-variant-numeric:tabular-nums;font-size:32px;font-weight:950}.fan-result-metrics{border-top:1px solid var(--color-border-primary);gap:18px;padding:20px 0;display:grid}.fan-result-metrics>div{grid-template-columns:1fr auto;align-items:center;gap:8px 12px;font-size:13px;display:grid}.fan-result-metrics dt{color:var(--color-text-secondary);font-weight:650}.fan-result-metrics dd{align-items:center;gap:12px;font-size:16px;font-weight:850;display:flex}.fan-result-metrics .fan-metric-balance{grid-column:1/-1;height:5px}.fan-result-teams b[data-side=home],.fan-result-metrics dd [data-side=home]{color:#047857}.fan-result-teams b[data-side=away],.fan-result-metrics dd [data-side=away]{color:#0369a1}:root:is(.dark,[data-mode=dark]) .fan-result-card [data-side=home]{color:#6ee7b7}:root:is(.dark,[data-mode=dark]) .fan-result-card [data-side=away]{color:#7dd3fc}.fan-finale{isolation:isolate;border:1px solid color-mix(in srgb, var(--playmaker-primary) 35%, var(--color-border-primary));max-width:1200px;color:var(--fan-on-primary);background:linear-gradient(115deg, var(--playmaker-primary), var(--playmaker-accent));border-radius:30px;margin:0 auto 64px;padding:60px;position:relative;overflow:clip}.fan-finale-copy{max-width:660px;position:relative}.fan-finale h2{letter-spacing:-.045em;text-wrap:balance;font-size:clamp(32px,4.2vw,54px);font-weight:950;line-height:1.08}.fan-finale p{max-width:480px;margin-top:20px;font-size:17px;font-weight:650;line-height:1.6}.fan-finale .fan-button-primary{background:var(--color-bg-primary);color:var(--playmaker-primary)}.fan-finale .fan-button-secondary{color:inherit;background:0 0;border-color:currentColor}.fan-finale small{margin-top:24px;font-size:12px;font-weight:600;display:block}.fan-finale-pitch{z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 12.5%,#ffffff0c 12.5% 25%);border:2px solid #ffffff70;border-radius:30px;width:460px;height:620px;position:absolute;top:-100px;right:-145px;transform:rotate(25deg)}.fan-finale-pitch:before{content:"";border-top:2px solid #ffffff70;position:absolute;inset:50% 0 auto}.fan-finale-pitch:after{content:"";border:2px solid #ffffff70;border-radius:50%;width:160px;height:160px;position:absolute;top:calc(50% - 80px);left:calc(50% - 80px)}.fan-finale-pitch span{border:2px solid #ffffff70;width:50%;height:90px;position:absolute;top:-2px;left:25%}.fan-hero :is(a,button):focus-visible,.fan-champions-results>header a:focus-visible{outline:3px solid var(--playmaker-primary);outline-offset:5px}.fan-path-card:focus-visible,.fan-result-card a:focus-visible,.fan-finale a:focus-visible{outline:3px solid var(--color-text-primary);outline-offset:5px}@keyframes fan-arrive{0%{opacity:.2;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes fan-floodlight{0%{opacity:0;translate:-70px}to{opacity:1;translate:0}}@keyframes fan-pitch-light{0%{translate:-100%}to{translate:100%}}@keyframes fan-number-in{0%{opacity:.4;translate:0 7px;scale:.92}to{opacity:1;translate:0;scale:1}}@media (width<=1248px){.fan-champions-results,.fan-finale{margin-left:24px;margin-right:24px}}@media (width<=1000px){.fan-hero-grid{gap:32px}.fan-hero h1{font-size:54px}.fan-button{padding:14px 18px;font-size:14px}.fan-results-grid{grid-template-columns:minmax(0,1fr)}.fan-result-card{padding:24px}.fan-result-teams{max-width:540px}.fan-path-card{padding:22px}.fan-path-card h3{font-size:20px}}@media (width<=760px){.fan-hero{padding:40px 24px}.fan-hero-grid{grid-template-columns:minmax(0,1fr);gap:32px;max-width:580px}.fan-hero h1{max-width:540px;font-size:clamp(42px,8vw,62px)}.fan-path-grid{grid-template-columns:minmax(0,1fr);gap:14px}.fan-path-card h3{margin-top:18px;font-size:24px}.fan-champions-results{padding:28px}.fan-finale{padding:40px 28px}.fan-finale-pitch{opacity:.5;right:-280px}}@media (width<=480px){.fan-hero{padding:32px 16px}.fan-hero h1{margin-bottom:20px}.fan-hero-copy>p{font-size:16px}.fan-actions{gap:10px;margin-top:24px}.fan-button{flex:100%;min-height:52px;font-size:14px}.fan-editor-link{font-size:12px}.fan-match-lab{border-radius:22px;padding:18px}.fan-real-competition{gap:8px;font-size:10px}.fan-score-team{font-size:12px}.fan-final-score{padding:6px 10px;font-size:30px}.fan-market-switch button{gap:5px;font-size:12px}.fan-pitch-figures{gap:10%;inset:17% 6%}.fan-pitch-figures>div{padding:9px 5px}.fan-pitch-figures span{font-size:11px}.fan-pitch-figures strong{font-size:30px}.fan-paths{padding:32px 16px}.fan-path-card{padding:24px}.fan-champions-results,.fan-finale{border-radius:24px;margin-left:16px;margin-right:16px}.fan-champions-results{margin-bottom:32px;padding:24px 16px}.fan-result-card{padding:18px}.fan-finale{margin-bottom:32px;padding:36px 24px}}@media (prefers-reduced-motion:reduce){.fan-hero *,.fan-hero :before,.fan-hero :after,.fan-paths *,.fan-champions-results *,.fan-finale *{transition:none!important;animation:none!important}.fan-button:hover,.fan-button:hover svg,.fan-path-card:hover,.fan-path-card:hover h3 svg,.fan-result-card:hover,.fan-market-switch button:not(:disabled):hover,.fan-lab-link:hover svg{transform:none}}
