.race-preview{margin:12px 16px 0;border:1px solid var(--line,#354238);border-radius:12px;overflow:hidden;background:linear-gradient(110deg,rgba(13,140,80,.1),transparent 70%);height:180px;max-height:23svh;min-height:112px;}
.race-preview-link{display:grid;grid-template-columns:130px 1fr 26px;align-items:center;gap:18px;height:100%;padding:15px 20px;color:inherit;text-decoration:none;}
.race-preview-link:hover{background:rgba(13,140,80,.06);text-decoration:none;}.race-preview-link:focus-visible{outline:3px solid #0d8c50;outline-offset:-4px;}
.race-preview-map{width:122px;height:106px;object-fit:contain;filter:brightness(0) invert(1);opacity:.82;}
[data-theme="light"] .race-preview-map,[data-theme="light"] #race-map{filter:none;}
.race-preview-copy{display:grid;gap:6px;min-width:0;}.race-preview-copy small{font-size:10px;letter-spacing:.16em;color:#0d8c50;font-weight:800;}.race-preview-copy strong{font-size:clamp(16px,2vw,23px);line-height:1.1;}.race-preview-copy [id$="countdown"]{font-size:clamp(13px,1.6vw,19px);font-variant-numeric:tabular-nums;font-weight:650;}.race-preview-copy [id$="time"]{font-size:11px;opacity:.68;}.race-preview-arrow{font-size:25px;color:#0d8c50;}
.race-day-intro{display:grid;grid-template-columns:1fr 170px;align-items:center;gap:20px;padding:18px 0 22px;}.race-day-intro h1{font-size:clamp(28px,4vw,49px);margin:7px 0 12px;line-height:1.06;}.race-day-intro h1+p{margin:0;max-width:660px;}
#race-map{width:160px;height:120px;object-fit:contain;filter:brightness(0) invert(1);}
.race-clock{display:flex;gap:24px;flex-wrap:wrap;align-items:center;padding:18px 22px;border:1px solid var(--line,#354238);border-radius:12px;background:rgba(13,140,80,.07);margin-bottom:18px;}
#race-countdown{font-size:clamp(22px,4vw,38px);font-variant-numeric:tabular-nums;line-height:1.2;}.race-clock-detail{display:grid;gap:3px;font-size:13px;}.race-controls{display:flex;gap:15px;align-items:end;flex-wrap:wrap;margin:14px 0 22px;}.race-controls label{display:grid;gap:6px;font-size:11px;font-weight:700;letter-spacing:.06em;}.race-controls select{max-width:100%;min-width:220px;}
.race-day-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:18px;align-items:start;}.race-day-grid .panel{min-width:0;}.race-graph{height:350px;min-height:250px;}.race-freshness{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;opacity:.7;margin:12px 0;}.race-timing-note{font-size:12px;padding:12px 0;}.race-control-list{padding-left:20px;font-size:13px;display:grid;gap:9px;}.race-control-list time{font-variant-numeric:tabular-nums;opacity:.65;margin-right:8px;}.person-stats{margin:18px 0;}.person-stats h2{margin-bottom:14px;}.person-series{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 20px;}.person-series a[aria-current="page"]{background:#0d8c50;color:white;border-color:#0d8c50;}.person-record-note{font-size:12px;opacity:.75;}.directory-series{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}.directory-series button[aria-pressed="true"]{background:#0d8c50;color:white;}.driver-series-tags{display:flex;gap:6px;flex-wrap:wrap;}.driver-series-tags span{font-size:10px;border:1px solid var(--line,#354238);border-radius:10px;padding:2px 6px;}
body.has-race-preview .hero{padding-top:20px;padding-bottom:16px;min-height:0;}body.has-race-preview .hero h1{font-size:clamp(31px,4vw,48px);line-height:1.02;}body.has-race-preview .hero h1 br{display:none;}body.has-race-preview .hero h1 em:before{content:' ';}body.has-race-preview .hero p{margin:6px 0;}body.has-race-preview .season-explanation{font-size:12px;line-height:1.4;}body.has-race-preview .chart#season-chart{height:clamp(220px,calc(100svh - 470px),440px);min-height:220px;}
@media(max-height:800px) and (min-width:900px){.race-preview{height:112px;min-height:102px;}.race-preview-map{height:78px;}body.has-race-preview .hero{padding-top:12px;padding-bottom:10px;}body.has-race-preview .hero h1{font-size:32px;}}
@media(max-width:850px){.race-day-grid{grid-template-columns:1fr;}.race-day-intro{grid-template-columns:1fr 110px;}#race-map{width:105px;height:90px;}.race-preview{height:132px;min-height:118px;margin:10px 10px 0;}.race-preview-link{grid-template-columns:88px 1fr 18px;padding:12px;gap:10px;}.race-preview-map{width:85px;height:85px;}.race-preview-copy strong{font-size:17px;}.race-preview-copy [id$="time"]{font-size:10px;line-height:1.3;}.race-preview-copy [id$="countdown"]{font-size:13px;}.race-graph{height:300px;}}
@media(prefers-reduced-motion:reduce){.race-preview *{transition:none!important;}}
