:root{--race-ink:#0b1b37;--race-muted:#60728c;--race-teal:#008b95;--race-line:#dde5ee;--race-gold:#d8a82e}
html{scroll-behavior:smooth;scroll-padding-top:90px;font-size:16px}
body.race-site{margin:0;background:#f5f8fb;color:var(--race-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:clip}
.race-site *{box-sizing:border-box}
.race-site h1,.race-site h2,.race-site h3{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em;color:var(--race-ink)}
.race-site a{color:#007e88;text-underline-offset:4px}
.race-site button,.race-site input{font:inherit}
.race-site :focus-visible{outline:3px solid #0399b0;outline-offset:4px}
.race-site [hidden]{display:none!important}
.skip-link{position:fixed;left:20px;top:-80px;padding:12px;background:white;z-index:11000}
.skip-link:focus{top:12px}
.skip-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;padding:0}
.race-header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--race-line)}
.race-nav{max-width:1280px;min-height:80px;margin:auto;padding:0 36px;gap:42px}
.race-brand{display:flex;align-items:center;gap:12px;font:700 25px Georgia,serif;color:var(--race-ink)!important;text-decoration:none;white-space:nowrap;letter-spacing:-1px}
.pixel-logo{width:26px;display:grid;grid-template-columns:repeat(3,7px);gap:2px;transform:skewY(-5deg)}
.pixel-logo i{height:7px;background:#008b95}.pixel-logo i:nth-child(3n){background:#e0ad35}.pixel-logo i:nth-child(4n){background:#ec7770}.pixel-logo i:nth-child(7n){background:#56b7c5}
.race-links{display:flex;gap:32px;align-items:center}.race-links a,.contributions-link{font-size:14px;text-decoration:none;color:var(--race-ink)!important;white-space:nowrap;padding:28px 0}
.race-links a:first-child{color:var(--race-teal)!important;border-bottom:3px solid var(--race-teal)}
.contributions-link{margin-left:auto;display:flex;align-items:center;gap:8px}.contributions-link span{font-size:24px}
.race-menu{border:1px solid var(--race-line);color:var(--race-ink);padding:6px 10px}
.race-page{max-width:1280px;margin:0 auto;background:#fff;min-height:75vh}
.race-hero{position:relative;padding:44px 48px 28px;background:radial-gradient(ellipse at 5% 8%,#d8eff357,transparent 46%),radial-gradient(ellipse at 98% 4%,#d8e9fa78,transparent 46%),linear-gradient(#f2f7fb,#fff 85%);text-align:center;isolation:isolate}
.hero-eyebrow{font-size:10px;font-weight:700;color:#50808d;letter-spacing:.2em;display:flex;align-items:center;justify-content:center;gap:9px}
.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--race-teal);flex:none;box-shadow:0 0 0 4px #008b950b}
.race-hero h1{font-size:clamp(36px,4.6vw,66px);line-height:1.08;font-weight:700;margin:17px 0 12px;letter-spacing:-.055em}
.hero-subtitle{font-size:clamp(16px,1.8vw,23px);margin:0 0 7px;line-height:1.45}
.hero-finish{font-size:14px;color:#536981;margin-bottom:0}.hero-finish span{margin-left:6px;color:var(--race-ink);font-size:19px}
.race-podium{display:grid;grid-template-columns:1fr 1.1fr 1fr;align-items:end;gap:24px;margin:38px auto 0;max-width:1100px;text-align:left;min-height:340px}
.podium-card{min-width:0;padding:22px 22px 19px;border:1px solid var(--race-line);border-radius:13px;background:rgba(255,255,255,.94);box-shadow:0 8px 28px #12334e08;display:flex;flex-direction:column}
.podium-1{grid-column:2;grid-row:1;border:1px solid var(--race-gold);padding-top:25px;padding-bottom:24px;box-shadow:0 8px 28px #b9953714;background:linear-gradient(130deg,#fff 60%,#fffcf3)}
.podium-2{grid-column:1;grid-row:1}.podium-3{grid-column:3;grid-row:1}
.podium-country{display:flex;align-items:center;gap:15px;min-height:47px;margin-bottom:17px}.podium-country h2{font-size:23px;margin:0;font-weight:700;letter-spacing:-.025em}
.race-medal{display:grid;place-items:center;flex:none;width:43px;height:43px;border-radius:50%;font:bold 30px Georgia,serif;color:#fff;border:3px double #ffffff80;box-shadow:0 2px 4px #0002,inset 0 0 0 2px #fff3;background:linear-gradient(135deg,#c5cdd4,#858f9a)}
.medal-1{background:linear-gradient(135deg,#ffdc67,#cc9719);width:49px;height:49px}.medal-3{background:linear-gradient(135deg,#daa17d,#9d603d)}
.leader-badge{display:inline-block;background:#fff0c2;color:#866019;border-radius:4px;padding:3px 8px;font-size:10px;margin-top:5px;font-weight:600}
.podium-flag{aspect-ratio:2.15;display:flex;justify-content:center;align-items:center;background:#f4f6f8;position:relative;border-radius:6px;overflow:hidden;border:1px solid #0b1b3710;margin-bottom:12px}
.podium-1 .podium-flag{aspect-ratio:2.02}
.podium-flag{--flag-duration:4.8s;--flag-delay:-1.4s;isolation:isolate}
.podium-2 .podium-flag{--flag-duration:5.4s;--flag-delay:-3.2s}
.podium-3 .podium-flag{--flag-duration:4.4s;--flag-delay:-2.1s}
.podium-flag canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block;transform-origin:center;animation:podium-flag-wave var(--flag-duration) ease-in-out var(--flag-delay) infinite}
.podium-flag::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(105deg,transparent 15%,#ffffff05 30%,#ffffff38 43%,#0b1b371a 55%,#ffffff26 68%,transparent 85%);background-size:220% 100%;animation:podium-flag-light var(--flag-duration) ease-in-out var(--flag-delay) infinite}
/* Keep canvas motion in 2D: avoid filtered 3D compositing in iOS Safari. */
@keyframes podium-flag-wave{0%,100%{transform:skewY(.6deg) scale(1.04)}25%{transform:skewY(-.8deg) scale(1.04)}50%{transform:skewY(-.4deg) scale(1.04)}75%{transform:skewY(.9deg) scale(1.04)}}
@keyframes podium-flag-light{0%,100%{background-position:100% 0;opacity:.65}50%{background-position:0 0;opacity:1}}
.podium-flag::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#ffffff15 1px,transparent 1px),linear-gradient(90deg,#00000012 1px,transparent 1px);background-size:5px 5px}
.race-progress{height:10px;background:#e5e9ee;border-radius:8px;overflow:hidden;width:100%;position:relative}
.race-progress>span{display:block;height:100%;background:linear-gradient(90deg,#007b87,#13a7b0);border-radius:inherit;transition:width .3s ease}
.podium-count{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px;font-variant-numeric:tabular-nums}.podium-count strong{font:700 23px Georgia,serif;letter-spacing:-.04em}.podium-count>span{font-size:12px;color:#324d6a}
.podium-gap{font-size:12px;color:var(--race-muted);margin:6px 0 13px;min-height:18px}.podium-1 .podium-gap{color:#9c781d}
.race-button{min-height:43px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--race-teal);color:#fff!important;border:1px solid var(--race-teal);border-radius:7px;padding:9px 16px;font-size:14px;font-weight:650;line-height:1.25;text-decoration:none;transition:background .15s,box-shadow .15s}
.race-button:hover{background:#00747e;box-shadow:0 3px 10px #008b9520}.race-button:disabled{cursor:default;background:#e8efeb;color:#517160!important;border-color:#c6d7ce;box-shadow:none}
.race-button-outline{background:#fff;color:#00697b!important;border-color:#b5c4d5}.race-button-outline:hover{background:#f0fafb;border-color:var(--race-teal)}
.race-standings{padding:2px 48px 20px;scroll-margin-top:18px}.race-tools{display:flex;align-items:center;gap:14px;margin:7px 0 25px}
.race-search{height:46px;border:1px solid var(--race-line);display:flex;align-items:center;border-radius:24px;background:#fff;padding:0 17px;gap:10px;flex:1;min-width:160px;box-shadow:0 3px 10px #173c5b03}
.race-search>span:first-child{font-size:28px;line-height:1;color:#627f9a}.race-search input{border:0;min-width:0;width:100%;outline-offset:0;background:transparent;color:var(--race-ink);font-size:14px}.race-search input::placeholder{color:#788ba4}
.race-search:focus-within{outline:2px solid var(--race-teal);outline-offset:2px}.race-search input:focus-visible{outline:0}
.race-filters{display:flex;align-items:center;gap:9px;max-width:100%;padding:3px;scrollbar-width:none}.race-filters::-webkit-scrollbar{display:none}
.race-filters button{border:1px solid var(--race-line);border-radius:24px;min-height:43px;padding:9px 17px;font-size:12px;background:#fff;color:var(--race-ink);white-space:nowrap}.race-filters button[aria-pressed=true]{background:var(--race-teal);color:#fff;border-color:var(--race-teal)}
.standings-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.standings-heading h2{font-size:32px;margin:0;font-weight:700}.race-connection{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--race-muted)}
#countryCount{border-left:1px solid var(--race-line);padding-left:8px}.race-live-message{font-size:12px;color:var(--race-muted);margin:0 0 8px}.race-live-message:empty{display:none}
.standings-labels,.standing-row{display:grid;grid-template-columns:34px minmax(145px,1.2fr) minmax(140px,1.4fr) minmax(115px,.9fr) minmax(110px,.8fr) 118px;align-items:center;gap:15px;padding:12px 17px}
.standings-labels{font-size:11px;color:var(--race-muted);padding-top:0;padding-bottom:9px}.standings-labels>span:last-child{text-align:center}.standing-row{background:#fff;border:1px solid var(--race-line);border-radius:9px;min-height:70px;margin-bottom:6px;font-size:12px;transition:background .2s}
.standing-row:hover{background:#f5fcfc;border-color:#b9dfe1}.standing-rank{font-size:15px;font-weight:650;font-variant-numeric:tabular-nums}.standing-country{display:flex;align-items:center;gap:13px;min-width:0}.standing-country img{width:43px;height:30px;object-fit:contain;flex:none}.standing-country strong{font-weight:550;overflow-wrap:anywhere}
.standing-progress{display:flex;align-items:center;gap:10px}.standing-progress>span{min-width:36px;font-size:11px}.standing-progress .race-progress{height:9px}.standing-pixels{display:flex;flex-direction:column;gap:2px;font-variant-numeric:tabular-nums}.standing-pixels strong{font-weight:600}.standing-pixels small{font-size:10px;color:var(--race-muted)}.standing-gap{font-size:11px;color:#365773}.standing-row .race-button{min-height:36px;font-size:12px;padding:7px 12px}.race-note{font-size:11px;line-height:1.65;color:#8090a5;margin:16px 0 0;max-width:1000px}
.race-how{margin:22px 48px 0;padding:35px 0 46px;border-top:1px solid var(--race-line);display:grid;grid-template-columns:.9fr 1.5fr;gap:50px}.race-how .hero-eyebrow{justify-content:flex-start;font-size:9px}.race-how h2{font-size:30px;margin:10px 0}.race-how p{font-size:13px;color:var(--race-muted)}.race-how ol{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;list-style:none;padding:0;margin:0}.race-how li{display:flex;flex-direction:column;gap:10px;font-size:12px;line-height:1.65}.race-how li b{color:var(--race-teal);font-size:11px}.race-how li span{color:var(--race-muted);font-size:11px}
.race-empty,.race-loading{padding:36px 15px;text-align:center;color:var(--race-muted);grid-column:1/-1}.race-empty h3{font-size:24px}.race-empty .race-button{margin-top:8px}.flag-unavailable{color:var(--race-muted);font-size:12px;text-align:center}
.race-footer{max-width:1280px;padding:25px 48px 30px;margin:auto;background:#fff;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--race-muted);border-top:1px solid var(--race-line)}.race-footer>div{display:flex;gap:18px}.race-footer a{color:var(--race-muted);text-decoration:none}
.race-cookie{position:fixed;left:20px;bottom:18px;z-index:1040;max-width:460px;display:flex;align-items:center;gap:15px;padding:12px 15px;border:1px solid var(--race-line);border-radius:10px;background:#fff;box-shadow:0 5px 25px #0b1b3712;font-size:11px;line-height:1.5;color:var(--race-muted)}.race-cookie button{border:0;border-radius:5px;background:#e9f5f5;padding:8px 12px;white-space:nowrap;color:#007681}
#loading-container{position:fixed;inset:0;z-index:10000;background:#ffffffbd;display:grid;place-items:center;color:var(--race-teal)}
.race-purchase-dialog .modal-dialog{max-width:470px;padding:12px;margin-left:auto;margin-right:auto}.race-purchase-dialog .modal-content{border:1px solid var(--race-line);border-radius:18px;box-shadow:0 18px 70px #0b1b3720;overflow:hidden}.race-purchase-dialog .modal-body{padding:28px;max-height:calc(100dvh - 70px);overflow-y:auto;overscroll-behavior:contain;scroll-padding:20px}.race-close{border:0;background:transparent;position:absolute;right:12px;top:8px;z-index:2;font-size:28px;line-height:1;width:36px;height:36px;color:#5c728e}.sheet-handle{display:none}
.purchase-actions{border:0;padding:0;margin:0 0 18px;display:flex;flex-wrap:wrap;gap:8px}.purchase-actions legend{float:none;width:100%}.purchase-actions label{display:flex;flex:1;align-items:center;gap:8px;min-height:48px;padding:10px;border:1px solid #b5c4d5;border-radius:7px;font-size:12px;cursor:pointer;touch-action:manipulation}.purchase-actions label.is-selected{background:#edfafa;border-color:var(--race-teal);color:#00697b;font-weight:650}.purchase-actions label:focus-within{outline:2px solid var(--race-teal);outline-offset:2px}.purchase-actions input{accent-color:var(--race-teal);width:18px;height:18px;flex:none;margin:0}
.purchase-title-row{display:flex;align-items:center;gap:15px;padding-right:20px}.purchase-title-row img{width:57px;height:42px;object-fit:contain}.purchase-title-row h2{font-size:26px;font-weight:700;margin:3px 0 0}.purchase-eyebrow{font-size:8px;font-weight:700;letter-spacing:.12em;color:var(--race-muted)}.purchase-rival{font-size:12px;color:var(--race-muted);margin:17px 0 23px;line-height:1.6}.purchase-label{font-size:12px;font-weight:650;display:block;margin:15px 0 8px}
.race-purchase .purchase-title-row{position:sticky;top:-28px;z-index:2;background:#fff;margin:-28px -28px 0;padding:28px 52px 14px 28px;border-bottom:1px solid #edf1f5;box-shadow:0 6px 12px #ffffffeb}
.race-purchase .purchase-title-row>div{min-width:0;overflow-wrap:anywhere}
.race-purchase-dialog .race-close{z-index:3}
@media(max-width:575px){.race-purchase .purchase-title-row{top:-24px;margin:-24px -20px 0;padding:24px 52px 12px 20px}.race-purchase-dialog .sheet-handle{z-index:3}}
#CountryInfo.race-purchase-dialog .modal-content{border-radius:18px;border-color:var(--race-line);box-shadow:0 18px 70px #0b1b3720}
.race-purchase-dialog .purchase-terms{background:transparent;border:0;border-radius:0;padding:0;font-size:11px;line-height:1.65}
.race-quantity-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:13px}.race-quantity-presets button{min-height:42px;border:1px solid #cdd9e6;border-radius:7px;background:#fff;color:#34526d;font-size:13px}.race-quantity-presets button[aria-pressed=true]{background:var(--race-teal);color:#fff;border-color:var(--race-teal)}.race-quantity-presets button:disabled{opacity:.4}
.purchase-quantity{display:flex;align-items:center;gap:12px;min-height:45px}.purchase-quantity label{font-size:12px;flex:1}.purchase-quantity input{width:100px;border:1px solid #cdd9e6;border-radius:6px;padding:9px;font-size:16px;color:var(--race-ink)}.purchase-quantity>span{font-size:12px;color:var(--race-muted)}#quantityHint{display:block;font-size:10px;color:var(--race-muted);margin-top:8px}.purchase-impact{font-size:12px;text-align:center;margin:18px 0;padding:12px;background:#f0f9fa;border-radius:7px;color:#17616a;line-height:1.6;min-height:42px}
.race-purchase .form-control{font-size:16px;border-color:#cdd9e6;min-height:42px}.purchase-check{display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.65;color:#536b87;margin-top:13px}.purchase-check input{accent-color:var(--race-teal);width:16px;height:16px;flex:none;margin-top:2px}.purchase-terms{margin-top:18px}.purchase-order-note{font-size:10px;line-height:1.6;color:var(--race-muted);margin:16px 0 8px}.purchase-sticky{position:sticky;bottom:-28px;background:#fff;padding:15px 0 12px;margin-bottom:-12px;border-top:1px solid #edf1f5;box-shadow:0 -7px 14px #ffffffeb;z-index:1}.purchase-total{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:12px;font-size:12px}.purchase-total strong{font-size:20px}.purchase-sticky .race-button{width:100%;min-height:46px}.purchase-sticky>small{display:block;text-align:center;font-size:10px;color:var(--race-muted);margin-top:12px}.purchase-feedback{font-size:12px;padding:12px;border:1px solid #c4dfe7;border-radius:7px;background:#f1f9fc;margin:12px 0;line-height:1.6}.purchase-feedback[data-state=error]{color:#9f3434;background:#fff5f5;border-color:#edc6c6}.purchase-feedback[data-state=success]{color:#216747;background:#f0fbf5}
.contributions-page{padding:55px 48px}.contributions-page>.hero-eyebrow{justify-content:flex-start}.contributions-page h1{font-size:44px;margin:15px 0}.contributions-page>p{font-size:13px;color:var(--race-muted)}.contribution-list{display:grid;gap:10px;margin-top:30px}.contribution-list article{padding:20px;border:1px solid var(--race-line);border-radius:9px;display:flex;justify-content:space-between;gap:15px;font-size:13px}.contribution-list article>div{display:flex;flex-direction:column;gap:5px}.contribution-list time{font-size:11px;color:var(--race-muted)}.contribution-status{color:#007b86;font-size:12px}
@media(min-width:1440px){.race-header{margin:28px auto 0;max-width:1280px;border-radius:18px 18px 0 0}.race-footer{border-radius:0 0 18px 18px;margin-bottom:28px}.race-nav{padding-inline:48px}}
@media(max-width:1100px){.race-nav{gap:25px;padding-inline:26px}.race-links{gap:20px}.race-brand{font-size:23px}.race-hero{padding-inline:28px}.race-podium{gap:15px}.podium-card{padding:17px}.podium-1{padding-block:22px}.podium-country{gap:10px}.podium-country h2{font-size:21px}.race-standings{padding-inline:28px}.race-tools{flex-wrap:wrap;gap:10px}.race-search{min-width:220px}.race-filters{gap:6px}.race-filters button{padding-inline:13px}.standing-row,.standings-labels{grid-template-columns:28px minmax(120px,1.2fr) minmax(100px,1.2fr) 105px 95px 95px;gap:10px;padding-inline:12px}.race-how{margin-inline:28px;gap:30px}.race-footer{padding-inline:28px}}
@media(max-width:767px){.race-nav{min-height:64px;padding:12px 20px;gap:0}.race-brand{font-size:22px;gap:9px}.pixel-logo{transform:scale(.85);transform-origin:left center;width:22px}.race-links{flex-direction:column;align-items:flex-start;gap:0;padding-top:15px}.race-links a{padding:12px 0;border-bottom:0!important;width:100%}.contributions-link{padding:12px 0;margin:0}.race-hero{padding:28px 18px 20px}.hero-eyebrow{font-size:8px;letter-spacing:.12em}.race-hero h1{font-size:clamp(29px,5.4vw,42px);margin-top:14px;letter-spacing:-.055em}.hero-subtitle{font-size:14px;margin-top:10px}.hero-finish{font-size:11px;margin-top:8px}.race-podium{gap:9px;margin-top:27px;min-height:0;grid-template-columns:1fr 1.08fr 1fr}.podium-card{padding:12px 9px 10px;border-radius:10px;text-align:center}.podium-1{padding-top:16px;padding-bottom:15px}.podium-country{flex-direction:column;gap:6px;margin-bottom:12px;min-height:62px}.race-medal{width:30px;height:30px;font-size:21px}.medal-1{width:35px;height:35px}.podium-country h2{font-size:15px;overflow-wrap:anywhere}.leader-badge{font-size:7px;padding:3px 4px;max-width:100%;line-height:1.2}.podium-flag,.podium-1 .podium-flag{aspect-ratio:1.65;margin-bottom:8px;border-radius:3px}.podium-flag::after{background-size:3px 3px}.podium-count{flex-direction:column;gap:2px;margin-top:7px}.podium-count strong{font:700 14px "Segoe UI",sans-serif;letter-spacing:-.035em}.podium-count>span{font-size:8px;white-space:nowrap}.podium-gap{display:none}.podium-card>.race-button{margin-top:9px;font-size:10px;padding:7px 4px;min-height:37px;overflow-wrap:anywhere}.podium-card .race-progress{height:6px}.race-standings{padding:0 18px 18px}.race-tools{display:block;margin:4px 0 16px}.race-search{height:43px;width:100%;margin-bottom:9px;min-width:0}.race-filters{overflow-x:auto;gap:7px;justify-content:flex-start;padding:3px 2px 7px}.race-filters button{font-size:10px;min-height:37px;padding:9px 14px}.standings-heading{margin:14px 0}.standings-heading h2{font-size:27px}.race-connection{font-size:9px;gap:6px}.race-connection .live-dot{width:5px;height:5px}#countryCount{display:none}.standings-labels{display:none}.standing-row{grid-template-columns:27px 1fr auto;gap:9px 10px;padding:14px 13px;margin-bottom:9px}.standing-rank{align-self:center;font-size:16px}.standing-country{grid-column:2/4;gap:10px;font-size:13px}.standing-country img{width:32px;height:24px}.standing-progress{grid-column:2/4;margin-top:2px;gap:8px}.standing-progress>span{min-width:30px;font-size:10px}.standing-pixels{grid-column:2;font-size:11px;gap:0}.standing-pixels small{display:none}.standing-gap{grid-column:3;font-size:10px;text-align:right}.standing-row>.race-button{grid-column:2/4;min-height:37px;background:var(--race-teal);border-color:var(--race-teal);color:white!important;margin-top:1px;font-size:11px}.race-note{font-size:10px;margin-top:15px}.race-how{margin:10px 18px 0;display:block;padding-block:28px}.race-how h2{font-size:27px}.race-how ol{margin-top:24px;gap:16px}.race-how li{font-size:11px}.race-how li span{font-size:10px}.race-footer{flex-direction:column;padding:20px 18px;gap:12px;font-size:10px}.race-cookie{bottom:10px;left:10px;right:10px;width:auto;max-width:none;font-size:10px;padding:10px 12px}.contributions-page{padding:35px 20px}.contributions-page h1{font-size:35px}.contribution-list article{flex-direction:column;gap:9px}}
@media(max-width:575px){.race-purchase-dialog .modal-dialog{padding:0;margin:0;display:flex;align-items:flex-end;min-height:100%;max-width:100%}.race-purchase-dialog .modal-content{border-radius:20px 20px 0 0;border-bottom:0;max-height:min(90dvh,800px);padding-bottom:env(safe-area-inset-bottom)}.race-purchase-dialog .modal-body{padding:24px 20px 18px;max-height:calc(90dvh - 20px - env(safe-area-inset-bottom))}.sheet-handle{display:block;width:36px;height:4px;background:#c6cfda;border-radius:4px;position:absolute;left:calc(50% - 18px);top:8px;z-index:1}.race-close{top:16px;right:12px}.purchase-title-row h2{font-size:23px}.purchase-rival{margin:13px 0 16px;font-size:11px}.purchase-label{margin-top:12px}.purchase-sticky{bottom:-18px;padding-bottom:12px}.race-purchase-dialog.fade .modal-dialog{transform:translateY(30px)}.race-purchase-dialog.show .modal-dialog{transform:none}}
@media(max-width:374px){.race-nav{padding-inline:16px}.race-brand{font-size:21px}.race-hero{padding-inline:12px}.race-hero h1{font-size:29px}.race-standings{padding-inline:12px}.race-podium{gap:7px}.podium-card{padding-inline:7px}.podium-country h2{font-size:13px}.podium-count>span{font-size:7px}.podium-card>.race-button{font-size:9px}.race-connection{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.race-site *,.race-site *::before,.race-site *::after{transition:none!important;animation:none!important}}
@media(max-width:575px){#CountryInfo.race-purchase-dialog .modal-content{border-radius:20px 20px 0 0}}

/* Live activity floats above the page; it never reserves layout space. */
/* Keep all podium actions visible on typical laptop screens. */
@media(min-width:768px){
    .race-hero{padding-top:24px;padding-bottom:20px}
    .race-hero h1{font-size:clamp(36px,4.2vw,56px);margin:10px 0 8px}
    .hero-subtitle{font-size:clamp(16px,1.6vw,20px)}
    .hero-finish{margin-top:6px;font-size:12px}
    .race-podium{max-width:1000px;margin-top:22px;min-height:0;gap:20px}
    .podium-card{padding:15px 18px 12px}
    .podium-1{padding-top:19px;padding-bottom:16px}
    .podium-country{margin-bottom:10px;min-height:42px}
    .podium-flag,.podium-1 .podium-flag{max-height:170px;margin-bottom:9px}
    .podium-gap{margin:3px 0 8px}
    .podium-card>.race-button{min-height:39px;padding-block:8px}
}
.contributors-link{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:11px;line-height:1.4;text-decoration:none;min-height:30px}
.contributors-link:hover{text-decoration:underline}
.podium-card>.contributors-link{margin-top:3px}
.standing-actions{display:flex;flex-direction:column;align-items:stretch;gap:2px}
.standing-actions .contributors-link{font-size:10px}
.standings-more{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px;padding:18px 0 8px}
.standings-more p{margin:0;font-size:12px;color:var(--race-muted)}
.contributors-page{padding:32px 48px 48px}
.contributors-back{font-size:13px;text-decoration:none;display:inline-block;margin-bottom:30px}
.contributors-intro{display:flex;align-items:center;gap:22px}
.contributors-intro>img{width:92px;height:68px;object-fit:contain;flex:none}
.contributors-intro .hero-eyebrow{justify-content:flex-start;font-size:9px}
.contributors-intro h1{font-size:clamp(28px,3.5vw,44px);margin:9px 0;overflow-wrap:anywhere}
.contributors-intro p{font-size:14px;color:var(--race-muted);margin:0;line-height:1.6}
.contributors-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0 36px}
.contributors-stats>div{display:flex;flex-direction:column;gap:5px;padding:22px;background:#f1f9fa;border:1px solid #d9ebed;border-radius:12px}
.contributors-stats strong{font-size:28px;font-variant-numeric:tabular-nums;color:#006f79}
.contributors-stats span{font-size:12px;color:var(--race-muted)}
.contributors-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:16px}
.contributors-heading h2{font-size:28px;margin:0}.contributors-heading p{font-size:12px;color:var(--race-muted);margin:0}
.contributors-list{list-style:none;padding:0;margin:0}
.contributors-list li{display:flex;align-items:center;gap:20px;padding:18px 20px;border:1px solid var(--race-line);border-radius:9px;margin-bottom:8px}
.contributor-position{font-size:14px;color:var(--race-muted);min-width:32px;font-variant-numeric:tabular-nums}
.contributor-person{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1;overflow-wrap:anywhere}
.contributor-person strong{font-size:15px}.contributor-person>span{font-size:11px;color:var(--race-muted)}
.contributor-totals{display:flex;gap:26px;font-size:12px;color:var(--race-muted);font-variant-numeric:tabular-nums}
.contributor-totals strong{color:#006f79}.contributor-totals>span:last-child strong{color:#536981}
.contributors-pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin:25px 0;font-size:12px}
@media(max-width:767px){
    .standing-actions{grid-column:2/4;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10px}
    .standing-actions .race-button{background:var(--race-teal);border-color:var(--race-teal);color:white!important}
    .standing-actions .contributors-link{min-height:38px}
    .podium-card>.contributors-link{font-size:9px;min-height:34px}
    .contributors-page{padding:24px 18px 32px}
    .contributors-intro{align-items:flex-start;gap:14px}.contributors-intro>img{width:50px;height:40px}
    .contributors-intro h1{font-size:30px}.contributors-intro p{font-size:12px}
    .contributors-stats{gap:8px;margin:24px 0}.contributors-stats>div{padding:14px 10px}.contributors-stats strong{font-size:23px}.contributors-stats span{font-size:10px}
    .contributors-heading{display:block}.contributors-heading h2{font-size:25px}.contributors-heading p{margin-top:7px;font-size:11px}
    .contributors-list li{flex-wrap:wrap;gap:10px;padding:15px 12px}.contributor-position{min-width:26px}
    .contributor-totals{width:100%;padding-left:36px;gap:20px}.contributors-pagination{gap:12px}
}
.standing-row.is-rank-switching{position:relative;will-change:transform;box-shadow:0 5px 18px #0b1b3712}
#raceStandings{overflow-anchor:none}
.race-toast-region{position:fixed;left:24px;bottom:24px;z-index:1045;width:360px;max-width:calc(100vw - 32px);pointer-events:none}
.race-event-toast{display:flex;align-items:center;gap:12px;padding:15px 12px 15px 16px;background:#fff;border:1px solid #d8e7eb;border-left:3px solid var(--race-teal);border-radius:12px;box-shadow:0 8px 35px #0b1b371c;pointer-events:auto;animation:race-toast-in .2s ease-out}
.race-event-toast>img{width:40px;height:30px;object-fit:contain;flex:none}
.race-event-copy{flex:1;min-width:0}.race-event-label{display:block;color:#00818d;font-size:9px;letter-spacing:.1em;font-weight:700;margin-bottom:5px}
.race-event-copy p{font-size:12px;line-height:1.55;margin:0;color:var(--race-ink);overflow-wrap:anywhere}.race-event-copy strong{font-weight:650}.race-event-copy small{display:block;color:#007986;font-size:11px;margin-top:5px;font-weight:600}
.race-event-toast>button{align-self:flex-start;flex:none;border:0;border-radius:5px;color:#71849a;background:transparent;font-size:21px;width:30px;height:30px;line-height:1}
body:has(.race-cookie:not([hidden])) .race-toast-region{bottom:112px}
.race-payment-coin{position:fixed;z-index:2147483647;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;border-radius:50%;border:6px double #fff0a2;color:#6b4405;background:radial-gradient(circle at 30% 25%,#fff6b9 0,#ffd465 30%,#edb333 65%,#ba7d11 100%);box-shadow:inset 0 0 0 5px #c28d2680,inset 0 0 22px #fff3ac80,0 12px 35px #744e233b;text-shadow:0 1px 0 #fff5be;animation:race-coin-flight 1.3s cubic-bezier(.25,.6,.3,1) both;transform-origin:center;will-change:transform,opacity}
.race-payment-coin strong{font:700 clamp(32px,8vw,65px) Georgia,serif;line-height:1}.race-payment-coin span{font-size:10px;letter-spacing:.16em;font-weight:800;margin-top:10px}
.race-flag-celebrated{animation:race-flag-glow .6s ease-out}
@keyframes race-toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes race-coin-flight{0%{opacity:0;transform:translate(0,0) rotateY(0deg) scale(.6)}15%{opacity:1;transform:translate(0,0) rotateY(180deg) scale(1)}40%{opacity:1;transform:translate(0,0) rotateY(540deg) scale(1)}100%{opacity:0;transform:translate(var(--flight-x),var(--flight-y)) rotateY(1440deg) scale(.04)}}
@keyframes race-flag-glow{0%{box-shadow:0 0 0 0 #ebc155b3}50%{box-shadow:0 0 0 8px #ebc15533}100%{box-shadow:0 0 0 14px #ebc15500}}
@media(max-width:575px){.race-toast-region{left:16px;bottom:calc(16px + env(safe-area-inset-bottom));width:calc(100vw - 32px)}body:has(.race-cookie:not([hidden])) .race-toast-region{bottom:calc(112px + env(safe-area-inset-bottom))}}
