/* ΠΑΡΑΓΟΜΕΝΟ ΑΡΧΕΙΟ — μην το επεξεργάζεσαι.
 *
 * Παράγεται από το design/export/ με: npm run design:css
 * Κάθε χειροκίνητη αλλαγή εδώ χάνεται στο επόμενο export, και
 * σπάει το tests/design-fidelity.test.js.
 *
 * Αν χρειάζεται αλλαγή, γίνεται στο Claude Design.
 */

/* ── components/actions/Button.jsx ── */
.v9-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--control-height);padding:0 20px;border-radius:var(--radius-md);border:1px solid transparent;font:var(--weight-medium) 15.5px/1 var(--font-ui);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);text-decoration:none;white-space:nowrap;-webkit-tap-highlight-color:transparent}
.v9-btn:active:not(:disabled){transform:scale(var(--press-scale))}
.v9-btn:disabled{opacity:.45;cursor:not-allowed}
.v9-btn--primary{background:var(--color-primary);color:var(--text-on-brand)}
.v9-btn--primary:hover:not(:disabled){background:var(--color-primary-hover);color:var(--text-on-brand)}
.v9-btn--primary:active:not(:disabled){background:var(--color-primary-active)}
.v9-btn--secondary{background:var(--surface-card);border-color:var(--border-default);color:var(--text-body)}
.v9-btn--secondary:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-sunken);color:var(--text-body)}
.v9-btn--ghost{background:transparent;color:var(--text-brand)}
.v9-btn--ghost:hover:not(:disabled){background:var(--surface-brand-subtle);color:var(--text-brand)}
.v9-btn--danger{background:var(--color-danger);color:#fff}
.v9-btn--danger:hover:not(:disabled){background:var(--color-danger-strong);color:#fff}
.v9-btn--sm{height:var(--control-height-sm);padding:0 14px;font-size:14px;border-radius:10px;gap:6px}
.v9-btn--full{width:100%}
.v9-btn__spin{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;animation:v9spin .7s linear infinite;flex:none}
.v9-btn--loading{pointer-events:none}
.v9-btn--loading .v9-btn__label{opacity:.75}
@keyframes v9spin{to{transform:rotate(360deg)}}

/* ── components/booking/BookingTimeline.jsx ── */
.v9-tl{display:grid;gap:0;margin:0;padding:0;list-style:none}
.v9-tl__step{display:grid;grid-template-columns:24px 1fr auto;gap:0 12px;position:relative;padding-bottom:18px}
.v9-tl__step:last-child{padding-bottom:0}
.v9-tl__dot{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface-card);border:2px solid var(--border-default);color:transparent;z-index:1}
.v9-tl__rail{position:absolute;left:11px;top:24px;bottom:0;width:2px;background:var(--border-subtle)}
.v9-tl__step:last-child .v9-tl__rail{display:none}
.v9-tl__step--done .v9-tl__dot{background:var(--color-primary);border-color:var(--color-primary);color:#fff}
.v9-tl__step--done .v9-tl__rail{background:var(--petrol-300)}
.v9-tl__step--current .v9-tl__dot{border-color:var(--color-primary);background:var(--surface-brand-subtle)}
.v9-tl__step--current .v9-tl__dot::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--color-primary)}
.v9-tl__step--attention .v9-tl__dot{border-color:var(--border-warning);background:var(--surface-warning);color:var(--color-warning-strong)}
.v9-tl__step--danger .v9-tl__dot{border-color:var(--border-danger);background:var(--surface-danger);color:var(--color-danger-strong)}
.v9-tl__label{font:400 14.5px/1.35 var(--font-ui);color:var(--text-muted);align-self:center}
.v9-tl__step--done .v9-tl__label{color:var(--text-secondary)}
.v9-tl__step--current .v9-tl__label,.v9-tl__step--attention .v9-tl__label,.v9-tl__step--danger .v9-tl__label{font-weight:var(--weight-semibold);color:var(--text-body)}
.v9-tl__time{font:400 12.5px/1.3 var(--font-mono);color:var(--text-faint);align-self:center;font-variant-numeric:tabular-nums}
.v9-tl__desc{grid-column:2/-1;margin-top:3px;font:400 13px/1.45 var(--font-ui);color:var(--text-muted);max-width:44ch}

