/* Selected direction: A2 / B2 / C1 / D1. All controls remain native HTML. */
.workspace .preview-steps {
  justify-content:center; align-items:center; gap:clamp(12px,2.8vw,44px);
  border:0; padding:24px 0 20px; margin:0 0 8px;
}
.workspace .preview-steps button {
  display:flex; align-items:center; justify-content:center; gap:10px;
  background:transparent; border:0; padding:8px 0; color:#afc5d1;
  font-size:clamp(13px,1.1vw,17px); border-radius:0; min-height:44px;
}
.workspace .preview-steps button span {
  border:1px solid #9ab8c4; border-radius:50%; display:grid; place-items:center;
  width:25px; height:25px; font-size:13px; flex:none;
}
.workspace .preview-steps button[aria-current=step] {background:none;color:#f0f5f5;font-weight:600}
.workspace .preview-steps button[aria-current=step] span {background:#d7e8df;border-color:#d7e8df;color:#14232b}
.workspace .preview-steps button:disabled {opacity:.5}
.workspace .preview-notice {
  background:none; border:0; color:#a5bcc7; font-size:11px; line-height:1.5;
  padding:0 0 18px; margin:0; text-align:center;
}
.workspace.has-priced-fleet[data-service=rent] #workgrid {
  grid-template-columns:minmax(245px,.58fr) minmax(0,1.7fr); gap:clamp(25px,3vw,48px); padding-top:20px;
}
.workspace.has-priced-fleet #details {padding-right:25px;border-right:1px solid #334a56}
.workspace.has-priced-fleet[data-service=rent] #details-title {font-size:26px!important}
.workspace.has-priced-fleet[data-service=rent] .vehicle.fleet-vehicle {
  grid-template-columns:minmax(160px,.93fr) minmax(150px,1fr) minmax(125px,.67fr);
  column-gap:20px; padding:17px 12px; border-radius:6px; border:1px solid transparent;
  border-bottom-color:#344b55; margin:0; transition:background .16s ease,border-color .16s ease;
}
.workspace.has-priced-fleet[data-service=rent] .vehicle.fleet-vehicle:hover {background:#ffffff04;border-color:#77978f}
.workspace.has-priced-fleet[data-service=rent] .vehicle.fleet-vehicle.is-selected {border-color:#d6e8de;background:#20323b}
.workspace.has-priced-fleet[data-service=rent] .vehicle.fleet-vehicle img {aspect-ratio:1.5;object-fit:contain}
.workspace.has-priced-fleet[data-service=rent] .vehicle.fleet-vehicle>span {padding:8px 0}
.workspace.has-priced-fleet[data-service=rent] .fleet-vehicle strong {font-size:clamp(18px,1.5vw,24px)}
.workspace.has-priced-fleet[data-service=rent] .fleet-meta {font-size:14px;margin-top:10px}
.workspace.has-priced-fleet[data-service=rent] .fleet-status {font-size:12px;margin-top:13px}
.workspace.has-priced-fleet .fleet-inclusions {font-size:11px!important;color:#a5bbc7!important;margin-top:8px!important}
.fleet-price b {font-size:clamp(18px,1.45vw,24px);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.workspace.has-priced-fleet[data-service=rent] .fleet-price>small {margin-top:7px;font-size:13px}
.fleet-select-label {display:block;text-align:center;border:1px solid #6c8693;border-radius:4px;padding:12px 10px;margin-top:18px;font-size:15px}
.is-selected .fleet-select-label {background:#d7e8df;color:#14232b;border-color:#d7e8df}
.fleet-selection-bar {
  position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:85px minmax(100px,1fr) auto auto minmax(190px,1fr);
  align-items:center;gap:24px;border-top:1px solid #4b626d;background:#17232b;padding:18px 0;margin-top:24px;
}
.fleet-selection-bar img {width:85px;height:64px;object-fit:contain}
.fleet-selection-bar strong {font-size:18px;font-weight:550;line-height:1.3;display:block}
.fleet-selection-bar small {display:block;color:#afc5d1;font-size:12px;line-height:1.5;margin-top:5px}
.fleet-selected-deposit {border-left:1px solid #344b55;padding-left:22px;font-size:14px}
.fleet-selection-bar .primary {min-height:54px;background:#d7e8df;color:#14232b}
.fleet-selection-bar .primary:disabled {opacity:.45;cursor:default}
.has-checkout-preview .preview-layout {grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:clamp(26px,3vw,46px)}
.has-checkout-preview .preview-content h2 {font-size:clamp(31px,3vw,46px)!important;margin-bottom:16px}
.has-checkout-preview .preview-intro {font-size:clamp(15px,1.3vw,20px);margin-top:0;margin-bottom:26px}
.has-checkout-preview .preview-receipt {padding-left:30px}
.has-checkout-preview .preview-car-small {height:auto;aspect-ratio:1.65;width:100%;object-fit:contain}
.has-checkout-preview .preview-receipt .preview-model-name {font-size:clamp(24px,2vw,32px);margin-top:4px;margin-bottom:10px}
.has-checkout-preview .preview-model-meta {font-size:15px;color:#b2c8d4;margin:0 0 20px}
.has-checkout-preview .preview-trip {border-block:1px solid #344b55;padding:18px 0;font-size:14px;line-height:1.8}
.has-checkout-preview .preview-receipt dl {border-top:0;margin:0 0 20px;padding-top:4px;font-size:14px}
.has-checkout-preview .preview-total {font-size:22px}
.has-checkout-preview .preview-total strong {font-size:32px}
.receipt-edit {display:none;background:none;border:0;color:#b9d1dc;text-decoration:underline;text-underline-offset:4px;font-size:13px;min-height:35px;padding:6px 0 6px 15px}
#pricing-preview[data-step=review] .receipt-edit {display:inline-block}
#pricing-preview[data-step=review] .preview-receipt dd {display:flex;align-items:center;justify-content:flex-end;gap:10px}
#pricing-preview[data-step=review] .preview-deposit {border:1px solid #3d5360;border-radius:6px;padding:17px}
.protection-row {border:1px solid #405866;border-radius:7px;margin-bottom:16px;overflow:hidden}
.protection-row:has(input:checked) {border-color:#d6e8de;background:#20323b}
.workspace[data-service=rent] .protection-row .protection-choice {border:0;background:none;border-radius:0;margin:0;padding:20px;min-height:95px}
.workspace[data-service=rent] .protection-row .protection-choice input {width:29px;height:29px;min-height:29px}
.protection-choice>b {font-size:14px}
.preview-content .protection-info {border-top:0;margin:0;padding:0 20px 16px 68px}
.protection-info summary {font-size:13px;color:#c2d6de;min-height:25px}
.protection-info p {margin-bottom:0}
.preview-extra {display:grid;grid-template-columns:105px minmax(0,1fr) auto;gap:22px;min-height:145px;padding:15px 0 26px}
.preview-extra h3 {margin:4px 0 10px;font-size:24px}
.preview-extra p {margin:0 0 9px;font-size:15px}
.extra-description small {color:#9eb9c7;font-size:13px;line-height:1.6}
.extra-visual {width:105px;align-self:center;color:#c5dcd6}
.extra-visual svg {width:100%;height:90px}
/* Reuse the approved C1 equipment photography as two CSS image windows. */
.extra-child,.extra-booster {background-image:url('checkout-concepts/images/C1.png');background-repeat:no-repeat;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.extra-child {aspect-ratio:176/165;background-size:901.14% 601.21%;background-position:4.54% 39.54%}
.extra-booster {aspect-ratio:180/126;background-size:881.11% 787.30%;background-position:4.41% 81.29%}
.preview-counter {border-color:#69818e}
.preview-counter button {width:44px;height:50px}
.preview-counter output {width:34px}
.preview-content #preview-skip {border:0;padding:14px 0;text-decoration:underline;text-underline-offset:5px;font-size:14px}
.preview-driver-fields {margin-top:24px;gap:23px 18px}
.preview-driver-fields label {font-size:14px!important}
.preview-driver-fields input {font-size:16px!important}
.preview-driver-fields input::placeholder {color:#87a2b2}
.preview-content details>summary {list-style-position:outside;margin-left:15px}
.preview-agree {padding-top:8px}
@media(max-width:1100px) {
 .workspace.has-priced-fleet[data-service=rent] #workgrid {grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);gap:24px}
 .workspace.has-priced-fleet[data-service=rent] .vehicle.fleet-vehicle {grid-template-columns:minmax(135px,1fr) minmax(150px,1fr);gap:8px 16px}
 .workspace.has-priced-fleet .fleet-price {grid-column:2;display:grid;grid-template-columns:1fr auto;gap:5px 10px}
 .workspace.has-priced-fleet .fleet-price>small {grid-column:1}
 .fleet-select-label {grid-column:2;grid-row:1/3;margin:0;align-self:center;font-size:12px;padding:10px}
 .fleet-selection-bar {grid-template-columns:minmax(120px,1fr) auto minmax(180px,1fr);gap:18px}
 .fleet-selection-bar>img,.fleet-selected-deposit {display:none}
 .preview-extra {grid-template-columns:70px minmax(0,1fr) auto;gap:14px}
 .extra-visual {width:70px}
 .preview-extra h3 {font-size:20px}
 .has-checkout-preview .preview-layout {grid-template-columns:minmax(0,1.3fr) minmax(270px,1fr);gap:24px}
 .has-checkout-preview .preview-receipt {padding-left:22px}
}
@media(max-width:850px) {
 .workspace.has-priced-fleet[data-service=rent] #workgrid,.has-checkout-preview .preview-layout {grid-template-columns:1fr}
 .workspace.has-priced-fleet #details {padding-right:0;border:0;position:static}
 .has-checkout-preview .preview-receipt {position:static;padding:24px 0 0;border-left:0}
 .has-checkout-preview .preview-car-small {display:none}
 .preview-extra {grid-template-columns:95px minmax(0,1fr) auto}
 .extra-visual {width:95px}
 .preview-steps {flex-wrap:nowrap!important}
 .workspace .preview-steps {gap:12px}
 .workspace .preview-steps button {font-size:12px;gap:6px}
 .workspace .preview-steps button span {width:21px;height:21px;font-size:11px}
 .fleet-selection-bar {grid-template-columns:1fr auto;padding:15px 0}
 .fleet-selection-bar .primary {grid-column:1/-1}
}
@media(max-width:480px) {
 .workspace .preview-steps {gap:7px}
 .workspace .preview-steps button {flex-direction:column;font-size:11px}
 .workspace.has-priced-fleet[data-service=rent] .vehicle.fleet-vehicle {grid-template-columns:minmax(110px,1fr) minmax(145px,1.15fr);padding:12px 4px;gap:5px 12px}
 .fleet-price b {font-size:17px}
 .fleet-select-label {padding:9px 6px;font-size:11px}
 .preview-extra {grid-template-columns:65px minmax(0,1fr);gap:12px}
 .extra-visual {width:65px}
 .preview-counter {grid-column:2;justify-self:start}
 .preview-driver-fields {grid-template-columns:1fr}
 .workspace[data-service=rent] .protection-row .protection-choice {padding:16px;gap:12px}
 .preview-content .protection-info {padding-left:57px}
 .protection-choice strong {font-size:20px}
 .receipt-edit {padding-left:6px}
}
@media(prefers-reduced-motion:reduce) {.workspace.has-priced-fleet[data-service=rent] .vehicle.fleet-vehicle {transition:none}}

/* Left step rail: click any previous step to go back (2026-09-22). Return button now leaves the whole flow. */
.has-checkout-preview .preview-layout {grid-template-columns:minmax(148px,auto) minmax(0,1.45fr) minmax(300px,1fr)}
.workspace .preview-steps.steps-rail {flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:6px;position:sticky;top:20px;align-self:start;margin:0;padding:2px 16px 2px 0;border-right:1px solid rgba(215,232,223,.16)}
.workspace .preview-steps.steps-rail button {justify-content:flex-start;text-align:left;width:100%;padding:9px 11px;border-radius:10px;gap:10px}
.workspace .preview-steps.steps-rail button[aria-current=step] {background:rgba(215,232,223,.10)}
.workspace .preview-steps.steps-rail button:not(:disabled) {cursor:pointer}
.workspace .preview-steps.steps-rail button:not(:disabled):hover {background:rgba(215,232,223,.06)}
@media(max-width:850px) {
 .has-checkout-preview .preview-layout {grid-template-columns:1fr}
 .workspace .preview-steps.steps-rail {flex-direction:row;flex-wrap:wrap;position:static;padding:0 0 12px;border-right:0;border-bottom:1px solid rgba(215,232,223,.16)}
 .workspace .preview-steps.steps-rail button {width:auto}
}
