:root{--bg:#f5f6f3;--paper:#fff;--ink:#202d29;--muted:#79817c;--line:#e1e6df;--green:#176347;--lime:#d5ee95;--soft:#edf3e9;--radius:14px}.match-share-actions{justify-content:flex-end;align-items:flex-start;gap:4px;margin-bottom:8px;display:flex}.match-share-actions .share-control{margin-bottom:0}.player-statistics{min-width:0;margin:24px 0 32px}.stats-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.stats-heading h2{margin:5px 0 0}.stats-context{color:#536159;margin-bottom:16px}.stats-select{gap:8px;margin-bottom:16px;display:grid}.stats-select select{width:100%;min-width:0;min-height:48px}.stats-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.stats-card{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;justify-content:space-between;gap:8px;padding:18px;display:flex}.stats-card>span{font-size:13px;font-weight:600}.stats-card>strong{letter-spacing:-1px;font-size:30px}.stats-card small{letter-spacing:normal;color:#536159;font-size:12px;line-height:1.5}.stats-card-primary{color:#fff;background:#176347;border-color:#176347}.stats-card-primary small{color:#d9eadd}.stats-averages{white-space:normal;width:100%;margin:20px 0 12px}.stats-averages caption{text-align:left;padding-bottom:12px;font-weight:700}.stats-averages th,.stats-averages td{text-align:right;font-variant-numeric:tabular-nums;padding:10px 8px}.stats-averages th:first-child{text-align:left}.stats-note{color:#536159;margin:8px 0 14px;font-size:12px;line-height:1.6}.stats-metrics{gap:6px;margin:20px 0 16px;display:flex}.stats-metrics button{border:1px solid var(--line);background:#fff;border-radius:9px;flex:1;min-height:46px;padding:8px}.stats-metrics button[aria-pressed=true],.stats-match-picker button[aria-pressed=true]{color:#fff;background:#176347;border-color:#176347}.stats-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.stats-chart{border:1px solid var(--line);background:#fff;border-radius:14px;min-width:0;padding:20px}.stats-chart h3{margin:0 0 8px;font-size:17px}.performance-chart{width:100%;display:block}.performance-chart text{fill:#536159;font-size:11px}.stats-match-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.stats-match-picker button{border:1px solid var(--line);background:#f5f6f3;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:52px;padding:6px 2px;display:flex}.stats-match-picker small{font-size:10px}.stats-active-match{background:var(--soft);border-radius:8px;flex-direction:column;gap:6px;min-height:48px;margin-top:12px;padding:12px;display:flex}.stats-active-match span{font-size:12px}.stats-bars{gap:16px;margin:16px 0 0;padding:0;list-style:none;display:grid}.stats-bars li>div:first-child{justify-content:space-between;gap:12px;margin-bottom:6px;display:flex}.stats-bars strong{font-variant-numeric:tabular-nums;white-space:nowrap}.stats-bars small{color:#536159;margin-top:5px;font-size:11px;display:block}.stats-bar-track{background:#edf3e9;border-radius:5px;height:9px;overflow:hidden}.stats-bar-track span{border-radius:inherit;background:#428568;height:100%;display:block}.stats-home-away{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stats-home-away>div{background:var(--soft);border-radius:10px;gap:10px;padding:16px;display:grid}.stats-home-away strong{font-size:24px}@media (max-width:1000px){.stats-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:740px){.stats-chart-grid{grid-template-columns:minmax(0,1fr)}.stats-card{padding:14px 12px}.stats-card>strong{font-size:27px}.stats-chart{padding:16px 12px}.stats-cards{gap:8px}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:14px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}a{color:inherit;text-decoration:none}button{color:inherit}a:hover{color:var(--green)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #639b38}h1,h2,h3,p{margin-top:0}h2{letter-spacing:-.7px;margin-bottom:0;font-size:23px}h3{font-size:17px}p{line-height:1.65}svg{flex-shrink:0}.muted{color:var(--muted)}.sr-only,.skip-link:not(:focus){clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link:focus{z-index:10;background:#fff;padding:15px;position:fixed;top:8px;left:8px}.site-header{border-bottom:1px solid var(--line);background:#ffffffeb}.header-inner{align-items:center;gap:36px;max-width:1460px;margin:auto;padding:23px 48px;display:flex}.brand{letter-spacing:-1px;align-items:center;gap:10px;font-size:25px;font-weight:800;display:flex}.brand-icon{background:var(--green);color:#effbcf;border-radius:11px;place-items:center;width:39px;height:39px;display:grid}.header-caption{color:var(--muted);border-left:1px solid var(--line);padding-left:28px;font-size:12px}.source-link{align-items:center;gap:8px;margin-left:auto;font-size:12px;display:flex}.page{max-width:1460px;min-height:70vh;margin:auto;padding:42px 48px}.dashboard{grid-template-columns:222px minmax(0,1fr);gap:46px;display:grid}.sidebar{border-right:1px solid var(--line);flex-direction:column;align-self:start;min-height:640px;padding-right:26px;display:flex}.nav-label,.side-heading,.section-kicker,.eyebrow{letter-spacing:1.6px;color:var(--muted);font-size:10px;font-weight:700}.nav-label{margin:5px 0 19px}.side-link{text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;padding:14px 11px;font-size:12px;font-weight:600;display:flex}.side-link svg:last-child{margin-left:auto}.side-link.active{color:var(--green);background:#e7efdf}.side-heading{justify-content:space-between;align-items:center;margin:37px 0 15px;font-size:9px;display:flex}.counter{letter-spacing:0;background:#e7eae4;border-radius:5px;padding:3px 6px}.follow-empty{color:var(--muted);border:1px dashed #d3dbce;border-radius:10px;padding:23px 16px}.follow-empty svg{color:#8b9f80;margin-bottom:17px}.follow-empty strong{color:#465643;font-size:12px;line-height:1.5;display:block}.follow-empty p{margin:9px 0 0;font-size:12px;line-height:1.7}.sidebar-note{color:var(--muted);gap:9px;margin-top:21px;font-size:10px;line-height:1.7;display:flex}.sidebar-note svg{margin-top:2px}.sidebar-bottom{color:var(--muted);align-items:center;gap:7px;margin-top:auto;padding-top:70px;font-size:9px;display:flex}.green-dot{background:#42955e;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.favourite-item{align-items:center;gap:2px;margin:3px 0;display:flex}.favourite-item>button:first-child{text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:8px;min-width:0;padding:10px 0;font-size:12px;line-height:1.5;display:flex}.favourite-item>button.selected-team{color:var(--green);font-weight:700}.team-dot{background:#8ca47b;border-radius:50%;flex-shrink:0;width:6px;height:6px}.dashboard-main{min-width:0}.eyebrow{color:var(--green);letter-spacing:1.7px;align-items:center;gap:8px;font-size:9px;display:flex}.intro{justify-content:space-between;gap:20px;margin:19px 0 40px;display:flex;position:relative}.intro h1{letter-spacing:-2.8px;margin-bottom:18px;font-size:54px;font-weight:700;line-height:1.07}.intro h1 span{color:var(--green)}.intro p{color:#778178;margin-bottom:0;font-size:13px;line-height:1.8}.hero-art{align-self:center;width:260px;min-width:220px;height:198px;position:relative;overflow:hidden}.orbit{border:1px solid #dbe3d2;border-radius:50%;position:absolute}.orbit-one{width:220px;height:220px;top:-6px;left:23px}.orbit-two{width:168px;height:168px;top:20px;left:49px}.pins{grid-template-columns:repeat(3,19px);gap:12px 16px;display:grid;position:absolute;top:20px;left:107px;transform:rotate(-28deg)}.pins i{background:linear-gradient(90deg,#b5caa1,#e3efd9);border-radius:55% 55% 35% 35%;width:15px;height:29px;display:block;position:relative;box-shadow:2px 5px #d5dfc7}.pins i:before{content:"";background:#6c8a55;width:100%;height:4px;position:absolute;top:5px}.ball{background:radial-gradient(circle at 33% 26%,#49836a,#17513c 70%);border-radius:50%;width:59px;height:59px;position:absolute;bottom:37px;left:47px;box-shadow:7px 9px 18px #21452c22}.art-label{letter-spacing:2px;color:#88947d;font-size:8px;position:absolute;bottom:2px;left:59px}.section-title{justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;display:flex}.section-kicker{letter-spacing:1.6px;margin-bottom:9px;font-size:8px;display:block}.week-controls{align-items:center;gap:6px;display:flex}.icon-button{border:1px solid var(--line);background:var(--paper);border-radius:6px;place-items:center;width:30px;height:34px;display:grid}.date-control{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:9px;padding:8px 10px;display:flex}.date-control input{color:var(--ink);background:0 0;border:0;width:105px;min-width:0;font-size:11px}.date-control svg{color:var(--muted)}.calendar-open{min-width:48px;min-height:48px;color:var(--green);background:0 0;border:0;place-items:center;display:grid}.date-control input::-webkit-calendar-picker-indicator{display:none}.match-calendar{border:1px solid var(--line);width:min(440px,100vw - 16px);max-width:none;max-height:calc(100dvh - 24px);color:var(--ink);background:#fff;border-radius:20px;margin:auto;padding:16px;box-shadow:0 16px 60px #10291d40}.match-calendar::backdrop{background:#10291d80}body:has(.match-calendar[open]){overflow:hidden}.calendar-heading,.calendar-month{justify-content:space-between;align-items:center;gap:8px;display:flex}.calendar-heading h2{margin:0;font-size:18px}.calendar-month{margin:16px 0}.calendar-month strong{text-transform:capitalize;font-size:20px}.match-calendar .icon-button{flex-shrink:0;width:48px;height:48px}.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.calendar-weekday{text-align:center;color:var(--muted);padding:8px 0;font-size:12px}.calendar-days button{background:var(--soft);min-width:0;min-height:52px;color:var(--ink);border:1px solid #0000;border-radius:10px;padding:0;font-size:18px}.calendar-days button[aria-current=date]{border-color:var(--green)}.calendar-days button[aria-pressed=true]{background:var(--green);color:#fff;font-weight:700}.calendar-days button:hover{box-shadow:inset 0 0 0 2px var(--green)}.match-calendar :focus-visible{outline:2px solid var(--green);outline-offset:2px}.calendar-today{width:100%;min-height:48px;margin-top:16px;font-size:15px}@media (max-width:360px){.match-calendar{padding:10px 6px}.calendar-days{gap:2px}}.today-button{color:var(--green);background:0 0;border:0;margin-left:4px;font-size:11px}.filters{background:#edf0e9;border:1px solid #e3e8de;border-radius:9px;align-items:center;gap:20px;padding:15px 18px;display:flex}.select-wrap{align-items:center;gap:12px;min-width:0;display:flex}.select-wrap>span{color:var(--muted);white-space:nowrap;font-size:10px}.select-wrap select{max-width:100%;color:var(--ink);background:0 0;border:0;padding:5px 23px 5px 0;font-size:12px;font-weight:600}.competition-select{border-left:1px solid #d9dfd4;flex:1;padding-left:20px}.competition-select select{width:100%;min-width:0}.clear-filters{white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;font-size:10px;display:flex}.feed-meta{color:var(--muted);justify-content:space-between;gap:12px;margin:23px 0 18px;font-size:10px;display:flex}.meta-divider{color:#bac2b7;margin:0 8px}.freshness{color:var(--muted);font-size:10px;line-height:1.5}.freshness.stale{color:#9c6418;font-weight:600}.competition-group{margin-bottom:23px}.competition-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:10px;display:flex}.competition-heading>span:first-child{align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.competition-heading svg{color:#7b8c6e}.competition-heading>span:last-child{color:var(--muted);font-size:9px}.match-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.match-card{border:1px solid var(--line);background:#fff;border-radius:10px;padding:16px 17px 0;transition:box-shadow .2s,border-color .2s}.match-card:hover{border-color:#afc2a3;box-shadow:0 5px 20px #30442308}.match-top{color:var(--muted);justify-content:space-between;gap:7px;margin-bottom:17px;font-size:10px;display:flex}.match-status{white-space:nowrap;background:#f0f2ed;border-radius:4px;align-items:center;gap:5px;padding:3px 6px;font-size:9px;display:inline-flex}.match-status.live{color:var(--green);background:#e7f3e4}.team-row{align-items:center;gap:8px;min-height:34px;margin:4px 0;display:flex}.team-avatar{color:#78935b;background:#e8eee0;border-radius:7px;flex-shrink:0;place-items:center;width:27px;height:27px;display:grid}.team-avatar.away{color:#8a9486;background:#eff0ed}.team-name{flex:1;min-width:0;font-size:12px;font-weight:600;line-height:1.45}.star-button{color:#a9b2a3;background:0 0;border:0;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:5px;display:inline-flex}.star-button:hover{color:#6b813c;background:#f0f3e8}.star-button.saved{color:#70903b}.pins-score{color:#8a9188;text-align:right;font-variant-numeric:tabular-nums;min-width:30px;font-size:11px}.team-score{text-align:right;font-variant-numeric:tabular-nums;width:25px;font-size:19px}.match-bottom{color:var(--muted);border-top:1px solid #edf0e9;justify-content:space-between;gap:8px;margin-top:16px;padding:12px 0;font-size:9px;display:flex}.match-bottom>span span{margin:0 5px}.match-bottom a{color:var(--green);align-items:center;gap:6px;font-weight:600;display:flex}.pagination{color:var(--muted);justify-content:space-between;align-items:center;margin:25px 0;font-size:11px;display:flex}.button{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:10px 13px;font-size:11px;font-weight:600;display:inline-flex}.button:hover{border-color:#9eb48f}.notice{background:#f8efdd;border:1px solid #e9dcbf;border-radius:8px;align-items:center;gap:12px;margin:18px 0;padding:17px;font-size:12px;display:flex}.notice strong{display:block}.notice p{margin:4px 0 0;font-size:11px}.notice .button{margin-left:auto}.empty-state{text-align:center;background:#fff;border:1px dashed #d8dfd1;border-radius:12px;padding:45px 30px}.empty-state svg{color:#799169}.empty-state h3{margin:18px 0 10px}.empty-state p{color:var(--muted);max-width:420px;margin:0 auto 20px;font-size:12px}.discovery{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-top:38px;padding-top:28px;display:flex}.discovery h2{font-size:20px}.search-box{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:10px;display:flex}.search-box input{width:150px;color:var(--ink);background:0 0;border:0;outline:none;font-size:11px}.competition-chips{flex-wrap:wrap;gap:8px;width:100%;display:flex}.competition-chips button{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:15px;padding:11px 13px;font-size:10px;display:flex}.competition-chips button.chosen{border-color:var(--green);background:var(--soft)}.competition-chips svg{color:#85937c}.standings{margin-top:32px}.round-label{align-items:center;gap:8px;font-size:11px;display:flex}.round-label input{border:1px solid var(--line);background:#fff;border-radius:5px;width:65px;padding:8px}.table-scroll{border:1px solid var(--line);background:#fff;border-radius:9px;margin-top:12px;overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12px}th,td{text-align:left;border-bottom:1px solid #edf0e9;padding:13px 14px}thead{color:#77836e;background:#eef2e9;font-size:10px}tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}tbody th{font-weight:600}tfoot{background:#eef3e8;font-weight:600}.table-team{justify-content:space-between;align-items:center;gap:10px;display:flex}.table-team-link{align-items:center;gap:10px;min-width:0;display:flex}.table-team-link>span:last-child{overflow-wrap:anywhere;min-width:0}.footer{border-top:1px solid var(--line);color:#687662;justify-content:space-between;gap:15px;max-width:1460px;margin:15px auto 0;padding:24px 48px;font-size:9px;display:flex}.footer>span:first-child{font-weight:600}.footer>span:first-child .muted{margin-left:8px;font-weight:400}.competition-print-link{min-height:44px;color:var(--green);align-items:center;gap:6px;margin-bottom:8px;font-size:13px;display:inline-flex}.build-info{overflow-wrap:anywhere}.release-notes-link{text-underline-offset:3px;align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}.release-notes{overflow-wrap:anywhere;min-width:0;max-width:800px}.release-back{align-items:center;gap:8px;min-height:44px;margin-bottom:16px;display:inline-flex}.release-notes-link:focus-visible,.release-back:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}.release-notes h1{margin:0 0 12px}.release-card{border:1px solid var(--line);background:#fff;border-radius:12px;margin-top:24px;padding:clamp(16px,3vw,28px)}.release-card header{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.release-card h2{margin:0;font-size:1.15rem}.release-card time{width:100%;color:var(--muted);font-size:.875rem}.release-latest{color:#176347;background:#edf5ed;border-radius:12px;padding:4px 9px;font-size:.75rem}.release-card ul{margin:20px 0 0;padding-left:20px}.release-card li{margin-top:12px;line-height:1.65}.skeleton{background:linear-gradient(110deg,#e9eee3 20%,#f1f4ec 40%,#e9eee3 60%) 0 0/200% 100%;border-radius:10px;height:164px;animation:1.7s linear infinite shimmer}.skeleton-list{grid-template-columns:1fr 1fr;gap:15px;display:grid}@keyframes shimmer{to{background-position:-200% 0}}.detail-page{max-width:1200px}.back-link{color:var(--muted);align-items:center;gap:8px;margin-bottom:35px;font-size:12px;display:inline-flex}.detail-heading{justify-content:space-between;gap:12px;margin-bottom:18px;display:flex}.scoreboard{border:1px solid var(--line);text-align:center;background:#fff;border-radius:16px;margin-bottom:40px;padding:35px 28px}.scoreboard-date{color:var(--muted);font-size:12px}.scoreboard-teams{grid-template-columns:1fr 1fr 1fr;align-items:center;gap:15px;margin:25px 0;display:grid}.scoreboard h1,.scoreboard h2{letter-spacing:-.8px;margin:0 0 12px;font-size:25px;line-height:1.25}.scoreboard-teams>div>span{letter-spacing:1px;color:var(--muted);margin-top:9px;font-size:9px;display:block}.scoreboard .big-score strong{letter-spacing:-2px;white-space:nowrap;font-size:58px}.big-score i{color:#bac8af;margin:0 5px;font-style:normal}.scoreboard-teams .big-score>span{letter-spacing:0;font-size:12px}.venue{color:var(--muted);justify-content:center;align-items:center;gap:7px;font-size:11px;display:flex}.match-information{margin:18px 0 14px}.match-venue p{overflow-wrap:anywhere;justify-content:center;align-items:center;gap:8px;margin:6px 0;display:flex}.match-venue svg{flex-shrink:0}.match-venue-address,.match-venue-extra{color:#536159;font-size:12px;line-height:1.6}.match-venue-extra{margin:8px 0}.match-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px;display:flex}.match-actions a{min-height:48px;color:var(--green);background:#fff;border:1px solid #bdd1c0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-weight:700;display:inline-flex}.match-actions a:hover{background:var(--soft);border-color:var(--green)}@media (max-width:740px){.match-actions a{flex:130px}}.detail-note{color:var(--muted);font-size:12px}.results-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.result-panel{min-width:0}.result-panel h3{margin:15px 0;font-size:15px}@media (min-width:1101px){.result-panel{grid-row:span 3;grid-template-rows:subgrid;align-items:start;row-gap:0;display:grid}.result-panel>h3{grid-row:1}.result-substitutions{grid-row:2}.result-panel>.desktop-player-table,.result-panel>.empty-copy{grid-row:3}}.result-panel th,.result-panel td{padding:13px 10px;font-size:11px}.empty-copy{color:var(--muted);background:#edf1e7;border-radius:8px;padding:20px;font-size:12px}.discipline{color:var(--muted);font-size:12px}.official-link{color:var(--green);margin-top:35px;font-size:11px;display:inline-block}@media (min-width:1450px){.intro h1{font-size:61px}.hero-art{margin-right:45px}.intro{margin-bottom:48px}}@media (max-width:1100px){.header-inner,.page,.footer{padding-left:28px;padding-right:28px}.dashboard{grid-template-columns:185px minmax(0,1fr);gap:26px}.sidebar{padding-right:20px}.match-grid{grid-template-columns:1fr}.intro h1{font-size:48px}.hero-art{transform-origin:100%;width:190px;min-width:180px;transform:scale(.86)}.section-title{flex-wrap:wrap;align-items:flex-start}.team-name{font-size:13px}.filters{gap:12px}.select-wrap>span{display:none}.competition-select{padding-left:12px}.header-caption{display:none}.results-grid{grid-template-columns:1fr}}.mobile-navigation,.mobile-player-results,.detail-team-navigation{display:none}.favorites-sheet{color:var(--ink);background:var(--bg);border:0;border-radius:24px 24px 0 0;width:min(100%,560px);max-width:100%;max-height:85dvh;margin:auto auto 0;padding:0;box-shadow:0 -12px 60px #16332625}.favorites-sheet::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#10291d70}.sheet-content{padding:12px 22px max(22px, env(safe-area-inset-bottom))}.sheet-handle{background:#cbd5c6;border-radius:4px;width:38px;height:4px;margin:0 auto 22px}.sheet-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.sheet-description,.sheet-footnote{color:#62705f;margin-top:15px;font-size:14px;line-height:1.6}.sheet-footnote{margin-bottom:0;font-size:12px}.sheet-teams{gap:10px;margin:22px 0;display:grid}.sheet-team{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:8px;padding:4px 8px;display:flex}.sheet-team>button:first-child{text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:12px;min-width:0;min-height:52px;padding:8px;font-weight:600;line-height:1.5;display:flex}.sheet-empty{text-align:center;padding:25px 8px}.sheet-empty>svg{color:var(--green);margin-bottom:15px}.sheet-empty p{color:#62705f}@media (max-width:740px){:root{--muted:#63715f;--phone-header-height:calc(65px + env(safe-area-inset-top))}html{scroll-padding-top:calc(var(--phone-header-height) + 23px)}body{padding-bottom:env(safe-area-inset-bottom)}body:has(.mobile-navigation){padding-bottom:calc(76px + env(safe-area-inset-bottom))}.site-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f5f6f3f2;position:sticky;top:0}.header-inner{padding:10px max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));min-height:65px;padding-top:calc(10px + env(safe-area-inset-top));gap:12px}.brand{min-height:44px;font-size:23px}.brand-icon{border-radius:10px;width:34px;height:34px}.source-link{border:1px solid var(--line);background:#fff;border-radius:12px;place-items:center;width:44px;height:44px;font-size:0;display:grid}.source-link svg{width:20px;height:20px}.page{padding:22px max(16px, env(safe-area-inset-right)) 28px max(16px, env(safe-area-inset-left))}.dashboard{display:block}.sidebar{display:none}.dashboard-main>.eyebrow{letter-spacing:1.4px;font-size:9px}.intro{margin:12px 0 27px}.intro h1{letter-spacing:-1.2px;margin:0;font-size:clamp(29px,8vw,36px);line-height:1.15}.intro h1 br{display:none}.intro h1 span:before{content:" "}.intro p,.hero-art{display:none}.section-title{gap:16px;margin-bottom:16px}.section-title h2{overflow-wrap:anywhere;font-size:22px;line-height:1.3}.section-kicker{margin-bottom:6px;font-size:10px}.week-controls{grid-template-columns:48px minmax(0,1fr) 48px;grid-template-areas:"date date date""previous today next";gap:8px;width:100%;display:grid}.icon-button{border-radius:10px;width:44px;height:44px}.week-controls>.icon-button:first-child{grid-area:previous}.week-controls>.icon-button{width:48px;height:48px}.week-controls>.icon-button:nth-of-type(2){grid-area:next}.week-controls>.today-button{grid-area:today;min-height:48px}.date-control{border-radius:10px;grid-area:date;min-width:0;min-height:56px;padding:0 14px;position:relative}.date-control svg{color:var(--green);pointer-events:none;flex-shrink:0;display:block}.date-control input{text-align:center;cursor:pointer;width:100%;min-width:0;min-height:54px;font-size:16px}.date-control input::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.date-control:focus-within{outline:2px solid var(--green);outline-offset:3px}.today-button{background:#e5eddd;border-radius:10px;min-height:44px;margin:0;padding:0 4px;font-size:13px;font-weight:600}.filters{border-radius:12px;grid-template-columns:126px minmax(0,1fr);gap:12px;padding:13px;display:grid}.select-wrap{min-width:0;display:block}.select-wrap>span{margin-bottom:5px;font-size:11px;display:block}.select-wrap select{background:#fff;border:1px solid #dce3d5;border-radius:7px;width:100%;min-width:0;min-height:44px;padding:6px;font-size:16px;font-weight:500;display:block}.competition-select{border:0;padding:0}.clear-filters{border-top:1px solid #d8e0d1;grid-column:1/-1;justify-content:center;min-height:44px;margin:0;font-size:13px}.feed-meta{flex-direction:column;gap:5px;margin:18px 0 22px;font-size:12px;line-height:1.5}.freshness{font-size:11px}.competition-group{margin-bottom:25px}.competition-heading{margin:0 2px 10px}.competition-heading>span:first-child{font-size:13px;line-height:1.4}.competition-heading>span:last-child{display:none}.match-grid,.skeleton-list{grid-template-columns:1fr;gap:12px}.match-card{border-radius:15px;padding:13px 14px 0;box-shadow:0 3px 14px #23371d05}.match-top{align-items:center;gap:8px;margin-bottom:10px;font-size:12px;line-height:1.5}.match-status{padding:4px 7px;font-size:10px}.team-row{grid-template-columns:minmax(0,1fr) 44px 38px 27px;gap:5px;min-height:48px;margin:1px 0;display:grid}.team-avatar{display:none}.team-name{overflow-wrap:anywhere;align-items:center;min-height:44px;font-size:14px;line-height:1.4;display:flex}.star-button{border-radius:12px;min-width:44px;min-height:44px}.star-button svg{width:20px;height:20px}.star-button.saved{color:#507224}.pins-score{color:#63715f;font-size:12px}.team-score{width:auto;font-size:23px}.match-bottom{align-items:center;min-height:50px;margin-top:11px;padding:4px 0;font-size:11px}.match-bottom a{min-height:44px;padding-left:5px;font-size:12px}.button{border-radius:10px;min-height:44px;font-size:13px}.pagination{gap:8px;font-size:11px}.pagination .button{gap:2px;padding:10px 8px}.notice{flex-wrap:wrap;padding:16px;font-size:14px}.notice p{font-size:13px}.notice .button{margin-left:0}.discovery{gap:16px;margin-top:30px;padding-top:25px}.discovery h2{font-size:22px;line-height:1.3}.search-box{border-radius:10px;width:100%;min-height:48px;padding:10px 13px}.search-box input{width:100%;min-height:28px;font-size:16px}.competition-chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.competition-chips button{text-align:left;border-radius:10px;justify-content:space-between;gap:8px;min-height:48px;padding:12px;font-size:13px;line-height:1.4}.round-label{font-size:14px}.round-label input{min-height:44px;font-size:16px}.standings table{white-space:normal;font-size:13px}.standings th,.standings td{padding:10px 7px}.standings th:nth-child(4),.standings th:nth-child(5),.standings th:nth-child(6),.standings td:nth-child(4),.standings td:nth-child(5),.standings td:nth-child(6){display:none}.table-team{overflow-wrap:anywhere;gap:3px;line-height:1.45}.footer{flex-wrap:wrap;padding:24px 16px;font-size:11px;line-height:1.5}.footer>span:first-child{width:100%}.footer>span:first-child .muted{margin:7px 0 0;display:block}.footer a{align-items:center;min-height:44px;display:flex}.mobile-navigation{z-index:30;padding:7px max(12px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #24452508}.mobile-navigation a,.mobile-navigation button{min-height:52px;color:var(--green);background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:600;display:flex}.mobile-navigation a:active,.mobile-navigation button:active{background:#eaf1e3}.nav-count{background:#e4eed9;border-radius:4px;margin-left:5px;padding:1px 5px;font-size:10px;display:inline-block}.back-link{min-height:44px;margin-bottom:15px;font-size:14px}.detail-heading .eyebrow{letter-spacing:1px;font-size:10px;line-height:1.6}.scoreboard{background:linear-gradient(145deg,#fff 40%,#edf3e7);margin-bottom:28px;padding:22px 14px}.scoreboard-date{font-size:13px}.scoreboard-teams{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px;margin:15px 0}.scoreboard-teams .big-score{grid-area:1/1/auto/-1;margin:4px 0 12px}.scoreboard h1,.scoreboard h2{overflow-wrap:anywhere;margin-bottom:5px;font-size:18px;line-height:1.4}.scoreboard .big-score strong{font-size:60px}.scoreboard-teams .big-score>span{font-size:14px}.scoreboard-teams>div>span{font-size:10px}.venue{margin-top:20px;font-size:12px;line-height:1.6}.detail-team-navigation{top:var(--phone-header-height);z-index:10;background:var(--bg);gap:8px;margin-bottom:12px;padding:10px 0;display:flex;position:sticky}.detail-team-navigation a{min-height:44px;color:var(--green);background:#e7eedf;border:1px solid #d9e4cf;border-radius:10px;flex:1;place-items:center;font-size:14px;font-weight:600;display:grid}.result-panel{scroll-margin-top:65px}.result-panel h3{margin:12px 0 15px;font-size:18px;line-height:1.5}.desktop-player-table{display:none}.mobile-player-results{display:block}.player-cards{gap:10px;margin:0;padding:0;list-style:none;display:grid}.player-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:15px}.player-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.player-card-heading h4{overflow-wrap:anywhere;min-width:0;margin:2px 0 0;font-size:15px;font-weight:600;line-height:1.5}.player-card .player-substitute{font-size:12px;line-height:1.5}.player-total{text-align:right;flex-shrink:0}.player-total strong{color:var(--green);letter-spacing:-.8px;font-variant-numeric:tabular-nums;font-size:27px;display:block}.player-total span{color:var(--muted);font-size:10px}.player-stats{border-top:1px solid #edf0e9;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:14px 0 0;padding-top:12px;display:grid}.player-stats dt{color:var(--muted);margin-bottom:5px;font-size:11px}.player-stats dd{font-variant-numeric:tabular-nums;margin:0;font-size:16px;font-weight:600}.team-totals{justify-content:space-between;align-items:center;gap:12px;padding:20px 14px 12px;font-size:14px;display:flex}.team-totals strong{color:var(--green);font-size:20px}.team-totals small{font-size:10px;font-weight:400}.total-stats{background:#eaf1e2;border:0;border-radius:10px;margin:0;padding:14px}.official-link{min-height:44px;font-size:12px;line-height:1.5}}.result-panel .player-cell{white-space:normal;min-width:155px;line-height:1.5}.player-position{color:var(--muted);margin-right:4px;font-weight:400}.player-substitute{color:var(--muted);margin-top:3px;font-size:10px;font-weight:400;display:block}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.league-picker{background:#fff;border:1px solid #d9e3d3;border-radius:14px;margin:14px 0 22px;scroll-margin-top:90px;overflow:hidden}.league-picker summary{cursor:pointer;color:var(--green);align-items:center;gap:12px;min-height:76px;padding:18px;list-style:none;display:flex}.league-picker summary::-webkit-details-marker{display:none}.league-picker summary>span{flex:1;min-width:0}.league-picker summary strong,.league-picker summary small{overflow-wrap:anywhere;display:block}.league-picker summary strong{color:var(--ink);margin-top:4px;font-size:17px}.league-picker summary small{font-size:11px}.league-picker summary>svg{flex-shrink:0}.league-picker details[open] .picker-chevron{transform:rotate(90deg)}.league-picker-body{border-top:1px solid #e4e9df;padding:18px}.league-picker-body>p{color:var(--muted);margin:0 0 16px;font-size:13px;line-height:1.6}.area-select{gap:8px;font-size:13px;font-weight:600;display:grid}.area-select select{width:100%;min-width:0;color:var(--ink);font:inherit;background:#f6f8f3;border:1px solid #cedac6;border-radius:8px;padding:12px;font-size:16px}.league-levels{flex-wrap:wrap;gap:7px;margin:14px 0;display:flex}.league-levels button{background:#fff;border:1px solid #dae2d4;border-radius:22px;min-height:44px;padding:8px 14px;font-size:13px}.league-levels button[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green)}.league-picker .search-box{width:100%;max-width:none}.league-picker .search-box input{width:100%;min-width:0;min-height:44px;font-size:16px}.league-result-heading{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin:12px 0;font-size:12px;display:flex}.league-result-heading button{color:var(--green);text-align:right;background:0 0;border:0;min-height:44px}.league-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:460px;display:grid;overflow-y:auto}.league-results .league-choice{text-align:left;color:var(--ink);background:#fafbf8;border:1px solid #e0e6db;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.league-results .league-choice:hover,.league-results .league-choice[aria-pressed=true]{border-color:var(--green);background:#edf4e7}.league-results strong{overflow-wrap:anywhere;font-size:14px;display:block}.league-results small{color:var(--muted);margin-top:5px;font-size:11px;line-height:1.5;display:block}.league-results svg{color:var(--green);flex-shrink:0}.league-picker-body .league-footnote{margin:16px 0 0;font-size:11px}.league-empty{padding:20px 0;font-size:14px}@media (max-width:740px){.league-picker-body{padding:14px}.league-results{grid-template-columns:minmax(0,1fr);max-height:none}.league-picker summary{padding:14px}.league-picker summary strong{font-size:16px}.filters{grid-template-columns:minmax(0,1fr)}}.team-season{margin-top:24px}.season-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.season-summary h3{margin:8px 0;font-size:22px}.season-summary p{color:var(--muted);font-size:13px;line-height:1.6}.team-form{margin-bottom:24px}.team-form h4{margin:0 0 8px;font-size:18px}.team-form p{color:#536159;font-size:12px}.team-form-list{gap:8px;margin:12px 0;padding:0;list-style:none;display:flex}.team-form-box{border:1px solid #0000;border-radius:10px;place-items:center;width:44px;height:44px;font-size:17px;font-weight:800;display:grid}.team-form-win,.season-outcome-win .season-score{color:#155334;background:#dcf0e3}.team-form-draw,.season-outcome-draw .season-score{color:#745000;background:#fff0c2}.team-form-loss,.season-outcome-loss .season-score{color:#9b2925;background:#fce1df}.team-form-unknown{color:#536159;background:#edf0ed}.team-form-box:hover{color:inherit;border-color:currentColor}.team-roster{border:1px solid var(--line);background:var(--soft);border-radius:12px;margin-bottom:24px;padding:18px}.team-roster-heading{justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px;display:flex}.team-player-competition{margin:0 0 12px;font-weight:600}.team-player-cards{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.team-player-card{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;padding:14px}.team-player-identity{justify-content:space-between;align-items:center;gap:8px;display:flex}.team-player-identity>a{color:var(--green);overflow-wrap:anywhere;align-items:center;min-height:44px;font-weight:700;display:flex}.team-player-identity>a:hover{text-decoration:underline}.team-player-summary{grid-template-columns:.6fr 1fr 1fr;gap:8px;margin:0;padding:12px 0;display:grid}.team-player-summary dt{color:#536159;font-size:11px;line-height:1.5}.team-player-summary dd{font-variant-numeric:tabular-nums;margin:5px 0 0;font-size:20px;font-weight:700}.team-player-summary>div:last-child dd{color:var(--green)}.team-player-card summary{cursor:pointer;border-top:1px solid var(--line);min-height:44px;padding:12px 0;font-size:13px}.team-player-breakdown{table-layout:fixed;white-space:normal;width:100%;font-size:12px}.team-player-breakdown th,.team-player-breakdown td{text-align:right;font-variant-numeric:tabular-nums;padding:10px 4px}.team-player-breakdown th:first-child{text-align:left}.team-player-positions{gap:8px;margin-top:16px;font-size:12px;line-height:1.6;display:grid}@media (max-width:1000px){.team-player-cards{grid-template-columns:minmax(0,1fr)}}.team-roster-heading h4{margin:5px 0 0;font-size:18px}.team-roster-count{color:var(--muted);font-size:12px}.team-roster-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.team-roster-list li{border:1px solid var(--line);background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;min-width:0;min-height:48px;padding:4px 4px 4px 12px;display:flex}.team-roster-list li>a{overflow-wrap:anywhere;min-width:0;padding:9px 0;font-weight:650}.team-roster-list li>a:hover,.team-roster-list li>a:focus-visible{color:var(--green);text-underline-offset:3px;text-decoration:underline}@media (max-width:740px){.team-roster{padding:14px}.team-roster-list{grid-template-columns:minmax(0,1fr)}}.season-matches{white-space:normal;overflow-wrap:anywhere;border-collapse:collapse;table-layout:fixed;background:#fff;width:100%}.season-matches thead th{color:var(--muted);text-align:left;border-bottom:1px solid #dce3d6;padding:12px 8px;font-size:12px}.season-matches thead th:first-child{width:120px}.season-matches thead th:nth-child(3){width:60px}.season-matches thead th:nth-child(4){width:80px}.season-matches tbody td,.season-matches tbody th{text-align:left;vertical-align:middle;border-bottom:1px solid #e5e9df;padding:12px 8px}.season-matches tbody{color:var(--ink)}.season-outcome-badge{border:1px solid;border-radius:5px;margin-bottom:6px;padding:3px 5px;font-size:11px;font-weight:700;display:inline-block}.season-matches tbody th{font-size:14px;font-weight:400}.season-matches tbody a{overflow-wrap:anywhere;align-items:center;min-height:44px;display:flex}.season-matches .season-match-link{color:inherit;flex-direction:column;align-items:flex-start;gap:0}.season-team-link{align-items:center;gap:6px;min-height:44px;display:flex}.team-name:hover,.team-name:focus-visible,.table-team-link:hover,.table-team-link:focus-visible,.season-team-link:hover,.season-team-link:focus-visible,.season-match-link:hover,.season-match-link:focus-visible{color:var(--green);text-underline-offset:3px;text-decoration:underline}.player-history-team{color:var(--green);font-weight:650}.player-history-team:hover,.player-history-team:focus-visible{text-underline-offset:3px;text-decoration:underline}.season-matches tbody tr:first-child th,.season-matches tbody tr:first-child td:not([rowspan]){border-bottom:0;padding-bottom:0}.season-matches tbody tr:last-child th,.season-matches tbody tr:last-child td{padding-top:0}.season-summary h3{align-items:center;gap:10px;display:flex}.season-matches .followed-side{color:var(--green);font-weight:700}.season-matches small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.6;display:block}.season-matches time{font-size:12px}.season-matches .season-score,.season-matches .season-pins{font-variant-numeric:tabular-nums}.season-matches .season-score span,.season-matches .season-pins span{align-items:center;min-height:31px;display:flex}.season-score{font-weight:700}.upcoming-match{background:#f8faf5}.upcoming-match .season-score,.upcoming-match .season-pins{color:var(--muted)}@media (max-width:740px){.season-matches thead th,.season-matches tbody td,.season-matches tbody th{padding:12px 4px}.season-matches thead th{font-size:10px}.season-matches thead th:first-child{width:65px}.season-matches thead th:nth-child(3){width:34px}.season-matches thead th:nth-child(4){width:49px}.season-matches time,.season-matches small{font-size:10px}.season-matches tbody th{font-size:12px}.season-matches .season-score,.season-matches .season-pins{font-size:13px}}.league-result{align-items:center;gap:4px;min-width:0;display:flex}.league-results .league-choice{flex:1;min-width:0;height:100%}.league-result>.star-button{flex-shrink:0;width:44px;height:44px}.favorite-league-row{border-bottom:1px solid var(--line);align-items:center;gap:6px;display:flex}.sidebar .favorite-league-row{border-bottom:0}.favorite-league-choice{text-align:left;min-width:0;min-height:48px;color:var(--ink);background:0 0;border:0;flex:1;padding:12px 4px}.favorite-league-choice strong{overflow-wrap:anywhere;font-size:13px;display:block}.favorite-league-choice small{color:var(--muted);margin-top:4px;display:block}.favorite-league-row>.star-button{flex-shrink:0;width:44px;height:44px}.favorite-player-search{color:var(--green);padding:10px 0;font-size:12px;display:inline-block}.favorite-league-empty{color:var(--muted);font-size:12px;line-height:1.6}.club-logo{color:var(--green);vertical-align:middle;background:#f3f6ef;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.club-logo img{object-fit:contain;width:100%;height:100%}.season-matches tbody a{gap:6px}.season-matches tbody a>span:last-child{min-width:0}.scoreboard-teams>div>.club-logo{margin:0 auto 10px;padding:0;display:inline-flex}.team-name{align-items:center;gap:6px;display:flex}.team-name>span:last-child{overflow-wrap:anywhere;min-width:0}.match-day{margin:28px 0}.match-day-heading{color:var(--ink);border-bottom:2px solid #dbe5d2;align-items:center;gap:10px;margin:0 0 16px;padding-bottom:12px;font-size:18px;line-height:1.4;display:flex}.competition-heading h4{font:inherit;align-items:center;gap:7px;min-width:0;margin:0;display:flex}.competition-heading h4 svg{flex-shrink:0}@media (max-width:740px){.match-day-heading{font-size:16px}}.day-disclosure{background:#f5f8f0;border:1px solid #dce5d5;border-radius:10px;margin:0 0 16px;padding:14px}.day-disclosure p{color:var(--muted);margin:0 0 10px;font-size:13px;line-height:1.5}.day-disclosure .button{white-space:normal;text-align:left;min-height:44px;line-height:1.5}.match-card.favourite-match{background:linear-gradient(130deg,#f0f6e9,#fff 75%);border-color:#9ab887;box-shadow:inset 3px 0 #658c47,0 3px 14px #23371d05}.match-card.favourite-match:hover{border-color:#658c47}.favourite-match-label{color:#3e6327;align-items:center;gap:6px;margin-bottom:10px;font-size:12px;font-weight:700;line-height:1.5;display:flex}.favourite-match-label svg{flex-shrink:0}.match-substitutions{background:#f1f6ed;border:1px solid #cbdcc3;border-radius:12px;margin-bottom:16px;padding:0 12px}.match-substitutions summary{cursor:pointer;padding:12px 0;font-size:13px;font-weight:600}.match-substitutions summary svg{vertical-align:-2px;margin:0 4px}.match-substitutions summary:focus-visible{outline:2px solid var(--muted);outline-offset:3px}.match-substitutions[open]{padding-bottom:12px}.substituted-player-badge{color:#76500b;white-space:nowrap;background:#fff0cc;border-radius:5px;align-items:center;gap:4px;margin-left:6px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-flex}.match-substitutions ul{margin:0;padding:0;list-style:none}.match-substitutions li+li{border-top:1px solid #cbdcc3;margin-top:12px;padding-top:12px}.substitution-throw{font-size:12px;font-weight:700}.match-substitutions dl{gap:6px;margin:8px 0 0;display:grid}.match-substitutions dl>div{grid-template-columns:70px minmax(0,1fr);gap:8px;font-size:13px;line-height:1.5;display:grid}.match-substitutions dt{color:var(--muted)}.match-substitutions dd{overflow-wrap:anywhere;margin:0;font-weight:600}.scoreboard-team-link{border-radius:8px;display:block}.scoreboard-team-link>.club-logo{margin:0 auto 10px;padding:0;display:inline-flex}.scoreboard-team-link:hover h1,.scoreboard-team-link:hover h2{text-underline-offset:4px;text-decoration:underline}.scoreboard-team-link:focus-visible{outline-offset:4px;outline:2px solid #375627}.player-detail-trigger{color:inherit;font:inherit;font-weight:inherit;text-align:left;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:4px 0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:inline}.player-detail-trigger:hover{color:var(--green)}.player-detail-dialog{border:1px solid var(--line);background:var(--bg);width:min(620px,100vw - 32px);max-height:85dvh;color:var(--ink);overscroll-behavior:contain;text-align:left;border-radius:18px;margin:auto;padding:24px;font-size:14px;font-weight:400;overflow-y:auto}.player-detail-dialog::backdrop{background:#0f190f8c}.player-detail-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.player-detail-header h2{overflow-wrap:anywhere;margin:6px 0 18px;font-size:22px}.player-detail-close{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.lane-detail-note{color:var(--muted);font-size:12px;line-height:1.5}.lane-comparison-names{overflow-wrap:anywhere;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:10px;font-size:13px;display:grid}.lane-comparison-names>:last-child:not(:first-child){text-align:right}.lane-comparisons{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lane-breakdown{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}.lane-breakdown summary,.lane-breakdown dl>div,.lane-comparison-total{text-align:center;grid-template-columns:minmax(0,1fr) minmax(80px,1fr) minmax(0,1fr);align-items:center;gap:6px;display:grid}.lane-breakdown summary{cursor:pointer;min-height:64px;padding:10px 8px;list-style:none}.lane-breakdown summary::-webkit-details-marker{display:none}.lane-breakdown summary small{margin-top:4px;font-size:10px;display:block}.lane-score{font-variant-numeric:tabular-nums;border-radius:8px;padding:6px 2px;font-size:22px}.lane-score-earned{color:#315424;background:#edf5e6}.lane-breakdown dl{border-top:1px solid var(--line);margin:0;padding:8px}.lane-breakdown dl>div{padding:5px 0;font-size:12px}.lane-breakdown dd{margin:0}.lane-comparison-total{padding:16px 8px}.lane-comparison-total strong{font-size:22px}.player-detail-substitutions{border-top:1px solid var(--line);padding-top:8px;font-size:13px}.player-detail-substitutions h3{font-size:14px}.player-detail-dialog :focus-visible{outline:2px solid var(--green);outline-offset:2px}@media (max-width:740px){.player-detail-dialog{width:100%;max-width:100%;max-height:90dvh;padding:20px 16px max(20px, env(safe-area-inset-bottom));border-radius:18px 18px 0 0;margin:auto 0 0}.player-detail-trigger{min-height:44px}}.region-shortcuts{flex-wrap:wrap;gap:8px;display:flex}.region-shortcuts button{border:1px solid var(--line);min-height:44px;color:var(--green);background:#fff;border-radius:8px;padding:10px 16px;font-weight:600}.region-shortcuts button[aria-pressed=true]{background:var(--green);color:#fff}.region-shortcuts button:disabled{opacity:.5}.region-map{max-width:680px;margin:12px auto 20px}.region-map svg{width:100%;height:auto;display:block}.region-map g[role=button]{cursor:pointer;outline:none}.region-map path{fill:#e7eedf;stroke:#fff;stroke-width:2px;stroke-linejoin:round}.region-map g:hover path{fill:#c7dfa9}.region-map g[aria-pressed=true] path{fill:var(--green)}.region-map g:focus-visible path{stroke:var(--ink);stroke-width:3px}.region-map text{text-anchor:middle;dominant-baseline:middle;fill:var(--ink);pointer-events:none;font-size:10px;font-weight:600}.region-map g[aria-pressed=true] text{fill:#fff}.map-attribution{text-align:right;color:var(--muted);font-size:10px;display:block}.map-attribution a{text-decoration:underline}@media (max-width:740px){.region-map text{font-size:12px}.region-map{margin:8px auto 16px}}.day-navigation{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.day-navigation label{cursor:pointer;align-items:center;gap:8px;min-height:44px;display:flex}.day-navigation input{width:18px;height:18px}.match-day-jump{text-align:left;gap:8px;min-height:64px}.match-day-jump>span{gap:5px;display:grid}.match-day-jump>span>span{color:var(--muted);font-size:11px}.match-day-jump strong{color:var(--green);font-size:15px}.match-day-jump svg{color:var(--green);flex-shrink:0}.next-matches{text-align:right;justify-content:flex-end;margin-left:auto}@media (max-width:740px){.day-navigation{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;margin:16px 0;display:grid}.day-navigation .match-day-jump{white-space:normal;background:#fff;border-radius:12px;width:100%;min-width:0;padding:12px 8px}.previous-matches{grid-area:1/1}.next-matches{grid-area:1/2;margin-left:0}.day-navigation label{background:#edf0e9;border-radius:10px;grid-column:1/-1;min-height:48px;padding:8px 12px;font-size:14px}}details.competition-group>summary{cursor:pointer;min-height:44px;list-style:none}details.competition-group>summary::-webkit-details-marker{display:none}details.competition-group>summary>span{align-items:center;gap:6px;display:flex}details.competition-group[open]>summary>span>svg{transform:rotate(90deg)}.players-page{max-width:900px}.player-dashboard .players-page{width:100%;min-width:0}.players-page h1{font-size:30px}.player-search-form{grid-template-columns:150px minmax(0,1fr) auto;align-items:end;gap:12px;margin:24px 0 12px;display:grid}.player-search-form label,.player-season-select{gap:8px;display:grid}.player-search-form input,.player-search-form select,.player-season-select select{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-width:0;min-height:48px;padding:10px;font-size:16px}.player-season-select{max-width:240px}.follow-player{border:1px solid var(--line);min-height:44px;color:var(--green);background:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:8px;display:inline-flex}.follow-player[aria-pressed=true]{background:var(--soft)}.favourite-players{margin:16px 0}.favourite-players ul,.player-search-results,.player-history{padding:0;list-style:none}.favourite-players li,.player-search-results li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.favourite-players li>a,.player-search-results li>a{overflow-wrap:anywhere;min-width:0;padding:8px 0}.player-search-results small,.player-history-heading small{color:var(--muted);margin:6px 0;line-height:1.5;display:block}.player-profile-heading,.player-history-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.player-history{gap:16px;display:grid}.player-history>li{border:1px solid var(--line);background:#fff;border-radius:12px;padding:18px}.player-history-heading>div{overflow-wrap:anywhere;min-width:0}.player-history-heading>strong{text-align:right;font-size:26px}.player-history-heading>strong small{font-size:11px;font-weight:400}.player-history-heading a{text-underline-offset:3px;font-weight:600;text-decoration:underline}.player-history p{font-size:13px;line-height:1.6}.player-history summary{cursor:pointer;min-height:44px;padding:12px 0}.player-history-sub{background:#fff0cc;border-radius:8px;padding:10px}.player-history-lanes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.player-history-lanes>div{text-align:center;background:var(--bg);border-radius:8px;gap:8px;padding:10px;display:grid}.player-profile-link{margin-bottom:16px}@media (max-width:740px){.player-search-form{grid-template-columns:1fr}.player-profile-heading{align-items:start}.player-profile-heading h1{overflow-wrap:anywhere;font-size:24px}.mobile-navigation{grid-template-columns:repeat(4,1fr)}.players-page{padding-bottom:40px}}.player-history-lanes .lane-score small{margin-top:4px;font-size:11px;display:block}.player-season-select{margin-bottom:24px}.team-player-view{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;max-width:360px;margin:12px 0;padding:4px;display:grid}.team-player-view button{min-width:0;min-height:48px;color:var(--green);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;font-weight:600}.team-player-view button[aria-pressed=true]{background:var(--green);color:#fff}.team-player-summary-filtered{grid-template-columns:repeat(2,minmax(0,1fr))}.standing-movement{color:#526159;font-variant-numeric:tabular-nums;background:#f1f3f2;border-radius:6px;justify-content:center;align-items:center;width:max-content;min-width:28px;min-height:24px;margin-top:6px;padding:2px 5px;font-size:12px;font-weight:700;display:flex}.standing-movement-up{color:#246235;background:#e5f4e8}.standing-movement-down{color:#a32c24;background:#fbe9e7}.standing-movement-unknown{border:1px dashed #a5afa9}.match-organizer-tools{color:var(--muted);margin-top:20px;font-size:12px}.match-organizer-tools summary{cursor:pointer;width:fit-content;padding:12px 0}.match-organizer-tools a{color:var(--green);padding:12px 0;display:inline-block}.competition-resources{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;margin:12px 0 20px}.competition-resources summary{cursor:pointer;align-items:center;gap:8px;min-height:48px;padding:12px;font-weight:700;display:flex}.competition-resources summary:after{content:"+";margin-left:auto}.competition-resources[open] summary:after{content:"−"}.competition-resources-content{padding:0 12px 12px}.competition-resources-content h3{margin:16px 0 8px;font-size:15px}.competition-resources-content p{font-size:13px}.competition-resources ul{margin:0;padding:0;list-style:none}.competition-resources li+li{border-top:1px solid var(--line)}.competition-resources a{align-items:center;gap:10px;min-height:48px;padding:10px 0;text-decoration:none;display:flex}.competition-resources a>span:first-child{overflow-wrap:anywhere;flex:1;min-width:0}.competition-resources a svg{flex-shrink:0}.competition-resources a small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.competition-resources a:hover strong{text-decoration:underline}.competition-resources-loading{color:var(--muted);font-size:13px}.competition-resources-error .button{min-height:44px}.next-opponent{overflow-wrap:anywhere;background:#f7faf5;border:1px solid #dce4d8;border-radius:16px;min-width:0;margin:20px 0;padding:20px}.next-opponent p{margin:8px 0}.next-opponent-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.next-opponent-heading h4{margin:0;font-size:1.15rem}.next-opponent-heading a{align-items:center;gap:10px;min-height:44px;display:flex}.next-opponent-location{font-size:.85rem;font-weight:700}.next-opponent-venue span{font-size:.85rem;display:block}.next-opponent-actions{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.next-opponent-actions a{background:#fff;border:1px solid #dce4d8;border-radius:10px;align-items:center;min-height:44px;padding:8px 12px;display:inline-flex}.next-opponent-stats{border-top:1px solid #dce4d8;padding-top:8px}.next-opponent-stats>.muted{font-size:.8rem}.next-opponent-average{gap:4px;padding:12px 0;display:grid}.next-opponent-average strong{font-variant-numeric:tabular-nums;font-size:1.5rem}.next-opponent-average small{color:#5c6857}@media (max-width:600px){.next-opponent{padding:14px}}.team-detail-tabs{border-bottom:1px solid #dce4d8;gap:4px;margin:16px 0;display:flex}.team-detail-tabs button{color:#5c6857;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;min-height:44px;padding:10px 14px;font-weight:600}.team-detail-tabs button[aria-selected=true]{color:#126044;border-bottom-color:#126044}.team-detail-tabs button:focus-visible{outline-offset:-2px;outline:2px solid #126044}.competition-standings-switch{grid-template-columns:1fr 1fr 1.6fr}.competition-player-table{min-width:0;margin:16px 0 24px}.competition-player-table .section-title p{margin:6px 0 0;font-size:13px}.player-table-round{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.player-table-round label{align-items:center;gap:8px;display:flex}.player-table-round input{width:118px;min-height:44px}.player-table-filters{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin:16px 0;display:grid}.player-table-filters>label:first-child{gap:6px;font-size:13px;display:grid}.player-table-filters input[type=search]{width:100%;min-width:0;min-height:44px}.player-table-round input,.player-table-filters input[type=search]{border:1px solid var(--line);color:inherit;font:inherit;box-sizing:border-box;background:#fff;border-radius:10px;padding:10px 12px}.player-table-favorites{cursor:pointer;align-items:center;gap:8px;min-height:44px;font-size:13px;display:flex}.player-table-favorites input{width:20px;height:20px}.player-table-note,.player-table-count{font-size:12px;line-height:1.5}.competition-player-list{gap:8px;margin:12px 0;padding:0;list-style:none;display:grid}.competition-player-list li{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(220px,.8fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.competition-player-list li.is-favorite{background:#eff8f0;border-color:#a3ccb0}.player-standing-identity{grid-template-columns:32px minmax(0,1fr) 44px;align-items:center;gap:8px;display:grid}.player-standing-position{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:700}.player-standing-name,.player-standing-team{overflow-wrap:anywhere;display:block}.player-standing-name{font-weight:700;text-decoration:none}.player-standing-team{color:var(--muted);margin-top:4px;font-size:12px}.player-standing-identity .star-button{width:44px;height:44px}.competition-player-list dl{text-align:center;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;display:grid}.competition-player-list dt{color:var(--muted);font-size:11px}.competition-player-list dd{font-variant-numeric:tabular-nums;margin:4px 0 0;font-weight:700}.player-table-more{width:100%;min-height:44px}.player-qualification-divider{border-bottom:2px solid var(--line);color:var(--muted);grid-column:1/-1;margin:0 0 4px;padding-bottom:10px;font-size:13px;font-weight:700}.player-qualification-note{color:var(--muted);grid-column:1/-1;margin:0;font-size:12px}@media (max-width:650px){.player-table-filters{grid-template-columns:minmax(0,1fr);gap:4px}.competition-player-list li{grid-template-columns:minmax(0,1fr);gap:10px;padding:10px}.competition-player-list dl{border-top:1px solid var(--line);padding-top:8px}}.player-table-order{gap:6px;max-width:360px;margin:12px 0;font-size:13px;display:grid}.player-table-order select{border:1px solid var(--line);width:100%;min-height:44px;font:inherit;color:inherit;background:#fff;border-radius:10px;padding:10px}.competition-best-performances{min-width:0;margin:16px 0 24px}.competition-best-performances>.muted{font-size:.85rem;line-height:1.5}.best-performance-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;padding:0;list-style:none;display:grid}.best-performance-list>li{overflow-wrap:anywhere;background:#fff;border:1px solid #dce4d8;border-radius:14px;min-width:0;padding:16px}.best-performance-list>.best-performance-favorite{background:#f2f8eb;border-color:#b6cba0}.best-performance-heading{align-items:center;gap:10px;display:flex}.best-performance-rank{color:#64725b;font-variant-numeric:tabular-nums;min-width:24px}.best-performance-player{flex:1;min-width:0;display:grid}.best-performance-player a{align-items:center;min-height:44px;display:flex}.best-performance-player a:first-child{font-weight:700}.best-performance-player a:last-child{color:#64725b;font-size:.85rem}.best-performance-result{gap:4px;margin:12px 0;display:grid}.best-performance-result strong{font-variant-numeric:tabular-nums;font-size:1.6rem}.best-performance-result small{font-size:.8rem;font-weight:400}.best-performance-result>span{color:#64725b;font-size:.8rem}.best-performance-match{border-top:1px solid #e4e8e0;padding-top:10px;font-size:.85rem;display:grid}.best-performance-match a{align-items:center;min-height:44px;display:flex}.statistics-glossary{min-width:0;margin:8px 0 16px}.statistics-glossary summary{width:fit-content;min-width:44px;min-height:44px;color:var(--ink);cursor:pointer;border-radius:8px;align-items:center;gap:7px;padding:0 10px;font-size:.875rem;font-weight:600;list-style:none;display:flex}.statistics-glossary summary::-webkit-details-marker{display:none}.statistics-glossary summary:after{content:"+";margin-left:6px}.statistics-glossary[open] summary:after{content:"−"}.statistics-glossary summary:hover,.statistics-glossary[open] summary{background:var(--line)}.statistics-glossary summary:focus-visible{outline:2px solid var(--green);outline-offset:2px}.statistics-glossary dl{border:1px solid var(--line);text-align:left;background:#fff;border-radius:12px;margin:8px 0 0;padding:16px}.statistics-glossary dl>div+div{margin-top:12px}.statistics-glossary dt{font-size:.875rem;font-weight:700}.statistics-glossary dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:.875rem;line-height:1.5}.share-control{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;margin:0 0 8px;display:flex}.share-button{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.share-button:hover{background:var(--line);color:var(--ink)}.share-button:focus-visible{outline:2px solid var(--green);outline-offset:2px}.share-button:disabled{opacity:.45;cursor:default}.share-toast{z-index:100;bottom:calc(24px + env(safe-area-inset-bottom,0px));box-sizing:border-box;color:#fff;pointer-events:none;background:#173d32;border-radius:12px;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:12px 18px;font-size:.875rem;font-weight:600;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0003}.share-toast svg{flex-shrink:0}.share-fallback{text-align:left;width:100%}@media (max-width:740px){.share-toast{bottom:calc(88px + env(safe-area-inset-bottom,0px))}}.share-status{font-size:.875rem}.share-status:empty{display:none}.share-manual{text-align:left;gap:6px;width:100%;min-width:0;display:grid}.share-manual input{box-sizing:border-box;width:100%;min-width:0;min-height:44px}@media (max-width:700px){.best-performance-list{grid-template-columns:1fr}}