/* ── components/booking/DriverCard.jsx ── */
.v9-dc{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-1);display:grid;gap:14px}
.v9-dc__head{display:flex;gap:12px;align-items:center}
.v9-dc__avatar{width:52px;height:52px;border-radius:var(--radius-full);background:var(--surface-brand-subtle);color:var(--text-brand);display:flex;align-items:center;justify-content:center;font:var(--weight-semibold) 18px/1 var(--font-ui);overflow:hidden;flex:none}
.v9-dc__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.v9-dc__name{font:var(--weight-semibold) 16.5px/1.25 var(--font-ui);color:var(--text-body);margin:0}
.v9-dc__langs{display:flex;gap:5px;margin-top:5px;flex-wrap:wrap}
.v9-dc__rating{display:inline-flex;gap:4px;align-items:center;margin-inline-start:auto;font:var(--weight-medium) 14px/1 var(--font-ui);color:var(--text-body);font-variant-numeric:tabular-nums}
.v9-dc__rating svg{color:var(--color-accent)}
.v9-dc__vehicle{display:flex;gap:14px;align-items:center;background:var(--surface-sunken);border-radius:var(--radius-md);padding:12px 14px}
.v9-dc__vinfo{display:grid;gap:2px;min-width:0}
.v9-dc__vname{font:var(--weight-medium) 14.5px/1.3 var(--font-ui);color:var(--text-body)}
.v9-dc__vmeta{font:400 12.5px/1.3 var(--font-ui);color:var(--text-muted)}
.v9-dc__plate{margin-inline-start:auto;display:inline-flex;align-items:center;padding:7px 14px;border:2px solid var(--ink-900);border-radius:8px;background:#fff;font:var(--weight-semibold) 21px/1 var(--font-mono);letter-spacing:.06em;color:var(--ink-950);white-space:nowrap;flex:none}
[data-theme="dark"] .v9-dc__plate{border-color:var(--border-strong)}
.v9-dc__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.v9-dc__note{font:400 12px/1.4 var(--font-ui);color:var(--text-muted);text-align:center;margin:-4px 0 0}

/* ── components/booking/PriceBreakdown.jsx ── */
.v9-pb{display:grid;gap:7px;font:400 14.5px/1.4 var(--font-ui);color:var(--text-body)}
.v9-pb__line{display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.v9-pb__line span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}
.v9-pb__lbl{min-width:0}
.v9-pb__qty{color:var(--text-muted)}
.v9-pb__line--muted{color:var(--text-muted);font-size:13.5px}
.v9-pb__line--discount{color:var(--color-success-strong)}
.v9-pb__total{display:flex;justify-content:space-between;gap:16px;align-items:baseline;border-top:1px dashed var(--border-default);padding-top:10px;margin-top:3px}
.v9-pb__total b{font:var(--weight-semibold) 15.5px/1.3 var(--font-ui)}
.v9-pb__total i{font:var(--weight-price) var(--text-price-md)/1 var(--font-price);font-style:normal;color:var(--text-price);font-variant-numeric:tabular-nums;white-space:nowrap}
.v9-pb__not{margin-top:2px;font:400 12.5px/1.45 var(--font-ui);color:var(--text-muted)}
.v9-pb__flag{justify-self:end}

/* ── components/booking/VehicleCategoryCard.jsx ── */
.v9-vc{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:14px;box-shadow:var(--shadow-1);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}
.v9-vc:hover{box-shadow:var(--shadow-2)}
.v9-vc--selected{border-color:var(--border-brand);box-shadow:0 0 0 1px var(--border-brand),var(--shadow-1)}
.v9-vc__main{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start}
.v9-vc__main>div{min-width:0}
.v9-vc__photo{width:104px;aspect-ratio:4/3;border-radius:var(--radius-md);background:var(--surface-sunken);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--text-faint)}
.v9-vc__photo img{width:100%;height:100%;object-fit:cover;display:block}
.v9-vc__name{font:var(--weight-semibold) 16.5px/1.3 var(--font-ui);color:var(--text-body);margin:0}
.v9-vc__caps{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:5px;font:400 13.5px/1.3 var(--font-ui);color:var(--text-secondary)}
.v9-vc__caps span{display:inline-flex;gap:5px;align-items:center}
.v9-vc__dur{margin-top:4px;font:400 12.5px/1.3 var(--font-ui);color:var(--text-muted)}
.v9-vc__price{text-align:end;display:grid;gap:2px;justify-items:end;max-width:132px}
.v9-vc__price .v9-badge{white-space:normal;text-align:end}
.v9-vc__amount{font:var(--weight-price) var(--text-price-md)/1 var(--font-price);color:var(--text-price);font-variant-numeric:tabular-nums;white-space:nowrap}
.v9-vc__fixed{font:400 12px/1.3 var(--font-ui);color:var(--text-muted)}
.v9-vc__badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:11px}
.v9-vc__foot{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:12px}
.v9-vc__more{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--border-default);animation:v9vcin var(--duration-base) var(--ease-out)}
@keyframes v9vcin{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
.v9-vc__inc{display:flex;gap:8px;align-items:flex-start;font:400 13.5px/1.45 var(--font-ui);color:var(--text-secondary)}
.v9-vc__inc svg{color:var(--color-success);margin-top:2px}

/* ── components/extras/ExtraRow.jsx ── */
.v9-xr{display:flex;gap:11px;align-items:center;min-height:var(--touch-target)}
.v9-xr__ic{color:var(--text-secondary);display:flex;flex:none}
.v9-xr__l{flex:1;min-width:0;display:grid;gap:1px}
.v9-xr__l b{font:500 14px/1.3 var(--font-ui);color:var(--text-body)}
.v9-xr__price{color:var(--text-muted);font-weight:400;font-size:12.5px;white-space:nowrap}
.v9-xr__l span{font:400 12px/1.35 var(--font-ui);color:var(--text-muted)}
.v9-xr--off .v9-xr__ic,.v9-xr--off .v9-xr__l b{color:var(--text-faint)}
.v9-xr__na{display:flex;gap:6px;align-items:flex-start;max-width:150px;font:400 12px/1.35 var(--font-ui);color:var(--text-muted);text-align:end}
.v9-xr__na svg{flex:none;margin-top:1px}
.v9-xr__sw{position:relative;width:48px;height:28px;border-radius:999px;background:var(--border-default);border:0;cursor:pointer;transition:background var(--duration-base) var(--ease-out);flex:none;padding:0}
.v9-xr__sw::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:22px;height:22px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-1);transition:transform var(--duration-base) var(--ease-out)}
.v9-xr__sw[aria-checked="true"]{background:var(--color-primary)}
.v9-xr__sw[aria-checked="true"]::after{transform:translateX(20px)}

