@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#e8eced;background:#101516;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0}header{height:90px;border-bottom:1px solid #2c3334;display:flex;justify-content:space-between;align-items:center;padding:0 5vw}.brand{color:#f2f4ef;text-decoration:none;font-size:21px;font-weight:800;letter-spacing:2px;display:flex;align-items:center;gap:14px}.mark{background:#d5fb64;color:#101516;padding:8px;font-size:24px;letter-spacing:-3px}.header-note{font-size:12px;color:#a8b4b5;letter-spacing:1.5px}.header-note b{margin-left:24px;color:#e3e8e9}main{max-width:1440px;margin:auto;padding:46px 5vw 0}.title{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:#a6b4b6;margin:0 0 10px}h1,h2,strong{font-family:'Barlow Condensed','Arial Narrow',sans-serif}h1{font-size:clamp(38px,4.4vw,66px);line-height:1.05;margin:0;text-transform:uppercase;letter-spacing:-1px}h1 span{color:#d5fb64}.sub{color:#a6b4b6;font-size:16px}.timezone{text-align:right;line-height:1.7;color:#9caaac;font-size:14px}.timezone b{color:#e4e8e8}.notice{border:1px solid #514d31;background:#25251d;padding:12px 16px;margin:24px 0;color:#c9c5a8;font-size:14px;line-height:1.5}.notice span{font-size:12px;letter-spacing:1px;font-weight:700;color:#e9dd96;margin-right:12px}.weekbar{display:flex;justify-content:space-between;align-items:center;margin:28px 0 20px}.weekbar label{display:block;font-size:12px;letter-spacing:1.5px;color:#9caaac;margin-bottom:9px}.picker{display:flex;gap:8px}button,select{font:inherit;border:1px solid #3a4445;background:#1d2526;color:#e8eced;border-radius:5px;padding:10px 14px;cursor:pointer}button:hover{border-color:#d5fb64}button:disabled{opacity:.3;cursor:default}button:focus-visible,select:focus-visible{outline:2px solid #d5fb64;outline-offset:3px}select{font-weight:600;min-width:190px}.week-meta{display:flex;flex-direction:column;text-align:right;font-size:14px;gap:6px}.week-meta span{color:#9caaac}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #354042;background:#192122}.metrics article{padding:23px 26px;border-right:1px solid #354042}.metrics article:last-child{border:0}.metrics p{font-size:14px;margin:0 0 12px;color:#b9c3c5}.metrics strong{font-size:56px;display:block;line-height:1;color:#d5fb64}.metrics small{display:block;font-size:12px;color:#93a1a3;margin-top:14px}.workspace{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-top:22px}.panel{background:#192122;border:1px solid #354042;border-radius:5px;padding:26px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px}h2{font-size:28px;letter-spacing:.2px;margin:0}.legend{font-size:12px;color:#b2bfc0;white-space:nowrap}.legend i{display:inline-block;background:#d5fb64;width:8px;height:8px;border-radius:50%;margin-right:8px}#chart{margin-top:12px}svg{width:100%;height:auto;display:block}.chart-foot{border-top:1px solid #354042;padding-top:17px;display:flex;justify-content:space-between;font-size:12px;color:#9aa9ab}.chart-foot b{color:#d5fb64}.spotlight{background:#d5fb64;color:#192122;display:flex;flex-direction:column}.spotlight .eyebrow{color:#566331}.spotlight h2{font-size:27px}.spot-teams{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:35px 0 16px;text-align:center}.spot-teams b{font-size:14px;max-width:85px}.spot-score{font-family:'Barlow Condensed',sans-serif;font-size:60px;white-space:nowrap}.spot-note{margin-top:auto;font-size:14px;line-height:1.5;color:#4c5b2c}.spot-total{font-size:13px;border-top:1px solid #a7c54b;padding-top:15px}.fixtures{margin-top:22px;padding-bottom:8px}.filters{display:flex;gap:4px}.filters button{font-size:14px;border:0;background:transparent;color:#a5b3b5}.filters button[aria-pressed=true]{background:#d5fb64;color:#182022}.match{display:grid;grid-template-columns:135px 1fr 80px 1fr 95px;gap:20px;align-items:center;min-height:83px;border-top:1px solid #303c3d;font-size:14px}.match:first-child{margin-top:25px}.match-time{font-size:12px;color:#9aa9ab;line-height:1.8}.home{text-align:right}.team{font-weight:600;display:flex;gap:12px;align-items:center}.home{justify-content:flex-end}.badge{width:30px;height:32px;display:inline-flex;justify-content:center;align-items:center;border:1px solid #516264;border-radius:7px;font-size:10px;color:#c8d2d3;font-weight:700;flex-shrink:0}.score{text-align:center;background:#11191a;padding:8px;border-radius:4px;font-weight:700;letter-spacing:3px}.status{text-align:right;color:#9aa9ab;font-size:12px}.empty{padding:40px;text-align:center;color:#a6b4b6}footer{padding:30px 0;display:flex;justify-content:space-between;font-size:12px;color:#7f9194;gap:20px}footer b{letter-spacing:1px}@media(max-width:800px){header{height:75px}.header-note{display:none}main{padding-top:28px}.timezone{display:none}.metrics{grid-template-columns:repeat(2,1fr)}.metrics article{border-bottom:1px solid #354042;padding:20px}.metrics article:nth-child(2){border-right:0}.workspace{grid-template-columns:1fr}.spot-teams{margin:18px 0}.spotlight{display:none}.panel{padding:20px}.panel-head{align-items:flex-start}.fixtures .panel-head{flex-direction:column}.match{grid-template-columns:1fr 65px 1fr;gap:10px;padding:14px 0}.match-time{grid-column:1/3;grid-row:1}.status{grid-column:3;grid-row:1}.team{font-size:12px;gap:5px}.badge{display:none}.week-meta{font-size:12px}.picker{gap:4px}select{min-width:145px;padding:10px 6px}button{padding:10px}.metrics strong{font-size:45px}footer{flex-direction:column}.chart-foot{gap:14px}.notice{font-size:13px}}

