:root{--ink:#18191c;--muted:#686c75;--red:#c51d2b;--line:#e2e4e9;--paper:#f5f6f8;--card:#fff;--red2:#a7111e}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}a{color:var(--red2)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #246bd0;outline-offset:3px}[hidden]{display:none!important}.shell{max-width:1200px;margin:0 auto;padding:0 30px}.top{background:white;border-bottom:1px solid var(--line)}.top .shell{min-height:74px;display:flex;align-items:center;gap:30px}.brand img{width:169px;height:auto;display:block}.club-year{font-size:12px;letter-spacing:.12em;color:var(--muted)}.private-label{margin-left:auto;font-size:12px;border:1px solid var(--line);padding:5px 10px;border-radius:20px;color:var(--muted)}.intro{padding-top:26px;padding-bottom:24px;display:flex;justify-content:space-between;align-items:center;gap:25px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--red);margin:0 0 5px}h1{font-size:30px;line-height:1.2;letter-spacing:-.045em;margin:0;font-weight:750}h1 span{color:var(--muted);font-weight:450;white-space:nowrap}.metrics{display:flex;align-items:center;gap:0}.metric{padding:0 20px;border:0;border-left:1px solid var(--line);background:transparent;text-align:left}.metric strong{font-size:25px;font-weight:750;line-height:1.15;display:block;white-space:nowrap}.metric>span{font-size:12px;color:var(--muted);white-space:nowrap}.metric strong span{font-size:17px;color:var(--red);margin-left:6px}.roster-open:hover strong{color:var(--red)}.roster-open:hover>span{text-decoration:underline}.next-race{background:#18191c;color:white;border-radius:8px;padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.next-race>div{display:grid;grid-template-columns:125px 1fr;column-gap:20px;align-items:center}.tag{grid-row:1/3;color:#ff8290;font-size:12px;text-transform:uppercase;font-weight:750;letter-spacing:.07em;border-right:1px solid #53545b;padding-right:12px}.next-race h2{font-size:21px;line-height:1.25;margin:0}.next-race p{font-size:14px;color:#c5c8d0;margin:3px 0 0}.button{background:var(--red);color:white;border:0;border-radius:5px;padding:10px 16px;font-size:14px;font-weight:650;text-decoration:none;white-space:nowrap}.button:hover{background:#e02738}.view-tabs{display:flex;gap:27px;border-bottom:1px solid var(--line);margin:18px 0 22px}.view-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:13px 0 12px;font-weight:650;font-size:14px;color:var(--muted)}.view-tabs button[aria-selected=true]{color:var(--red);border-color:var(--red)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 15px}.section-head h2{margin:0;font-size:20px;letter-spacing:-.025em}.section-head p{margin:0;color:var(--muted);font-size:14px;max-width:490px}.races{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.race{position:relative;background:white;border:1px solid var(--line);border-radius:8px;padding:17px 20px;min-height:153px}.race:first-child{border-color:#d4a6ab;box-shadow:inset 3px 0 0 var(--red)}.month{font-size:12px;color:var(--red);text-transform:uppercase;letter-spacing:.1em;font-weight:750}.race h3{font-size:18px;line-height:1.2;margin:7px 0}.race p{font-size:14px;color:var(--muted);margin:0}.race a{font-size:13px;display:inline-block;margin-top:8px;text-decoration:none;font-weight:650}.race a:hover{text-decoration:underline}.num{position:absolute;right:18px;top:14px;color:#b0b4bd;font-size:14px;font-weight:600}.foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:22px;padding-bottom:22px;font-size:12px;color:var(--muted)}.foot a{text-decoration:none;color:var(--muted)}.rules-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rules,.calc{padding:23px 26px;border:1px solid var(--line);background:white;border-radius:8px}.rules h2,.calc h2{font-size:21px;margin:0 0 14px;letter-spacing:-.025em}.rule{display:flex;gap:14px;border-top:1px solid var(--line);padding:12px 0}.rule:last-child{padding-bottom:0}.rule b{font-size:14px;color:var(--red)}.rule p{font-size:14px;margin:0}.calc-intro{font-size:14px;color:var(--muted);margin:0 0 20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field label{font-size:14px;font-weight:600;display:block;margin-bottom:6px}input,select{max-width:100%;background:white;border:1px solid #bcc1ca;border-radius:5px;padding:9px 12px;color:var(--ink)}.field input{width:100%}.result{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:18px;margin-top:20px;background:#f7f7f9;border-radius:5px}.result span,#message{font-size:14px}.result span{color:var(--muted)}.result strong{font-size:29px;color:var(--red)}.standings-panel{border:1px solid var(--line);border-radius:8px;background:white;overflow:hidden}.demo-note{padding:10px 18px;margin:0;font-size:13px;background:#fff0f1;color:#861925}.standings-tools{padding:13px 18px;display:flex;justify-content:space-between;gap:15px}.standings-tools label{font-size:14px}.standings-tools input,.standings-tools select{font-size:14px;margin-left:8px}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-variant-numeric:tabular-nums}th,td{padding:11px 16px;border-bottom:1px solid var(--line);font-size:14px;white-space:nowrap}th{font-size:12px;font-weight:650;color:var(--muted);background:#f7f8fa}td strong{font-weight:650}.points{color:var(--red);font-size:18px}.counted{font-weight:700;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:4px}.qualify{font-size:13px}.qualify small{display:block;color:var(--muted);font-size:12px}.standings-key{font-size:12px;color:var(--muted);padding:12px 18px;margin:0}.no-results{text-align:center;padding:25px}.faq{background:white;border:1px solid var(--line);border-radius:8px;padding:0 20px}details{padding:13px 0;border-bottom:1px solid var(--line)}details:last-child{border:0}summary{font-size:15px;font-weight:600;cursor:pointer}details p{font-size:14px;color:var(--muted);margin:10px 0 0}.poster-section{margin-top:15px}.poster{width:100%;height:auto;margin-top:20px;display:block}.privacy{font-size:12px;color:var(--muted);margin:14px 0}.privacy strong{font-weight:650}dialog{border:0;border-radius:12px;padding:26px;width:min(720px,calc(100% - 32px));max-height:85dvh;color:var(--ink);box-shadow:0 30px 100px #0004}dialog::backdrop{background:#10121b88;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-head h2{font-size:24px;margin:0;letter-spacing:-.03em}.dialog-head h2 span{color:var(--red);margin-left:6px}.close-button{font-size:28px;line-height:1;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:white}.roster-note{font-size:14px;color:var(--muted);margin:16px 0}.roster-label{display:block;font-size:14px;font-weight:600;margin-bottom:6px}#roster-search{width:100%}#roster-count{font-size:13px;color:var(--muted)}#roster-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 22px;padding:0;margin:0}#roster-list li{padding:10px 0;border-bottom:1px solid var(--line);font-size:15px;overflow-wrap:anywhere}
@media(min-width:1000px) and (min-height:800px){.intro{padding-top:35px;padding-bottom:32px}.race{padding:20px 22px;min-height:175px}.view-tabs{margin-top:22px;margin-bottom:25px}.foot{padding-top:28px}}
@media(max-width:1000px){.intro{align-items:flex-start}.metrics .metric{padding:0 12px}h1{font-size:26px}h1 span{display:block;font-size:20px;margin-top:4px}.club-year{display:none}.section-head{align-items:flex-start}.race h3{font-size:17px}.shell{padding-left:22px;padding-right:22px}.standings-tools{flex-wrap:wrap}}
@media(max-width:700px){.top .shell{min-height:65px;gap:15px}.brand img{width:150px}.private-label{font-size:11px}.intro{display:block;padding-top:20px;padding-bottom:20px}h1{font-size:28px}h1 span{display:inline;font-size:23px}.metrics{margin-top:20px;justify-content:space-between}.metrics .metric:first-child{padding-left:0;border:0}.metrics .metric{padding:0 15px}.metric strong{font-size:23px}.metric>span{font-size:12px}.next-race{padding:17px;align-items:flex-start;flex-direction:column;gap:14px}.next-race>div{display:block}.tag{display:block;border:0;margin-bottom:6px}.next-race h2{font-size:22px}.button{padding:11px 14px}.view-tabs{gap:0;justify-content:space-between;margin-top:12px}.view-tabs button{font-size:13px;min-height:48px}.section-head{display:block}.section-head p{margin-top:5px}.races{grid-template-columns:1fr 1fr}.race{padding:15px;min-height:175px}.race h3{font-size:17px;padding-right:0}.num{display:none}.rules-layout{grid-template-columns:1fr}.rules,.calc{padding:20px}.standings-tools{display:block}.standings-tools label{display:block;margin:8px 0}.standings-tools input,.standings-tools select{display:block;margin:5px 0 0;width:100%;font-size:16px}.foot{flex-wrap:wrap;justify-content:center;text-align:center;font-size:12px}.fields{grid-template-columns:1fr 1fr}.result{flex-wrap:wrap}#roster-list{grid-template-columns:1fr}.dialog-head h2{font-size:21px}}
@media(max-width:380px){.shell{padding-left:16px;padding-right:16px}.races{grid-template-columns:1fr}.view-tabs button{font-size:12px}.fields{grid-template-columns:1fr}h1 span{display:block}.private-label{padding:4px 6px}}
.race{border-top:4px solid var(--race-accent,#c51d2b);background:linear-gradient(120deg,var(--race-tint,#fff5f5),white 65%);overflow:hidden}.race:first-child{border-top:4px solid #c51d2b}.race[data-race=morley]{--race-accent:#963851;--race-tint:#fcf0f5}.race[data-race=tadcaster]{--race-accent:#33667e;--race-tint:#eff6fa}.race[data-race=jolly]{--race-accent:#327047;--race-tint:#eff8f0}.race[data-race=tnt]{--race-accent:#a47809;--race-tint:#fff9e6}.race[data-race=parkrun]{--race-accent:#547339;--race-tint:#f2f8e9}.race-photo{position:absolute;right:16px;top:44px;width:88px;height:88px;object-fit:cover;border-radius:6px}.race:has(.race-photo) h3,.race:has(.race-photo) p{padding-right:92px}.race[data-race=morley] .race-photo{object-position:40% 50%}.results-demo{display:block;padding:0;margin:7px 0 0;border:0;background:none;text-decoration:underline;text-underline-offset:3px;color:var(--muted);font-size:12px}.results-demo:hover{color:var(--red)}.scoring-note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin:12px 0 0}.image-credit{font-size:12px;color:var(--muted)}#race-results-search{width:100%}#race-results-count{font-size:13px;color:var(--muted)}#race-results-dialog{width:min(740px,calc(100% - 32px))}
@media(max-width:1000px){.race-photo{width:64px;height:70px;top:58px;right:12px}.race:has(.race-photo) h3{padding-right:0}.race:has(.race-photo) p{padding-right:64px}.race{min-height:185px}}
@media(max-width:700px){.race-photo{position:static;float:right;width:65px;height:58px;margin:38px 0 5px 5px}.race:has(.race-photo) p{padding-right:0}.race h3{clear:both}.race .month{display:block}.race:has(.race-photo) .month{position:absolute;top:15px;left:15px}.race-photo{margin-top:22px}.race{min-height:220px}.race-action,.results-demo{min-height:30px}}

.race[data-race=castleford] .race-photo{object-fit:contain;background:#14251c}.race[data-race=parkrun] .race-photo{object-position:65% 55%}

.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.gate-mark{position:relative;display:block;flex:0 0 76px;width:76px;height:49px;overflow:hidden;background:#ca202d;border-radius:4px}.brand .gate-mark img{position:absolute;width:170px;max-width:none;height:170px;left:-47px;top:-37px}.rule strong{font-weight:750}.top .shell{gap:20px}@media(max-width:700px){.brand{gap:8px}.brand>img{width:125px}.gate-mark{flex-basis:60px;width:60px;height:43px}.brand .gate-mark img{width:145px;height:145px;left:-42px;top:-32px}.private-label{font-size:10px}}

.scoring-steps{display:grid;grid-template-columns:1fr 1fr;gap:15px}.scoring-steps article{position:relative;background:white;border:1px solid var(--line);border-radius:8px;padding:20px 23px}.step-number{font-size:13px;color:var(--red);font-weight:750;letter-spacing:.1em}.scoring-steps h3{font-size:19px;line-height:1.3;margin:7px 0 10px}.scoring-steps p{font-size:14px;color:var(--muted);margin:8px 0}.points-scale{display:flex;gap:0;margin:14px 0;border:1px solid var(--line);border-radius:5px;overflow:hidden}.points-scale span{flex:1;font-size:14px;padding:9px 12px;background:#fcf4f5;border-right:1px solid var(--line);white-space:nowrap}.points-scale span:last-child{border:0}.points-scale b{display:block;color:var(--red);font-size:13px}.scoring-footnote{font-size:13px;color:var(--muted);margin:15px 0 0}@media(max-width:700px){.scoring-steps{grid-template-columns:1fr}.scoring-steps article{padding:18px}.points-scale span{padding:8px}}