/* ── components/feedback/Badge.jsx ── */
.v9-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:var(--radius-sm);border:1px solid;font:var(--weight-medium) 12.5px/1.2 var(--font-ui);white-space:nowrap}
.v9-badge--neutral{background:var(--surface-sunken);border-color:var(--border-subtle);color:var(--text-secondary)}
.v9-badge--info{background:var(--surface-brand-subtle);border-color:var(--border-info);color:var(--text-brand)}
.v9-badge--success{background:var(--surface-success);border-color:var(--border-success);color:var(--color-success-strong)}
.v9-badge--warning{background:var(--surface-warning);border-color:var(--border-warning);color:var(--color-warning-strong)}
.v9-badge--danger{background:var(--surface-danger);border-color:var(--border-danger);color:var(--color-danger-strong)}
.v9-badge--accent{background:var(--surface-accent-subtle);border-color:var(--terra-200);color:var(--text-accent)}

/* ── components/feedback/Notice.jsx ── */
.v9-notice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--radius-md);border:1px solid}
.v9-notice__ic{display:flex;flex:none;margin-top:1px}
.v9-notice__body{display:grid;gap:2px;min-width:0}
.v9-notice__title{font:var(--weight-semibold) 14.5px/1.35 var(--font-ui)}
.v9-notice__text{font:400 14px/1.45 var(--font-ui);color:var(--text-secondary)}
.v9-notice__action{margin-top:8px}
.v9-notice--info{background:var(--surface-info);border-color:var(--border-info)}.v9-notice--info .v9-notice__ic,.v9-notice--info .v9-notice__title{color:var(--color-info)}
.v9-notice--success{background:var(--surface-success);border-color:var(--border-success)}.v9-notice--success .v9-notice__ic,.v9-notice--success .v9-notice__title{color:var(--color-success-strong)}
.v9-notice--warning{background:var(--surface-warning);border-color:var(--border-warning)}.v9-notice--warning .v9-notice__ic,.v9-notice--warning .v9-notice__title{color:var(--color-warning-strong)}
.v9-notice--danger{background:var(--surface-danger);border-color:var(--border-danger)}.v9-notice--danger .v9-notice__ic,.v9-notice--danger .v9-notice__title{color:var(--color-danger-strong)}

