/* Scoped to Add vehicle: preserve the shared desktop drawer / mobile sheet. */
body:has(.mc-add-vehicle.show) #storeMyCarsFab { visibility: hidden; pointer-events: none; }
.modal.mc-add-vehicle { --av-navy: #0a2c5c; --av-muted: #64748b; color: var(--av-navy); font-family: Inter, sans-serif; }
.modal.mc-add-vehicle .mc-add-vehicle__header { padding: 24px; gap: 16px; align-items: center; }
.mc-add-vehicle__hero-icon { width: 60px; height: 60px; display: grid; place-items: center; flex: none; border-radius: 18px; background: #edf5ff; color: var(--av-navy); font-size: 29px; }
.mc-add-vehicle__heading { min-width: 0; flex: 1; }
.modal.mc-add-vehicle .modal-title { margin: 0 0 5px; font-size: 25px; font-weight: 750; letter-spacing: -.6px; line-height: 1.2; }
.mc-add-vehicle__heading p { margin: 0; color: var(--av-muted); font-size: 14px; line-height: 1.5; }
.mc-add-vehicle__close { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border-radius: 50%; border: 0; background: #f1f4f8; color: #526079; font-size: 19px; align-self: flex-start; }
.modal.mc-add-vehicle .mc-add-vehicle__body { padding: 20px 24px; background: #fbfcfe; }
.mc-add-vehicle__section { border: 1px solid #e4eaf2; border-radius: 17px; background: #fff; padding: 20px; margin-bottom: 16px; }
.mc-add-vehicle__section:last-child { margin-bottom: 0; }
.mc-add-vehicle__section-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 19px; }
.mc-add-vehicle__icon { display: grid; place-items: center; width: 42px; height: 44px; border-radius: 13px; background: #edf5ff; color: #175491; font-size: 21px; flex: none; }
.mc-add-vehicle__icon--gold { background: #fff5d9; color: #b57800; }
.mc-add-vehicle__section h3 { color: var(--av-navy); font-size: 17px; font-weight: 700; line-height: 1.3; margin: 0 0 3px; }
.mc-add-vehicle__section-heading p { margin: 0; color: var(--av-muted); font-size: 13px; line-height: 1.5; }
.mc-add-vehicle__field + .mc-add-vehicle__field { margin-top: 16px; }
.mc-add-vehicle__field > label { display: block; color: var(--av-navy); font-size: 14px; font-weight: 650; margin-bottom: 7px; }
.mc-add-vehicle__required { color: #bd2626; }
.mc-add-vehicle__optional { font-weight: 400; color: var(--av-muted); }
.mc-add-vehicle .form-control, .mc-add-vehicle .form-select { height: 48px; border: 1px solid #cdd7e5; border-radius: 10px; font-size: 15px; color: var(--av-navy); background-color: #fff; box-shadow: none; }
.mc-add-vehicle .form-control::placeholder { color: #71819b; opacity: 1; }
.mc-add-vehicle__input { position: relative; }
.mc-add-vehicle__input > i { position: absolute; left: 15px; top: 50%; transform: translateY(-50%); font-size: 18px; color: #71819b; pointer-events: none; }
.mc-add-vehicle__input .form-control { padding-left: 43px; }
.mc-add-vehicle__input--vin .form-control { padding-right: 70px; }
.mc-add-vehicle__counter { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: #71819b; font-size: 12px; font-variant-numeric: tabular-nums; }
.mc-add-vehicle__hint, .mc-add-vehicle__field-status { color: var(--av-muted); font-size: 12px; line-height: 1.5; margin: 6px 0 0; }
.mc-add-vehicle__field-status { display: flex; align-items: baseline; gap: 8px; }
.mc-add-vehicle__field-status button { border: 0; background: transparent; padding: 5px 0; color: #175491; font-weight: 650; text-decoration: underline; flex: none; }
.mc-add-vehicle__field-status .is-error { color: #b42318; }
.mc-add-vehicle__notification { position: relative; display: grid; grid-template-columns: 38px minmax(0, 1fr) 44px; gap: 12px; align-items: center; cursor: pointer; margin: 0; padding: 8px 0; }
.mc-add-vehicle__notification + .mc-add-vehicle__notification { margin-top: 8px; }
.mc-add-vehicle__notification-icon { width: 38px; height: 38px; border-radius: 50%; background: #f0f6fe; color: #175491; display: grid; place-items: center; font-size: 18px; }
.mc-add-vehicle__notification strong { display: block; font-size: 14px; font-weight: 650; line-height: 1.4; }
.mc-add-vehicle__notification small { display: block; margin-top: 3px; font-size: 12px; color: var(--av-muted); line-height: 1.5; }
.mc-add-vehicle__notification input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.mc-add-vehicle__switch { width: 44px; height: 26px; border-radius: 20px; background: #b9c4d3; transition: background .15s; position: relative; }
.mc-add-vehicle__switch::after { content: ''; position: absolute; left: 3px; top: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px #0a2c5c26; transition: transform .15s; }
.mc-add-vehicle__notification input:checked + .mc-add-vehicle__switch { background: #ffbf00; }
.mc-add-vehicle__notification input:checked + .mc-add-vehicle__switch::after { transform: translateX(18px); }
.mc-add-vehicle__notification input:focus-visible + .mc-add-vehicle__switch { outline: 3px solid #175491; outline-offset: 3px; }
.modal.mc-add-vehicle .mc-add-vehicle__footer { padding: 14px 24px max(12px, env(safe-area-inset-bottom)); gap: 4px; display: flex; flex-direction: column; }
.mc-add-vehicle__footer > * { margin: 0; width: 100%; }
.mc-add-vehicle__save { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 50px; border: 0; border-radius: 12px; font-size: 16px; font-weight: 700; color: #072750; background: linear-gradient(110deg, #ffbd08, #ffd44c); }
.mc-add-vehicle__save:hover { background: #ffcc32; color: #072750; }
.mc-add-vehicle__save:disabled { opacity: .65; }
.mc-add-vehicle__cancel { border: 0; min-height: 36px; background: transparent; color: var(--av-navy); font-weight: 600; font-size: 14px; }
.mc-add-vehicle__error { padding: 12px 14px; border: 1px solid #f0c6c2; background: #fff4f2; border-radius: 10px; font-size: 14px; color: #9b251e; margin-bottom: 14px; }
.mc-add-vehicle [hidden] { display: none !important; }
.mc-add-vehicle button:focus-visible, .mc-add-vehicle .form-control:focus { outline: 2px solid #175491; outline-offset: 2px; }
.mc-add-vehicle .vsp-trigger { min-height: 48px; padding: 10px 14px; border: 1px solid #cdd7e5; border-radius: 10px; font-size: 15px; color: #71819b; }
.mc-add-vehicle .vsp-trigger.is-filled { color: var(--av-navy); font-weight: 600; }
.mc-add-vehicle .vsp-trigger:disabled { background: #f5f7fa; opacity: .8; }
.mc-add-vehicle .vsp-trigger-label { white-space: normal; line-height: 1.45; }
.mc-add-vehicle .vsp-panel--garage { color: var(--av-navy); border-radius: 12px; }
.mc-add-vehicle .vsp-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px 0; flex-shrink: 0; }
.mc-add-vehicle .vsp-panel-heading strong { font-size: 15px; }
.mc-add-vehicle .vsp-panel-heading button { border: 0; border-radius: 50%; width: 32px; height: 32px; background: #f1f4f8; color: var(--av-navy); font-size: 24px; line-height: 1; }
.mc-add-vehicle .vsp-search { min-height: 40px; font-size: 16px; }
.mc-add-vehicle .vsp-search-wrap, .mc-add-vehicle .vsp-header { flex-shrink: 0; }
.mc-add-vehicle .vsp-list { min-height: 0; overscroll-behavior: contain; }
.mc-add-vehicle .vsp-series-row { min-height: 42px; font-size: 14px; font-weight: 650; background: #f5f7fb; border-bottom: 1px solid #e8edf4; }
.mc-add-vehicle .vsp-model-row { min-height: 42px; padding: 10px 18px 10px 24px; font-size: 14px; }
.mc-add-vehicle .vsp-model-row.is-selected { background: #fff4cb; color: var(--av-navy); }
.mc-add-vehicle .vsp-clear { padding: 12px 16px; border: 0; border-top: 1px solid #e4eaf2; background: #fff; color: #175491; font-size: 13px; font-weight: 600; text-align: left; flex-shrink: 0; }
.mc-add-vehicle .select2-container { width: 100% !important; }
/* Override the legacy .js-garage-select sibling sizing, including its important line-height. */
.modal.mc-add-vehicle .js-garage-select + .select2-container .select2-selection--single { height: 48px !important; min-height: 48px !important; border: 1px solid #cdd7e5; border-radius: 10px; padding: 11px 36px 11px 13px; font-size: 15px; box-shadow: none; }
.modal.mc-add-vehicle .js-garage-select + .select2-container .select2-selection__rendered { color: var(--av-navy); line-height: 24px !important; height: auto; padding: 0; font-size: inherit; }
.mc-add-vehicle .select2-container--bootstrap-5 .select2-selection__placeholder { color: #71819b; }
.mc-add-vehicle .select2-container--bootstrap-5.select2-container--disabled .select2-selection { background-color: #f5f7fa; opacity: .85; }
.mc-add-vehicle .select2-container--bootstrap-5.select2-container--focus .select2-selection { border-color: #175491; box-shadow: 0 0 0 3px #17549118; }
.mc-add-vehicle .select2-dropdown { border-color: #cdd7e5; border-radius: 10px; overflow: hidden; box-shadow: 0 8px 28px #0a2c5c1c; color: var(--av-navy); font-size: 14px; }
.mc-add-vehicle .select2-search__field { min-height: 40px; font-size: 16px; }
.mc-add-vehicle .select2-container--bootstrap-5 .select2-results__options { max-height: min(270px, 34dvh); }
@media (max-width: 767.98px) {
    .modal.mc-add-vehicle .mc-add-vehicle__header { padding: 14px 16px 16px; gap: 12px; }
    .mc-add-vehicle__hero-icon { width: 48px; height: 50px; border-radius: 14px; font-size: 25px; }
    .modal.mc-add-vehicle .modal-title { font-size: 22px; }
    .mc-add-vehicle__heading p { font-size: 12px; }
    .mc-add-vehicle__close { width: 36px; height: 36px; }
    .modal.mc-add-vehicle .mc-add-vehicle__body { padding: 14px 12px; }
    .mc-add-vehicle__section { padding: 16px 14px; margin-bottom: 12px; border-radius: 15px; }
    .mc-add-vehicle__section-heading { margin-bottom: 16px; }
    .mc-add-vehicle .form-control, .mc-add-vehicle .form-select, .modal.mc-add-vehicle .js-garage-select + .select2-container .select2-selection--single { font-size: 16px; }
    .mc-add-vehicle .vsp-trigger { font-size: 16px; }
    .modal.mc-add-vehicle .mc-add-vehicle__footer { padding: 12px 16px max(8px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
    .mc-add-vehicle__switch, .mc-add-vehicle__switch::after { transition: none; }
}