.distribution{margin-top:22px}.distribution-help{font-size:14px;color:#a6b4b6;margin:12px 0 24px}.distribution-layout{display:grid;grid-template-columns:2fr 1fr;gap:40px}.bar-axis{display:flex;justify-content:space-between;font-size:12px;color:#a6b4b6;margin-bottom:14px}.goal-bar-row{display:grid;grid-template-columns:22px 1fr 24px;gap:14px;align-items:center;min-height:34px;font-size:14px}.goal-bar-track{height:19px;background:#263233;border-radius:3px;overflow:hidden}.goal-bar{height:100%;background:#d5fb64;border-radius:3px;transition:width .25s}.goal-bar-row b{text-align:right}.goal-table{border-collapse:collapse;width:100%;font-size:14px}.goal-table caption{text-align:left;color:#a6b4b6;font-size:12px;margin-bottom:10px}.goal-table th,.goal-table td{padding:6px 12px;border-bottom:1px solid #354042;text-align:left;font-weight:400}.goal-table td,.goal-table th:last-child{text-align:right}.goal-table thead th{color:#a6b4b6;font-size:12px}.goal-table tfoot th,.goal-table tfoot td{font-weight:700;color:#d5fb64;border:0;padding-top:12px}@media(max-width:800px){.distribution-layout{grid-template-columns:1fr;gap:26px}.distribution .panel-head{flex-wrap:wrap}}
.season-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.compare-card{border:1px solid #354042;padding:20px;border-radius:5px;background:#151d1e}.season-label,.compare-card h3,.compare-bars h3{font-size:16px;margin:0 0 16px;color:var(--series,#e8eced)}.compare-card strong{font-size:46px;color:var(--series,#d5fb64)}.compare-card strong small{font:14px 'DM Sans',sans-serif;color:#a6b4b6}.compare-card p:not(.season-label){font-size:14px;color:#a6b4b6;line-height:1.5}.total-track{height:10px;background:#2b393a;margin:14px 0}.total-track div{height:100%;background:var(--series)}.coverage{font-size:12px;color:#c7d3d4}.secondary-heading{margin-top:32px}.compare-bars .goal-bar{background:var(--series)}.table-scroll{overflow-x:auto;margin-top:24px}.goal-table td{text-align:right}.goal-table th:first-child{text-align:left}.goal-table thead th:not(:first-child){text-align:right}.goal-table th{white-space:nowrap}.outcome-stack{display:flex;height:22px;border-radius:4px;overflow:hidden;background:#293536;margin:18px 0}.outcome-0{background:#d5fb64}.outcome-1{background:#7fd4e6}.outcome-2{background:#bea5ff}.outcome-labels{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;font-size:12px}.outcome-labels i{width:7px;height:7px;display:inline-block;margin-right:5px}.outcome-labels b{display:block;font-size:21px;margin:10px 0}.outcome-labels small{color:#a6b4b6}.unavailable{color:#a6b4b6;font-size:14px}.notice button{font-size:12px;padding:5px 9px;margin-left:10px}.notice small{font-size:12px;line-height:1.7}footer a{color:#b6c5c8}.picker{flex-wrap:wrap}#season{min-width:120px}.weekbar{gap:20px}.week-meta{min-width:160px}@media(max-width:1000px){.season-cards{gap:10px}.compare-card{padding:14px}.outcome-labels{grid-template-columns:1fr}.outcome-labels b{display:inline-block;margin:0 8px;font-size:17px}.outcome-labels small{display:none}}@media(max-width:650px){.season-cards{grid-template-columns:1fr}.weekbar{align-items:flex-start;flex-direction:column}.week-meta{text-align:left}.compare-card strong{font-size:38px}.compare-bars{margin-bottom:14px}.outcome-labels{grid-template-columns:repeat(3,1fr)}.outcome-labels b{display:block;margin:10px 0}.table-scroll .goal-table{min-width:480px}}

.summary-outcome-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.summary-outcome-grid span{display:block;font-size:14px;color:#b9c3c5;margin-bottom:8px;white-space:nowrap}.metrics .summary-outcomes{padding-left:20px;padding-right:20px}.summary-outcome-grid strong{font-size:42px}.metrics{grid-template-columns:1fr 1fr 1fr 1.35fr}@media(max-width:1000px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:450px){.metrics .summary-outcomes{grid-column:1/-1;border-top:1px solid #354042}.summary-outcome-grid strong{font-size:40px}}

.match{grid-template-columns:100px minmax(0,1fr) 65px minmax(0,1fr) 80px;gap:16px;padding:22px 0}.team-timing{display:block;min-width:0;text-align:left}.team-timing>b{display:block;text-align:center;font-size:16px;margin-bottom:15px}.timing-chart{background:#11191a;padding:12px;border:1px solid #344142;border-radius:5px;width:100%}.timing-season{font-size:12px;color:#a6b4b6;margin:0 0 10px;font-weight:400}.timing-legend{display:flex;gap:16px;font-size:12px;margin-bottom:16px;font-weight:400}.timing-legend span:first-child{color:#d5fb64}.timing-legend span:last-child{color:#e4a2dc}.timing-columns{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.timing-pair{display:flex;gap:3px}.timing-bar-wrap{width:50%;text-align:center}.timing-bar-wrap>span{font-size:12px;font-weight:400;display:block;margin-bottom:5px}.timing-bar-bg{height:90px;display:flex;align-items:flex-end;background:#202c2d}.timing-bar{width:100%;min-height:0}.timing-kind-0{background:#d5fb64}.timing-kind-1{background:#e4a2dc}.timing-zone>small{display:block;text-align:center;font-size:12px;font-weight:400;color:#a6b4b6;margin-top:8px;white-space:nowrap}.timing-empty{padding:30px 10px;color:#a6b4b6;font-size:14px;line-height:1.6;text-align:center}.distribution-help a{color:#7fd4e6}@media(max-width:1150px){.match{grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr)}.match-time{grid-column:1/3;grid-row:1}.status{grid-column:3;grid-row:1}}@media(max-width:800px){.match{grid-template-columns:minmax(0,1fr)}.match-time,.status{grid-column:1;grid-row:auto}.status{text-align:left}.score{justify-self:center;min-width:80px}.timing-chart{padding:14px}.timing-bar-bg{height:100px}.team-timing{width:100%}}

.timing-chart{min-height:230px}.timing-chart.timing-empty{height:230px;display:flex;align-items:center;justify-content:center;padding:20px;text-align:center;font-weight:400}.team-timing{align-self:start}@media(max-width:800px){.timing-chart{min-height:245px}.timing-chart.timing-empty{height:245px}}

/* Compact timing charts: bars and vertical spacing reduced by 80%. */
.timing-chart{min-height:0;padding:3px 12px}.timing-season{margin-bottom:2px}.timing-legend{margin-bottom:3px}.timing-bar-bg{height:18px}.timing-bar-wrap>span{margin-bottom:1px}.timing-zone>small{margin-top:2px}.timing-chart.timing-empty{height:100px;min-height:100px;padding:4px 12px}.team-timing>b{margin-bottom:3px}@media(max-width:800px){.timing-chart{min-height:0;padding:3px 14px}.timing-bar-bg{height:20px}.timing-chart.timing-empty{height:102px;min-height:102px}}
.team-timing{align-self:stretch;display:flex;flex-direction:column}.team-timing>.timing-chart{flex:1}.timing-chart.timing-empty{height:auto}
@media(max-width:800px){.timing-legend{font-size:11px;gap:10px;flex-wrap:wrap}.timing-bar-wrap>span{font-size:10px;line-height:1.3;white-space:nowrap}.timing-zone>small{font-size:10px}.timing-columns{gap:4px}.timing-pair{gap:2px}.timing-bar-wrap{min-width:0}.timing-season{font-size:11px}}
