/*
  ANIMUS CUP — Phase 15.1 TRACKSIDE Final Design System
  Visual lock for v1.0 public platform.
  Identity: black / warm-white / racing red. Ice-blue is reserved for timing/data.
  No gold palette. No carbon-fiber imitation. No decorative neon overload.
*/

:root{
  --ac-bg:#07090c;
  --ac-bg-deep:#040609;
  --ac-surface:#0c1015;
  --ac-surface-2:#11161d;
  --ac-surface-3:#151b23;
  --ac-line:#242b34;
  --ac-line-strong:#343d48;
  --ac-text:#f4f2ed;
  --ac-text-soft:#c3c6ca;
  --ac-muted:#7f8994;
  --ac-muted-2:#5d6671;
  --ac-red:#f12b43;
  --ac-red-bright:#ff455c;
  --ac-red-dark:#a90f29;
  --ac-data:#75d9ff;
  --ac-data-strong:#28bdf5;
  --ac-green:#56d99a;
  --ac-orange:#ff9a4a;
  --ac-stripe:#635bff;
  --ac-danger:#ff5a6e;
  --ac-shadow:0 20px 58px rgba(0,0,0,.28);
  --ac-radius:6px;
  --ac-radius-sm:3px;
  --max:1320px;

  /* Backwards-compatible semantic tokens used by existing components. */
  --bg:var(--ac-bg);
  --panel:var(--ac-surface);
  --panel2:var(--ac-surface-2);
  --panel3:var(--ac-surface-3);
  --line:var(--ac-line);
  --line2:var(--ac-line-strong);
  --muted:var(--ac-muted);
  --muted2:var(--ac-text-soft);
  --text:var(--ac-text);
  --red:var(--ac-red);
  --red2:var(--ac-red-bright);
  --cyan:var(--ac-data);
  --cyan2:#b4ecff;
  --green:var(--ac-green);
  --amber:var(--ac-orange);
  --blue:var(--ac-data);
  --gold:var(--ac-red);
}

