@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0wkzw~je483f-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.08e28id.o-okb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--ink:#15221d;--muted:#6d7772;--line:#dfe4e1;--paper:#f5f7f4;--green:#146b4a;--green-soft:#dff2e7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans),Arial,sans-serif;-webkit-font-smoothing:antialiased;margin:0}button,a{font:inherit}button{color:inherit}.plain-button{cursor:pointer;background:0 0;border:0;padding:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);z-index:10;background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 5vw;display:flex;position:sticky;top:0}.brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:11px;font-size:17px;font-weight:730;text-decoration:none;display:flex}.brand-mark{background:var(--ink);color:#fff;letter-spacing:.02em;border-radius:10px;place-items:center;width:34px;height:34px;font-size:12px;display:grid}.nav-links{align-self:stretch;gap:32px;display:flex}.nav-links button{color:#77807b;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;padding:0;font-size:14px;font-weight:560;display:flex}.nav-links button.active{color:var(--ink);border-color:var(--green)}.top-actions{align-items:center;gap:17px;display:flex}.live-dot{color:#65706a;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.live-dot i{background:#25a36c;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e0f4e9}.avatar{background:#e8ecea;border:0;border-radius:50%;place-items:center;width:36px;height:36px;font-size:11px;font-weight:750;display:grid}.content{width:min(1180px,90vw);margin:0 auto;padding:58px 0 30px}.hero-row{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.eyebrow{color:var(--green);letter-spacing:.11em;text-transform:uppercase;margin:0 0 9px;font-size:12px;font-weight:750;line-height:1}h1{letter-spacing:-.045em;margin:0;font-size:clamp(34px,4vw,50px);font-weight:720;line-height:1.04}.lede{color:var(--muted);margin:14px 0 0;font-size:15px}.filters{align-items:center;gap:12px;display:flex}.select-button,.segmented{border:1px solid var(--line);background:#fff;border-radius:10px}.select-button{cursor:pointer;justify-content:space-between;align-items:center;min-width:146px;height:43px;padding:0 14px;font-size:13px;font-weight:620;display:flex}.select-button select{appearance:none;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;outline:0;font-weight:620}.select-button b{color:#8a928e;pointer-events:none;font-weight:500}.segmented{padding:4px;display:flex}.segmented button{color:#7d8581;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 13px;font-size:12px;font-weight:650}.segmented .selected{background:var(--ink);color:#fff;box-shadow:0 1px 3px #0002}.stat-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px;display:grid}.stat-card{border:1px solid var(--line);background:#fff;border-radius:15px;min-height:183px;padding:22px;box-shadow:0 4px 15px #1c302706}.accent-card{border-top:3px solid var(--green);padding-top:20px}.stat-label{color:#68736d;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font-size:11px;font-weight:730;display:flex}.icon-box{width:25px;height:25px;color:var(--green);background:#e1f2e8;border-radius:7px;place-items:center;font-size:12px;display:grid}.blue-icon{color:#356c96;background:#e6f0f7}.red-icon{color:#b05750;background:#f7e9e7}.leader-line{align-items:center;gap:11px;margin-top:21px;display:flex}.leader-line strong,.player strong{font-size:14px;display:block}.leader-line p,.player p{color:#89918d;margin:3px 0 0;font-size:11px}.medallion{color:#315646;background:#d4eadf;border-radius:50%;flex:none;place-items:center;width:37px;height:37px;font-size:10px;font-weight:780;display:grid}.medallion.blue{color:#355d79;background:#dbe9f2}.medallion.violet{color:#594f83;background:#e5e0f3}.medallion.orange{color:#8c5934;background:#f0e1d4}.medallion.rose{color:#86505b;background:#f1dfe2}.medallion.charcoal{color:#fff;background:#33413b}.big-number{letter-spacing:-.03em;margin-top:19px;font-size:27px;font-weight:720;line-height:1}.big-number small{color:#929995;letter-spacing:.08em;font-size:10px;font-weight:720}.positive{color:var(--green)}.negative{color:#a04b46}.board{border:1px solid var(--line);background:#fff;border-radius:15px;margin-top:21px;overflow:hidden;box-shadow:0 4px 15px #1c302706}.board-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 24px;display:flex}.board-head h2{letter-spacing:-.02em;margin:0;font-size:17px}.board-head p{color:#89918d;margin:5px 0 0;font-size:11px}.table-controls{align-items:center;gap:10px;display:flex}.table-controls>span{color:#7d8581;font-size:11px;font-weight:650}.week-picker{align-items:center;gap:8px;display:flex}.week-picker>button{border:1px solid var(--line);width:35px;height:35px;color:var(--green);cursor:pointer;background:#fff;border-radius:8px}.week-picker>button:disabled{color:#b7bdb9;cursor:not-allowed;background:#f7f8f7}.week-picker label{border:1px solid var(--line);color:#7d8581;background:#fff;border-radius:8px;align-items:center;gap:7px;height:35px;padding:0 10px;font-size:11px;font-weight:650;display:flex}.week-picker select{color:var(--ink);cursor:pointer;background:0 0;border:0;outline:0;font-weight:730}.week-link{color:var(--green);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:690}.week-link span{margin-left:7px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:720px}th{color:#8a928e;letter-spacing:.08em;text-transform:uppercase;text-align:left;background:#fbfcfb;padding:12px 24px;font-size:10px;font-weight:720}td{border-top:1px solid #edf0ee;padding:13px 24px;font-size:13px}.right{text-align:right}.player{align-items:center;gap:11px;display:flex}.medallion.small{width:34px;height:34px}.rank{color:#737d77;place-items:center;width:24px;height:24px;font-size:12px;font-weight:730;display:grid}.rank.first{color:#996d18;background:#faefcf;border-radius:7px}.trend{color:#27865f;font-size:11px;font-weight:690}.trend.down{color:#ba5b54}.credit-pill{text-align:center;background:var(--green-soft);min-width:52px;color:var(--green);border-radius:7px;padding:6px 9px;font-size:12px;font-weight:740;display:inline-block}.credit-pill.debit{color:#a04b46;background:#f8e9e7}.week-strip{border:1px solid var(--line);background:#fff;border-radius:13px;justify-content:center;align-items:center;gap:26px;margin:21px 0 -1px;padding:13px 18px;display:flex}.week-strip div{flex-direction:column;align-items:center;min-width:110px;display:flex}.week-strip span{font-size:13px;font-weight:730}.week-strip small{color:#8a928e;margin-top:3px;font-size:10px}.week-strip button{color:var(--green);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:680}.week-strip button:disabled{color:#b7bdb9;cursor:not-allowed}.archive-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px;display:grid}.season-card{border:1px solid var(--line);background:#fff;border-radius:15px;padding:23px}.season-year{justify-content:space-between;align-items:center;display:flex}.season-year>span{letter-spacing:-.04em;font-size:25px;font-weight:730}.season-year b{color:var(--green);background:var(--green-soft);letter-spacing:.04em;text-transform:uppercase;border-radius:20px;padding:5px 8px;font-size:9px}.season-champ{align-items:center;gap:11px;margin:32px 0 26px;display:flex}.season-champ small{color:#929995;text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px;font-size:9px;display:block}.season-champ strong{font-size:15px}.season-card dl{border-top:1px solid var(--line);margin:0}.season-card dl div{border-bottom:1px solid var(--line);justify-content:space-between;padding:12px 0;display:flex}.season-card dt{color:#858e89;font-size:11px}.season-card dd{margin:0;font-size:11px;font-weight:680}.season-card button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:100%;margin-top:18px;padding:10px;font-size:11px;font-weight:680}.season-card button:hover{background:#f9fbfa;border-color:#b5c3bc}.empty-season{text-align:center;background:#fafcfa;border:1px dashed #cbd3ce;border-radius:15px;margin-top:36px;padding:64px 24px}.empty-season>span{background:var(--ink);color:#fff;border-radius:11px;place-items:center;width:40px;height:40px;margin:0 auto 15px;font-size:11px;font-weight:750;display:grid}.empty-season h2{margin:0;font-size:18px}.empty-season p{color:var(--muted);margin:8px 0 0;font-size:12px}.submission-card{border:1px solid var(--line);background:#fff;border-radius:15px;margin-top:36px;padding:28px;box-shadow:0 4px 15px #1c302706}.submission-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:28px;padding-bottom:23px;display:flex}.submission-head h2,.submission-success h2{letter-spacing:-.025em;margin:0;font-size:22px}.submission-head>div>p:last-child,.submission-success>p:not(.eyebrow){color:var(--muted);margin:8px 0 0;font-size:13px}.week-entry{color:#6d7772;text-transform:uppercase;letter-spacing:.07em;flex:none;align-items:center;gap:9px;font-size:11px;font-weight:700;display:flex}.week-entry input{width:70px;height:42px;color:var(--ink);background:#fff;border:1px solid #cbd3ce;border-radius:9px;outline:0;padding:0 10px;font-size:16px;font-weight:750}.week-entry input:focus,.score-entry input:focus{border-color:var(--green);box-shadow:0 0 0 3px #dff2e7}.locked-weeks{color:#68736d;background:#f4f7f5;border-radius:9px;margin:17px 0 0;padding:11px 13px;font-size:11px}.locked-weeks strong{color:var(--ink)}.score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin-top:22px;display:grid}.score-entry{background:#fcfdfc;border:1px solid #e5e9e6;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:11px 12px;display:flex}.score-entry>span{min-width:0}.score-entry strong,.score-entry small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.score-entry strong{font-size:13px}.score-entry small{color:#929995;margin-top:3px;font-size:10px}.score-entry input{text-align:right;border:1px solid #cbd3ce;border-radius:8px;outline:0;flex:0 0 96px;width:96px;height:39px;padding:0 10px;font-size:14px;font-weight:680}.submission-preview{background:#f5f8f6;border-radius:12px;margin-top:24px;padding:20px}.submission-preview h3{margin:0;font-size:15px}.submission-preview>div>p{color:var(--muted);margin:5px 0 0;font-size:11px}.submission-preview ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px;margin:17px 0 0;padding:0;list-style:none;display:grid}.submission-preview li{border-top:1px solid #dfe5e1;justify-content:space-between;gap:12px;padding:8px 0;font-size:11px;display:flex}.submission-preview li>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.submission-preview li b{color:#77807b;place-items:center;width:19px;display:inline-grid}.submission-preview li>span:last-child{color:#727d77;flex:none}.submission-preview em{color:var(--green);margin-left:7px;font-style:normal;font-weight:750}.review-check{color:#56615b;cursor:pointer;align-items:flex-start;gap:10px;margin-top:22px;font-size:12px;line-height:1.45;display:flex}.review-check input{width:17px;height:17px;accent-color:var(--green);flex:none;margin:0}.submission-error{color:#a04b46;margin:13px 0 0;font-size:12px;font-weight:620}.submit-week-button,.primary-action,.secondary-action{cursor:pointer;border-radius:9px;height:44px;padding:0 17px;font-size:12px;font-weight:720}.submit-week-button{color:#fff;background:var(--ink);border:0;width:100%;margin-top:18px}.submit-week-button:disabled{color:#a9b0ac;cursor:not-allowed;background:#e6eae7}.immutability-note{color:#929995;text-align:center;margin:9px 0 0;font-size:10px}.submission-loading{color:var(--muted);text-align:center;padding:60px 0;font-size:13px}.submission-success{text-align:center;max-width:760px;margin-left:auto;margin-right:auto}.success-mark{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:44px;height:44px;margin:0 auto 18px;font-size:22px;font-weight:760;display:grid}.submission-success pre{border:1px solid var(--line);max-height:500px;color:var(--ink);font-family:var(--font-geist-sans),Arial,sans-serif;text-align:left;white-space:pre-wrap;background:#f7f9f7;border-radius:12px;margin:24px 0 0;padding:20px;font-size:13px;line-height:1.8;overflow:auto}.submission-actions{justify-content:center;gap:10px;margin-top:18px;display:flex}.primary-action{color:#fff;background:var(--ink);border:0}.secondary-action{border:1px solid var(--line);color:var(--green);background:#fff}.login-page{background:radial-gradient(circle at 50% 20%,#fff 0,#f4f7f4 48%,#edf1ee 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:20px;width:min(430px,100%);padding:42px;box-shadow:0 20px 70px #1930261a}.login-mark{width:46px;height:46px;margin-bottom:28px}.login-card h1{font-size:35px}.login-card>p:not(.eyebrow){color:var(--muted);margin:13px 0 27px;font-size:14px}.login-card label{color:#5f6964;flex-direction:column;gap:8px;font-size:11px;font-weight:680;display:flex}.login-card input{border:1px solid #ccd3cf;border-radius:9px;outline:0;height:46px;padding:0 13px;font-size:15px}.login-card input:focus{border-color:var(--green);box-shadow:0 0 0 3px #dff2e7}.login-card form button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:9px;width:100%;height:46px;margin-top:14px;font-size:13px;font-weight:700}.login-card form button span{float:right}.form-error{color:#a04b46;margin-top:8px;font-size:11px;display:block}.login-card>small{color:#9aa09d;text-align:center;margin-top:25px;font-size:10px;display:block}footer{color:#9aa09d;justify-content:space-between;padding:20px 3px 0;font-size:10px;display:flex}@media (max-width:820px){.nav-links{z-index:30;height:calc(62px + env(safe-area-inset-bottom));padding:0 max(12px,env(safe-area-inset-left)) env(safe-area-inset-bottom) max(12px,env(safe-area-inset-right));border-top:1px solid var(--line);background:#fff;justify-content:center;align-items:stretch;gap:0;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #1c302712}.nav-links button{border-top:2px solid #0000;border-bottom:0;flex:1;justify-content:center;max-width:180px;font-size:12px}.nav-links button.active{border-top-color:var(--green);border-bottom-color:#0000}.hero-row{flex-direction:column;align-items:flex-start}.filters{justify-content:space-between;width:100%}.stat-grid,.archive-grid{grid-template-columns:1fr}.stat-card{min-height:auto}.content{padding-top:38px;padding-bottom:86px}.score-grid,.submission-preview ol{grid-template-columns:1fr}}@media (max-width:680px){.table-wrap{background:#f7f9f7;padding:10px;overflow:visible}table{min-width:0;display:block}thead{display:none}tbody{gap:9px;display:grid}tr{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:30px repeat(3,minmax(0,1fr));grid-template-areas:"rank player player player"".trend points credits";gap:12px 8px;padding:13px 12px;display:grid}td{border:0;min-width:0;padding:0}td:first-child{grid-area:rank}td:nth-child(2){grid-area:player}td:nth-child(3){grid-area:trend}td:nth-child(4){grid-area:points}td:nth-child(5){text-align:left;grid-area:credits}td:nth-child(n+3){flex-direction:column;align-items:flex-start;gap:5px;display:flex}td:nth-child(n+3):before{content:attr(data-label);color:#8a928e;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;font-size:8px;font-weight:720;line-height:1}.player,.player>div{min-width:0}.player strong,.player p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.credit-pill{min-width:0;padding:5px 7px}}@media (max-width:520px){.topbar{padding:0 18px}.live-dot{display:none}.content{width:calc(100% - 28px)}.filters{flex-direction:column;align-items:stretch}.select-button{width:100%}.segmented button{flex:1}.segmented{display:flex}.board-head{flex-direction:column;align-items:flex-start;gap:15px;padding:19px}.table-controls{flex-direction:column;align-items:flex-start;width:100%}.table-controls .segmented,.week-picker{width:100%}.week-picker label{flex:1;justify-content:center}.week-link{font-size:0}.week-link span{font-size:18px}.stat-grid{margin-top:26px}footer{flex-direction:column;gap:6px}.submission-card{margin-top:26px;padding:18px}.submission-head{flex-direction:column;gap:17px}.week-entry{justify-content:space-between;width:100%}.week-entry input{width:90px}.score-entry input{flex-basis:88px;width:88px}.submission-preview{padding:15px}.submission-preview li{font-size:10px}.submission-actions{flex-direction:column}.submission-actions button{width:100%}.submission-success pre{padding:15px;font-size:12px}.nav-links button{font-size:11px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
