/**
 * Kiralama akışı renk teması
 * Marka yeşili (--color-primary) korunur; kiralama CTA / adımlar mavi (--color-rental).
 * Mevcut layout ve bileşen yapısına dokunmaz — yalnızca renk.
 */

/* ---- Kiralama birincil butonları (İlan Ver yeşil kalır) ---- */
#rental-box .btn--primary,
.rental-wizard .btn--primary,
.rental-wizard__nav .btn--primary,
#rental-wizard-next,
.rental-form .btn--primary,
.detail__rent-btn,
.detail__rent-btn.btn--primary,
body[data-page="detail"] .detail-booking .btn--primary,
body[data-page="reservation"] .btn--primary,
body[data-page="rental-process"] .btn--primary,
body[data-page="rental-process"] .rp-btn--primary,
.handoff-modal .btn--primary,
.handoff-card .btn--primary,
.qr-rental-card .btn--primary {
  background: #2563eb !important;
  background-image: linear-gradient(145deg, #2563eb, #1d4ed8) !important;
  color: #fff !important;
  border: none !important;
  opacity: 1 !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.32) !important;
  -webkit-text-fill-color: #fff !important;
}

#rental-wizard-next:disabled,
#rental-box .btn--primary:disabled,
.rental-wizard__nav .btn--primary:disabled {
  background: #93c5fd !important;
  background-image: none !important;
  color: #fff !important;
  opacity: 1 !important;
  cursor: not-allowed;
  box-shadow: none !important;
}

#rental-box .btn--primary:hover,
.rental-wizard .btn--primary:hover,
.rental-wizard__nav .btn--primary:hover,
.rental-form .btn--primary:hover,
.detail__rent-btn:hover,
.detail__rent-btn.btn--primary:hover,
body[data-page="detail"] .detail-booking .btn--primary:hover,
body[data-page="reservation"] .btn--primary:hover,
body[data-page="rental-process"] .btn--primary:hover,
body[data-page="rental-process"] .rp-btn--primary:hover,
.handoff-modal .btn--primary:hover,
.handoff-card .btn--primary:hover,
.qr-rental-card .btn--primary:hover {
  box-shadow: 0 8px 22px var(--color-rental-shadow-strong) !important;
}

#rental-box .btn--outline:hover,
.rental-wizard .btn--outline:hover,
.rental-form .btn--outline:hover,
body[data-page="detail"] .detail-booking .btn--outline:hover,
body[data-page="reservation"] .btn--outline:hover,
.handoff-modal .btn--outline:hover {
  border-color: var(--color-rental) !important;
  color: var(--color-rental-hover) !important;
  background: var(--color-rental-light) !important;
}

/* ---- Kiralama kutusu / özet ---- */
.detail__rent-btn {
  box-shadow: 0 4px 16px var(--color-rental-shadow) !important;
}

.detail__rent-btn:hover {
  box-shadow: 0 6px 22px var(--color-rental-shadow-strong) !important;
}

.detail__booking-card .rental-summary,
.rental-summary {
  background: linear-gradient(135deg, var(--color-surface-muted) 0%, var(--color-rental-light) 100%) !important;
  border-color: color-mix(in srgb, var(--color-rental) 18%, transparent) !important;
}

.detail__booking-card .form-group input:focus:not([type="date"]),
#rental-box input:focus,
#rental-box textarea:focus,
#rental-box select:focus {
  border-color: var(--color-rental) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-rental) 18%, transparent) !important;
}

.rental-summary__total span:last-child {
  color: var(--color-rental-hover) !important;
}

.rental-summary__row--deposit span:last-child,
.rental-summary__row--deposit {
  color: var(--color-status-deposit);
}

.rental-summary__row--deposit span:last-child {
  color: var(--color-status-deposit) !important;
  font-weight: 700;
}

.detail-hero__deposit,
.detail-hero__deposit strong {
  color: var(--color-status-deposit);
}

