:root{--ink:#183b35;--green:#125b49;--lime:#d6ec96;--paper:#f5f5ee;--line:#dfe5db;--muted:#65746c;--gold:#b27c20;--white:#fff;--radius:16px;font-family:Inter,Segoe UI,system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:var(--green);text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #c38720;outline-offset:3px}.container{max-width:1250px;margin:auto;padding:42px 32px 70px}.site-header{background:#102c28;color:#fff;padding:24px 36px;display:flex;justify-content:space-between;gap:24px;align-items:center}.brand{display:flex;gap:13px;align-items:center;color:#fff;text-decoration:none;font-weight:850;letter-spacing:1px;font-size:23px;white-space:nowrap}.brand small{display:block;font-size:9px;letter-spacing:2px;color:#bdcfc4;margin-top:5px}.ball{background:#f8f7ec;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;color:#102c28;font-size:27px;box-shadow:0 0 0 7px #28443c}nav{display:flex;flex-wrap:wrap;align-items:center;gap:21px}nav a,.nav-button{font-size:13px;color:#e8efe7;text-decoration:none}.nav-button{border:1px solid #587168;border-radius:8px;padding:10px;background:none}nav form{margin:0}footer{padding:25px 32px;text-align:center;border-top:1px solid var(--line);color:var(--muted);font-size:13px}footer span{margin:0 9px;color:var(--gold)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,3.5vw,49px);font-weight:750;letter-spacing:-1.7px;line-height:1.15;margin-bottom:15px}h2{font-size:23px;letter-spacing:-.5px}h3{font-size:16px}p{line-height:1.65}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:var(--green);margin-bottom:16px}.dot{color:var(--gold)}.panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px}.page-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px}.page-heading p:last-child{margin-bottom:0}.season-badge{border:1px solid #b7c9b9;border-radius:8px;padding:12px 16px;font-size:12px;letter-spacing:1px;white-space:nowrap}.filters{display:flex;align-items:end;gap:18px;margin-bottom:38px}.filters>div{flex:1}.filters label{font-size:12px;font-weight:700}.filters .checkbox{display:flex;align-items:center;gap:8px;margin-bottom:11px;line-height:1.5}.checkbox input{width:20px;min-height:20px}.field{margin:18px 0}label{display:block;margin-bottom:7px;font-size:13px;font-weight:650}input,select,textarea{border:1px solid #b9c6bb;border-radius:8px;background:#fff;color:var(--ink);min-height:46px;padding:10px 12px;max-width:100%;width:100%}input[type=checkbox]{width:auto}input[type=hidden]{display:none}select{padding-right:26px}textarea{resize:vertical}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:46px;padding:12px 23px;border:1px solid var(--green);background:var(--green);color:#fff;border-radius:9px;font-size:14px;font-weight:700;text-decoration:none}.button:hover{background:#0b4739}.button.secondary{background:#fff;color:var(--green)}.button.secondary:hover{background:#edf3e9}.full{width:100%}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.section-heading h2{margin:0}.section-heading .muted{font-size:12px}.pill{display:inline-block;padding:7px 13px;background:#e5efde;color:#275535;border-radius:7px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.pill.gold{background:#f8ebce;color:#7c5319}.fixture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.fixture-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.fixture-top{display:flex;justify-content:space-between;align-items:center;padding:20px 23px 8px;font-size:10px;font-weight:800;letter-spacing:1px}.status{border:1px solid #d5dccd;padding:5px 8px;border-radius:5px;color:#687263;font-size:10px;letter-spacing:.3px}.status.done{color:#256349;background:#ecf4e8;border-color:#c7dfbf}.fixture-date{color:var(--muted);font-size:12px;padding:0 23px;margin-bottom:24px}.match-teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;text-align:center;gap:15px;padding:0 23px 27px;font-size:17px;min-height:65px}.score{font-size:22px;color:var(--green);white-space:nowrap}.fixture-bottom{border-top:1px solid var(--line);padding:15px 23px;display:flex;justify-content:space-between;gap:10px;font-size:12px;background:#fbfcf8}.fixture-bottom>span{color:var(--muted);font-size:11px}.fixture-bottom a{font-weight:750;text-decoration:none}.standings-section{margin-top:48px}.table-wrap{overflow:auto;padding:0}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:14px}th,td{padding:17px 20px;text-align:center;border-bottom:1px solid #edf0e7}th:nth-child(2){text-align:left;min-width:180px}thead{background:#edf1e8;font-size:10px;letter-spacing:1px}tbody tr:last-child>*{border-bottom:0}tbody tr:hover{background:#f7faf3}td.points{font-weight:850;color:var(--green);font-size:17px}.empty{grid-column:1/-1;padding:45px;text-align:center}.login-layout{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:90px;min-height:calc(100vh - 270px)}.login-intro h1{font-size:clamp(40px,4.5vw,66px);line-height:1.08;margin:24px 0}.login-intro h1 em{font-style:normal;color:var(--green)}.login-intro>p:not(.eyebrow){max-width:370px;color:var(--muted)}.champ-labels{display:flex;gap:12px;margin-top:35px}.champ-labels span{font-size:10px;letter-spacing:2px;font-weight:800;padding:9px 15px;border:1px solid #9ebca4;border-radius:5px}.champ-labels span:last-child{border-color:#d5bd87;color:#93651e}.login-panel{padding:38px;box-shadow:0 12px 40px #153c2b07}.login-panel h2{font-size:26px}.subtle-link{display:block;font-size:13px;text-align:center;margin:23px 0}.fine-print{color:var(--muted);font-size:11px;text-align:center;margin-bottom:0}.narrow{max-width:550px;margin:40px auto}.helptext{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:6px}.errorlist{padding:12px 16px 12px 30px;background:#fff0eb;border-radius:7px;color:#8f3024;font-size:13px}.message{padding:16px 20px;border-radius:9px;background:#e4f0db;margin-bottom:20px}.message.error{background:#ffede4;color:#8c3121}.notice{border-left:3px solid #a8c4a0;background:#edf1e5;padding:16px 20px;font-size:13px;margin-top:24px}.back-link{display:inline-block;margin-bottom:26px;font-size:13px;text-decoration:none}.sheet-teams{display:flex;align-items:center;justify-content:space-between;text-align:center;gap:15px}.sheet-teams>div{flex:1}.sheet-teams small{letter-spacing:2px;font-size:10px;color:var(--muted)}.sheet-teams h2{margin:10px 0 0}.games-list{display:grid;gap:20px;margin-top:26px}.game-heading{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);padding-bottom:16px}.game-heading h2{margin:0;font-size:19px}.game-heading .muted{margin-left:auto;font-size:12px}.game-number{font-size:12px;background:#e7efe0;color:var(--green);border-radius:7px;padding:9px;font-weight:800}.game-sides{display:grid;grid-template-columns:1fr 1fr;gap:32px}.game-side{padding-top:22px;min-width:0}.game-side h3{font-size:13px;margin:0;color:var(--green)}.score-field{display:flex;gap:12px;align-items:center}.score-field label{margin:0}.score-field input{width:80px;font-size:23px;font-weight:750;text-align:center;margin-left:auto}.player-search{margin-bottom:7px;background:#f8faf5;min-height:40px;font-size:13px}.search-count{display:block;font-size:11px;color:var(--muted);margin-top:5px}.readonly-game{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;padding:25px 0 5px;text-align:center;line-height:1.6}.readonly-game strong{font-size:25px}.save-bar{position:sticky;bottom:12px;background:#fff;border:1px solid #b5c7b3;box-shadow:0 8px 30px #153c2b1a;border-radius:12px;padding:18px 22px;margin-top:26px;display:flex;justify-content:space-between;align-items:center;gap:15px;z-index:2}.save-bar p{font-size:12px;color:var(--muted);margin:0}.save-bar>div{display:flex;gap:12px}.correction{margin-top:24px}.audit-event{margin-bottom:16px}.audit-event p{font-size:13px}.audit-event time{font-size:12px;color:var(--muted)}pre{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;background:#f3f5f0;padding:15px;line-height:1.6}summary{cursor:pointer;font-size:13px}.pagination{justify-content:center;padding:25px}.pagination a{color:var(--green)}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip:focus{position:fixed;top:10px;left:10px;padding:10px;background:white;z-index:10}ul{line-height:1.6}
@media(min-width:1500px){.container{padding-top:60px}}@media(max-width:1000px){.site-header{align-items:flex-start;flex-direction:column;padding:22px 28px}nav{gap:18px}.login-layout{gap:35px}.login-panel{padding:28px}.filters{flex-wrap:wrap}.filters>div{min-width:150px}.filters .checkbox{flex-basis:50%}.save-bar{flex-direction:column}.save-bar>div{width:100%}.save-bar .button{flex:1}}@media(max-width:640px){.container{padding:28px 16px 45px}.site-header{padding:22px}.brand{font-size:21px}nav{gap:12px 18px}nav a,.nav-button{font-size:12px}.nav-button{padding:8px}.page-heading{align-items:flex-start;flex-direction:column;gap:15px}h1{letter-spacing:-1px}.season-badge{font-size:10px;padding:8px 11px}.panel{padding:20px}.filters{gap:14px;margin-bottom:28px}.filters>div{min-width:120px}.filters .checkbox{flex-basis:100%;margin:0}.filters .button{width:100%}.fixture-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start}.section-heading .muted{max-width:130px;text-align:right;line-height:1.5}.fixture-top{padding:18px 18px 8px}.fixture-date{padding:0 18px}.match-teams{padding:0 18px 22px;font-size:16px;gap:12px}.fixture-bottom{padding:14px 18px}.fixture-bottom>span{font-size:10px}.standings-section{margin-top:34px}h2{font-size:21px}.table-wrap{padding:0}th,td{padding:15px 12px;font-size:13px}.login-layout{grid-template-columns:1fr;gap:28px;min-height:0}.login-intro h1{font-size:39px;margin:16px 0}.login-intro>p:not(.eyebrow){margin:0}.login-intro .eyebrow{margin:0}.champ-labels{margin-top:20px}.login-panel{padding:25px}.login-panel h2{font-size:23px}.sheet-teams{gap:10px}.sheet-teams h2{font-size:17px}.sheet-teams small{font-size:9px;letter-spacing:1px}.sheet-teams>span{font-size:11px}.game-heading{gap:9px}.game-heading .muted{font-size:10px;max-width:105px;text-align:right}.game-sides{grid-template-columns:1fr;gap:0}.game-side+.game-side{border-top:1px dashed #ccd6c7;padding-top:20px;margin-top:10px}.field{margin:14px 0}.score-field input{width:85px}.game-side h3{font-size:14px}.save-bar{bottom:8px;padding:14px}.save-bar>div{flex-direction:column}.save-bar .button{width:100%}.readonly-game{gap:10px;font-size:13px}.readonly-game strong{font-size:22px}.audit-event .section-heading{flex-direction:column;gap:8px}.audit-event time{font-size:11px}.narrow{margin:10px auto}.empty{padding:30px 20px}footer{font-size:11px;padding:20px 16px}}
