@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#f6f7f2;--ink:#142b26;--muted:#718079;--lime:#d7f568;--line:#dce1d8;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}button,input,select{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #6f9920;outline-offset:4px}button{color:inherit}h1,h2,h3,strong,.brand{font-family:'Space Grotesk',sans-serif}h2,h3,p{margin-top:0}.topbar{height:87px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100% - 1220px)/2))}.brand{display:flex;align-items:center;font-size:24px;font-weight:700;letter-spacing:-1px}.light{font-weight:400}.brand-icon{background:var(--ink);color:var(--lime);width:35px;height:35px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;margin-right:11px}.brand-icon span{font-size:19px}.edition{font-size:10px;letter-spacing:1.4px;margin-left:24px;border-left:1px solid var(--line);padding-left:24px;color:var(--muted)}main{max-width:1220px;margin:auto;padding:48px 0 0}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;display:flex;align-items:center;gap:8px}.live-dot{display:inline-block;width:7px;height:7px;background:#84a83a;border-radius:50%}.hero{display:flex;justify-content:space-between;align-items:center;margin:18px 0 38px}h1{font-size:clamp(48px,5.5vw,76px);letter-spacing:-4px;line-height:1.02;margin:0 0 22px;font-weight:600}em{font-style:normal;color:#6f8c32}.hero p{color:#62726c;font-size:16px;line-height:1.7}.event{display:flex;gap:24px;font-size:10px;font-weight:700;letter-spacing:1px;margin-top:26px}.countdown{border:1px solid var(--line);border-radius:15px;padding:24px 29px;min-width:290px;transform:rotate(2deg);background:#eef1e7}.countdown>span:first-child{font-size:10px;letter-spacing:1.5px;font-weight:700}.countdown strong{display:block;font-size:38px;letter-spacing:-2px;margin:14px 0 4px}.countdown small{color:#69775f}.countdown-line{height:1px;background:#d1dac2;margin:20px 0 12px}.tiny{font-size:10px;color:var(--muted)}.tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:28px}.tabs button{border:0;background:none;padding:15px 3px;font-size:13px;font-weight:600;color:var(--muted);border-bottom:3px solid transparent}.tabs button.active{border-color:var(--ink);color:var(--ink)}.section-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px}.section-head h2{font-size:18px;margin:0;letter-spacing:-.5px}.section-head h2 span{font-size:11px;background:#e6ebdf;border-radius:5px;padding:3px 6px;margin-left:8px}.muted{color:var(--muted);font-size:12px}.dashboard{display:grid;grid-template-columns:320px 1fr;gap:22px}.card{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.runner-cover{height:261px;background:#dce1d4;position:relative;overflow:hidden;background-image:radial-gradient(ellipse at center,#f3f3e7,transparent)}.runner-cover img{height:455px;position:absolute;top:-8px;left:50%;transform:translateX(-50%);width:155px;object-fit:cover;object-position:top;border-radius:0 0 45% 45%}.bib{position:absolute;z-index:1;font-size:9px;letter-spacing:1px;background:#fff9;padding:7px 9px;top:16px;left:16px;border-radius:5px}.fav{position:absolute;top:14px;right:18px;color:var(--ink);font-size:22px}.runner-info{padding:24px}.runner-info .eyebrow{font-size:8px;letter-spacing:1.1px}.runner-info h2{font-size:26px;letter-spacing:-1px;margin:10px 0 6px}.verified{font-size:13px;border-radius:50%;background:var(--lime);padding:2px 5px;vertical-align:middle}.runner-info p{font-size:12px;color:var(--muted)}.runner-facts{display:flex;justify-content:space-between;padding:19px 0;border-top:1px solid var(--line);margin-top:20px}.runner-facts span{font-size:10px;color:var(--muted)}.runner-facts strong{display:block;font-size:14px;color:var(--ink);margin-top:6px}.outline,.primary{border:1px solid var(--line);border-radius:7px;padding:11px 16px;background:transparent;font-size:12px;font-weight:600}.primary{background:var(--ink);color:var(--lime);border-color:var(--ink)}.primary:hover{background:#28473e}.outline:hover{background:#eff3e8}.full{width:100%}.race-column{display:flex;flex-direction:column;gap:18px}.race{padding:27px 30px}.race-heading{display:flex;justify-content:space-between;align-items:flex-start}.race-heading h2{font-size:24px;letter-spacing:-.8px;line-height:1.2;margin:12px 0 22px}.race-heading h2 span{color:#879184}.badge{font-size:8px;letter-spacing:1px;border:1px solid #dfd9b9;background:#fffbee;color:#877536;padding:6px 8px;border-radius:5px}.stats{display:grid;grid-template-columns:1fr 1.2fr 1fr;margin:0 0 30px}.stats div+div{border-left:1px solid var(--line);padding-left:24px}.stats span{display:block;color:var(--muted);font-size:11px;margin-bottom:8px}.stats strong{font-size:30px;letter-spacing:-1px;font-variant-numeric:tabular-nums}.stats small{font-size:13px;font-weight:400;color:var(--muted)}.progress-label{display:flex;justify-content:space-between;font-size:10px}.progress{height:8px;background:#eef0e9;border-radius:10px;position:relative;margin:12px 0}.progress>div{height:100%;width:0;background:#a8cc41;border-radius:10px;transition:width .4s}.finish{position:absolute;right:0;top:-6px;background:white}.milestones{display:flex;justify-content:space-between;font-size:9px;color:var(--muted)}.projection{background:#f0f4e7;border-radius:8px;padding:15px 18px;margin:23px 0 20px;display:flex;justify-content:space-between;align-items:center}.projection>span:first-child{font-size:8px;font-weight:600;letter-spacing:1px}.projection strong{display:block;font-size:26px;letter-spacing:-1px;margin-top:4px}.projection>span:last-child{font-size:11px;max-width:140px}.controls{display:flex;gap:8px;align-items:center}.controls .primary{flex:1}.speed{font-size:10px;color:var(--muted);margin-left:8px}.speed select{border:0;background:#f0f2ed;border-radius:4px;padding:5px;font-size:11px;color:var(--ink)}.scrub{margin-top:18px}.scrub label{font-size:10px;color:var(--muted);display:flex;justify-content:space-between}.scrub input{width:100%;accent-color:#73942b;height:18px}.disclaimer{font-size:10px;color:var(--muted);line-height:1.6;margin:10px 0 0}.radio{padding:20px 26px;background:#eaf0e2}.radio-head{display:flex;align-items:center;justify-content:space-between}.radio h3{font-size:12px;margin:0;display:flex;gap:8px;align-items:center}.text-button{border:0;background:none;padding:5px 0;font-size:11px;text-decoration:underline;text-underline-offset:4px}.radio p{font-size:15px;line-height:1.6;margin:15px 0}.radio-bottom{display:flex;justify-content:space-between;color:var(--muted);font-size:9px}.radio-bottom>span:last-child{font-size:8px;letter-spacing:1px}.bottom-strip{display:flex;justify-content:space-between;margin-top:22px;border:1px dashed #cbd3c2;border-radius:8px;padding:16px 20px;font-size:11px;color:#728066}.bottom-strip strong{color:var(--ink);margin-right:12px}footer{display:flex;flex-wrap:wrap;align-items:center;gap:22px;border-top:1px solid var(--line);margin-top:48px;padding:28px 0;color:var(--muted);font-size:10px}footer .brand{font-size:18px;color:var(--ink)}footer p{margin:0;flex:1}footer>a:not(.brand){font-size:11px}.footer-note{width:100%;font-size:9px}.shoe-grid,.bet-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.evidence{width:100%;max-height:700px;object-fit:cover;border-radius:14px;object-position:center 65%}.shoe-story,.bet-form,.prediction-card{padding:40px}.shoe-story h2,.bet-form h2{font-size:40px;line-height:1.1;letter-spacing:-2px;margin:20px 0}.shoe-story p,.bet-form p,.prediction-card p{color:var(--muted);line-height:1.8}.shoe-story blockquote{border-left:3px solid #a8cc41;margin:24px 0;padding:4px 0 4px 18px;font-size:18px;line-height:1.6}.checklist{border-top:1px solid var(--line);padding-top:22px}.checklist h3{font-size:16px}.checklist label{display:flex;align-items:center;gap:10px;margin:15px 0;font-size:13px}.checklist input{accent-color:#738e32;width:18px;height:18px}.check-result{font-size:12px}.bet-form form{display:flex;flex-direction:column;gap:10px;margin-top:26px}.bet-form label{font-size:12px;font-weight:600}.bet-form input{width:100%;padding:13px;border:1px solid var(--line);background:#f9faf6;border-radius:6px;margin-bottom:8px}.bet-form small{font-size:10px;color:var(--muted)}.bet-form .primary{margin-top:18px}.time-fields{border:0;margin:0;padding:0;min-width:0}.time-fields legend{font-size:12px;font-weight:600;padding:0;margin-bottom:12px}.time-parts{display:grid;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 12px minmax(0,1fr);align-items:end;gap:8px}.time-parts label{display:flex;flex-direction:column;gap:8px;color:var(--muted);font-size:11px!important;font-weight:500!important;min-width:0}.bet-form .time-parts input{font-family:'Space Grotesk',sans-serif;font-size:28px;line-height:1.3;text-align:center;padding:14px 4px;margin:0;font-variant-numeric:tabular-nums;min-width:0}.time-parts>span{text-align:center;align-self:end;padding-bottom:16px;font-size:26px;color:var(--muted)}.prediction-card{background:#eaf0e2;display:flex;flex-direction:column;text-align:center;justify-content:center;min-height:420px}.prediction-card>.eyebrow{justify-content:center}.big-symbol{display:block;font-size:65px;margin:35px 0;color:#7c963f}.prediction-card h2{font-size:30px;letter-spacing:-1px}.prediction-time{font-size:66px;font-family:'Space Grotesk';letter-spacing:-3px;margin:35px 0 15px}.prediction-card .outline{margin-top:25px}dialog{border:1px solid var(--line);border-radius:16px;padding:36px;max-width:440px;color:var(--ink);background:var(--bg);width:90%}dialog::backdrop{background:#142b2688;backdrop-filter:blur(4px)}dialog h2{font-size:30px;margin:24px 0}dialog p{line-height:1.8}.dialog-close{float:right}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:8px;padding:15px 23px;font-size:13px;box-shadow:0 5px 25px #0002;z-index:10;display:none;max-width:90%;text-align:center}[hidden]{display:none!important}@media(min-width:1600px){main{padding-top:60px}}@media(max-width:1300px){main{margin:0 5%}.topbar{padding:0 5%}}@media(max-width:900px){.dashboard{grid-template-columns:260px 1fr}.race{padding:24px 20px}.stats strong{font-size:23px}.stats div+div{padding-left:12px}.controls{flex-wrap:wrap}.speed{margin-left:0}.hero h1{font-size:61px}.event{gap:12px;font-size:9px}.bottom-strip{gap:20px}.shoe-story{padding:25px}.shoe-story h2{font-size:31px}}@media(max-width:650px){.topbar{height:70px}.brand{font-size:21px}.edition{display:none}.topbar .outline{padding:9px 12px;font-size:10px}main{padding-top:28px;margin:0 5%}.eyebrow{font-size:8px;letter-spacing:1.1px}.hero{display:block;margin-top:19px;margin-bottom:22px}.hero h1{font-size:59px;letter-spacing:-3px}.hero p{font-size:14px;margin-bottom:18px}.event{font-size:8px;gap:18px;margin-top:18px}.countdown{transform:none;padding:16px 19px;margin-top:26px;min-width:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.countdown>span:first-child{font-size:8px}.countdown strong{font-size:25px;letter-spacing:-1px;margin:0}.countdown small{font-size:9px;width:100%;text-align:right}.countdown-line{display:none}.countdown .tiny{font-size:8px;width:100%;margin-top:3px}.tabs{gap:0;justify-content:space-between;margin-bottom:23px}.tabs button{font-size:11px;padding:14px 2px}.section-head h2{font-size:16px}.section-head .muted{display:none}.dashboard{grid-template-columns:1fr;gap:16px}.runner{display:grid;grid-template-columns:105px 1fr;min-height:210px}.runner-cover{height:100%}.runner-cover img{height:360px;width:122px;top:0;left:45%;border-radius:0}.bib{font-size:6px;top:auto;bottom:10px;left:5px;padding:5px}.fav{font-size:18px;top:9px;right:7px}.runner-info{padding:18px 16px}.runner-info h2{font-size:23px;margin:9px 0 5px}.runner-info p{font-size:10px}.runner-info .eyebrow{font-size:6px}.runner-facts{margin-top:13px;padding:12px 0;gap:10px}.runner-facts strong{font-size:12px}.runner-facts span{font-size:8px}.runner-info .outline{font-size:9px;padding:9px 3px}.race{padding:23px 19px}.race-heading h2{font-size:23px}.badge{font-size:7px;padding:5px}.stats{margin-bottom:25px}.stats strong{font-size:24px}.stats span{font-size:9px}.stats small{font-size:10px}.projection{padding:14px}.projection>span:last-child{font-size:10px;max-width:115px}.controls .primary{font-size:11px}.speed{font-size:9px}.radio{padding:19px}.radio p{font-size:14px}.radio-bottom{font-size:8px}.radio-bottom>span:last-child{font-size:6px;letter-spacing:.4px}.bottom-strip{display:block;font-size:10px;padding:15px}.bottom-strip>span{display:block}.bottom-strip>span+span{margin-top:10px}.shoe-grid,.bet-grid{grid-template-columns:1fr}.evidence{max-height:380px}.shoe-story,.bet-form,.prediction-card{padding:27px}.shoe-story h2{font-size:35px}.bet-form h2{font-size:38px}.prediction-card{min-height:320px}footer{gap:16px;margin-top:32px;padding:25px 0}footer p{flex-basis:60%;font-size:9px}footer .text-button,footer>a:not(.brand){font-size:10px}.footer-note{font-size:8px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.public-bets{margin-top:24px;padding:28px 30px}.public-bets-head{display:flex;justify-content:space-between;gap:18px;align-items:center}.public-bets h2{margin:10px 0;font-size:25px;letter-spacing:-1px}.public-bets h2 span{font-size:12px;background:#eaf0e2;padding:4px 8px;border-radius:6px;vertical-align:middle;margin-left:6px}.public-bets-head p{font-size:12px;color:var(--muted);margin-bottom:10px}.public-bets-head button{flex-shrink:0}#bets-status{font-size:12px;line-height:1.6;color:var(--muted);margin:15px 0}#bets-status.error{color:#a33c30}.bets-table-wrap{width:100%;overflow-x:auto}#bets-table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}#bets-table th{color:var(--muted);font-size:10px;letter-spacing:.8px;text-transform:uppercase;padding:14px 10px;border-bottom:1px solid var(--line)}#bets-table td{padding:17px 10px;border-bottom:1px solid #edf0e8;word-break:break-word}#bets-table th:first-child,#bets-table td:first-child{padding-left:0}#bets-table td:nth-child(2){font-family:'Space Grotesk',sans-serif;font-size:20px;letter-spacing:-.5px;white-space:nowrap}#bets-table td:last-child{font-size:11px;color:var(--muted)}#bets-table tr.mine{background:#f1f6e7}.you-badge{display:inline-block;margin-left:7px;background:#d7f568;padding:3px 6px;border-radius:4px;font-size:9px;font-weight:600}.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}button:disabled{cursor:wait;opacity:.6}.prediction-card .eyebrow{line-height:1.6}#saved-prediction>p{font-size:12px}@media(max-width:650px){.public-bets{padding:22px 18px}.public-bets h2{font-size:22px}.public-bets-head{align-items:flex-start}.public-bets-head p{font-size:11px}.public-bets-head button{padding:9px;font-size:10px}#bets-table{font-size:12px}#bets-table td{padding:14px 7px}#bets-table td:nth-child(2){font-size:18px}#bets-table td:last-child{font-size:9px}}
