/* driver.css (FULL REPLACEMENT)
   Modern, clean, responsive driver portal UI.
   Overrides /assets/styles.css safely.
*/

:root{
  --bg: #f6f7fb;
  --card: #ffffff;
  --text: #0f172a;
  --muted: #64748b;
  --line: #e5e7eb;
  --line2:#d1d5db;
  --primary:#0f172a;
  --primary2:#111827;
  --shadow: 0 10px 30px rgba(15,23,42,.08);
  --radius: 18px;
}

/* Base */
*{ box-sizing:border-box; }
body{
  margin:0;
  font-family: var(--font-sans);
  background: var(--bg);
  color: var(--text);
}

.hidden{ display:none !important; }

/* Header (works even if assets/styles.css exists) */
.topbar{
  background: rgba(255,255,255,.9);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(8px);
}
.topbar__inner{
  padding: 12px 0;
}

/* Container */
.container{
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 18px;
}

/* Page title area */
.section{
  padding: 26px 0 42px;
}
h2{
  font-size: 34px;
  letter-spacing: 0;
  margin: 0 0 8px;
}
.lead{
  margin: 0 0 18px;
  color: var(--muted);
  line-height: 1.55;
  font-size: 15.5px;
}

/* Grid layout */
.dp-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-items: start;
}
.auth-stack{display:grid;grid-template-columns:1fr;gap:16px}
.driver-register-toggle{display:flex;justify-content:center}
.register-cta{width:100%;max-width:520px;font-size:15px !important;padding:14px 18px !important;box-shadow:0 14px 30px rgba(15,23,42,.08)}
.grid2{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

/* Tiles */
.tile{
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 18px;
}
.tile h3{
  margin: 0 0 8px;
  font-size: 20px;
  letter-spacing: 0;
}
.tile .lead{
  margin-top: 6px;
}

/* Labels + inputs */
.label{
  display:block;
  margin: 12px 0 6px;
  font-weight: 700;
  font-size: 13px;
  color: #1f2937;
}
input, textarea, select{
  width: 100% !important;
  border: 1px solid var(--line2);
  border-radius: 12px;
  padding: 12px 12px;
  font-size: 14.5px;
  background: #fff;
  color: var(--text);
  outline: none;
}
input:focus, textarea:focus, select:focus{
  border-color: #94a3b8;
  box-shadow: 0 0 0 4px rgba(148,163,184,.25);
}

/* Buttons (override assets) */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid transparent;
  font-weight: 600;
  cursor: pointer;
  user-select: none;
  text-decoration: none;
  white-space: normal;
  line-height: 1.25;
  word-break: normal;
  overflow-wrap: normal;
  font-size: 14px;
  min-height: 44px;
  max-width: 100%;
  transition: transform .05s ease, filter .15s ease, background .15s ease, border-color .15s ease;
}
.btn:active{ transform: translateY(1px); }

.btn.primary{
  background: var(--primary);
  color: #fff;
}
.btn.primary:hover{ filter: brightness(.96); }

.btn.secondary{
  background: #fff;
  border-color: var(--line);
  color: var(--text);
}
.btn.secondary:hover{
  background: #f8fafc;
  border-color: #cbd5e1;
}

/* Rows */
.row{
  display:flex;
  gap: 10px;
  align-items:center;
  flex-wrap: wrap;
  margin-top: 12px;
}

/* Services checkboxes */
.svc-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
  margin-top:10px;
}
.svc{
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid var(--line);
  border-radius: 12px;
  padding:10px 12px;
  background:#fff;
  font-weight:600;
  color:#0f172a;
}
.svc input{ width:auto !important; }

@media(max-width:900px){
  .svc-grid{ grid-template-columns:1fr; }
}