/* ── components/feedback/Skeleton.jsx ── */
.v9-skel{display:block;background:var(--surface-sunken);border-radius:var(--radius-sm);animation:v9skel 1.6s var(--ease-in-out) infinite}
@keyframes v9skel{0%,100%{opacity:1}50%{opacity:.55}}
.v9-skel--text{height:1em;border-radius:6px}

/* ── components/feedback/ZeroState.jsx ── */
.v9-zero{display:grid;justify-items:center;text-align:center;gap:10px;padding:28px 20px}
.v9-zero__ic{width:52px;height:52px;border-radius:var(--radius-full);background:var(--surface-sunken);display:flex;align-items:center;justify-content:center;color:var(--text-muted)}
.v9-zero__title{font:var(--weight-semibold) 15.5px/1.35 var(--font-ui);color:var(--text-body)}
.v9-zero__text{font:400 14px/1.5 var(--font-ui);color:var(--text-muted);max-width:36ch}
.v9-zero__action{margin-top:4px}

/* ── components/forms/Input.jsx ── */
.v9-field{display:grid;gap:6px}
.v9-field__label{font:var(--weight-medium) 14px/1.3 var(--font-ui);color:var(--text-body)}
.v9-field__label small{font-weight:400;color:var(--text-muted);margin-inline-start:6px;font-size:12.5px}
.v9-input{display:flex;align-items:center;gap:10px;min-height:var(--control-height);padding:0 14px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}
.v9-input:hover{border-color:var(--border-strong)}
.v9-input:focus-within{border-color:var(--color-focus);box-shadow:0 0 0 1px var(--color-focus)}
.v9-input--error{border-color:var(--color-danger)}
.v9-input--error:focus-within{border-color:var(--color-danger);box-shadow:0 0 0 1px var(--color-danger)}
.v9-input--disabled{background:var(--surface-sunken);opacity:.6}
.v9-input input,.v9-input textarea{flex:1;min-width:0;border:0;outline:none;background:transparent;font:400 16px/1.4 var(--font-ui);color:var(--text-body);padding:0}
.v9-input textarea{padding:12px 0;resize:vertical;min-height:64px}
.v9-input input::placeholder,.v9-input textarea::placeholder{color:var(--text-faint)}
.v9-input__affix{color:var(--text-muted);font:400 15px var(--font-ui);display:inline-flex;align-items:center;flex:none}
.v9-field__hint{font:400 12.5px/1.4 var(--font-ui);color:var(--text-muted)}
.v9-field__error{display:flex;gap:6px;align-items:flex-start;font:400 12.5px/1.4 var(--font-ui);color:var(--color-danger)}