*{box-sizing:border-box}
html{background:var(--ac-bg-deep);scroll-behavior:smooth;color-scheme:dark}
body{
  margin:0;
  color:var(--ac-text);
  background:
    radial-gradient(900px 500px at 85% -160px,rgba(117,217,255,.07),transparent 62%),
    radial-gradient(780px 460px at 0 -100px,rgba(241,43,67,.09),transparent 65%),
    linear-gradient(180deg,#080a0d 0,#06080b 38%,#05070a 100%);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  min-height:100vh;
}
body::before{
  content:"";
  position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
    linear-gradient(90deg,transparent 0 49.92%,rgba(255,255,255,.015) 49.92% 50.08%,transparent 50.08%),
    linear-gradient(180deg,transparent 0 49.92%,rgba(255,255,255,.012) 49.92% 50.08%,transparent 50.08%);
  background-size:80px 80px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 72%);
}
::selection{background:rgba(241,43,67,.32);color:#fff}
a{color:inherit}
button,input{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible{
  outline:2px solid var(--ac-data);outline-offset:3px;
}

/* ---------- Shell / navigation ---------- */
.site-shell{min-height:100vh}
.topbar{
  position:sticky!important;top:0;z-index:50;
  min-height:72px!important;height:auto!important;
  display:flex;align-items:center;gap:28px!important;
  padding:0 max(22px,calc((100vw - var(--max))/2))!important;
  background:rgba(5,7,10,.92)!important;
  backdrop-filter:blur(20px) saturate(120%);
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.22)!important;
}
.topbar::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent 0 10%,rgba(241,43,67,.65) 26%,rgba(241,43,67,.08) 52%,transparent 82%);
  pointer-events:none;
}
.brand{min-width:194px!important;display:flex;align-items:center;gap:11px;text-decoration:none}
.brand-mark{
  width:43px!important;height:31px!important;display:grid!important;place-items:center!important;
  background:var(--ac-red)!important;color:white!important;border:0!important;border-radius:2px!important;
  box-shadow:inset -10px 0 18px rgba(85,0,15,.18)!important;
  transform:skew(-11deg);
  font:900 13px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.12em!important;font-style:normal!important;
}
.brand>span:last-child{display:flex;align-items:baseline;gap:5px;font-family:"Barlow Condensed",Inter,sans-serif;letter-spacing:.15em}
.brand b{font-size:20px!important;font-weight:900}.brand small{font-size:9px!important;color:var(--ac-data)!important;font-weight:900}
.main-nav{display:flex;align-items:center;gap:22px!important;flex:1}
.main-nav a{
  position:relative;padding:27px 0 25px!important;text-decoration:none;
  color:#818a94!important;font:800 12px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.14em!important;
  transition:color .15s ease;
}
.main-nav a:hover,.main-nav a.on{color:#fff!important}
.main-nav a.on::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:3px!important;background:var(--ac-red)!important;
  box-shadow:none!important;
}
.top-actions{display:flex;align-items:center;gap:10px!important}
.live-state{
  color:#76818d!important;font-size:9px!important;font-weight:900!important;letter-spacing:.13em!important;white-space:nowrap;
}
.live-state i{width:6px!important;height:6px!important;background:var(--ac-green)!important;box-shadow:0 0 9px rgba(86,217,154,.55)!important}
.live-state.bad i{background:var(--ac-danger)!important;box-shadow:0 0 9px rgba(255,90,110,.5)!important}
.account-chip,.ghost-btn,.nav-toggle{
  border:1px solid #29323d!important;background:#0a0e13!important;color:#d7dce2!important;
  border-radius:3px!important;clip-path:none!important;box-shadow:none!important;
  font:800 10px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.13em!important;
  transition:border-color .15s ease,background .15s ease,color .15s ease!important;
}
.account-chip{padding:10px 13px!important;text-decoration:none}
.account-chip:hover,.ghost-btn:hover{border-color:#46515e!important;background:#111820!important;color:#fff!important}
.account-chip.signed-in{color:var(--ac-green)!important;border-color:rgba(86,217,154,.34)!important;background:rgba(86,217,154,.035)!important}
.nav-toggle{display:none;padding:9px 12px!important;cursor:pointer}

.app{max-width:var(--max)!important;margin:0 auto!important;padding:48px 22px 88px!important}
.section{margin-top:24px!important}
.grid{gap:12px!important}.split{gap:12px!important}

/* ---------- Type system ---------- */
.eyebrow{
  color:var(--ac-data)!important;font:800 10px/1 "Barlow Condensed",Inter,sans-serif!important;
  letter-spacing:.21em!important;text-transform:uppercase;
}
.hero h1,.page-head h1,.calendar-hero h1,.account-hero h1,.driver-title h1,.race-title h1,
.calendar-section-head h2,.card-title h2,.result-card h3,.calendar-track h3,.calendar-feature-track h2{
  font-family:"Barlow Condensed",Inter,sans-serif!important;font-weight:900!important;text-transform:uppercase!important;
}
.hero h1,.page-head h1,.calendar-hero h1,.account-hero h1,.driver-title h1,.race-title h1{
  letter-spacing:-.02em!important;
}
.muted{color:var(--ac-muted)!important}

/* ---------- Common surfaces ---------- */
.card,.metric,.result-card,.record-card,.track-record,.driver-card,.private-panel,.auth-card,.empty-state,.error-state,
.rival-card,.achievement,.honour-row,.account-metric,.hub-achievements>div{
  background:linear-gradient(180deg,#0d1116 0%,#090d12 100%)!important;
  border:1px solid var(--ac-line)!important;border-radius:var(--ac-radius-sm)!important;box-shadow:none!important;
}
.card,.private-panel,.auth-card,.result-card,.record-card,.driver-card{position:relative;overflow:hidden}
.card::before,.private-panel::before,.auth-card::before,.result-card::before,.record-card::before,.driver-card::before{
  content:"";position:absolute;top:0;left:0;width:42px;height:2px;background:#39434f;pointer-events:none;
}
.card:hover::before,.result-card:hover::before,.driver-card:hover::before{background:var(--ac-red)}
.card{padding:22px!important}.metric{padding:18px!important;min-height:104px!important}
.card-title{margin-bottom:18px!important;align-items:end!important}
.card-title small,.metric small,.hero-chip small,.record-card small,.account-metric small,.calendar-summary small,
.feature-meta small,.calendar-grid-strip small,.calendar-result-strip small{
  color:#697480!important;font:800 8px/1.2 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.16em!important;text-transform:uppercase;
}
.card-title h2{margin:3px 0 0!important;font-size:25px!important;line-height:1!important;letter-spacing:.01em!important}
.card-title a,.back-link,.open-center{color:#aeb6c0!important;text-decoration:none!important;font:800 10px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.12em!important}
.card-title a:hover,.back-link:hover,.open-center:hover{color:var(--ac-data)!important}
.metric strong{display:block!important;color:#fff!important;font:900 31px/.95 "Barlow Condensed",Inter,sans-serif!important;margin-top:8px!important;letter-spacing:-.01em!important}
.metric span{color:#737e89!important;font-size:10px!important}

/* ---------- Home ---------- */
.hero{
  min-height:410px!important;display:grid!important;grid-template-columns:1.5fr .72fr!important;align-items:end!important;
  padding:50px 52px!important;position:relative!important;overflow:hidden!important;border:1px solid var(--ac-line)!important;
  border-left:4px solid var(--ac-red)!important;border-radius:var(--ac-radius)!important;
  background:
    linear-gradient(105deg,rgba(241,43,67,.10),transparent 38%),
    linear-gradient(150deg,#10151b 0%,#090d12 68%,#080b10 100%)!important;
  box-shadow:var(--ac-shadow)!important;
}
.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(117deg,transparent 0 69%,rgba(117,217,255,.04) 69% 69.6%,transparent 69.6% 74%,rgba(241,43,67,.05) 74% 74.5%,transparent 74.5%);
}
.hero::after{
  content:"ANIMUS"!important;position:absolute!important;right:-8px!important;bottom:-19px!important;top:auto!important;
  color:rgba(255,255,255,.025)!important;font:900 clamp(90px,13vw,180px)/.8 "Barlow Condensed",Inter,sans-serif!important;
  letter-spacing:-.04em!important;font-style:normal!important;pointer-events:none;
}
.hero>div{position:relative;z-index:2}
.hero h1{font-size:clamp(58px,7.8vw,98px)!important;line-height:.79!important;margin:12px 0 19px!important;color:#fff!important}
.hero p{color:#9aa3ad!important;max-width:620px!important;font-size:14px!important;line-height:1.65!important}
.hero-side{display:grid!important;gap:8px!important;align-self:end}
.hero-chip{
  position:relative;padding:18px 18px 17px!important;background:#080c10!important;border:1px solid #252e38!important;
  border-left:2px solid var(--ac-data)!important;border-radius:2px!important;
}
.hero-chip:first-child{border-left-color:var(--ac-red)!important}
.hero-chip b{font:900 25px/1 "Barlow Condensed",Inter,sans-serif!important;text-transform:uppercase;margin-top:7px!important}
.hero-chip b a{text-decoration:none;color:#fff!important}.hero-chip b a:hover{color:var(--ac-red-bright)!important}
.hero-chip .muted{font-size:10px!important;margin-top:5px;display:block}
.grid.metrics{grid-template-columns:repeat(4,1fr)!important}
.next-race{padding:25px!important;background:linear-gradient(135deg,#10151b,#090d12)!important;border:1px solid var(--ac-line)!important;border-left:3px solid var(--ac-red)!important;border-radius:3px!important}
.race-kicker{color:#6f7a86!important}.race-track h2{font:900 34px/1 "Barlow Condensed",Inter,sans-serif!important;text-transform:uppercase}
.race-track p{color:#7f8a95!important}.race-stats{border-color:#252e38!important}.race-stats small{color:#697581!important}.race-stats b{font-family:"Barlow Condensed",Inter,sans-serif;font-size:19px!important}
.latest-result{border-color:#202832!important;padding:15px 0!important}.latest-result .place{font:900 25px/1 "Barlow Condensed",Inter,sans-serif!important;color:#fff}

/* ---------- Page headers ---------- */
.page-head{padding:16px 0 26px!important;border-bottom:1px solid var(--ac-line)!important;margin-bottom:24px!important;position:relative}
.page-head::before{content:"";display:block;width:48px;height:3px;background:var(--ac-red);margin-bottom:15px}
.page-head h1{font-size:clamp(48px,6vw,76px)!important;line-height:.84!important;margin:8px 0 12px!important}
.page-head p{color:#87919c!important}.season-badge{border:1px solid #2d3742!important;background:#090d12!important;color:var(--ac-data)!important;border-radius:2px!important;font-family:"Barlow Condensed",Inter,sans-serif!important}

/* ---------- Status ---------- */
.status{background:transparent!important;border:1px solid #34404c!important;border-radius:2px!important;font:900 8px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.14em!important;padding:6px 8px!important}
.status.open{color:var(--ac-green)!important;border-color:rgba(86,217,154,.34)!important}
.status.done{color:var(--ac-data)!important;border-color:rgba(117,217,255,.28)!important}
.status.full{color:var(--ac-danger)!important;border-color:rgba(255,90,110,.34)!important}
.status.upcoming{color:#89939e!important;border-color:#343e49!important}

/* ---------- Tables ---------- */
.table-wrap{overflow:auto!important;border:1px solid var(--ac-line)!important;border-radius:3px!important;background:#080c10!important}
table{background:#080c10!important;border:0!important}
th{background:#070a0e!important;color:#687583!important;border-color:#242c35!important;padding:12px 14px!important;font:900 8px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.15em!important}
td{border-color:#1c232c!important;padding:14px!important;color:#d6d9de!important}
tbody tr{transition:background .12s ease}tbody tr:hover{background:#10161d!important}
tbody tr:nth-child(1) .pos{color:var(--ac-red-bright)!important}
tbody tr:nth-child(2) .pos{color:#d9dde2!important}tbody tr:nth-child(3) .pos{color:#acb4bd!important}
.pos{font:900 19px/1 "Barlow Condensed",Inter,sans-serif!important;color:#fff!important}.points{font:900 18px/1 "Barlow Condensed",Inter,sans-serif!important;color:#fff!important}
.driver-cell{gap:9px!important}.driver-link{text-decoration:none!important}.driver-link:hover span{color:var(--ac-data)!important}
.flag{box-shadow:none!important;background:none!important;border:0!important;border-radius:1px!important}

/* ---------- Calendar ---------- */
.calendar-hero{
  display:grid!important;grid-template-columns:1.35fr .72fr!important;gap:34px!important;position:relative!important;overflow:hidden!important;
  padding:42px 46px!important;border:1px solid var(--ac-line)!important;border-left:4px solid var(--ac-red)!important;border-radius:var(--ac-radius)!important;
  background:linear-gradient(135deg,#10151b 0,#090d12 72%)!important;box-shadow:var(--ac-shadow)!important;
}
.calendar-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 0 70%,rgba(117,217,255,.04) 70% 70.5%,transparent 70.5% 75%,rgba(241,43,67,.045) 75% 75.5%,transparent 75.5%)}
.calendar-hero>*{position:relative;z-index:1}.calendar-hero h1{font-size:clamp(54px,7vw,88px)!important;line-height:.8!important;margin:10px 0 16px!important}
.calendar-hero h1 span{color:var(--ac-red)!important}.calendar-hero p{max-width:640px!important;color:#8d97a2!important;font-size:14px!important;line-height:1.6!important}
.calendar-summary{display:grid!important;gap:8px!important;align-content:end!important}
.calendar-summary>div{padding:17px!important;background:#080c10!important;border:1px solid #252e38!important;border-top:2px solid #3a4653!important;border-radius:2px!important}
.calendar-summary>div:first-child{border-top-color:var(--ac-red)!important}.calendar-summary>div:last-child{border-top-color:var(--ac-data)!important}
.calendar-summary b{display:block!important;color:#fff!important;font:900 27px/1 "Barlow Condensed",Inter,sans-serif!important;margin-top:6px!important;text-transform:uppercase}
.calendar-summary span{color:#85909b!important;font-size:10px!important}.season-progress{height:3px!important;background:#1b232c!important;margin-top:12px!important}.season-progress i{display:block;height:100%;background:var(--ac-red)!important;box-shadow:none!important}
.calendar-feature{
  display:grid!important;grid-template-columns:1.3fr .7fr!important;margin-top:14px!important;overflow:hidden!important;
  background:linear-gradient(135deg,#0f141b,#080c10)!important;border:1px solid #2a343f!important;border-top:3px solid var(--ac-red)!important;border-radius:4px!important;box-shadow:0 17px 42px rgba(0,0,0,.22)!important;
}
.calendar-feature::before{display:none!important}.calendar-feature-main{padding:29px 30px!important}.calendar-feature-track{display:flex!important;align-items:center!important;gap:14px!important;margin:16px 0 22px!important}
.calendar-feature-track .flag{width:40px!important;height:28px!important}.calendar-feature-track h2{font-size:43px!important;line-height:.88!important;margin:0!important;color:#fff!important}
.calendar-feature-track p{margin:6px 0 0!important;color:#818d98!important;font-size:11px!important;letter-spacing:.035em!important}
.feature-meta{display:grid!important;grid-template-columns:repeat(3,1fr)!important;border-top:1px solid #242d37!important;border-bottom:1px solid #242d37!important}
.feature-meta>div{padding:12px 10px!important;border-right:1px solid #242d37!important;background:#080c10!important}.feature-meta>div:last-child{border-right:0!important}
.feature-meta b{display:block!important;color:#fff!important;font:900 19px/1 "Barlow Condensed",Inter,sans-serif!important;margin-top:5px!important}.feature-action{margin-top:18px!important}
.calendar-feature-clock{position:relative!important;padding:29px!important;background:#070a0e!important;border-left:1px solid #252e38!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
.calendar-feature-clock::before{content:"RACE TIMER";position:absolute;right:18px;top:17px;color:rgba(117,217,255,.16);font:900 9px/1 "Barlow Condensed",Inter,sans-serif;letter-spacing:.22em}
.calendar-feature-clock>small{color:#697683!important;font:900 8px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.2em!important;margin-bottom:11px!important}
.feature-countdown,.mini-countdown{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:5px!important}
.feature-countdown>div{background:#0d131a!important;border:1px solid #27323e!important;border-top:2px solid var(--ac-data)!important;border-radius:2px!important;padding:10px 5px!important;text-align:center!important}
.feature-countdown b{display:block;color:#fff!important;font:900 32px/.9 "Barlow Condensed",Inter,sans-serif!important;text-shadow:none!important}.feature-countdown span{color:#65727f!important;font:800 7px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.15em!important}
.live-dot{color:var(--ac-green)!important;font:900 8px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.15em!important}.live-dot::before{background:var(--ac-green)!important;box-shadow:0 0 10px rgba(86,217,154,.5)!important}
.calendar-section-head{display:flex!important;justify-content:space-between!important;align-items:end!important;border-bottom:1px solid #242d37!important;padding-bottom:11px!important;margin-top:34px!important}
.calendar-section-head h2{margin:3px 0 0!important;font-size:32px!important;line-height:.95!important}.calendar-section-head>span{color:#697581!important;font:900 8px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.16em!important}
.calendar-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important;margin-top:12px!important}
.calendar-card{position:relative!important;overflow:hidden!important;background:#090d12!important;border:1px solid #242d37!important;border-top:2px solid #384450!important;border-radius:3px!important;box-shadow:none!important;transition:transform .15s ease,border-color .15s ease,background .15s ease!important}
.calendar-card::before{display:none!important}.calendar-card:hover{transform:translateY(-3px)!important;border-color:#3b4855!important;background:#0d1319!important;box-shadow:0 13px 30px rgba(0,0,0,.22)!important}
.calendar-card.is-next{border-top-color:var(--ac-red)!important}.calendar-card.is-complete{border-top-color:var(--ac-data)!important;opacity:.94!important}
.calendar-card-top{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:9px 12px!important;background:#070a0e!important;border-bottom:1px solid #202832!important;color:#697581!important;font:900 8px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.15em!important}.calendar-card-top b{color:var(--ac-red)!important}.calendar-card.is-complete .calendar-card-top b{color:var(--ac-data)!important}
.calendar-track{display:flex!important;align-items:center!important;gap:11px!important;padding:17px 14px 12px!important}.calendar-track .flag{width:25px!important;height:17px!important}.calendar-track h3{margin:0!important;color:#fff!important;font-size:23px!important;line-height:.95!important}.calendar-track p{margin:5px 0 0!important;color:#76818c!important;font-size:10px!important}
.calendar-grid-strip,.calendar-result-strip{display:grid!important;grid-template-columns:repeat(3,1fr)!important;margin:8px 14px 0!important;border-top:1px solid #202832!important;border-bottom:1px solid #202832!important;background:#080c10!important}
.calendar-grid-strip>div,.calendar-result-strip>div{padding:9px 6px!important;border-right:1px solid #202832!important}.calendar-grid-strip>div:last-child,.calendar-result-strip>div:last-child{border-right:0!important}.calendar-grid-strip b,.calendar-result-strip b{display:block!important;color:#e5e8ec!important;font:900 14px/1 "Barlow Condensed",Inter,sans-serif!important;margin-top:4px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.calendar-result-strip b{color:var(--ac-data)!important}
.mini-countdown{margin:10px 14px 0!important;border-top:1px solid #202832!important}.mini-countdown>div{background:transparent!important;border:0!important;text-align:center!important;padding:8px 2px 5px!important}.mini-countdown b{display:block!important;color:#fff!important;font:900 18px/1 "Barlow Condensed",Inter,sans-serif!important}.mini-countdown small{display:block!important;color:#5f6b77!important;font:800 7px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.13em!important;margin-top:3px!important}.calendar-card-action{padding:12px 14px 14px!important;min-height:52px!important;display:flex!important;align-items:center!important;border-top:1px solid #171e26!important;background:#080b0f!important}

/* ---------- Buttons / actions ---------- */
.cal-btn{
  appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  min-height:38px!important;padding:10px 15px!important;border-radius:2px!important;clip-path:none!important;text-decoration:none!important;cursor:pointer!important;
  font:900 10px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase!important;
  transition:transform .12s ease,background .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease!important;
}
.cal-btn:hover{opacity:1!important;transform:translateY(-1px)!important}.cal-btn:disabled{opacity:.45!important;cursor:wait!important;transform:none!important}
.cal-btn.primary{background:var(--ac-red)!important;color:#fff!important;border:1px solid var(--ac-red)!important;box-shadow:none!important}.cal-btn.primary:hover{background:var(--ac-red-bright)!important;border-color:var(--ac-red-bright)!important;box-shadow:0 0 20px rgba(241,43,67,.16)!important}
.cal-btn.secondary{background:#0b1117!important;color:var(--ac-data)!important;border:1px solid #31505e!important}.cal-btn.secondary:hover{border-color:var(--ac-data)!important;background:rgba(117,217,255,.055)!important}
.cal-btn.ghost{background:transparent!important;color:#bcc3cb!important;border:1px solid #394450!important}.cal-btn.ghost:hover{border-color:#697684!important;color:#fff!important;background:#10161d!important}
.cal-btn.danger{background:rgba(255,90,110,.035)!important;color:#ff92a0!important;border:1px solid rgba(255,90,110,.28)!important}.cal-btn.danger:hover{background:rgba(255,90,110,.08)!important;border-color:rgba(255,90,110,.5)!important}
.cal-btn.stripe{background:var(--ac-stripe)!important;color:#fff!important;border:1px solid #7770ff!important;box-shadow:none!important}.cal-btn.stripe:hover{background:#756eff!important;box-shadow:0 0 20px rgba(99,91,255,.18)!important}
.cal-btn.wide{width:100%!important}.registration-actions{display:flex!important;gap:7px!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important}
.cal-action-state{font:900 8px/1.3 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase!important}.cal-action-state.confirmed{color:var(--ac-green)!important}.cal-action-state.pending{color:var(--ac-data)!important;border-color:rgba(117,217,255,.26)!important;background:rgba(117,217,255,.035)!important}.cal-action-state.full,.cal-action-state.low{color:var(--ac-danger)!important}.cal-action-state.muted{color:#69747f!important}

/* ---------- Results / records ---------- */
.results-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.result-card{padding:20px!important;text-decoration:none!important;transition:transform .15s ease,border-color .15s ease!important}.result-card:hover{transform:translateY(-3px)!important;border-color:#3b4653!important;background:#0d1319!important}.result-card h3{font-size:30px!important;line-height:.95!important;margin:8px 0 4px!important}.result-card p{color:#78838f!important}.podium-row{border-color:#202832!important}.podium-row strong{font-family:"Barlow Condensed",Inter,sans-serif!important;font-size:15px!important}.podium-row:first-child strong{color:var(--ac-red-bright)!important}.open-center{border-top:1px solid #202832!important;margin-top:14px!important;padding-top:13px!important;color:var(--ac-data)!important}
.records-grid{grid-template-columns:repeat(4,1fr)!important;gap:10px!important}.record-card{padding:19px!important}.record-card strong{font:900 28px/.95 "Barlow Condensed",Inter,sans-serif!important;color:#fff!important}.record-card span{color:#727d88!important}.record-card .holder{color:#d6dbe0!important}.record-card .holder a{color:#fff;text-decoration:none}.record-card .holder a:hover{color:var(--ac-data)}.track-records{gap:10px!important}.track-record{padding:18px!important}.track-record h3{font:900 21px/1 "Barlow Condensed",Inter,sans-serif!important;text-transform:uppercase}.track-record p{color:#727e89!important}.track-time{font:900 25px/1 "Barlow Condensed",Inter,sans-serif!important;color:var(--ac-data)!important}

/* ---------- Driver directory / profile ---------- */
.driver-grid{grid-template-columns:repeat(3,1fr)!important;gap:10px!important}.driver-card{padding:18px!important;transition:transform .15s ease,border-color .15s ease!important}.driver-card:hover{transform:translateY(-3px)!important;border-color:#3b4653!important;background:#0d1319!important}.driver-avatar{font-family:"Barlow Condensed",Inter,sans-serif!important;font-size:20px!important;text-transform:uppercase}.driver-position{font:900 27px/1 "Barlow Condensed",Inter,sans-serif!important;font-style:normal!important;color:var(--ac-red-bright)!important}.driver-card-stats{border-color:#202832!important}.driver-card-stats small{color:#66727e!important}.driver-card-stats b{font-family:"Barlow Condensed",Inter,sans-serif!important;font-size:17px!important}.driver-card-foot{color:#697581!important}
.driver-hero,.race-hero{position:relative!important;overflow:hidden!important;padding:30px 33px!important;background:linear-gradient(125deg,#10151b,#090d12)!important;border:1px solid var(--ac-line)!important;border-left:4px solid var(--ac-red)!important;border-radius:4px!important;box-shadow:var(--ac-shadow)!important}.driver-hero::after,.race-hero::after{content:"";position:absolute;right:-25px;top:-60px;width:260px;height:260px;border:1px solid rgba(117,217,255,.06);transform:rotate(38deg);pointer-events:none}.driver-hero-main,.race-hero-main{position:relative;z-index:1}.driver-title h1,.race-title h1{font-size:clamp(48px,6vw,78px)!important;line-height:.82!important;margin:7px 0 9px!important}.driver-title p,.race-hero p{color:#7f8a95!important}.driver-rank{padding:12px 16px!important;background:#080c10!important;border:1px solid #26313b!important;border-top:2px solid var(--ac-data)!important;border-radius:2px!important}.driver-rank small{color:#687580!important}.driver-rank strong{font:900 59px/.8 "Barlow Condensed",Inter,sans-serif!important;font-style:normal!important;color:#fff!important}.driver-rank span{color:var(--ac-data)!important}.driver-metrics,.race-metrics{grid-template-columns:repeat(4,1fr)!important}.driver-split{grid-template-columns:1fr 1fr!important}.season-pulse{gap:6px!important}.season-pulse .metric,.intel-grid .metric{background:#080c10!important;border-color:#202832!important;border-top:2px solid #303c49!important}.benchmark-list>div{border-color:#202832!important}.benchmark-list span{color:#66727d!important}.benchmark-list b{color:#e8ebee!important}.best-track{background:#080c10!important;border:1px solid #202832!important;border-left:2px solid var(--ac-data)!important;padding:14px!important}.best-track small{color:#66727d!important}.best-track b{font-family:"Barlow Condensed",Inter,sans-serif!important;text-transform:uppercase;font-size:22px!important}.best-track span{color:#78838e!important}
.honour-total,.chart-note{color:#75808b!important}.honour-row{background:#080c10!important;border-color:#202832!important}.honour-row:hover{border-color:#384550!important}.honour-row b{color:#e9ecef!important}.honour-row span:not(.honour){color:#737e89!important}.honour{background:transparent!important;border-color:#37424e!important;border-radius:2px!important;font:900 8px/1 "Barlow Condensed",Inter,sans-serif!important}.honour.pole{color:var(--ac-red-bright)!important;border-color:rgba(241,43,67,.32)!important}.honour.fast{color:var(--ac-data)!important;border-color:rgba(117,217,255,.30)!important}
.rival-card{background:#080c10!important;border-color:#202832!important}.rival-card small{color:#68747f!important}.rival-card strong{font-family:"Barlow Condensed",Inter,sans-serif!important;font-size:18px!important}.rival-card>span{color:#737f8a!important}.achievement{background:#080c10!important;border-color:#202832!important}.achievement small{color:var(--ac-data)!important}.achievement b{font-family:"Barlow Condensed",Inter,sans-serif!important;font-size:15px!important}.achievement p{color:#737e89!important}.achievement-icon{filter:grayscale(.15)}

/* ---------- Race Center / intelligence ---------- */
.race-title{margin-top:5px!important}.race-title .flag,.driver-title .flag{width:43px!important;height:30px!important}.race-metrics .metric:first-child{border-top:2px solid var(--ac-red)!important}.race-metrics .metric:nth-child(2),.race-metrics .metric:nth-child(3){border-top:2px solid var(--ac-data)!important}.chart-grid{gap:12px!important}.chart-shell{background:#070b0f!important;border:1px solid #202832!important;border-radius:2px!important;padding:4px!important}.chart-legend{border-color:#202832!important}.chart-legend span{color:#8c97a2!important}.clean-steward{background:rgba(86,217,154,.03)!important;border:1px solid rgba(86,217,154,.19)!important;border-left:3px solid var(--ac-green)!important;border-radius:2px!important}.clean-steward>strong{color:var(--ac-green)!important}.clean-steward span{color:#74808a!important}.steward-row{background:#080c10!important;border:1px solid #202832!important;border-left:2px solid var(--ac-red)!important;border-radius:2px!important}.lap-tag{color:var(--ac-data)!important;background:rgba(117,217,255,.035)!important;border-color:rgba(117,217,255,.24)!important}.gain{color:var(--ac-green)!important}.loss{color:var(--ac-danger)!important}

/* ---------- Accounts / Driver Hub ---------- */
.account-hero{position:relative!important;overflow:hidden!important;display:grid!important;grid-template-columns:1.35fr .65fr!important;gap:34px!important;padding:42px 46px!important;background:linear-gradient(125deg,#10151b,#090d12)!important;border:1px solid var(--ac-line)!important;border-left:4px solid var(--ac-red)!important;border-radius:var(--ac-radius)!important;box-shadow:var(--ac-shadow)!important}.account-hero::before{content:"";position:absolute;right:-50px;top:-80px;width:340px;height:340px;border:1px solid rgba(117,217,255,.05);transform:rotate(40deg);pointer-events:none}.account-hero>*{position:relative;z-index:1}.account-hero h1{font-size:clamp(54px,7vw,86px)!important;line-height:.8!important;margin:10px 0 16px!important}.account-hero h1 span{color:var(--ac-red)!important}.account-hero p{color:#8c97a2!important;max-width:650px!important;line-height:1.6!important}.account-security,.wallet-board{align-self:end!important;background:#080c10!important;border:1px solid #27313c!important;border-top:2px solid var(--ac-data)!important;border-radius:2px!important;padding:20px!important}.account-security.pending{border-top-color:var(--ac-red)!important}.account-security small,.wallet-board small{color:#687580!important;font:900 8px/1 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.18em!important}.account-security b{display:block!important;color:#fff!important;font:900 27px/1 "Barlow Condensed",Inter,sans-serif!important;margin:7px 0!important}.account-security span,.wallet-board span{color:#7d8994!important}.wallet-board b{display:block!important;color:#fff!important;font:900 52px/.9 "Barlow Condensed",Inter,sans-serif!important;margin:7px 0!important}.wallet-board b em{color:var(--ac-data)!important;font-size:18px!important}.auth-grid{gap:12px!important}.auth-card{padding:26px!important;border-top:2px solid #394550!important}.auth-card:first-child{border-top-color:var(--ac-red)!important}.auth-card:last-child{border-top-color:var(--ac-data)!important}.auth-card label{color:#939da7!important;font-size:9px!important}.auth-card input{display:block!important;width:100%!important;margin-top:7px!important;padding:12px 13px!important;background:#06090d!important;border:1px solid #29333e!important;color:#fff!important;border-radius:2px!important;outline:none!important}.auth-card input:focus{border-color:var(--ac-data)!important;box-shadow:0 0 0 2px rgba(117,217,255,.07)!important}.auth-fine{color:#747f8a!important}.account-notice{background:#090e13!important;border:1px solid #28333f!important;border-left:3px solid var(--ac-data)!important;border-radius:2px!important}.account-notice.good{color:#a5ecc7!important;border-left-color:var(--ac-green)!important}.account-notice.bad{color:#ff9fac!important;border-left-color:var(--ac-danger)!important}.account-metrics{gap:8px!important}.account-metric{background:#080c10!important;border-color:#202832!important;border-top:2px solid #33404d!important}.account-metric b{color:#fff!important;font:900 27px/.95 "Barlow Condensed",Inter,sans-serif!important}.account-metric span{color:#737f8a!important}.private-tag{color:var(--ac-data)!important;border-color:rgba(117,217,255,.27)!important;background:rgba(117,217,255,.03)!important;border-radius:2px!important}.private-tag.good{color:var(--ac-green)!important;border-color:rgba(86,217,154,.27)!important;background:rgba(86,217,154,.03)!important}.hub-race,.hub-results>div,.wallet-history>div{border-color:#202832!important}.hub-race-round,.hub-results b,.wallet-history>div b{color:var(--ac-data)!important;font-family:"Barlow Condensed",Inter,sans-serif!important}.hub-race span,.hub-race small,.hub-results em{color:#77838e!important}.link-status{background:#080c10!important;border-color:#202832!important}.link-status strong{color:#fff!important}.link-status p{color:#7d8994!important}.link-status>div{border-color:#202832!important}.link-status>div span{color:#66727e!important}.hub-achievements>div{background:#080c10!important;border-color:#202832!important}.hub-achievements>div>span{color:var(--ac-data)!important}.hub-achievements small{color:#68747f!important}.link-instructions>span{border-color:rgba(117,217,255,.32)!important;color:var(--ac-data)!important;background:rgba(117,217,255,.025)!important}.link-instructions p{color:#89949f!important}

/* ---------- Stripe return ---------- */
.payment-return{max-width:var(--max)!important;margin:16px auto 0!important;padding:12px 16px!important;border:1px solid #29333e!important;border-left:3px solid var(--ac-data)!important;background:#090e13!important;color:#d9e0e7!important;border-radius:2px!important;font:900 9px/1.5 "Barlow Condensed",Inter,sans-serif!important;letter-spacing:.15em!important}.payment-return.verified{border-left-color:var(--ac-green)!important;color:#b5f1d1!important}.payment-return.cancelled{border-left-color:var(--ac-red)!important;color:#ff9fac!important}

/* ---------- Loading / errors ---------- */
.loading-screen{color:#73808b!important}.loader{width:34px!important;height:34px!important;border:2px solid #26303a!important;border-top-color:var(--ac-red)!important}
.empty-state,.error-state{padding:42px!important;color:#89949e!important}.error-state{border-color:rgba(255,90,110,.32)!important;border-left:3px solid var(--ac-danger)!important}.error-state h2{font-family:"Barlow Condensed",Inter,sans-serif!important;text-transform:uppercase!important;font-size:28px!important}.error-state code{background:#05080b!important;color:#cbd2da!important;border:1px solid #202832!important;border-radius:2px!important}

/* ---------- Footer ---------- */
.footer{max-width:var(--max)!important;margin:0 auto!important;padding:25px 22px 38px!important;border-top:1px solid #1c242d!important;color:#65717d!important;font-size:9px!important}.footer b{color:#e2e5e8!important;font-family:"Barlow Condensed",Inter,sans-serif!important;letter-spacing:.14em!important}.footer span{color:#596570!important}

/* ---------- Responsive ---------- */
@media(max-width:1100px){
  .main-nav{gap:15px!important}.main-nav a{font-size:11px!important}.brand{min-width:166px!important}
  .calendar-grid,.driver-grid{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:1000px){
  .calendar-feature{grid-template-columns:1fr!important}.calendar-feature-clock{border-left:0!important;border-top:1px solid #252e38!important}
  .private-split{grid-template-columns:1fr!important}.account-metrics{grid-template-columns:repeat(2,1fr)!important}
  .chart-grid{grid-template-columns:1fr!important}
}
@media(max-width:900px){
  .topbar{padding:0 18px!important;gap:12px!important;min-height:66px!important}.brand{min-width:0!important;flex:1}.top-actions{display:none!important}.nav-toggle{display:block!important}
  .main-nav{display:none!important;position:absolute;left:12px;right:12px;top:62px;background:#070b0f!important;border:1px solid #27313c!important;padding:7px!important;flex-direction:column;align-items:stretch;gap:0!important;box-shadow:0 20px 50px rgba(0,0,0,.45)}
  .main-nav.open{display:flex!important}.main-nav a{padding:14px 13px!important;border-bottom:1px solid #171e26}.main-nav a:last-child{border-bottom:0}.main-nav a.on::after{display:none!important}.main-nav a.on{background:#10161d;color:#fff!important;border-left:2px solid var(--ac-red)}
  .app{padding:32px 16px 70px!important}.hero,.calendar-hero,.account-hero{grid-template-columns:1fr!important;padding:31px 25px!important;min-height:0!important}.hero-side{grid-template-columns:repeat(2,1fr)!important}.calendar-summary{grid-template-columns:1fr 1fr!important}.account-security,.wallet-board{align-self:stretch!important}
  .grid.metrics,.driver-metrics,.race-metrics{grid-template-columns:repeat(2,1fr)!important}.split,.driver-split{grid-template-columns:1fr!important}.results-grid,.track-records{grid-template-columns:1fr!important}.records-grid{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:700px){
  .registration-actions{justify-content:stretch!important}.registration-actions .cal-btn{flex:1 1 100%!important}.auth-grid{grid-template-columns:1fr!important}.calendar-grid,.driver-grid{grid-template-columns:1fr!important}
  .driver-hero-main,.race-hero-main{align-items:flex-start!important;flex-direction:column!important}.driver-rank{text-align:left!important}.season-pulse{grid-template-columns:repeat(2,1fr)!important}.achievement-grid,.rival-summary{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  .hero{padding:27px 20px!important}.hero h1{font-size:57px!important}.hero-side{grid-template-columns:1fr!important}.calendar-hero h1,.account-hero h1{font-size:53px!important}.calendar-summary{grid-template-columns:1fr!important}
  .calendar-feature-main,.calendar-feature-clock{padding:21px!important}.calendar-feature-track h2{font-size:34px!important}.feature-meta{grid-template-columns:1fr 1fr 1fr!important}.feature-meta b{font-size:16px!important}.feature-countdown b{font-size:25px!important}
  .grid.metrics,.driver-metrics,.race-metrics,.records-grid,.account-metrics{grid-template-columns:1fr 1fr!important}.metric{min-height:94px!important;padding:15px!important}.metric strong{font-size:26px!important}.page-head-row{align-items:flex-start!important;flex-direction:column!important}.season-badge{align-self:flex-start}
  .hub-achievements{grid-template-columns:1fr 1fr!important}.calendar-section-head{align-items:start!important}.calendar-section-head>span{padding-top:5px!important}
}
@media(max-width:390px){
  .grid.metrics,.driver-metrics,.race-metrics,.records-grid,.account-metrics{grid-template-columns:1fr!important}.feature-meta{grid-template-columns:1fr!important}.feature-meta>div{border-right:0!important;border-bottom:1px solid #242d37!important}.feature-meta>div:last-child{border-bottom:0!important}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
