/* Racing presentation. Original IDs, actions, responsive panel reservations and data renderers remain authoritative. */
[data-hero-text][hidden],#raceHeroTitle[hidden]{display:none!important}
:root{--stats-hero-image:url('/images/statistics/racing-hero.png');--stats-battle-image:url('/images/statistics/racing-battle.png');--stats-cockpit-image:url('/images/statistics/racing-cockpit.png')}
html[data-theme="racing"],body[data-theme="racing"]{--bg:#0a0d18;--surface:#151a2b;--surface-raised:#1c2438;--surface-sunken:#0c1221;--line:#283247;--line-strong:#40516b;--fg:#f2f5fa;--fg-muted:#b5c0d1;--fg-subtle:#98a8bd;--fg-faint:#65768d;--accent:#29ead9;--accent-hover:#67f3e7;--accent-fg:#032622;--accent-dim:#29ead91f;--accent-line:#29ead955}
body{color-scheme:var(--stats-color-scheme,dark)}
body[data-theme="light"]{color-scheme:var(--stats-color-scheme,light)}
.topbar-brand::before{content:'';display:block;width:24px;height:24px;flex:0 0 24px;align-self:center;background:var(--accent);border-radius:0;margin:0;font-size:0;line-height:0;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 21 13 3h4L6 21zm8 0L21 3h3L14 21z'/%3E%3C/svg%3E") center/contain no-repeat}
.topbar-brand{font-weight:800}.topbar-brand b{font-weight:800}
/* A restrained accent tint follows both presets and custom colours; keep photo text readable. */
.race-hero{--hero-shade:color-mix(in srgb,var(--accent) 7%,#080808);--hero-ink:color-mix(in srgb,var(--accent) 8%,#e5e5e5);position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:26rem;container-type:inline-size;background:var(--bg);color:#f7f7f7;overflow:hidden;box-sizing:border-box;margin-right:calc(-1 * var(--chat-w,0px));padding-right:var(--chat-w,0px)}
.race-hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--hero-shade) 94%,transparent) 0%,color-mix(in srgb,var(--hero-shade) 60%,transparent) 39%,color-mix(in srgb,var(--hero-shade) 7%,transparent) 80%),linear-gradient(0deg,var(--bg),transparent 60%),var(--stats-hero-image) var(--stats-hero-position,50% 52%)/cover;transform:scale(var(--stats-hero-zoom,1));transform-origin:var(--stats-hero-position,50% 52%)}
.race-hero{transition:margin-right var(--base) var(--ease),padding-right var(--base) var(--ease)}
.race-hero-inner{width:100%;box-sizing:border-box;max-width:var(--max-w);margin:0 auto;padding:3.5rem var(--s5) 2rem}
.race-eyebrow{font-size:.6875rem;letter-spacing:.13em;font-weight:600;color:var(--fg-subtle);text-transform:uppercase;line-height:1.5}
.race-hero .race-eyebrow{color:var(--hero-ink)}
.race-hero h1{font-family:var(--font);font-size:clamp(2.2rem,4.5vw,4.3rem);font-weight:800;letter-spacing:-.055em;line-height:1.02;margin:1.2rem 0;max-width:15ch;text-transform:uppercase}
.race-hero h1 em{display:block;color:var(--accent);font-style:normal}
.race-hero p{max-width:36rem;font-size:.875rem;line-height:1.8;color:var(--hero-ink);margin:0 0 1.5rem}
.race-hero-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.race-primary,.race-secondary{font:600 .75rem var(--font);text-decoration:none;padding:.85rem 1.2rem;border-radius:2px;display:inline-flex;align-items:center;gap:1rem;border:1px solid transparent;cursor:pointer}
.race-primary{background:var(--accent);color:var(--accent-fg)}.race-secondary{background:#0b1326a6;border-color:#91b4d05c;color:#e5effa}
.race-primary:hover{background:var(--accent-hover)}.race-secondary:hover{border-color:#29ead9;color:#fff}
.race-ribbon{display:flex;align-items:center;gap:1.2rem;padding:1rem var(--s5);border-top:1px solid #7c9bba33;background:#0a1223bb;font-size:.6875rem;letter-spacing:.06em;flex-wrap:wrap;color:#b9ccdd;width:100%;box-sizing:border-box;max-width:var(--max-w);margin:auto auto 0}
.race-checkered{width:25px;height:16px;flex:none;background:conic-gradient(#a9c9d4 25%,transparent 0 50%,#a9c9d4 0 75%,transparent 0) 0 0/8px 8px;transform:skew(-10deg)}
.race-ribbon b{color:var(--accent)}.race-ribbon a{color:#b9ccdd;text-decoration:none;margin-left:auto}
.race-hero .race-secondary{background:color-mix(in srgb,var(--hero-shade) 75%,transparent);border-color:color-mix(in srgb,var(--hero-ink) 35%,transparent);color:var(--hero-ink)}
.race-hero .race-secondary:hover{border-color:var(--accent);color:#fff}
.race-hero .race-ribbon{background:color-mix(in srgb,var(--hero-shade) 82%,transparent);border-color:color-mix(in srgb,var(--hero-ink) 18%,transparent);color:var(--hero-ink)}
.race-hero .race-ribbon a{color:var(--hero-ink)}
.race-hero .race-checkered{background:conic-gradient(var(--hero-ink) 25%,transparent 0 50%,var(--hero-ink) 0 75%,transparent 0) 0 0/8px 8px}
.race-nav{display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap;margin:0 auto;max-width:var(--max-w);padding:1rem var(--s5);border-bottom:1px solid var(--line);font-size:.75rem}
.race-nav button,.race-nav a{font:inherit;background:none;border:0;padding:.35rem 0;color:var(--fg-muted);cursor:pointer;text-decoration:none}.race-nav button:hover,.race-nav a:hover{color:var(--accent)}
.srv-section-title{font-size:1.1rem;font-weight:800;font-style:italic;color:var(--fg);letter-spacing:-.03em;text-transform:uppercase;line-height:1.5;padding-right:6rem;min-height:2rem;margin-bottom:1rem}
.srv-section-title::after{background:var(--line);min-width:0}.srv-section-title .ico{display:none}
.srv-section{padding-top:1.7rem}.srv-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr))}
.srv-card{border-radius:3px!important;background:var(--surface);border-color:var(--line);box-shadow:none!important}
.srv-card .srv-rail{height:3px}.srv-hd{padding:.85rem 1rem}.srv-card-name{font-size:.82rem;font-weight:700}
.srv-hero{min-height:8.4rem;padding:1.25rem 1rem .9rem;background:linear-gradient(120deg,var(--surface-sunken),color-mix(in srgb,var(--info) 8%,var(--surface)))}
.srv-hero::before{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(120deg,transparent 0 30px,color-mix(in srgb,var(--fg) 3%,transparent) 31px 32px)}
.srv-track{font-family:var(--font);font-size:1.35rem;font-weight:800;font-style:italic;text-transform:uppercase;letter-spacing:-.035em;line-height:1.2;position:relative}
.srv-heroline{margin-top:.9rem;flex-wrap:wrap}.srv-clock{font-size:1.65rem}.srv-clockwrap{flex-wrap:wrap}.srv-ghost{opacity:.4}
.srv-stats{padding-top:.85rem;padding-bottom:.85rem}.srv-statv{font-size:1.45rem}.srv-statv small{font-size:.75rem}
.srv-k{font-size:.6875rem;letter-spacing:.06em}.srv-drv-live{padding:1rem}.srv-drv-live-row{font-size:.8rem;min-height:1.6rem}.srv-drv-live-row .t{font-size:.75rem}
.srv-sec.race-conditions{padding:.7rem 1rem;background:var(--surface-sunken);border-top:1px solid var(--line)}
.race-conditions .srv-chips{display:flex;flex-wrap:wrap;gap:.4rem}.race-conditions .srv-chip{font-size:.6875rem;line-height:1.6;white-space:normal}
.race-server-plan{font-size:.6875rem;line-height:1.6;color:var(--fg-muted);padding:.55rem 1rem;border-top:1px solid var(--line);display:flex;gap:.7rem;flex-wrap:wrap}.race-server-plan b{font-weight:600;color:var(--fg-subtle)}
.srv-act{padding:.8rem 1rem}.srv-join-btn{border-radius:2px!important}.srv-more-btn{border-radius:2px!important}
.paddock{padding-top:1.8rem}.pd{border-radius:2px;background:linear-gradient(120deg,var(--surface),var(--surface-sunken));border-color:var(--line)}.pd-title{font-family:var(--font);font-size:1.1rem;font-weight:800}.pd-v{font-size:2rem}.pd-num{padding:1.1rem}.pd-l{font-size:.6875rem}.pd-band{margin-top:1rem}
.tabgroups{gap:.5rem}.tabgroup{border-radius:2px!important;font-size:.8rem;padding:.65rem 1rem}.tabgroup.active{background:var(--accent-dim);color:var(--fg);border-color:var(--accent-line)}
.tabs{margin-bottom:1rem}.tab-btn{font-size:.75rem}.tab-btn.active{color:var(--fg);border-color:var(--accent)}
.page{padding-top:1rem;padding-bottom:2rem}.search-bar input{border-radius:2px}.tbl-wrap{border-radius:2px}.drv-tbl tbody tr:hover{background:var(--surface-raised)}.drv-tbl th{background:var(--surface-sunken)}
.race-art{max-width:var(--max-w);margin:1rem auto 2rem;padding:0 var(--s5)}.race-art-inner{position:relative;isolation:isolate;overflow:hidden;min-height:14rem;display:flex;align-items:center;background:#0c1423;color:#f0f7ff}
.race-art-inner::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#08101bee,#08101b22),var(--stats-cockpit-image) var(--stats-cockpit-position,50% 54%)/cover;transform:scale(var(--stats-cockpit-zoom,1));transform-origin:var(--stats-cockpit-position,50% 54%)}
.race-art-copy{padding:2rem}.race-art h2{font-size:1.8rem;line-height:1.12;font-weight:800;letter-spacing:-.04em;text-transform:uppercase;font-style:italic}.race-art small{display:block;font-size:.6875rem;letter-spacing:.1em;color:#b9d5dd;margin-bottom:1rem}
.race-art button{margin-top:1rem}.race-showcase{width:100%;max-width:var(--max-w);margin:1.5rem auto;padding:0 var(--s5)}.race-showcase[hidden]{display:none}
.race-section-head{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-bottom:1.2rem}.race-section-head h2{font-size:1.2rem;text-transform:uppercase;font-style:italic;font-weight:800;letter-spacing:-.02em;flex:1}.race-section-head button{font:600 .75rem var(--font);color:var(--fg);padding:.6rem .8rem;background:var(--surface);border:1px solid var(--line);cursor:pointer}
.race-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1rem}.race-result-card{background:var(--surface);border:1px solid var(--line);border-radius:2px;padding:1.2rem;min-width:0}.race-result-card small{font-size:.6875rem;color:var(--fg-subtle);display:block}.race-result-card h3{font-size:1.1rem;text-transform:uppercase;font-style:italic;margin:.8rem 0;font-weight:800;overflow-wrap:anywhere}.race-result-card p{font-size:.8rem;color:var(--fg-muted);line-height:1.7}.race-result-card button{display:block;margin-top:1rem;background:none;border:0;color:var(--fg);text-decoration:underline;text-underline-offset:4px;cursor:pointer;font:600 .75rem var(--font)}
.race-event-image{position:relative;isolation:isolate;overflow:hidden;background:#0a1323;min-height:14rem;padding:2rem;color:#f5f7ff;display:flex;flex-direction:column;justify-content:center;margin-bottom:1rem}.race-event-image h3{font-size:1.8rem;font-weight:800;text-transform:uppercase;letter-spacing:-.04em;max-width:20ch}.race-event-image p{font-size:.875rem;line-height:1.7;color:#c2d2e3;margin:.8rem 0}.race-event-image button{align-self:flex-start}
#themePanel{width:330px!important;max-width:calc(100vw - 24px);max-height:calc(100dvh - 100px);overflow:auto;border-radius:3px!important;padding:1.1rem!important;scrollbar-width:thin}
.stats-theme-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;font-size:1rem;font-weight:800}.stats-theme-heading button{background:none;border:0;color:var(--fg);font-size:1.2rem;cursor:pointer}
#statsAppearanceControls{border-top:1px solid var(--line);margin-top:1rem;padding-top:.5rem}.stats-theme-field{display:block;font-size:.75rem;font-weight:600;margin:.9rem 0 .4rem;color:var(--fg-muted)}
.stats-color-row{display:flex;align-items:center;gap:.5rem}.stats-color-row input[type=color]{width:42px;height:38px;padding:3px;background:var(--surface-sunken);border:1px solid var(--line-strong);flex:none}.stats-color-row input[type=text],#statsThemeBase{min-width:0;width:100%;background:var(--surface-sunken);color:var(--fg);border:1px solid var(--line-strong);padding:.6rem;font:.8rem var(--font-mono)}
.stats-rgb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.5rem}.stats-rgb label{font-size:.6875rem;color:var(--fg-subtle)}.stats-rgb input{display:block;width:100%;background:var(--surface-sunken);border:1px solid var(--line-strong);color:var(--fg);padding:.4rem;font:.75rem var(--font-mono)}
.stats-theme-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.stats-theme-actions button,#statsSaveDefault{font:600 .75rem var(--font);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--fg);padding:.7rem;cursor:pointer}.stats-theme-actions #statsSaveAppearance{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}
#statsAppearanceStatus{font-size:.75rem;line-height:1.6;color:var(--fg-muted);margin-top:.5rem}#statsAppearanceAdmin{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}#statsAppearanceAdmin p{font-size:.75rem;line-height:1.5;color:var(--fg-muted);margin-bottom:.5rem}
.embed-mode .race-hero,.embed-mode .race-nav,.embed-mode .race-art,.embed-mode .race-showcase{display:none!important}
@container(max-width:700px){.race-hero-inner{padding-top:2.5rem}.race-hero h1{font-size:2.5rem}.race-hero p{max-width:27rem}}
@media(max-width:768px){.race-hero{min-height:25rem}.race-hero-inner{padding:2.5rem 1rem 2rem}.race-hero h1{font-size:2.5rem}.race-hero::before{background-position:center,center,var(--stats-hero-position,65% 50%)}.race-ribbon{padding:1rem;gap:.6rem;font-size:.6875rem}.race-ribbon a{margin-left:0}.race-nav{padding:.6rem 1rem;gap:.7rem}.race-nav button,.race-nav a{min-height:36px}.race-art-copy{padding:1.3rem}.race-art h2{font-size:1.5rem}.race-section-head h2{font-size:1.05rem}.srv-section-title{font-size:1rem}.srv-grid{grid-template-columns:1fr}.srv-track{font-size:1.2rem}#themePanel{right:12px!important;bottom:70px!important;max-height:calc(100dvh - 90px)}.race-event-image{padding:1.3rem}}
@media(prefers-reduced-motion:reduce){.race-hero *{scroll-behavior:auto}}
/* Keep the grid's one-pixel dividers, without adding thick padding around them. */
.srv-card{padding:0;overflow:visible}.srv-stats{padding:0}.srv-stat{padding:.85rem 1rem}
.race-hero h1,.race-art h2,.race-event-image h3{font-family:var(--font-display),var(--font);font-weight:800}
.race-nav{width:100%}#localServerSection,#statsSection{scroll-margin-top:65px}
.race-event-image .race-eyebrow{color:#b9d5dd}
#themeToggle:focus-visible,#themeGrid [data-act]:focus-visible{outline:2px solid var(--fg);outline-offset:4px}
[data-racing-tab][hidden],.race-art[hidden]{display:none!important}
#statisticsHeroLink[hidden]{display:none!important}
#statsAppearanceAdmin strong{display:block;color:var(--accent);margin-bottom:.5rem}#statsSaveDefault{width:100%;border-color:var(--accent);background:var(--accent-dim);font-weight:700}#statsSaveDefault:disabled{opacity:.6;cursor:wait}
.race-destinations{width:100%;max-width:var(--max-w);margin:1.5rem auto 2.5rem;padding:0 var(--s5);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.race-destinations .race-showcase,.race-destinations .race-art{width:100%;min-width:0;margin:0;padding:0;max-width:none}
.race-destinations .race-event-image,.race-destinations .race-art-inner{height:100%;min-height:18rem;margin:0}
.race-destinations .race-art-copy{width:100%}.race-destinations h2,.race-destinations h3{font-size:clamp(1.5rem,2.3vw,2rem);max-width:22ch;line-height:1.15;margin:0 0 1rem}
.race-destinations:has(>section[hidden]){grid-template-columns:1fr}
.race-result-card{display:flex;flex-direction:column;border-top:2px solid var(--accent);padding:1.35rem}
.race-result-card small{line-height:1.7}.race-result-card button{align-self:flex-start;margin-top:auto;padding-top:1rem;text-align:left}
.race-podium{list-style:none;margin:.3rem 0 1rem;padding:0;display:grid;gap:.65rem}
.race-podium li{display:flex;align-items:center;gap:.7rem;min-width:0;font-size:.8rem;line-height:1.5}.race-podium li>span:last-child{overflow-wrap:anywhere}
.race-position{display:grid;place-items:center;width:1.6rem;height:1.6rem;flex:none;background:var(--surface-raised);border:1px solid var(--line);font-family:var(--font-mono);font-weight:700;color:var(--fg-muted)}
.race-podium li:first-child .race-position{color:var(--accent);border-color:var(--accent-line);background:var(--accent-dim)}
[data-hero-text]{overflow-wrap:anywhere;white-space:pre-line}.race-ribbon>[data-hero-text]{min-width:0;max-width:100%}
.chat-composer-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.chat-message-row{display:flex;align-items:flex-end;gap:8px;width:100%;min-width:0}
.chat-message-row #chatInput{flex:1;min-width:0;width:100%}.chat-message-row [data-act="sendChat"]{min-height:34px}
@media(max-width:768px){.race-destinations{grid-template-columns:1fr;padding:0 1rem}.race-destinations .race-event-image,.race-destinations .race-art-inner{min-height:15rem}.race-result-grid{grid-template-columns:1fr}}

.race-event-image::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0a1323e8,#0a132335),var(--stats-battle-image) var(--stats-battle-position,50% 55%)/cover;transform:scale(var(--stats-battle-zoom,1));transform-origin:var(--stats-battle-position,50% 55%)}
