@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Caslon Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/libre-caslon-display-latin-ext-400-normal-CUYASYSA.woff2) format("woff2"),url(/assets/libre-caslon-display-latin-ext-400-normal-xXeWa_lF.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Caslon Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/libre-caslon-display-latin-400-normal-n_DgBRfq.woff2) format("woff2"),url(/assets/libre-caslon-display-latin-400-normal-BbfEE5V2.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--club-green-950: #104622;--club-green-800: #045f31;--club-green-500: #72b046;--club-green-100: #e7f0df;--club-cream: #f6f4ec;--club-paper: #fffef9;--club-line: #d8e1d2;--club-muted: #5e7368;font-family:DM Sans Variable,system-ui,sans-serif;color:var(--club-green-950);background:var(--club-cream);font-synthesis:none;font-weight:400}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 100% 0%,#72b0460d,transparent 31rem),var(--club-cream)}header{position:relative;max-width:1120px;margin:auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--club-line)}header:after{position:absolute;right:28px;bottom:-1px;left:28px;height:2px;content:"";background:linear-gradient(90deg,var(--club-green-950),var(--club-green-500) 42%,transparent 88%)}.account{display:flex;align-items:center;justify-content:flex-end;gap:8px}.account-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700}.brand{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none}.brand-mark{display:grid;width:52px;height:58px;flex:0 0 auto;place-items:center}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.brand-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1}.brand-copy strong{font-family:Libre Caslon Display,Georgia,serif;font-size:23px;font-weight:400;letter-spacing:-.2px}.brand-copy small{margin-top:7px;color:var(--club-green-800);font-size:10px;font-weight:700;letter-spacing:1.55px;text-transform:uppercase}main{max-width:760px;margin:36px auto;padding:0 22px}h1{font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(38px,8vw,62px);font-weight:400;line-height:1.02;margin:24px 0}h2{font-size:22px;font-weight:600;margin:0 0 18px}h3{font-size:18px;margin-top:30px}p{line-height:1.65}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;text-transform:uppercase}.auth-main{display:flex;min-height:100vh;max-width:none;flex-direction:column;justify-content:center;margin:0;padding:24px;color:#202421;background:#f4f4f1}.auth-main>[role=alert],.auth-main>[role=status],.auth-shell{width:100%;max-width:420px;margin-right:auto;margin-left:auto}.auth-card{padding:32px;background:#fff;border:1px solid #deded9;border-radius:16px;box-shadow:0 16px 50px #1d211e0f}.auth-card h1{margin:0 0 8px;font-family:inherit;font-size:30px;font-weight:600;line-height:1.2}.auth-intro{margin:0 0 24px;color:#666b67;font-size:15px}.auth-card label{margin-top:0;color:#343936}.auth-card input{color:#202421;border-color:#c9ccc9}.auth-card button{width:100%;background:#202421}.auth-card .muted{margin-bottom:0;color:#737873;text-align:center}.auth-main .notice,.auth-main .error{margin:0 0 12px;color:#343936;background:#fff;border:1px solid #deded9}.card{background:var(--club-paper);border:1px solid var(--club-line);border-radius:18px;padding:28px;margin:22px 0;box-shadow:0 7px 24px #16382d04}.muted,small,caption{font-size:13px;color:var(--club-muted)}.pill{font-size:11px;font-weight:700;letter-spacing:1px;padding:8px 12px;color:var(--club-green-950);background:var(--club-green-100);border:1px solid #72b0464d;border-radius:40px}.row,.topline{display:flex;justify-content:space-between;align-items:center;gap:12px}.row{padding:8px 0;flex-wrap:wrap}label{display:block;font-size:13px;font-weight:600;margin:15px 0}input,select,textarea{display:block;font:inherit;font-size:16px;color:var(--club-green-950);background:#fff;border:1px solid #bbc8be;border-radius:8px;width:100%;padding:12px;margin-top:7px;min-height:48px}textarea{min-height:90px}button{font:inherit;font-weight:600;font-size:14px;border:1px solid transparent;border-radius:8px;background:var(--club-green-950);color:#fff;min-height:48px;padding:12px 18px;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(.93)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--club-green-500);outline-offset:3px}.secondary{background:#eef3e9;color:var(--club-green-950);border-color:#d6ddcf}.ghost{background:transparent;color:var(--club-green-950)}.danger{color:#8d281d;background:#fff3f0;border-color:#e4b8b0}.active{background:var(--club-green-950);color:#fff;box-shadow:inset 0 -3px 0 var(--club-green-500)}form>button,.score>button{width:100%;margin-top:10px}.days,nav{display:flex;gap:8px;margin:20px 0}.days button{flex:1;padding:15px 9px}.days small{display:block;font-size:10px;color:inherit;margin-bottom:6px}.stepper{display:flex;align-items:center;justify-content:space-around;margin:16px 0}.stepper button{width:58px;height:58px;border-radius:50%;font-size:28px;background:#eef3e9;color:var(--club-green-950);border-color:#72b04638}.stepper output{display:inline-flex;align-items:baseline;white-space:nowrap;font-size:72px;font-family:Georgia,serif}.stepper output .stroke-marks{margin-left:4px;font-family:DM Sans Variable,system-ui,sans-serif;font-size:.4em}.score .row button{flex:1}.field-label,.score-player-select{margin:12px 0 7px;font-size:14px;font-weight:700}.hole-picker{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:7px;margin-bottom:12px}.hole-button{position:relative;display:flex;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:46px;padding:5px 3px;color:var(--club-green-950);background:#fff;border-color:#bbc8be}.hole-button.partial{background:#eff5e9;border-color:#9cc97d}.hole-button.player-saved{color:var(--club-green-950);background:#e7f0df;border-color:#8fbc72}.hole-button.complete{color:var(--club-green-950);background:#d5e8c8;border-color:var(--club-green-500)}.hole-button.active{color:#fff;background:var(--club-green-950);border-color:var(--club-green-950);box-shadow:0 0 0 3px #72b04666}.hole-button span:last-child:not(:first-child){font-size:12px;font-weight:700}.scratch-button{width:100%}.score-scratched{color:#8d281d;font-weight:700}.stepper output.score-scratched{padding:0 10px;border-radius:12px;background:#fff0ed}.score-limit{margin:4px 0 8px;color:var(--club-muted);font-size:12px;line-height:1.4}.score-limit.exceeded{color:#8d281d;font-weight:700}.save-status{min-height:24px;margin:8px 0 0;color:var(--club-muted);font-size:14px}.save-status.status-saved{color:var(--club-green-800);font-weight:700}.save-status.status-error{color:#8d281d;font-weight:700}.big{font-family:Georgia,serif;font-size:36px;margin:10px 0}.match{padding:15px 0;border-bottom:1px solid #e4e7dc}.match p{margin:4px 0}.error{background:#fff0ed;color:#8d281d;padding:14px;border-radius:8px}.notice{background:#edf0d9;padding:14px;border-radius:8px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:center;font-size:14px}th,td{padding:12px 10px;border-bottom:1px solid #e3e6dc}caption{text-align:left;padding:0 0 15px}.scorecard-help{margin-top:-8px}.score-table{min-width:560px;table-layout:fixed}.score-table th:first-child{width:58px}.score-table .score-groups th{border-bottom:0;padding-bottom:5px;font-size:12px;letter-spacing:1px;text-transform:uppercase}.score-table .score-groups th:nth-child(2),.score-table .group-one{background:#f1f3e8}.score-table .score-groups th:nth-child(3),.score-table .group-two{background:#edf3f1}.score-table td{white-space:nowrap}.stroke-marks{margin-left:2px;color:#4f872d;font-weight:800;letter-spacing:-1px}.score-session{margin-top:28px}.score-session h3{margin:0 0 12px}.day-standings{margin-top:24px}.day-standings h3{margin-bottom:8px}.day-table{min-width:420px;text-align:left}.day-table th:first-child{width:54px;text-align:center}.day-table th:last-child,.day-table td:last-child{text-align:right}.day-table td small{display:block;margin-top:3px;color:var(--club-muted);font-size:12px}.day-table .day-leader{background:var(--club-green-100)}.champion-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:16px}.champion-choice{position:relative;display:flex;min-height:128px;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:9px;overflow:hidden;padding:17px 18px 16px;text-align:left;color:var(--club-green-950);background:#f5f9f1;border:1px solid #9cc97d;border-radius:14px;box-shadow:inset 0 4px 0 var(--club-green-500);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.champion-choice:hover:not(:disabled){filter:none;transform:translateY(-2px);background:#fbfff8;border-color:var(--club-green-500);box-shadow:inset 0 4px 0 var(--club-green-500),0 9px 18px #183c3214}.champion-choice:active:not(:disabled){transform:translateY(0);background:#e7f0df}.champion-choice-kicker{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--club-green-800)}.champion-choice strong{font-size:22px}.champion-choice-action{font-size:13px;font-weight:600;color:#52675f}.champion-archive{padding-top:22px;padding-bottom:22px}.champion-archive-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:92px;margin-bottom:10px}.champion-crest{display:block;width:78px;height:88px;flex:0 0 auto;object-fit:contain}.champion-archive .eyebrow{margin:0 0 8px;color:var(--club-green-800)}.champion-archive h2{margin-bottom:10px}.champion-history-list{border-top:1px solid #e3e6dc}.champion-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:52px;padding:11px 12px;border-bottom:1px solid #e3e6dc}.champion-history-row.selected{background:var(--club-green-100);box-shadow:inset 4px 0 0 var(--club-green-500)}.champion-history-row span{min-width:0;overflow-wrap:anywhere}.champion-history-row strong{color:var(--club-green-800)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.setup-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0 10px}.setup-tabs button{min-width:0;padding:11px 9px}.course-list{margin:18px 0 28px;border-top:1px solid var(--club-line)}.course-item{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--club-line)}.course-item>div:first-child{width:100%;min-width:0}.course-item strong,.course-item span{display:block}.course-item strong{overflow-wrap:anywhere}.course-item span{margin-top:4px;color:var(--club-muted);font-size:13px}.course-actions{display:flex;flex:0 0 auto;gap:7px}.course-actions button{min-height:40px;padding:8px 11px}.course-handicaps{display:grid;max-width:420px;gap:5px;margin-top:13px;padding:11px 13px;background:#f2f6ed;border:1px solid #d9e6cf;border-radius:10px}.course-handicaps p{margin:0 0 3px;color:var(--club-green-800);font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.course-handicaps>div{display:grid;grid-template-columns:minmax(90px,1fr) auto;align-items:baseline;gap:14px}.course-handicaps>div>span:first-child{color:var(--club-green-950);font-size:14px;font-weight:600}.course-handicaps>div>span:last-child{margin:0;text-align:right}.course-handicaps strong{display:inline;color:var(--club-green-800)}.empty-state{margin:0;padding:20px 0;color:var(--club-muted)}.player-form{border-bottom:1px solid #dce1d7;padding-bottom:22px;margin-bottom:22px}.player-save-button:disabled{opacity:1;color:#708078;background:#e8ece4;border-color:#d8dfd3}.allowance-fieldset{min-width:0;margin:28px 0 10px;padding:0;border:0}.allowance-fieldset legend{padding:0;font-size:18px;font-weight:700}.allowance-fieldset>.muted{margin:8px 0 14px}.allowance-list{display:grid;gap:9px}.allowance-player{display:grid;grid-template-columns:minmax(110px,1fr) 116px minmax(210px,1.4fr);align-items:center;gap:14px;padding:13px;background:#f5f8f1;border:1px solid var(--club-line);border-radius:12px}.allowance-player-name strong,.allowance-player-name span{display:block}.allowance-player-name span{margin-top:3px;color:var(--club-muted);font-size:13px}.allowance-player label{margin:0}.allowance-player label>span:first-child{display:block;margin-bottom:5px;color:var(--club-muted);font-size:12px}.percent-input{position:relative;display:block}.percent-input input{min-height:42px;margin:0;padding:8px 32px 8px 10px}.percent-input>span{position:absolute;top:50%;right:11px;color:var(--club-muted);transform:translateY(-50%)}.allowance-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.allowance-preview>span{padding:7px 5px;color:var(--club-muted);background:#fffef9;border:1px solid #dce5d6;border-radius:8px;font-size:11px;text-align:center}.allowance-preview strong{display:block;margin-top:2px;color:var(--club-green-950);font-size:17px}.columns{display:flex;gap:15px}.columns>*{flex:1;min-width:0}footer{text-align:center;color:var(--club-muted);font-size:11px;line-height:1.8;padding:45px 20px}@media(max-width:480px){header{padding:12px 16px}header:after{right:16px;left:16px}.brand{gap:8px}.brand-mark{width:40px;height:46px}.brand-copy strong{font-size:18px}.brand-copy small{margin-top:5px;font-size:8px;letter-spacing:1px}.account{align-items:flex-end;flex-direction:column;gap:0}.account-name{max-width:118px;font-size:13px}.account button{min-height:36px;padding:6px 0}main{margin-top:20px;padding:0 16px}.card{padding:21px}.champion-archive-heading{min-height:72px;gap:14px}.champion-crest{width:58px;height:66px}.setup-tabs{gap:5px}.setup-tabs button{min-height:46px;padding:7px 4px;font-size:13px;line-height:1.2}.course-item{align-items:flex-start;flex-direction:column;gap:10px}.course-actions{width:100%}.course-actions button{flex:1}.course-handicaps>div{grid-template-columns:minmax(78px,1fr) auto;gap:8px}.allowance-player{grid-template-columns:minmax(0,1fr) 105px;gap:10px}.allowance-preview{grid-column:1 / -1}.score{padding:16px}.score .row h2{margin:0;font-size:22px}.score-player-select{margin:8px 0 6px}.score-player-select select{min-height:44px;margin-top:5px;padding:9px 12px}.score .field-label{margin:8px 0 5px}.auth-main{margin:0;padding:18px}.auth-card{padding:24px 20px}nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}nav button{width:100%;padding:10px}h1{font-size:42px}.hole-picker{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-bottom:8px}.score .hole-button{min-height:44px;padding:3px 2px}.score .stepper{margin:8px 0}.score .stepper button{width:50px;height:50px}.score .stepper output{font-size:58px;line-height:1}.score .scratch-button{min-height:44px;margin-top:4px;padding:9px 12px}.score .save-status{min-height:20px;margin-top:6px;line-height:1.35}.score-card{padding:14px 8px}.score-card h2{margin-bottom:14px}.scorecard-help{margin:-5px 6px 12px;font-size:13px;line-height:1.35}.score-card .table-wrap{overflow-x:visible}.score-table{min-width:0;width:100%;table-layout:fixed;font-size:13px}.score-table th,.score-table td{padding:9px 2px}.score-table th:first-child{width:42px}.score-table .score-groups th{padding:7px 2px 4px;font-size:11px;letter-spacing:.5px}.score-table .stroke-marks{margin-left:1px;letter-spacing:-2px}.day-standings .table-wrap{overflow-x:visible}.day-table{min-width:0;table-layout:fixed;font-size:13px}.day-table th,.day-table td{padding:10px 5px}.day-table th:first-child{width:42px}.day-table th:last-child,.day-table td:last-child{width:128px}.day-table td:last-child{font-size:12px}}
