@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f5f6f8;--ink:#18292a;--muted:#748181;--green:#167d64;--line:#e3e8e7;--nav:#112e2b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,.button{cursor:pointer;border:0;border-radius:7px;background:var(--green);color:white;padding:12px 19px;font-weight:600;display:inline-block}button:hover,.button:hover{filter:brightness(.93)}button:disabled{cursor:default;opacity:.5}.small{padding:9px 12px;font-size:12px}.subtle{background:#edf2f0;color:#344c46}.text-button{background:none;color:var(--muted);font-size:12px;padding:8px 0}.shell{display:flex;min-height:100vh}aside{width:230px;background:var(--nav);color:#a7bcb4;padding:36px 23px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{display:block;color:white;font-size:30px;font-weight:800;letter-spacing:-1.5px;position:relative;padding-left:44px}.brand>span:not(.ball){font-weight:400;color:#91bfa8}.ball{background:#e7f1cf;color:#153a2a;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;position:absolute;left:0;top:4px;font-size:20px}.brand small{display:block;font-size:8px;letter-spacing:2px;margin:6px 0 42px}.nav-label{font-size:9px;letter-spacing:1.7px;margin:20px 13px 12px;color:#698d80}nav a{display:flex;gap:12px;align-items:center;padding:14px 13px;margin:4px 0;border-radius:7px}nav a.active{background:#25453e;color:#d6eac0}nav a:hover{background:#1e3e36}.sidebar-footer{margin-top:auto;font-size:14px;color:#d5e4d8;line-height:1.8}.sidebar-footer small{font-size:10px;color:#789d8c}.workspace{margin-left:230px;width:calc(100% - 230px)}header{height:80px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:0 45px;font-size:12px}header>span:first-child{margin-right:auto}header form{margin:0}.account{max-width:160px;overflow:hidden;white-space:nowrap}main{max-width:1240px;margin:auto;padding:42px 45px 80px}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.6px}h1{font-size:38px;line-height:1.22;margin:14px 0}h2{font-size:20px;margin:20px 0}h3{font-size:16px}p{color:var(--muted);line-height:1.7}em{font-style:normal;color:var(--green)}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:700;color:var(--green)}.heading{display:flex;justify-content:space-between;align-items:center}.heading h1{font-size:46px}.heading p{max-width:490px}.hero-ball{height:138px;width:138px;background:radial-gradient(circle at 32% 25%,#36564e,#102d29 70%);border:24px solid #dae2c8;border-radius:50%;color:#183c31;font-size:48px;font-weight:800;display:grid;place-items:center;box-shadow:15px 12px 0 #e8ece2;transform:rotate(-15deg);margin-right:35px}.hero-ball:after{content:'8';position:absolute;width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:#f0f4df}.stats{display:grid;grid-template-columns:repeat(3,1fr);background:white;border:1px solid var(--line);border-radius:10px;margin:30px 0 36px}.stats>div{padding:22px 26px;border-right:1px solid var(--line)}.stats>div:last-child{border:0}.stats small{font-size:9px;letter-spacing:1.3px;color:var(--muted)}.stats strong{display:block;font-size:24px;margin-top:8px}.stats strong span{font-size:11px;font-weight:400;margin-left:7px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-title a{font-size:12px;color:var(--green)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 22px}.filters button{background:white;color:#718079;border:1px solid var(--line);font-size:12px;padding:10px 16px}.filters .selected,.selected{background:#dceadf!important;color:#206349!important;border-color:#c4d9c7!important}.match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.match-card,.panel{background:white;border:1px solid var(--line);border-radius:10px;padding:23px}.match-card:hover{border-color:#9fbdad;box-shadow:0 5px 15px #142c2910}.card-meta{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.8px;color:var(--muted);margin-bottom:22px}.green{color:var(--green)!important}.live-dot{display:inline-block;background:#3fa879;width:6px;height:6px;border-radius:50%;margin:0 6px 1px 14px}.team-row{display:flex;align-items:center;justify-content:space-between;margin:15px 0}.team-row>span{display:flex;align-items:center;gap:12px;font-weight:600}.team-row i{font-style:normal;width:30px;height:30px;background:#eef0e7;border-radius:7px;display:grid;place-items:center;color:#6b7c56}.team-row b{font-size:25px}.card-bottom{border-top:1px solid var(--line);padding-top:15px;margin-top:22px;color:var(--muted);font-size:10px;display:flex;justify-content:space-between}.callout{margin-top:30px;background:#e7eddf;border-radius:10px;padding:28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.callout h2{margin:10px 0}.callout p{margin-bottom:0;font-size:12px}footer{padding:22px 45px;border-top:1px solid var(--line);font-size:10px;letter-spacing:1px;color:#7c8b85}footer span{float:right;letter-spacing:0}.muted{color:var(--muted)}.panel{margin-bottom:18px}.panel h2:first-child{margin-top:0}label{display:block;font-size:12px;font-weight:600;margin:14px 0}input:not([type=checkbox]),select{display:block;width:100%;border:1px solid #cfdad4;border-radius:6px;padding:11px;background:#fff;color:var(--ink);margin-top:7px;min-width:0}input:focus,select:focus{outline:2px solid #89b8a0;outline-offset:1px}.filters select{width:auto;max-width:100%;margin:0}.check{display:flex;align-items:center;gap:8px;line-height:1.5}.check input{accent-color:var(--green);width:18px;height:18px}.admin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.list-row{padding:14px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.list-row small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.list-row button{padding:9px 12px}.error{background:#fdebe7;color:#963f35;padding:14px;border-radius:7px}.notice{background:#e0eee0;color:#326347;padding:14px;border-radius:7px}.badge{background:#edf1e9;padding:7px 10px;border-radius:5px;font-size:10px}.table-wrap{overflow:auto;padding:8px 18px}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:left;padding:16px 10px;border-bottom:1px solid var(--line);font-size:12px}th{color:var(--muted);font-weight:500}th:nth-child(2){width:60%}.fixture-list a{display:grid;grid-template-columns:90px 1fr;gap:10px;border-bottom:1px solid var(--line);padding:16px 0}.fixture-list a small:last-child{grid-column:2;color:var(--muted)}.score-pill{background:#eaf0e7;padding:4px 9px;border-radius:5px;margin:0 10px}.frames{max-width:800px;margin:20px auto 80px}.frame-sides{display:grid;grid-template-columns:1fr 1fr;gap:24px}.frame-sides small{font-size:10px;color:var(--muted)}.scorebar{position:fixed;bottom:0;left:230px;right:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;background:#163b30;color:white;padding:16px 35px 10px;box-shadow:0 -3px 20px #12332718;z-index:5;text-align:center}.scorebar strong{font-size:30px}.scorebar strong small{color:#85a68f}.scorebar>small{grid-column:1/-1;color:#b5d3a2;font-size:8px;letter-spacing:2px}.scorebar>span{font-size:14px}.login{max-width:460px;margin:35px auto}.login h1{font-size:30px}.login button{width:100%;margin-top:10px}.inline,.actions{display:flex;gap:12px;align-items:center;margin:18px 0}.inline input{width:auto}.entry-grid{display:grid;grid-template-columns:repeat(3,1fr)}summary{cursor:pointer;margin:20px 0}.tie-row{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:12px;align-items:center;border-top:1px solid var(--line);padding:14px 0}.tie-row small,.tie-row b{display:block}.tie-row small{color:var(--muted);margin-bottom:7px}iframe{width:100%;height:180px;border:0;border-radius:6px;margin:5px 0 15px}#blazor-error-ui{display:none;position:fixed;bottom:0;background:#f6d9a8;padding:15px;width:100%;z-index:100}
@media(min-width:1500px){.match-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1000px){aside{width:190px;padding:30px 15px}.workspace{margin-left:190px;width:calc(100% - 190px)}main{padding:30px 25px 70px}header{padding:0 25px}.scorebar{left:190px}.hero-ball{display:none}.stats>div{padding:20px 16px}.stats strong span{display:block;margin:5px 0 0}.admin-grid{grid-template-columns:1fr}.entry-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){aside{position:static;width:100%;padding:15px 16px 9px}.shell{display:block}.brand{font-size:24px;padding-left:37px}.ball{width:27px;height:27px;top:2px;font-size:17px}.brand small,.nav-label,.sidebar-footer{display:none}nav{display:flex;overflow-x:auto;margin-top:14px;gap:4px}nav a{font-size:11px;white-space:nowrap;gap:5px;padding:10px 9px;margin:0}.workspace{margin:0;width:100%}header{height:60px;padding:0 18px;gap:8px}header .muted{display:none}header .button{font-size:10px;padding:9px}.account{max-width:95px;font-size:10px}header button{font-size:10px;padding:8px}main{padding:26px 18px 60px}h1,.heading h1{font-size:34px}.heading p{font-size:12px}.eyebrow{font-size:8px}.stats{margin:22px 0}.stats>div{padding:15px 10px}.stats small{font-size:7px;letter-spacing:.5px}.stats strong{font-size:18px}.stats strong span{font-size:8px}.match-grid{grid-template-columns:1fr;gap:12px}.match-card,.panel{padding:19px}.section-title h2{font-size:18px}.callout{display:block;padding:23px}.callout .button{margin-top:18px;font-size:12px}footer{padding:20px 18px;font-size:8px}.scorebar{left:0;padding:13px 16px 10px}.scorebar>span{font-size:11px}.scorebar strong{font-size:27px}.frame-sides{gap:14px}.frame-sides p{font-size:12px}.frame-sides button{padding:11px;font-size:12px;width:100%}.fixture-list a{display:flex;flex-direction:column}.fixture-list strong{font-size:12px;line-height:2}.form-grid{grid-template-columns:1fr}.admin-tabs{gap:5px}.filters button{font-size:10px;padding:9px}.tie-row{grid-template-columns:1fr 1fr}.tie-row>div{grid-column:1/-1}.entry-grid{grid-template-columns:1fr}.actions{flex-wrap:wrap}.inline{flex-wrap:wrap}.score-pill{margin:0 4px}th,td{padding:13px 8px;font-size:11px}.table-wrap{padding:5px}.matchup h2{font-size:18px}.login{margin:10px auto}.badge{display:inline-block;margin-bottom:5px}}

