.nav{z-index:20;background:linear-gradient(#2a4b38 0%,#1a2c26 100%);border-bottom:2px solid #d4c48a66;flex-shrink:0;align-items:center;gap:1rem;padding:.7rem 1rem;display:flex;position:relative;box-shadow:0 4px 18px #08100c59}.nav__brand{cursor:pointer;align-items:center;gap:.7rem;min-width:0;display:flex}.nav__logo{font-family:var(--font-logo);color:var(--cream);letter-spacing:-.06em;-webkit-user-select:none;user-select:none;text-shadow:0 1px #08100c59;font-size:1.85rem;font-style:italic;font-weight:900;line-height:1;display:inline-block}.nav__logo-dot{color:var(--logo-dot);margin-left:.02em;font-weight:900}.nav__tabs{flex:1;gap:.2rem;margin-left:.75rem;display:none}.nav__tab{appearance:none;color:#f0f7f2c7;cursor:pointer;letter-spacing:.02em;background:0 0;border:1px solid #0000;border-radius:999px;padding:.48rem .9rem;font-size:.88rem;font-weight:600;transition:color .12s,background .12s}.nav__tab:hover{color:var(--cream);background:#f0f7f214}.nav__tab.is-active{color:#0f1a16;background:linear-gradient(#f0f7f2,#d9efdf);border-color:#f0f7f28c;box-shadow:inset 0 1px #ffffff40}.nav__actions{align-items:center;gap:.35rem;margin-left:auto;display:flex}.nav__burger{cursor:pointer;background:#1a2c26d9;border:1px solid #d4c48a59;border-radius:8px;flex-direction:column;justify-content:center;gap:5px;width:2.4rem;height:2.4rem;padding:.55rem;display:flex}.nav__burger span{background:var(--cream);border-radius:1px;height:2px;display:block}.nav__drawer{z-index:30;background:#0f1a16fa;border-bottom:2px solid #d4c48a59;flex-direction:column;padding:.55rem;display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 28px #08100c66}.nav__drawer-item{appearance:none;text-align:left;color:var(--cream);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.9rem 1rem;font-size:1rem;font-weight:500}.nav__drawer-item.is-active,.nav__drawer-item:hover{color:var(--cream);background:#f0f7f21a}@media (width>=900px){.nav{padding:.75rem 1.6rem}.nav__tabs{display:flex}.nav__burger,.nav__drawer{display:none}.nav__logo{font-size:2rem}}.nav__scrim{z-index:25;cursor:pointer;background:#08100c80;border:0;margin:0;padding:0;position:fixed;inset:0}.race-hud{pointer-events:none;z-index:2;background:0 0;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.55rem;padding:.55rem;display:flex;position:absolute;inset:0}.race-hud .panel{pointer-events:auto}.race-hud__top{border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--cream);box-sizing:border-box;background:linear-gradient(165deg,#12202ad1,#0c1822c7);border:1px solid #c9a22761;flex-wrap:nowrap;justify-content:space-between;align-items:flex-end;gap:.55rem .85rem;width:min(22.5rem,100%);max-width:min(22.5rem,100%);min-height:6.35rem;padding:.45rem .7rem;display:flex;box-shadow:0 4px 16px #00000047}.race-hud__top>div:first-child{flex:auto;min-width:0}.race-hud__top h2{color:var(--cream);font-size:1.05rem;font-family:var(--font-display);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;margin-top:.15rem;margin-bottom:0;line-height:1.2;overflow:hidden}.race-hud__top .muted{color:#e8ece49e;font-size:.78rem}.race-hud__top .badge{color:#f0b4bc;background:#b8324838;border-color:#c9646e66;padding:.15rem .45rem;font-size:.62rem}.race-hud__clock{flex-direction:column;flex:0 0 6.75rem;justify-content:flex-end;align-items:flex-end;gap:.05rem;width:6.75rem;min-width:6.75rem;display:flex}.race-hud__clock strong,.race-hud__time{font-family:var(--font-display);color:var(--gold-bright);letter-spacing:.06em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;text-align:right;min-width:5ch;font-size:1.25rem;line-height:1.1;display:block}.race-hud__laps{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--gold-bright);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;text-align:right;white-space:nowrap;min-width:8ch;font-size:.82rem;font-weight:700}.race-hud__side{border-radius:var(--radius);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);max-height:min(46vh,100% - 5.5rem);color:var(--cream);background:linear-gradient(165deg,#12202ae0,#0c1822d6);border:1px solid #c9a22759;flex-direction:column;align-self:flex-end;width:min(260px,100%);margin-left:auto;display:none;overflow:hidden;box-shadow:0 6px 20px #0000004d}.race-hud__side .panel-header{border-bottom-color:#e8ece41a;padding:.7rem .9rem .55rem}.race-hud__side .panel-header h2{color:var(--cream);font-size:1.15rem}.race-hud__side .badge{color:var(--gold-bright);background:#c9a22729;border-color:#c9a22766}.race-hud__side .muted{color:#e8ece494}.race-hud__side strong{color:var(--cream)}.race-hud__field{flex-direction:column;flex:1;gap:.45rem;display:flex;overflow:auto}.race-hud__row{align-items:center;gap:.65rem;display:flex}.race-hud__num{color:#fff;text-shadow:0 1px 2px #00000080;border-radius:6px;flex-shrink:0;place-items:center;width:1.55rem;height:1.55rem;font-size:.8rem;font-weight:600;display:grid}.race-hud__next{border-top:1px solid #e8ece41a;padding:.65rem .9rem .85rem}.race-hud__order{border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--cream);max-width:100%;padding:.4rem .55rem .45rem;padding-bottom:max(.45rem, env(safe-area-inset-bottom,0px));background:linear-gradient(165deg,#12202adb,#0c1822d1);border:1px solid #c9a22752;flex-direction:column;gap:.35rem;width:100%;margin-top:auto;display:flex;transform:translateY(0);box-shadow:0 4px 14px #00000042}.race-hud__order-label{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.race-hud__order-label .muted{color:#e8ece49e;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}.race-hud__order-label .badge{color:var(--gold-bright);background:#c9a22729;border-color:#c9a22766;padding:.12rem .4rem;font-size:.6rem}.race-hud__order-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-flow:row;gap:.35rem;padding-bottom:.1rem;display:flex;overflow:auto hidden}.race-hud__order-row{background:#ffffff0d;border:1px solid #e8ece414;border-radius:6px;flex:none;align-items:center;gap:.35rem;min-width:0;padding:.2rem .4rem .2rem .28rem;display:flex}.race-hud__order-name{color:var(--cream);white-space:nowrap;text-overflow:ellipsis;max-width:7.5rem;font-size:.72rem;font-weight:600;overflow:hidden}.race-hud__place{text-align:center;width:1.1rem;color:var(--gold-bright);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.7rem;font-weight:700}.race-hud__surface{letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:.35rem;margin-top:.35rem;font-size:.7rem;display:inline-flex}.race-hud__surface-chip{border:1px solid #e8ece459;border-radius:2px;flex-shrink:0;width:.65rem;height:.65rem;display:inline-block}.race-hud__surface-chip[data-surface=asphalt]{background:#111318;box-shadow:inset 0 0 0 1px #2a2f38}.race-hud__surface-chip[data-surface=dirt]{background:#8b5a2b}.race-hud__surface-chip[data-surface=turf],.race-hud__surface-chip[data-surface=grass]{background:#3a9a3a}@media (width>=900px){.race-hud{flex-flow:wrap;place-content:space-between;align-items:flex-start;padding:.75rem 1rem}.race-hud__top{flex-wrap:nowrap;align-self:flex-start;width:22.5rem;min-width:22.5rem;max-width:22.5rem;min-height:6.35rem}.race-hud__order{display:none}.race-hud__side{padding-bottom:max(.75rem, env(safe-area-inset-bottom,0px));align-self:flex-end;margin-top:auto;margin-left:0;display:flex;transform:translateY(0)}}.race-hud__order-row.is-finished,.race-hud__row.is-finished{opacity:.92;border-color:#c9a22773}.race-hud__order-row.is-finished{background:#c9a2271f}.race-hud__row.is-finished strong{color:var(--gold-bright)}.race-hud__order-row.is-selectable,.race-hud__row.is-selectable{cursor:pointer}.race-hud__order-row.is-selectable:hover,.race-hud__row.is-selectable:hover{background:#c9a22724;border-color:#c9a22773}.race-hud__row.is-selectable{border:1px solid #0000;border-radius:8px;padding:.2rem .35rem .2rem .15rem}.race-hud__order-row.is-tracked,.race-hud__row.is-tracked{background:#c9a22738;border-color:#c9a227b3;box-shadow:0 0 0 1px #c9a22759}.view-switch{pointer-events:auto;z-index:5;background:#0c1018d1;border:1px solid #ffffff1f;border-radius:8px;align-self:flex-start;align-items:stretch;margin:.35rem 0 0;display:flex;overflow:hidden}.view-switch button{appearance:none;color:#e6ebf5a6;font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:8px 9px;font-size:11px}@media (width<=480px){.view-switch button{letter-spacing:.04em;padding:8px 6px;font-size:10px}}.view-switch button+button{border-left:1px solid #ffffff1a}.view-switch button.on{color:#fff;background:#ffffff1a}@media (width>=900px){.view-switch{margin:0;position:absolute;top:.85rem;left:50%;transform:translate(-50%)}}.results-board{pointer-events:none;z-index:8;padding:1rem .75rem max(1.35rem, env(safe-area-inset-bottom,0px));justify-content:flex-start;align-items:flex-end;display:flex;position:absolute;inset:0}.results-board__card{pointer-events:auto;border-radius:var(--radius-sm,10px);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:min(300px,100% - 1.5rem);max-height:min(58vh,420px);color:var(--cream,#f4f1ea);background:linear-gradient(165deg,#12202aeb,#0c1822e0);border:1px solid #c9a22780;padding:.85rem .95rem .7rem;overflow:auto;box-shadow:0 12px 40px #0006}.results-board__head h2{font-family:var(--font-display,Georgia, serif);letter-spacing:.02em;color:var(--cream,#f4f1ea);margin:.15rem 0;font-size:1.15rem}.results-board__head .muted{color:#e8ece49e;margin:0;font-size:.78rem}.results-board__kicker{letter-spacing:.18em;text-transform:uppercase;color:#142038;background:var(--gold-bright,#e8c547);padding:.12rem .45rem;font-size:.62rem;font-weight:800;display:inline-block}.results-board__winner{background:#c9a22729;border:1px solid #c9a22773;border-radius:8px;align-items:center;gap:.55rem;margin:.75rem 0 .65rem;padding:.5rem .55rem;display:flex}.results-board__win-label{letter-spacing:.16em;text-transform:uppercase;color:var(--gold-bright,#e8c547);font-size:.62rem;font-weight:800}.results-board__winner strong{font-family:var(--font-display,Georgia, serif);font-size:1.05rem}.results-board__num{font-variant-numeric:tabular-nums;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;min-width:1.55rem;height:1.55rem;padding:0 .28rem;font-size:.85rem;font-weight:800;display:inline-flex}.results-board__list{flex-direction:column;gap:.28rem;margin:0;padding:0;list-style:none;display:flex}.results-board__list li{border-radius:6px;grid-template-columns:2.4rem 1.7rem 1fr;align-items:center;gap:.4rem;padding:.22rem .15rem;display:grid}.results-board__list li.is-board{background:#c9a2271a}.results-board__place{font-variant-numeric:tabular-nums;color:#e8ece4b8;font-size:.78rem;font-weight:700}.results-board__list li[data-place="1"] .results-board__place{color:var(--gold-bright,#e8c547)}.results-board__name{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:650;overflow:hidden}.race-view{background:#87b8e8;flex:1;width:100%;min-height:0;margin:0;padding:0;position:relative;overflow:hidden}.race-view__canvas{width:100%;height:100%;position:absolute;inset:0}.race-view__canvas canvas{display:block;width:100%!important;height:100%!important}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--cream:#f0f7f2;--cream-soft:#e2efe6;--cream-deep:#c5ddcc;--paper:#243f32;--turf-soft:#15261f;--turf-mid:#11201a;--turf-deep:#0c1813;--sage:#1a2c26;--ink:#f0f7f2;--ink-soft:#d9efdf;--navy:#1a2c26;--navy-mid:#2a4b38;--navy-deep:#0f1a16;--gold:#d4c48a;--gold-bright:#e8d9a8;--gold-dim:#b8a872;--muted:#9bc4a8;--muted-light:#b3dfb8;--accent:#d45a6a;--accent-soft:#e07885;--success:#7dcb8a;--danger:#d4685a;--track-dirt:tan;--radius:12px;--radius-sm:8px;--font-display:"Fraunces", "Cormorant Garamond", Georgia, serif;--font-body:"Source Sans 3", "IBM Plex Sans", system-ui, sans-serif;--font-logo:"Source Sans 3", "IBM Plex Sans", system-ui, sans-serif;--logo-dot:#c5ddcc;--shadow-soft:0 8px 28px #0006;--shadow-card:0 4px 18px #00000052;--border-gold:1px solid #d4c48a59;--border-ink:1px solid #f0f7f21f;--bg-deep:var(--navy-deep);--bg-panel:#1e352a;--bg-elevated:#2a4b38;--bg-card:var(--paper);--brass:var(--gold);--brass-bright:var(--gold-bright);--brass-dim:var(--gold-dim);--warm:var(--cream);--wood:var(--navy-mid);--wood-light:#3a6a4a;--shadow-panel:var(--shadow-soft);--border-brass:var(--border-gold)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0}body{font-family:var(--font-body);background:var(--turf-soft);color:var(--ink);-webkit-font-smoothing:antialiased;background-image:radial-gradient(90% 55% at 50% -15%,#d4c48a0f,#0000 55%),radial-gradient(55% 45% at 100% 100%,#3a6a4a2e,#0000 50%),radial-gradient(40% 35% at 0 80%,#2a4b3833,#0000 45%),linear-gradient(#1a2c26 0%,#15261f 42%,#11201a 100%)}#nl-hud-frame,#nl-badge-frame,iframe[id^=nl-],iframe[src*=netlify],[data-nf-variant],a[href*=netlify\.com][class*=badge],.netlify-badge,#netlify-badge{visibility:hidden!important;opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;display:none!important}button,input,select{font:inherit;color:inherit}a{color:var(--accent-soft)}h1,h2,h3{font-family:var(--font-display);letter-spacing:.01em;color:var(--ink);margin:0 0 .5rem;font-weight:600}.app-shell{background:0 0;flex-direction:column;height:100%;min-height:100%;display:flex}.main-content{background:0 0;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.panel{border:var(--border-ink);border-radius:var(--radius);box-shadow:var(--shadow-card);background:#1e352af0}.panel-header{border-bottom:1px solid #e8ece414;justify-content:space-between;align-items:baseline;gap:1rem;padding:1.15rem 1.35rem .85rem;display:flex}.panel-header h2{color:var(--ink);font-size:1.75rem;font-weight:650}.panel-body{padding:1rem 1.35rem 1.35rem}.muted{color:var(--muted);font-size:.92rem}.badge{color:var(--gold-bright);letter-spacing:.06em;text-transform:uppercase;background:#d4c48a1f;border:1px solid #d4c48a52;border-radius:999px;align-items:center;gap:.35rem;padding:.22rem .6rem;font-size:.72rem;font-weight:600;display:inline-flex}.badge[data-status=live],.badge.is-live{color:#f0b4bc;background:#b8324833;border-color:#d45a6a66}.badge[data-status=final],.badge.is-final{color:var(--ink-soft);background:#e8ece40f;border-color:#e8ece429}.badge[data-status=upcoming],.badge.is-upcoming{color:var(--success);background:#6aad6a24;border-color:#6aad6a59}.table{border-collapse:collapse;width:100%;font-size:.95rem}.table th,.table td{text-align:left;color:var(--ink);border-bottom:1px solid #e8ece412;padding:.8rem .55rem}.table th{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:.72rem;font-weight:600}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:#f0f7f20f}.table strong{color:var(--ink);font-weight:600}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.1rem;display:grid}.card{border:var(--border-ink);border-radius:var(--radius);box-shadow:var(--shadow-card);background:#1e352af0;padding:1.15rem 1.2rem 1.25rem;position:relative;overflow:hidden}.card:before{content:"";background:linear-gradient(90deg, var(--gold), var(--gold-bright), var(--gold));height:3px;position:absolute;top:0;left:0;right:0}.card h3{color:var(--ink);font-size:1.35rem;font-weight:650}.btn{appearance:none;border:var(--border-gold);color:var(--ink);border-radius:var(--radius-sm);cursor:pointer;background:#1a2c23eb;padding:.55rem 1rem;transition:border-color .15s,transform .1s,background .15s}.btn:hover{border-color:var(--gold);background:#2a4b38f2}.btn:active{transform:translateY(1px)}.btn-primary{background:linear-gradient(180deg, var(--accent-soft), #b83248);color:#fff;border-color:#b8324873;font-weight:600}.view-scroll{background:0 0;flex:1;padding:1.25rem 1rem 2rem;overflow:auto}.view-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 1.5rem;margin-bottom:1.25rem;display:flex}.view-hero h1{margin:0;font-size:clamp(1.85rem,3vw,2.4rem);line-height:1.15}.view-hero p{color:var(--muted);max-width:36rem;margin:.35rem 0 0;line-height:1.45}.view-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--gold-bright);margin-bottom:.35rem;font-size:.72rem;font-weight:700;display:inline-block}@media (width>=900px){.view-scroll{padding:1.75rem 2.25rem 2.5rem}}.badge[data-mode=live]{color:#b8e0c0;background:#2e7d4638;border-color:#5aaa6e73}.badge[data-mode=demo]{color:#e0d0a0;background:#78643c38;border-color:#b4965066}.table-row-clickable{cursor:pointer}.table-row-clickable:focus-visible td{outline-offset:-2px;outline:2px solid #d4c48a80}.modal-backdrop{z-index:40;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08100cad;justify-content:center;align-items:flex-end;padding:.75rem;display:flex;position:fixed;inset:0}.modal-sheet{width:min(520px,100%);max-height:min(88vh,720px);margin-bottom:env(safe-area-inset-bottom,0px);box-shadow:var(--shadow-soft);overflow:auto}@media (width>=700px){.modal-backdrop{align-items:center}}.racer-detail{flex-direction:column;gap:1rem;display:flex}.racer-detail__identity{align-items:center;gap:.85rem;display:flex}.racer-detail__swatch{border:1px solid #e8ece433;border-radius:8px;flex-shrink:0;width:2.5rem;height:2.5rem}.racer-detail__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}@media (width>=480px){.racer-detail__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.racer-detail__section{border-top:1px solid #e8ece414;padding-top:.25rem}.racer-detail__attrs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem .75rem;display:grid}@media (width>=480px){.racer-detail__attrs{grid-template-columns:repeat(5,minmax(0,1fr))}}.racer-detail__attr{background:#ffffff0a;border:1px solid #e8ece40f;border-radius:8px;flex-direction:column;gap:.15rem;padding:.45rem .55rem;display:flex}.racer-detail__finishes{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.racer-detail__finishes li{background:#ffffff0a;border-radius:8px;grid-template-columns:2.5rem 1fr auto;align-items:center;gap:.55rem;padding:.4rem .5rem;display:grid}.schedule-toolbar{flex-wrap:wrap;align-items:center;gap:.65rem 1rem;display:flex}.schedule-toggle{color:var(--ink-soft);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;font-size:.85rem;display:inline-flex}.schedule-toggle input{accent-color:var(--gold);width:1rem;height:1rem}.race-detail-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.race-detail-list li{background:#ffffff0a;border:1px solid #e8ece40f;border-radius:8px;align-items:center;gap:.55rem;padding:.45rem .5rem;display:flex}.race-detail-place{width:2.25rem;color:var(--gold-bright);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.85rem;font-weight:700}.race-detail-num{color:#fff;text-shadow:0 1px 2px #00000080;border-radius:6px;flex-shrink:0;place-items:center;width:1.55rem;height:1.55rem;font-size:.8rem;font-weight:600;display:grid}.card-button{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;display:block}.card-button:hover,.card-button:focus-visible{border-color:var(--gold);outline:none}.season-results{border-top:1px solid #f0f7f214;max-height:min(70vh,720px);overflow:auto}.season-race-row{border-bottom:1px solid #f0f7f214;grid-template-columns:minmax(9rem,.9fr) 1.4fr;gap:.65rem 1rem;padding:.7rem .15rem;display:grid}.season-finish{flex-wrap:wrap;gap:.25rem .85rem;margin:0;padding:0;list-style:none;display:flex}.season-finish li{margin:0}@media (width<=640px){.season-race-row{grid-template-columns:1fr}}
