/* Rig-side Sim instruments. One DOM and one clock in every orientation.
 * Scope every rule to Sim so Circuit/Drift candidate work stays independent. */
body.mode-sim {--sim-pad:clamp(16px,2.4vw,40px);--sim-gap:clamp(14px,2vw,28px);}
body.mode-sim .ll-standby {max-width:1100px;margin:0 auto;padding:24px 0 40px;}
body.mode-sim .ll-standby .pre-hero {font:400 clamp(40px,5vw,64px)/1.05 var(--hero);letter-spacing:.02em;margin:22px 0 10px;}
body.mode-sim #ll-prep-sim {display:block;border-radius:var(--radius-card);background:var(--surface);border:1px solid var(--border);margin:24px 0;}
body.mode-sim #ll-prep-sim .pir {min-height:48px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 18px;}
body.mode-sim #ll-prep-sim .pir .v {text-align:right;overflow-wrap:anywhere;}
body.mode-sim #ll-standby-coach-card {background:transparent;border:0;border-left:2px solid var(--orange);border-radius:0;padding:6px 18px;margin:20px 0;}
body.mode-sim #ll-standby-coach-card .wv {display:none;}
body.mode-sim #ll-standby-coach-card small {margin-top:4px;}
body.mode-sim .sim-chip {border:0;background:transparent;align-items:flex-start;justify-content:flex-start;text-align:left;padding:10px 0;border-radius:0;font:500 14px/1.5 var(--body);letter-spacing:0;text-transform:none;}
body.mode-sim .sim-chip .ct2 {font:400 13px/1.5 var(--body);color:var(--muted);}
body.mode-sim .sim-start {display:flex;align-items:center;justify-content:center;min-height:56px;width:100%;border:1px solid var(--orange);border-radius:var(--radius);background:var(--orange);color:var(--bg);font:700 18px/1.2 var(--body);margin-top:12px;cursor:pointer;}
body.mode-sim .sim-start:disabled {background:var(--surface-2);border-color:var(--border-2);color:var(--muted);cursor:not-allowed;}
body.mode-sim #ll-btn-sub {font:400 14px/1.5 var(--body);letter-spacing:0;text-align:left;margin:12px 0;color:var(--muted);}
body.sim-recording #land {display:none!important;}
body.sim-recording #sim-card {margin:0;}
body.sim-recording .layout {display:block;}
body.sim-recording #sim-card > #sim-live {position:relative;width:100%;inset:auto;display:flex;flex-direction:column;gap:0;max-width:none;min-height:0;height:100dvh;margin:0;padding:0!important;border-radius:0;background:var(--bg);overflow:auto;}
body.sim-recording #sim-live::before {content:none;}
body.sim-recording .sim-rig-header {position:sticky;top:0;z-index:140;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:calc(16px + env(safe-area-inset-top)) calc(var(--sim-pad) + env(safe-area-inset-right)) 16px calc(var(--sim-pad) + env(safe-area-inset-left));background:var(--bg);border-top:3px solid var(--orange);border-bottom:1px solid var(--border-2);}
.sim-identity {min-width:0;}
.sim-rig-source {display:flex;align-items:center;gap:12px;font:500 11px/1.4 var(--label);letter-spacing:.07em;text-transform:uppercase;color:var(--orange);}
.sim-rig-source span:empty {display:none;}
.sim-rig-source span+span {color:var(--muted);border-left:1px solid var(--border-2);padding-left:12px;}
#sim-live-venue {font:400 clamp(26px,3vw,44px)/1.1 var(--hero);letter-spacing:.02em;margin:6px 0 0;overflow-wrap:anywhere;}
#sim-car-name {font:400 14px/1.35 var(--body);color:var(--muted);margin:4px 0 0;}
.sim-header-actions {flex:none;display:flex;align-items:center;gap:20px;}
#sim-feed-state {font:500 11px/1.4 var(--label);color:var(--orange);}
#sim-feed-state::before {content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:8px;}
#sim-live #sim-end-btn {display:inline-flex;justify-content:center;align-items:center;min-height:48px;min-width:116px;padding:12px 18px;border:1px solid color-mix(in srgb,var(--red) 55%,transparent);border-radius:var(--radius);background:color-mix(in srgb,var(--red) 8%,var(--bg));color:var(--red);font:600 15px/1.2 var(--body);cursor:pointer;}
body.mode-sim button:focus-visible,body.mode-sim a:focus-visible {outline:2px solid var(--text);outline-offset:4px;}
.sim-rig-body {display:grid;grid-template-columns:minmax(0,1.85fr) minmax(260px,1fr);gap:var(--sim-gap);padding:var(--sim-pad);padding-bottom:calc(var(--sim-pad) + env(safe-area-inset-bottom));flex:1;align-items:start;}
.sim-instruments,.sim-rig-review {min-width:0;}
.sim-instruments {display:flex;flex-direction:column;gap:var(--sim-gap);}
.sim-timing-face {padding:24px 0 28px;border-bottom:1px solid var(--border-2);display:flex;flex-direction:column;gap:14px;}
.sim-instrument-label {display:flex;justify-content:space-between;gap:12px;font:500 12px/1.5 var(--label);color:var(--muted);}
#sim-live .live-time {font:600 clamp(46px,7.1vw,136px)/1.12 var(--mono)!important;letter-spacing:-.07em;white-space:nowrap;margin:8px 0 0;font-variant-numeric:tabular-nums;}
.sim-comparison {display:flex;align-items:center;gap:16px;}
#sim-live .live-delta {display:block;font:600 clamp(24px,3.4vw,52px)/1.2 var(--mono);letter-spacing:-.045em;border:0;padding:0;background:none;margin:0;white-space:nowrap;}
#sim-live .sim-timing-note {font:400 13px/1.4 var(--body);margin:0;color:var(--muted);max-width:180px;}
#sim-live .faster,#sim-session-summary .faster {color:var(--green);}
#sim-live .slower,#sim-session-summary .slower {color:var(--red);}
#sim-live .even,#sim-session-summary .even {color:var(--amber);}
#sim-live .purple {color:var(--purple);}
.sim-section-label {display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;}
.sim-section-label>span:first-child {font:500 11px/1.4 var(--label);color:var(--text);text-transform:uppercase;letter-spacing:.07em;}
.sim-section-label>span:last-child {font:400 12px/1.4 var(--body);color:var(--muted);text-align:right;}
.sim-section-label h2 {font:400 25px/1.1 var(--hero);letter-spacing:.02em;margin:0;}
#sim-live .live-sectors {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;}
#sim-live .sc {padding:14px;background:var(--surface);border:1px solid var(--border-2);border-top:3px solid var(--border-2);border-radius:var(--radius);min-width:0;}
#sim-live .sc.purple {border-top-color:var(--purple);background:color-mix(in srgb,var(--purple) 5%,var(--surface));}
#sim-live .sc.slower {border-top-color:var(--red);background:color-mix(in srgb,var(--red) 5%,var(--surface));}
#sim-live .sc.faster {border-top-color:var(--green);}
#sim-live .sc.even {border-top-color:var(--amber);background:color-mix(in srgb,var(--amber) 5%,var(--surface));}
#sim-live .sc .sk {font:500 11px/1.4 var(--label);color:var(--muted);}
#sim-live .sc .sv {font:600 clamp(18px,2.15vw,36px)/1.3 var(--mono);letter-spacing:-.04em;margin-top:8px;white-space:nowrap;}
#sim-live .sim-split-lap {font:400 12px/1.4 var(--body);color:var(--muted);min-height:17px;margin-top:6px;}
.sim-lap-baselines {display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.sim-lap-baselines>div {display:flex;flex-direction:column;gap:8px;}
.sim-lap-baselines span,.sim-car-instruments>div>span {font:400 13px/1.3 var(--body);color:var(--muted);}
.sim-lap-baselines strong {font:500 clamp(20px,2.3vw,34px)/1.2 var(--mono);letter-spacing:-.055em;}
.sim-car-instruments {display:flex;align-items:flex-start;gap:28px;border-top:1px solid var(--border);padding-top:20px;}
.sim-car-instruments>div {min-width:0;}
.sim-car-instruments>div>span {display:block;margin-bottom:8px;}
.sim-car-instruments strong {font:500 32px/1.2 var(--mono);letter-spacing:-.04em;}
.sim-car-instruments small {font:400 12px/1.2 var(--label);color:var(--muted);margin-left:5px;}
.sim-heart-reading {display:flex;gap:8px;align-items:center;}
.sim-heart {width:30px;height:30px;color:var(--muted);flex:none;}
.sim-hr-fresh .sim-heart {animation:ll-hr-beat var(--sim-heart-period) ease-in-out infinite;}
.sim-hr-fresh.hr-easy .sim-heart,.sim-hr-fresh.hr-active .sim-heart {color:var(--green);}
.sim-hr-fresh.hr-peak .sim-heart {color:var(--red);}
#hr-card:not(.sim-hr-fresh) #hr-bpm {font-size:16px;color:var(--muted);}
.sim-rig-review {border-left:1px solid var(--border-2);padding-left:var(--sim-gap);display:flex;flex-direction:column;gap:28px;height:100%;}
.sim-recent {min-height:180px;}
.sim-recent p {font:400 15px/1.5 var(--body);color:var(--muted);max-width:240px;margin:24px 0;}
.sim-recent table,.sim-summary-laps {width:100%;border-collapse:collapse;table-layout:auto;font:500 13px/1.4 var(--mono);}
.sim-recent th,.sim-summary-laps th {font:400 11px/1.4 var(--body);color:var(--muted);text-align:right;padding:0 0 12px;}
.sim-recent th:first-child,.sim-recent td:first-child,.sim-summary-laps th:first-child,.sim-summary-laps td:first-child {text-align:left;}
.sim-recent td,.sim-summary-laps td {padding:13px 0;border-top:1px solid var(--border);text-align:right;white-space:nowrap;}
#sim-live #sim-standings {max-height:225px;overflow:auto;border:0;border-radius:0;margin:0;background:transparent;}
#sim-live #sim-standings .sr {padding:10px 8px;}
#sim-weather {margin:0!important;}
.sim-audio-panel {display:flex;align-items:flex-start;gap:12px;justify-content:space-between;padding-top:16px;border-top:1px solid var(--border);font:400 13px/1.5 var(--body);color:var(--muted);}.sim-audio-panel strong {color:var(--text);font-weight:500;}.sim-audio-panel p {margin:6px 0 0;}.sim-audio-actions {flex:none;}.sim-audio-panel button {min-height:44px;min-width:90px;padding:10px 12px;border:1px solid var(--border-2);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font:500 13px/1.2 var(--body);cursor:pointer;}
body.sim-recording #sim-session-error {top:0;position:relative;max-height:none;padding:12px var(--sim-pad);left:auto;right:auto;border-radius:0;margin:0;}
body.sim-recording:has(#sim-session-error:not(:empty)) #sim-live {height:calc(100dvh - 64px);}
body.mode-sim #sim-session-summary {max-width:940px;margin:24px auto;padding:clamp(20px,4vw,48px);border-top:3px solid var(--cyan);background:var(--surface);border-radius:var(--radius-card);}
body.mode-sim #sim-session-summary .db-hero {font:400 clamp(40px,5vw,64px)/1.05 var(--hero);margin:20px 0 8px;}
body.mode-sim #sim-session-summary .db-actions {display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
body.mode-sim #sim-session-summary .db-actions>* {flex:1 1 210px;min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;font:600 15px/1.3 var(--body);padding:12px 18px;border-radius:var(--radius);}
body.mode-sim #sim-session-summary button:disabled {opacity:.5;cursor:not-allowed;}
body.mode-sim #sim-session-summary .db-sub {font:400 15px/1.5 var(--body);}
body.mode-sim #sim-summary-readiness {margin-top:14px;}
body.mode-sim .sim-summary-laps {margin-top:22px;}
@media (min-width:1600px){.sim-rig-body {grid-template-columns:minmax(0,2fr) minmax(360px,1fr);}.sim-timing-face {padding-top:40px;padding-bottom:40px;}.sim-recent table {font-size:16px;}}
@media (max-width:1099px){
 .sim-rig-body {grid-template-columns:1fr;}
 .sim-rig-review {height:auto;display:grid;grid-template-columns:1fr 1fr;padding:20px 0 0;border-left:0;border-top:1px solid var(--border-2);}
 .sim-recent {min-height:0;}.sim-audio-panel {grid-column:1/-1;}
 .sim-timing-face {flex-direction:row;justify-content:space-between;align-items:center;gap:20px;padding-top:12px;}
 .sim-clock {min-width:0;flex:1;}.sim-comparison {flex-direction:column;align-items:flex-start;gap:6px;}
 #sim-live .live-time {font-size:clamp(44px,7vw,76px)!important;}
}
@media (max-width:719px){
 body.mode-sim {--sim-pad:16px;--sim-gap:20px;}
 body.sim-recording .sim-rig-header {gap:10px;padding-top:calc(12px + env(safe-area-inset-top));padding-bottom:12px;}
 .sim-header-actions {flex-direction:column-reverse;align-items:flex-end;gap:6px;}
 #sim-live #sim-end-btn {min-width:102px;min-height:44px;font-size:13px;padding:10px 12px;}
 #sim-feed-state {font-size:9px;max-width:115px;text-align:right;}
 .sim-rig-source {font-size:9px;gap:8px;flex-wrap:wrap;}.sim-rig-source span+span {padding-left:8px;}
 #sim-live-venue {font-size:28px;}#sim-car-name {font-size:12px;}
 .sim-timing-face {display:block;padding:0 0 20px;}
 #sim-live .live-time {font-size:clamp(40px,12vw,72px)!important;letter-spacing:-.075em;margin-top:10px;}
 .sim-comparison {margin-top:16px;flex-direction:row;align-items:center;gap:16px;}
 #sim-live .live-delta {font-size:30px;}
 .sim-instrument-label {font-size:11px;}.sim-section-label {align-items:flex-start;}
 .sim-section-label>span:last-child {max-width:170px;font-size:11px;}
 #sim-live .sc {padding:10px;}#sim-live .sc .sv {font-size:20px;}
 .sim-lap-baselines strong {font-size:22px;}
 .sim-car-instruments {gap:22px;}.sim-car-instruments strong {font-size:27px;}.sim-heart {width:26px;height:26px;}
 .sim-rig-review {display:flex;gap:24px;}.sim-recent p {margin:10px 0;max-width:none;}
 body.mode-sim .ll-standby {padding-top:14px;}
 body.mode-sim #sim-session-summary {margin:12px 0;}
}
@media (orientation:landscape) and (max-height:540px) and (min-width:720px){
 body.mode-sim {--sim-pad:14px;--sim-gap:14px;}
 body.sim-recording .sim-rig-header {padding-top:calc(8px + env(safe-area-inset-top));padding-bottom:8px;}
 #sim-live-venue {font-size:25px;}#sim-car-name {display:none;}
 .sim-rig-source {font-size:9px;}.sim-header-actions {gap:14px;}
 #sim-live #sim-end-btn {min-height:44px;padding:10px 16px;}
 .sim-rig-body {grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr);}
 .sim-rig-review {display:flex;border-top:0;border-left:1px solid var(--border-2);padding:0 0 0 14px;gap:16px;}
 .sim-timing-face {padding:0 0 10px;display:block;}
 #sim-live .live-time {font-size:46px!important;margin-top:3px;}
 .sim-comparison {flex-direction:row;align-items:center;margin-top:8px;gap:12px;}
 #sim-live .live-delta {font-size:25px;}#sim-live .sim-timing-note {font-size:11px;}
 .sim-section-label {margin-bottom:7px;}.sim-section-label h2 {font-size:23px;}
 #sim-live .sc {padding:7px 10px;}#sim-live .sc .sv {font-size:19px;margin-top:3px;}
 #sim-live .sim-split-lap {font-size:10px;margin-top:3px;min-height:14px;}
 .sim-lap-baselines strong {font-size:20px;}.sim-lap-baselines span {font-size:11px;}
 .sim-car-instruments {padding-top:12px;}.sim-car-instruments strong {font-size:24px;}
 .sim-recent td {padding:9px 0;}.sim-recent table {font-size:12px;}
}
@media (prefers-reduced-motion:reduce){.sim-hr-fresh .sim-heart {animation:none;}}
#sim-live .sc.slower .sv {color:var(--red);}
#sim-live .sc.faster .sv {color:var(--green);}
#sim-live .sc.even .sv {color:var(--amber);}
@media (orientation:landscape) and (max-height:540px) and (min-width:720px){
 .sim-rig-body {grid-template-rows:auto auto auto;align-content:start;gap:12px 14px;}
 .sim-instruments {display:contents;}
 .sim-timing-face {grid-column:1;grid-row:1;padding-bottom:8px;}
 .sim-sector-panel {grid-column:1;grid-row:2;}
 .sim-lap-baselines {grid-column:2;grid-row:1;align-content:center;border-left:1px solid var(--border-2);padding-left:14px;gap:12px;}
 .sim-car-instruments {grid-column:1;grid-row:3;padding-top:8px;gap:28px;}
 .sim-car-instruments>div>span {margin-bottom:4px;font-size:11px;}
 .sim-rig-review {grid-column:2;grid-row:2/4;}
 #sim-live .live-time {font-size:42px!important;}
 #sim-live .sim-split-lap {margin-top:0;}
 .sim-section-label {margin-bottom:5px;}
 .sim-rig-review .sim-section-label>span {font-size:10px;}
 .sim-recent th {padding-bottom:6px;}
 .sim-recent td {padding:8px 0;}
 .sim-heart {width:24px;height:24px;}
}
body.mode-sim #sim-session-summary .db-actions {flex-direction:row;}
@media (orientation:landscape) and (max-height:540px) and (min-width:720px){
 .sim-rig-body {grid-template-rows:82px 92px 60px;}
 .sim-timing-face {display:flex;flex-direction:row;align-items:center;gap:16px;min-height:0;}
 .sim-comparison {flex-direction:column;align-items:flex-start;margin-top:0;gap:3px;max-width:145px;}
 #sim-live .live-delta {font-size:23px;}
 #sim-live .sim-timing-note {font-size:10px;}
 .sim-rig-review {height:164px;min-height:0;overflow:auto;}
 .sim-lap-baselines {align-content:center;}
}

.sim-rig-review>* {flex-shrink:0;}