/* ---- Teslimat türü (kargo / elden) ---- */
.rental-delivery-type__option input:checked + .rental-delivery-type__card {
  border-color: var(--color-rental) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-rental) 16%, transparent) !important;
  background: var(--color-rental-light) !important;
}

.rental-delivery-type__option input:checked + .rental-delivery-type__card .rental-delivery-type__radio {
  border-color: var(--color-rental) !important;
}

.rental-delivery-type__option input:checked + .rental-delivery-type__card .rental-delivery-type__radio::after {
  background: var(--color-rental) !important;
}

.rental-delivery-type__badge {
  color: var(--color-rental-hover) !important;
  background: var(--color-rental-soft) !important;
}

.rental-cargo-hint {
  border-color: var(--color-rental-soft) !important;
  background: linear-gradient(135deg, var(--color-rental-light) 0%, var(--color-surface) 70%) !important;
  color: var(--color-rental-ink) !important;
}

.rental-cargo-hint .icon {
  color: var(--color-rental) !important;
}

/* ---- Wizard adımlar ---- */
.rental-wizard__pill.is-active {
  background: linear-gradient(135deg, var(--color-rental), var(--color-rental-hover)) !important;
  box-shadow: 0 6px 16px var(--color-rental-shadow) !important;
}

.rental-wizard__pill.is-done {
  background: var(--color-rental-soft) !important;
  color: var(--color-rental-hover) !important;
}

/* ---- Durum kartları ---- */
.rental-status--pending {
  border-color: color-mix(in srgb, var(--color-status-pending) 45%, white);
  background: var(--color-status-pending-soft);
}

.rental-status--pending .rental-status__head {
  color: #b45309;
}

.rental-status--rejected,
.rental-status--cancelled {
  border-color: color-mix(in srgb, var(--color-status-error) 40%, white);
  background: var(--color-status-error-soft);
}

.rental-status--rejected .rental-status__head,
.rental-status--cancelled .rental-status__head {
  color: var(--color-status-error);
}

.rental-status--approved,
.rental-status--completed,
.rental-status--renting,
.rental-status--qr_ready,
.rental-status--delivered {
  border-color: color-mix(in srgb, var(--color-status-success) 35%, white);
}

.rental-status--approved .rental-status__head,
.rental-status--completed .rental-status__head {
  color: var(--color-primary-dark);
}

/* ---- Takvim (kiralama) ---- */
.rcal-view-btn.is-active {
  color: var(--color-rental) !important;
}

.rcal-day--free:not(:disabled):hover {
  box-shadow: 0 4px 10px color-mix(in srgb, var(--color-rental) 18%, transparent) !important;
  border-color: var(--color-rental-soft) !important;
}

.rcal-day--weekend.rcal-day--free {
  background: var(--color-rental-light) !important;
}

.rcal-day--selected {
  background: var(--color-rental-soft) !important;
  border-color: var(--color-rental) !important;
  color: var(--color-rental-ink) !important;
  box-shadow: inset 0 0 0 2px var(--color-rental) !important;
}

.rcal-day--in-range {
  background: linear-gradient(180deg, var(--color-rental-light), var(--color-rental-soft)) !important;
  border-color: var(--color-rental-soft) !important;
  color: var(--color-rental-ink) !important;
}

.rcal-day--range-start,
.rcal-day--range-end {
  background: color-mix(in srgb, var(--color-rental) 55%, white) !important;
  color: var(--color-rental-ink) !important;
  border-color: var(--color-rental) !important;
  box-shadow: inset 0 0 0 2px var(--color-rental-hover) !important;
}

.rcal-day--selected:focus,
.rcal-day--selected:focus-visible,
.rcal-day--range-start:focus,
.rcal-day--range-start:focus-visible,
.rcal-day--range-end:focus,
.rcal-day--range-end:focus-visible {
  color: var(--color-rental-ink) !important;
}

