.cv-wrap{display:grid;gap:1.25rem}.cv-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 2rem}.cv-legend{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--ink-3);max-width:34rem}.cv-lead-key{flex:none;width:18px;height:6px;background:var(--copper)}.cv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,3vw,2rem)}.cv{margin:0;display:grid;gap:1rem;align-content:start;padding:1rem 0 0;border-top:2px solid var(--ink);min-width:0}.cv-h{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.3rem 1rem;align-items:baseline}.cv-title{font-family:var(--sans);font-size:.98rem;font-weight:650}.cv-sub{grid-column:1 / -1;font-size:.82rem;line-height:1.45;color:var(--ink-3);max-width:40rem}.cv-plot{display:grid;gap:1.1rem}.cv-row,.cv-lane{display:grid;gap:.45rem}.cv-row-h{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;min-width:0}.cv-name{font-size:.92rem;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cv-val{font-size:.8rem;color:var(--ink-2);text-align:right}.cv-val .chip{vertical-align:.1em}.cv-note,.cv-out{font-size:.82rem;color:var(--ink-2);margin:0}.cv-out{color:var(--ink-3)}.cv-tag{display:inline-block;margin-left:.3rem;padding:.05rem .4rem;font-size:.72rem;font-weight:600;color:var(--on-copper);background:var(--copper);border-radius:2px}.cv-track{position:relative;height:16px;border-bottom:1px solid var(--rule-strong);background:repeating-linear-gradient(90deg,var(--rule) 0 1px,transparent 1px var(--g, 12.5%))}.cv-track.is-empty{opacity:.4}.cv-floor,.cv-span{position:absolute;top:3px;bottom:3px;left:0;width:var(--w);background:var(--ink);opacity:.82;transform-origin:left}.cv-span{left:var(--l);background:repeating-linear-gradient(135deg,var(--ink) 0 2px,transparent 2px 4px)}.cv-tick{position:absolute;top:-3px;bottom:-3px;left:var(--l);width:2px;margin-left:-1px;background:var(--ink)}.cv-row.is-lead .cv-floor,.cv-row.is-lead .cv-tick{background:var(--copper);opacity:1}.cv-row.is-lead .cv-span{background:repeating-linear-gradient(135deg,var(--copper) 0 2px,transparent 2px 4px);opacity:1}.cv-dot{position:absolute;top:50%;left:var(--l);width:11px;height:11px;margin:-5.5px 0 0 -5.5px;border-radius:50%;background:var(--ground);border:2px solid var(--ink);transform:translateY(var(--y, 0px));z-index:1}.cv-range .cv-dot{background:var(--ink);border-color:var(--ground);box-shadow:0 0 0 1px var(--ink)}.cv-dot.is-cold{background:var(--ground);border:1.5px solid var(--ink-2);box-shadow:none;opacity:.85}.cv-claims .cv-dot:not(.is-cold){background:var(--ink);border-color:var(--ground);box-shadow:0 0 0 1px var(--ink)}.cv-axis{position:relative;height:1rem;margin-top:-.6rem;font-family:var(--mono);font-size:.68rem;color:var(--ink-3)}.cv-axis span{position:absolute;top:0;transform:translate(-50%);white-space:nowrap}.cv-axis span:first-child{transform:none}.cv-axis span:last-child{transform:translate(-100%)}.cv-bar{top:2px;bottom:2px}.cv-claims-track{height:30px;background:none}.cv-band{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--copper) 16%,transparent)}.cv-centre{position:absolute;top:-4px;bottom:-4px;left:var(--c);width:0;border-left:1.5px dashed var(--ink-2)}.cv-batt{position:relative;height:34px;margin-left:30px;margin-right:8px;border:1.5px solid var(--ink);border-radius:5px}.cv-batt:after{content:"";position:absolute;right:-7px;top:9px;width:5px;height:13px;border-radius:0 2px 2px 0;background:var(--ink)}.cv-cable{position:absolute;right:100%;top:50%;width:30px;height:2px;margin-top:-1px;background:var(--ink-3)}.cv-lane.is-charging .cv-cable{background:repeating-linear-gradient(90deg,var(--copper) 0 6px,transparent 6px 10px);background-size:20px 2px;animation:cv-current .45s linear infinite}@keyframes cv-current{to{background-position:20px 0}}.cv-base{position:absolute;left:3px;top:3px;bottom:3px;background:color-mix(in srgb,var(--ink) 20%,transparent);border-radius:2px 0 0 2px}.cv-fill{position:absolute;top:3px;bottom:3px;background:color-mix(in srgb,var(--ink) 72%,transparent)}.cv-lane.is-charging .cv-fill{background:color-mix(in srgb,var(--copper) 80%,var(--ink))}.cv-charge.is-finished .cv-lane.is-lead .cv-fill,.cv-charge:not(.is-armed) .cv-lane.is-lead .cv-fill{background:var(--copper)}.cv-mark{position:absolute;top:-5px;bottom:-5px;width:0;border-left:1px dashed var(--ink-3)}.cv-soc{position:absolute;top:50%;transform:translate(.4rem,-50%);font-size:.72rem;color:var(--ink-2);white-space:nowrap;pointer-events:none}.cv-charge.is-armed:not(.is-on) .cv-soc{opacity:0}.cv-clock{font-size:.86rem;color:var(--ink-2)}.cv-clock b{font-weight:500;color:var(--ink);font-size:1.05rem}.cv-lane.is-lead.is-done .cv-clock b,.cv-charge:not(.is-armed) .cv-lane.is-lead .cv-clock b{color:var(--copper-text)}.cv-batt.is-none{border-style:dashed;border-color:var(--rule-strong);display:grid;place-items:center}.cv-batt.is-none:after{background:var(--rule-strong)}.cv-none{font-size:.78rem;color:var(--ink-3);padding-inline:.5rem;text-align:center}.cv-lane .cv-tag{opacity:1;transition:opacity .4s}.cv-charge.is-armed:not(.is-finished) .cv-tag{opacity:0}.cv-run{border:1px solid var(--rule-strong);background:transparent;color:var(--ink-2);font:inherit;font-size:.8rem;padding:.3rem .7rem;border-radius:3px;cursor:pointer}.cv-run:hover{color:var(--ink);border-color:var(--copper)}.cv-charge.is-racing .cv-run{opacity:.5;pointer-events:none}@media(prefers-reduced-motion:no-preference){.cv.is-armed .cv-floor,.cv.is-armed .cv-span{transition:transform 1.1s cubic-bezier(.25,.8,.15,1)}.cv.is-armed .cv-span{transition-delay:.45s}.cv.is-armed:not(.is-on) .cv-floor,.cv.is-armed:not(.is-on) .cv-span{transform:scaleX(0)}.cv.is-armed .cv-tick{transition:opacity .3s 1s}.cv.is-armed:not(.is-on) .cv-tick{opacity:0}.cv.is-armed .cv-dot{transition:left .9s cubic-bezier(.3,.9,.2,1) var(--d, 0s),opacity .3s var(--d, 0s)}.cv-range.is-armed:not(.is-on) .cv-dot{opacity:0}.cv-claims.is-armed:not(.is-on) .cv-dot{left:var(--c);opacity:0}.cv.is-armed .cv-band{transition:opacity .6s .2s}.cv.is-armed:not(.is-on) .cv-band{opacity:0}}@media(max-width:960px){.cv-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:520px){.cv-row-h{flex-wrap:wrap;gap:.1rem .75rem}.cv-val{text-align:left}.cv-legend{font-size:.78rem}}