/* Status submenu */
.statusbar{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.status-pill{
  padding:8px 12px;
  border-radius:999px;
  border:1px solid var(--line);
  background:#fff;
  cursor:pointer;
  font-weight:700;
  font-size:13px;
  color:#0f172a;
  line-height:1.25;
  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
  min-height:42px;
}
.status-pill:hover{ background:#f8fafc; border-color:#cbd5e1; }
.status-pill.active{
  background: rgba(15,23,42,.08);
  border-color: rgba(15,23,42,.25);
  color: #0f172a;
}

/* Badges */
.badge{
  display:inline-flex;
  align-items:center;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid var(--line);
  font-size:12px;
  font-weight:700;
  background:#fff;
  color:#334155;
  line-height:1.25;
  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
}
.badge.new{background:rgba(59,130,246,.10);border-color:rgba(59,130,246,.35);color:#1d4ed8}
.badge.assigned{background:rgba(99,102,241,.10);border-color:rgba(99,102,241,.35);color:#4338ca}
.badge.enroute{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.45);color:#92400e}
.badge.arrived{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.35);color:#065f46}
.badge.completed{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.35);color:#166534}
.badge.paid{background:rgba(15,23,42,.10);border-color:rgba(15,23,42,.25);color:#0f172a}
.badge.cancelled{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.35);color:#b91c1c}

/* Messages */
.msg{
  margin-top: 12px;
  color: #0f172a;
  background: #f8fafc;
  border: 1px solid var(--line);
  padding: 10px 12px;
  border-radius: 12px;
  min-height: 18px;
}
.msg:empty{
  display:none;
}

/* Driver app area */
.list{
  display:grid;
  gap: 12px;
  margin-top: 12px;
}
.item{
  background:#fff;
  border:1px solid var(--line);
  border-radius: 16px;
  padding: 14px;
}
.actions{
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
  margin-top: 10px;
}
.row .btn,
.actions .btn{
  flex: 0 1 auto;
  min-width: 148px;
}

/* Make the “Reset password” button feel secondary */
#resetBtn{
  width:100%;
}

/* Responsive */
@media (max-width: 980px){
  .dp-grid{ grid-template-columns: 1fr; }
  .grid2{ grid-template-columns: 1fr; }
  h2{ font-size: 28px; }
}

.multi-area{position:relative;margin-top:8px}
.multi-area__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line2, var(--line));border-radius:14px;padding:13px 14px;background:#fff;color:#0f172a;font-size:14.5px;font-weight:600;cursor:pointer;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.multi-area__trigger:hover{background:#f8fafc;border-color:#cbd5e1}
.multi-area__trigger:focus-visible{outline:none;border-color:#94a3b8;box-shadow:0 0 0 4px rgba(148,163,184,.25)}
.multi-area__trigger-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.multi-area__trigger-icon{display:inline-flex;align-items:center;justify-content:center;color:#64748b;flex:0 0 auto}
.multi-area__trigger-icon svg{width:18px;height:18px;display:block;transition:transform .15s ease}
.multi-area.has-selection .multi-area__trigger-text{color:#0f172a}
.multi-area:not(.has-selection) .multi-area__trigger-text{color:#64748b}
.multi-area.is-open .multi-area__trigger{border-color:#94a3b8;box-shadow:0 0 0 4px rgba(148,163,184,.2)}
.multi-area.is-open .multi-area__trigger-icon svg{transform:rotate(180deg)}
.multi-area__panel{position:absolute;left:0;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 40px rgba(15,23,42,.16);z-index:30;padding:10px}
.multi-area__hint{margin:0 0 8px;font-size:12px;color:var(--muted);line-height:1.45}
.multi-area__list{display:grid;gap:6px;max-height:240px;overflow:auto}
.multi-area__option{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid transparent;border-radius:12px;background:#fff;cursor:pointer;font-weight:600;color:#0f172a;line-height:1.35}
.multi-area__option:hover{background:#f8fafc;border-color:#e2e8f0}
.multi-area__option input{width:18px !important;height:18px;margin:0;flex:0 0 18px}
.multi-area__chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.multi-area__helper{font-size:12px;color:var(--muted);line-height:1.45}
.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;background:rgba(15,23,42,.08);font-weight:700}
.chip button{border:0;background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;color:#0f172a}
.chip button svg{width:14px;height:14px;display:block}
.field-note{font-size:12px;color:var(--muted);margin-top:6px}
.input-inline{max-width:180px}


.availability-toggle{display:flex;align-items:center;gap:12px;min-height:44px;}
.switch{position:relative;display:inline-flex;width:56px;height:32px;flex:0 0 auto;}
.switch input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;}
.slider{position:absolute;inset:0;border-radius:999px;background:#d1d5db;transition:background-color .2s ease, box-shadow .2s ease;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08);}
.slider::before{content:"";position:absolute;left:4px;top:4px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.18);transition:transform .2s ease;}
.switch input:checked + .slider{background:#16a34a;}
.switch input:focus-visible + .slider{box-shadow:0 0 0 3px rgba(22,163,74,.18);}
.switch input:checked + .slider::before{transform:translateX(24px);}
.availability-text{font-weight:700;font-size:14px;line-height:1.1;letter-spacing:.04em;}
.availability-text.online{color:#15803d;}
.availability-text.offline{color:#dc2626;}


.verification-card{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbff)}
.verification-state{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff}
.verification-state strong{display:block;margin-bottom:6px}
.badge.verified-partner{background:rgba(29,155,240,.12);border-color:rgba(29,155,240,.35);color:#0b63c7}
.badge.pending-review{background:rgba(99,102,241,.10);border-color:rgba(99,102,241,.35);color:#4338ca}
.badge.rejected-review{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.35);color:#b91c1c}


.driver-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.verified-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;min-width:20px;min-height:20px;flex:0 0 20px}
.verified-badge svg{width:20px;height:20px;display:block;filter:drop-shadow(0 2px 6px rgba(29,155,240,.22))}
.verified-badge svg path:first-child{fill:#1d9bf0}
.verified-badge .verified-check{fill:#fff}

.driver-name-row{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:700;
}

.driver-email{
  display:block;
  font-size:13px;
  color:var(--muted);
  margin-top:2px;
}

.partner-hero{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:26px 20px;background:#fff}
.partner-hero__summary{display:flex;align-items:center;gap:16px;min-width:0;flex:1 1 auto}
.partner-hero__identity{min-width:0}
.partner-hero__name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.partner-hero__name-row h3{font-size:24px;letter-spacing:0}
.partner-hero__actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.partner-hero__buttons{margin-top:0;justify-content:flex-end}
.partner-hero__hint{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;background:rgba(37,99,235,.08);color:#1d4ed8;font-size:13px;font-weight:700;line-height:1.45}
.partner-avatar{width:78px;height:78px;border-radius:24px;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;overflow:hidden;box-shadow:0 18px 36px rgba(15,23,42,.12);flex:0 0 78px}
.partner-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.partner-avatar__inner,.profile-photo-preview__inner{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.profile-photo-card{border:1px solid var(--line);border-radius:16px;padding:14px;background:linear-gradient(180deg,#ffffff,#f8fbff)}
.location-sync-card{border:1px solid rgba(37,99,235,.14);border-radius:16px;padding:14px;background:linear-gradient(180deg,#ffffff,#f3f8ff)}
#profileCurrentLocation[readonly]{background:#f8fafc;color:#334155}
.profile-photo-preview{width:72px;height:72px;border-radius:22px;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;overflow:hidden;flex:0 0 72px}
.profile-photo-preview img{width:100%;height:100%;object-fit:cover;display:block}
.driver-setup-card{border:1px solid rgba(37,99,235,.14);background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)}
.driver-setup-list{display:grid;gap:12px}
.driver-setup-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff}
.driver-setup-item.is-complete{background:rgba(34,197,94,.06);border-color:rgba(34,197,94,.22)}
.driver-setup-item__icon{width:42px;height:42px;border-radius:14px;background:#f8fafc;color:#334155;display:flex;align-items:center;justify-content:center}
.driver-setup-item__icon svg{width:20px;height:20px;display:block}
.driver-setup-item.is-complete .driver-setup-item__icon{background:rgba(34,197,94,.12);color:#15803d}
.driver-setup-item__body{min-width:0}
.driver-setup-item__title{display:block;font-size:15px;font-weight:700;color:#0f172a}
.driver-setup-item__meta{display:block;margin-top:6px;font-size:13px;color:#64748b;line-height:1.5}
.driver-setup-item__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.partner-availability-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.partner-availability-label{font-weight:700;color:#334155}
.switch--pill{width:64px;height:36px}
.switch--pill .slider::before{width:28px;height:28px}
.switch--pill input:checked + .slider::before{transform:translateX(28px)}
.availability-pill{display:inline-flex;align-items:center;justify-content:center;min-width:110px;padding:10px 16px;border-radius:999px;font-weight:700;border:1px solid var(--line)}
.availability-pill.online{background:#16a34a;color:#fff;border-color:#16a34a}
.availability-pill.offline{background:#fff;color:#334155}

@media (max-width: 980px){
  .partner-hero{flex-direction:column;align-items:flex-start}
  .partner-hero__summary{width:100%;align-items:flex-start}
  .partner-hero__actions{width:100%;align-items:flex-start}
  .partner-hero__buttons{justify-content:flex-start}
  .driver-setup-item{grid-template-columns:1fr}
  .driver-setup-item__actions{justify-content:flex-start}
}

.partner-availability-top{cursor:default}
.partner-availability-top .switch{pointer-events:auto}
.partner-availability-top .availability-pill{pointer-events:none}
#partnerHeroBadgeWrap .verified-badge{width:24px;height:24px;min-width:24px;min-height:24px}

  .brand__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 48px;
  flex: 0 0 64px;
  overflow: hidden;
  border-radius: 12px;
  background: transparent;
}

.brand__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* =========================
   PREMIUM FOOTER
========================= */

.premium-footer {
  margin-top: 40px;
  padding-top: 24px;
  background: #ffffff;
  border-top: 1px solid #e5e7eb;
}

/* GRID */
.footer__inner {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 40px;
  align-items: start;
}

/* BRAND */
.footer-brand b {
  font-size: 16px;
  font-weight: 700;
}

.footer-desc {
  margin-top: 6px;
  color: #64748b;
  font-size: 13px;
}

.footer-copy {
  margin-top: 12px;
  font-size: 12px;
  color: #94a3b8;
}

/* LINKS */
.footer-title {
  font-weight: 700;
  font-size: 14px;
  margin-bottom: 10px;
  color: #0f172a;
}

.footer-links {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.footer-links a {
  display: flex;
  align-items: center;
  gap: 8px;

  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  color: #475569;

  transition: all 0.15s ease;
}

.footer-links a:hover {
  color: #2563eb;
  transform: translateX(3px);
}

.link-icon {
  font-size: 14px;
}

/* ACTIONS */
.footer-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* DIVIDER */
.footer-divider {
  height: 1px;
  background: #e5e7eb;
  margin: 20px 0;
}

/* BOTTOM */
.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 20px;
}

.footer-note {
  font-size: 12px;
  color: #64748b;
}

.footer-mini-links {
  display: flex;
  gap: 16px;
}

.footer-mini-links a {
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  color: #64748b;
}

.footer-mini-links a:hover {
  color: #2563eb;
}

/* =========================
   MOBILE
========================= */

@media (max-width: 768px) {

  .footer__inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .footer-bottom {
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
  }

}
/* FIXED ICON SIZE */
.link-icon {
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 20px;
  color: #2563eb;
}

.link-icon svg {
  width: 20px;
  height: 20px;
  display: block;
  stroke-width: 1.8;
}
.rating-summary{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;font-weight:700;color:#0f172a;font-size:13px}
.rating-summary--empty{font-weight:700;color:#64748b}
.rating-stars{display:inline-flex;align-items:center;gap:2px}
.rating-star{width:16px;height:16px;display:block;color:#cbd5e1}
.rating-star path{fill:currentColor}
.rating-star.active{color:#f59e0b}
.rating-score{font-variant-numeric:tabular-nums}
.rating-count{color:#64748b;font-weight:700}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}


.checkbox-row{display:flex;align-items:flex-start;gap:10px;margin-top:12px;color:#0f172a;font-size:14px;line-height:1.5}
.checkbox-row input{width:auto !important;flex:0 0 auto;margin-top:3px;accent-color:var(--primary)}
.checkbox-row span{display:block}
.otp-modal{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px}
.otp-modal.hidden{display:none !important}
.otp-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.56);backdrop-filter:blur(2px)}
.otp-modal__dialog{position:relative;z-index:1;width:min(100%,420px);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 60px rgba(15,23,42,.22);padding:20px}
.otp-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.otp-modal__head h3{margin:0;font-size:20px}
.otp-modal__head p{margin:6px 0 0;color:#475569;font-size:14px}
.otp-modal__close{border:none;background:#f8fafc;color:#334155;border-radius:999px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.otp-modal__close svg{width:18px;height:18px;display:block}
.otp-modal__body{margin-top:16px}
.otp-code-input{letter-spacing:.14em;text-align:center;font-size:15px;font-weight:700;padding-right:0}
.otp-modal__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.otp-modal__actions .btn{flex:1 1 160px}
.otp-modal__msg{min-height:20px;margin:10px 0 0}

#otpVerifyBtn{background:#16a34a !important;border-color:#16a34a !important;color:#fff !important}
#otpVerifyBtn:hover{background:#15803d !important;border-color:#15803d !important}
#otpCancelBtn{background:#dc2626 !important;border-color:#dc2626 !important;color:#fff !important}
#otpCancelBtn:hover{background:#b91c1c !important;border-color:#b91c1c !important}

.otp-password-input{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px 14px;font-size:16px}
#passwordSaveBtn{background:#16a34a !important;border-color:#16a34a !important;color:#fff !important}
#passwordCancelBtn{background:#dc2626 !important;border-color:#dc2626 !important;color:#fff !important}

.otp-modal__countdown{min-height:20px;margin:10px 0 0;color:#475569}
#otpResendBtn{width:100%}


body{font-size:14px}
.btn{font-size:13px}
.item,.tile{padding:14px}
@media (max-width:760px){
  body{font-size:13px}
  .btn{font-size:12px;padding:10px 12px}
  .item,.tile{padding:12px}
}


/* compact usability tune */
body{font-size:14px}
.tile,.item{padding:16px}
input,textarea,select{font-size:14px;padding:11px 12px}
.btn{font-size:13px;padding:11px 13px}
@media (max-width:760px){
  .tile,.item{padding:13px}
  input,textarea,select{font-size:13px;padding:10px 11px}
  .btn{font-size:12px;padding:10px 12px}
}
@media (max-width:640px){
  .row,
  .actions,
  .statusbar,
  .otp-modal__actions{
    align-items:stretch;
  }
  .row .btn,
  .actions .btn,
  .statusbar .status-pill,
  .otp-modal__actions .btn{
    width:100%;
    min-width:0;
    flex:1 1 100%;
  }
  .register-cta{
    max-width:none;
  }
}

.quote-modal__dialog{width:min(100%,460px)}
.quote-modal__note{margin:10px 0 0;color:#475569}
#quoteAmountInput{font-size:18px;font-weight:700;letter-spacing:.02em}

/* RRK blue partner-portal refinement mapped to driver markup */
:root{
  --bg:#f3f5fb;
  --card:#ffffff;
  --text:#101828;
  --muted:#667085;
  --line:#e7ebf4;
  --line2:#d0d5dd;
  --primary:#2563eb;
  --primary2:#1d4ed8;
  --shadow:0 20px 60px rgba(15,23,42,.08);
  --radius:24px;
}
body{
  background:radial-gradient(circle at top,#f7faff 0,#f3f5fb 35%,#eef2f7 100%);
}
.auth-shell,.tile,.item,.verification-card,.profile-photo-card,.location-sync-card{
  border-radius:var(--radius);
  border-color:rgba(15,23,42,.05);
  box-shadow:var(--shadow);
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(18px);
}
.partner-avatar,.profile-photo-preview{
  background:linear-gradient(135deg,#2563eb,#0ea5e9);
  box-shadow:0 18px 36px rgba(37,99,235,.18);
}
.btn.primary,#otpVerifyBtn,#passwordSaveBtn{
  background:linear-gradient(135deg,#2563eb,#1d4ed8) !important;
  border-color:transparent !important;
  color:#fff !important;
}
.btn.primary:hover,#otpVerifyBtn:hover,#passwordSaveBtn:hover{
  background:linear-gradient(135deg,#1d4ed8,#1e40af) !important;
}
.btn.secondary{
  background:#eef4ff !important;
  border-color:#dbeafe !important;
  color:#1d4ed8 !important;
  box-shadow:none;
}
.status-pill.active,.multi-area__option:hover,.multi-area__option.is-selected{
  background:#eff6ff;
  border-color:#bfdbfe;
  color:#1d4ed8;
}
.switch input:checked + .slider{
  background:#2563eb;
}
.switch input:focus-visible + .slider{
  box-shadow:0 0 0 3px rgba(37,99,235,.18);
}
.availability-pill.online{
  background:#12b76a;
  border-color:#12b76a;
}
.driver-setup-item__icon{
  background:linear-gradient(180deg,#eff6ff,#dbeafe);
  color:#1d4ed8;
}
.verified-badge svg path:first-child{fill:#2563eb}

body.driver-page,
body.driver-page .brand__tag,
body.driver-page .lead,
body.driver-page .muted {
  font-weight: 400;
}

body.driver-page .brand__name,
body.driver-page h1,
body.driver-page h2,
body.driver-page h3,
body.driver-page h4,
body.driver-page .tile h3,
body.driver-page .availability-text,
body.driver-page .availability-pill,
body.driver-page .rating-summary,
body.driver-page #quoteAmountInput {
  font-weight: 700 !important;
}

body.driver-page .btn,
body.driver-page .label,
body.driver-page .partner-avatar,
body.driver-page .profile-photo-preview,
body.driver-page .otp-code-input {
  font-weight: 600 !important;
}

body.driver-page .multi-area__trigger-icon svg,
body.driver-page .driver-setup-item__icon svg,
body.driver-page .link-icon svg,
body.driver-page .verified-badge svg,
body.driver-page .rating-star {
  max-width: none;
  flex: 0 0 auto;
}
