@font-face {
    font-family: "THR Archivo Narrow";
    src: url("fonts/archivo-narrow/ArchivoNarrow-Variable.ttf") format("truetype");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}

@font-face {
    font-family: "THR Archivo Black";
    src: url("fonts/archivo-black/ArchivoBlack-Regular.ttf") format("truetype");
    font-style: normal;
    font-weight: 700 900;
    font-display: swap;
}

:root {
    --ink: #050505;
    --ink-soft: #485044;
    --paper: #f4eddd;
    --paper-deep: #e7dcc6;
    --cream: #fbf7ee;
    --red: #3f4f2f;
    --red-dark: #28321f;
    --gold: #e7b95b;
    --line: rgba(23, 32, 40, .16);
    --display: "THR Archivo Narrow", "Arial Narrow", sans-serif;
    --display-heavy: "THR Archivo Black", "Arial Black", sans-serif;
    --body: ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
    --shadow: 0 20px 50px rgba(28, 26, 21, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--body); line-height: 1.55; }
a { color: inherit; }
.shell { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }

.site-header { position: sticky; top: 0; z-index: 20; background: var(--cream); border-bottom: 1px solid var(--line); }
.nav-shell { width:min(1320px,calc(100% - 40px)); min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.brand { display: inline-flex; align-items: center; gap: 13px; text-decoration: none; }
.brand-logo { width: 88px; height: 46px; display: inline-grid; place-items: center; flex: 0 0 auto; overflow: hidden; background: var(--gold); border: 2px solid var(--ink); }
.brand-logo img { display: block; width: 78px; height: auto; }
.brand-logo--footer { width: 104px; height: 54px; }
.brand-logo--footer img { width: 92px; }
.brand > span:last-child { display: grid; }
.brand strong { font: 800 27px/.9 var(--display-heavy); text-transform: uppercase; letter-spacing: .06em; }
.brand small { margin-top: 5px; color: var(--ink-soft); font-size: 10px; text-transform: uppercase; letter-spacing: .16em; }
.main-nav { display: flex; align-items: center; gap: 18px; }
.main-nav a { position: relative; padding: 30px 0 27px; color: var(--ink-soft); font: 700 12px/1 var(--body); text-decoration: none; text-transform: uppercase; letter-spacing: .07em; }
.main-nav a::after { content: ""; position: absolute; right: 0; bottom: 19px; left: 0; height: 3px; background: var(--red); transform: scaleX(0); transition: transform .2s; }
.main-nav a:hover::after, .main-nav a.active::after { transform: scaleX(1); }
.main-nav a.active { color: var(--ink); }
.nav-support { display:flex; align-items:center; gap:7px; margin-left:2px; }
.main-nav .support-button { min-height:34px; display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:0 11px; border:1px solid var(--red); font-size:10px; letter-spacing:.07em; }
.main-nav .support-button::after { display:none; }
.support-button__logo { width:15px; height:15px; display:block; flex:0 0 auto; }
.main-nav .support-button--paypal { border-color:#b8862e; background:var(--gold); color:#17120a; }
.main-nav .support-button--paypal:hover { background:#f0c96f; }
.main-nav .support-button--patreon { background:var(--red); color:#fff; }
.main-nav .support-button--patreon:hover { background:var(--red-dark); }
.nav-toggle { display: none; border: 1px solid var(--line); background: transparent; padding: 10px 13px; font: 700 12px var(--body); text-transform: uppercase; }

.home-hero { position: relative; overflow: hidden; color: #fff; background: var(--ink); }
.home-hero::before { content: ""; position: absolute; inset: 0; opacity: .16; background: repeating-linear-gradient(110deg, transparent 0 110px, rgba(255,255,255,.12) 111px 112px); }
.home-hero::after { content: "1967  ·  1975  ·  1986  ·  1991"; position: absolute; right: -30px; bottom: 28px; color: rgba(255,255,255,.035); font: 800 clamp(55px, 9vw, 132px)/1 var(--display); letter-spacing: .02em; white-space: nowrap; }
.home-hero__content { min-height: 570px; position: relative; z-index: 1; display: grid; grid-template-columns: 1fr .68fr; align-items: center; gap: 80px; padding-block: 70px; }
.eyebrow { display: block; margin-bottom: 14px; color: var(--red); font: 800 12px/1 var(--body); letter-spacing: .18em; text-transform: uppercase; }
.home-hero .eyebrow, .championship-hero .eyebrow, .event-hero .eyebrow, .driver-hero .eyebrow { color: #edb865; }
.home-hero h1 { margin: 0; font: 800 clamp(66px, 9vw, 126px)/.78 var(--display); letter-spacing: -.035em; text-transform: uppercase; }
.home-hero p { max-width: 640px; margin: 30px 0 0; color: rgba(255,255,255,.72); font-size: clamp(17px, 2vw, 21px); }
.hero-actions { width:max-content; max-width:100%; display:grid; grid-template-columns:max-content max-content; gap:12px; margin-top:35px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 51px; padding: 0 22px; border: 1px solid transparent; font-weight: 700; text-decoration: none; }
.button--primary { background: var(--red); color: #fff; }
.button--primary:hover { background: #bd352d; }
.button--ghost { border-color: rgba(255,255,255,.3); color: #fff; }
.button--ghost:hover { background: rgba(255,255,255,.08); }
.button--story { grid-column:1 / -1; margin-top:2px; border-color:var(--gold); background:var(--gold); color:#17120a; }
.button--story:hover { background:#f0c96f; }
@media (max-width:600px) { .hero-actions { width:100%; grid-template-columns:1fr; } .button--story { grid-column:auto; } }
.paddock-story-page { max-width:980px; padding-block:58px 100px; }
.paddock-story-heading { margin:28px 0 42px; padding:48px; background:#101711; color:#fff; box-shadow:var(--shadow); }
.paddock-story-heading h1 { max-width:820px; margin:0; font:800 clamp(48px,7vw,88px)/.88 var(--display); text-transform:uppercase; letter-spacing:-.035em; }
.paddock-story-heading p { max-width:680px; margin:24px 0 0; color:rgba(255,255,255,.72); font-size:18px; }
.paddock-story-mode-link{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;margin-top:30px;padding:14px 18px;border:1px solid var(--gold);background:var(--gold);color:#17120a;text-decoration:none;text-transform:uppercase;transition:background .2s ease,border-color .2s ease}.paddock-story-mode-link strong{font:800 13px var(--body);letter-spacing:.04em}.paddock-story-mode-link span{font:700 10px var(--body);letter-spacing:.08em}.paddock-story-mode-link:hover{border-color:#f0c96f;background:#f0c96f;color:#17120a}
.paddock-story-copy { padding:clamp(28px,6vw,72px); background:var(--cream); box-shadow:var(--shadow); font:18px/1.75 Georgia,serif; }
.paddock-story-copy h2 { margin:2em 0 .55em; font:800 clamp(28px,4vw,42px)/1 var(--display); text-transform:uppercase; }
.paddock-story-copy h2:first-child { margin-top:0; }
.paddock-story-copy a { color:var(--red); font-weight:700; }
.paddock-story-copy figure{margin:38px 0}.paddock-story-copy figure img{display:block;width:100%;height:auto;border-radius:6px;box-shadow:var(--shadow)}.paddock-story-copy figcaption{margin-top:10px;color:var(--ink-soft);font:12px/1.5 var(--body)}
.paddock-story-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.paddock-story-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;background:var(--red);color:#fff;text-decoration:none;font:800 13px var(--body);letter-spacing:.04em;text-transform:uppercase}.paddock-story-actions a:hover{background:var(--green);color:#fff}
.paddock-story-actions .support-button{gap:8px;border:1px solid var(--red)}.paddock-story-actions .support-button__logo{display:block;width:17px;height:17px;flex:0 0 auto}.paddock-story-actions .support-button--paypal{border-color:#b8862e;background:var(--gold);color:#17120a}.paddock-story-actions .support-button--paypal:hover{background:#f0c96f;color:#17120a}.paddock-story-actions .support-button--patreon{background:var(--red);color:#fff}.paddock-story-actions .support-button--patreon:hover{background:var(--red-dark);color:#fff}
.paddock-story-infographic{margin:0;background:var(--cream);box-shadow:var(--shadow)}.paddock-story-infographic img{display:block;width:100%;height:auto}.paddock-story-condensed-support{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;margin-top:34px;padding:clamp(26px,5vw,48px);background:var(--cream);box-shadow:var(--shadow)}.paddock-story-condensed-support h2{margin:4px 0 8px;font:800 clamp(32px,5vw,48px)/1 var(--display);text-transform:uppercase}.paddock-story-condensed-support p{max-width:620px;margin:0;color:var(--ink-soft);font-size:15px}.paddock-story-condensed-support .paddock-story-actions{margin:0}.paddock-story-condensed-support .eyebrow{color:var(--green)}
@media (max-width:700px){.paddock-story-heading{padding:32px 24px}.paddock-story-condensed-support{grid-template-columns:1fr}.paddock-story-condensed-support .paddock-story-actions{width:100%}.paddock-story-condensed-support .support-button{flex:1}}
.hero-roundel { justify-self: center; width: min(31vw, 340px); aspect-ratio: 1; overflow: hidden; border: 4px solid var(--paper); outline: 14px solid var(--red); border-radius: 50%; box-shadow: 0 0 0 18px rgba(255,255,255,.12); transform: rotate(7deg); background: var(--gold); }
.hero-roundel img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chequered-line { height: 14px; background-color: var(--cream); background-image: linear-gradient(45deg, var(--ink) 25%, transparent 25%), linear-gradient(-45deg, var(--ink) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--ink) 75%), linear-gradient(-45deg, transparent 75%, var(--ink) 75%); background-size: 14px 14px; background-position: 0 0, 0 7px, 7px -7px, -7px 0; }

/* Wall of Champions */
.champions-page { --champions-bronze:#a8673a; }
.champions-hero { position:relative; overflow:hidden; background:#101711; color:#fff; }
.champions-hero::before { content:""; position:absolute; inset:0; opacity:.14; background:repeating-linear-gradient(118deg,transparent 0 118px,rgba(255,255,255,.18) 119px 120px); }
.champions-hero::after { content:"CHAMPIONS"; position:absolute; right:-24px; bottom:-28px; color:rgba(255,255,255,.027); font:800 clamp(92px,15vw,230px)/.75 var(--display); letter-spacing:-.04em; }
.champions-hero__grid { position:relative; z-index:1; min-height:520px; display:grid; grid-template-columns:1fr .55fr; align-items:center; gap:70px; padding-block:74px; }
.champions-hero h1 { margin:0; font:800 clamp(70px,9vw,126px)/.76 var(--display); letter-spacing:-.045em; text-transform:uppercase; }
.champions-hero p { max-width:590px; margin:28px 0 0; color:rgba(255,255,255,.68); font-size:19px; }
.champions-badge { justify-self:center; width:min(33vw,370px); transform:rotate(7deg); filter:drop-shadow(0 16px 24px rgba(0,0,0,.48)) drop-shadow(0 0 12px rgba(241,181,66,.12)); }
.champions-badge img { display:block; width:100%; height:auto; }
.champions-stats { background:var(--red); color:#fff; }
.champions-stats .shell { min-height:108px; display:grid; grid-template-columns:repeat(5,1fr); }
.champions-stats .shell > div { display:grid; align-content:center; padding:17px 22px; border-left:1px solid rgba(255,255,255,.18); }
.champions-stats .shell > div:last-child { border-right:1px solid rgba(255,255,255,.18); }
.champions-stats strong { font:800 38px/.9 var(--display); }
.champions-stats span { margin-top:8px; color:rgba(255,255,255,.68); font-size:10px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.champions-content { padding-block:84px 110px; }
.champions-notice { display:grid; gap:4px; margin-bottom:34px; padding:17px 20px; border-left:5px solid var(--gold); background:var(--cream); box-shadow:var(--shadow); }
.champions-notice strong { font:700 18px var(--display); text-transform:uppercase; }
.champions-notice span { color:var(--ink-soft); font-size:11px; }
.champions-section { scroll-margin-top:24px; margin-top:96px; }
.champions-section:first-child { margin-top:0; }
.champions-tabs { margin-bottom:42px; }
.champions-tab-panel { margin-top:0; }
.champions-section__heading { display:flex; align-items:end; justify-content:space-between; gap:48px; margin-bottom:28px; }
.champions-section__heading h2 { margin:0; font:800 clamp(44px,6vw,72px)/.88 var(--display); letter-spacing:-.03em; text-transform:uppercase; }
.champions-section__heading p { max-width:520px; margin:0 0 4px; color:var(--ink-soft); font-size:14px; text-align:right; }
#special-events-wall .champions-section__heading h2,#endurance-events-wall .champions-section__heading h2 { font-size:clamp(42px,5vw,64px); white-space:nowrap; }
.champions-table-wrap { overflow:auto; background:var(--cream); box-shadow:var(--shadow); scrollbar-color:var(--gold) var(--paper-deep); }
.champions-table { width:100%; min-width:1080px; border-collapse:collapse; font-size:12px; }
.champions-table thead { background:#172018; color:#fff; }
.champions-table th { padding:14px 15px; color:rgba(255,255,255,.68); font-size:9px; font-weight:800; letter-spacing:.1em; text-align:left; text-transform:uppercase; white-space:nowrap; }
.champions-table td { height:68px; padding:11px 15px; border-bottom:1px solid var(--line); vertical-align:middle; }
.champions-table tbody tr:last-child td { border-bottom:0; }
.champions-table tbody tr:nth-child(even) { background:rgba(231,220,198,.34); }
.champions-table tbody tr:hover { background:rgba(231,185,91,.14); }
.champions-table th:first-child,.champions-table td:first-child { width:26%; }
.champions-table--events th:first-child,.champions-table--events td:first-child { width:30%; }
.champions-table--without-class td:nth-child(4) { display:none; }
.champions-table--without-detail td:nth-child(3) { display:none; }
.championship-name { font:700 16px/1.15 var(--display); text-decoration:none; }
.championship-wall-name { font-size:13px; white-space:nowrap; }
.champions-table--events .special-event-name { font-size:13px; white-space:nowrap; }
.championship-name:hover,.champion-driver a:hover { color:var(--red); text-decoration:underline; text-underline-offset:3px; }
.champions-number { font:800 17px var(--display); font-variant-numeric:tabular-nums; text-align:center; }
.champions-dash { color:rgba(72,80,68,.4); }
.class-chip { display:inline-flex; max-width:160px; min-height:25px; align-items:center; padding:3px 8px; background:#dfe5d8; color:#314127; font-size:9px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; }
.class-chip--casual { background:#dce7ef; color:#31566e; }
.class-chip--event { background:#f2dfb8; color:#654a17; }
.class-chip--custom { background:var(--class-color); color:var(--class-color-ink); }
.medal { width:22px; height:22px; display:inline-grid; place-items:center; margin-right:5px; border-radius:50%; color:#17120a; font:800 11px var(--display); }
.medal--1 { background:var(--gold); }
.medal--2 { background:#c6ced1; }
.medal--3 { background:var(--champions-bronze); color:#fff; }
.champion-driver { display:flex; align-items:center; flex-wrap:wrap; gap:6px; min-width:128px; }
.champion-driver a,.champion-driver > strong { font-weight:750; text-decoration:none; }
.champion-team { display:flex; min-width:150px; flex-direction:column; align-items:flex-start; gap:4px; }
.champion-team > strong { font-weight:800; line-height:1.2; }
.champion-team small { color:var(--ink-soft); font-size:9px; line-height:1.3; }
.champion-team small a { color:inherit; font-weight:650; text-decoration:none; }
.champion-team small a:hover { color:var(--red); text-decoration:underline; text-underline-offset:3px; }
.champion-team__drivers { display:block; }
.champion-team__drivers > span { white-space:nowrap; }
.driver-status { display:inline-flex; min-height:19px; align-items:center; padding:2px 6px; font-size:7px; font-weight:900; letter-spacing:.09em; line-height:1; text-transform:uppercase; }
.driver-status--inactive { background:#ead1cf; color:#7a2823; }
.champions-empty { padding:42px !important; color:var(--ink-soft); text-align:center; }
.scoring-key { display:grid; grid-template-columns:1fr 1fr minmax(240px,.75fr); gap:1px; margin-bottom:25px; background:var(--line); box-shadow:var(--shadow); }
.scoring-key > div { display:grid; grid-template-columns:1.15fr repeat(3,1fr); align-items:center; min-height:78px; padding:16px 20px; background:#182119; color:#fff; }
.scoring-key > div > strong { color:var(--gold); font:700 18px var(--display); text-transform:uppercase; }
.scoring-key span { font-size:11px; }
.scoring-key span b { display:block; color:rgba(255,255,255,.48); font-size:8px; letter-spacing:.08em; text-transform:uppercase; }
.scoring-key .scoring-key__casual { background:#33495a; }
.scoring-key > p { display:flex; align-items:center; gap:9px; margin:0; padding:16px 20px; background:var(--cream); color:var(--ink-soft); font-size:10px; }
.leader-podium { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:28px 0 18px; }
.leader-podium__card { position:relative; min-height:220px; display:grid; justify-items:center; align-content:center; gap:5px; overflow:hidden; padding:28px 20px 22px; background:var(--cream); border-top:7px solid #b6bec1; box-shadow:var(--shadow); text-align:center; }
.leader-podium__card--1 { border-top-color:var(--gold); }
.leader-podium__card--3 { border-top-color:var(--champions-bronze); }
.leader-podium__rank { position:absolute; top:-14px; right:9px; color:rgba(5,5,5,.055); font:800 112px/1 var(--display); }
.leader-podium__initial { width:58px; height:58px; display:grid; place-items:center; margin-bottom:5px; border-radius:50%; background:#172018; color:#fff; font:800 28px var(--display); }
.leader-podium__card--1 .leader-podium__initial { background:var(--gold); color:#17120a; }
.leader-podium__card .champion-driver { position:relative; z-index:1; justify-content:center; }
.leader-podium__card .champion-driver a,.leader-podium__card .champion-driver > strong { font:700 20px var(--display); }
.leader-podium__card > strong { color:var(--red); font:800 34px/1 var(--display); }
.leader-podium__card > strong small { font-size:11px; text-transform:uppercase; }
.leader-podium__card > span:last-child { color:var(--ink-soft); font-size:9px; letter-spacing:.06em; text-transform:uppercase; }
.leaderboard-table { min-width:1120px; }
.leaderboard-table th:first-child,.leaderboard-table td:first-child { width:70px; }
.leaderboard-rank { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:var(--paper-deep); font:800 15px var(--display); }
.leaderboard-top--1 .leaderboard-rank { background:var(--gold); }
.leaderboard-top--2 .leaderboard-rank { background:#c6ced1; }
.leaderboard-top--3 .leaderboard-rank { background:var(--champions-bronze); color:#fff; }
.leaderboard-breakdown { color:var(--ink-soft); text-align:center; }
.leaderboard-casual-place { color:#584064; }
.leaderboard-points { color:var(--red); font:800 25px var(--display); }

.stats-strip { background: var(--red); color: #fff; }
.stats-grid { min-height: 118px; display: grid; grid-template-columns:1.1fr 1fr .9fr .9fr .8fr .8fr 1.15fr 1.4fr; }
.stats-grid > div { display: flex; flex-direction: column; justify-content: center; min-width:0; padding: 20px 12px; border-left: 1px solid rgba(255,255,255,.18); }
.stats-grid > div:last-child { border-right: 1px solid rgba(255,255,255,.18); }
.stats-grid strong { font: 800 clamp(24px,1.85vw,38px)/.9 var(--display); letter-spacing: -.02em; font-variant-numeric:tabular-nums; }
.stats-grid span { min-height:2.4em; margin-top:9px; color:rgba(255,255,255,.7); font:700 11px var(--body); line-height:1.2; text-transform:uppercase; letter-spacing:.12em; }

.page { padding-block: 76px 100px; }
.page-heading { margin-bottom: 48px; }
.page-heading h1, .section-title h2 { margin: 0; font: 800 clamp(44px, 6vw, 70px)/.95 var(--display); letter-spacing: -.025em; text-transform: uppercase; }
.page-heading p { max-width: 650px; color: var(--ink-soft); font-size: 18px; }
.section-title { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.section-title h2 { font-size: clamp(35px, 4.5vw, 52px); }
.section-title a { padding-bottom: 8px; color: var(--red); font-weight: 700; text-decoration: none; }

.feature-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 18px; }
.feature-card { min-height: 270px; position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: end; padding: 28px; background: var(--ink); color: #fff; text-decoration: none; box-shadow: var(--shadow); }
.feature-card::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(255,255,255,.08), transparent 45%), repeating-linear-gradient(105deg, transparent 0 50px, rgba(255,255,255,.04) 51px 52px); }
.feature-card::after { content: ""; position: absolute; width: 150px; height: 150px; top: -50px; right: -50px; border: 22px solid var(--red); border-radius: 50%; opacity: .8; }
.feature-card > * { position: relative; z-index: 1; }
.feature-card > span { color: #edb865; font: 700 13px var(--body); letter-spacing: .18em; }
.feature-card h3 { max-width: 560px; margin: 9px 0 4px; font: 700 clamp(24px, 3vw, 37px)/1 var(--display); }
.feature-card p { margin: 0; color: rgba(255,255,255,.6); font-size: 13px; }
.feature-card--1 { grid-column: span 7; background-color: #15232a; }
.feature-card--2 { grid-column: span 5; background-color: var(--red-dark); }
.feature-card--3, .feature-card--4 { grid-column: span 6; min-height: 210px; }
.feature-card:hover { transform: translateY(-3px); transition: transform .2s; }
.home-columns { display: grid; grid-template-columns: 1.65fr .8fr; gap: 48px; margin-top: 80px; }
.recent-list { border-top: 1px solid var(--line); }
.recent-list > a { display: grid; grid-template-columns: 90px 1fr 140px; align-items: center; gap: 20px; padding: 19px 5px; border-bottom: 1px solid var(--line); text-decoration: none; }
.recent-list time { color: var(--ink-soft); font: 600 12px var(--body); text-transform: uppercase; }
.recent-list span { display: grid; }
.recent-list strong { font: 700 20px var(--display); }
.recent-list small { color: var(--ink-soft); font-size: 11px; }
.recent-list .winner { text-align: right; font: 700 14px var(--body); }
.manifesto { padding: 34px; background: var(--cream); border-top: 5px solid var(--red); box-shadow: var(--shadow); }
.manifesto blockquote { margin: 28px 0; font: 800 36px/1.05 var(--display); text-transform: uppercase; }
.manifesto a { color: var(--red); font-weight: 700; text-decoration: none; }

/* Track and car archive */
.catalog-toolbar { display:flex; align-items:end; justify-content:space-between; gap:24px; margin:-18px 0 30px; padding:18px 20px; border-top:4px solid var(--gold); background:#b8a597; }
.catalog-toolbar label { display:grid; flex:1 1 440px; max-width:620px; gap:5px; color:rgba(0,0,0,.62); font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.catalog-toolbar input { width:100%; min-height:46px; padding:0 13px; border:1px solid rgba(0,0,0,.18); background:var(--cream); color:var(--ink); font:13px var(--body); }
.catalog-toolbar > strong { padding-bottom:10px; color:var(--green); font:800 14px var(--display); text-transform:uppercase; }
.track-catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:22px 18px; }
.track-catalog-card { position:relative; min-width:0; overflow:hidden; display:flex; height:100%; flex-direction:column; border-top:5px solid var(--green); background:var(--cream); box-shadow:var(--shadow); }
.track-catalog-card[hidden],.car-catalog-card[hidden] { display:none; }
.track-catalog-card__link { position:absolute; z-index:5; inset:0; }
.track-catalog-card:hover { transform:translateY(-3px); transition:transform .2s; }
.track-archive-map { position:relative; min-height:260px; overflow:hidden; display:grid; place-items:center; border-bottom:1px solid var(--line); background:#f5efe3; }
.track-archive-map > img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; filter:grayscale(1) contrast(1.32) brightness(.82); }
.track-archive-map > strong { color:var(--ink-soft); font:800 24px var(--display); text-transform:uppercase; }
.track-archive-corner { position:absolute; z-index:2; width:0; height:0; color:#fff; font-size:9px; font-weight:800; line-height:1; white-space:nowrap; }
.track-archive-corner > i { position:absolute; z-index:4; left:-4px; top:-4px; width:8px; height:8px; border:1px solid #fff; border-radius:50%; background:#d121da; box-shadow:0 1px 3px rgba(0,0,0,.45); }
.track-archive-corner__label { position:absolute; z-index:3; right:-6px; top:0; display:flex; align-items:center; gap:4px; transform:translateY(-50%); padding:3px 14px 3px 6px; border-radius:3px; background:rgba(15,20,15,.88); box-shadow:0 1px 5px rgba(0,0,0,.34); }
.track-archive-corner.is-flipped .track-archive-corner__label { right:auto; left:-6px; padding-right:6px; padding-left:14px; }
.track-archive-corner b { min-width:15px; height:15px; display:grid; place-items:center; border-radius:50%; background:var(--gold); color:#111; font-size:8px; }
.track-archive-corner--compact { font-size:7px; }
.track-archive-corner--compact > i { left:-3px; top:-3px; width:6px; height:6px; }
.track-archive-corner--compact .track-archive-corner__label { right:-4px; gap:3px; padding:2px 11px 2px 4px; }
.track-archive-corner--compact.is-flipped .track-archive-corner__label { right:auto; left:-4px; padding-right:4px; padding-left:11px; }
.track-catalog-card > .track-archive-map { height:300px; min-height:300px; aspect-ratio:auto!important; }
.track-catalog-card > .track-archive-map > img { mix-blend-mode:multiply; }
.track-catalog-card__body { display:flex; min-height:228px; flex:1 1 auto; flex-direction:column; padding:20px; }
.track-catalog-card__body > span { color:var(--red); font-size:9px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.track-catalog-card__body h2 { min-height:70px; margin:6px 0 15px; font:800 24px/.98 var(--display); overflow-wrap:anywhere; text-transform:uppercase; }
.track-catalog-card__body p { margin:0; padding-top:2px; color:var(--ink-soft); font-size:10px; }
.track-catalog-card__body dl { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:auto 0 15px; background:var(--line); }
.track-catalog-card__body dl div { display:grid; gap:3px; padding:9px 5px; background:#f2ead9; text-align:center; }
.track-catalog-card__body dt { color:var(--ink-soft); font-size:7px; font-weight:800; text-transform:uppercase; }
.track-catalog-card__body dd { margin:0; color:var(--green); font:800 clamp(15px,1.45vw,19px) var(--display); }
.catalog-empty { margin-top:20px; }
.catalog-back { display:inline-block; margin-bottom:20px; color:var(--green); font-size:11px; font-weight:800; text-decoration:none; text-transform:uppercase; }
.track-detail-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; }
.track-detail-heading p { margin-bottom:0; }
.track-detail-heading > strong { color:var(--green); font:800 clamp(34px,5vw,60px)/1 var(--display); white-space:nowrap; }
.track-detail-map-card { padding:24px; background:#151a14; box-shadow:var(--shadow); }
.track-archive-map--detail { min-height:520px; max-height:72vh; border:0; }
.track-archive-map--missing { min-height:420px; }
.track-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; margin-top:20px; border:1px solid var(--line); background:var(--line); }
.track-stat-grid article { min-height:115px; display:grid; align-content:center; gap:7px; padding:18px 20px; background:var(--cream); }
.track-stat-grid span { color:var(--ink-soft); font-size:9px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.track-stat-grid strong { color:var(--green); font:800 30px/1 var(--display); }
.track-fastest-lap { display:grid; grid-template-columns:1fr auto; align-items:center; gap:5px 24px; margin:20px 0; padding:22px 26px; border-left:6px solid var(--gold); background:var(--cream); box-shadow:var(--shadow); }
.track-fastest-lap > span { color:var(--ink-soft); font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.track-fastest-lap > strong { grid-row:1 / 3; grid-column:2; color:var(--green); font:800 42px/1 var(--display); }
.track-fastest-lap p { margin:0; font-size:12px; }
.track-detail-tabs { margin-top:28px; }
.track-archive-table-wrap { background:var(--cream); box-shadow:var(--shadow); }
.track-archive-table { min-width:780px; }
.track-archive-table a { font-weight:750; text-decoration:none; }
.track-archive-table a:hover { color:var(--green); text-decoration:underline; }
.track-archive-table details { min-width:170px; }
.track-archive-table details summary { color:var(--green); cursor:pointer; font-weight:800; white-space:nowrap; }
.track-archive-table details ul { display:grid; gap:6px; margin:10px 0 0; padding:0; list-style:none; }
.track-archive-table details li { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.track-archive-table details small { color:var(--muted); white-space:nowrap; }
.car-catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.car-catalog-controls { display:grid; gap:12px; margin:-15px 0 26px; }
.car-catalog-alphabet,.car-catalog-sort { display:flex; flex-wrap:wrap; gap:5px; }
.car-catalog-controls button,.car-catalog-controls a { min-width:31px; min-height:31px; display:inline-grid; place-items:center; padding:6px 9px; border:1px solid var(--line); background:var(--cream); color:#28321f; cursor:pointer; font:800 10px var(--body); text-decoration:none; text-transform:uppercase; }
.car-catalog-controls button:hover:not(:disabled),.car-catalog-controls button.is-active,.car-catalog-controls a:hover:not([aria-disabled="true"]),.car-catalog-controls a.is-active { border-color:#28321f; background:#28321f; color:#fff; }
.car-catalog-controls button:disabled,.car-catalog-controls a[aria-disabled="true"] { opacity:.28; cursor:not-allowed; pointer-events:none; }
.car-catalog-sort { padding-top:3px; }
.car-catalog-sort button,.car-catalog-sort a { min-height:36px; padding-inline:14px; }
.car-catalog-load { display:flex; justify-content:center; padding:30px 0 5px; }
.car-catalog-load button[hidden] { display:none; }
.car-catalog-controls[aria-busy="true"],[data-track-catalog-controls][aria-busy="true"] { opacity:.68; }
.car-catalog-card { min-width:0; overflow:hidden; display:flex; flex-direction:column; border-top:5px solid var(--gold); background:var(--cream); box-shadow:var(--shadow); }
.car-catalog-card__image { height:190px; display:grid; flex:0 0 auto; place-items:center; overflow:hidden; background:#171d17; color:inherit; text-decoration:none; }
.car-catalog-card__image img { width:100%; height:100%; object-fit:contain; }
.car-catalog-card__image span { color:rgba(255,255,255,.12); font:800 82px var(--display); }
.car-catalog-card__body { display:flex; flex:1 1 auto; flex-direction:column; padding:20px; }
.car-catalog-card__body > small { color:var(--ink-soft); font-size:8px; }
.car-catalog-card__body h2 { margin:4px 0 16px; font:800 25px/1 var(--display); text-transform:uppercase; }
.car-catalog-card dl { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:auto 0 0; background:var(--line); }
.car-catalog-card dl div { display:grid; gap:3px; padding:9px 7px; background:#f2ead9; text-align:center; }
.car-catalog-card dt { color:var(--ink-soft); font-size:7px; font-weight:800; text-transform:uppercase; }
.car-catalog-card dd { margin:0; color:var(--green); font:800 20px var(--display); }
.car-catalog-card__body p { margin:14px 0 0; color:var(--ink-soft); font-size:9px; }
.car-catalog-card__body p a { position:relative; z-index:2; color:var(--green); font-weight:900; text-decoration:underline; text-underline-offset:3px; }
.car-detail-hero { display:grid; grid-template-columns:minmax(420px,1.05fr) minmax(0,.95fr); align-items:stretch; gap:0; overflow:hidden; background:var(--cream); box-shadow:var(--shadow); }
.car-detail-hero__image { min-height:0; display:grid; place-items:stretch; overflow:hidden; background:var(--cream); }
.car-detail-hero__image > span { place-self:center; color:rgba(255,255,255,.1); font:800 120px var(--display); }
.car-detail-hero header { padding:38px 42px 38px 48px; }
.car-detail-hero h1 { margin:0; font:800 clamp(46px,6vw,76px)/.88 var(--display); letter-spacing:-.03em; text-transform:uppercase; }
.car-detail-hero p { margin:15px 0 3px; color:var(--ink-soft); font-size:13px; }
.car-detail-hero small { color:var(--green); font-size:10px; font-weight:800; text-transform:uppercase; }
.car-detail-info { display:grid; align-content:center; }
.car-detail-info__model { margin-bottom:3px!important; }
.car-detail-metadata { grid-column:1 / -1; padding:22px 28px 26px; border-top:1px solid var(--line); background:#f5efe3; }
.car-detail-facts { margin:0; }
.car-detail-description { max-width:62ch; }
.car-detail-metadata__footer { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-top:18px; }
.car-detail-metadata__footer .track-detail-description { margin-top:0!important; }
.car-detail-metadata__footer .track-download-link { flex:0 0 auto; margin-top:0; }
.track-detail-hero { grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr); align-items:stretch; border:8px solid var(--cream); }
.track-detail-hero .track-detail-map-card { display:grid; min-width:0; padding:0; background:#f5efe3; box-shadow:none; }
.track-detail-hero .track-archive-map--detail { width:100%; height:clamp(500px,55vw,650px); min-height:0; max-height:650px; aspect-ratio:auto!important; background:#f5efe3; }
.track-detail-hero .track-archive-map--detail > img { object-fit:contain; mix-blend-mode:multiply; }
.track-detail-hero .track-archive-map--missing { min-height:500px; }
.track-detail-hero header { display:grid; align-content:center; padding:38px 40px; border-left:1px solid var(--line); background:#f5efe3; }
.track-detail-hero h1 { max-width:100%; margin-top:9px; font-size:clamp(34px,3.5vw,52px); line-height:.96; overflow-wrap:anywhere; }
.track-detail-info__layout { margin:12px 0 0!important; font-size:13px!important; }
.track-detail-facts { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin:24px 0 0; background:var(--line); }
.track-detail-facts div { min-width:0; padding:11px 12px; background:rgba(255,255,255,.52); }
.track-detail-facts dt { color:var(--ink-soft); font-size:8px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.track-detail-facts dd { margin:4px 0 0; color:var(--green); font-size:12px; font-weight:800; overflow-wrap:anywhere; }
.track-detail-facts.car-detail-facts { grid-template-columns:repeat(6,minmax(0,1fr)); margin:0; }
.track-detail-description { display:-webkit-box; margin:18px 0 0!important; overflow:hidden; color:var(--ink-soft); font-size:11px!important; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
.track-detail-tags { display:flex; flex-wrap:wrap; gap:5px; margin-top:15px; }
.track-detail-tags span { padding:4px 7px; background:#e5dac5; color:var(--green); font-size:8px; font-weight:800; text-transform:uppercase; }
.track-download-link { width:max-content; margin-top:20px; }
.track-detail-page .car-detail-stats { grid-template-columns:repeat(4,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(92px,auto)); }
.track-detail-page .track-stat-grid__second-row { grid-column:auto; }
.car-detail-stats { grid-template-columns:repeat(5,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(92px,auto)); grid-auto-flow:row; margin-bottom:28px; }
.car-detail-stats article { min-height:92px; }
.car-skin-gallery__stage { position:relative; min-height:0; display:grid; place-items:center; overflow:hidden; padding:8px 8px 0; background:var(--cream); }
.car-skin-gallery__stage img { width:100%; height:auto; max-height:none; aspect-ratio:16 / 9; object-fit:contain; transform:none; }
.car-driver-events { font-size:10px; }
.car-driver-events summary { font-size:10px; }
.car-driver-events ul { margin-top:7px; padding-left:14px; }
.car-driver-events li { margin:3px 0; line-height:1.25; }
.car-driver-events a { font-size:10px; font-weight:650; }
.car-driver-row > td { vertical-align:top; }
.car-drivers-table { width:100%; table-layout:fixed; }
.car-drivers-table th:nth-child(1) { width:14%; }
.car-drivers-table th:nth-child(2),.car-drivers-table th:nth-child(3),.car-drivers-table th:nth-child(4) { width:8%; }
.car-drivers-table th:nth-child(5) { width:28%; }
.car-drivers-table th:nth-child(6) { width:34%; }
.car-driver-skins { white-space:normal; line-height:1.45; }
.car-driver-skins span { display:block; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.car-driver-events { min-width:0!important; white-space:normal; }
.car-driver-events ul { width:100%; padding-left:0; }
.car-driver-events li { display:grid; grid-template-columns:minmax(0,1fr) auto; min-width:0; }
.car-driver-events li > span { min-width:0; white-space:normal; overflow-wrap:anywhere; }
.car-driver-events li > span > a { display:block; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.car-driver-events li { align-items:flex-start; }
.car-driver-events li > span { display:grid; min-width:0; gap:1px; }
.car-driver-events li > span > small { display:block; color:var(--ink-soft); font-size:8px; white-space:normal; }
.car-driver-events li > span > small a { color:var(--ink-soft); font-size:8px; font-weight:600; }
.car-driver-events li > time { color:var(--ink-soft); font-size:8px; white-space:nowrap; }
.car-driver-events .car-driver-event-skin { display:flex; align-items:center; gap:6px; margin-top:2px; color:var(--ink); }
.car-driver-event-skin .skin-preview { width:58px; height:34px; border-radius:4px; box-shadow:2px 3px 6px rgba(26,31,27,.2); }
.results-table.car-drivers-table .car-driver-row > td { vertical-align:top; }
.car-skin-gallery__stage img[hidden] { display:none; }
.car-skin-gallery__arrow { position:absolute; z-index:2; top:50%; width:34px; height:44px; border:1px solid rgba(255,255,255,.2); background:rgba(5,5,5,.35); color:rgba(255,255,255,.82); cursor:pointer; font:400 28px/1 var(--display); opacity:.72; transform:translateY(-50%); transition:opacity .18s,background .18s,color .18s; }
.car-skin-gallery__arrow:hover,.car-skin-gallery__arrow:focus-visible { background:rgba(231,185,91,.9); color:#111; opacity:1; }
.car-skin-gallery__arrow--previous { left:12px; }
.car-skin-gallery__arrow--next { right:12px; }
.car-skin-gallery__footer { min-height:50px; display:flex; align-items:center; justify-content:space-between; gap:15px; padding:8px 13px 8px 17px; border:0; background:var(--cream); color:var(--ink); }
.car-skin-gallery__footer > span { display:grid; min-width:0; }
.car-skin-gallery__footer b { overflow:hidden; color:var(--ink); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.car-skin-gallery__footer small { color:var(--ink-soft); font-size:8px; }
.car-skin-gallery__footer i { color:#28321f; font-style:normal; }
.car-skin-gallery__footer button { flex:0 0 auto; min-height:32px; padding:0 12px; border:1px solid #28321f; background:#28321f; color:#fff; cursor:pointer; font-size:8px; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.car-skin-gallery__footer button:hover { border-color:var(--gold); background:var(--gold); color:#111; }
.car-skin-gallery-dialog { width:min(96vw,1500px); height:min(94vh,1000px); padding:48px 24px 18px; border:1px solid rgba(255,255,255,.25); background:#080b08; color:#fff; }
.car-skin-gallery-dialog::backdrop { background:rgba(0,0,0,.88); }
.car-skin-gallery-dialog img { width:100%; height:calc(100% - 48px); object-fit:contain; }
.car-skin-gallery-dialog__caption { min-height:40px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:12px; }
.car-skin-gallery-dialog__caption p { grid-column:2; margin:8px 0 0; color:var(--gold); font-size:11px; font-weight:800; text-align:center; }
.car-skin-gallery-dialog__caption small { grid-column:3; justify-self:end; margin:8px 4px 0 0; color:rgba(255,255,255,.62); font-size:10px; }
.car-skin-gallery-dialog__caption i { color:var(--gold); font-style:normal; }
.car-skin-gallery-dialog__close { position:absolute; top:8px; right:12px; border:0; background:transparent; color:#fff; cursor:pointer; font-size:32px; }

.archive-grid { display: grid; gap: 12px; }
.race-type-filter { display:flex; align-items:end; gap:12px; margin:-20px 0 30px; padding:18px 20px; background:#b8a597; border-top:4px solid var(--gold); }
.race-type-filter label { display:grid; flex:1 1 360px; max-width:460px; gap:5px; color:rgba(0,0,0,.62); font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.race-type-filter select, .race-type-filter input { width:100%; min-height:46px; padding:0 38px 0 12px; border:1px solid rgba(0,0,0,.18); background:var(--cream); color:var(--ink); font:13px var(--body); }
.race-type-filter input { padding-right:12px; }
.race-type-filter button, .race-type-filter > a { min-height:46px; display:inline-flex; align-items:center; justify-content:center; padding:0 17px; border:0; background:var(--green, #3f4f2f); color:#fff; cursor:pointer; font:700 11px var(--body); text-decoration:none; }
.race-type-filter > a { background:var(--ink); }
.race-type-filter--records { margin:0 0 34px; }
.race-type-filter--records.is-disabled { opacity:.48; }
.race-type-filter--records.is-disabled a { pointer-events:none; }
.archive-card { --race-type-color: var(--green, #3f4f2f); --race-type-tint: var(--cream); display: grid; grid-template-columns: 100px minmax(0,1fr) 150px 40px; align-items: center; gap: 24px; min-height: 158px; padding: 12px 28px; background: var(--race-type-tint); border: 1px solid rgba(23,32,40,.35); text-decoration: none; transition: .2s; }
.archive-card:hover { transform: translateX(5px); box-shadow: inset 0 0 0 1px var(--race-type-color), var(--shadow); }
.archive-card--race-type-main_event_races { --race-type-color: #3f4f2f; --race-type-tint: #edf0e8; }
.archive-card--race-type-special_event { --race-type-color: #6f5119; --race-type-tint: #fff1ce; }
.archive-card--race-type-weekday_races { --race-type-color: #3f5934; --race-type-tint: #e6edde; }
.archive-card--race-type-endurance_race { --race-type-color: #873d32; --race-type-tint: #f3ddd7; }
.archive-card--race-type-fun_event { --race-type-color: #704828; --race-type-tint: #f0e3d2; }
.archive-card--race-type-practice_races { --race-type-color: #274c5b; --race-type-tint: #dceaf0; }
.archive-card--race-type-casual_races { --race-type-color: #584064; --race-type-tint: #ece4f2; }
.archive-card__date { display:grid; gap:3px; color:var(--race-type-color); }
.archive-card__date strong { font:800 34px var(--display); }
.archive-card__date small { display:grid; justify-items:center; color:var(--ink-soft); font:600 10px/1.35 var(--body); text-align:center; }
.archive-card__range-date, .archive-card__range-separator { display:block; white-space:nowrap; }
.visually-hidden { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.archive-card__types { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 0; }
.race-type-badge { display: inline-flex; align-items: center; min-height: 24px; padding: 3px 8px; border: 1px solid rgba(63,79,47,.25); background: #edf0e8; color: var(--green); font: 800 9px/1 var(--body); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.race-type-badge--special_event { background: #fff1ce; color: #6f5119; }
.race-type-badge--endurance_race { background: #f3ddd7; color: #873d32; }
.race-type-badge--fun_event { background: #f0e3d2; color: #704828; }
.race-type-badge--practice_races { background: #dceaf0; color: #274c5b; }
.race-type-badge--casual_races { background: #ece4f2; color: #584064; }
.race-type-badge--weekday_races { background: #e6edde; color: #304629; }
.race-type-option--main_event_races { color:#3f4f2f; background:#edf0e8; }
.race-type-option--casual_races { color:#584064; background:#ece4f2; }
.race-type-option--special_event { color:#6f5119; background:#fff1ce; }
.race-type-option--endurance_race { color:#873d32; background:#f3ddd7; }
.race-type-option--fun_event { color:#704828; background:#f0e3d2; }
.race-type-option--weekday_races { color:#304629; background:#e6edde; }
.race-type-option--practice_races { color:#274c5b; background:#dceaf0; }
.archive-card h2 { margin: 0; font: 700 clamp(22px, 3vw, 31px)/1.1 var(--display); }
.archive-card p { margin: 8px 0 0; color: var(--ink-soft); font-size: 13px; }
.championship-poster { display:flex; align-items:center; justify-content:center; }
.championship-poster img { display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; }
.championship-poster--card { width:150px; height:132px; overflow:hidden; filter:drop-shadow(0 7px 10px rgba(0,0,0,.24)); }
.championship-poster--card img { width:100%; height:100%; max-width:none; max-height:none; object-fit:contain; }
.championship-poster-placeholder { width:150px; }
.championship-hero__layout { position:relative; z-index:1; display:grid; grid-template-columns:minmax(170px,240px) minmax(0,1fr); align-items:center; gap:46px; width:min(1440px,calc(100% - 48px)); margin-inline:auto; }
.championship-hero__content { min-width:0; }
.championship-hero__layout--with-map { grid-template-columns:minmax(170px,220px) minmax(0,1fr) minmax(360px,.72fr); width:min(1600px,calc(100% - 48px)); gap:38px; }
.event-hero-trackmap { position:relative; z-index:2; display:grid; width:100%; min-width:0; padding:18px; color:#fff; text-decoration:none; }
.event-hero-trackmap > div { position:relative; width:min(100%,calc(350px * var(--event-map-aspect))); margin:auto; }
.event-hero-trackmap__art { position:absolute; inset:0; display:block; }
.event-hero-trackmap__art img { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.event-hero-trackmap__art canvas { display:block; width:100%; height:100%; object-fit:contain; opacity:1; }
.event-hero-trackmap__art--fallback img { inset:0; width:100%; height:100%; object-fit:contain; filter:invert(1) grayscale(1) contrast(1.32) brightness(1.35); mix-blend-mode:screen; opacity:.9; }
.event-hero-corner { position:absolute; z-index:2; display:flex; align-items:center; gap:4px; transform:translate(-5px,-50%); padding:3px 6px; border:1px solid rgba(255,255,255,.38); background:rgba(5,5,5,.78); color:#fff; font-size:7px; font-weight:800; line-height:1; white-space:nowrap; box-shadow:0 3px 9px rgba(0,0,0,.24); }
.event-hero-corner i { width:7px; height:7px; flex:0 0 7px; border:2px solid var(--championship-accent,#edb865); border-radius:50%; background:#fff; }
.event-hero-corner b { display:grid; width:14px; height:14px; place-items:center; border-radius:50%; background:var(--championship-accent,#edb865); color:#111; font-size:7px; }
.event-hero-navigation { position:absolute; z-index:6; top:250px; width:76px; height:112px; display:grid; place-items:center; transform:translateY(-50%); color:#fff; text-decoration:none; transition:color .18s,transform .18s; }
.event-hero-navigation--previous { left:18px; }
.event-hero-navigation--next { right:18px; }
.event-hero-navigation span { display:none; }
.event-hero-navigation::before { content:""; width:34px; height:34px; border-bottom:10px solid currentColor; border-left:10px solid currentColor; filter:drop-shadow(0 2px 2px rgba(0,0,0,.28)); }
.event-hero-navigation--previous::before { transform:rotate(45deg); }
.event-hero-navigation--next::before { transform:rotate(225deg); }
.event-hero-navigation:hover,.event-hero-navigation:focus-visible { color:var(--championship-accent-on-dark,#edb865); transform:translateY(-50%) scale(1.1); outline:none; }
.championship-hero__content .eyebrow { display:block; }
.championship-poster--hero { width:100%; height:292px; cursor:zoom-in; filter:drop-shadow(0 14px 20px rgba(0,0,0,.32)); }
.championship-page--themed .championship-hero, .championship-page--themed .event-hero { background:color-mix(in srgb,var(--championship-accent) 42%,#050505); }
.championship-page--themed .championship-hero .eyebrow, .championship-page--themed .event-hero .eyebrow { color:var(--championship-accent-on-dark,#fff); }
.championship-page--themed .race-tabs__tab.is-active { background:var(--championship-accent); color:var(--championship-accent-contrast,#050505); }
.championship-page--themed .section-title .eyebrow, .championship-page--themed .event-number { color:var(--championship-accent-readable,var(--green)); }
.championship-page--themed .standings-panel > header, .championship-page--themed .results-panel > header { border-top-color:var(--championship-accent); }
.championship-poster-lightbox { width:min(94vw,900px); max-width:none; padding:0; overflow:visible; border:0; background:#0d110e; color:#fff; box-shadow:0 30px 90px rgba(0,0,0,.55); }
.championship-poster-lightbox::backdrop { background:rgba(0,0,0,.82); backdrop-filter:blur(4px); }
.championship-poster-lightbox img { display:block; width:auto; max-width:100%; height:auto; max-height:88vh; margin-inline:auto; object-fit:contain; background:#080a08; }
.championship-poster-lightbox p { margin:0; padding:14px 18px; color:rgba(255,255,255,.75); font-size:12px; }
.arrow { color: var(--red); font-size: 24px; }

.championship-hero, .event-hero, .driver-hero { position:relative; overflow:hidden; background:var(--ink); color:#fff; }
.championship-hero, .event-hero { display:flex; align-items:center; min-height:340px; padding:24px 0; }
.driver-hero { padding:66px 0 72px; }
.championship-hero::after, .event-hero::after, .driver-hero::after { content: ""; position: absolute; inset: 0 0 0 65%; background: repeating-linear-gradient(135deg, transparent 0 24px, rgba(255,255,255,.035) 25px 50px); transform: skew(-12deg); }
.back-link { display:inline-flex; position:relative; z-index:1; max-width:100%; min-height:38px; align-items:center; margin-bottom:30px; padding:9px 14px; border:1px solid rgba(255,255,255,.32); background:rgba(255,255,255,.07); color:rgba(255,255,255,.88); font-size:12px; font-weight:700; line-height:1.25; text-decoration:none; box-shadow:0 3px 12px rgba(0,0,0,.08); transition:background .18s,border-color .18s,color .18s,transform .18s; }
.back-link:hover { border-color:var(--championship-accent,var(--gold)); background:rgba(255,255,255,.14); color:#fff; transform:translateX(-2px); }
.back-link:focus-visible { border-color:var(--championship-accent,var(--gold)); outline:2px solid var(--championship-accent,var(--gold)); outline-offset:3px; color:#fff; }
.back-link.catalog-back { margin-bottom:20px; border-color:rgba(5,5,5,.28); background:rgba(5,5,5,.035); color:var(--ink); }
.back-link.catalog-back:hover { border-color:var(--gold); background:var(--cream); color:var(--ink); }
.back-link.catalog-back:focus-visible { border-color:var(--gold); color:var(--ink); outline-color:var(--gold); }
.event-car-link { color:inherit; font-weight:650; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.event-car-link:hover,.event-car-link:focus-visible { color:var(--championship-accent,var(--gold)); }
.championship-hero h1, .event-hero h1, .driver-hero h1 { max-width: 950px; position: relative; z-index: 1; margin: 0; font: 800 clamp(49px, 7vw, 86px)/.92 var(--display); letter-spacing: -.025em; text-transform: uppercase; }
.event-hero h1 { font-size:clamp(36px,5vw,64px); line-height:.96; }
.championship-hero h1[data-fit-championship-title] { max-width:none; white-space:nowrap; }
.championship-hero__batch { display:flex; width:max-content; margin:-2px 0 15px; }
.championship-hero__batch.race-type-badge--main_event_races { color:#3f4f2f; }
.hero-facts { display: flex; gap: 40px; margin-top: 35px; }
.hero-facts span { display: flex; align-items: baseline; gap: 8px; color: rgba(255,255,255,.6); font-size: 12px; text-transform: uppercase; letter-spacing: .1em; }
.hero-facts strong { color: #fff; font: 800 27px var(--display); }
.event-hero p, .driver-hero p { margin: 15px 0 0; color: rgba(255,255,255,.65); font-size: 17px; }
.event-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.event-list li { border-bottom: 1px solid var(--line); }
.event-list a,.event-list>li>div { display: grid; grid-template-columns: 72px 1fr 160px 30px; align-items: center; gap: 20px; padding: 24px 10px; text-decoration: none; }
.event-list a:hover { background: rgba(255,255,255,.45); }
.event-list__planned>div { opacity:.42; filter:grayscale(1); cursor:default; }
.event-list__planned .event-date small { display:block; margin-top:4px; font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.chronicle-score--future { background:#dfe1df; color:#69706b; }
.event-number { color: var(--red); font: 800 25px var(--display); }
.event-main { display: grid; }
.event-main strong { font: 700 25px var(--display); }
.event-main small, .event-date { color: var(--ink-soft); font-size: 12px; }
.event-main .event-meta { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-top:4px; }
.standings-section { margin-top: 72px; }
.standings-section--teams { margin-top: 52px; }
.standings-groups { display:grid; gap:24px; }
.standings-panel { overflow:hidden; background:var(--cream); box-shadow:var(--shadow); }
.standings-panel > header { padding:11px 16px; border-top:4px solid var(--gold); color:var(--green); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.standings-panel--class-colored > header, .chronicle-panel--class-colored > header { border-top-color:var(--class-color); color:var(--class-color-ink); }
.standings-table td { vertical-align:middle; }
.standings-table td small { display:block; margin-top:3px; color:var(--ink-soft); }
.standings-points { color:var(--red); font:800 21px var(--display); font-variant-numeric:tabular-nums; }
.championship-rules { margin:-16px 0 14px; padding:22px 26px; border-left:5px solid var(--gold); background:var(--cream); box-shadow:var(--shadow); }
.championship-rules .eyebrow { display:block; margin-bottom:9px; }
.championship-rules p { max-width:920px; margin:7px 0 0; color:var(--ink-soft); font-size:13px; line-height:1.55; }
.championship-rules p:last-child { color:var(--ink); font-weight:700; }
.championship-rules + .chronicle-panel { margin-top:0; }
.chronicle-section { margin-top:72px; }
.chronicle-panel { width:fit-content; min-width:100%; max-width:calc(100vw - 40px); overflow:hidden; margin-top:18px; margin-left:50%; transform:translateX(-50%); background:var(--cream); box-shadow:var(--shadow); }
.chronicle-panel > header { padding:11px 16px; border-top:4px solid var(--gold); color:var(--green); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.chronicle-table-wrap { width:100%; max-width:100%; overflow-x:auto; }
.chronicle-table { width:max-content; min-width:100%; border-collapse:separate; border-spacing:0; font-size:12px; font-variant-numeric:tabular-nums; }
.chronicle-table th { min-width:112px; padding:13px 12px; border-left:1px solid rgba(23,32,40,.12); background:#eae0cd; color:var(--ink-soft); font-size:10px; text-align:left; vertical-align:bottom; }
.chronicle-table th:first-child { min-width:58px; border-left:0; }
.chronicle-table th:nth-child(2) { min-width:300px; }
.chronicle-table th a { color:inherit; text-decoration:none; }
.chronicle-table th a:hover { color:var(--gold); }
.chronicle-table th.chronicle-event--protected a { text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:3px; }
.chronicle-table td { padding:13px 12px; border-top:1px solid var(--line); border-left:1px solid rgba(0,0,0,.08); }
.chronicle-table td:first-child { border-left:0; }
.chronicle-table tbody tr:hover td { filter:brightness(.98); }
.chronicle-position { color:var(--green); font:800 18px var(--display); }
.chronicle-driver { min-width:300px; font-weight:700; }
.chronicle-driver a { color:inherit; text-decoration:none; }
.chronicle-driver a:hover { color:var(--red); }
.chronicle-driver-identity,.result-driver-cell { display:flex; align-items:center; gap:10px; }
.chronicle-driver-copy { display:grid; min-width:0; }
.chronicle-driver-car { display:block; margin-top:3px; color:var(--ink-soft); font-size:9px; font-weight:500; }
.chronicle-driver-car a { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:2px; }
.driver-portrait-link { display:inline-flex; flex:0 0 auto; border-radius:50%; text-decoration:none; }
.driver-portrait { width:42px; height:42px; display:grid; place-items:center; overflow:hidden; border-radius:50%; background:var(--ink); color:#fff; font:800 19px var(--display); box-shadow:0 0 0 2px var(--cream),0 0 0 3px rgba(23,32,40,.18); }
.driver-portrait img { width:100%; height:100%; display:block; object-fit:cover; }
.driver-portrait-link:hover .driver-portrait,.driver-portrait-link:focus-visible .driver-portrait { box-shadow:0 0 0 2px var(--cream),0 0 0 4px var(--gold); }
.driver-portrait-link:focus-visible { outline:0; }
.driver-portrait--standings { width:38px; height:38px; font-size:17px; }
.driver-portrait--result { width:44px; height:44px; }
.chronicle-driver-skin { width:76px; height:44px; display:grid; place-items:center; flex:0 0 auto; margin-left:auto; overflow:hidden; border-radius:5px; background:var(--cream); }
.chronicle-driver-skin img { width:100%; height:100%; display:block; object-fit:contain; mix-blend-mode:multiply; }
.chronicle-driver-skin:hover,.chronicle-driver-skin:focus-visible { box-shadow:0 0 0 3px var(--gold); outline:0; }
.chronicle-score { min-width:112px; text-align:center; }
.chronicle-race-position { white-space:nowrap; font-size:10px; font-weight:700; }
.chronicle-score--first { background:#fff9b8; }
.chronicle-score--second { background:#dfe3e4; }
.chronicle-score--third { background:#f7dca8; }
.chronicle-score--top-ten { background:#cfe8cf; }
.chronicle-score--outside-ten { background:#b9b5dd; }
.chronicle-score--no-points { background:#dfc3ef; }
.chronicle-score--ignored { background:#f2a4a8; color:#661e23; }
.chronicle-penalty { min-width:0; background:#f7d8da; color:#a52d36; font-weight:800; text-align:center; }
.chronicle-total { background:#e6e7e4; color:var(--green); font-weight:800; text-align:center; }
.chronicle-legend { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:0 0 14px; font-size:9px; font-weight:800; letter-spacing:.02em; text-transform:uppercase; }
.chronicle-legend > span { padding:5px 7px; border:1px solid rgba(0,0,0,.12); }
.chronicle-legend__protected { background:transparent; text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:2px; }
.chronicle-legend small { margin-left:0; color:var(--ink-soft); font-size:9px; font-weight:500; letter-spacing:0; text-transform:none; }
.chronicle-note { margin:13px 0 0; color:var(--ink-soft); font-size:10px; }

.sessions-stack { display: grid; gap: 42px; }
.results-panel { overflow: visible; scroll-margin-top: 92px; background: var(--cream); box-shadow: var(--shadow); }
.results-panel > header { display: flex; align-items: end; justify-content: space-between; gap: 30px; padding: 26px 30px; border-bottom: 1px solid var(--line); }
.results-panel h2 { margin: 10px 0 0; font: 700 30px/1 var(--display); text-transform: uppercase; }
.session-tag { display: inline-block; padding: 5px 9px; background: var(--gold); color: #fff; font: 700 10px var(--body); text-transform: uppercase; letter-spacing: .1em; }
.session-tag--race { background: var(--red); }
.session-meta { color: var(--ink-soft); font-size: 11px; }
.table-wrap { width:100%; max-width:100%; overflow-x: auto; overflow-y:hidden; scrollbar-color:var(--gold) var(--paper-deep); }
.shell.race-weekend { width:calc(100% - 40px); max-width:none; }
.race-weekend { gap:42px; }
.race-tabs { display:flex; gap:2px; overflow-x:auto; padding:0; background:var(--line); box-shadow:var(--shadow); }
.race-tabs__tab { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:54px; flex:1 0 max-content; padding:0 22px; border:0; background:var(--cream); color:var(--ink-soft); cursor:pointer; font:800 12px var(--body); letter-spacing:.06em; text-decoration:none; text-transform:uppercase; }
.race-tabs__tab:hover { background:#fffaf0; color:var(--ink); }
.race-tabs__tab.is-active { background:var(--ink); color:#fff; }
.race-tabs__tab:focus-visible { position:relative; z-index:1; outline:3px solid var(--gold); outline-offset:-3px; }
.race-tabs__tab span { display:inline-grid; min-width:19px; min-height:19px; place-items:center; padding:0 4px; border:1px solid currentColor; border-radius:999px; font-size:9px; font-variant-numeric:tabular-nums; }
.championship-tabs { margin-bottom:42px; }
.championship-tab-panel .chronicle-section, .championship-tab-panel .standings-section { margin-top:0; }
.points-progression { overflow:hidden; background:var(--cream); box-shadow:var(--shadow); }
.championship-tab-panel[data-championship-tab-panel="progression"] { width:min(1600px,calc(100vw - 40px)); margin-left:50%; transform:translateX(-50%); }
.championship-tab-panel[data-championship-tab-panel="statistics"] { width:min(1600px,calc(100vw - 40px)); margin-left:50%; transform:translateX(-50%); }
.season-statistics { overflow:hidden; background:var(--cream); box-shadow:var(--shadow); }
.season-statistics__header { padding:34px 36px; background:var(--ink); color:#fff; }
.season-statistics__header h2 { margin:9px 0 8px; font:700 36px/1 var(--display); text-transform:uppercase; }
.season-statistics__header p { max-width:720px; margin:0; color:rgba(255,255,255,.68); font-size:11px; }
.season-statistics__section { padding:30px 32px; border-bottom:1px solid var(--line); }
.season-statistics__title { margin-bottom:18px; }
.season-statistics__title h3 { margin:7px 0 5px; font:700 25px/1 var(--display); text-transform:uppercase; }
.season-statistics__title p { max-width:760px; margin:0; color:var(--ink-soft); font-size:10px; }
.season-statistics__overview { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; border:1px solid var(--line); background:var(--line); }
.season-statistics__overview article { min-height:118px; display:grid; align-content:center; gap:7px; padding:18px 20px; background:#fbf5e9; }
.season-statistics__overview span,.season-statistics__records span { color:var(--ink-soft); font-size:9px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.season-statistics__overview strong { color:var(--green); font:800 31px/1 var(--display); }
.season-statistics__group + .season-statistics__group { border-top:10px solid var(--paper-deep); }
.season-statistics__group-header { display:flex; align-items:end; gap:12px; padding:22px 32px; background:#e7dcc8; }
.season-statistics__group-header span { color:var(--ink-soft); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.season-statistics__group-header h3 { margin:0; font:700 25px/1 var(--display); text-transform:uppercase; }
.season-statistics__table { min-width:920px; background:#fbf5e9; }
.season-statistics__table td:not(:first-child),.season-statistics__table th:not(:first-child) { text-align:left; font-variant-numeric:tabular-nums; }
.season-stat-drop-note { display:block; margin-top:4px; color:var(--ink-soft); font-size:8px; font-weight:600; white-space:nowrap; }
.season-stat-positive { color:#438c5d; font-weight:900; }
.season-stat-negative { color:var(--red); font-weight:900; }
.season-statistics__records { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.season-statistics__records article { min-height:170px; display:grid; align-content:center; gap:7px; padding:24px; border-top:5px solid var(--gold); background:#fbf5e9; box-shadow:var(--shadow); }
.season-statistics__records strong { color:var(--green); font:800 31px/1 var(--display); }
.season-statistics__records p { margin:2px 0 0; font-weight:800; }
.season-statistics__records small { color:var(--ink-soft); font-size:9px; }
.season-statistics > .chronicle-note { margin:0; padding:14px 32px; }
.points-progression-title p { max-width:420px; margin:0 0 7px; color:var(--ink-soft); font-size:11px; text-align:right; }
.points-progression__toolbar { display:flex; align-items:end; justify-content:flex-end; gap:18px; padding:18px 24px; border-bottom:1px solid var(--line); background:#eee4d2; }
.points-progression__toolbar.is-empty { display:none; }
.points-progression__toolbar label { display:grid; gap:5px; min-width:min(300px,100%); color:var(--ink-soft); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.points-progression__toolbar label[hidden] { display:none !important; }
.points-progression__toolbar label:not([hidden]) { margin-right:auto; }
.points-progression__toolbar select { min-height:42px; padding:0 38px 0 12px; border:1px solid var(--line); background:var(--cream); color:var(--ink); font:13px var(--body); }
.points-progression__actions { display:flex; gap:8px; }
.points-progression__actions button { min-height:40px; padding:0 14px; border:1px solid var(--green); background:transparent; color:var(--green); cursor:pointer; font:800 10px var(--body); letter-spacing:.07em; text-transform:uppercase; }
.points-progression__actions button:hover,.points-progression__actions button:focus-visible { background:var(--green); color:#fff; }
.points-progression__layout { display:grid; grid-template-columns:minmax(340px,400px) minmax(0,1fr); grid-template-areas:"legend plot"; min-height:420px; }
.points-progression__plot { grid-area:plot; position:relative; min-width:0; overflow-x:auto; overflow-y:hidden; border-left:1px solid var(--line); transition:background .2s; }
.points-progression__plot canvas { display:block; }
.points-progression__tooltip { position:absolute; z-index:2; display:grid; gap:4px; max-width:290px; padding:11px 13px; border:1px solid rgba(63,79,47,.35); background:rgba(255,250,240,.97); color:var(--ink); pointer-events:none; box-shadow:0 8px 24px rgba(0,0,0,.18); font-size:10px; }
.points-progression__tooltip[hidden] { display:none; }
.points-progression__tooltip strong { margin-bottom:3px; font-size:11px; }
.points-progression__tooltip span { display:flex; align-items:center; gap:7px; white-space:nowrap; }
.points-progression__tooltip i,.points-progression__legend i { width:10px; height:10px; flex:0 0 auto; border-radius:50%; background:var(--series-color); }
.points-progression__sidebar { grid-area:legend; min-width:0; display:grid; grid-template-rows:auto minmax(0,1fr); max-height:620px; background:var(--paper); }
.points-progression__sidebar .points-progression__actions { justify-content:space-between; gap:1px; padding:10px; border-bottom:1px solid rgba(63,79,47,.22); background:var(--paper-deep); }
.points-progression__sidebar .points-progression__actions button { flex:1; min-height:38px; border-color:rgba(63,79,47,.35); color:#3f4f2f; }
.points-progression__sidebar .points-progression__actions button:hover,.points-progression__sidebar .points-progression__actions button:focus-visible { border-color:var(--gold); background:var(--gold); color:#172018; outline:none; }
.points-progression__legend { align-content:start; display:grid; min-height:0; overflow:auto; padding:10px 12px 20px; background:var(--paper); color:#172018; }
.points-progression__legend label { display:grid; grid-template-columns:18px 10px minmax(0,1fr); align-items:center; gap:9px; min-height:42px; padding:7px 3px; border-bottom:1px solid rgba(255,255,255,.07); cursor:pointer; font-size:11px; }
.points-progression__legend label { border-bottom-color:rgba(63,79,47,.15); }
.points-progression__legend label:hover { background:rgba(63,79,47,.08); }
.points-progression__legend input { appearance:none; width:18px; height:18px; display:grid; flex:0 0 auto; place-items:center; margin:0; border:1px solid rgba(63,79,47,.55); background:#f8f1e5; cursor:pointer; }
.points-progression__legend input::after { content:"✓"; color:#172018; font:900 13px/1 var(--body); transform:scale(0); transition:transform .12s ease; }
.points-progression__legend input:checked { border-color:var(--series-color,var(--gold)); background:var(--series-color,var(--gold)); }
.points-progression__legend input:checked::after { transform:scale(1); }
.points-progression__legend input:focus-visible { outline:2px solid #3f4f2f; outline-offset:2px; }
.points-progression > .chronicle-note { margin:0; padding:14px 24px; border-top:1px solid var(--line); }
.points-progression__layout { background:var(--cream); color:#172018; }
.points-progression__plot { border-left-color:rgba(63,79,47,.2); background:#fffaf0; }
.race-tab-empty { padding:46px 30px; background:var(--cream); box-shadow:var(--shadow); text-align:center; }
.race-tab-empty h2 { margin:10px 0 0; font:700 28px/1 var(--display); text-transform:uppercase; }
.race-tab-empty p { margin:10px 0 0; color:var(--ink-soft); font-size:12px; }
.race-position-panel { overflow:hidden; background:var(--cream); box-shadow:var(--shadow); }
.race-position-panel > header { display:flex; align-items:end; justify-content:space-between; gap:24px; padding:24px 28px; border-bottom:1px solid var(--line); }
.race-position-panel h2 { margin:10px 0 0; font:700 30px/1 var(--display); text-transform:uppercase; }
.race-gap-panel > header p { margin:8px 0 0; color:var(--ink-soft); font-size:11px; }
.race-report { overflow:hidden; border:1px solid var(--line); background:var(--cream); box-shadow:var(--shadow); }
.race-report__header { padding:clamp(36px,5vw,68px) clamp(28px,6vw,92px); border-bottom:1px solid var(--line); background:#172018; color:#fff; text-align:center; }
.race-report__header h2 { max-width:1180px; margin:17px auto 22px; font:800 clamp(38px,4.6vw,64px)/.98 var(--display); letter-spacing:-.018em; text-wrap:balance; }
.race-report__header p { max-width:980px; margin:0 auto; color:rgba(255,255,255,.82); font:500 clamp(17px,1.35vw,20px)/1.65 var(--body); text-wrap:pretty; }
.race-report__body { width:min(1080px,100%); margin:0 auto; padding:clamp(42px,5vw,72px) clamp(28px,5vw,68px); color:#161b15; font:400 18px/1.78 var(--body); }
.race-report__body section + section { margin-top:48px; }
.race-report__body h3 { max-width:920px; margin:0 0 17px; color:var(--red); font:750 clamp(24px,2vw,30px)/1.15 var(--body); letter-spacing:-.012em; text-wrap:balance; }
.race-report__body p { max-width:980px; margin:0 0 1.35em; text-wrap:pretty; }
.race-report__closing { margin-top:50px!important; padding:26px 0 0; border-top:3px solid var(--gold); color:#30392d; font-size:17px; font-style:italic; }
.race-report > footer { padding:18px 28px; border-top:1px solid var(--line); color:var(--ink-soft); font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.championship-page--themed .race-report__header { background:color-mix(in srgb,var(--championship-accent) 42%,#050505); color:#fff; }
.championship-page--themed .race-report__header p { color:rgba(255,255,255,.82); }
.championship-page--themed .race-report__header .session-tag { background:var(--championship-accent); color:var(--championship-accent-contrast,#050505); }
.championship-page--themed .race-report__body h3 { color:color-mix(in srgb,var(--championship-accent) 42%,#050505); }
.championship-page--themed .race-report__closing { border-top-color:var(--championship-accent); }
.race-gap-header-tools { display:flex; align-items:flex-end; gap:12px; flex-wrap:wrap; }
.race-gap-controls { display:flex; gap:5px; }
.race-gap-controls button { min-width:36px; height:36px; padding:0 10px; border:1px solid rgba(63,79,47,.42); background:#172018; color:#fff; cursor:pointer; font:800 17px/1 var(--body); }
.race-gap-controls button:last-child { font-size:9px; letter-spacing:.06em; text-transform:uppercase; }
.race-gap-controls button:hover,.race-gap-controls button:focus-visible { background:var(--red); outline:2px solid var(--gold); outline-offset:1px; }
.race-position-class { display:grid; gap:5px; min-width:220px; color:var(--ink-soft); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.race-position-class select { min-height:42px; padding:0 38px 0 12px; border:1px solid var(--line); background:var(--paper); color:var(--ink); font:13px var(--body); }
.race-position-chart__layout { display:grid; grid-template-columns:minmax(340px,400px) minmax(0,1fr); grid-template-areas:"legend plot"; min-height:420px; }
.race-position-chart__plot { grid-area:plot; position:relative; min-width:0; overflow:auto hidden; border-left:1px solid var(--line); background:#fffaf0; }
.race-position-chart__plot svg { display:block; max-width:none; }
.race-position-panel:not(.race-gap-panel) .race-position-chart__plot svg { cursor:grab; touch-action:none; user-select:none; }
.race-position-panel:not(.race-gap-panel) .race-position-chart__plot.is-dragging svg { cursor:grabbing; }
.race-gap-panel .race-position-chart__plot { overflow:auto; }
.race-gap-panel .race-position-chart__plot svg { cursor:zoom-in; touch-action:none; }
.race-gap-panel .race-position-chart__plot.is-zoomed svg { cursor:grab; }
.race-gap-panel .race-position-chart__plot.is-dragging svg { cursor:grabbing; }
.race-position-grid { stroke:rgba(35,55,29,.16); stroke-width:1; }
.race-position-grid--vertical { stroke:rgba(35,55,29,.09); }
.race-gap-baseline { stroke:rgba(35,55,29,.42); stroke-width:1.5; }
.race-position-axis-label { fill:var(--ink-soft); font:800 10px var(--body); }
.race-position-chart__legend { grid-area:legend; align-content:start; display:grid; max-height:620px; overflow:auto; padding:10px 12px 20px; background:var(--paper); }
.race-position-chart__legend label { display:grid; grid-template-columns:18px 10px minmax(0,1fr); align-items:start; gap:9px; min-height:42px; padding:7px 3px; border-bottom:1px solid rgba(63,79,47,.15); cursor:pointer; font-size:11px; }
.race-position-chart__legend label:hover { background:rgba(63,79,47,.08); }
.race-position-chart__legend input { appearance:none; width:18px; height:18px; display:grid; flex:0 0 auto; place-items:center; margin:0; border:1px solid rgba(63,79,47,.55); background:#f8f1e5; cursor:pointer; }
.race-position-chart__legend input::after { content:"✓"; color:#172018; font:900 13px/1 var(--body); transform:scale(0); }
.race-position-chart__legend input:checked { border-color:var(--series-color,var(--gold)); background:var(--series-color,var(--gold)); }
.race-position-chart__legend input:checked::after { transform:scale(1); }
.race-position-chart__legend input,.race-position-chart__legend i { margin-top:2px; }
.race-position-chart__legend i { width:10px; height:10px; flex:0 0 auto; border-radius:50%; background:var(--series-color); }
.race-chart-driver { display:grid; min-width:0; gap:3px; line-height:1.3; }
.race-chart-driver b,.race-chart-driver strong { display:block; overflow-wrap:anywhere; font:inherit; font-weight:700; }
.race-chart-driver small { display:block; overflow-wrap:anywhere; color:var(--ink-soft); font-size:9px; font-weight:500; line-height:1.35; }
.race-position-chart__legend label.is-muted { opacity:.42; }
.race-position-chart__tooltip { position:absolute; z-index:3; display:grid; gap:4px; min-width:145px; padding:10px 12px; border:1px solid var(--series-color,var(--green)); background:color-mix(in srgb,var(--series-color,var(--green)) 13%,#fffaf0); color:var(--ink); pointer-events:none; box-shadow:0 8px 24px rgba(0,0,0,.18); font-size:10px; }
.race-position-chart__tooltip[hidden] { display:none; }
.race-position-chart__tooltip .race-chart-driver strong { font-size:11px; }
.race-position-chart__tooltip .race-chart-driver small { font-size:9px; }
.race-position-chart__tooltip .race-chart-driver small strong { display:inline; font-size:9px; font-weight:900; }
.race-position-panel > .chronicle-note { margin:0; padding:13px 24px; border-top:1px solid var(--line); }
.race-video-panel { padding:28px 30px; background:var(--cream); box-shadow:var(--shadow); }
.race-video-panel h2 { margin:10px 0 18px; font:700 30px/1 var(--display); text-transform:uppercase; }
.race-video-frame { position:relative; max-width:960px; aspect-ratio:16/9; background:#111; }
.race-video-frame iframe { position:absolute; width:100%; height:100%; border:0; }
.race-video-link { display:inline-block; margin-top:16px; color:var(--green); font:800 11px var(--body); letter-spacing:.06em; text-transform:uppercase; }
.race-video-list { display:grid; gap:30px; }
.race-video-item + .race-video-item { padding-top:28px; border-top:1px solid rgba(35,55,29,.18); }
.race-video-item h3 { max-width:960px; margin:0 0 12px; font:700 19px/1.25 var(--display); }
.race-analysis-panel { overflow:hidden; background:var(--cream); box-shadow:var(--shadow); }
.race-analysis-header { display:flex; align-items:end; justify-content:space-between; gap:30px; padding:26px 30px; border-bottom:1px solid var(--line); background:var(--cream); color:var(--ink); }
.race-analysis-header h2 { margin:10px 0 0; font:700 30px/1 var(--display); text-transform:uppercase; }
.race-analysis-header p { max-width:720px; margin:7px 0 0; color:var(--ink-soft); font-size:11px; }
.race-analysis-section { padding:28px 30px; border-bottom:1px solid var(--line); }
.race-analysis-title { margin-bottom:18px; }
.race-analysis-title h3 { margin:7px 0 5px; font:700 25px/1 var(--display); text-transform:uppercase; }
.race-analysis-title p { max-width:760px; margin:0; color:var(--ink-soft); font-size:10px; }
.race-analysis-title--linked { display:flex; align-items:end; justify-content:space-between; gap:20px; }
.race-analysis-title--linked .button { flex:0 0 auto; }
.race-analysis-table { background:#fbf5e9; }
.race-analysis-table .team-name { font-size:15px; line-height:1.15; }
.driver-roster-separator { color:inherit; font-weight:700; }
.race-analysis-best { display:inline-block; margin-left:calc(-.48rem - 1px); padding:.22rem .48rem; border:1px solid rgba(174,126,27,.48); border-radius:999px; background:rgba(231,185,91,.22); color:var(--green); font-weight:900; line-height:1.1; white-space:nowrap; }
.race-analysis-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); }
.race-analysis-cards article { display:grid; gap:5px; min-height:132px; padding:18px; background:#fbf5e9; }
.race-analysis-cards span,.race-analysis-condition-grid span { color:var(--ink-soft); font-size:9px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.race-analysis-cards b { font:700 14px/1.25 var(--body); }
.race-analysis-cards strong { color:var(--green); font:800 35px/1 var(--display); }
.race-analysis-cards small { color:var(--ink-soft); font-size:9px; line-height:1.4; }
.race-analysis-condition-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; }
.race-analysis-condition-grid article { display:grid; gap:8px; padding:18px; border-left:4px solid var(--gold); background:#fbf5e9; }
.race-analysis-condition-grid strong { font:700 22px/1 var(--display); }
.race-analysis-panel > .chronicle-note { margin:0; padding:14px 30px; }
.results-table { width: max-content; min-width: 100%; border-collapse: collapse; font-size: 13px; }
.results-table th { padding: 12px 16px; background: #eae0cd; color: var(--ink-soft); font-size: 10px; text-align: left; text-transform: uppercase; letter-spacing: .08em; white-space: nowrap; }
.results-table td { padding: 14px 16px; border-top: 1px solid var(--line); vertical-align: middle; white-space: nowrap; }
.results-table tbody tr:hover { background: #fffaf0; }
.results-table td small { display: block; margin-top: 3px; color: #737a7e; font-size: 9px; }
.results-table .position { color: var(--red); font: 800 22px var(--display); }
.results-table .time { font-variant-numeric: tabular-nums; white-space: nowrap; }
.results-table .podium { background: rgba(198,156,84,.08); }
.results-table tbody tr.results-row--class-colored { background:var(--class-color); color:var(--class-color-ink); }
.results-table tbody tr.results-row--class-colored:hover { background:var(--class-color); filter:brightness(.96); }
.results-table tbody tr.results-row--class-colored .position,
.results-table tbody tr.results-row--class-colored .driver-link,
.results-table tbody tr.results-row--class-colored td small { color:var(--class-color-ink); }
.results-table tbody tr.results-row--class-colored td small { opacity:.72; }
.results-table tbody tr.results-row--class-colored .class-chip--custom { box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--class-color-ink) 32%, transparent); }
.incident-count { text-align:center; font-variant-numeric:tabular-nums; }
.incident-count a, .incident-count span { min-width:30px; min-height:30px; display:inline-grid; place-items:center; border-radius:50%; font-weight:800; text-decoration:none; }
.incident-count a { background:var(--gold); color:var(--ink); box-shadow:0 0 0 1px rgba(0,0,0,.12); }
.incident-count a:hover, .incident-count a:focus-visible { background:var(--green); color:#fff; outline:3px solid rgba(231,185,91,.4); }
.incident-count span { color:var(--ink-soft); }
.class-position,.start-position,.race-laps,.position-change-cell { text-align:center; font-variant-numeric:tabular-nums; }
.results-table th.class-position,.results-table th.start-position,.results-table th.race-laps,.results-table td.class-position,.results-table td.start-position,.results-table td.race-laps { text-align:center; }
.class-position { box-sizing:border-box; width:74px; min-width:74px; max-width:74px; font-weight:800; }
.start-position,.race-laps { box-sizing:border-box; width:96px; min-width:96px; max-width:96px; }
.position-change-heading,.position-change-cell { box-sizing:border-box; width:54px; min-width:54px; max-width:54px; padding-left:0; padding-right:0; }
.position-change { --position-change-color:#68716b; position:relative; display:inline-grid; place-items:center; box-sizing:border-box; width:42px; min-height:25px; padding:4px 13px 4px 6px; border:1px solid rgba(255,255,255,.28); border-left:4px solid var(--position-change-color); border-radius:3px; background:#202620; box-shadow:0 1px 2px rgba(0,0,0,.22); color:#fff; vertical-align:middle; font-weight:900; line-height:1; font-variant-numeric:tabular-nums; }
.position-change b { color:#fff; font:inherit; line-height:1; text-align:center; }
.position-change i { position:absolute; right:4px; top:50%; display:block; width:0; height:0; border-left:4px solid transparent; border-right:4px solid transparent; transform:translateY(-50%); }
.position-change--gained { --position-change-color:#35c46a; }
.position-change--gained i { border-bottom:8px solid var(--position-change-color); }
.position-change--lost { --position-change-color:#ff5368; }
.position-change--lost i { border-top:8px solid var(--position-change-color); }
.position-change--neutral { padding-right:6px; border-left-color:#8f9891; color:#fff; }
.results-table tbody tr.results-row--class-colored .position-change--gained { --position-change-color:#35c46a; }
.results-table tbody tr.results-row--class-colored .position-change--lost { --position-change-color:#ff5368; }
.results-table tbody tr.results-row--class-colored .position-change--neutral { color:#fff; }
.driver-link { font-weight: 700; text-decoration: none; }
.driver-link:hover { color: var(--red); }
.team-cell { min-width: 200px; }
.team-name { display:block; font:700 18px/1.05 var(--display); text-transform:uppercase; }
.results-table--teams .team-cell small { margin-top:5px; font-size:10px; }
.results-table--teams .team-cell .driver-link { font-weight:700; }
.car-model { text-transform: none; }
.car-model-link { color:inherit; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.car-model-link:hover,.car-model-link:focus-visible { color:var(--green, #3f4f2f); }
.car-cell { min-width: 220px; display: flex; align-items: center; gap: 13px; }
.car-cell > span { display: grid; min-width: 0; }
.car-cell img { display: block; width: 100%; height: 100%; object-fit: contain; }
.skin-preview { box-sizing: border-box; width: 96px; height: 56px; display: grid; place-items: center; flex: 0 0 auto; padding: 0; overflow: hidden; border: 0; border-radius: 6px; background: transparent; box-shadow: 3px 4px 7px rgba(26,31,27,.24); cursor: zoom-in; transition: box-shadow .15s ease, transform .15s ease; }
.skin-preview img { width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }
.skin-preview:hover { box-shadow: 4px 5px 10px rgba(26,31,27,.3); transform: translateY(-1px); }
.skin-preview:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.skin-lightbox { width: min(94vw, 1120px); max-width: none; padding: 0; overflow: visible; border: 0; background: #0d110e; color: #fff; box-shadow: 0 30px 90px rgba(0,0,0,.55); }
.skin-lightbox::backdrop { background: rgba(0,0,0,.82); backdrop-filter: blur(4px); }
.skin-lightbox img { display: block; width: 100%; max-height: 82vh; object-fit: contain; background: #080a08; }
.skin-lightbox p { margin: 0; padding: 14px 18px; color: rgba(255,255,255,.75); font-size: 12px; }
.skin-lightbox__close { position: absolute; top: -16px; right: -16px; z-index: 1; width: 42px; height: 42px; padding: 0; border: 2px solid #fff; border-radius: 50%; background: var(--green); color: #fff; cursor: pointer; font: 700 25px/1 var(--body); }

.incident-panel { overflow: hidden; background: var(--cream); box-shadow: var(--shadow); }
.incident-panel__header { display: flex; align-items: end; justify-content: space-between; gap: 30px; padding: 28px 30px; border-bottom: 1px solid var(--line); }
.incident-panel__header h2 { margin: 10px 0 0; font: 700 30px/1 var(--display); text-transform: uppercase; }
.incident-panel__header p { max-width: 560px; margin: 9px 0 0; color: var(--ink-soft); font-size: 11px; }
.incident-summary { display: grid; grid-template-columns: repeat(3, auto); gap: 1px; flex: 0 0 auto; background: var(--line); }
.incident-summary span { min-width: 96px; display: grid; padding: 12px 15px; background: var(--cream); color: var(--ink-soft); font-size: 8px; letter-spacing: .08em; text-align: right; text-transform: uppercase; }
.incident-summary strong { color: var(--ink); font: 800 24px/1 var(--display); }
.incident-layout { display: grid; grid-template-columns: minmax(360px, 1.05fr) minmax(420px, 1fr); height: min(680px, calc(100vh - 190px)); min-height: 440px; }
.incident-map-card { min-width: 0; min-height: 0; display:flex; flex-direction:column; padding: 26px; border-right: 1px solid var(--line); background: #151a14; color: #fff; }
.incident-driver-filter { display:grid; gap:6px; margin-bottom:15px; color:rgba(255,255,255,.65); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.incident-driver-filter select { width:100%; min-height:44px; padding:0 38px 0 12px; border:1px solid rgba(255,255,255,.2); background:#f7f1e5; color:var(--ink); font:13px var(--body); }
.incident-driver-filter select:focus { border-color:var(--gold); outline:2px solid rgba(231,185,91,.45); outline-offset:1px; }
.incident-filter-empty { margin:0 0 15px; padding:11px 13px; border-left:4px solid var(--gold); background:rgba(255,255,255,.08); color:rgba(255,255,255,.82); font-size:11px; }
.incident-map { position: relative; width: 100%; min-height: 0; height:100%; flex:1 1 auto; aspect-ratio:auto !important; overflow: hidden; display: grid; place-items: center; background: #0a0d0a; border: 1px solid rgba(255,255,255,.12); }
.incident-map > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: fill; filter: contrast(1.06); }
.incident-map--missing { align-content: center; padding: 40px; text-align: center; background: repeating-linear-gradient(135deg, #111611 0 18px, #151b15 19px 36px); }
.incident-map--missing .eyebrow { margin-bottom: 12px; color: var(--gold); }
.incident-map--missing strong { font: 700 30px/1 var(--display); }
.incident-map--missing small { margin-top: 7px; color: rgba(255,255,255,.58); }
.incident-marker { position: absolute; z-index: 2; width: var(--marker-size, 18px); height: var(--marker-size, 18px); min-width: 12px; min-height: 12px; padding: 0; border: 2px solid #fff; border-radius: 50%; box-shadow: 0 2px 8px rgba(0,0,0,.7); cursor: pointer; transform: translate(-50%, -50%); transition: transform .18s, box-shadow .18s; }
.incident-marker:hover, .incident-marker:focus-visible { z-index: 3; outline: none; box-shadow: 0 0 0 5px rgba(231,185,91,.35), 0 4px 12px rgba(0,0,0,.7); transform: translate(-50%, -50%) scale(1.35); }
.incident-marker.is-selected { z-index:4; box-shadow:0 0 0 7px rgba(231,185,91,.78), 0 0 20px rgba(231,185,91,.75), 0 4px 12px rgba(0,0,0,.75); transform:translate(-50%, -50%) scale(1.35); }
.incident-marker--car, .legend-dot--car { background: var(--gold); }
.incident-marker--environment, .legend-dot--environment { background: #a63a32; }
.incident-track-location { position:absolute; z-index:1; width:max-content; max-width:180px; padding:5px 8px; border:1px solid rgba(255,255,255,.72); border-radius:3px; background:rgba(10,13,10,.94); color:#fff; box-shadow:0 2px 8px rgba(0,0,0,.8); font:800 10px/1.2 var(--body); letter-spacing:.015em; pointer-events:none; transform:translate(-50%,calc(-100% - 9px)); }
.incident-track-location--below{transform:translate(-50%,9px)}.incident-track-location--from-left{transform:translate(0,calc(-100% - 9px))}.incident-track-location--below.incident-track-location--from-left{transform:translate(0,9px)}.incident-track-location--from-right{transform:translate(-100%,calc(-100% - 9px))}.incident-track-location--below.incident-track-location--from-right{transform:translate(-100%,9px)}
.incident-map-legend { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; padding-top: 15px; color: rgba(255,255,255,.78); font-size: 10px; }
.incident-map-legend span { display: inline-flex; align-items: center; gap: 7px; }
.incident-map-legend small { margin-left: auto; color: rgba(255,255,255,.42); }
.legend-dot { width: 10px; height: 10px; display: inline-block; border: 1px solid rgba(255,255,255,.75); border-radius: 50%; }
.incident-timeline { min-height:0; height:100%; max-height:none; overflow: auto; list-style: none; margin: 0; padding: 0; }
.incident-timeline li { display: grid; grid-template-columns: 38px minmax(150px, 1fr) 118px 75px; align-items: center; gap: 13px; min-height: 78px; padding: 12px 22px; border-top: 1px solid var(--line); cursor:pointer; transition: background .2s, box-shadow .2s; }
.incident-marker[hidden], .incident-timeline li[hidden] { display:none !important; }
.incident-timeline li:first-child { border-top: 0; }
.incident-timeline li:hover, .incident-timeline li:focus-visible { outline:none; background:rgba(231,185,91,.12); }
.incident-timeline li.is-selected { background: rgba(231,185,91,.22); box-shadow: inset 5px 0 var(--gold); }
.incident-index { color: var(--gold); font: 800 22px/1 var(--display); }
.incident-main { min-width: 0; display: grid; }
.incident-main > strong { font: 700 16px/1.1 var(--display); text-transform: uppercase; }
.incident-main > small { margin-top: 4px; color: var(--ink-soft); font-size: 8px; }
.incident-main > .incident-main__location { color:var(--green); font-size:9px; font-weight:800; }
.race-control-contact-link { width:fit-content; margin-top:7px; color:var(--red); font-size:9px; font-weight:800; line-height:1.25; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:2px; }
.race-control-contact-link:hover { color:var(--green); }
.incident-drivers { margin-top: 4px; overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.incident-drivers a { font-weight: 700; text-decoration: none; }
.incident-drivers a:hover { color: var(--red); }
.incident-drivers--endurance { display:flex; align-items:center; gap:7px; overflow:visible; white-space:normal; }
.incident-participant { display:inline-grid; min-width:0; }
.incident-participant strong { font:700 13px/1.05 var(--display); text-transform:uppercase; }
.incident-participant small { margin-top:3px; color:var(--ink-soft); font-size:9px; }
.incident-participant-separator { color:var(--ink-soft); }
.incident-time { color: var(--ink-soft); font-size: 11px; font-variant-numeric: tabular-nums; text-align: right; }
.incident-impact { display: flex; align-items: baseline; justify-content: end; gap: 3px; color: var(--red); font: 800 20px/1 var(--display); font-variant-numeric: tabular-nums; }
.incident-impact small { color: var(--ink-soft); font: 8px var(--body); text-transform: uppercase; }

.race-control-panel { overflow:hidden; background:var(--cream); box-shadow:var(--shadow); scroll-margin-top:24px; }
.race-control-panel__header { display:flex; align-items:end; justify-content:space-between; gap:30px; padding:28px 30px; border-bottom:1px solid var(--line); }
.race-control-panel__header h2 { margin:10px 0 0; font:700 30px/1 var(--display); text-transform:uppercase; }
.race-control-panel__header p { max-width:600px; margin:9px 0 0; color:var(--ink-soft); font-size:11px; }
.race-control-panel__header > strong { display:grid; color:var(--red); font:800 36px/1 var(--display); text-align:right; }
.race-control-panel__header > strong small { margin-top:4px; color:var(--ink-soft); font:8px var(--body); letter-spacing:.1em; text-transform:uppercase; }
.race-control-note { margin:0; padding:15px 30px; border-bottom:1px solid var(--line); background:rgba(231,185,91,.13); color:var(--ink-soft); font-size:10px; line-height:1.55; }
.race-control-list { list-style:none; margin:0; padding:0; }
.race-control-list > li { display:grid; grid-template-columns:minmax(150px,.55fr) minmax(320px,1.8fr); gap:24px; align-items:start; padding:22px 30px; border-top:1px solid var(--line); scroll-margin-top:24px; }
.race-control-list > li:first-child { border-top:0; }
.race-control-list > li:target { background:rgba(231,185,91,.2); box-shadow:inset 5px 0 var(--gold); }
.race-control-list > li[data-race-control-incident] { cursor:pointer; transition:background .2s, box-shadow .2s; }
.race-control-list > li[data-race-control-incident]:hover, .race-control-list > li[data-race-control-incident]:focus-visible { outline:none; background:rgba(231,185,91,.12); box-shadow:inset 5px 0 var(--gold); }
.race-control-list__identity, .race-control-list__decision { display:grid; gap:7px; min-width:0; }
.race-control-list__identity > span { font:700 17px/1.1 var(--display); text-transform:uppercase; }
.race-control-list__identity small { color:var(--ink-soft); font-size:9px; }
.race-control-list__decision p { margin:0; font-size:12px; line-height:1.55; }
.race-control-list__decision span { display:grid; grid-template-columns:125px minmax(0,1fr); gap:12px; color:var(--ink-soft); font-size:10px; line-height:1.45; }
.race-control-list__decision b { color:var(--ink); font-size:8px; letter-spacing:.07em; text-transform:uppercase; }

.page-heading--drivers { display:grid; grid-template-columns:minmax(0,1fr) minmax(430px,.9fr); align-items:center; gap:48px; }
.page-heading--drivers > div { min-width:0; }
.driver-map-card { min-width:0; display:grid; grid-template-rows:auto 1fr auto; min-height:210px; padding:14px 18px 11px; overflow:hidden; border:1px solid rgba(63,79,47,.32); background:rgba(251,247,238,.55); color:var(--ink); cursor:zoom-in; text-align:left; box-shadow:0 10px 30px rgba(28,26,21,.06); transition:border-color .2s,box-shadow .2s,transform .2s; }
.driver-map-card:hover,.driver-map-card:focus-visible { border-color:var(--red); outline:none; box-shadow:var(--shadow); transform:translateY(-2px); }
.driver-map-card__heading { display:flex; align-items:baseline; justify-content:space-between; gap:15px; }
.driver-map-card__heading strong { font:800 13px var(--display); letter-spacing:.08em; text-transform:uppercase; }
.driver-map-card__heading small,.driver-map-card__summary { color:var(--ink-soft); font-size:9px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.driver-map-card__summary { text-align:right; }
.driver-world-map { position:relative; min-width:0; }
.driver-world-map svg { display:block; width:100%; height:100%; overflow:visible; }
.driver-world-map--compact { height:150px; margin:-8px 0 -4px; }
.driver-map-land path { fill:#d8cdb7; stroke:#f4eddd; stroke-width:2; vector-effect:non-scaling-stroke; }
.driver-map-heat circle { fill:#b43c31; fill-opacity:var(--heat-strength); stroke:#fbf7ee; stroke-width:2; vector-effect:non-scaling-stroke; cursor:pointer; transition:fill-opacity .15s,stroke-width .15s,fill .15s; }
.driver-map-heat circle:hover,.driver-map-heat circle:focus { fill-opacity:1; stroke:#172018; stroke-width:3; outline:none; }
.driver-map-heat circle.is-active { fill:#3f4f2f; fill-opacity:1; stroke:#e7b95b; stroke-width:4; }
.driver-map-tooltip { position:absolute; z-index:3; padding:7px 9px; pointer-events:none; transform:translate(-50%,calc(-100% - 10px)); background:#10171c; color:#fff; font-size:11px; font-weight:750; white-space:nowrap; box-shadow:0 8px 22px rgba(0,0,0,.28); }
.driver-map-dialog { position:relative; width:min(96vw,1500px); max-width:none; height:min(94vh,900px); max-height:none; padding:26px 34px 30px; overflow:hidden; border:0; background:var(--paper); color:var(--ink); box-shadow:0 30px 90px rgba(0,0,0,.58); }
.driver-map-dialog::backdrop { background:rgba(0,0,0,.84); backdrop-filter:blur(4px); }
.driver-map-dialog .skin-lightbox__close { top:16px; right:16px; }
.driver-map-dialog__heading { padding-right:55px; }
.driver-map-dialog__heading h2 { margin:0; font:800 clamp(36px,5vw,68px)/.9 var(--display); letter-spacing:-.025em; text-transform:uppercase; }
.driver-map-dialog__heading p { margin:10px 0 0; color:var(--ink-soft); font-size:14px; }
.driver-world-map--large { height:calc(100% - 125px); min-height:320px; margin-top:4px; }
.driver-world-map--large .driver-map-land path { fill:#d4c6ad; stroke:var(--paper); }
.driver-world-map--large svg { cursor:zoom-in; touch-action:none; }
.driver-world-map--large.is-zoomed svg { cursor:grab; }
.driver-world-map--large.is-dragging svg { cursor:grabbing; }
.driver-map-controls { position:absolute; right:34px; bottom:28px; z-index:5; display:flex; gap:5px; }
.driver-map-controls button { min-width:38px; height:38px; padding:0 11px; border:1px solid rgba(255,255,255,.38); background:#172018; color:#fff; cursor:pointer; font:800 18px/1 var(--body); box-shadow:0 5px 15px rgba(0,0,0,.18); }
.driver-map-controls button:last-child { font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.driver-map-controls button:hover,.driver-map-controls button:focus-visible { background:var(--red); outline:2px solid var(--gold); outline-offset:1px; }

.driver-sort { display: flex; align-items: end; justify-content: flex-end; gap: 10px; margin: -20px 0 24px; }
.champions-order { min-height:42px; display:inline-flex; align-items:center; justify-content:center; gap:10px; margin:0 0 20px; padding:0 15px; background:#3f4f2f; color:#fff; cursor:pointer; font-size:.72rem; font-weight:800; letter-spacing:.05em; text-decoration:none; text-transform:uppercase; white-space:nowrap; }
.champions-order:hover, .champions-order:focus-visible { background:#243619; color:#fff; outline:3px solid rgba(231,185,91,.55); outline-offset:2px; }
.champions-order i { color:var(--gold); font-size:1rem; font-style:normal; }
.driver-sort label { display: grid; gap: 6px; min-width: 230px; }
.driver-sort .driver-search-field { flex:1 1 320px; max-width:420px; }
.driver-sort label > span { color: var(--ink-soft); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.driver-sort select, .driver-sort input[type="search"] { min-height: 51px; padding: 0 42px 0 14px; border: 1px solid var(--line); border-radius: 0; background: var(--cream); color: var(--ink); font: 700 14px var(--body); }
.driver-sort select { cursor:pointer; }
.driver-sort select:focus, .driver-sort input[type="search"]:focus { border-color: var(--red); outline: 2px solid color-mix(in srgb, var(--red) 25%, transparent); outline-offset: 1px; }
.driver-sort .button { flex: 0 0 auto; }
.driver-bio-filter { margin-left:92px; }
.driver-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.driver-card { display: grid; grid-template-columns: 54px 1fr 65px 65px; align-items: center; gap: 15px; min-height: 84px; padding: 14px 20px; background: var(--cream); text-decoration: none; border-left: 3px solid transparent; }
.team-grid { margin-top:12px; }
.driver-card[hidden] { display:none !important; }
.driver-search-empty { margin:12px 0 0; padding:24px; background:var(--cream); color:var(--ink-soft); text-align:center; }
.driver-card:hover { border-left-color: var(--red); box-shadow: var(--shadow); }
.driver-initial { width: 46px; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: var(--ink); color: #fff; font: 800 24px var(--display); }
.driver-initial--photo { overflow:hidden; box-shadow:0 0 0 2px var(--cream),0 0 0 3px rgba(23,32,40,.18); }
.driver-initial--photo img { width:100%; height:100%; display:block; object-fit:cover; }
.driver-card__name, .driver-stat { display: grid; }
.driver-card__name strong { font: 700 19px var(--display); }
.driver-card__name small, .driver-stat small { color: var(--ink-soft); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.driver-nation { display:inline-flex; align-items:center; width:max-content; cursor:help; }
.nation-flag { display:block; width:24px; height:18px; object-fit:cover; border:1px solid rgba(15,24,28,.18); box-shadow:0 1px 2px rgba(15,24,28,.12); }
.driver-hero .nation-flag { width:32px; height:24px; border-color:rgba(255,255,255,.65); }
.driver-stat { text-align: center; }
.driver-stat strong { font: 800 22px var(--display); }
.driver-hero__grid { display: grid; grid-template-columns: 190px 1fr; align-items: center; gap: 45px; }
.driver-monogram { width: 180px; aspect-ratio: 1; display: grid; place-items: center; border: 5px solid var(--paper); border-radius: 50%; background: var(--red); font: 800 100px var(--display); }
.driver-hero .back-link { margin-bottom: 25px; }
.driver-summary { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4, 1fr); background: var(--cream); box-shadow: var(--shadow); }
.driver-summary div { display: grid; padding: 25px 30px; border-right: 1px solid var(--line); }
.driver-summary strong { font: 800 34px var(--display); }
.driver-summary span { color: var(--ink-soft); font-size: 10px; text-transform: uppercase; letter-spacing: .1em; }
.driver-summary--filtered { margin:0 0 24px; }
.driver-dashboard { padding-block: 54px 100px; }
.driver-filters { display: grid; grid-template-columns: minmax(155px,.7fr) minmax(110px,.5fr) minmax(240px,1fr) auto auto; align-items:end; gap:12px; margin-bottom:12px; padding:20px; background:#b8a597; border-top:4px solid var(--gold); }
.driver-tabs { margin:0 0 32px; }
.driver-tab-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin:0 0 20px; }
.driver-tab-heading h2 { margin:4px 0 6px; font-size:clamp(2rem,4vw,3.3rem); line-height:.95; text-transform:uppercase; }
.driver-tab-heading p { max-width:760px; margin:0; color:var(--ink-soft); }
.driver-tab-panel[hidden] { display:none !important; }
.driver-tab-panel .driver-standings-title { margin-top:0 !important; }
.driver-tab-panel.driver-statistics-grids { margin:24px 0 0; }
.driver-timeline-panel { position:relative; left:50%; width:calc(100vw - 40px); max-width:none; transform:translateX(-50%); }
.driver-timeline-panel > .driver-tab-heading { width:min(1270px,100%); margin-inline:auto; margin-bottom:20px; }
.driver-timeline-panel .history-table { width:min(1270px,100%); min-width:1180px; margin-inline:auto; }
.driver-timeline-car{min-width:260px}
.driver-timeline-car .skin-preview{width:82px;height:48px;border-radius:7px;box-shadow:3px 4px 9px rgba(26,31,27,.22)}
.driver-filters label { display:grid; gap:5px; color:rgba(0,0,0,.62); font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.driver-filters select { width:100%; min-height:46px; padding:0 38px 0 12px; border:1px solid rgba(0,0,0,.18); background:var(--cream); color:var(--ink); font:13px var(--body); }
.driver-filters button, .driver-filters > a { min-height:46px; display:inline-flex; align-items:center; justify-content:center; padding:0 17px; border:0; background:var(--green, #3f4f2f); color:#fff; cursor:pointer; font:700 11px var(--body); text-decoration:none; }
.driver-filters > a { background:var(--ink); }
.driver-race-range { grid-column:1 / -1; justify-self:stretch; align-self:stretch; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); min-width:0; min-height:72px; background:rgba(255,255,255,.22); text-align:center; }
.driver-race-range > span { min-width:0; display:grid; align-content:center; padding:10px 18px; border-left:1px solid rgba(0,0,0,.12); }
.driver-race-range > span:first-child { border-left:0; }
.driver-race-range small { color:rgba(0,0,0,.55); font-size:9px; text-transform:uppercase; letter-spacing:.06em; white-space:nowrap; }
.driver-race-range strong { margin-top:2px; font:700 22px var(--display); white-space:nowrap; }
.driver-race-range--career { position:relative; z-index:2; margin-top:-25px; background:var(--cream); box-shadow:var(--shadow); }
.driver-race-range--career > span { padding-block:22px; }
.driver-achievements { display:grid; grid-template-columns:1.6fr repeat(3,.8fr); gap:16px; }
.achievement-panel { min-width:0; overflow:hidden; background:var(--cream); box-shadow:var(--shadow); }
.driver-achievements > .achievement-panel { display:grid; grid-template-rows:110px minmax(0,1fr); }
.driver-achievements > .achievement-panel .achievement-metrics { grid-template-rows:repeat(3,minmax(0,1fr)); }
.achievement-panel > header { padding:20px 22px 17px; border-top:5px solid var(--red); border-bottom:1px solid var(--line); }
.achievement-panel .eyebrow { margin-bottom:7px; font-size:9px; }
.achievement-panel h2, .driver-chart h2 { margin:0; font:700 25px/1 var(--display); text-transform:uppercase; }
.achievement-metrics { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line); }
.achievement-panel--career .achievement-metrics { grid-template-columns:repeat(3,1fr); }
.achievement-panel--career .achievement-metrics span { padding-inline:12px; }
.achievement-panel--career .achievement-metrics strong { font-size:24px; }
@media (min-width:851px) {
    .achievement-panel--career .achievement-metrics small,
    .achievement-panel--career .achievement-metrics strong { white-space:nowrap; }
}
.achievement-metrics span { min-width:0; display:grid; padding:17px 19px; background:var(--cream); }
.achievement-metrics small { color:var(--ink-soft); font-size:10px; text-transform:uppercase; letter-spacing:.05em; }
.achievement-metrics strong { margin-top:4px; font:700 29px/1 var(--display); font-variant-numeric:tabular-nums; }
.incident-achievement-panel { grid-column: 1 / -1; margin-top:24px; }
.incident-achievement-panel > header { display: flex; align-items: end; justify-content: space-between; gap: 26px; border-top-color: var(--gold); }
.incident-achievement-panel > header p { max-width: 520px; margin: 0; color: var(--ink-soft); font-size: 10px; text-align: right; }
.incident-achievement-panel .achievement-metrics { grid-template-columns: repeat(6, 1fr); }
.driver-name-history { margin-top:0; }
.driver-name-history__content { overflow:hidden; background:var(--cream); border-top:5px solid var(--gold); box-shadow:var(--shadow); }
.driver-name-history > header p { max-width:520px; font-size:11px; text-align:right; }
.driver-name-history ol { list-style:none; margin:0; padding:0; }
.driver-name-history li { position:relative; display:grid; grid-template-columns:190px minmax(180px,.7fr) 1.3fr; align-items:center; gap:22px; min-height:76px; padding:15px 24px 15px 36px; border-top:1px solid var(--line); }
.driver-name-history li:first-child { border-top:0; }
.driver-name-history li::before { content:""; position:absolute; left:18px; width:8px; height:8px; border:2px solid var(--green); border-radius:50%; background:var(--cream); }
.driver-name-history li.is-current::before { background:var(--gold); border-color:var(--gold); }
.name-history-period { color:var(--ink-soft); font-size:11px; font-variant-numeric:tabular-nums; }
.name-history-name, .name-history-source { display:grid; }
.name-history-name strong { font:700 20px var(--display); }
.name-history-name small { width:max-content; margin-top:3px; padding:2px 6px; background:#3f4f2f; color:#e7b95b; font-size:8px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.name-history-source a { overflow:hidden; font-size:11px; font-weight:700; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
.name-history-source small { margin-top:3px; color:var(--ink-soft); font-size:9px; }
.name-history-empty { padding:24px; color:var(--ink-soft); font-size:12px; }
.driver-statistics-grids { display:grid; gap:18px; margin:56px 0 70px; }
.driver-statistics-grids--combined { grid-template-columns:repeat(2,minmax(0,1fr)); }
.driver-statistics-grids--combined .driver-chart-grid { display:contents; }
.driver-statistics-grids--combined .driver-chart--legacy-hours { display:none; }
.driver-statistics-grids--combined .bar-list > div { grid-template-columns:minmax(105px,1fr) minmax(60px,.55fr) minmax(195px,1.2fr); }
.driver-statistics-grids--combined .bar-list > div > strong { font-size:10px; white-space:nowrap; }
@media (max-width:900px) { .driver-statistics-grids--combined { grid-template-columns:1fr; } }
.driver-chart-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:0; }
.driver-chart { min-width:0; background:var(--cream); box-shadow:var(--shadow); }
.driver-chart > header { padding:22px 24px 18px; border-bottom:1px solid var(--line); }
.driver-chart .eyebrow { margin-bottom:7px; font-size:9px; }
.bar-list { display:grid; gap:11px; padding:22px 24px 25px; }
.bar-list > div { display:grid; grid-template-columns:minmax(110px,1.1fr) minmax(100px,.8fr) 142px; align-items:center; gap:11px; }
.bar-list > div > span { overflow:hidden; color:var(--ink-soft); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.bar-list i { height:13px; overflow:hidden; background:var(--paper-deep); }
.bar-list i b { display:block; height:100%; min-width:3px; background:var(--red); }
.bar-list > div > strong { font:700 12px var(--body); text-align:right; font-variant-numeric:tabular-nums; }
.bar-list p { color:var(--ink-soft); font-size:12px; }
.driver-dashboard > .section-title { margin-top:0; }
.driver-standings-title { margin-top:70px !important; }
.driver-standings-table-wrap { margin-bottom:70px; background:var(--cream); box-shadow:var(--shadow); }
.driver-empty { margin-top:18px; }
.history-table a { font-weight: 700; text-decoration: none; }
.table-sort { display:inline-flex; align-items:center; gap:9px; margin:-8px -7px; padding:8px 7px; border:0; background:transparent; color:inherit; cursor:pointer; font:inherit; letter-spacing:inherit; text-transform:inherit; }
.table-sort:hover { color:var(--ink); }
.table-sort:focus-visible { outline:2px solid var(--green); outline-offset:1px; }
.sort-arrows { display:inline-flex; min-width:10px; flex-direction:column; align-items:center; gap:1px; color:var(--ink-soft); font-size:10px; line-height:.62; }
.sort-arrows i { opacity:.42; font-style:normal; }
th[aria-sort="ascending"] .sort-arrows i:first-child,
th[aria-sort="descending"] .sort-arrows i:last-child { color:var(--red); opacity:1; filter:drop-shadow(0 0 1px rgba(0,0,0,.28)); }

.records-hero { position: relative; overflow: hidden; padding: 80px 0 85px; background: var(--gold); color: var(--ink); }
.records-hero::after { content: "THR"; position: absolute; right: 4vw; top: -35px; color: rgba(0,0,0,.07); font: 800 240px/.8 var(--display); }
.records-hero .shell { position: relative; z-index: 1; }
.records-hero .eyebrow { color: var(--green, #3f4f2f); }
.records-hero h1 { margin: 0; font: 800 clamp(58px, 8vw, 98px)/.88 var(--display); letter-spacing: -.035em; text-transform: uppercase; }
.records-hero p { max-width: 650px; margin: 22px 0 0; font-size: 18px; }
.records-tabs { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); margin:18px 0 38px; background:var(--cream); box-shadow:var(--shadow); }
.records-tabs a { padding:18px 12px; border-right:1px solid var(--line); color:var(--ink); font-size:11px; font-weight:800; letter-spacing:.06em; text-align:center; text-decoration:none; text-transform:uppercase; }
.records-tabs a:last-child { border-right:0; }
.records-tabs a:hover { background:#fff; }
.records-tabs a.is-active { background:var(--ink); color:#fff; }
.records-method-note { max-width:390px; margin:0 0 7px; color:var(--ink-soft); font-size:11px; text-align:right; }
.records-page { width:min(100% - 40px,1480px); }
.record-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.record-grid--race { grid-template-columns:repeat(5,minmax(0,1fr)); }
.record-card { min-width: 0; padding: 25px; background: var(--cream); border-top: 5px solid var(--red); box-shadow: var(--shadow); }
.record-card__label { display: block; min-height: 2.5em; color: var(--ink-soft); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.record-card__number { display: block; margin-top: 14px; color: var(--red); font: 800 58px/.8 var(--display); }
.record-card__leader { display: block; margin-top: 13px; font: 700 24px/1 var(--display); text-decoration: none; }
.record-card__unit { color: var(--ink-soft); font-size: 10px; text-transform: uppercase; }
.record-card ol { margin: 24px 0 0; padding: 15px 0 0 22px; border-top: 1px solid var(--line); }
.record-card li { padding: 4px 0 4px 3px; color: var(--ink-soft); font-size: 11px; }
.record-card li a { color: var(--ink); text-decoration: none; }
.record-card li span { float: right; color: var(--red); font-weight: 800; }
.records-clean-title { align-items: end; margin-top: 76px; }
.records-clean-title p { max-width: 430px; margin: 0 0 8px; color: var(--ink-soft); font-size: 12px; text-align: right; }
.record-card--clean { border-top-color: var(--gold); }
.record-card--clean .record-card__number { color: var(--green); }
.records-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; margin-top: 76px; }
.record-list-panel { min-width: 0; }
.records-columns > section > .section-title { min-height: 96px; align-items: flex-end; }
.records-columns > section > .section-title h2 { font-size:clamp(30px,3.2vw,42px); white-space:nowrap; }
.fact-list { background: var(--cream); border-top: 1px solid var(--line); }
.fact-list a { display: grid; grid-template-columns: 105px 1fr; align-items: center; gap: 16px; min-height: 67px; padding: 12px 19px; border-bottom: 1px solid var(--line); text-decoration: none; }
.fact-list a:hover { background: #fff; }
.fact-list > a > span:last-child { display: grid; }
.fact-list strong { font: 700 18px var(--display); }
.fact-list small { color: var(--ink-soft); font-size: 10px; }
.fact-rank { color: var(--red); font: 800 23px var(--display); font-variant-numeric: tabular-nums; }
.records-columns--tables { align-items: start; }
.records-columns--tables > section { min-width: 0; }
.records-columns--tables .results-table tbody tr { height: 67px; }
.records-notice { margin-bottom: 26px; padding: 14px 18px; background: #fff4cf; border-left: 5px solid var(--gold); color: var(--ink-soft); font-size: 13px; }
.records-notice--info { background:var(--paper-deep); border-left-color:var(--green); }
.archive-stats-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.archive-stats-grid article { min-height:150px; display:grid; align-content:center; gap:10px; padding:24px; border-top:5px solid var(--gold); background:var(--cream); box-shadow:var(--shadow); }
.archive-stats-grid span { color:var(--ink-soft); font-size:10px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.archive-stats-grid strong { color:var(--green); font:800 clamp(34px,4vw,54px)/.9 var(--display); font-variant-numeric:tabular-nums; }
.archive-stats-grid strong small { font:800 12px var(--body); letter-spacing:.05em; text-transform:uppercase; }
.records-distance-columns { margin-top:0; }
.records-distance-table td:nth-child(3),.records-distance-table td:nth-child(4) { font-variant-numeric:tabular-nums; text-align:right; }
.participation-panel { overflow:hidden; background:var(--cream); box-shadow:var(--shadow); }
.participation-panel__toolbar { display:flex; align-items:end; justify-content:space-between; gap:24px; padding:18px 22px; border-bottom:1px solid var(--line); background:var(--paper-deep); }
.participation-panel__toolbar label { display:grid; flex:1 1 420px; gap:5px; min-width:min(420px,55%); color:var(--ink-soft); font-size:9px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.participation-panel__toolbar select { min-height:44px; padding:0 38px 0 12px; border:1px solid rgba(23,32,40,.25); background:var(--cream); color:var(--ink); font:13px var(--body); }
.participation-order { flex:0 0 auto; align-self:end; margin:0; }
.participation-panel__toolbar > strong { color:var(--green); font:800 16px var(--display); text-align:right; text-transform:uppercase; }
.participation-chart { position:relative; min-width:0; overflow-x:auto; overflow-y:hidden; background:var(--cream); scrollbar-color:var(--gold) var(--paper-deep); }
.participation-chart canvas { display:block; }
.participation-chart__tooltip { position:absolute; }
.participation-panel > .chronicle-note { margin:0; padding:14px 22px; border-top:1px solid var(--line); }

.empty-state { padding: 70px; text-align: center; background: var(--cream); border: 1px solid var(--line); }
.empty-state h1, .empty-state h2 { margin: 5px 0 15px; font: 800 clamp(42px, 6vw, 68px)/.95 var(--display); text-transform: uppercase; }
.empty-state p { max-width: 620px; margin: 0 auto; color: var(--ink-soft); }

.context-help-button{position:fixed;right:22px;bottom:22px;z-index:40;display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 17px;border:0;background:var(--green,#3f4f2f);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.28);cursor:pointer;font:800 11px var(--body);letter-spacing:.07em;text-transform:uppercase;transition:transform .18s,background .18s}.context-help-button span{display:grid;width:23px;height:23px;place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:50%;font-size:14px}.context-help-button:hover{background:var(--red);transform:translateY(-2px)}.context-help-button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.context-help-dialog{width:min(92vw,570px);padding:34px;border:0;border-top:6px solid var(--gold);background:var(--cream);color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.42)}.context-help-dialog::backdrop{background:rgba(10,14,11,.72);backdrop-filter:blur(3px)}.context-help-dialog__close{position:absolute;top:13px;right:15px;display:grid;width:38px;height:38px;place-items:center;padding:0;border:0;border-radius:50%;background:var(--ink);color:#fff;cursor:pointer;font-size:0}.context-help-dialog__close::before,.context-help-dialog__close::after{content:"";position:absolute;width:14px;height:2px;border-radius:2px;background:#fff}.context-help-dialog__close::before{transform:rotate(45deg)}.context-help-dialog__close::after{transform:rotate(-45deg)}.context-help-dialog h2{margin:0 42px 12px 0;font:800 36px/1 var(--display-heavy);text-transform:uppercase}.context-help-dialog>p{color:var(--ink-soft);line-height:1.6}.context-help-dialog ul{display:grid;gap:10px;margin:22px 0;padding-left:20px;line-height:1.5}.context-help-dialog .button{margin-top:4px}.help-heading{max-width:850px}.help-quick-start{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 0 54px;background:var(--line);box-shadow:var(--shadow)}.help-quick-start>div{display:grid;grid-template-columns:48px 1fr;gap:5px 16px;align-content:start;min-height:165px;padding:26px;background:var(--cream)}.help-quick-start span{grid-row:1/3;display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:var(--gold);font:800 18px var(--display)}.help-quick-start strong{font:800 18px var(--display)}.help-quick-start p{grid-column:2;margin:0;color:var(--ink-soft);font-size:12px;line-height:1.55}.help-section{margin:0 0 58px;scroll-margin-top:30px}.help-section>header{margin-bottom:22px}.help-section h2{margin:0;font:800 clamp(34px,5vw,58px)/.95 var(--display-heavy);text-transform:uppercase}.help-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.help-topic-card{position:relative;scroll-margin-top:28px;padding:30px;background:var(--cream);border-top:5px solid var(--green,#3f4f2f);box-shadow:var(--shadow)}.help-topic-card:target{border-top-color:var(--red);box-shadow:0 0 0 4px rgba(178,139,67,.3),var(--shadow)}.help-topic-card__number{position:absolute;top:22px;right:24px;color:rgba(63,79,47,.18);font:800 38px/1 var(--display-heavy)}.help-topic-card h3{max-width:75%;margin:0 0 10px;font:800 26px/1 var(--display);text-transform:uppercase}.help-topic-card p{margin:0;color:var(--ink-soft);line-height:1.55}.help-topic-card ul{display:grid;gap:8px;margin:20px 0 0;padding-left:18px;font-size:12px;line-height:1.5}.help-glossary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;background:var(--line)}.help-glossary dl>div{padding:24px;background:var(--cream)}.help-glossary dt{font:800 20px var(--display);text-transform:uppercase}.help-glossary dd{margin:7px 0 0;color:var(--ink-soft);font-size:12px;line-height:1.55}.help-faq details{border-bottom:1px solid var(--line);background:var(--cream)}.help-faq details:first-of-type{border-top:1px solid var(--line)}.help-faq summary{padding:20px 52px 20px 22px;cursor:pointer;font-weight:800;list-style-position:outside}.help-faq details p{max-width:820px;margin:0;padding:0 22px 22px;color:var(--ink-soft);line-height:1.65}

.help-topic-card__link { display:inline-flex; align-items:center; gap:8px; margin-top:22px; color:var(--green,#3f4f2f); font-size:11px; font-weight:900; letter-spacing:.06em; text-decoration:none; text-transform:uppercase; }
.help-topic-card__link span { font-size:17px; transition:transform .18s; }
.help-topic-card__link:hover,.help-topic-card__link:focus-visible { color:var(--red); }
.help-topic-card__link:hover span,.help-topic-card__link:focus-visible span { transform:translateX(3px); }
.site-footer { padding: 54px 0 20px; background: #10171c; color: #fff; }
.site-footer > .shell:first-child { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 50px; }
.site-footer > .shell > div { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.site-footer p { color: rgba(255,255,255,.55); font: 700 22px/1.1 var(--display); text-transform: uppercase; }
.site-footer strong { margin-bottom: 7px; color: #edb865; font: 700 12px var(--body); text-transform: uppercase; letter-spacing: .12em; }
.site-footer a { color: rgba(255,255,255,.65); font-size: 13px; text-decoration: none; }
.footer-motorsport-mark { display:grid; place-items:center; margin-top:36px; }
.footer-motorsport-mark span { display:block; width:min(440px,72vw); aspect-ratio:4561 / 1108; background:#e7b95b; -webkit-mask:url("brand/thr-lotus-gold.png") center/contain no-repeat; mask:url("brand/thr-lotus-gold.png") center/contain no-repeat; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 42px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.35); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.footer-bottom a { color:inherit; font-size:inherit; text-decoration:none; }
.footer-bottom a:hover { color:#edb865; }

@media (max-width: 1100px) {
    .nav-toggle { display:block; }
    .main-nav { display:none; position:absolute; top:82px; right:0; left:0; padding:14px 20px 22px; background:var(--cream); border-bottom:1px solid var(--line); box-shadow:var(--shadow); }
    .main-nav.is-open { display:grid; }
    .main-nav a { padding:12px 5px; }
    .main-nav a::after { bottom:5px; width:40px; }
    .nav-support { display:grid; grid-template-columns:1fr 1fr; margin:8px 0 0; }
    .main-nav .support-button { min-height:42px; padding:0 14px; }
    .stats-grid { grid-template-columns:repeat(3,1fr); }
    .record-grid--race { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .driver-filters { grid-template-columns:1fr 1fr 1fr auto auto; }
    .driver-race-range { grid-column:1 / -1; justify-self:stretch; min-width:0; }
    .season-statistics__overview { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .car-catalog-grid,.track-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .championship-hero__layout--with-map { grid-template-columns:minmax(150px,190px) minmax(0,1fr); }
    .championship-hero__layout--with-map .event-hero-trackmap { grid-column:1 / -1; width:min(680px,100%); margin-inline:auto; }
}

@media (max-width: 850px) {
    .nav-toggle { display: block; }
    .main-nav { display: none; position: absolute; top: 82px; right: 0; left: 0; padding: 14px 20px 22px; background: var(--cream); border-bottom: 1px solid var(--line); box-shadow: var(--shadow); }
    .main-nav.is-open { display: grid; }
    .main-nav a { padding: 12px 5px; }
    .main-nav a::after { bottom: 5px; width: 40px; }
    .nav-support { display:grid; grid-template-columns:1fr 1fr; margin:8px 0 0; }
    .main-nav .support-button { min-height:42px; padding:0 14px; }
    .home-hero__content { min-height: auto; grid-template-columns: 1fr; padding-block: 80px 100px; }
    .champions-hero__grid { min-height:440px; grid-template-columns:1fr; padding-block:62px 78px; }
    .champions-badge { display:none; }
    .champions-stats .shell { grid-template-columns:repeat(2,1fr); }
    .champions-stats .shell > div:nth-child(3) { border-top:1px solid rgba(255,255,255,.18); }
    .champions-stats .shell > div:nth-child(4) { border-top:1px solid rgba(255,255,255,.18); }
    .champions-stats .shell > div:nth-child(5) { border-top:1px solid rgba(255,255,255,.18); }
    .champions-section__heading { display:grid; gap:14px; }
    .champions-section__heading p { text-align:left; }
    .scoring-key { grid-template-columns:1fr; }
    .leader-podium { grid-template-columns:1fr; }
    .leader-podium__card { min-height:185px; }
    .hero-roundel { display: none; }
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
    .feature-card--1, .feature-card--2, .feature-card--3, .feature-card--4 { grid-column: span 12; min-height: 220px; }
    .home-columns { grid-template-columns: 1fr; }
    .driver-grid { grid-template-columns: 1fr; }
    .page-heading--drivers { grid-template-columns:1fr; gap:28px; }
    .driver-map-card { min-height:230px; }
    .driver-world-map--compact { height:175px; }
    .record-grid { grid-template-columns: repeat(2, 1fr); }
    .help-quick-start,.help-topic-grid,.help-glossary dl{grid-template-columns:1fr}.context-help-button{right:14px;bottom:14px}
    .record-grid--race { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .archive-stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .participation-panel__toolbar { align-items:stretch; display:grid; }
    .participation-panel__toolbar label { min-width:0; max-width:none; }
    .participation-order { justify-self:start; }
    .participation-panel__toolbar > strong { text-align:left; }
    .records-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .records-tabs a { border-bottom:1px solid var(--line); }
    .records-method-note { text-align:left; }
    .records-columns { grid-template-columns: 1fr; }
    .records-columns > section > .section-title { min-height:0; }
    .records-columns > section > .section-title h2 { white-space:normal; }
    .driver-hero__grid { grid-template-columns: 120px 1fr; gap: 25px; }
    .driver-monogram { width: 115px; font-size: 64px; }
    .driver-summary { grid-template-columns: repeat(2, 1fr); }
    .driver-filters { grid-template-columns:1fr 1fr auto; }
    .race-type-filter { margin-top:0; }
    .driver-race-range { grid-column:1 / -1; }
    .driver-achievements { grid-template-columns:1fr; }
    .incident-panel__header { display: grid; }
    .incident-summary { grid-template-columns: repeat(3, 1fr); }
    .incident-summary span { text-align: left; }
    .incident-layout { grid-template-columns: 1fr; height:auto; min-height:0; }
    .race-control-list > li { grid-template-columns:minmax(130px,.55fr) minmax(260px,1.5fr); }
    .incident-map-card { display:block; border-right: 0; border-bottom: 1px solid var(--line); }
    .incident-achievement-panel .achievement-metrics { grid-template-columns: repeat(3, 1fr); }
    .driver-name-history > header { display:grid; }
    .driver-name-history > header p { text-align:left; }
    .track-catalog-grid { grid-template-columns:1fr; }
    .track-catalog-card > .track-archive-map { height:min(70vw,390px); min-height:260px; }
    .track-catalog-card__body h2 { min-height:0; }
    .track-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .track-detail-heading { display:grid; }
    .track-archive-map--detail { min-height:390px; }
    .car-detail-stats { grid-template-columns:repeat(5,minmax(0,1fr)); }
    .car-detail-hero { grid-template-columns:1fr; gap:0; }
    .car-detail-hero header { padding:30px; }
    .track-detail-hero { grid-template-columns:1fr; }
    .track-detail-hero header { border-top:1px solid var(--line); border-left:0; }
    .track-detail-hero .track-archive-map--detail { height:min(72vw,560px); }
    .track-detail-page .car-detail-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .track-detail-facts { grid-template-columns:1fr; }
    .track-detail-facts.car-detail-facts { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .driver-chart-grid { grid-template-columns:1fr; }
    .chronicle-panel { width:100%; min-width:0; max-width:100%; margin-left:0; transform:none; }
    .chronicle-table { min-width:920px; }
    .points-progression__layout { grid-template-columns:1fr; grid-template-areas:"plot" "legend"; }
    .points-progression__plot { border-left:0; border-bottom:1px solid var(--line); }
    .points-progression__sidebar { max-height:none; }
    .points-progression__legend { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:260px; }
    .race-position-chart__layout { grid-template-columns:1fr; grid-template-areas:"plot" "legend"; }
    .race-position-chart__plot { border-left:0; border-bottom:1px solid var(--line); }
    .race-position-chart__legend { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:260px; }
    .championship-hero__layout { grid-template-columns:minmax(150px,190px) minmax(0,1fr); gap:26px; }
    .championship-poster--hero { height:260px; }
}

@media (max-width: 600px) {
    .shell { width: min(100% - 26px, 1180px); }
    .shell.race-weekend { width:calc(100% - 26px); }
    .driver-timeline-panel { width:calc(100vw - 26px); }
    .brand small { display: none; }
    .home-hero h1 { font-size: 65px; }
    .catalog-toolbar { display:grid; margin-top:0; }
    .catalog-toolbar label { width:100%; }
    .catalog-toolbar > strong { padding:0; }
    .car-catalog-grid { grid-template-columns:1fr; }
    .car-detail-hero__image { min-height:0; }
    .car-detail-metadata { padding:18px; }
    .track-detail-facts.car-detail-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .car-detail-metadata__footer { display:grid; gap:16px; }
    .car-skin-gallery__stage { min-height:0; }
    .track-archive-map { min-height:230px; }
    .track-archive-map--detail { min-height:310px; }
    .track-archive-corner { padding:2px 4px; font-size:7px; }
    .track-archive-corner b { display:none; }
    .track-stat-grid { grid-template-columns:1fr 1fr; }
    .car-detail-stats { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(5,minmax(88px,auto)); }
    .track-fastest-lap { grid-template-columns:1fr; }
    .track-fastest-lap > strong { grid-row:auto; grid-column:auto; }
    .champions-hero h1 { font-size:52px; }
    .champions-hero p { font-size:16px; }
    .champions-stats .shell > div { padding:16px 18px; }
    .champions-stats strong { font-size:31px; }
    .champions-content { padding-block:60px 80px; }
    .champions-section { margin-top:72px; }
    .champions-section__heading h2 { font-size:40px; }
    .scoring-key > div { grid-template-columns:1fr repeat(3,.72fr); padding-inline:14px; }
    .scoring-key > div > strong { font-size:15px; }
    .stats-grid strong { font-size: 32px; }
    .stats-grid > div { padding: 18px; }
    .page { padding-block: 55px 75px; }
    .archive-card { grid-template-columns:65px minmax(0,1fr) 20px; gap:12px; padding:16px 15px; }
    .championship-poster--card { grid-column:2; width:120px; height:100px; margin-top:8px; }
    .championship-poster-placeholder { display:none; }
    .archive-card > .arrow { grid-column:3; grid-row:1 / span 2; }
    .championship-hero__layout { grid-template-columns:1fr; gap:24px; width:min(100% - 26px,1180px); }
    .championship-hero__layout--with-map .event-hero-trackmap { grid-column:auto; padding:8px; }
    .championship-poster--hero { width:min(210px,70vw); height:250px; margin:0; }
    .event-hero-navigation { top:auto; bottom:8px; width:58px; height:66px; transform:none; }
    .event-hero-navigation--previous { left:14px; }
    .event-hero-navigation--next { right:14px; }
    .event-hero-navigation::before { width:24px; height:24px; border-width:0 0 8px 8px; }
    .event-hero-navigation:hover,.event-hero-navigation:focus-visible { transform:scale(1.08); }
    .archive-card__date strong { font-size: 25px; }
    .event-list a,.event-list>li>div { grid-template-columns: 45px 1fr 20px; padding: 18px 4px; }
    .race-tabs__tab { min-height:48px; padding:0 16px; font-size:10px; }
    .race-report__header { padding:34px 20px 38px; }
    .race-report__header h2 { margin-block:14px 18px; font-size:36px; line-height:1.02; }
    .race-report__header p { font-size:16px; line-height:1.6; }
    .race-report__body { padding:36px 22px 46px; font-size:17px; line-height:1.72; }
    .race-report__body section + section { margin-top:38px; }
    .race-report__body h3 { font-size:23px; }
    .points-progression__toolbar { display:grid; padding-inline:18px; }
    .championship-tab-panel[data-championship-tab-panel="progression"] { width:calc(100vw - 26px); }
    .championship-tab-panel[data-championship-tab-panel="statistics"] { width:calc(100vw - 26px); }
    .season-statistics__overview { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .season-statistics__records { grid-template-columns:1fr; }
    .season-statistics__header,.season-statistics__section { padding-inline:20px; }
    .points-progression-title { display:grid; }
    .points-progression-title p { text-align:left; }
    .points-progression__actions { display:grid; grid-template-columns:1fr 1fr; }
    .points-progression__legend { grid-template-columns:1fr; }
    .race-position-panel > header { display:grid; padding:22px; }
    .race-position-class { min-width:0; }
    .race-position-chart__legend { grid-template-columns:1fr; }
    .event-date { display: none; }
    .results-panel > header { display: grid; padding: 22px; }
    .recent-list > a { grid-template-columns: 70px 1fr; }
    .recent-list .winner { grid-column: 2; text-align: left; }
    .driver-card { grid-template-columns: 48px 1fr 52px; }
    .driver-map-card { min-height:185px; padding:12px 13px 9px; }
    .driver-world-map--compact { height:135px; }
    .driver-map-card__heading small { display:none; }
    .driver-map-dialog { width:100vw; height:100dvh; padding:24px 14px 18px; }
    .driver-map-dialog__heading { padding-right:48px; }
    .driver-map-dialog__heading p { font-size:12px; }
    .driver-world-map--large { height:calc(100% - 140px); min-height:250px; }
    .driver-map-controls { right:14px; bottom:16px; }
    .driver-sort { display: grid; justify-content: stretch; margin-top: -16px; }
    .driver-sort label { min-width: 0; }
    .driver-sort .button { width: 100%; }
    .record-grid { grid-template-columns: 1fr; }
    .record-grid--race { grid-template-columns:1fr; }
    .archive-stats-grid { grid-template-columns:1fr; }
    .driver-card .driver-stat:last-child { display: none; }
    .driver-hero__grid { grid-template-columns: 1fr; }
    .driver-monogram { display: none; }
    .driver-summary div { padding: 18px; }
    .driver-dashboard { padding-block:38px 75px; }
    .driver-filters { grid-template-columns:1fr; }
    .race-type-filter { display:grid; align-items:stretch; }
    .race-type-filter label { max-width:none; }
    .driver-race-range { grid-column:auto; grid-template-columns:1fr; text-align:left; }
    .driver-race-range > span { border-top:1px solid rgba(0,0,0,.12); border-left:0; }
    .driver-race-range > span:first-child { border-top:0; }
    .incident-panel__header { padding: 22px; }
    .incident-summary { grid-template-columns: 1fr; }
    .incident-map-card { padding: 14px; }
    .incident-map { min-height: 245px; height:auto; aspect-ratio:initial !important; }
    .incident-map-legend small { width: 100%; margin-left: 0; }
    .incident-timeline li { grid-template-columns: 31px minmax(105px, 1fr) 105px; gap: 9px; padding: 12px 14px; }
    .race-control-panel__header { align-items:start; padding:22px 20px; }
    .race-control-note { padding:14px 20px; }
    .race-control-list > li { grid-template-columns:1fr; gap:13px; padding:19px 20px; }
    .incident-impact { grid-column: 2 / -1; justify-content: start; }
    .incident-achievement-panel > header { display: grid; }
    .incident-achievement-panel > header p { text-align: left; }
    .incident-achievement-panel .achievement-metrics { grid-template-columns: repeat(2, 1fr); }
    .records-clean-title { display: grid; }
    .records-clean-title p { text-align: left; }
    .driver-name-history li { grid-template-columns:1fr; gap:5px; padding-left:38px; }
    .bar-list { padding-inline:16px; }
    .bar-list > div { grid-template-columns:minmax(94px,1fr) minmax(54px,.65fr) 126px; gap:8px; }
    .site-footer > .shell:first-child { grid-template-columns: 1fr 1fr; }
    .site-footer > .shell:first-child > div:first-child { grid-column: 1 / -1; }
    .footer-bottom { display: grid; }
    .footer-motorsport-mark { margin-top:30px; }
    .empty-state { padding: 45px 20px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}

.driver-account-link{display:inline-flex!important;align-items:center;gap:7px}.driver-account-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}.driver-area{max-width:1120px}.driver-login-panel{max-width:620px;margin:6vh auto;padding:48px;background:var(--cream);border:1px solid rgba(0,0,0,.12);border-radius:4px}.driver-login-panel h1,.driver-area-heading h1{margin:.2em 0}.driver-login-form,.driver-area-card form{display:grid;gap:18px}.driver-login-form label,.driver-area-card label{display:grid;gap:7px;font-weight:700}.driver-login-form input,.driver-area-card input,.driver-area-card select,.driver-area-card textarea{width:100%;padding:12px;border:1px solid rgba(0,0,0,.22);border-radius:3px;background:#fff;font:inherit}.driver-area-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.driver-area-card{padding:30px;background:var(--cream);border:1px solid rgba(0,0,0,.12);box-shadow:0 8px 30px rgba(0,0,0,.05)}.driver-area-card+*{margin-top:24px}.driver-area-card header{margin-bottom:22px}.driver-area-card header h2{margin:.2em 0}.driver-area-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.driver-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.driver-photo-field{display:flex;align-items:center;gap:20px}.driver-photo-field img{width:100px;height:100px;object-fit:cover;border-radius:50%}.wysiwyg-toolbar{display:flex;gap:5px;padding:7px;background:#ece8dc;border:1px solid rgba(0,0,0,.18);border-bottom:0}.wysiwyg-toolbar button{min-width:36px;padding:7px 10px;background:#fff;border:1px solid rgba(0,0,0,.15);cursor:pointer}.wysiwyg-editor{min-height:180px;padding:15px;border:1px solid rgba(0,0,0,.22);background:#fff;overflow:auto}.driver-race-selectors{display:grid;grid-template-columns:1fr 1fr;gap:14px}.driver-interview-question{padding:18px;border-left:4px solid #b28b43;background:#f3eddf;font:700 18px/1.45 Georgia,serif}.driver-notice{padding:13px 16px;border-radius:3px}.driver-notice--success{background:#e5f1df;color:#24451c}.driver-notice--error{background:#f6dddd;color:#721f1f}.driver-profile-photo{width:150px;height:150px;object-fit:cover;border-radius:50%;border:5px solid rgba(255,255,255,.5)}.driver-story{display:grid;gap:28px;padding-block:35px}.driver-bio-card{display:grid;grid-template-columns:2fr 1fr;gap:40px;padding:32px;background:var(--cream);border:1px solid rgba(0,0,0,.1)}.driver-bio-card dl{margin:0}.driver-bio-card dl div{padding:12px 0;border-bottom:1px solid rgba(0,0,0,.1)}.driver-bio-card dt{font-size:11px;text-transform:uppercase;letter-spacing:.1em}.driver-bio-card dd{margin:4px 0 0}.driver-bio-copy{line-height:1.7}.driver-gallery>div{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.driver-gallery figure{margin:0;background:var(--cream)}.driver-gallery img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.driver-gallery figcaption{display:grid;gap:3px;padding:13px}.driver-gallery figcaption span,.driver-gallery figcaption small{font-size:12px;color:#59605e}.driver-reflections{display:grid;gap:16px}.driver-reflections article{padding:26px;background:var(--cream);border-left:4px solid #b28b43}.driver-reflections h3{margin:8px 0}.driver-reflections blockquote{margin:15px 0;padding-left:18px;border-left:2px solid #ccc;font:italic 18px/1.55 Georgia,serif}
.driver-own-media{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:22px}.driver-own-media>div{display:grid;gap:5px;font-size:11px}.driver-own-media img{width:100%;aspect-ratio:1;object-fit:cover}.driver-own-media form{display:block}.driver-own-media button{width:100%;padding:5px}
.steam-login-button{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:28px;padding:15px 20px;border-radius:3px;background:linear-gradient(90deg,#1b2838,#2a475e);color:#fff!important;font-weight:800;text-decoration:none}.steam-login-button:hover{background:linear-gradient(90deg,#22364d,#316282)}.steam-login-button svg{width:27px;height:27px;fill:#fff}.steam-login-note{display:block;margin-top:10px;text-align:center;color:#657079}
.race-images-panel,.race-interviews-panel{padding:34px;background:#fff}.race-images-panel>header,.race-interviews-panel>header{margin-bottom:24px}.race-images-panel h2,.race-interviews-panel h2{margin:.35em 0 0}.race-image-masonry{columns:3 280px;column-gap:16px}.race-image-tile{display:inline-block;width:100%;margin:0 0 16px;padding:0;border:0;background:#171b18;color:#fff;text-align:left;cursor:zoom-in;break-inside:avoid;box-shadow:0 5px 18px rgba(0,0,0,.13)}.race-image-tile img{display:block;width:100%;height:auto}.race-image-tile span{display:grid;gap:3px;padding:12px 14px}.race-image-tile small{color:rgba(255,255,255,.72)}.race-image-lightbox{width:96vw;max-width:1600px;height:94vh;padding:44px 20px 20px;border:0;background:#111;color:#fff;overflow:hidden}.race-image-lightbox::backdrop{background:rgba(0,0,0,.88)}.race-image-lightbox>div{display:flex;height:100%;flex-direction:column;align-items:center;text-align:center}.race-image-lightbox img{display:block;max-width:100%;max-height:calc(100% - 82px);width:auto;height:auto;object-fit:contain}.race-image-lightbox p{margin:10px auto 6px}.race-image-download{display:inline-flex;padding:8px 14px;background:#fff;color:#111!important;font-weight:800;text-decoration:none}.race-interviews-list{display:grid;gap:18px}.race-interviews-list article{padding:26px;border-left:4px solid #b28b43;background:#f5f0e5}.race-interviews-list article>a{font-weight:800}.race-interviews-list h3{margin:10px 0}.race-interviews-list blockquote{margin:16px 0;padding-left:18px;border-left:2px solid #c5bca9;font:italic 18px/1.6 Georgia,serif}
.profile-crop-dialog{width:min(520px,calc(100vw - 30px));padding:0;border:1px solid rgba(0,0,0,.2);border-radius:4px;background:var(--cream);color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.45)}.profile-crop-dialog::backdrop{background:rgba(10,14,12,.78)}.profile-crop-dialog form{display:grid;gap:15px;padding:24px}.profile-crop-dialog header{display:flex;align-items:start;justify-content:space-between;margin:0}.profile-crop-dialog h3{margin:4px 0 0}.profile-crop-close{border:0;background:transparent;font-size:30px;cursor:pointer}.profile-crop-dialog canvas{display:block;width:min(100%,420px);height:auto;margin:auto;background:#151915;cursor:grab;touch-action:none}.profile-crop-dialog canvas:active{cursor:grabbing}.profile-crop-dialog label{gap:4px}.profile-crop-dialog input[type=range]{padding:0;border:0}.profile-crop-dialog p{margin:0;color:#59605e;font-size:12px}.profile-crop-actions{display:flex;justify-content:flex-end;gap:10px}
@media(max-width:760px){.driver-area-heading,.driver-photo-field{align-items:stretch;flex-direction:column}.driver-area-columns,.driver-profile-grid,.driver-race-selectors,.driver-bio-card{grid-template-columns:1fr}.driver-gallery>div{grid-template-columns:1fr}.driver-account-link span{display:inline}.driver-profile-photo{width:110px;height:110px}}
.driver-area-columns>.driver-area-card{height:100%;margin-top:0}.driver-area-card textarea{font-weight:400}.driver-reflections blockquote,.race-interviews-list blockquote{font-weight:400}

.home-hero h1,
.champions-hero h1,
.champions-section__heading h2,
.page-heading h1,
.section-title h2,
.car-detail-hero h1,
.track-detail-hero h1,
.championship-hero h1,
.event-hero h1,
.driver-hero h1,
.driver-map-dialog__heading h2,
.driver-tab-heading h2,
.records-hero h1,
.empty-state h1,
.empty-state h2,
.driver-login-panel h1,
.driver-area-heading h1 {
    font-family: var(--display-heavy);
}
.driver-saved-content{margin-top:28px}.driver-saved-content>[data-content-placeholder]{padding:16px;background:#f3f0e8;color:#65655f}.driver-content-filter{margin-top:28px;padding-top:24px;border-top:1px solid rgba(0,0,0,.14)}.driver-content-filter h3{margin:0 0 14px}.driver-saved-media,.driver-saved-reflection,.driver-saved-broadcast{padding:18px;background:#f5f2ea;border:1px solid rgba(0,0,0,.1)}.driver-saved-media+article,.driver-saved-broadcast+article{margin-top:14px}.driver-saved-media>img{display:block;width:100%;max-height:300px;margin-bottom:16px;object-fit:contain;background:#171b18}.driver-saved-broadcast>strong,.driver-saved-broadcast>small{display:block;overflow-wrap:anywhere}.driver-saved-broadcast>small{margin:5px 0 14px;color:var(--ink-soft)}.driver-saved-media>form+form,.driver-saved-reflection>form+form,.driver-saved-broadcast>form+form{margin-top:10px}.driver-delete-button{width:100%;border-color:#9d3a32!important;color:#842d27!important;background:#fff!important}
.race-image-masonry{display:block;column-count:3;column-width:auto;column-fill:balance}.race-image-masonry>.race-image-tile{display:block;break-inside:avoid;page-break-inside:avoid;-webkit-column-break-inside:avoid}@media(max-width:980px){.race-image-masonry{column-count:2}}@media(max-width:620px){.race-image-masonry{column-count:1}}
.race-video-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:22px}.race-video-list>.race-video-item{min-width:0;padding-top:0;border-top:0}.race-video-item h3{max-width:none}.race-video-item .race-video-frame{width:100%;max-width:none}@media(max-width:980px){.race-video-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.race-video-list{grid-template-columns:1fr}}
.driver-area .driver-area-card label{font-weight:800}.driver-area .driver-area-card label small,.driver-area .driver-area-card input,.driver-area .driver-area-card select,.driver-area .driver-area-card textarea{font-weight:400}.driver-area .driver-area-card input::file-selector-button{font-weight:400}
.driver-subtabs{margin:0 0 24px;box-shadow:none}.driver-subtabs .race-tabs__tab{min-height:48px}.driver-subtabs .race-tabs__tab:not(.is-active){background:#eee4d1}.driver-subtab-panel[hidden]{display:none!important}.driver-subtab-intro{margin:0 0 20px;color:var(--ink-soft)}.driver-subtab-panel .driver-content-filter{margin-top:0;padding-top:0;border-top:0}.driver-subtab-empty{padding:28px;background:#f3f0e8;border-left:4px solid var(--gold)}.driver-subtab-empty h3{margin:0 0 6px}.driver-subtab-empty p{margin:0;color:var(--ink-soft)}
.driver-area .race-tabs__tab,.driver-area .button{cursor:pointer;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.driver-area .race-tabs__tab:not(.is-active):hover{background:var(--paper-deep);color:var(--ink);box-shadow:none}.driver-area .race-tabs__tab.is-active:hover{background:var(--ink);color:#fff;box-shadow:none}.driver-area .button:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(0,0,0,.16)}.driver-area-heading .button:hover{background:var(--green,#3f4f2f);color:#fff}.driver-area .driver-delete-button:hover{background:#842d27!important;color:#fff!important}
.driver-gallery-image{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.driver-gallery-image img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.driver-selection-status{margin:0;padding:10px 12px;border-left:3px solid var(--gold);background:#f3eddf;color:#4f5753;font-size:12px}.driver-existing-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.driver-existing-images:empty{display:none}.driver-existing-images figure{min-width:0;margin:0;background:#eee6d7}.driver-existing-images img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.driver-existing-images figcaption{padding:9px 10px;font-size:10px;line-height:1.4}
.driver-race-selectors option[data-content-state="none"],.driver-race-selectors select[data-selected-content-state="none"]{background:#f5d8d4;color:#6e201b}.driver-race-selectors option[data-content-state="partial"],.driver-race-selectors select[data-selected-content-state="partial"]{background:#fff0bd;color:#69510e}.driver-race-selectors option[data-content-state="complete"],.driver-race-selectors select[data-selected-content-state="complete"]{background:#dcefd8;color:#234d20}
.driver-race-selectors select option{background:#fff;color:var(--ink)}
.driver-race-selectors option[data-has-media="1"],.driver-race-selectors select[data-selected-has-media="1"],.driver-race-selectors option[data-has-content="1"],.driver-race-selectors select[data-selected-has-content="1"]{background:#dcecf7;color:#173f5f}
.driver-bio-card dt{font-weight:800}
.driver-bio-card dd a{overflow-wrap:anywhere}
.race-image-lightbox{width:calc(100vw - 24px);max-width:none;height:calc(100vh - 24px);max-height:none;padding:18px 12px 8px}.race-image-lightbox>div{min-width:0}.race-image-lightbox img{max-height:calc(100% - 42px)}.race-image-lightbox .skin-lightbox__close{top:8px;right:10px}.race-image-lightbox .car-skin-gallery__arrow--previous{left:20px}.race-image-lightbox .car-skin-gallery__arrow--next{right:20px}.race-image-lightbox__caption{width:100%;min-height:38px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}.race-image-lightbox__caption p{grid-column:2;margin:8px 0 4px}.race-image-lightbox__caption small{grid-column:3;justify-self:end;margin-right:12px;color:rgba(255,255,255,.65)}.race-image-lightbox__caption i{color:var(--gold);font-style:normal}
.race-image-lightbox.car-skin-gallery-dialog{width:min(96vw,1500px);max-width:none;height:min(94vh,1000px);max-height:none;padding:48px 24px 18px;border:1px solid rgba(255,255,255,.25);background:#080b08}.race-image-lightbox>div{min-width:0}.race-image-lightbox.car-skin-gallery-dialog img{width:100%;height:calc(100% - 48px);max-height:none;object-fit:contain;background:#050705}.race-image-lightbox .car-skin-gallery__arrow--previous{left:12px}.race-image-lightbox .car-skin-gallery__arrow--next{right:12px}.race-image-lightbox__caption.car-skin-gallery-dialog__caption{width:100%}.race-image-lightbox__caption.car-skin-gallery-dialog__caption p{margin:8px 0 0;color:var(--gold)}

.archive-gallery-page{padding-bottom:70px}.archive-gallery-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;padding:22px;border-top:4px solid var(--gold);background:#b9a79b}.archive-gallery-filters label{display:grid;gap:7px}.archive-gallery-filters label span{font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.archive-gallery-filters select{width:100%;min-height:46px;padding:0 12px;border:1px solid rgba(0,0,0,.2);background:var(--cream);font:inherit}.archive-gallery-filter-actions{grid-column:1/-1;display:flex;gap:12px}.archive-gallery-summary{display:flex;justify-content:space-between;align-items:center;padding:24px 0 15px}.archive-gallery-summary strong{font-family:var(--display);font-size:22px;text-transform:uppercase}.archive-gallery-summary span{color:var(--ink-soft);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.archive-gallery-grid{column-gap:20px}.archive-gallery-card{display:inline-block;width:100%;margin:0 0 20px;background:var(--cream);break-inside:avoid;box-shadow:0 6px 22px rgba(0,0,0,.1)}.archive-gallery-card>.race-image-tile{margin:0;box-shadow:none}.archive-gallery-card__body{display:grid;gap:7px;padding:15px}.archive-gallery-card__body p{margin:0;font-weight:800}.archive-gallery-card__body small{color:var(--ink-soft);line-height:1.4}.archive-gallery-card__body a{color:inherit}.archive-gallery-card__driver{display:flex;align-items:center;gap:8px}.archive-gallery-card__driver img{width:28px;height:28px;border-radius:50%;object-fit:cover}.archive-gallery-card__driver a{font-weight:900}.archive-gallery-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:26px}.archive-gallery-pagination span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}@media(max-width:1050px){.archive-gallery-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.archive-gallery-filters{grid-template-columns:1fr}.archive-gallery-summary{align-items:flex-start;flex-direction:column;gap:4px}.archive-gallery-pagination{flex-wrap:wrap}}
.profile-crop-dialog__body{display:grid;gap:15px;padding:24px}
.multielo-intro{margin:0 0 24px;padding:20px 24px;background:#e9dfca;border-left:5px solid #83851c}.multielo-intro p{max-width:850px;margin:6px 0 0}.multielo-table-wrap{margin-bottom:48px}.multielo-table td:nth-child(3) strong{font-size:1.35rem;color:#3a4d2c}.multielo-table td small{display:block;margin-top:3px}.multielo-change{display:inline-flex;min-width:54px;justify-content:center;padding:5px 9px;border-radius:999px;background:#eee9de;font-weight:800}.multielo-change.is-positive{background:#e1f1df;color:#176c36}.multielo-change.is-negative{background:#f5dede;color:#a52323}
.driver-directory-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(100%,620px);margin:0 0 22px}.driver-directory-switch a{display:grid;place-items:center;min-height:54px;padding:12px 22px;border:2px solid var(--green);background:var(--cream);color:var(--green);font:800 12px var(--body);letter-spacing:.055em;text-align:center;text-decoration:none;text-transform:uppercase;box-shadow:0 5px 12px rgba(35,48,27,.12);transition:background .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s}.driver-directory-switch a:hover,.driver-directory-switch a:focus-visible{background:var(--green);color:#fff;transform:translateY(-2px);box-shadow:0 8px 16px rgba(35,48,27,.2)}.driver-directory-switch a.is-active{border-color:var(--red);background:var(--red);color:#fff;box-shadow:0 7px 16px rgba(143,34,29,.23)}.driver-directory-switch a.is-active:hover,.driver-directory-switch a.is-active:focus-visible{background:#bd352d}.driver-directory-switch+.catalog-toolbar{margin-top:0}@media(max-width:560px){.driver-directory-switch{grid-template-columns:1fr;gap:7px}.driver-directory-switch a{min-height:48px;padding-inline:10px}}
.performance-rating-filters{display:grid;grid-template-columns:minmax(190px,.65fr) minmax(260px,1fr) auto auto;align-items:end;gap:12px;margin:0 0 14px;padding:18px 20px;background:#bba999;border-top:4px solid var(--gold)}.performance-rating-filters label{display:grid;gap:6px}.performance-rating-filters label span{font:800 10px var(--display);letter-spacing:.08em;text-transform:uppercase}.performance-rating-filters input,.performance-rating-filters select{min-height:44px;padding:9px 12px;border:1px solid rgba(0,0,0,.22);background:#fff}.performance-rating-context{margin:0 0 12px;color:var(--ink-soft)}.multielo-provisional-divider th{padding:14px 16px!important;background:#ddd2bf!important;color:var(--ink)!important;text-align:left!important;font-size:11px!important;letter-spacing:.06em!important}@media(max-width:760px){.performance-rating-filters{grid-template-columns:1fr}.performance-rating-filters .button{width:100%}.multielo-table{min-width:920px}}
.performance-rating-evolution{position:relative;margin:0 0 28px;background:var(--cream);box-shadow:var(--shadow)}.performance-rating-evolution>header{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:22px 24px;border-top:4px solid #83851c;border-bottom:1px solid var(--line)}.performance-rating-evolution h2{margin:6px 0 4px;font:700 27px/1 var(--display);text-transform:uppercase}.performance-rating-evolution header p{margin:0;color:var(--ink-soft);font-size:11px}.performance-rating-evolution__base{font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.performance-rating-evolution__legend{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.performance-rating-evolution__driver{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:42px;padding:8px 10px;border:0;background:#f5efe3;color:var(--ink);cursor:pointer;text-align:left}.performance-rating-evolution__driver i{width:11px;height:4px;background:var(--rating-line)}.performance-rating-evolution__driver span{overflow:hidden;font-size:10px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.performance-rating-evolution__driver b{font-size:10px}.performance-rating-evolution__driver:not(.is-active){opacity:.38}.performance-rating-evolution__stage{position:relative;overflow-x:auto;padding:14px 12px 8px}.performance-rating-evolution svg{display:block;width:100%;min-width:720px;height:auto}.performance-rating-evolution svg text{fill:var(--ink-soft);font:10px var(--body)}.performance-rating-evolution svg .is-grid{stroke:rgba(0,0,0,.12);stroke-width:1}.performance-rating-evolution svg .is-base{stroke:var(--ink);stroke-width:1.5;stroke-dasharray:7 5}.performance-rating-evolution svg .rating-series{fill:none;stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}.performance-rating-evolution svg circle{stroke:var(--cream);stroke-width:1.5;cursor:pointer}.performance-rating-evolution__tooltip{position:absolute;z-index:3;display:grid;width:220px;gap:4px;padding:11px 13px;background:var(--ink);color:#fff;box-shadow:0 7px 18px rgba(0,0,0,.24);font-size:10px;pointer-events:none}.performance-rating-evolution__tooltip[hidden]{display:none}.performance-rating-evolution__tooltip strong{font-size:12px}.performance-rating-evolution__tooltip span{line-height:1.3}@media(max-width:760px){.performance-rating-evolution>header{align-items:start;flex-direction:column}.performance-rating-evolution__legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
.performance-rating-profile{margin-top:24px}.performance-rating-profile>header{display:flex;align-items:end;justify-content:space-between;gap:20px;border-top-color:#83851c}.performance-rating-profile>header a{font-size:11px;font-weight:800}.performance-rating-profile .achievement-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.performance-rating-profile .achievement-metrics span{text-align:center}.performance-rating-profile .rating-positive,.race-analysis-rating .rating-positive{color:#176c36}.performance-rating-profile .rating-negative,.race-analysis-rating .rating-negative{color:#a52323}.performance-rating-last-race{display:block;overflow:hidden;margin-top:7px;color:var(--ink-soft);font-size:9px;font-weight:700;line-height:1.25;text-overflow:ellipsis;white-space:nowrap;text-transform:none}.race-analysis-rating-group+.race-analysis-rating-group{margin-top:22px}.race-analysis-rating-group h4{margin:0 0 10px}@media(max-width:850px){.performance-rating-profile .achievement-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.performance-rating-profile>header{align-items:start;flex-direction:column}}
.performance-rating-evolution canvas{display:block;min-width:720px}.performance-rating-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin:-25px 0 48px}.performance-rating-pagination span{font-size:11px;font-weight:800;text-transform:uppercase}@media(max-width:760px){.performance-rating-pagination{flex-wrap:wrap}}
.performance-rating-evolution__search{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;align-items:end;gap:10px;padding:14px 18px;background:#bba999}.performance-rating-evolution__search label{display:grid;gap:5px}.performance-rating-evolution__search label span{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.performance-rating-evolution__search input{min-height:46px;padding:0 13px;border:1px solid rgba(0,0,0,.2);background:var(--cream);font:13px var(--body)}@media(max-width:680px){.performance-rating-evolution__search{grid-template-columns:1fr}.performance-rating-evolution__search .button{width:100%}}
.performance-rating-included{margin:0 0 14px;padding:10px 13px;border-left:4px solid var(--gold);background:#eee5d4;color:var(--ink-soft);font-size:11px}.performance-rating-included strong{color:var(--ink)}.performance-rating-evolution__added{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:0 18px 14px;background:#bba999}.performance-rating-evolution__added[hidden]{display:none}.performance-rating-evolution__added>strong{margin-right:3px;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.performance-rating-evolution__added span{display:inline-flex;align-items:center;gap:8px;padding:7px 8px 7px 10px;background:var(--cream);font-size:10px;font-weight:800}.performance-rating-evolution__added button{display:grid;place-items:center;width:20px;height:20px;padding:0;border:0;background:var(--red);color:#fff;cursor:pointer;font-weight:800}.performance-rating-evolution__search .button:disabled{cursor:not-allowed;opacity:.45}
.performance-rating-evolution__search label{position:relative}.performance-rating-evolution__suggestions{position:absolute;z-index:8;top:100%;right:0;left:0;max-height:260px;overflow-y:auto;background:#080808;color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.3)}.performance-rating-evolution__suggestions[hidden]{display:none}.performance-rating-evolution__suggestions button{display:block;width:100%;min-height:38px;padding:8px 12px;border:0;background:transparent;color:#fff;cursor:pointer;font:12px var(--body);text-align:left}.performance-rating-evolution__suggestions button:hover,.performance-rating-evolution__suggestions button:focus{background:var(--green);outline:none}