/* ── components/forms/LanguageSelector.jsx ── */
.v9-lang{position:relative;display:inline-flex;align-items:center;min-height:var(--touch-target);border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-out)}
.v9-lang:hover{background:var(--surface-sunken)}
.v9-lang__globe{position:absolute;inset-inline-start:10px;pointer-events:none;color:var(--text-secondary);display:flex}
.v9-lang__chev{position:absolute;inset-inline-end:8px;pointer-events:none;color:var(--text-muted);display:flex}
.v9-lang select{appearance:none;-webkit-appearance:none;border:0;outline:none;background:transparent;min-height:var(--touch-target);padding:0 28px 0 36px;font:var(--weight-medium) 14.5px/1 var(--font-ui);color:var(--text-body);cursor:pointer}
.v9-lang--framed{border:1px solid var(--border-default);background:var(--surface-card)}
.v9-lang select:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-md)}

/* ── components/forms/SegmentedControl.jsx ── */
.v9-seg{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;background:var(--surface-sunken);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}
.v9-seg__thumb{position:absolute;top:4px;bottom:4px;border-radius:9px;background:var(--surface-card);box-shadow:var(--shadow-1);border:1px solid var(--border-subtle);transition:transform var(--duration-base) var(--ease-out);will-change:transform}
.v9-seg__opt{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:calc(var(--touch-target) - 8px);padding:0 14px;border:0;background:transparent;border-radius:9px;font:var(--weight-medium) 14.5px/1.2 var(--font-ui);color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}
.v9-seg__opt[aria-checked="true"]{color:var(--text-body)}
.v9-seg__opt:hover{color:var(--text-secondary)}
.v9-seg__opt[aria-checked="true"]:hover{color:var(--text-body)}
.v9-seg__opt small{display:block;font:400 11.5px/1.2 var(--font-ui);color:var(--text-muted)}

/* ── components/forms/Select.jsx ── */
.v9-select{position:relative;display:flex;align-items:center;min-height:var(--control-height);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}
.v9-select:hover{border-color:var(--border-strong)}
.v9-select:focus-within{border-color:var(--color-focus);box-shadow:0 0 0 1px var(--color-focus)}
.v9-select--error{border-color:var(--color-danger)}
.v9-select select{appearance:none;-webkit-appearance:none;border:0;outline:none;background:transparent;width:100%;min-height:calc(var(--control-height) - 2px);padding:0 36px 0 14px;font:400 16px/1.4 var(--font-ui);color:var(--text-body);cursor:pointer}
.v9-select--prefixed select{padding-inline-start:40px}
.v9-select__chev{position:absolute;inset-inline-end:12px;pointer-events:none;color:var(--text-muted);display:flex}
.v9-select__prefix{position:absolute;inset-inline-start:12px;pointer-events:none;color:var(--text-muted);display:flex}
.v9-select select:disabled{color:var(--text-faint);cursor:not-allowed}

/* ── components/selectors/DateTimeField.jsx ── */
.v9-dt{display:grid;grid-template-columns:1.4fr 1fr;gap:10px;align-items:start}
.v9-dt__rule{grid-column:1/-1;display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-brand-subtle);border:1px solid var(--border-info);font:400 13px/1.45 var(--font-ui);color:var(--text-secondary)}
.v9-dt__rule a{font-weight:500}

/* ── components/selectors/PassengerLuggageSelector.jsx ── */
.v9-pax{display:grid;gap:2px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:6px 14px}
.v9-pax__row{display:flex;align-items:center;gap:12px;padding:8px 0}
.v9-pax__row + .v9-pax__row{border-top:1px solid var(--border-subtle)}
.v9-pax__ic{color:var(--text-secondary);display:flex;flex:none}
.v9-pax__lbl{flex:1;min-width:0}
.v9-pax__lbl b{display:block;font:var(--weight-medium) 15px/1.3 var(--font-ui);color:var(--text-body)}
.v9-pax__lbl span{font:400 12.5px/1.3 var(--font-ui);color:var(--text-muted)}
.v9-pax__note{display:flex;gap:8px;align-items:flex-start;margin:6px 0 10px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-brand-subtle);border:1px solid var(--border-info);font:400 13px/1.45 var(--font-ui);color:var(--text-secondary)}
.v9-pax__note svg{margin-top:1px}