.rcal__body--loading::after {
  border-top-color: var(--color-rental) !important;
}

.rcal__selection--active {
  color: var(--color-rental-hover) !important;
}

.rcal__selection-dot {
  background: var(--color-rental) !important;
}

/* Müsait = başarı yeşili; seçim = kiralama mavisi */
.rcal-legend--free {
  background: var(--color-status-success) !important;
}

.rcal-legend--booked {
  background: var(--color-status-error) !important;
}

/* ---- Handoff / teslim planı ---- */
.handoff-slot.is-selected,
.handoff-modal .handoff-slot.is-selected {
  border-color: var(--color-rental) !important;
  background: var(--color-rental-light) !important;
  color: var(--color-rental-ink) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-rental) 25%, transparent);
}

.handoff-badge--proposed {
  background: var(--color-status-pending-soft) !important;
  color: #92400e !important;
}

.handoff-badge--confirmed {
  background: #dcfce7 !important;
  color: #166534 !important;
}

/* ---- Kiralama süreci sayfası ---- */
body[data-page="rental-process"] {
  --rp-green: var(--color-primary);
  --rp-green-soft: var(--color-primary-light);
  --rp-blue: var(--color-rental);
  --rp-blue-soft: var(--color-rental-light);
  --rp-action: var(--color-rental);
  --rp-action-hover: var(--color-rental-hover);
}

body[data-page="rental-process"] .rp-progress__pct {
  color: var(--rp-action) !important;
}

body[data-page="rental-process"] .rp-progress__fill {
  background: linear-gradient(90deg, var(--color-rental), var(--color-rental-hover)) !important;
}

body[data-page="rental-process"] .rp-btn--primary {
  background: linear-gradient(145deg, var(--rp-action), var(--rp-action-hover)) !important;
  box-shadow: 0 4px 14px var(--color-rental-shadow) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  opacity: 1 !important;
}

body[data-page="rental-process"] .rp-btn--primary:disabled,
body[data-page="rental-process"] .rp-sticky .rp-btn--primary:disabled {
  background: #93c5fd !important;
  background-image: none !important;
  color: #fff !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: none !important;
  cursor: not-allowed;
}

body[data-page="rental-process"] .rp-loading__spinner {
  border-top-color: var(--color-rental) !important;
}

/* Tamamlanan adımlar yeşil (başarı) kalır — --rp-green */

/* ---- Koruma paketi: bilgi mavisi, başarı yeşili ---- */
.pp-option__benefits li::before {
  color: var(--color-status-success) !important;
}

.pp-option__fee {
  background: var(--color-rental-light) !important;
  color: var(--color-rental-hover) !important;
}

.pp-hint {
  color: #b45309 !important;
  background: var(--color-status-pending-soft) !important;
  border-color: #fde68a !important;
}

.rental-pay-note {
  background: linear-gradient(135deg, var(--color-rental-light), var(--color-surface)) !important;
  border-color: var(--color-rental-soft) !important;
  color: var(--color-rental-ink) !important;
}

/* ---- Rezervasyon sayfası ---- */
body[data-page="reservation"] .rental-summary,
body[data-page="reservation"] .detail__booking-card {
  --local-accent: var(--color-rental);
}

[data-theme="dark"] .detail__booking-card .rental-summary,
[data-theme="dark"] .rental-summary {
  background: linear-gradient(135deg, var(--color-surface-muted) 0%, var(--color-rental-light) 100%) !important;
}

[data-theme="dark"] .rental-delivery-type__option input:checked + .rental-delivery-type__card {
  background: var(--color-rental-light) !important;
}

[data-theme="dark"] .rcal-day--selected,
[data-theme="dark"] .rcal-day--in-range,
[data-theme="dark"] .rcal-day--range-start,
[data-theme="dark"] .rcal-day--range-end {
  color: var(--color-rental-ink) !important;
}