h1:focus{outline:none}
@media(max-width:680px){nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:5px}nav a{justify-content:center;font-size:10px;padding:10px 4px}}

/* Keep the match score inside the viewport while the frame list scrolls. */
.scorebar {
    position: fixed;
    left: calc(230px + (100% - 230px) / 2);
    right: auto;
    bottom: max(16px, env(safe-area-inset-bottom));
    transform: translateX(-50%);
    width: min(800px, calc(100% - 270px));
    border: 1px solid #507365;
    border-radius: 16px;
    padding: 16px 24px 12px;
    box-shadow: 0 8px 32px #102d2940;
    z-index: 50;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}
.scorebar > span { overflow-wrap: anywhere; font-weight: 600; }
.scorebar strong { font-size: 36px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.scorebar > small { font-size: 10px; }
.frames { padding-bottom: 100px; }
@media (max-width: 1000px) {
    .scorebar { left: calc(190px + (100% - 190px) / 2); width: calc(100% - 230px); }
}
@media (max-width: 680px) {
    .scorebar { left: 50%; width: calc(100% - 24px); bottom: max(12px, env(safe-area-inset-bottom)); padding: 13px 14px 10px; gap: 8px; }
    .scorebar strong { font-size: 32px; }
    .scorebar > span { font-size: 12px; line-height: 1.35; }
    .scorebar > small { font-size: 9px; }
}

.team-fixtures { list-style: none; padding: 8px 22px; }
.team-fixtures li + li { border-top: 1px solid var(--line); }
.team-fixtures a, .team-fixtures .team-bye { display: grid; grid-template-columns: 140px minmax(0, 1fr) 100px; gap: 16px; align-items: center; padding: 20px 0; }
.team-fixtures time, .team-fixtures small { color: var(--muted); font-size: 12px; }
.team-fixtures small { text-align: right; }
.team-fixtures strong { line-height: 1.9; }
.team-fixtures a:hover strong { color: var(--green); }
@media(max-width:680px) {
    .team-fixtures { padding: 4px 16px; }
    .team-fixtures a, .team-fixtures .team-bye { grid-template-columns: 1fr auto; gap: 8px 12px; padding: 17px 0; }
    .team-fixtures strong { grid-column: 1 / -1; grid-row: 2; font-size: 12px; }
    .team-fixtures small { grid-column: 2; grid-row: 1; }
    .team-fixtures time, .team-fixtures small { font-size: 10px; }
}

.centre-match-list { list-style: none; padding: 4px 20px; }
.centre-match-list li + li { border-top: 1px solid var(--line); }
.centre-match { display: grid; grid-template-columns: 100px minmax(0,1fr) auto minmax(0,1fr) 140px; gap: 16px; align-items: center; padding: 20px 0; }
.centre-match:hover { color: var(--green); }
.centre-match-meta { display: grid; gap: 5px; font-size: 11px; color: var(--muted); }
.centre-match-meta small { font-size: 9px; letter-spacing: .5px; }
.centre-home, .centre-away { font-weight: 600; overflow-wrap: anywhere; }
.centre-home { text-align: right; }
.centre-score { background: #eaf0e7; padding: 7px 12px; border-radius: 6px; white-space: nowrap; font-variant-numeric: tabular-nums; font-size: 18px; }
.centre-venue { text-align: right; color: var(--muted); font-size: 11px; }
@media(max-width:1000px) { .centre-match { grid-template-columns: 88px minmax(0,1fr) auto minmax(0,1fr); gap: 12px; } .centre-venue { display: none; } }
@media(max-width:680px) {
    .centre-match-list { padding: 2px 12px; }
    .centre-match { grid-template-columns: 64px minmax(0,1fr) auto minmax(0,1fr); gap: 8px; padding: 17px 0; }
    .centre-match-meta { font-size: 9px; }
    .centre-match-meta small { font-size: 7px; letter-spacing: 0; }
    .centre-home, .centre-away { font-size: 11px; line-height: 1.4; }
    .centre-score { font-size: 16px; padding: 6px 7px; }
}

.viewer-scorecard { max-width: 900px; margin: 20px auto 180px; padding: 0 20px; }
.viewer-scorecard table { table-layout: fixed; white-space: normal; }
.viewer-scorecard th:first-child { width: 76px; }
.viewer-scorecard th:nth-child(2), .viewer-scorecard th:nth-child(3) { width: auto; }
.viewer-scorecard thead th { padding: 17px 12px; font-weight: 600; color: var(--ink); }
.viewer-scorecard tbody th, .viewer-scorecard td { padding: 18px 12px; vertical-align: middle; }
.viewer-scorecard tbody th { font-weight: 600; color: var(--ink); }
.viewer-scorecard tbody th small { display: block; margin-top: 4px; font-size: 9px; color: var(--muted); font-weight: 400; }
.viewer-scorecard tbody tr:last-child > * { border-bottom: 0; }
.viewer-player-result { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.viewer-player-result > span:first-child { overflow-wrap: anywhere; line-height: 1.5; }
.frame-outcome { padding: 5px 8px; border-radius: 5px; font-size: 10px; font-weight: 600; flex-shrink: 0; }
.frame-outcome.won { background: #dceadf; color: #206349; }
.frame-outcome.lost { background: #f3e7e4; color: #914d40; }
.frame-outcome.pending { background: #f0f2f1; color: #748181; }
@media(max-width:680px) {
    .viewer-scorecard { padding: 0 8px; }
    .viewer-scorecard th:first-child { width: 52px; }
    .viewer-scorecard thead th, .viewer-scorecard tbody th, .viewer-scorecard td { padding: 14px 6px; font-size: 11px; }
    .viewer-player-result { align-items: flex-start; flex-direction: column; gap: 6px; }
    .frame-outcome { font-size: 9px; padding: 4px 7px; }
}

.venue-table-list{list-style:none;padding:0;margin:0}.table-actions{display:flex;gap:8px;flex-shrink:0}.table-edit{width:100%;min-width:0}.venue-table-list .list-row>div:first-child{min-width:0;overflow-wrap:anywhere}

.diary-week-row{padding:14px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.diary-week-row button{font-size:11px;padding:9px 10px}

.competition-fixture-list{list-style:none;padding:4px 20px}.competition-fixture-list li{display:grid;grid-template-columns:140px minmax(0,1fr) minmax(100px,.7fr);gap:16px;align-items:center;padding:20px 0}.competition-fixture-list li+li{border-top:1px solid var(--line)}.competition-fixture-list time,.competition-fixture-list small{color:var(--muted);font-size:11px}.competition-fixture-list small{display:block;margin-top:6px}.competition-fixture-list li>span{font-size:12px}.competition-fixture-list strong{line-height:1.5;overflow-wrap:anywhere}@media(max-width:680px){.competition-fixture-list li{grid-template-columns:1fr;gap:8px;padding:16px 0}.competition-fixture-list{padding:4px 16px}}

.competition-section{margin:20px 0}.competition-section-heading{margin:0}.competition-section-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:20px;font-size:18px;gap:16px;white-space:normal}.competition-section-toggle small{display:block;margin-top:8px;font-size:11px;font-weight:400}.competition-section-content{padding:20px 0 4px}.competition-rounds{flex-wrap:wrap}.competition-rounds button{min-height:44px}@media(max-width:680px){.competition-section-toggle{font-size:16px;padding:16px}.competition-rounds{gap:8px}}

.admin-competition>summary{cursor:pointer;padding:8px 0;line-height:1.8}.admin-competition>summary strong{font-size:18px;margin-right:12px}.admin-competition[open]>summary{margin-bottom:20px}.admin-competition .notice{padding:16px;border:1px solid var(--line);border-radius:8px;margin:20px 0}.admin-competition .notice li{margin:8px 0}

.notification-source{display:none!important}.notification-panel{position:fixed;z-index:10000;left:50%;transform:translateX(-50%);bottom:calc(18px + env(safe-area-inset-bottom));width:min(680px,calc(100% - 28px));max-height:40dvh;overflow:auto;padding:18px 22px;background:#183e34;color:#fff;border:1px solid #64877a;border-radius:12px;box-shadow:0 8px 35px #0004;font-size:14px;line-height:1.5}.notification-panel[hidden]{display:none}.notification-panel p{color:inherit;margin:8px 0}.notification-panel ul{padding-left:20px}.notification-error{border-left:4px solid #ffb8ab;padding-left:12px}.notification-panel>div+div{margin-top:12px;padding-top:12px;border-top:1px solid #ffffff40}body:has(.scorebar) .notification-panel{bottom:calc(150px + env(safe-area-inset-bottom))}@media(max-width:680px){.notification-panel{padding:14px 16px;font-size:13px}}

.whats-on{margin:24px 0}.whats-on summary{cursor:pointer;padding:6px 0}.whats-on summary>strong{font-size:20px}.whats-on summary>span{display:block;color:var(--muted);font-size:12px;margin-top:8px}.whats-on ul{list-style:none;padding:0;margin:18px 0 0}.whats-on li+li{border-top:1px solid var(--line)}.whats-on li a{display:grid;grid-template-columns:110px 1fr auto;gap:16px;align-items:center;padding:18px 0}.whats-on time{font-size:12px;color:var(--muted)}@media(max-width:680px){.whats-on li a{grid-template-columns:1fr auto;gap:8px}.whats-on time{grid-column:1/-1}.whats-on summary>strong{font-size:18px}}

.draw-team-list{list-style:none;padding:0}.draw-team-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.draw-team-list label{margin:0}@media(max-width:680px){.draw-team-list li{align-items:flex-start;flex-direction:column}}

.captain-team .filters{margin-top:20px;flex-wrap:wrap}.captain-team li p{font-size:12px;margin:6px 0;color:var(--muted)}.captain-team li strong{overflow-wrap:anywhere}.captain-team h4{margin:24px 0 8px}

.bracket-scroll{overflow:auto;max-height:75vh;border:1px solid var(--line);border-radius:12px;background:#f5f7f3;padding:12px}.bracket-canvas{position:relative}.bracket-lines{position:absolute;inset:0;pointer-events:none}.bracket-lines path{fill:none;stroke:#8aab9a;stroke-width:2}.bracket-heading{position:absolute;top:8px;width:248px}.bracket-heading small{display:block;margin-top:6px;color:var(--muted)}.bracket-match{position:absolute;width:248px;min-height:130px;background:white;border:1px solid var(--line);border-radius:10px;padding:12px;box-sizing:border-box;box-shadow:0 2px 6px #0001}.bracket-match span{display:block;font-size:13px;overflow-wrap:anywhere;padding:6px 0}.bracket-match span+span{border-top:1px solid var(--line)}.bracket-match small{font-size:10px;color:var(--muted)}.bracket-pending{color:var(--muted);border-style:dashed;min-height:70px}.bracket-match:hover{border-color:var(--green)}

.completed-frame{grid-column:1/-1;display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 40px;align-items:center;gap:16px;padding:12px 16px;margin:0}.completed-frame-player{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.completed-frame-player>span{overflow-wrap:anywhere;font-size:14px}.completed-frame-number{color:var(--muted);font-size:12px}.frame-edit{display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:8px}@media(max-width:680px){.completed-frame{gap:8px;padding:10px;grid-template-columns:18px minmax(0,1fr) minmax(0,1fr) 36px}.completed-frame-player{gap:4px}.completed-frame-player>span{font-size:11px}.completed-frame .frame-outcome{font-size:9px;padding:4px}.frame-edit{min-width:36px}}

.scorebar-actions{grid-column:1/-1;display:flex;justify-content:center}.scorebar-actions button{min-height:44px;padding:10px 20px;background:#e7f1cf;color:#153a2a}body:has(.scorebar-actions) .frames{padding-bottom:180px}body:has(.scorebar-actions) .notification-panel{bottom:calc(215px + env(safe-area-inset-bottom))}

.player-stats-table th[scope=row]{font-weight:600;text-align:left;white-space:normal;min-width:140px}.player-stats-table th small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:5px}@media(max-width:680px){.player-stats-table{padding:10px}.player-stats-table td,.player-stats-table th{padding:12px 6px;font-size:11px}.player-stats-table th[scope=row]{min-width:110px}}

.captain-contact{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0}.captain-contact+.captain-contact{border-top:1px solid var(--line)}.captain-contact h2{margin:0;font-size:18px}.captain-contact p{margin:6px 0}.captain-contact>div:last-child{display:grid;gap:10px;overflow-wrap:anywhere}.captain-contact a{color:var(--green)}@media(max-width:680px){.captain-contact{align-items:flex-start;flex-direction:column;gap:8px}}

.venue-clashes{border-left:5px solid #b96615}.venue-clashes ul{list-style:none;padding:0}.venue-clashes li+li{border-top:1px solid var(--line)}.venue-clashes a{display:grid;gap:6px;padding:14px 0}.venue-clashes small{color:var(--muted)}.has-venue-clash{background:#fff4df;padding:14px;border-left:4px solid #b96615}.clash-label{display:block;color:#8a4709;font-size:12px;margin-bottom:5px}.tie-row:target,.tie-row:focus{outline:3px solid #b96615;outline-offset:3px;scroll-margin:100px}

.singles-group-flow{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.singles-group-flow article{border:1px solid var(--line);border-radius:10px;padding:16px;margin:10px 0;display:grid;gap:10px}.singles-group-flow small{color:var(--muted)}@media(max-width:680px){.singles-group-flow{grid-template-columns:1fr;gap:0}.singles-group-flow>span{transform:rotate(90deg);justify-self:center}.singles-group-flow article{font-size:13px}}

.competition-draw-actions{position:sticky;bottom:12px;z-index:40;background:#fff;padding:14px;border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 20px #0002;margin-top:24px;flex-wrap:wrap}.competition-draw-actions small{flex-basis:100%;color:var(--muted)}@media(max-width:680px){.competition-draw-actions{bottom:max(8px,env(safe-area-inset-bottom));padding:10px}.competition-draw-actions button{flex:1}}

.sticky-group-settings{flex-basis:100%;width:100%}.sticky-group-settings:empty{display:none}.sticky-group-settings h3{margin:0 0 10px}.sticky-group-settings p{font-size:11px;margin:6px 0}.sticky-group-settings label{margin:8px 0}.competition-draw-actions{max-height:65dvh;overflow-y:auto}

.group-draw-details>summary{cursor:pointer;color:var(--green);font-weight:600;padding:10px 0}.singles-group:has(.group-draw-details:not([open])){padding-top:14px;padding-bottom:10px}.singles-group:has(.group-draw-details:not([open])) h3{margin-top:0}.singles-group .form-grid label{margin-bottom:6px}

.compact-admin-group,.compact-admin-group:has(.group-draw-details:not([open])){padding:10px 14px;margin:8px 0;display:grid;grid-template-columns:minmax(200px,1fr) minmax(280px,1.3fr);column-gap:20px;align-items:center}.compact-admin-group h3{grid-column:1;margin:0;font-size:14px;line-height:1.4}.compact-admin-group>p{grid-column:1;margin:3px 0;font-size:11px}.compact-admin-group>.form-grid{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin:0}.compact-admin-group .form-grid label{margin:0;font-size:10px;gap:3px}.compact-admin-group select{padding:7px 9px;margin:3px 0 0;min-height:36px;width:100%}.compact-admin-group>.group-draw-details{grid-column:1/-1}.compact-admin-group .group-draw-details>summary{padding:5px 0 0;font-size:11px}.compact-admin-group .singles-group-flow article{padding:10px;margin:6px 0}@media(max-width:680px){.compact-admin-group,.compact-admin-group:has(.group-draw-details:not([open])){grid-template-columns:1fr;padding:10px;margin:6px 0;gap:2px}.compact-admin-group>.form-grid{grid-column:1;grid-row:auto;margin-top:4px}.compact-admin-group h3{font-size:13px}.compact-admin-group select{min-height:40px}}

.singles-score-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.singles-score-entry label{font-size:11px;margin:0}.singles-score-entry input{width:100%;min-width:0;padding:8px}.singles-score-entry button{grid-column:1/-1}

.collapsible-card>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;list-style:none;min-height:44px;font-size:20px}.collapsible-card>summary::-webkit-details-marker{display:none}.round-toggle{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;background:#e0eee5;color:var(--green)}.round-toggle svg{width:22px;height:22px;transition:transform .2s}.collapsible-card[open]>summary .round-toggle svg{transform:rotate(180deg)}.collapsible-card>summary:focus-visible{outline:2px solid var(--green);outline-offset:6px;border-radius:5px}

.team-admin-grid{margin-bottom:18px}.team-list-panel{contain:size;display:flex;flex-direction:column;min-height:0;margin-bottom:0}.team-list-panel>h2,.team-list-panel>.filters{flex-shrink:0}.team-list-scroll{overflow-y:auto;min-height:0;flex:1;scrollbar-gutter:stable;padding-right:8px;overscroll-behavior-y:contain}.team-list-scroll:focus-visible{outline:2px solid var(--green);outline-offset:3px}.team-list-scroll .list-row>div:first-child{min-width:0;overflow-wrap:anywhere}.team-editor-panel{margin-bottom:40px}@media(max-width:850px){.team-list-panel{contain:none;max-height:460px}.team-list-scroll{max-height:340px;flex:auto}.team-editor-panel{margin-bottom:0}}

.team-list-heading{flex-shrink:0;margin-bottom:16px}.team-list-heading h2{margin:0}.team-list-toggle{padding:0}.team-list-toggle:focus-visible{outline:2px solid var(--green);outline-offset:3px}.team-list-expanded .team-list-toggle svg{transform:rotate(180deg)}.team-list-expanded .team-list-panel{contain:none;max-height:none}.team-list-expanded .team-list-scroll{overflow:visible;max-height:none;flex:none}.team-list-expanded .team-editor-panel{align-self:start}

.all-players-list{max-height:65vh;overflow-y:auto;scrollbar-gutter:stable;padding-right:8px}.all-players-list .list-row>div{min-width:0;overflow-wrap:anywhere}

.player-filters{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:18px}.player-edit-modal{border:1px solid var(--line);border-radius:14px;padding:24px;width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow-y:auto;color:var(--ink);background:white;box-shadow:0 20px 70px #0004}.player-edit-modal::backdrop{background:#102d2999}.player-edit-modal .section-title h2{margin:0}.player-edit-modal .round-toggle{padding:0;font-size:24px}.modal-validation{padding:12px;background:#fdebe7;color:#963f35;border-radius:7px}body:has(.player-edit-modal[open]){overflow:hidden}@media(max-width:680px){.player-filters{grid-template-columns:1fr;gap:0}.player-edit-modal{padding:18px}.player-edit-modal .form-grid{grid-template-columns:1fr}}

.all-players-list .compact-player-row{padding:5px 0;gap:12px}.compact-player-row .player-row-details{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:12px;row-gap:2px}.player-row-team{color:var(--muted);font-size:12px}.all-players-list .player-row-edit{width:34px;height:34px;min-width:34px;padding:7px}.player-row-edit svg{width:18px;height:18px}.player-row-edit:focus-visible{outline:2px solid var(--green);outline-offset:2px}@media(pointer:coarse){.all-players-list .player-row-edit{width:44px;height:44px;min-width:44px}}

.teams-detail-layout .team-details-panel{min-height:490px}.team-select{background:none;color:var(--ink);text-align:left;padding:0;flex:1;min-width:0}.team-select small{font-weight:400}.team-action{padding:0!important;font-size:24px;width:38px;height:38px;min-width:38px}.team-action svg{width:18px;height:18px}.team-action:focus-visible,.team-select:focus-visible{outline:2px solid var(--green);outline-offset:3px}.team-detail-players{max-height:390px;overflow-y:auto;scrollbar-gutter:stable}.team-detail-players .list-row{padding:7px 0}.team-detail-players .list-row>div{min-width:0;overflow-wrap:anywhere}.teams-detail-layout .team-list-toggle{padding:0}.team-list-expanded .team-detail-players{max-height:none}@media(max-width:850px){.teams-detail-layout .team-details-panel{min-height:0}}

.transfer-section{border-top:1px solid var(--line);margin-top:20px;padding-top:8px}.transfer-section p{margin:6px 0;font-size:12px}

.captain-highlight{background:#edf5ee;border:1px solid #cee1d2;border-radius:9px;padding:10px 14px;margin:10px 0 18px}.captain-highlight h3{margin:0 0 6px;color:var(--green)}

.all-players-list,.teams-detail-layout .team-detail-players{max-height:none;overflow:visible;scrollbar-gutter:auto}.teams-detail-layout .team-list-panel{contain:none;max-height:none;align-self:start}.teams-detail-layout .team-list-scroll{max-height:none;overflow:visible;flex:none;scrollbar-gutter:auto}.teams-detail-layout .team-details-panel{min-height:0;align-self:start}

.teams-detail-layout .team-details-panel{margin-bottom:0;min-height:340px}.teams-detail-layout:not(.team-list-expanded) .team-list-panel{contain:size;align-self:stretch;min-height:0}.teams-detail-layout:not(.team-list-expanded) .team-list-scroll{flex:1;min-height:0;overflow-y:auto;scrollbar-gutter:stable}@media(max-width:850px){.teams-detail-layout:not(.team-list-expanded) .team-list-panel{contain:none;max-height:460px}.teams-detail-layout:not(.team-list-expanded) .team-list-scroll{max-height:340px}.teams-detail-layout .team-details-panel{min-height:0}}

.teams-detail-layout .team-list-panel,.teams-detail-layout:not(.team-list-expanded) .team-list-panel{min-height:calc(100dvh - 310px);min-height:max(340px,calc(100dvh - 310px))}@media(max-width:850px){.teams-detail-layout .team-list-panel,.teams-detail-layout:not(.team-list-expanded) .team-list-panel{min-height:max(340px,calc(100dvh - 280px));max-height:none}.teams-detail-layout:not(.team-list-expanded) .team-list-scroll{max-height:max(340px,calc(100dvh - 420px))}}

.remove-player-action{background:#a13c32;color:white;border:1px solid #a13c32;margin-top:12px}.player-remove-icon{background:#fbe9e5;color:#963f35;width:36px;height:36px;padding:8px!important;flex-shrink:0}.player-remove-icon svg{width:20px;height:20px}.team-detail-players .list-row>div:first-child,.compact-player-row .player-row-details{flex:1}

.venue-list-row{padding:14px 12px}.venue-active{background:#edf5ee;border-left:4px solid var(--green);border-radius:7px;margin:5px 0}.venue-list-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.venue-active-badge{background:#d7eadd;color:#206349;border-radius:20px;padding:4px 9px;font-size:10px;font-weight:600}

.venue-fixture-report{background:white;border:1px solid var(--line);border-radius:10px;padding:18px}.venue-fixture-report>h2{margin-top:0}.venue-report-week h3{margin:16px 0 4px;padding-bottom:5px;border-bottom:1px solid var(--line)}.venue-report-match{display:grid;grid-template-columns:minmax(0,1.6fr) 48px minmax(0,1fr);gap:10px;align-items:baseline;padding:5px 0;font-size:12px}.venue-report-score{text-align:center;font-variant-numeric:tabular-nums}.venue-report-location{color:var(--muted);font-size:11px}@media(max-width:600px){.venue-report-match{grid-template-columns:minmax(0,1fr) 40px}.venue-report-location{grid-column:1/-1}}@media print{body:has(.venue-fixture-report){background:white;color:black}body:has(.venue-fixture-report) aside,body:has(.venue-fixture-report) header,body:has(.venue-fixture-report) footer,body:has(.venue-fixture-report) .filters,body:has(.venue-fixture-report) main>h1,body:has(.venue-fixture-report) main>p,body:has(.venue-fixture-report) .notification-panel{display:none!important}body:has(.venue-fixture-report) .workspace{margin:0;width:100%}body:has(.venue-fixture-report) main{padding:0;max-width:none}.venue-fixture-report{border:0;padding:0}.venue-report-match{grid-template-columns:minmax(0,1.6fr) 40px minmax(0,1fr);gap:8px;padding:3px 0;font-size:10pt;break-inside:avoid}.venue-report-location{grid-column:auto;font-size:9pt;color:#333}.venue-report-week h3{font-size:11pt;break-after:avoid;margin-top:12px}.venue-fixture-report>h2{font-size:15pt}.venue-fixture-report a{color:black;text-decoration:none}}

.game-frame-score{border-top:1px solid var(--line);padding-top:12px;margin-top:16px}.game-frame-score p{margin:4px 0}

/* Multi-league directory and owner workspace. */
.shell { --green: var(--league-colour, #087f69); }
.brand .brand-name { color:#fff; font-size:21px; line-height:1.3; display:block; letter-spacing:-.5px; }
.brand small { line-height:1.6; margin-top:9px; }
.league-logo { position:absolute; left:0; top:0; width:32px; height:32px; object-fit:contain; border-radius:50%; background:white; }
.league-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:20px; margin:24px 0; }
.league-card { border-top:4px solid var(--card-colour); display:flex; flex-direction:column; min-width:0; margin:0; }
.league-card h2 { line-height:1.35; margin:20px 0 6px; }
.league-card p { line-height:1.6; }
.league-card > .button { align-self:flex-start; margin-top:auto; background:var(--card-colour); }
.league-card-top { display:flex; justify-content:space-between; align-items:center; }
.league-monogram { display:grid; place-items:center; width:46px; height:46px; border-radius:13px; background:var(--card-colour); color:white; font-size:22px; font-weight:800; }
.league-card-meta { display:flex; gap:20px; color:var(--muted); padding:16px 0 24px; font-size:12px; }
.league-search { max-width:480px; }
.league-setup { border:1px solid #b4cfc4; margin-top:28px; }
.league-setup h3 { margin-top:28px; }
input[type=color] { height:44px; padding:4px; }
input:disabled { background:#f2f4f3; color:#677773; }
.section-title { gap:16px; flex-wrap:wrap; }
@media(max-width:680px) { .brand .brand-name { font-size:19px; } .league-grid { gap:14px; } header > span:first-child { max-width:45%; font-size:10px; } .league-card-meta { flex-wrap:wrap; gap:8px 16px; } }
.section-title a.button { color:#fff; }

/* Compact captain frame selection, with status in the frame heading. */
.frames .frame{padding:14px 16px;margin-bottom:10px}
.frame .card-meta{margin-bottom:10px;gap:8px;flex-wrap:wrap;line-height:1.5}
.frame .frame-sides{gap:14px}
.frame .frame-sides>div{min-width:0}
.frame .frame-sides select{margin-top:0;padding:9px 10px}
.frame .frame-sides select+select{margin-top:6px}
.frame .frame-sides p{margin:0;min-height:38px;display:flex;align-items:center}
.frame .batch-lock-controls{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.frame .batch-lock-controls p{margin:4px 0;font-size:12px;line-height:1.5}
.frame .batch-lock-controls button{margin:6px 0}

.frames > .batch-lock-controls{background:white;border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin:-2px 0 18px}
.frames > .batch-lock-controls p{font-size:12px;line-height:1.5;margin:4px 0 8px}

.frame-player-side{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.frame-player-side>p{flex:1;min-width:0;overflow-wrap:anywhere}
.frame-player-side>select{flex-basis:100%}
.frame .frame-sides .frame-award{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;padding:0;border-radius:6px}
.frame-award:focus-visible{outline:2px solid var(--green);outline-offset:3px}

.announcement-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px;background:#edf2f0;border-radius:8px 8px 0 0}
.announcement-toolbar button{min-width:40px;padding:10px}
.announcement-toolbar label{display:flex;align-items:center;gap:8px;margin:0 0 0 8px}
.announcement-toolbar select{width:auto;margin:0;padding:8px}
.announcement-editor{min-height:200px;max-height:500px;overflow:auto;border:1px solid #cfdad4;border-radius:0 0 8px 8px;padding:18px;font-size:18px;line-height:1.6;white-space:pre-wrap;background:white}
.announcement-editor:focus{outline:2px solid var(--green);outline-offset:2px}
.league-announcement{border:0;border-radius:20px;padding:36px;max-width:600px;width:calc(100% - 32px);max-height:85vh;overflow:auto;box-shadow:0 24px 90px #082c3650;color:var(--ink)}
.league-announcement::backdrop{background:#0a262bbc;backdrop-filter:blur(5px)}
.announcement-accent{height:7px;position:absolute;top:0;left:0;right:0;background:linear-gradient(90deg,#167d64,#b9d684)}
.announcement-close{position:absolute;right:14px;top:14px;padding:4px 12px;font-size:24px}
.league-announcement h2{font-size:26px;margin:16px 0 22px}
.announcement-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}
.announcement-done{margin-top:28px}
@media(max-width:680px){.league-announcement{padding:30px 22px}.league-announcement h2{font-size:23px}}

.diary-table{padding:8px 20px}.diary-table table{white-space:normal}.diary-table th:first-child{width:160px}.diary-table th small{display:block;margin-top:5px;font-weight:400}.diary-table td div+div{margin-top:8px}.diary-note{font-size:12px}
@media print{
body:has(.season-diary){background:white;color:black;font-size:11pt}
body:has(.season-diary) aside,body:has(.season-diary) header,body:has(.season-diary) footer,body:has(.season-diary) .notification-panel,body:has(.season-diary) #blazor-error-ui,.diary-print{display:none!important}
body:has(.season-diary) .shell{display:block}body:has(.season-diary) .workspace{width:100%;margin:0}body:has(.season-diary) main{max-width:none;padding:0;margin:0}
.season-diary .heading{display:block}.season-diary h1{font-size:24pt}.season-diary p,.season-diary .eyebrow{color:black}.diary-table{border:0;padding:0}.diary-table table{width:100%}.diary-table thead{display:table-header-group}.diary-table tr{break-inside:avoid}.diary-table th,.diary-table td{color:black;font-size:10pt;padding:9px 6px;border-bottom:1px solid #bbb}.diary-table th:first-child{width:30%}
}

.diary-columns{columns:2;column-gap:24px;background:white;border:1px solid var(--line);border-radius:10px;padding:12px 18px}
.diary-entry{break-inside:avoid;display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.45}
.diary-date{flex:0 0 80px;font-weight:600;font-variant-numeric:tabular-nums}.diary-date small{display:block;color:var(--muted);font-weight:400;font-size:10px}.diary-events{min-width:0;overflow-wrap:anywhere}.diary-events>div+div{margin-top:4px}
@media(min-width:1450px){.diary-columns{columns:3}}
@media(max-width:680px){.diary-columns{columns:1}}
@media print{.diary-options{display:none!important}.diary-columns{columns:2;column-gap:20px;border:0;padding:0}.diary-entry{font-size:9pt;padding:6px 0;gap:9px}.diary-date{flex-basis:72px}.diary-date small{font-size:8pt;color:black}.season-diary h1{margin:8px 0;font-size:20pt}.season-diary .heading p{margin:4px 0 12px}}

.captain-sign-in{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;width:36px;height:36px;padding:0}.captain-sign-in:focus-visible{outline:2px solid var(--green);outline-offset:3px}

nav .notification-count{background:#1565c0;color:#fff;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;font-size:12px;font-weight:700;margin:0 0 0 auto;flex-shrink:0;line-height:1}

.approval-indicator{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 18px;border-radius:50%;background:#c62828;color:#fff;font:700 13px/1 Arial,sans-serif;vertical-align:middle;margin:0 3px}

.scorecard-set{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:14px;overflow:hidden}
.scorecard-set>summary{display:flex;align-items:center;gap:14px;margin:0;padding:16px;list-style:none;background:#edf2f0}
.scorecard-set>summary::-webkit-details-marker{display:none}.scorecard-set>summary>span{font-size:12px;color:var(--muted)}.scorecard-set .set-chevron{margin-left:auto;font-size:20px}.scorecard-set[open] .set-chevron{transform:rotate(180deg)}
.set-content{padding:12px}.set-content .batch-lock-controls{padding:10px 4px}.set-content .batch-lock-controls p{font-size:12px;line-height:1.5;margin:5px 0}.set-content .admin-grid{margin-bottom:6px}
.scorebar{padding-right:76px}.scorecard-help-button{position:absolute;right:20px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;padding:0;background:#fff;color:#163b30;border:1px solid #c5d9cc}
.scorecard-help-dialog{text-align:left;color:var(--ink)}.scorecard-help-dialog p{font-size:14px;font-weight:400}
@media(max-width:680px){.scorebar{padding-right:60px}.scorecard-help-button{right:12px}.scorecard-set>summary{gap:8px;padding:12px}.scorecard-set>summary>span{font-size:10px}.set-content{padding:8px}}

.scorebar-actions{justify-content:flex-start;align-items:center;gap:14px;flex-wrap:wrap}.scorebar-selection{font-size:11px;font-weight:400;color:#c0d0c8;letter-spacing:0;text-align:left}.set-content .batch-lock-controls{border:0;margin:6px 0;padding:0}

/* Keep the match action centred independently of the progress text. */
.scorebar-actions{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);width:100%;gap:14px}
.scorebar-actions .scorebar-selection{grid-column:1;grid-row:1}
.scorebar-actions>button{grid-column:2;grid-row:1;justify-self:center}
@media(max-width:680px){.scorebar-actions{gap:8px}.scorebar-actions .scorebar-selection{font-size:10px}.scorebar-actions>button{padding:10px 12px}}

.player-order-guidance{margin:18px 0 8px;padding:12px 16px;border:1px solid #dce5df;border-radius:10px;background:#f5f8f6;color:#52635a;font-size:13px;line-height:1.5}

.scorebar>.player-order-guidance{position:absolute;bottom:100%;left:0;right:0;margin:0 0 8px;text-align:left;letter-spacing:normal;font-weight:400;box-shadow:0 2px 12px #0001}body:has(.player-order-guidance) .frames{padding-bottom:300px}@media(max-width:680px){.scorebar>.player-order-guidance{font-size:11px;padding:8px 12px}body:has(.player-order-guidance) .frames{padding-bottom:340px}}

.scorebar>.player-order-guidance{background:#fff3cf;color:#493914;border:1px solid #e6b74e;border-left:5px solid #dfa520;box-shadow:0 5px 20px #142f302b;padding:13px 17px;border-radius:12px;line-height:1.45}.scorebar .player-order-heading{display:flex;align-items:center;gap:9px;margin-bottom:5px;color:#714b00;font-size:14px;font-weight:750;white-space:normal;letter-spacing:.01em}.player-order-heading>span{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;flex-shrink:0;border-radius:50%;background:#e9ae27;color:#342500;font-size:19px}@media(max-width:680px){.scorebar>.player-order-guidance{padding:10px 12px}.scorebar .player-order-heading{font-size:12px;margin-bottom:4px}.player-order-heading>span{width:21px;height:21px;font-size:16px}}

.diary-entry.diary-next{background:#eaf4df;border:2px solid #507e38;border-radius:10px;padding:12px;box-shadow:0 3px 10px #163b3012}.diary-next-label{display:inline-block;margin-bottom:5px;padding:3px 8px;border-radius:20px;background:#315f29;color:#fff;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}@media print{.diary-entry.diary-next{border:2px solid #315f29;box-shadow:none}.diary-next-label{background:none;color:#000;padding:0}}

.mobile-menu-toggle,.mobile-collapse-toggle,.mobile-division,.mobile-points{display:none}
@media(max-width:680px){
.shell aside{position:relative;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.shell aside .brand{flex:1;min-width:0}.mobile-menu-toggle{display:flex;align-items:center;gap:6px;padding:9px 12px;background:#fff;color:#163b30;border:1px solid #abc4b8;border-radius:8px}.shell aside>nav{display:none;width:100%;flex-basis:100%;flex-direction:column;overflow:visible}.shell aside.mobile-menu-open>nav{display:flex}.shell aside>.nav-label,.shell aside>.sidebar-footer{display:none}.shell aside nav a{width:100%;box-sizing:border-box}
.mobile-collapse{border:1px solid #dce5df;border-radius:10px;margin:12px 0;background:#fff;overflow:hidden}.mobile-collapse-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;padding:12px 14px;background:#edf3ef;color:#163b30;text-align:left}.mobile-collapse-body{display:none;padding:12px}.mobile-collapse.expanded>.mobile-collapse-body{display:block}.mobile-collapse-body .filters{margin:0 0 8px}.mobile-collapse-body select{width:100%;min-width:0}
.desktop-points{display:none}.mobile-points{display:table-cell}.standings-table{min-width:0;width:100%;font-size:11px}.standings-table th,.standings-table td{padding:9px 5px}.standings-table th:nth-child(2),.standings-table td:nth-child(2){min-width:90px;max-width:115px;white-space:normal}
.desktop-division{display:none}.mobile-division{display:inline}.stats-controls{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;overflow-x:auto;padding:4px 0}.stats-controls .filters{display:flex;flex-wrap:nowrap;gap:4px;margin:0;flex-shrink:0}.stats-controls button{padding:8px 7px;font-size:11px;white-space:nowrap}.stats-controls .filters:last-child{border-left:1px solid #c6d6cb;padding-left:6px}
}

@media(max-width:680px){.shell aside{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:10px}.shell aside .brand{grid-column:1;grid-row:1;width:auto;min-width:0;margin:0}.shell aside .mobile-menu-toggle{grid-column:2;grid-row:1;display:flex;justify-content:center;align-items:center;width:42px;height:42px;padding:0;border-radius:50%;flex-shrink:0;background:#fff;color:#163b30;box-shadow:0 2px 6px #0002}.shell aside>nav{grid-column:1/-1}}

.announcement-overlay{position:fixed;inset:0;z-index:10020;display:flex;align-items:center;justify-content:center;background:#0a262bbc;padding:16px;overscroll-behavior:contain}.announcement-overlay .league-announcement{position:relative;background:#fff;margin:auto;width:100%;box-sizing:border-box;max-height:85vh;max-height:85dvh}.announcement-overlay button{touch-action:manipulation}body:has(.announcement-overlay){overflow:hidden}

body:has(.scorebar) .notification-panel.scorebar-notification{transform:none;box-sizing:border-box;margin:0;border-radius:0;border:0;border-top:3px solid #b9d684;background:#163b30;color:#fff;max-height:45dvh;padding:16px 24px;box-shadow:0 -3px 20px #12332728}
.scorebar>.player-order-guidance{position:absolute;inset:0;margin:0;border-radius:0;z-index:2;overflow:auto;box-sizing:border-box;background:#163b30;color:#fff;border:0;border-top:3px solid #e9ae27;box-shadow:none;padding:12px 22px}.scorebar .player-order-heading{color:#f5d67e}body:has(.player-order-guidance) .frames{padding-bottom:180px}
@media(max-width:680px){body:has(.scorebar) .notification-panel.scorebar-notification{padding:12px 16px}.scorebar>.player-order-guidance{padding:9px 14px}}

.message-close{position:absolute;top:10px;right:12px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:50%;background:#fff;color:#163b30;border:1px solid #c5d9cc;cursor:pointer}.message-close:hover{background:#e7f1cf}.message-close:focus-visible{outline:3px solid #e9ae27;outline-offset:2px}.notification-panel,.scorebar>.player-order-guidance{padding-right:58px}body:has(.scorebar) .notification-panel.scorebar-notification{padding-right:58px}.notification-panel>.message-close{margin:0;padding:0;border:1px solid #c5d9cc}@media(max-width:680px){.scorebar>.player-order-guidance{padding-right:54px}}

.fixture-reset-row{display:flex;align-items:center;gap:10px}.fixture-reset-row>a{flex:1;min-width:0}.fixture-reset-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;padding:0;margin:6px 10px 6px 0;background:#edf3ef;color:#315f48;border:1px solid #bdcfc3}.fixture-reset-button:hover{background:#fbe7df;color:#9b3520}.reset-error{color:#a22c22}.fixture-reset-row .announcement-overlay{text-align:left}

.frame-result-buttons{display:flex;gap:6px;flex-shrink:0}.frame-result-buttons .frame-award{font-weight:700}

/* League admin icon navigation */
.admin-toolbar{display:flex;overflow:visible;align-items:center;flex-wrap:wrap;gap:7px;width:fit-content;max-width:100%;box-sizing:border-box;padding:10px;margin:24px 0 0;background:linear-gradient(135deg,#fff,#edf4f0);border:1px solid #d1e0d8;border-radius:20px;box-shadow:0 8px 24px #163b3010,inset 0 1px 0 #fff}
.admin-toolbar .admin-tool{position:relative;display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;flex-shrink:0;padding:0;margin:0;border:1px solid transparent;border-radius:13px;background:transparent;color:#507365;text-decoration:none;transition:background .18s,color .18s,box-shadow .18s,transform .18s}
.admin-tool svg{width:24px;height:24px}.admin-toolbar .admin-tool:hover{background:#e1eee6;color:#173e30;transform:translateY(-2px)}.admin-toolbar .admin-tool.active{background:linear-gradient(140deg,#387b63,#1d4f3e);color:#fff;border-color:#245e49;box-shadow:0 4px 10px #163b302b}.admin-toolbar .admin-tool:focus-visible{outline:3px solid #d6ad43;outline-offset:3px}
.admin-tool-tip{position:absolute;left:50%;bottom:calc(100% + 11px);transform:translateX(-50%) translateY(4px);padding:8px 11px;background:#173e30;color:white;border-radius:8px;font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap;box-shadow:0 4px 12px #102d3026;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s,transform .15s;z-index:20}.admin-tool-tip:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-top-color:#173e30}.admin-tool:hover .admin-tool-tip,.admin-tool:focus-visible .admin-tool-tip{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.admin-tool:first-child .admin-tool-tip{left:0;transform:translateY(0)}.admin-tool:last-child .admin-tool-tip{left:auto;right:0;transform:translateY(0)}
.admin-toolbar-divider{width:1px;height:28px;background:#cdded4;margin:0 3px}.admin-toolbar-current{font-size:12px;font-weight:700;letter-spacing:.04em;color:#426554;margin:12px 0 24px;padding-left:12px}
@media(max-width:680px){.admin-toolbar{gap:5px;padding:8px;border-radius:16px}.admin-toolbar .admin-tool{width:44px;height:44px}.admin-toolbar-divider{display:none}.admin-tool-tip{font-size:11px}}
@media(prefers-reduced-motion:reduce){.admin-toolbar .admin-tool,.admin-tool-tip{transition:none}.admin-toolbar .admin-tool:hover{transform:none}}

.fixture-filter-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 24px}.search-filter{position:relative;min-width:0}.search-filter>label{display:block;margin:0 0 6px;font-size:11px;font-weight:700;color:#547263}.search-filter .search-filter-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0;height:44px;padding:0 12px;background:#fff;color:#234b3b;border:1px solid #cbdcd2;border-radius:10px;text-align:left;font-size:13px;box-shadow:0 2px 5px #163b3006}.search-filter-trigger>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-filter-trigger:hover{border-color:#568870}.search-filter-trigger:focus-visible{outline:3px solid #d6ad43;outline-offset:2px}.search-filter-dismiss{position:fixed;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:transparent!important;z-index:40;cursor:default}.search-filter-popup{position:absolute;top:calc(100% + 7px);left:0;width:100%;min-width:210px;box-sizing:border-box;padding:8px;background:#fff;border:1px solid #cbdcd2;border-radius:12px;box-shadow:0 12px 30px #173e3026;z-index:41}.search-filter:last-child .search-filter-popup{left:auto;right:0}.search-filter-popup input{width:100%;min-width:0;box-sizing:border-box;margin:0 0 6px;padding:9px;font-size:13px}.search-filter-options{max-height:260px;overflow:auto}.search-filter-options button{display:block;width:100%;text-align:left;border:0;border-radius:6px;background:#fff;color:#234b3b;padding:9px;font-size:13px;white-space:normal}.search-filter-options button:hover,.search-filter-options button:focus-visible{background:#edf4ee}.search-filter-options button.chosen{background:#dfeee3;font-weight:700}.search-filter-options p{font-size:12px;padding:8px;color:#64796e}
@media(max-width:680px){.mobile-collapse:has(.fixture-filter-row){overflow:visible}.fixture-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.search-filter-popup{min-width:0;width:max(100%,190px)}.search-filter:nth-child(2n) .search-filter-popup{left:auto;right:0}}

.standings-table tr.promotion-cutoff>td{border-bottom:3px dotted #25865d}.standings-table tr.relegation-cutoff>td{border-top:3px dotted #be6547}.standings-cutoff-key{display:flex;flex-wrap:wrap;gap:22px;margin:-5px 0 28px;font-size:12px;color:#52685d}.standings-cutoff-key span:before{content:"";display:inline-block;width:28px;margin-right:8px;vertical-align:middle;border-top:3px dotted #25865d}.standings-cutoff-key .relegation-key:before{border-color:#be6547}

.doubles-entries>.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.doubles-entries>.form-grid>.search-filter:first-child{grid-column:1/-1}.doubles-entries>.form-grid>.search-filter:nth-child(2) .search-filter-popup{left:0;right:auto}.doubles-entries>.form-grid>.search-filter:nth-child(3) .search-filter-popup{left:auto;right:0}

.match-pace{display:flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:8px;background:#183c35;color:#fff;white-space:nowrap;font-size:.85rem}.scorebar .match-pace small{color:inherit;font-size:.7rem}.match-pace.match-pace-late{background:#790f19;color:#fff}.scorebar-actions{flex-wrap:wrap}

.scorebar .match-pace strong{font-size:.8rem;line-height:1.25}.scorebar .match-pace small{font-size:.65rem;line-height:1.3}

/* Private captain/admin inbox */
.questions-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.questions-heading h1{margin:8px 0}.questions-heading p{margin:0;color:#657873}.questions-heading>button{flex-shrink:0}
.questions-inbox{display:grid;grid-template-columns:minmax(230px,31%) minmax(0,1fr);background:#fff;border:1px solid #dde6e1;border-radius:16px;overflow:hidden;box-shadow:0 8px 30px #163b3008;min-height:540px}.questions-list{background:#fafcfb;border-right:1px solid #e1e9e5;min-width:0}.questions-list-title{padding:24px 20px 18px;border-bottom:1px solid #e1e9e5;display:flex;align-items:center;justify-content:space-between;gap:8px}.questions-list-title h2{font-size:17px;margin:0}.questions-list-title>span{font-size:11px;color:#677b73}.questions-list-empty{padding:26px 20px;color:#6b7e76}
.questions-list .question-preview{display:block;width:100%;text-align:left;border-radius:0;background:transparent;color:var(--ink);padding:18px 20px;border-bottom:1px solid #e8eeeb;font-weight:400;border-left:3px solid transparent}.questions-list .question-preview:hover{background:#f0f6f2;filter:none}.questions-list .question-preview.is-current{background:#eaf4ee;border-left-color:#167d64}.question-preview-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#61766b}.question-preview-top>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.question-preview-top time{flex-shrink:0}.question-preview-subject{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;margin:9px 0 6px;overflow-wrap:anywhere}.question-unread{height:7px;width:7px;flex-shrink:0;background:#167d64;border-radius:50%}.question-preview-snippet{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#697c73;font-size:12px}
.questions-thread{min-width:0;display:flex;flex-direction:column}.questions-thread-heading{padding:25px 28px 20px;border-bottom:1px solid #e5ece8;display:flex;justify-content:space-between;align-items:center;gap:12px}.questions-thread-heading h2{margin:8px 0;font-size:22px;overflow-wrap:anywhere}.questions-thread-heading p{color:#6a7e74;font-size:12px;margin:0}.question-messages{padding:28px;display:flex;flex-direction:column;gap:24px;flex:1}.question-message-row{max-width:90%;align-self:flex-start;min-width:0}.question-message-row.is-mine{align-self:flex-end}.question-message-meta{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:11px;color:#6b7c75;margin-bottom:8px}.question-message-meta strong{font-weight:600;color:#3b5248;overflow-wrap:anywhere}.question-role{background:#eef3f0;padding:2px 6px;border-radius:4px;font-size:10px}.question-bubble{background:#f0f4f2;border:1px solid #e6ede8;border-radius:2px 13px 13px 13px;padding:14px 17px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}.is-mine .question-bubble{background:#e9f4ed;border-color:#d8e9dd;border-radius:13px 2px 13px 13px}.question-reply{border-top:1px solid #e5ece8;padding:22px 28px;background:#fcfdfc}.question-compose{padding:28px}.questions-inbox textarea{display:block;width:100%;font:inherit;line-height:1.6;padding:13px 15px;border:1px solid #ccd9d1;border-radius:9px;background:white;color:var(--ink);resize:vertical;min-height:100px;box-sizing:border-box}.questions-inbox textarea:focus{outline:2px solid #167d64;outline-offset:2px}.question-compose-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:14px}.question-compose-actions>span{margin-right:auto;color:#6a7e74;font-size:11px}.questions-empty{padding:60px 30px;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;text-align:center}.questions-empty-symbol{width:64px;height:64px;display:grid;place-items:center;border-radius:20px;background:#ecf4ee;color:#39785b;font-size:30px}.questions-empty h2{margin:22px 0 10px}.questions-empty p{color:#697d72;line-height:1.7;max-width:340px;margin:0 0 24px}
@media(max-width:780px){.questions-heading{align-items:flex-start;flex-wrap:wrap}.questions-inbox{grid-template-columns:1fr;min-height:0}.questions-list{border-right:0;border-bottom:1px solid #dde6e1;max-height:300px;overflow-y:auto}.questions-thread-heading,.question-messages,.question-reply,.question-compose{padding:20px}.question-message-row{max-width:100%}.question-compose-actions{flex-wrap:wrap}.questions-thread-heading{flex-wrap:wrap}.questions-empty{padding:40px 20px}}

.captains-heading{margin-bottom:28px}.captains-heading h1{margin:8px 0 10px}.captains-heading p{color:#657873;margin:0}.captains-search{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.captains-search label{flex:1;max-width:550px;margin:0}.captains-search input{background:#fff;border-radius:10px;padding:14px 16px}.captains-search>span{font-size:12px;color:#63776d;white-space:nowrap;padding-bottom:14px}.captains-directory{display:grid;grid-template-columns:repeat(auto-fit,minmax(275px,1fr));gap:20px}.captain-card{background:#fff;border:1px solid #dfe7e2;border-radius:14px;padding:24px;min-width:0;box-shadow:0 5px 20px #163b3005}.captain-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.captain-team-mark{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;border-radius:12px;background:#eaf3ed;color:#246347;font-size:15px;font-weight:700;letter-spacing:.04em}.captain-division{font-size:11px;color:#587365;background:#f2f6f3;border-radius:6px;padding:6px 9px;overflow-wrap:anywhere}.captain-card h2{font-size:21px;margin:0 0 22px;overflow-wrap:anywhere}.captain-label{font-size:9px;letter-spacing:.12em;font-weight:700;color:#708377}.captain-person p{font-size:15px;color:#324c3e;margin:7px 0 22px;font-weight:500;overflow-wrap:anywhere}.captain-details{border-top:1px solid #e8eee9;padding-top:16px;display:grid;gap:15px}.captain-details>div{display:grid;gap:5px}.captain-detail-label{font-size:11px;color:#718276}.captain-details a{font-size:13px;color:#216448;overflow-wrap:anywhere;line-height:1.6}.captain-details a:hover{text-decoration:underline}.captain-details a span{margin-left:5px;color:#6c8e7b}.captain-missing{font-size:12px;color:#849189}.captains-empty{padding:50px 20px;text-align:center;border:1px dashed #ccdcd2;border-radius:14px}.captains-empty p{color:#677e70}@media(max-width:680px){.captains-search{align-items:stretch;gap:8px;flex-direction:column}.captains-search>span{padding:0}.captains-directory{grid-template-columns:1fr}.captain-card{padding:22px}}

.ranking-rules{max-width:760px;display:grid;gap:8px;margin:22px 0}.ranking-rule{display:flex;align-items:center;gap:14px;padding:12px 16px;border:1px solid #e2e9e5;border-radius:10px;background:#fafcfb}.ranking-rule.is-selected{background:#f0f7f2;border-color:#d3e4d9}.ranking-priority{font-weight:700;color:#48705a;min-width:20px;text-align:center}.ranking-rule label.check{flex:1;min-width:0;margin:0;align-items:center}.ranking-rule label small{display:block;font-size:11px;font-weight:400;color:#64776b;margin-top:4px;line-height:1.4}.ranking-move{display:flex;gap:6px;flex-shrink:0}.ranking-move button{padding:9px 13px}.ranking-preview{line-height:1.8;overflow-wrap:anywhere}@media(max-width:480px){.ranking-rule{gap:8px;padding:12px 8px}.ranking-move button{padding:10px;min-width:40px}.ranking-priority{min-width:14px}}

.ranking-rules .ranking-rule{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px}.ranking-rules .ranking-label{display:flex;flex-direction:row;align-items:center;gap:10px;margin:0;min-width:0}.ranking-rules .ranking-label input{width:16px;height:16px;margin:0;flex:0 0 16px}.ranking-rules .ranking-label span{line-height:1.3}.ranking-rules .ranking-move{display:flex;flex-direction:row;flex-wrap:nowrap;margin:0;gap:6px}.ranking-rules .ranking-move button{margin:0}@media(max-width:480px){.ranking-rules .ranking-rule{grid-template-columns:18px minmax(0,1fr) auto;gap:8px;padding:10px 8px}.ranking-rules .ranking-label{gap:7px}.ranking-rules .ranking-move{gap:4px}}