/* ── components/selectors/Stepper.jsx ── */
.v9-step{display:inline-flex;align-items:center;gap:2px}
.v9-step__btn{width:var(--touch-target);height:var(--touch-target);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-body);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}
.v9-step__btn:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-sunken)}
.v9-step__btn:active:not(:disabled){transform:scale(var(--press-scale))}
.v9-step__btn:disabled{opacity:.35;cursor:not-allowed}
.v9-step__val{min-width:40px;text-align:center;font:var(--weight-semibold) 17px/1 var(--font-ui);color:var(--text-body);font-variant-numeric:tabular-nums}

/* ── ui_kits/customer-web/index.html ── */
body{margin:0;background:var(--surface-page);min-height:100vh}
.v9k-root{max-width:480px;margin:0 auto;padding:10px var(--page-gutter) 32px}
.v9k-toolbar{display:flex;gap:6px;align-items:center;justify-content:space-between;padding:6px 0 12px}
.v9k-tabs{display:flex;gap:4px;flex-wrap:wrap}
.v9k-tab{border:1px solid var(--border-subtle);background:var(--surface-card);color:var(--text-muted);font:500 11.5px/1 var(--font-ui);padding:7px 10px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.v9k-tab--on{border-color:var(--border-brand);color:var(--text-brand);background:var(--surface-brand-subtle)}
.v9k-phone{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-2);overflow:hidden}
.v9k-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}
.v9k-wm{font:600 22px/1 var(--font-display);color:var(--text-body);letter-spacing:-0.015em;cursor:pointer}
.v9k-wm span{color:var(--terra-500)}
.v9k-phone-scroll{padding:16px;max-height:74vh;overflow-y:auto;scroll-behavior:auto}
.v9k-stack{display:grid;gap:14px}
.v9k-stack>*{min-width:0}
.v9k-hero h1{margin:4px 0 0;font:var(--weight-display) var(--text-display-md)/var(--leading-display-md) var(--font-display);color:var(--text-body);letter-spacing:var(--tracking-display)}
.v9k-hero p{margin:6px 0 2px;font:400 14px/1.5 var(--font-ui);color:var(--text-secondary)}
.v9k-swap{display:grid;gap:8px;position:relative}
.v9k-swapbtn{position:absolute;inset-inline-end:12px;top:50%;transform:translateY(-50%);z-index:2;width:34px;height:34px;border-radius:50%;border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-1)}
.v9k-swapbtn:hover{border-color:var(--border-strong)}
.v9k-hint{margin:0;font:400 12.5px/1.45 var(--font-ui);color:var(--text-muted);text-align:center}
.v9k-back{display:inline-flex;gap:6px;align-items:center;border:0;background:none;color:var(--text-brand);font:500 14px var(--font-ui);cursor:pointer;padding:4px 0;justify-self:start}
.v9k-route{display:grid;gap:2px}
.v9k-route b{font:var(--weight-semibold) 17px/1.3 var(--font-ui);color:var(--text-body)}
.v9k-route span{font:400 13px/1.4 var(--font-ui);color:var(--text-muted)}
.v9k-h2{margin:0;font:var(--weight-display) var(--text-display-sm)/var(--leading-display-sm) var(--font-display);color:var(--text-body)}
.v9k-sec{display:grid;gap:10px}
.v9k-sec h3{margin:6px 0 0;font:var(--weight-semibold) 15px/1.3 var(--font-ui);color:var(--text-body)}
.v9k-extra{display:flex;gap:11px;align-items:center}
.v9k-phonerow{display:grid;grid-template-columns:104px 1fr;gap:8px;align-items:start}
/* mirrors the VehicleCategoryCard mobile fix so the page is correct with any bundle build */
.v9-vc__main>div{min-width:0}.v9-vc__caps{flex-wrap:wrap;gap:4px 12px}.v9-vc__price{max-width:132px}.v9-vc__price .v9-badge{white-space:normal;text-align:end}
.v9k-extra__l{flex:1;min-width:0;display:grid;gap:1px}
.v9k-extra__l b{font:500 14px/1.3 var(--font-ui);color:var(--text-body)}
.v9k-extra__l span{font:400 12px/1.3 var(--font-ui);color:var(--text-muted)}
.v9k-extra__p{color:var(--text-muted);font-weight:400;font-size:12.5px}
.v9k-promo{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:start}
.v9k-pay{border:1px solid var(--border-default);border-radius:var(--radius-md);overflow:hidden}
.v9k-pay__methods{display:flex;gap:2px;padding:8px;border-bottom:1px solid var(--border-subtle)}
.v9k-pay__m{flex:1;text-align:center;font:500 13px/1 var(--font-ui);color:var(--text-muted);padding:9px 4px;border-radius:8px}
.v9k-pay__m--on{background:var(--surface-brand-subtle);color:var(--text-brand);box-shadow:inset 0 0 0 1px var(--border-info)}
.v9k-pay__stripe{padding:22px 14px;text-align:center;font:400 13px/1.4 var(--font-ui);color:var(--text-faint);background:var(--surface-sunken)}
.v9k-voucher{border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:14px;display:grid;gap:12px;background:var(--surface-card);box-shadow:var(--shadow-1)}
.v9k-voucher__top{display:flex;justify-content:space-between;gap:10px;align-items:start}
.v9k-voucher__top b{font:var(--weight-semibold) 16px/1.3 var(--font-ui);color:var(--text-body);display:block}
.v9k-voucher__top span{font:400 12.5px/1.4 var(--font-ui);color:var(--text-muted)}
.v9k-voucher__code{font:500 13px/1 var(--font-mono);color:var(--text-brand);background:var(--surface-brand-subtle);border:1px solid var(--border-info);border-radius:8px;padding:7px 10px;white-space:nowrap}
.v9k-voucher__row{display:flex;gap:14px;align-items:center}
.v9k-qr{width:84px;height:84px;border-radius:12px;background:var(--surface-sunken);display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex:none}
.v9k-voucher__meta{display:grid;gap:8px;justify-items:start}
.v9k-voucher__meta span{font:400 12.5px/1.45 var(--font-ui);color:var(--text-secondary)}
.v9k-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.v9k-cancelbox{margin-top:4px}
.v9k-how{display:flex;gap:12px;align-items:flex-start}
.v9k-how__n{width:40px;height:40px;border-radius:var(--radius-md);background:var(--surface-brand-subtle);color:var(--text-brand);display:flex;align-items:center;justify-content:center;flex:none}
.v9k-how b{font:var(--weight-semibold) 14.5px/1.35 var(--font-ui);color:var(--text-body)}
.v9k-how p{margin:3px 0 0;font:400 13.5px/1.5 var(--font-ui);color:var(--text-secondary)}
.v9k-regime{display:grid;gap:6px;justify-items:start}
.v9k-regime p{margin:0;font:400 13.5px/1.5 var(--font-ui);color:var(--text-secondary)}
.v9k-kitnote{font:400 11.5px/1.4 var(--font-ui);color:var(--text-faint);border-top:1px dashed var(--border-default);padding-top:12px;margin-top:6px}
.v9k-kitnote__t{border:0;background:none;color:var(--text-brand);font:inherit;cursor:pointer;text-decoration:underline;padding:0}
.v9k-footer{display:grid;gap:10px;background:var(--surface-sunken);border-radius:var(--radius-md);padding:16px}
.v9k-footer__brand{font:600 19px/1 var(--font-display);color:var(--text-body)}
.v9k-footer__brand span{color:var(--terra-500)}
.v9k-footer__cols{display:flex;gap:14px;flex-wrap:wrap;font:400 13px/1.4 var(--font-ui)}
.v9k-footer__legal{margin:0;font:400 12px/1.5 var(--font-ui);color:var(--text-muted)}
.v9k-phone select{max-width:100%}
