﻿/* ============ Pagina rezervare - stilizare v2 (maxauto look) ============ */
.rez-page { padding: 36px 0 70px; }

/* Card masina (sidebar) */
.rez-car-card { background: var(--bs-background-card); border: 1px solid var(--bs-border-color); border-radius: 16px; overflow: hidden; }
.rez-car-card .car-img { width: 100%; height: 240px; object-fit: cover; display: block; }
.rez-car-card .car-info { padding: 16px 18px 6px; }
.rez-car-card .car-info h5 { font-weight: 800; }

/* Cupon */
.cupon-input-wrap { padding: 14px 18px 4px; }
.cupon-input-row { display: flex; gap: 8px; }
.cupon-input-field { position: relative; flex: 1; }
.cupon-input-field input { width: 100%; padding: 11px 12px 11px 36px; border: 1px solid var(--bs-border-color); border-radius: 10px; font-size: 14px; }
.cupon-input-icon { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--bs-brand-2); }
.btn-aplica-cupon { background: var(--bs-button-bg); color: #fff; border: none; border-radius: 10px; padding: 0 18px; font-weight: 700; font-size: 14px; cursor: pointer; }
.btn-aplica-cupon:hover { background: var(--bs-brand-2-darken, #0a58ca); }

/* Carduri pasi */
.step.rez-form-card { background: var(--bs-background-card); border: 1px solid var(--bs-border-color); border-radius: 16px; margin-bottom: 22px; overflow: hidden; }
.card-head { display: flex; align-items: center; gap: 12px; padding: 16px 22px; border-bottom: 1px solid var(--bs-border-color); background: var(--bs-neutral-100); }
.card-head h6 { margin: 0; font-weight: 800; font-size: 16px; }
.head-icon { width: 38px; height: 38px; border-radius: 10px; background: var(--bs-brand-2); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 17px; }
.card-body-inner { padding: 22px; }
.card-foot { padding: 16px 22px; border-top: 1px solid var(--bs-border-color); display: flex; justify-content: space-between; gap: 12px; }

/* Inputuri */
.rez-label { display: block; font-size: 13px; font-weight: 700; margin-bottom: 6px; color: var(--bs-neutral-700); }
.rez-input, select.rez-input { width: 100%; padding: 12px 14px; border: 1.5px solid var(--bs-border-color); border-radius: 10px; font-size: 14.5px; background: var(--bs-background-card); color: var(--bs-neutral-1000); }
.rez-input:focus { outline: none; border-color: var(--bs-brand-2); box-shadow: 0 0 0 3px rgba(13,110,253,.12); }

/* Butoane navigare */
.btn-rez-next { background: var(--bs-button-bg); color: #fff; border: none; border-radius: 12px; padding: 13px 26px; font-weight: 800; font-size: 15px; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; transition: background .2s; }
.btn-rez-next:hover { background: var(--bs-brand-2-darken, #0a58ca); }
.btn-rez-back { background: var(--bs-neutral-100); color: var(--bs-neutral-900); border: none; border-radius: 12px; padding: 13px 22px; font-weight: 700; font-size: 14px; cursor: pointer; }

/* Pastile si alerte */
.tax-info-pill { display: inline-flex; align-items: center; gap: 8px; background: rgba(13,110,253,.08); color: var(--bs-brand-2); border-radius: 999px; padding: 7px 14px; font-size: 13px; font-weight: 600; margin: 4px 6px 4px 0; }
.rez-price-preview { margin: 14px 18px 18px; background: var(--bs-neutral-100); border-radius: 12px; padding: 14px 16px; }
.rez-price-preview .preview-title { font-weight: 800; font-size: 13px; text-transform: uppercase; letter-spacing: .5px; color: var(--bs-brand-2); margin-bottom: 8px; }
.rez-cupon-badge { margin: 0 18px 16px; background: rgba(34,197,94,.08); border: 1px solid rgba(34,197,94,.3); border-radius: 12px; padding: 12px 14px; }

/* Stepper orizontal 1-2-3 */
.rez-stepper { display: flex !important; align-items: center; flex-wrap: wrap; gap: 6px; margin-bottom: 26px; }
.rez-step-item { display: inline-flex; align-items: center; gap: 8px; }
.rez-step-item + .rez-step-item { margin-left: 26px; position: relative; }
.rez-step-item + .rez-step-item::before { content: ''; position: absolute; left: -18px; top: 50%; width: 10px; height: 2px; background: var(--bs-border-color); }
.rez-step-circle { width: 30px; height: 30px; border-radius: 50%; background: var(--bs-neutral-100); color: var(--bs-neutral-500); display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 13px; border: 2px solid var(--bs-border-color); }
.rez-step-circle.active { background: var(--bs-brand-2); color: #fff; border-color: var(--bs-brand-2); }
.rez-step-label { font-size: 13.5px; font-weight: 700; color: var(--bs-neutral-500); }
.rez-step-label.active { color: var(--bs-neutral-1000); }

/* Imaginea masinii: intreaga, fara taiere */
.rez-car-card .car-img { height: auto; object-fit: contain; background: var(--bs-neutral-100); }

/* Linia dintre pasi */
.rez-step-line { flex: 0 0 34px; height: 2px; background: var(--bs-border-color); margin: 0 4px; border-radius: 2px; }
.rez-step-item + .rez-step-item { margin-left: 0; }
.rez-step-item + .rez-step-item::before { display: none; }

/* Butonul de trimitere */
.btn-rez-submit { background: var(--bs-button-bg); color: #fff; border: none; border-radius: 12px; padding: 14px 30px; font-weight: 800; font-size: 15px; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; transition: background .2s, transform .15s; }
.btn-rez-submit:hover { background: #0a58ca; transform: translateY(-1px); }
.btn-rez-submit:disabled { opacity: .6; cursor: not-allowed; }
