:root{color-scheme:dark;--bg:#0c1015;--panel:#131920;--border:#29313a;--text:#eaf0f4;--muted:#8b98a6;--accent:#d9fb70;--blue:#70b8ff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px 'Segoe UI',Arial,sans-serif}a{color:inherit}header{height:76px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:24px;padding:0 4vw}.brand{text-decoration:none;font-weight:800;letter-spacing:2px;font-size:15px}.brand span{color:var(--accent)}.event-tag{margin-left:auto;font-size:11px;letter-spacing:1.5px;color:var(--muted)}i{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin:0 12px}.download{text-decoration:none;font-size:12px;padding:8px 12px;border:1px solid var(--border);border-radius:5px}main{max-width:1640px;margin:auto;padding:40px 4vw}.eyebrow{color:var(--muted);font-size:10px;letter-spacing:2px;font-weight:700}.heading{display:flex;justify-content:space-between;align-items:center;margin:18px 0 38px}h1{font-size:clamp(28px,3.2vw,48px);line-height:1.16;margin:0;font-weight:650;letter-spacing:-1.8px}h1 span{color:#8d9aa7}.heading p{color:var(--muted);margin-top:18px}.race-total{display:grid;grid-template-columns:auto auto;gap:10px 22px;align-items:baseline}.race-total strong{font-size:30px;font-weight:500;font-variant-numeric:tabular-nums}.race-total span{color:var(--muted);font-size:12px}.layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:30px}aside{border-top:1px solid var(--border);padding-top:20px}.aside-head{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px}.aside-head span{color:var(--muted)}input,select,button{font:inherit;color:inherit;background:#171e26;border:1px solid var(--border);border-radius:5px;padding:9px 10px}button,select{cursor:pointer}input:focus-visible,button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#search{width:100%;margin:18px 0 12px;font-size:12px}.team{width:100%;display:flex;align-items:center;gap:12px;border:0;background:none;text-align:left;padding:12px 9px;margin:2px 0;line-height:1.4}.team:hover{background:#1b242e}.team.active{background:#d9fb7010;color:var(--accent);box-shadow:inset 2px 0 var(--accent)}.number{font-size:12px;color:var(--muted);min-width:30px}.team-name{flex:1;font-size:12px}.team small{color:var(--muted);font-size:10px}.muted{color:var(--muted);font-size:12px;line-height:1.7}.aside-note{font-size:10px;margin:20px 8px}.selection{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:23px}.selection h2{font-size:25px;font-weight:600;letter-spacing:-.6px;margin:8px 0}.selection label{display:flex;flex-direction:column;gap:8px;color:var(--muted);font-size:11px}.selection select{max-width:290px;color:var(--text)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px}.metric{padding:18px;background:var(--panel);border:1px solid var(--border);border-radius:7px}.metric strong{display:block;font-size:25px;font-weight:500;margin:12px 0 6px;font-variant-numeric:tabular-nums}.metric:first-child strong{color:var(--accent)}.metric span{font-size:11px;color:var(--muted)}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.tabs{display:flex;gap:3px;padding:4px;border:1px solid var(--border);border-radius:7px}.tabs button{background:none;border:0;font-size:12px}.tabs button.active{background:var(--accent);color:#18200c}.controls{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:12px}input[type=checkbox]{accent-color:var(--accent);vertical-align:middle}.controls select{padding:5px}.chart-card,.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:22px}.chart-head{display:flex;justify-content:space-between;gap:12px}.chart-head h3,.panel h3{margin:0 0 8px;font-weight:500;font-size:17px}.chart-head p{font-size:11px;color:var(--muted);margin:0;line-height:1.7}#legend{font-size:10px;display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;max-width:45%}.legend-dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:7px}.range{display:flex;gap:9px;align-items:center;font-size:10px;color:var(--muted);margin-top:18px}.range input{width:65px;padding:5px;font-size:11px}.range button{font-size:10px;padding:6px 8px;background:none;margin-left:auto}.chart-wrap{position:relative;height:320px;margin-top:12px}canvas{width:100%;height:100%;display:block}#tooltip{position:absolute;pointer-events:none;background:#202b36;box-shadow:0 8px 30px #0007;border:1px solid #4b5968;border-radius:6px;padding:12px;font-size:11px;line-height:1.8;z-index:2;min-width:180px;max-width:290px}.chart-foot{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px}.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.panel .eyebrow{margin-bottom:12px}#sectors{display:flex;gap:20px;align-items:center;margin:22px 0}#sectors div{flex:1;font-size:10px;color:var(--muted)}#sectors strong{display:block;color:var(--text);font-size:18px;font-weight:500;margin-top:7px}.potential{color:var(--accent)!important}.compare-row{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;margin:18px 0}.compare-row strong{font-size:20px;font-weight:500;white-space:nowrap}.delta{color:var(--accent);font-size:12px}.table-head{display:flex;align-items:center;justify-content:space-between}.table-head button{font-size:11px}.table-scroll{overflow:auto;max-height:440px;margin-top:18px}table{border-collapse:collapse;width:100%;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}td,th{text-align:right;padding:12px;border-bottom:1px solid var(--border)}th{position:sticky;top:0;background:#19212b;font-weight:400;color:var(--muted);font-size:10px}td:first-child,th:first-child{text-align:left}td:nth-child(7){font-size:10px;color:var(--muted)}tr.best td:nth-child(3){color:var(--accent)}details{margin-top:16px;font-size:12px;line-height:1.8}summary{cursor:pointer;color:var(--muted)}#method{margin-top:15px;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;margin-top:45px;padding-top:20px;border-top:1px solid var(--border);font-size:10px;letter-spacing:1px;color:var(--muted)}[hidden]{display:none!important}@media(min-width:1600px){.chart-wrap{height:380px}}@media(max-width:1100px){.layout{grid-template-columns:190px minmax(0,1fr);gap:20px}.metric{padding:12px}.metric strong{font-size:21px}.selection{align-items:flex-start}.selection h2{font-size:21px}.selection select{max-width:210px}.toolbar{flex-wrap:wrap}#sectors{gap:10px}#sectors strong{font-size:15px}.chart-head{flex-direction:column}#legend{max-width:100%}}@media(max-width:760px){header{padding:0 18px;gap:10px;height:65px}.brand{font-size:11px;letter-spacing:1px}.event-tag{display:none}.download{margin-left:auto;font-size:10px}.download+.download{margin-left:0}main{padding:26px 18px}.heading{align-items:flex-start;margin-bottom:25px}.heading p{font-size:11px;max-width:220px}.race-total{gap:8px;font-size:10px}.race-total strong{font-size:20px}.race-total span{font-size:9px}.layout{display:block}aside{margin-bottom:24px}#teams{display:flex;overflow:auto;max-height:100px;gap:6px}.team{min-width:150px;border:1px solid var(--border)}.team small,.aside-note{display:none}#search{margin:10px 0}.selection{flex-direction:column;gap:8px}.selection label{width:100%}.selection select{max-width:none;width:100%}.metrics{grid-template-columns:1fr 1fr;gap:8px}.toolbar{gap:10px}.tabs button{font-size:11px;padding:8px}.chart-card,.panel{padding:16px}.chart-wrap{height:280px}.lower-grid{grid-template-columns:1fr}.chart-foot span:last-child{display:none}td,th{padding:10px 8px}footer{flex-direction:column;font-size:9px}h1{font-size:27px;letter-spacing:-1px}}

#chart{cursor:crosshair;touch-action:none;user-select:none}#brush{position:absolute;pointer-events:none;background:#d9fb7026;border-left:1px solid #d9fb70;border-right:1px solid #d9fb70;z-index:1}#chartHelp{font-size:10px;margin:12px 0 4px}#segment{color:var(--accent);margin:12px 0}

.race-controls{display:flex;gap:20px;align-items:flex-end;margin:0 0 18px;flex-wrap:wrap}.race-controls label{display:flex;flex-direction:column;gap:8px;font-size:11px;color:var(--muted)}.race-controls select{min-width:230px;color:var(--text)}.race-controls p{flex:1;margin:0 0 7px}.status-tag{font-size:10px;letter-spacing:1px;color:var(--accent)}.notice{border:1px solid #9c803950;background:#a1811910;border-radius:7px;padding:13px 16px;font-size:12px;line-height:1.7;color:#dbc78b;margin:0 0 22px}.notice a{white-space:nowrap}.team-class{display:block;color:var(--muted);font-size:10px;margin-top:4px}#teamInfo{margin:4px 0 0;font-size:11px}.selection{align-items:flex-start}select:disabled{cursor:default;opacity:.7}@media(max-width:760px){.race-controls{gap:12px}.race-controls label{flex:1;min-width:180px}.race-controls select{width:100%;min-width:0}.race-controls p{flex-basis:100%;margin:0}.notice{font-size:11px;padding:12px}.selection select{font-size:12px}}

.brand{letter-spacing:.3px;line-height:1.4;flex:1;min-width:0;font-size:14px}@media(max-width:760px){.brand{font-size:11px;letter-spacing:0}.download{flex-shrink:0}}

.multi-compare{padding:18px;border:1px solid var(--border);border-radius:8px;background:var(--panel);margin-bottom:22px}.multi-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.multi-head .eyebrow{margin-bottom:7px}.multi-actions{display:flex;gap:8px}.multi-actions button{font-size:11px}.compare-option{display:flex;gap:8px;align-items:center;cursor:pointer;background:#19212b;padding:10px 12px;border:1px solid var(--border);border-radius:6px;font-size:12px}.compare-option.focused{border-color:#d9fb7060}.compare-option input{margin:0;accent-color:var(--accent);flex-shrink:0}.compare-option .legend-dot{margin:0;flex-shrink:0}.compare-option span:last-child{overflow-wrap:anywhere}#compareOptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.compare-row small{display:block;color:var(--muted);font-size:10px;margin:6px 0 0 15px}.chart-head{flex-wrap:wrap}#legend{max-width:100%;gap:10px 16px;line-height:1.5}#tooltip{max-height:280px;overflow:auto}@media(max-width:760px){.multi-head{align-items:flex-start;flex-direction:column}.multi-actions{width:100%;flex-wrap:wrap}.multi-actions button{flex:1}#compareOptions{grid-template-columns:1fr}.multi-compare{padding:14px}.compare-row strong{font-size:18px}}

.tabs{flex-wrap:wrap}

h1 .race-headline{color:var(--text)}.race-controls select#race{max-width:100%;width:390px}#raceLoadStatus:empty{display:none}#compareOptions{max-height:340px;overflow:auto}

#tooltip{min-width:210px;max-width:min(310px,100%);line-height:1.4;padding:14px}
.tooltip-title{font-size:11px;font-weight:700;color:#c1cbd5;margin-bottom:10px}
.tooltip-team{border-left:3px solid var(--team-color);padding-left:10px;margin-top:12px}
.tooltip-name{color:var(--team-color);font-size:11px;font-weight:600;overflow-wrap:anywhere}
.tooltip-time{display:block;font-size:27px;line-height:1.2;font-weight:750;letter-spacing:-.6px;font-variant-numeric:tabular-nums;color:#fff;margin:4px 0}
.tooltip-meta{font-size:11px;color:#d0dae3}.tooltip-stamp{font-size:10px;color:#9aabba;margin-top:3px}

.strategy-panel{margin-top:18px}.strategy-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.strategy-head label{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--muted)}.strategy-head select{font-size:12px}.strategy-panel h4{font-size:14px;font-weight:600;margin:22px 0 8px}.strategy-panel .metrics{margin:18px 0 24px}.strategy-panel .metric strong{font-size:23px}.strategy-panel details{border-top:1px solid var(--border);padding-top:16px;margin-top:22px}.strategy-method{border-top:1px solid var(--border);margin:22px 0 0;padding-top:16px}.strategy-panel .table-head{gap:15px}.strategy-panel .table-head p{margin:0}.strategy-panel button{font-size:11px}.strategy-panel .table-scroll{max-height:340px}.strategy-panel td:nth-child(7){font-size:12px}.pit-timeline{overflow-x:auto;margin:16px 0}.pit-track{min-width:560px}.pit-axis{height:25px;position:relative;margin-left:180px;margin-right:10px;color:var(--muted);font-size:10px}.pit-axis span{position:absolute;transform:translateX(-50%);white-space:nowrap}.pit-axis span:first-child{transform:none}.pit-axis span:last-child{transform:translateX(-100%)}.pit-team-row{display:grid;grid-template-columns:170px minmax(0,1fr);gap:10px;align-items:center;margin:6px 10px 6px 0}.pit-team-label{font-size:11px;overflow-wrap:anywhere}.pit-team-label small{display:block;color:var(--muted);margin-top:3px}.pit-lane{height:34px;position:relative;background:#0c1015;border:1px solid var(--border);border-radius:5px}.pit-stint{position:absolute;height:7px;top:12px;background:var(--team-color);opacity:.5;border-radius:3px}.pit-stop{position:absolute;top:7px;transform:translateX(-50%);height:20px;width:12px;border:1px solid #eaf0f4;border-radius:3px;background:var(--team-color);padding:0}.pit-stop:hover,.pit-stop:focus-visible{z-index:2;box-shadow:0 0 0 3px #ffffff35}.pit-missing{font-size:10px;color:var(--muted);position:absolute;top:8px;left:8px}
@media(max-width:760px){.strategy-head{align-items:flex-start;flex-direction:column}.strategy-head select{max-width:200px}.strategy-panel .table-head{align-items:flex-start;flex-direction:column}.strategy-panel .metric strong{font-size:21px}}

.pit-cell-note{display:block;color:var(--muted);font-size:10px;margin-top:4px}.strategy-panel td:first-child{white-space:normal;min-width:55px}.strategy-comparison td:first-child{min-width:160px}

.pace-settings{margin:0 0 20px;padding:16px 18px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.pace-setting-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:12px}.pace-setting-controls label{font-weight:600}.pace-setting-controls input{width:86px;font-size:16px;font-weight:650;font-variant-numeric:tabular-nums}.pace-setting-controls span{color:var(--muted)}.pace-setting-controls button{margin-left:auto;font-size:11px}.pace-settings p{margin:10px 0 0}.threshold-error{font-size:12px;color:#ff9585}.threshold-error:empty{display:none}#paceThreshold[aria-invalid=true]{border-color:#ff9585}@media(max-width:760px){.pace-settings{padding:14px}.pace-setting-controls label{flex-basis:100%}.pace-setting-controls button{margin-left:0}}
