:root{--color-primary:#b1ff57;--color-primary-dark:#9de63f;--color-accent:#b1ff57;--color-on-primary:#0b0e10;--color-bg-dark:#0b0e10;--color-bg-dark-card:#151a1e;--color-bg-dark-hover:#1c2228;--color-bg-dark-border:#2a3038;--color-fg-max:#ffffff;--color-fg-strong:#f3f4f6;--color-fg-default:#e5e7eb;--color-fg-muted:#d1d5db;--color-fg-faint:#9ca3af;--color-fg-subtle:#8a939e;--color-control-border:#6b7280;--color-danger:#f87171;--color-warn:#fcd34d;--color-ok:#6ee7b7;--color-info:#7dd3fc;--font-mono:"Cascadia Mono",Consolas,ui-monospace,monospace;color-scheme:dark}:root[data-theme=light]{--color-accent:#35660f;--color-bg-dark:#f6f8f2;--color-bg-dark-card:#ffffff;--color-bg-dark-hover:#e8eede;--color-bg-dark-border:#c3d0b0;--color-fg-max:#14180f;--color-fg-strong:#111827;--color-fg-default:#1f2937;--color-fg-muted:#374151;--color-fg-faint:#4b5563;--color-fg-subtle:#5b6470;--color-danger:#b42318;--color-warn:#8a5300;--color-ok:#05603a;--color-info:#026aa2;color-scheme:light}html{--accent:var(--color-accent);--text-label:clamp(15px,1.15vw,22px);--text-cell:clamp(17px,1.3vw,26px);--text-title:clamp(18px,1.4vw,28px);--text-split:clamp(22px,1.7vw,34px);--text-time:clamp(34px,2.6vw,56px);--text-driver:clamp(30px,2.8vw,60px);--text-number:clamp(72px,8vw,150px);--radius-control:8px;--radius-panel:12px;--radius-hero:16px;--title-h:56px;--head-h:44px;--row-h:48px;--line-h:52px;--starter-h:64px;--results-fit:1}@media (max-height:1200px){html{--title-h:48px;--head-h:40px;--row-h:40px;--line-h:44px;--starter-h:56px;--text-number:clamp(64px,5.4vw,104px);--text-driver:clamp(28px,2.2vw,44px);--text-time:clamp(30px,2.2vw,46px)}.current-hero{gap:20px;padding:12px 24px 8px}}*{box-sizing:border-box}body,html{min-height:100%}body{background:var(--color-bg-dark);color:var(--color-fg-strong);font-family:Arial Narrow,Roboto Condensed,Segoe UI,Arial,sans-serif;font-size:var(--text-cell);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2;margin:0;overflow-x:hidden}button{font:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.speaker-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden;padding:16px}.stale-banner{align-items:center;flex:none;background:var(--color-bg-dark-hover);border:2px solid var(--color-warn);border-radius:var(--radius-panel);color:var(--color-warn);display:flex;gap:16px;margin-bottom:16px;min-height:72px;padding:12px 24px}.stale-banner svg{flex-shrink:0;width:36px;height:36px}.stale-banner span{font-size:clamp(24px,2vw,38px);font-style:italic;font-weight:900;letter-spacing:.5px;line-height:1.15;text-transform:uppercase}.stale-banner em{color:var(--color-fg-muted);display:block;font-size:var(--text-cell);font-style:normal;font-weight:700;letter-spacing:0;margin-top:4px;text-transform:none}.speaker-shell.stale .current-panel,.speaker-shell.stale .next-panel,.speaker-shell.stale .recent-finishers-panel{opacity:.5}.top-strip{align-items:stretch;flex:none;background:var(--color-bg-dark-card);border:1px solid var(--color-bg-dark-border);border-radius:var(--radius-panel);display:flex;flex-wrap:wrap;min-height:88px;overflow:hidden}.brand-block,.clock-block,.strip-cell{align-items:center;border-right:1px solid color-mix(in srgb,var(--color-bg-dark-border) 50%,transparent);display:flex;gap:12px;min-width:0;padding:12px clamp(16px,1.25vw,24px)}.event-cell{flex:1 1 160px}.logo-road{align-items:center;color:var(--accent);display:flex;flex-shrink:0}.logo-road svg{width:40px;height:40px}.brand-block h1{color:var(--color-fg-strong);font-size:clamp(20px,1.5vw,30px);letter-spacing:.3px;margin:0}.brand-block h1,.brand-block p{font-style:italic;font-weight:900;line-height:1.1;text-transform:uppercase;white-space:nowrap}.brand-block p{color:var(--accent);font-size:var(--text-label);margin:4px 0 0}.strip-cell svg{color:var(--accent);flex-shrink:0;width:28px;height:28px}.clock-block span,.strip-cell span{color:var(--color-fg-muted);display:block;font-size:var(--text-label);font-weight:800;letter-spacing:.5px;line-height:1.1;text-transform:uppercase}.strip-cell strong{color:var(--color-fg-strong);display:block;font-size:var(--text-title);font-weight:900;line-height:1.2;margin-top:2px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strip-cell div{min-width:0}.event-cell strong{border-bottom:2px solid var(--accent);padding-bottom:4px}.heat-cell em,.starts-cell strong{color:var(--accent);font-style:normal}.live-badge{align-items:center;align-self:center;background:var(--color-primary);border:1px solid transparent;border-radius:var(--radius-control);color:var(--color-on-primary);display:flex;font-size:var(--text-label);font-weight:900;gap:8px;justify-content:center;margin:0 12px;min-height:44px;padding:0 16px;text-transform:uppercase;white-space:nowrap}.live-badge svg{width:22px;height:22px}.live-badge:not(.online){background:var(--color-bg-dark-hover);border-color:currentColor;color:var(--color-fg-faint)}.theme-button{align-items:center;align-self:center;background:var(--color-bg-dark-hover);border:1px solid var(--color-bg-dark-border);border-radius:var(--radius-control);color:var(--accent);cursor:pointer;display:flex;flex-shrink:0;height:44px;justify-content:center;margin:0 8px;padding:0;width:44px}.theme-button svg{width:22px;height:22px}.clock-block{align-items:center;border-right:0;grid-column-gap:12px;column-gap:12px;display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;justify-content:end;margin-left:auto;grid-row-gap:2px;row-gap:2px}.clock-block svg{color:var(--accent);grid-row:1/3;width:28px;height:28px}.clock-block strong{display:block;font-family:var(--font-mono);font-size:clamp(28px,2vw,40px);font-weight:900;line-height:1}.clock-block span{grid-column:2}.dashboard-grid{display:grid;flex:1 1 auto;grid-gap:16px;gap:16px;grid-template-areas:"current side" "finishers side" "results side";grid-template-columns:minmax(0,1fr) clamp(360px,23vw,460px);grid-template-rows:auto auto minmax(0,1fr);min-height:0;padding-top:16px}.panel{background:var(--color-bg-dark-card);border:1px solid var(--color-bg-dark-border);border-radius:var(--radius-panel);min-width:0;overflow:hidden}.current-panel{border-radius:var(--radius-hero);grid-area:current}.side-column{align-content:start;display:grid;grid-gap:16px;gap:16px;grid-area:side;min-height:0;overflow:hidden}.panel-title{align-items:center;background:color-mix(in srgb,var(--color-bg-dark-hover) 60%,transparent);border-bottom:1px solid var(--color-bg-dark-border);display:flex;gap:12px;min-height:var(--title-h);padding:8px 20px}.panel-title svg{color:var(--accent);flex-shrink:0;width:24px;height:24px}.panel-title h2{color:var(--accent);font-size:var(--text-title);font-style:italic;font-weight:900;letter-spacing:.8px;line-height:1.1;margin:0;text-transform:uppercase}.panel-title-toggle{padding:0}.panel-title-toggle h2{flex:1 1 auto;min-width:0}.panel-toggle{align-items:center;background:none;border:0;color:inherit;cursor:pointer;display:flex;gap:12px;min-height:max(44px,var(--title-h));padding:8px 20px;text-align:left;width:100%}.panel-title .panel-chevron{color:var(--accent);flex-shrink:0;height:28px;transition:transform .15s ease;width:28px}.panel-toggle[aria-expanded=false] .panel-chevron{transform:rotate(-90deg)}@media (prefers-reduced-motion:reduce){.panel-title .panel-chevron{transition:none}}@media (hover:hover){.panel-toggle:hover{background:color-mix(in srgb,var(--color-bg-dark-hover) 80%,transparent)}}.panel-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:-4px}.panel-toggle-title{flex:none;white-space:nowrap}.panel-summary{color:var(--color-fg-muted);font-size:var(--text-cell);font-style:normal;font-weight:700;letter-spacing:0;min-width:0;overflow:hidden;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.panel-summary-dot{margin-right:4px}.panel-body{min-width:0}.panel>.panel-body[hidden],:root[data-panel-current=collapsed] .current-panel>.panel-body,:root[data-panel-finishers=collapsed] .recent-finishers-panel>.panel-body{display:none}.current-hero{align-items:center;display:grid;grid-gap:24px;gap:24px;grid-template-columns:auto 1fr;padding:20px 24px 12px}.giant-number{color:var(--color-fg-strong);font-size:var(--text-number);font-style:italic;font-weight:950;letter-spacing:-2px;line-height:.85;min-width:120px;text-align:center}.driver-data{border-left:4px solid var(--accent);min-width:0;padding-left:24px}.driver-data h2{color:var(--color-fg-strong);font-size:var(--text-driver);font-style:italic;font-weight:950;line-height:1.05;margin:0 0 6px;text-transform:uppercase;text-wrap:balance}.driver-data h2,.driver-data h3{overflow-wrap:break-word;word-break:break-word}.driver-data h3{color:var(--color-fg-muted);font-size:clamp(22px,2vw,36px);font-weight:800;line-height:1.15;margin:0 0 12px}.driver-data p{align-items:center;color:var(--color-fg-muted);display:flex;font-size:var(--text-cell);font-weight:650;gap:10px;margin:6px 0;min-height:32px}.driver-data p svg{flex-shrink:0;width:24px;height:24px}.driver-data p strong{color:var(--accent);font-weight:900;margin-left:2px}.timing-row{background:color-mix(in srgb,var(--color-bg-dark-hover) 50%,transparent);border:1px solid var(--color-bg-dark-border);border-radius:var(--radius-control);display:grid;grid-gap:0;gap:0;grid-template-columns:1.2fr .9fr auto;margin:0 20px 16px}.metric-box{align-items:center;border-right:1px solid var(--color-bg-dark-border);display:flex;gap:16px;min-width:0;padding:12px 20px}.metric-box svg{color:var(--color-fg-muted);flex-shrink:0;width:32px;height:32px}.metric-box div{min-width:0}.metric-box span{color:var(--color-fg-muted);display:block;font-size:var(--text-label);font-weight:800;line-height:1.1;text-transform:uppercase}.metric-box strong{color:var(--color-fg-strong);display:block;font-family:var(--font-mono);font-size:var(--text-time);font-weight:950;line-height:1.1;margin-top:2px;white-space:nowrap}.metric-box.accent strong,.metric-box.accent svg{color:var(--accent)}.status-box{align-items:center;align-self:center;background:var(--color-primary);border:1px solid transparent;border-radius:var(--radius-control);color:var(--color-on-primary);display:flex;font-size:var(--text-cell);font-style:italic;font-weight:900;justify-content:center;margin:0 20px;min-height:56px;padding:0 20px;text-transform:uppercase;white-space:nowrap}.status-box.unknown{color:var(--color-fg-faint)}.status-box.finished,.status-box.unknown{background:var(--color-bg-dark-hover);border-color:currentColor}.status-box.finished{color:var(--color-warn)}.focus-main{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(300px,.45fr) 1fr;margin:0 20px 20px}.heat-history,.split-board{background:color-mix(in srgb,var(--color-bg-dark-hover) 70%,transparent);border:1px solid var(--color-bg-dark-border);border-radius:var(--radius-control);min-width:0;overflow:hidden}.heat-history header,.split-board header{align-items:center;border-bottom:1px solid var(--color-bg-dark-border);display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:space-between;min-height:48px;padding:8px 16px}.heat-history header span,.split-board header span{color:var(--accent);font-size:var(--text-label);font-weight:900;text-transform:uppercase;white-space:nowrap}.heat-history header strong,.split-board header strong{color:var(--color-fg-strong);font-family:var(--font-mono);font-size:var(--text-cell);font-weight:900;white-space:nowrap}.split-list{padding:4px 16px 12px}.split-row{align-items:center;border-bottom:1px solid var(--color-bg-dark-border);display:flex;gap:12px;justify-content:space-between;min-height:52px}.split-row span{color:var(--color-fg-muted);font-size:var(--text-label);font-weight:800;text-transform:uppercase}.split-row strong{color:var(--accent);font-family:var(--font-mono);font-size:var(--text-split);font-weight:950;white-space:nowrap}.heat-history-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:16px}.heat-card{border:1px solid var(--color-bg-dark-border);border-radius:var(--radius-control);min-width:0;overflow:hidden}.heat-card-head{align-items:center;background:color-mix(in srgb,var(--color-bg-dark-hover) 50%,transparent);display:flex;gap:12px;justify-content:space-between;min-height:44px;padding:8px 12px}.heat-card-head span{color:var(--accent);font-size:var(--text-label);font-style:italic;font-weight:900;text-transform:uppercase}.heat-card-head strong{color:var(--color-fg-strong);font-family:var(--font-mono);font-size:var(--text-cell);font-weight:900;white-space:nowrap}.heat-splits{display:grid;grid-gap:4px;gap:4px;padding:8px 12px 12px}.heat-splits span{align-items:center;display:flex;gap:12px;justify-content:space-between;min-height:32px}.heat-splits em{color:var(--color-fg-faint);font-size:var(--text-label);font-style:normal;font-weight:800;min-width:0;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.heat-splits b{color:var(--color-fg-strong);flex:none;font-family:var(--font-mono);font-size:var(--text-cell);font-weight:900;white-space:nowrap}.log-list,.starter-list{padding:12px 16px 16px}.starter-row{align-items:center;border-bottom:1px solid var(--color-bg-dark-border);grid-column-gap:12px;column-gap:12px;display:grid;grid-template-areas:"nr name state" "nr car state";grid-template-columns:auto minmax(0,1fr) auto;min-height:var(--starter-h);padding:4px 8px;grid-row-gap:2px;row-gap:2px}.starter-row.active{border:none;margin-bottom:4px}.starter-row span,.starter-row.active{background:var(--color-primary);border-radius:var(--radius-control);color:var(--color-on-primary)}.starter-row span{align-items:center;display:flex;font-size:var(--text-cell);font-weight:900;grid-area:nr;justify-content:center;line-height:1;min-height:40px;min-width:56px;padding:0 10px}.starter-row b,.starter-row em,.starter-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.starter-row strong{color:var(--color-fg-strong);font-size:var(--text-cell);font-weight:900;grid-area:name}.starter-row em{color:var(--color-fg-faint);display:block;font-size:var(--text-label);font-style:normal;grid-area:car}.starter-row b{color:var(--color-fg-muted);font-size:var(--text-label);font-weight:800;grid-area:state;text-align:right;text-transform:uppercase}.starter-row.active b,.starter-row.active em,.starter-row.active strong{color:var(--color-on-primary)}.starter-row.active span{background:var(--color-on-primary);color:var(--color-primary)}.recent-finishers-panel{grid-area:finishers}.finishers-list{padding:8px 16px 12px}.finisher-row{align-items:center;border-bottom:1px solid var(--color-bg-dark-border);display:grid;grid-gap:12px;gap:12px;grid-template-columns:auto minmax(0,1.2fr) minmax(0,.8fr) minmax(0,1fr) auto;min-height:var(--line-h);padding:4px 8px}.finisher-number{align-items:center;background:var(--color-primary);border-radius:var(--radius-control);color:var(--color-on-primary);display:inline-flex;font-size:var(--text-cell);font-weight:900;justify-content:center;line-height:1;min-height:40px;min-width:56px;padding:0 10px}.finisher-name{color:var(--color-fg-strong);font-size:var(--text-cell);font-weight:800}.finisher-name,.finisher-vehicle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finisher-vehicle{color:var(--color-fg-muted);font-size:var(--text-label)}.finisher-time{color:var(--accent);font-weight:900;order:2;text-align:right;white-space:nowrap}.finisher-splits,.finisher-time{font-family:var(--font-mono);font-size:var(--text-cell)}.finisher-splits{color:var(--color-fg-muted);display:flex;flex-wrap:nowrap;font-weight:800;gap:16px;justify-content:flex-end;min-width:0;order:1;overflow:hidden}.finisher-splits span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.results-panel{display:flex;flex-direction:column;grid-area:results;min-height:0}.results-rows,.results-table{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.results-rows{overflow:hidden}.results-more{background-image:radial-gradient(circle,var(--color-fg-faint) 3px,transparent 3.5px),radial-gradient(circle,var(--color-fg-faint) 3px,transparent 3.5px),radial-gradient(circle,var(--color-fg-faint) 3px,transparent 3.5px),linear-gradient(to bottom,transparent,var(--color-bg-dark-hover));background-position:calc(50% - 18px),50%,calc(50% + 18px),0 0;background-repeat:no-repeat;background-size:12px 12px,12px 12px,12px 12px,100% 100%;flex:none;height:24px}.result-head,.result-row{grid-column-gap:8px;column-gap:8px;display:grid;grid-template-columns:clamp(52px,3.75vw,72px) clamp(60px,4.4vw,84px) minmax(0,2fr) minmax(0,1fr) clamp(120px,9.4vw,180px) clamp(106px,8.3vw,160px);padding:0 20px}.result-head{background:color-mix(in srgb,var(--color-bg-dark-hover) 60%,transparent);color:var(--color-fg-muted);font-size:var(--text-label);font-weight:900;min-height:var(--head-h);text-transform:uppercase}.result-head,.result-row{align-items:center;border-bottom:1px solid var(--color-bg-dark-border);flex:none}.result-row{height:var(--row-h)}.result-row.running{background:color-mix(in srgb,var(--accent) 10%,transparent)}.result-row span{color:var(--color-fg-strong);font-size:var(--text-cell);font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-row span:first-child,.result-row span:nth-child(2),.result-row span:nth-child(5),.result-row span:nth-child(6){font-family:var(--font-mono);font-weight:900;text-align:center}.result-row span:nth-child(6){color:var(--color-danger)}.results-legend{align-items:center;color:var(--color-fg-faint);display:flex;flex:none;flex-wrap:wrap;font-size:var(--text-label);font-weight:700;gap:8px 24px;margin-top:auto;min-height:var(--head-h);padding:4px 20px}.results-legend b{font-family:var(--font-mono);font-weight:900;margin-right:6px}.status-line{align-items:center;display:flex;flex-wrap:wrap;gap:4px 12px;min-height:var(--line-h);padding:4px 20px}.status-line span{color:var(--color-fg-strong);display:flex;flex:0 0 auto}.status-line span svg{width:24px;height:24px}.status-line strong{color:var(--color-fg-strong);flex:0 0 auto;font-size:var(--text-label);font-weight:750;text-transform:uppercase;white-space:nowrap}.status-line i{border-bottom:1px dotted var(--color-bg-dark-border);display:block;flex:1 1;height:1px;min-width:0}.status-line b{color:var(--color-danger);flex:0 0 auto;font-size:var(--text-label);font-weight:900;margin-left:auto;text-transform:uppercase;white-space:nowrap}.status-line b.good{color:var(--color-ok)}.status-dns{color:var(--color-warn)!important}.status-dnf,.status-dsq{color:var(--color-danger)!important}.status-ok{color:var(--color-fg-muted)!important}.empty-panel{align-items:center;color:var(--color-fg-faint);display:flex;font-size:var(--text-cell);font-style:italic;font-weight:800;justify-content:center;min-height:160px;padding:16px;text-align:center;text-transform:uppercase}.empty-panel.compact{font-size:var(--text-label);min-height:64px}.waiting-panel{align-items:center;color:var(--accent);display:flex;flex-direction:column;font-size:clamp(40px,5vw,88px);font-style:italic;font-weight:950;gap:24px;justify-content:center;line-height:1.05;min-height:360px;padding:40px;text-align:center;text-transform:uppercase;text-wrap:balance}.waiting-panel strong{color:var(--color-fg-strong);font-family:var(--font-mono);font-size:clamp(36px,4vw,72px);font-style:normal;line-height:1}@media (min-width:1500px){.current-panel>.panel-body{display:grid;grid-template-areas:"hero focus" "timing focus";grid-template-columns:minmax(0,1fr) minmax(360px,.5fr);grid-template-rows:auto 1fr}.current-hero{align-self:start;grid-area:hero}.timing-row{align-self:start;grid-area:timing}.focus-main{align-content:start;grid-area:focus;grid-template-columns:1fr;margin:20px 20px 20px 0}.waiting-panel{grid-column:1/-1}}@media (max-height:1200px){.finisher-row:nth-child(n+3),.starter-row:nth-child(n+5){display:none}}@media (max-height:799px){.focus-main,.recent-finishers-panel{display:none}}@media (max-width:1200px){html{--results-fit:0}.speaker-shell{height:auto;min-height:100vh;overflow:visible}.dashboard-grid{flex:none;grid-template-areas:"current" "finishers" "side" "results";grid-template-columns:1fr;grid-template-rows:none}.side-column{grid-template-columns:1fr 1fr;overflow:visible}}@media (max-width:980px){.speaker-shell{padding:12px}.top-strip{align-items:stretch;flex-direction:column}.brand-block,.clock-block,.strip-cell{border-bottom:1px solid var(--color-bg-dark-border);border-right:0;justify-content:flex-start;padding:12px 16px}.live-badge{margin:8px 16px}.clock-block{justify-content:start;margin-left:0}.current-hero{grid-template-columns:1fr;padding:16px 20px 12px}.giant-number{font-size:72px}.timing-row{margin:0 12px 12px}.focus-main,.timing-row{grid-template-columns:1fr}.focus-main{margin:0 12px 16px}.result-head,.result-row{grid-template-columns:52px 60px minmax(0,1fr) 110px 100px;padding:0 12px}.result-head span:nth-child(4),.result-row span:nth-child(4){display:none}.starter-row{grid-template-areas:"nr name state";grid-template-columns:auto minmax(0,1fr) auto}.starter-row em{display:none}.side-column{grid-template-columns:1fr}.driver-data{border-left:0;border-top:4px solid var(--accent);margin-top:8px;padding:16px 0 0}.metric-box{border-bottom:1px solid var(--color-bg-dark-border);border-right:0}.status-box{margin:12px}}