/* QuickCab Modern UI v0.1 test bridge — self-contained, no Tailwind CDN required. */
.qcm-root{--qcm-violet:#8b5cf6;--qcm-violet2:#7c3aed;--qcm-bg:#0f172a;--qcm-text:#fff;--qcm-muted:rgba(255,255,255,.6);position:relative;isolation:isolate;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#fff}
.qcm-root *{box-sizing:border-box}.qcm-root svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.qcm-enabled{position:relative!important}.qcm-native-ui{position:absolute!important;left:-100000px!important;top:0!important;width:820px!important;min-height:700px!important;opacity:.001!important;pointer-events:none!important}.qcm-native-ui .quickcab-form-map{width:500px!important;height:350px!important}.qcm-app{position:relative;width:100%;max-width:820px;margin:0 auto;color:#fff}.qcm-glow{position:absolute;pointer-events:none;border-radius:28px;filter:blur(28px)}.qcm-glow-a{inset:-20px;background:rgba(15,23,42,.3)}.qcm-glow-b{inset:-16px;background:rgba(139,92,246,.05)}.qcm-card{position:relative;overflow:visible;border-radius:24px;border:1px solid rgba(255,255,255,.08);background:rgba(15,23,42,.85);backdrop-filter:blur(24px);box-shadow:0 24px 80px -24px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.06),0 32px 64px -16px rgba(139,92,246,.12);padding:0 20px 16px}.qcm-card-sheen{position:absolute;inset:0;border-radius:24px;pointer-events:none;background:linear-gradient(to bottom,rgba(139,92,246,.07),transparent 28%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}.qcm-head{position:relative;padding:22px 0 14px;text-align:center}.qcm-head h2{margin:0;color:#fff;font-size:16px;line-height:1.4;font-weight:700;letter-spacing:-.01em}.qcm-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px}.qcm-badges span{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.07);font-size:11px;font-weight:600;color:rgba(255,255,255,.9)}.qcm-badges svg{color:#34d399;font-size:12px}.qcm-tabs{position:relative;display:flex;gap:4px;padding:6px;border:1px solid rgba(255,255,255,.05);border-radius:16px;background:rgba(255,255,255,.04)}.qcm-tab{appearance:none;flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:12px 10px;background:transparent;color:rgba(255,255,255,.6);font:700 13px/1.1 inherit;cursor:pointer;transition:all .3s ease}.qcm-tab:hover{background:rgba(255,255,255,.06);color:rgba(255,255,255,.9)}.qcm-tab.is-active{background:var(--qcm-violet);color:#fff;box-shadow:0 4px 20px rgba(139,92,246,.35)}.qcm-tab svg{font-size:16px;flex:none}.qcm-divider,.qcm-inner-divider{height:1px;background:rgba(255,255,255,.04)}.qcm-divider{margin:16px 0}.qcm-inner-divider{margin:0 16px}.qcm-error{margin:12px 0;padding:12px 14px;border:1px solid rgba(251,191,36,.3);border-radius:12px;background:rgba(245,158,11,.12);color:#fde68a;font-size:13px;font-weight:600}.qcm-address-card{overflow:hidden;border-radius:16px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.04);backdrop-filter:blur(18px)}.qcm-address-row{display:flex;align-items:center;gap:12px;padding:16px}.qcm-field-grow{min-width:0;flex:1}.qcm-eyebrow{margin-bottom:6px;color:#34d399;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.qcm-origin-slot,.qcm-destination-slot{min-height:40px}.qcm-address-control,.qcm-root .qcm-address-control.form-control,.qcm-root .qcm-address-control.quickcab-form-input{display:block!important;width:100%!important;height:40px!important;min-height:40px!important;margin:0!important;padding:0!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:#fff!important;font:500 15px/40px inherit!important}.qcm-address-control::placeholder{color:rgba(255,255,255,.55)!important}.qcm-address-control option{background:#111827;color:#fff}.qcm-address-control.qcm-airport-fixed{color:#fff!important;cursor:default!important;font-weight:600!important}.qcm-address-control.qcm-airport-fixed:focus{box-shadow:none!important}.qcm-icon-button{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.06);color:rgba(255,255,255,.4);cursor:pointer;transition:.3s}.qcm-icon-button:hover{color:#c4b5fd;background:rgba(139,92,246,.15);border-color:rgba(167,139,250,.3)}.qcm-waypoint-wrap{padding:8px 16px 16px}.qcm-secondary,.qcm-extra-row{width:100%;border-radius:12px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.04);color:rgba(255,255,255,.82);cursor:pointer;transition:.3s}.qcm-secondary{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;font:600 13px/1 inherit}.qcm-secondary:hover{background:rgba(139,92,246,.15);border-color:rgba(167,139,250,.3);color:#fff}.qcm-plus-badge{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:rgba(139,92,246,.2);color:#c4b5fd}.qcm-waypoint-slot{margin-top:10px}.qcm-waypoint-slot:empty{display:none}.qcm-datetime-grid,.qcm-select-grid,.qcm-return-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.qcm-picker-trigger{width:100%;min-height:44px;display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:9px;border:1px solid rgba(71,85,105,.5);background:rgba(30,41,59,.6);color:#fff;text-align:left;cursor:pointer;transition:.15s}.qcm-picker-trigger:hover{border-color:rgba(100,116,139,.65)}.qcm-picker-icon,.qcm-select-icon{width:32px;height:32px;flex:none;display:grid;place-items:center;border-radius:9px;background:rgba(139,92,246,.2);color:#a78bfa}.qcm-picker-trigger>span:nth-child(2){min-width:0;flex:1;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qcm-chevron{color:#64748b}.qcm-return-toggle{width:100%;margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.04);color:#fff;cursor:pointer;transition:.2s}.qcm-return-toggle:hover{background:rgba(255,255,255,.07)}.qcm-return-label{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}.qcm-return-icon{width:20px;height:20px;display:grid;place-items:center;border-radius:6px;background:rgba(139,92,246,.2);color:#c4b5fd}.qcm-switch{position:relative;width:44px;height:24px;border-radius:99px;background:#475569;transition:.2s}.qcm-switch span{position:absolute;left:2px;top:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.3);transition:.2s}.qcm-return-toggle[aria-pressed="true"] .qcm-switch{background:var(--qcm-violet)}.qcm-return-toggle[aria-pressed="true"] .qcm-switch span{transform:translateX(20px)}.qcm-return-fields{margin-top:12px;animation:qcmReveal .25s ease}.qcm-select-label{display:block;margin-bottom:6px;color:#fff;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.qcm-select-shell{height:48px;display:flex;align-items:center;gap:10px;padding:0 14px;border-radius:12px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.04);transition:.3s}.qcm-select-shell:hover{background:rgba(255,255,255,.07)}.qcm-passengers-slot,.qcm-suitcases-slot{min-width:0;flex:1}.qcm-modern-select,.qcm-root .qcm-modern-select.form-control{display:block!important;width:100%!important;height:46px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:#fff!important;appearance:none!important;font:500 14px/1 inherit!important}.qcm-modern-select option{background:#111827;color:#fff}.qcm-select-icon{background:transparent;color:rgba(255,255,255,.4);font-size:20px}.qcm-extra-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;color:#fff}.qcm-extra-row>span{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}.qcm-extra-row svg{color:#a78bfa;font-size:20px}.qcm-extra-row small{color:rgba(255,255,255,.6);font-size:12px}.qcm-primary{width:100%;height:56px;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:16px;background:var(--qcm-violet);color:#fff;font:700 16px/1 inherit;cursor:pointer;box-shadow:0 10px 30px rgba(139,92,246,.28);transition:.3s}.qcm-primary:hover{background:#a78bfa;transform:translateY(-2px)}.qcm-primary:active{transform:scale(.99)}.qcm-trust{padding-top:15px;text-align:center}.qcm-trust>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}.qcm-trust>div>span:first-child{display:flex;align-items:center;gap:6px;font-size:13px}.qcm-visa,.qcm-master,.qcm-cash{width:36px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;overflow:hidden}.qcm-visa{background:#1A1F71;color:#fff;font-size:9px;font-weight:800}.qcm-master{position:relative;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05)}.qcm-master i,.qcm-master b{position:absolute;width:16px;height:16px;border-radius:50%}.qcm-master i{left:7px;background:#EB001B}.qcm-master b{right:7px;background:#F79E1B}.qcm-cash{background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.2);color:#34d399;font-weight:800}.qcm-trust p{margin:10px 0 0;color:#fff;font-size:12px}.qcm-trust em{padding:0 8px;color:rgba(255,255,255,.5);font-style:normal}
.qcm-date-popover,.qcm-time-popover{position:fixed;z-index:999999;animation:qcmPopover .18s cubic-bezier(.2,.8,.2,1);color:#f1f5f9}.qcm-date-popover{width:380px;max-width:calc(100vw - 32px);overflow:hidden;border-radius:16px;border:1px solid rgba(71,85,105,.5);background:linear-gradient(#1e293b,#0f172a);box-shadow:0 25px 60px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.05)}.qcm-cal-head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(51,65,85,.5);background:rgba(30,41,59,.5)}.qcm-cal-head h3{margin:0;font-size:18px;font-weight:600;color:#fff}.qcm-cal-head button,.qcm-fleet-close{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:12px;background:rgba(51,65,85,.5);color:#cbd5e1;cursor:pointer;transition:.2s}.qcm-cal-head button:hover{color:#fff;background:rgba(139,92,246,.3)}.qcm-calendar{padding:20px}.qcm-weekdays,.qcm-days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.qcm-weekdays span{padding:8px 0;color:#94a3b8;font-size:12px;font-weight:600}.qcm-day{width:40px;height:40px;margin:1px auto;display:grid;place-items:center;border:0;border-radius:12px;background:transparent;color:#e2e8f0;cursor:pointer;font:500 14px/1 inherit;transition:.15s}.qcm-day:hover{background:rgba(139,92,246,.25);color:#fff}.qcm-day.is-today{border:1px solid rgba(167,139,250,.4);background:rgba(139,92,246,.15);color:#c4b5fd;font-weight:700}.qcm-day.is-selected{background:var(--qcm-violet);color:#fff;font-weight:700;box-shadow:0 4px 16px rgba(139,92,246,.35)}.qcm-day[disabled]{color:#475569;cursor:not-allowed;background:transparent}.qcm-day-empty{height:42px}.qcm-popover-help{padding:10px 20px 16px;border-top:1px solid rgba(51,65,85,.3);text-align:center;color:#64748b;font-size:12px}.qcm-time-popover{width:280px;max-width:calc(100vw - 32px);height:252px;display:grid;grid-template-columns:80px 24px 80px;justify-content:center;align-items:center;padding:16px;border:1px solid rgba(71,85,105,.7);border-radius:16px;background:rgba(15,23,42,.98);backdrop-filter:blur(24px);box-shadow:0 16px 48px rgba(0,0,0,.45)}.qcm-wheel-highlight{position:absolute;left:16px;right:16px;top:50%;height:44px;transform:translateY(-50%);border-radius:12px;background:rgba(51,65,85,.8);pointer-events:none}.qcm-time-wheel{position:relative;z-index:2;width:80px;height:220px;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:none;mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 78%,transparent)}.qcm-time-wheel::-webkit-scrollbar{display:none}.qcm-wheel-pad{height:88px}.qcm-wheel-item{height:44px;display:flex;align-items:center;justify-content:center;scroll-snap-align:center;color:#64748b;font-size:22px;font-variant-numeric:tabular-nums;transition:.1s}.qcm-wheel-item.is-active{color:#fff;font-weight:700}.qcm-colon{position:relative;z-index:2;text-align:center;color:#fff;font-size:24px;font-weight:800}
.qcm-fleet-overlay{position:fixed;inset:0;z-index:999998;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.72);backdrop-filter:blur(8px);animation:qcmFade .2s ease}.qcm-fleet-modal{width:min(1180px,100%);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#0f0f0f;box-shadow:0 32px 64px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.05);animation:qcmModal .24s cubic-bezier(.2,.8,.2,1)}.qcm-fleet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:24px 32px;border-bottom:1px solid rgba(255,255,255,.05)}.qcm-fleet-head h2{margin:0 0 8px;color:#fff;font-size:18px;font-weight:600}.qcm-fleet-head p{max-width:720px;margin:0;color:rgba(255,255,255,.5);font-size:13px;line-height:1.55}.qcm-fleet-close{flex:none;width:36px;height:36px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.8)}.qcm-fleet-close:hover{background:rgba(255,255,255,.1);color:#fff}.qcm-fleet-body{min-height:180px;overflow:auto;padding:24px 28px}.qcm-fleet-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:160px;color:rgba(255,255,255,.65);font-size:14px}.qcm-fleet-loading span{width:20px;height:20px;border:2px solid rgba(255,255,255,.15);border-top-color:#a78bfa;border-radius:50%;animation:qcmSpin .7s linear infinite}.qcm-fleet-native-slot .quickcab-vehicles-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important}.qcm-fleet-native-slot .quickcab-vehicles-list img{max-width:100%!important;height:auto!important;border-radius:12px!important;transition:transform .4s ease}.qcm-fleet-native-slot .quickcab-vehicles-list>*{min-width:0!important}.qcm-fleet-native-slot .quickcab-vehicles-list [class*="vehicle"]{border-radius:16px!important}.qcm-fleet-native-slot .quickcab-vehicles-list a,.qcm-fleet-native-slot .quickcab-vehicles-list button{transition:.25s!important}.qcm-fleet-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 32px;border-top:1px solid rgba(255,255,255,.05);background:#0a0a0a}.qcm-fleet-foot p{margin:0;color:rgba(255,255,255,.45);font-size:12px}.qcm-fleet-back{height:40px;padding:0 20px;border:0;border-radius:8px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.8);cursor:pointer}.qcm-fleet-back:hover{background:rgba(255,255,255,.1)}.qcm-admin-error{padding:12px 14px;border:1px solid #f59e0b;border-radius:8px;background:#fffbeb;color:#92400e;font:14px/1.5 sans-serif}
@keyframes qcmSpin{to{transform:rotate(360deg)}}@keyframes qcmFade{from{opacity:0}to{opacity:1}}@keyframes qcmPopover{from{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}@keyframes qcmModal{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}@keyframes qcmReveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(max-width:680px){.qcm-card{padding:0 12px 14px;border-radius:22px}.qcm-head{padding-top:18px}.qcm-tab{gap:5px;padding:10px 6px;font-size:11px}.qcm-datetime-grid,.qcm-return-fields{grid-template-columns:1fr}.qcm-select-grid{gap:10px}.qcm-address-row{padding:14px}.qcm-fleet-head{padding:20px}.qcm-fleet-body{padding:18px}.qcm-fleet-foot{align-items:flex-start;flex-direction:column;padding:16px 20px}.qcm-fleet-native-slot .quickcab-vehicles-list{grid-template-columns:1fr!important;gap:16px!important}}



/* QuickCab waypoints --------------------------------------------------------
   The native QuickCab waypoint container is kept intact and mounted between
   origin and destination. We only decorate its generated rows. */
.qcm-waypoint-slot{display:none;margin:0;padding:0 16px 8px}
.qcm-waypoint-slot.has-waypoints{display:block;animation:qcmReveal .22s ease}
.qcm-native-waypoints{display:flex!important;flex-direction:column!important;gap:8px!important;width:100%!important;margin:0!important;padding:0!important}
.qcm-native-waypoints>.qcm-waypoint-row{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid rgba(255,255,255,.06)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.04)!important;
  box-shadow:none!important;
  float:none!important;
  transition:background-color .25s ease,border-color .25s ease,transform .25s ease!important;
}
.qcm-native-waypoints>.qcm-waypoint-row:hover{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.09)!important}
.qcm-waypoint-before{display:flex;align-items:center;gap:10px;flex:none}
.qcm-waypoint-reorder{display:flex;flex-direction:column;flex:none}
.qcm-waypoint-up,.qcm-waypoint-down{
  width:24px;height:20px;display:grid;place-items:center;padding:0;border:0;border-radius:4px;
  background:transparent;color:#94a3b8;cursor:pointer;transition:color .18s ease,background-color .18s ease
}
.qcm-waypoint-up:hover,.qcm-waypoint-down:hover{color:#fff;background:rgba(255,255,255,.05)}
.qcm-waypoint-up.is-disabled,.qcm-waypoint-down.is-disabled,.qcm-waypoint-up:disabled,.qcm-waypoint-down:disabled{opacity:.25;cursor:default;background:transparent;color:#64748b}
.qcm-waypoint-up svg,.qcm-waypoint-down svg{width:16px!important;height:16px!important}
.qcm-waypoint-number{flex:none;margin:0!important;color:#fbbf24!important;font:700 12px/1 inherit!important}
.qcm-waypoint-native-field{flex:1 1 auto!important;min-width:0!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;float:none!important}
.qcm-waypoint-native-field .row{display:block!important;width:100%!important;margin:0!important;padding:0!important}
.qcm-waypoint-native-field [class*="col-"]{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;float:none!important}
.qcm-waypoint-native-field label,.qcm-waypoint-native-field .control-label,.qcm-waypoint-native-field .quickcab-header-row{display:none!important}
.qcm-waypoint-native-field .quickcab-input-row,.qcm-waypoint-native-field .quickcab-input-group{width:100%!important;margin:0!important;padding:0!important}
.qcm-waypoint-native-field .qcm-waypoint-control,
.qcm-waypoint-native-field input.qcm-waypoint-control,
.qcm-waypoint-native-field select.qcm-waypoint-control{
  display:block!important;width:100%!important;height:40px!important;min-height:40px!important;margin:0!important;padding:0 4px!important;
  border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:#fff!important;
  font:500 15px/40px inherit!important
}
.qcm-waypoint-native-field .qcm-waypoint-control::placeholder{color:rgba(255,255,255,.7)!important}
.qcm-native-waypoint-action{display:none!important}
.qcm-waypoint-remove{
  width:36px;height:36px;flex:none;display:grid;place-items:center;padding:0;border-radius:12px;
  border:1px solid rgba(239,68,68,.15);background:rgba(239,68,68,.08);color:rgba(248,113,113,.72);
  cursor:pointer;transition:all .25s ease
}
.qcm-waypoint-remove:hover{color:#fca5a5;background:rgba(239,68,68,.15);border-color:rgba(239,68,68,.22)}
.qcm-waypoint-remove svg{width:16px!important;height:16px!important}
.qcm-waypoint-trigger.is-disabled,.qcm-waypoint-trigger:disabled{opacity:.45;cursor:not-allowed;transform:none!important;background:rgba(255,255,255,.03)!important;border-color:rgba(255,255,255,.05)!important}
.qcm-destination-divider.has-waypoints{margin-top:8px}
@media(max-width:520px){
  .qcm-waypoint-slot{padding-left:12px;padding-right:12px}
  .qcm-native-waypoints>.qcm-waypoint-row{gap:7px!important;padding:9px 9px!important}
  .qcm-waypoint-before{gap:6px}
  .qcm-waypoint-remove{width:34px;height:34px}
}

/* Google Places Autocomplete -------------------------------------------------
   QuickCab uses Google's classic Places Autocomplete widget. Google appends
   the prediction list to <body>, therefore these selectors are intentionally
   scoped through a class on <html> instead of .qcm-root.
   The Google attribution/logo is intentionally left visible. */
.qcm-google-pac-theme .pac-container{
  z-index:9999999!important;
  max-height:224px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  margin-top:6px!important;
  padding:0!important;
  border:1px solid rgba(139,92,246,.35)!important;
  border-top:1px solid rgba(139,92,246,.35)!important;
  border-radius:12px!important;
  background:#0f172a!important;
  color:#fff!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  box-shadow:0 12px 40px -8px rgba(0,0,0,.60),0 0 0 1px rgba(139,92,246,.15),0 4px 16px -4px rgba(139,92,246,.12)!important;
}
.qcm-google-pac-theme .pac-container::-webkit-scrollbar{width:7px}
.qcm-google-pac-theme .pac-container::-webkit-scrollbar-track{background:transparent}
.qcm-google-pac-theme .pac-container::-webkit-scrollbar-thumb{background:rgba(148,163,184,.28);border-radius:99px}
.qcm-google-pac-theme .pac-container::-webkit-scrollbar-thumb:hover{background:rgba(167,139,250,.45)}
.qcm-google-pac-theme .pac-item{
  min-height:44px!important;
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  padding:10px 14px!important;
  border:0!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
  background:transparent!important;
  color:rgba(255,255,255,.68)!important;
  cursor:pointer!important;
  font-size:14px!important;
  line-height:1.38!important;
  transition:background-color .15s ease,color .15s ease!important;
}
.qcm-google-pac-theme .pac-item:first-child{border-top:0!important}
.qcm-google-pac-theme .pac-item:hover,
.qcm-google-pac-theme .pac-item-selected{
  background:rgba(139,92,246,.15)!important;
  color:#fff!important;
}
.qcm-google-pac-theme .pac-item:active{background:rgba(139,92,246,.25)!important}
.qcm-google-pac-theme .pac-icon{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  margin:0!important;
  margin-top:1px!important;
  border-radius:6px!important;
  background-color:rgba(139,92,246,.15)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a78bfa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:14px 14px!important;
}
.qcm-google-pac-theme .pac-item-query{
  margin:0!important;
  color:#fff!important;
  font-size:14px!important;
  line-height:1.38!important;
}
.qcm-google-pac-theme .pac-matched{color:#c4b5fd!important;font-weight:700!important}
.qcm-google-pac-theme .pac-item span:not(.pac-icon):not(.pac-item-query):not(.pac-matched){
  color:rgba(255,255,255,.58)!important;
  font-size:13px!important;
}
/* Preserve Google's required branding/attribution area. */
.qcm-google-pac-theme .pac-logo:after{
  border-top:1px solid rgba(255,255,255,.06)!important;
  background-color:#0f172a!important;
}

/* v0.1.5: preserve QuickCab's complete native address group -----------------
   The add-waypoint link and waypoint container must remain in the same
   .quickcab-input-group because some QuickCab builds resolve them relatively. */
.qcm-native-address-slot{width:100%;min-width:0}
.qcm-native-address-group{
  display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
  float:none!important;background:transparent!important;border:0!important;box-shadow:none!important
}
.qcm-native-address-group>.quickcab-header-row{display:none!important}
.qcm-native-address-group .qcm-native-origin-row,
.qcm-native-address-group .qcm-native-destination-row{
  position:relative!important;display:block!important;width:100%!important;max-width:none!important;
  margin:0!important;padding:16px!important;float:none!important
}
.qcm-native-address-group .qcm-native-destination-row{border-top:1px solid rgba(255,255,255,.04)!important}
.qcm-native-address-group .qcm-native-origin-row>label,
.qcm-native-address-group .qcm-native-destination-row>label,
.qcm-native-address-group .qcm-native-origin-row .control-label,
.qcm-native-address-group .qcm-native-destination-row .control-label{
  display:block!important;margin:0 0 6px!important;padding:0!important;color:#34d399!important;
  font:700 12px/1.35 inherit!important;letter-spacing:.08em!important;text-transform:uppercase!important
}
.qcm-native-address-group .quickcab-required{color:#34d399!important}
.qcm-native-address-group .qcm-native-origin-row .quickcab-waypoint-actions-container{
  position:absolute!important;left:-100000px!important;top:0!important;width:1px!important;height:1px!important;
  overflow:hidden!important;opacity:.001!important;pointer-events:none!important
}
.qcm-native-address-group .qcm-native-waypoints{
  display:flex!important;flex-direction:column!important;gap:8px!important;width:100%!important;
  margin:0!important;padding:0 16px 8px!important;float:none!important
}
.qcm-native-address-group .qcm-native-waypoints:empty{display:none!important}
.qcm-native-address-group .quickcab-autocomplete-warning{margin-top:6px!important;color:#fbbf24!important;font-size:12px!important}
.qcm-native-address-group .qcm-address-control,
.qcm-native-address-group input.qcm-address-control,
.qcm-native-address-group select.qcm-address-control{
  display:block!important;width:100%!important;height:40px!important;min-height:40px!important;margin:0!important;
  padding:0!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;
  color:#fff!important;font:500 15px/40px inherit!important
}
.qcm-native-address-group .qcm-address-control::placeholder{color:rgba(255,255,255,.70)!important}
.qcm-native-address-group .qcm-airport-fixed{font-weight:600!important}

@media(max-width:520px){
  .qcm-native-address-group .qcm-native-origin-row,
  .qcm-native-address-group .qcm-native-destination-row{padding:14px!important}
  .qcm-native-address-group .qcm-native-waypoints{padding-left:12px!important;padding-right:12px!important}
}

/* v0.1.6: waypoint rows are now created with QuickCab's exact native markup. */
.qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control,
.qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0 4px!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#fff!important;
  font:500 15px/40px inherit!important;
}
.qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control::placeholder{color:rgba(255,255,255,.70)!important}
.qcm-native-waypoints>.qcm-waypoint-row.qcm-waypoint-invalid{border-color:rgba(251,191,36,.55)!important;box-shadow:0 0 0 1px rgba(251,191,36,.12)!important}


/* v0.1.7: FDF-style waypoint cards + fixed airport ------------------------- */
.qcm-native-address-group .qcm-native-waypoints{gap:8px!important;padding:8px 16px!important;border-top:1px solid rgba(255,255,255,.04)!important}
.qcm-native-address-group .qcm-native-waypoints:empty{padding:0!important;border-top:0!important}
.qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row{
  position:relative!important;display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;min-width:0!important;
  margin:0!important;padding:10px 12px!important;border:1px solid rgba(255,255,255,.06)!important;border-radius:12px!important;
  background:rgba(255,255,255,.04)!important;box-shadow:none!important;float:none!important;animation:qcmReveal .22s ease;
  transition:all .3s ease!important
}
.qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row:hover{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.09)!important}
.qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-before{display:flex!important;align-items:center!important;gap:10px!important;flex:none!important}
.qcm-native-address-group .qcm-waypoint-reorder{display:flex!important;flex-direction:column!important;flex:none!important}
.qcm-native-address-group .qcm-waypoint-up,.qcm-native-address-group .qcm-waypoint-down{width:24px!important;height:20px!important;display:grid!important;place-items:center!important;padding:0!important;border:0!important;border-radius:4px!important;background:transparent!important;color:#94a3b8!important}
.qcm-native-address-group .qcm-waypoint-up:hover,.qcm-native-address-group .qcm-waypoint-down:hover{color:#fff!important;background:rgba(255,255,255,.05)!important}
.qcm-native-address-group .qcm-waypoint-up:disabled,.qcm-native-address-group .qcm-waypoint-down:disabled{opacity:.25!important;cursor:default!important}
.qcm-native-address-group .qcm-waypoint-number{margin:0!important;flex:none!important;color:#fbbf24!important;font:700 12px/1 inherit!important}
.qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control{flex:1 1 auto!important;min-width:0!important;width:auto!important;height:40px!important;min-height:40px!important;margin:0!important;padding:0 8px 0 0!important;border:0!important;background:transparent!important;color:#fff!important;font:500 15px/40px inherit!important}
.qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control::placeholder{color:rgba(255,255,255,.70)!important}
.qcm-native-address-group .qcm-waypoint-remove{width:36px!important;height:36px!important;flex:none!important;display:grid!important;place-items:center!important;padding:0!important;border:1px solid rgba(239,68,68,.15)!important;border-radius:12px!important;background:rgba(239,68,68,.08)!important;color:rgba(248,113,113,.72)!important;transition:all .3s ease!important}
.qcm-native-address-group .qcm-waypoint-remove:hover{color:#fca5a5!important;background:rgba(239,68,68,.15)!important;border-color:rgba(239,68,68,.22)!important}
.qcm-native-address-group .qcm-native-destination-row{border-top:1px solid rgba(255,255,255,.04)!important}
.qcm-address-control.qcm-airport-fixed{pointer-events:none!important;user-select:none!important}
/* A fixed airport is resolved silently through PlacesService, so any stale PAC
   container generated by the field before readonly was applied should not show. */
.qcm-google-pac-theme body:has(.qcm-airport-fixed:focus) .pac-container{display:none!important}
@media(max-width:520px){
  .qcm-native-address-group .qcm-native-waypoints{padding:8px 12px!important}
  .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row{gap:7px!important;padding:9px!important}
  .qcm-native-address-group .qcm-waypoint-remove{width:34px!important;height:34px!important}
}
\n\n/* v0.1.8 — first-prototype passenger/luggage controls + custom FDF-style dropdown */\n.qcm-number-field{position:relative;min-width:0}\n.qcm-number-trigger{appearance:none;width:100%;height:48px;display:flex;align-items:center;gap:10px;padding:0 14px;border-radius:12px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.04);color:#fff;text-align:left;cursor:pointer;transition:all .3s ease;font:500 14px/1 inherit}\n.qcm-number-trigger:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.09)}\n.qcm-number-trigger:focus-visible{outline:none;border-color:rgba(167,139,250,.38);box-shadow:0 0 0 2px rgba(139,92,246,.22);background:rgba(255,255,255,.06)}\n.qcm-number-trigger[aria-expanded=\"true\"]{border-color:rgba(167,139,250,.38);box-shadow:0 0 0 2px rgba(139,92,246,.18);background:rgba(255,255,255,.06)}\n.qcm-number-trigger .qcm-select-icon{width:32px;height:32px;flex:none;display:grid;place-items:center;background:transparent;color:rgba(255,255,255,.4);font-size:20px}\n.qcm-number-value{min-width:0;flex:1;color:#fff;font-size:14px;font-weight:500;line-height:1}\n.qcm-number-chevron{width:18px;height:18px;display:grid;place-items:center;flex:none;color:rgba(255,255,255,.3);transition:transform .2s ease,color .2s ease}\n.qcm-number-chevron svg{width:16px;height:16px}\n.qcm-number-trigger[aria-expanded=\"true\"] .qcm-number-chevron{transform:rotate(180deg);color:#a78bfa}\n.qcm-native-select-slot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important}\n.qcm-native-number-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}\n.qcm-number-listbox{position:fixed;z-index:999999;overflow:hidden;max-height:220px;overflow-y:auto;padding:4px 0;border-radius:12px;border:1px solid rgba(71,85,105,.5);background:rgba(30,41,59,.98);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 12px 32px rgba(0,0,0,.4);animation:qcmNumberDropdown .14s cubic-bezier(.2,.8,.2,1);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif}\n.qcm-number-option{appearance:none;display:block;width:100%;margin:0;padding:10px 16px;border:0;background:transparent;color:#e2e8f0;text-align:left;font:500 14px/1.25 inherit;cursor:pointer;transition:background-color .15s ease,color .15s ease}\n.qcm-number-option:hover,.qcm-number-option:focus-visible{outline:none;background:rgba(51,65,85,.6);color:#fff}\n.qcm-number-option.is-selected,.qcm-number-option[aria-selected=\"true\"]{background:rgba(139,92,246,.20);color:#fff}\n.qcm-number-listbox::-webkit-scrollbar{width:7px}.qcm-number-listbox::-webkit-scrollbar-track{background:transparent}.qcm-number-listbox::-webkit-scrollbar-thumb{background:rgba(148,163,184,.28);border-radius:999px}\n@keyframes qcmNumberDropdown{from{opacity:0;transform:translateY(5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}\n

/* v0.1.9: restore the original address-card design ------------------------- */
.qcm-root .qcm-address-card{
  overflow:hidden!important;
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.06)!important;
  background:rgba(255,255,255,.04)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  backdrop-filter:blur(18px)!important;
}
.qcm-root .qcm-native-address-group .qcm-native-origin-row,
.qcm-root .qcm-native-address-group .qcm-native-destination-row{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:16px!important;
  background:transparent!important;
}
.qcm-root .qcm-native-address-group .qcm-native-destination-row{
  border-top:1px solid rgba(255,255,255,.04)!important;
}
.qcm-root .qcm-native-address-group .qcm-native-origin-row>label,
.qcm-root .qcm-native-address-group .qcm-native-destination-row>label,
.qcm-root .qcm-native-address-group .qcm-native-origin-row .control-label,
.qcm-root .qcm-native-address-group .qcm-native-destination-row .control-label{
  display:block!important;
  margin:0 0 6px!important;
  padding:0!important;
  color:#34d399!important;
  font:700 12px/1.35 inherit!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.qcm-root .qcm-native-address-group .quickcab-required{color:#34d399!important}
.qcm-root .qcm-address-content{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0!important;
}
.qcm-root .qcm-address-field{flex:1 1 auto!important;min-width:0!important}
.qcm-root .qcm-native-address-group .qcm-address-control,
.qcm-root .qcm-native-address-group input.qcm-address-control,
.qcm-root .qcm-native-address-group select.qcm-address-control{
  display:block!important;
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#fff!important;
  font:500 15px/40px inherit!important;
  transition:color .2s ease!important;
}
.qcm-root .qcm-native-address-group .qcm-address-control::placeholder{
  color:rgba(255,255,255,.70)!important;
  opacity:1!important;
}
.qcm-root .qcm-address-map-button{
  appearance:none!important;
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.40)!important;
  cursor:pointer!important;
  transition:all .3s ease!important;
}
.qcm-root .qcm-address-map-button svg{width:16px!important;height:16px!important}
.qcm-root .qcm-address-map-button:hover{
  color:#c4b5fd!important;
  background:rgba(139,92,246,.15)!important;
  border-color:rgba(167,139,250,.30)!important;
}
.qcm-root .qcm-address-map-button:focus-visible{
  outline:0!important;
  box-shadow:0 0 0 2px rgba(139,92,246,.32)!important;
}
.qcm-root .qcm-address-map-button[hidden]{display:none!important}
.qcm-root .qcm-native-address-group .qcm-address-is-fixed .qcm-address-control{
  color:#fff!important;
  font-size:16px!important;
  font-weight:500!important;
  line-height:36px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  cursor:default!important;
  pointer-events:none!important;
}
.qcm-root .qcm-native-address-group .quickcab-autocomplete-warning{
  margin:6px 0 0!important;
  color:#fbbf24!important;
  font-size:12px!important;
}
@media(max-width:520px){
  .qcm-root .qcm-native-address-group .qcm-native-origin-row,
  .qcm-root .qcm-native-address-group .qcm-native-destination-row{padding:14px!important}
  .qcm-root .qcm-native-address-group .qcm-address-control,
  .qcm-root .qcm-native-address-group input.qcm-address-control,
  .qcm-root .qcm-native-address-group select.qcm-address-control{font-size:15px!important}
}

/* v0.2.0-test: exact FDF address + waypoint visual reference ---------------- */
.qcm-root .qcm-address-card{
  border-radius:16px!important;
  background:rgba(255,255,255,.04)!important;
  border:1px solid rgba(255,255,255,.06)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  backdrop-filter:blur(18px)!important;
  overflow:hidden!important;
}
.qcm-root .qcm-native-address-group{overflow:hidden!important}
.qcm-root .qcm-native-address-group .qcm-native-origin-row,
.qcm-root .qcm-native-address-group .qcm-native-destination-row{
  padding:16px!important;
  margin:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.qcm-root .qcm-native-address-group .qcm-native-origin-row>label,
.qcm-root .qcm-native-address-group .qcm-native-destination-row>label,
.qcm-root .qcm-native-address-group .qcm-native-origin-row .control-label,
.qcm-root .qcm-native-address-group .qcm-native-destination-row .control-label{
  margin:0 0 6px!important;
  color:#34d399!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:600!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
}
.qcm-root .qcm-address-content{display:flex!important;align-items:center!important;gap:12px!important}
.qcm-root .qcm-address-field{position:relative!important;width:100%!important;min-width:0!important}
.qcm-root .qcm-native-address-group .qcm-address-control,
.qcm-root .qcm-native-address-group input.qcm-address-control{
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  padding:0 32px 0 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
  font-size:16px!important;
  line-height:40px!important;
  font-weight:400!important;
  box-shadow:none!important;
  outline:none!important;
}
.qcm-root .qcm-native-address-group .qcm-address-control::placeholder{color:rgba(255,255,255,.70)!important;opacity:1!important}
.qcm-root .qcm-address-map-button{
  width:36px!important;height:36px!important;flex:0 0 36px!important;
  border-radius:12px!important;border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.06)!important;color:rgba(255,255,255,.40)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  transition:all .3s ease!important;
}
.qcm-root .qcm-address-map-button:hover{color:#c4b5fd!important;background:rgba(139,92,246,.15)!important;border-color:rgba(167,139,250,.30)!important}
.qcm-root .qcm-address-map-button svg{width:16px!important;height:16px!important}
.qcm-root .qcm-native-address-group .qcm-address-is-fixed .qcm-address-control{
  padding-right:0!important;font-size:16px!important;font-weight:500!important;line-height:36px!important;
}

/* Stop list sits between pickup and destination, exactly like the reference. */
.qcm-root .qcm-native-address-group .qcm-native-waypoints{
  display:flex!important;flex-direction:column!important;gap:8px!important;
  width:100%!important;margin:0!important;padding:8px 16px!important;
  border-top:1px solid rgba(255,255,255,.04)!important;
  background:transparent!important;
}
.qcm-root .qcm-native-address-group .qcm-native-waypoints:empty{display:none!important;padding:0!important;border-top:0!important}
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row{
  display:flex!important;align-items:center!important;gap:10px!important;
  width:100%!important;min-width:0!important;margin:0!important;padding:10px 12px!important;
  border:1px solid rgba(255,255,255,.06)!important;border-radius:12px!important;
  background:rgba(255,255,255,.04)!important;box-shadow:none!important;
  transition:all .3s ease!important;
}
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row:hover{
  background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.06)!important;
}
.qcm-root .qcm-waypoint-before{display:flex!important;align-items:center!important;gap:10px!important;flex:0 0 auto!important}
.qcm-root .qcm-waypoint-reorder{display:flex!important;flex-direction:column!important;flex:0 0 auto!important}
.qcm-root .qcm-waypoint-up,.qcm-root .qcm-waypoint-down{
  appearance:none!important;width:24px!important;height:20px!important;padding:0!important;
  border:0!important;border-radius:4px!important;background:transparent!important;color:#94a3b8!important;
  display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;
}
.qcm-root .qcm-waypoint-up:hover,.qcm-root .qcm-waypoint-down:hover{color:#fff!important;background:transparent!important}
.qcm-root .qcm-waypoint-up:disabled,.qcm-root .qcm-waypoint-down:disabled{opacity:.25!important;cursor:default!important}
.qcm-root .qcm-waypoint-up svg,.qcm-root .qcm-waypoint-down svg{width:16px!important;height:16px!important}
.qcm-root .qcm-waypoint-number{margin:0!important;flex:0 0 auto!important;color:#fbbf24!important;font-size:12px!important;line-height:16px!important;font-weight:600!important}
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control{
  flex:1 1 auto!important;min-width:0!important;width:auto!important;height:40px!important;min-height:40px!important;
  margin:0!important;padding:0 32px 0 0!important;border:0!important;border-radius:0!important;
  background:transparent!important;color:#fff!important;font-size:16px!important;line-height:40px!important;font-weight:400!important;
  outline:none!important;box-shadow:none!important;
}
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control::placeholder{color:rgba(255,255,255,.70)!important;opacity:1!important}
.qcm-root .qcm-waypoint-remove{
  appearance:none!important;width:36px!important;height:36px!important;flex:0 0 36px!important;padding:0!important;
  border:1px solid rgba(239,68,68,.15)!important;border-radius:12px!important;background:rgba(239,68,68,.08)!important;
  color:rgba(248,113,113,.70)!important;display:flex!important;align-items:center!important;justify-content:center!important;
  transition:all .3s ease!important;cursor:pointer!important;
}
.qcm-root .qcm-waypoint-remove:hover{color:#fca5a5!important;background:rgba(239,68,68,.15)!important;border-color:rgba(239,68,68,.15)!important}
.qcm-root .qcm-waypoint-remove svg{width:16px!important;height:16px!important}

/* This is the px-4 / white-[.04] divider from the reference snippet. */
.qcm-root .qcm-native-address-group .qcm-native-destination-row{
  border-top:1px solid rgba(255,255,255,.04)!important;
}

/* Add-stop button from the original form, kept below the address fields. */
.qcm-root .qcm-waypoint-wrap{padding:8px 16px 16px!important;margin:0!important}
.qcm-root .qcm-waypoint-trigger{
  width:100%!important;min-height:40px!important;padding:10px 14px!important;border-radius:12px!important;
  border:1px solid rgba(255,255,255,.06)!important;background:rgba(255,255,255,.04)!important;color:rgba(255,255,255,.80)!important;
  font-size:13px!important;font-weight:600!important;transition:all .3s ease!important;
}
.qcm-root .qcm-waypoint-trigger:hover{background:rgba(139,92,246,.15)!important;border-color:rgba(167,139,250,.30)!important;color:#fff!important}
.qcm-root .qcm-waypoint-trigger:active{transform:scale(.98)!important}
.qcm-root .qcm-plus-badge{width:20px!important;height:20px!important;border-radius:6px!important;background:rgba(139,92,246,.20)!important;color:#c4b5fd!important}
.qcm-root .qcm-waypoint-trigger:hover .qcm-plus-badge{background:rgba(139,92,246,.35)!important}
.qcm-root .qcm-waypoint-count{color:rgba(167,139,250,.50)!important;font-size:11px!important;font-weight:400!important}

@media(max-width:639px){
  .qcm-root .qcm-native-address-group .qcm-native-origin-row,
  .qcm-root .qcm-native-address-group .qcm-native-destination-row{padding:16px!important}
  .qcm-root .qcm-native-address-group .qcm-address-control,
  .qcm-root .qcm-native-address-group input.qcm-address-control,
  .qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control{height:36px!important;min-height:36px!important;font-size:15px!important;line-height:36px!important}
  .qcm-root .qcm-native-address-group .qcm-native-waypoints{padding:8px 16px!important}
}

/* v0.2.2-test: fully neutralise remaining QuickCab row/label visuals and
   rebuild the visible address block in the rounded reference style. */
.qcm-root .qcm-native-address-group,
.qcm-root .qcm-native-address-group .quickcab-input-row,
.qcm-root .qcm-native-address-group .row{
  float:none!important;
  clear:both!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.qcm-root .qcm-native-address-group .qcm-native-address-label{
  display:none!important;
}
.qcm-root .qcm-address-card{
  border-radius:18px!important;
  border:1px solid rgba(255,255,255,.07)!important;
  background:linear-gradient(180deg,rgba(28,38,65,.88) 0%,rgba(17,24,39,.92) 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
  overflow:hidden!important;
}
.qcm-root .qcm-native-address-group{padding:8px!important; overflow:hidden!important;}
.qcm-root .qcm-native-address-group .qcm-native-origin-row,
.qcm-root .qcm-native-address-group .qcm-native-destination-row{
  padding:10px 10px 12px!important;
}
.qcm-root .qcm-native-address-group .qcm-address-visual{display:block!important; width:100%!important;}
.qcm-root .qcm-native-address-group .qcm-address-eyebrow{
  margin:0 0 8px!important;
  color:#00e6a8!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
}
.qcm-root .qcm-native-address-group .qcm-address-content{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0!important;
}
.qcm-root .qcm-native-address-group .qcm-address-field{flex:1 1 auto!important; min-width:0!important;}
.qcm-root .qcm-native-address-group .qcm-address-control,
.qcm-root .qcm-native-address-group input.qcm-address-control{
  width:100%!important;
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  color:#ffffff!important;
  font-size:15px!important;
  line-height:36px!important;
  font-weight:600!important;
}
.qcm-root .qcm-native-address-group .qcm-address-control::placeholder{
  color:rgba(255,255,255,.72)!important;
  opacity:1!important;
}
.qcm-root .qcm-native-address-group .qcm-address-is-fixed .qcm-address-control{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.qcm-root .qcm-native-address-group .qcm-address-map-button{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  flex:0 0 36px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.40)!important;
}
.qcm-root .qcm-native-address-group .qcm-address-map-button svg{width:16px!important;height:16px!important}
.qcm-root .qcm-native-address-group .qcm-native-waypoints{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  padding:10px 10px 12px!important;
  margin:0!important;
  border-top:1px solid rgba(255,255,255,.05)!important;
}
.qcm-root .qcm-native-address-group .qcm-native-waypoints:empty{display:none!important;padding:0!important;border-top:0!important}
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:12px 14px!important;
  margin:0!important;
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.06)!important;
  background:rgba(255,255,255,.04)!important;
}
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row:hover{
  background:rgba(255,255,255,.04)!important;
  border-color:rgba(255,255,255,.06)!important;
}
.qcm-root .qcm-native-address-group .qcm-waypoint-before{display:flex!important;align-items:center!important;gap:10px!important;flex:0 0 auto!important}
.qcm-root .qcm-native-address-group .qcm-waypoint-reorder{display:flex!important;flex-direction:column!important;gap:0!important;flex:0 0 auto!important}
.qcm-root .qcm-native-address-group .qcm-waypoint-up,
.qcm-root .qcm-native-address-group .qcm-waypoint-down{
  width:24px!important;height:20px!important;padding:0!important;border:0!important;border-radius:4px!important;
  display:grid!important;place-items:center!important;background:transparent!important;color:#94a3b8!important;
}
.qcm-root .qcm-native-address-group .qcm-waypoint-up:hover,
.qcm-root .qcm-native-address-group .qcm-waypoint-down:hover{color:#ffffff!important;background:transparent!important}
.qcm-root .qcm-native-address-group .qcm-waypoint-number{
  margin:0!important;
  color:#fbbf24!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:700!important;
}
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#ffffff!important;
  font-size:15px!important;
  line-height:36px!important;
  font-weight:600!important;
}
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control::placeholder{color:rgba(255,255,255,.72)!important;opacity:1!important}
.qcm-root .qcm-native-address-group .qcm-waypoint-remove{
  width:36px!important;height:36px!important;min-width:36px!important;flex:0 0 36px!important;
  display:grid!important;place-items:center!important;padding:0!important;
  border-radius:12px!important;border:1px solid rgba(239,68,68,.15)!important;
  background:rgba(239,68,68,.08)!important;color:rgba(248,113,113,.70)!important;
}
.qcm-root .qcm-native-address-group .qcm-waypoint-remove svg{width:16px!important;height:16px!important}
.qcm-root .qcm-native-address-group .qcm-native-destination-row{
  border-top:1px solid rgba(255,255,255,.05)!important;
  padding-top:14px!important;
}
.qcm-root .qcm-waypoint-wrap{
  padding:10px 18px 18px!important;
}
.qcm-root .qcm-waypoint-trigger{
  border-radius:12px!important;
  min-height:42px!important;
  background:rgba(255,255,255,.04)!important;
  border:1px solid rgba(255,255,255,.06)!important;
}
@media(max-width:639px){
  .qcm-root .qcm-native-address-group{padding:6px!important}
  .qcm-root .qcm-native-address-group .qcm-native-origin-row,
  .qcm-root .qcm-native-address-group .qcm-native-destination-row{padding:10px 10px 12px!important}
  .qcm-root .qcm-native-address-group .qcm-native-waypoints{padding:10px 10px 12px!important}
  .qcm-root .qcm-waypoint-wrap{padding:8px 14px 14px!important}
}

/* v0.2.3-test: native QuickCab address labels and map buttons are intentionally absent. */
.qcm-root .qcm-native-address-group label.control-label,
.qcm-root .qcm-native-address-group .qcm-native-address-label,
.qcm-root .qcm-native-address-group .qcm-address-map-button{
  display:none!important;
}
.qcm-root .qcm-native-address-group .qcm-address-content{gap:0!important}

/* v0.2.4-test: restore the original/native passenger + luggage selects. */
.qcm-root .qcm-return-toggle{margin-top:10px!important}
.qcm-root .qcm-select-field{display:block;min-width:0}
.qcm-root .qcm-select-shell{
  position:relative;
  height:48px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.04);
  transition:all .3s ease;
}
.qcm-root .qcm-select-shell:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.09)}
.qcm-root .qcm-select-shell:focus-within{border-color:rgba(167,139,250,.38);box-shadow:0 0 0 2px rgba(139,92,246,.18);background:rgba(255,255,255,.06)}
.qcm-root .qcm-passengers-slot,.qcm-root .qcm-suitcases-slot{position:relative;min-width:0;flex:1}
.qcm-root .qcm-modern-select,
.qcm-root .qcm-modern-select.form-control,
.qcm-root select.qcm-modern-select{
  display:block!important;
  width:100%!important;
  height:46px!important;
  min-height:46px!important;
  margin:0!important;
  padding:0 28px 0 0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#fff!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  font:500 14px/1 inherit!important;
  cursor:pointer!important;
}
.qcm-root .qcm-modern-select option{background:#111827!important;color:#fff!important}
.qcm-root .qcm-select-icon{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;background:transparent!important;color:rgba(255,255,255,.40)!important}
.qcm-root .qcm-select-icon svg{width:20px!important;height:20px!important}
.qcm-root .qcm-select-chevron{width:18px;height:18px;flex:0 0 18px;display:grid;place-items:center;color:rgba(255,255,255,.30);pointer-events:none}
.qcm-root .qcm-select-chevron svg{width:16px!important;height:16px!important}
/* Old custom-number UI must never appear in this version. */
/* custom number dropdown re-enabled in v0.2.6 */


/* v0.2.6-test: passenger/luggage dropdowns match the Google address suggestions. */
.qcm-root .qcm-number-field{position:relative!important;min-width:0!important}
.qcm-root .qcm-number-trigger{
  appearance:none!important;
  width:100%!important;
  height:48px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:0 14px!important;
  margin:0!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.06)!important;
  background:rgba(255,255,255,.04)!important;
  color:#fff!important;
  text-align:left!important;
  cursor:pointer!important;
  box-shadow:none!important;
  transition:all .2s ease!important;
  font:500 14px/1 inherit!important;
}
.qcm-root .qcm-number-trigger:hover{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.09)!important}
.qcm-root .qcm-number-trigger:focus-visible,
.qcm-root .qcm-number-trigger[aria-expanded="true"]{
  outline:none!important;
  border-color:rgba(139,92,246,.35)!important;
  background:rgba(255,255,255,.06)!important;
  box-shadow:0 0 0 1px rgba(139,92,246,.15),0 4px 16px -4px rgba(139,92,246,.12)!important;
}
.qcm-root .qcm-number-trigger .qcm-select-icon{
  width:32px!important;height:32px!important;flex:0 0 32px!important;
  display:grid!important;place-items:center!important;background:transparent!important;
  color:rgba(255,255,255,.40)!important;
}
.qcm-root .qcm-number-trigger .qcm-select-icon svg{width:20px!important;height:20px!important}
.qcm-root .qcm-number-value{min-width:0!important;flex:1 1 auto!important;color:#fff!important;font-size:14px!important;font-weight:500!important;line-height:1!important}
.qcm-root .qcm-number-chevron{width:18px!important;height:18px!important;flex:0 0 18px!important;display:grid!important;place-items:center!important;color:rgba(255,255,255,.35)!important;transition:transform .2s ease,color .2s ease!important}
.qcm-root .qcm-number-chevron svg{width:16px!important;height:16px!important}
.qcm-root .qcm-number-trigger[aria-expanded="true"] .qcm-number-chevron{transform:rotate(180deg)!important;color:#a78bfa!important}
.qcm-root .qcm-native-select-slot{
  position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;
  clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important;
}
.qcm-root .qcm-native-number-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}

.qcm-number-listbox{
  position:fixed!important;
  z-index:999999!important;
  overflow:hidden!important;
  max-height:220px!important;
  overflow-y:auto!important;
  padding:0!important;
  border-radius:12px!important;
  border:1px solid rgba(139,92,246,.35)!important;
  background:#0f172a!important;
  -webkit-backdrop-filter:blur(18px)!important;
  backdrop-filter:blur(18px)!important;
  box-shadow:0 12px 40px -8px rgba(0,0,0,.60),0 0 0 1px rgba(139,92,246,.15),0 4px 16px -4px rgba(139,92,246,.12)!important;
  animation:qcmNumberDropdown .14s cubic-bezier(.2,.8,.2,1)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.qcm-number-option{
  appearance:none!important;
  display:block!important;
  width:100%!important;
  min-height:44px!important;
  margin:0!important;
  padding:10px 14px!important;
  border:0!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
  background:transparent!important;
  color:rgba(255,255,255,.88)!important;
  text-align:left!important;
  font:500 14px/1.38 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  cursor:pointer!important;
  transition:background-color .15s ease,color .15s ease!important;
}
.qcm-number-option:first-child{border-top:0!important}
.qcm-number-option:hover,
.qcm-number-option:focus-visible{outline:none!important;background:rgba(139,92,246,.15)!important;color:#fff!important}
.qcm-number-option:active{background:rgba(139,92,246,.25)!important}
.qcm-number-option.is-selected,
.qcm-number-option[aria-selected="true"]{background:rgba(139,92,246,.20)!important;color:#fff!important}
.qcm-number-listbox::-webkit-scrollbar{width:7px!important}
.qcm-number-listbox::-webkit-scrollbar-track{background:transparent!important}
.qcm-number-listbox::-webkit-scrollbar-thumb{background:rgba(148,163,184,.28)!important;border-radius:999px!important}
.qcm-number-listbox::-webkit-scrollbar-thumb:hover{background:rgba(167,139,250,.45)!important}
@keyframes qcmNumberDropdown{from{opacity:0;transform:translateY(5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}


/* v0.2.7-test: allow mouse-wheel/touch scrolling inside custom number menus. */
.qcm-number-listbox{overscroll-behavior:contain!important;touch-action:pan-y!important;scrollbar-gutter:stable!important;}

/* v0.2.8-test: child-seat / extras modal ----------------------------------- */
html.qcm-modal-open{overflow:hidden!important}
.qcm-extras-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:1000000!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  padding:0!important;
  background:rgba(2,6,23,.72)!important;
  -webkit-backdrop-filter:blur(6px)!important;
  backdrop-filter:blur(6px)!important;
  opacity:0!important;
  transition:opacity .18s ease!important;
}
.qcm-extras-overlay[hidden]{display:none!important}
.qcm-extras-overlay.is-open{opacity:1!important}
.qcm-extras-modal{
  position:relative!important;
  width:100%!important;
  max-width:448px!important;
  max-height:85vh!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border:1px solid rgba(51,65,85,.80)!important;
  border-bottom:0!important;
  border-radius:16px 16px 0 0!important;
  background:#0f172a!important;
  color:#fff!important;
  box-shadow:0 25px 70px rgba(0,0,0,.58)!important;
  transform:translateY(24px)!important;
  transition:transform .20s cubic-bezier(.2,.8,.2,1)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.qcm-extras-overlay.is-open .qcm-extras-modal{transform:translateY(0)!important}
.qcm-extras-head{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:16px!important;
  border-bottom:1px solid rgba(51,65,85,.60)!important;
  background:rgba(30,41,59,.80)!important;
}
.qcm-extras-head h2{
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  font-size:17px!important;
  line-height:1.3!important;
  font-weight:600!important;
}
.qcm-extras-close{
  appearance:none!important;
  width:32px!important;
  height:32px!important;
  flex:0 0 32px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#94a3b8!important;
  cursor:pointer!important;
  transition:background-color .15s ease,color .15s ease!important;
}
.qcm-extras-close:hover{background:rgba(51,65,85,.60)!important;color:#fff!important}
.qcm-extras-close svg{width:20px!important;height:20px!important}
.qcm-extras-body{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  padding:16px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  overscroll-behavior:contain!important;
}
.qcm-extras-body::-webkit-scrollbar{width:7px!important}
.qcm-extras-body::-webkit-scrollbar-track{background:transparent!important}
.qcm-extras-body::-webkit-scrollbar-thumb{background:rgba(148,163,184,.26)!important;border-radius:999px!important}
.qcm-extra-item{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:12px!important;
  border-radius:12px!important;
  border:1px solid rgba(51,65,85,.50)!important;
  background:rgba(30,41,59,.60)!important;
  transition:border-color .18s ease,background-color .18s ease!important;
}
.qcm-extra-item.has-value{border-color:rgba(139,92,246,.30)!important;background:rgba(30,41,59,.78)!important}
.qcm-extra-copy{flex:1 1 auto!important;min-width:0!important}
.qcm-extra-copy p{
  margin:0!important;
  color:#e2e8f0!important;
  font-size:14px!important;
  line-height:1.4!important;
  font-weight:500!important;
}
.qcm-extra-copy p span{margin-left:6px!important;color:#64748b!important;font-size:11px!important;font-weight:400!important}
.qcm-extra-copy strong{
  display:block!important;
  margin-top:2px!important;
  color:#a78bfa!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:600!important;
  font-variant-numeric:tabular-nums!important;
}
.qcm-extra-stepper{display:flex!important;align-items:center!important;gap:4px!important;flex:0 0 auto!important}
.qcm-extra-minus,.qcm-extra-plus{
  appearance:none!important;
  width:32px!important;
  height:32px!important;
  flex:0 0 32px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:0!important;
  border-radius:8px!important;
  cursor:pointer!important;
  transition:all .16s ease!important;
}
.qcm-extra-minus{
  background:#1e293b!important;
  color:#cbd5e1!important;
}
.qcm-extra-minus:hover:not(:disabled){background:#334155!important;color:#fff!important}
.qcm-extra-plus{
  background:#8b5cf6!important;
  color:#fff!important;
}
.qcm-extra-plus:hover:not(:disabled){background:#a78bfa!important}
.qcm-extra-minus:disabled,.qcm-extra-plus:disabled{
  background:#1e293b!important;
  color:#475569!important;
  cursor:not-allowed!important;
  opacity:1!important;
}
.qcm-extra-minus svg,.qcm-extra-plus svg{width:16px!important;height:16px!important}
.qcm-extra-count{
  width:32px!important;
  flex:0 0 32px!important;
  text-align:center!important;
  color:#64748b!important;
  font-size:15px!important;
  line-height:32px!important;
  font-weight:600!important;
  font-variant-numeric:tabular-nums!important;
}
.qcm-extra-count.has-value{color:#fff!important}
.qcm-extras-foot{
  flex:0 0 auto!important;
  padding:16px!important;
  border-top:1px solid rgba(51,65,85,.60)!important;
  background:#0f172a!important;
}
.qcm-extras-done{
  appearance:none!important;
  width:100%!important;
  height:44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:12px!important;
  background:#8b5cf6!important;
  color:#fff!important;
  font:600 15px/1 inherit!important;
  cursor:pointer!important;
  transition:background-color .16s ease,transform .16s ease!important;
}
.qcm-extras-done:hover{background:#a78bfa!important}
.qcm-extras-done:active{transform:scale(.99)!important}
.qcm-extras-trigger-summary{
  max-width:52%!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
  text-align:right!important;
}
@media(min-width:640px){
  .qcm-extras-overlay{align-items:center!important;padding:24px!important}
  .qcm-extras-modal{
    max-height:70vh!important;
    border-bottom:1px solid rgba(51,65,85,.80)!important;
    border-radius:16px!important;
    transform:translateY(8px) scale(.96)!important;
  }
  .qcm-extras-overlay.is-open .qcm-extras-modal{transform:translateY(0) scale(1)!important}
}


/* v0.2.9-test: disabled vehicle CTA until all required trip fields are valid. */
.qcm-root .qcm-find-vehicles:disabled,
.qcm-root .qcm-find-vehicles.is-disabled{
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.30)!important;
  cursor:not-allowed!important;
  border:1px solid rgba(255,255,255,.05)!important;
  box-shadow:none!important;
  transform:none!important;
}
.qcm-root .qcm-find-vehicles:disabled:hover,
.qcm-root .qcm-find-vehicles.is-disabled:hover{
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.30)!important;
  border-color:rgba(255,255,255,.05)!important;
  box-shadow:none!important;
  transform:none!important;
}
.qcm-root .qcm-find-vehicles:disabled svg,
.qcm-root .qcm-find-vehicles.is-disabled svg{opacity:.55!important}

/* v0.3.2-test: spacing between passenger/luggage selectors and extras button */
.qcm-root .qcm-select-grid + .qcm-extras-trigger{
  margin-top:10px!important;
}

/* v0.3.4-test: while the fixed VIE preset is being selected through QuickCab's
   own Google Autocomplete, keep Google's PAC list mounted/clickable for the
   native listener but completely invisible to the visitor. */
.qcm-airport-native-seeding .pac-container{
  opacity:0!important;
  pointer-events:none!important;
}


/* v0.3.8: Keep QuickCab's stock form hierarchy intact. The native sections are
   still live and measurable, but moved off-canvas instead of being wrapped. */
.qcm-enabled > .cart-steps.quickcab-cart-steps,
.qcm-enabled > .form-section0,
.qcm-enabled > .form-section1{
  position:absolute!important;
  left:-100000px!important;
  top:0!important;
  width:820px!important;
  min-height:1px!important;
  opacity:.001!important;
  pointer-events:none!important;
}
.qcm-enabled > .form-section0 .quickcab-form-map{
  width:500px!important;
  height:350px!important;
}
/* If a cached older template still contains the wrapper, do not use it as the
   positioning boundary anymore. */
.qcm-enabled > .qcm-native-ui{
  position:static!important;
  left:auto!important;
  top:auto!important;
  width:auto!important;
  min-height:0!important;
  opacity:1!important;
  pointer-events:auto!important;
}

/* Preserve QuickCab's native address-input sibling structure. */
.qcm-root .qcm-native-address-group .quickcab-input-row{
  display:block!important;
  position:relative!important;
}
.qcm-root .qcm-native-address-group .quickcab-input-row > .qcm-address-eyebrow{
  display:block!important;
  margin:0 0 2px!important;
  padding:0!important;
  color:#00e6a8!important;
  font:700 11px/1.35 inherit!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.qcm-root .qcm-native-address-group .quickcab-input-row > .qcm-address-control{
  display:block!important;
  width:100%!important;
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#fff!important;
  font:500 15px/36px inherit!important;
}

/* v0.3.9 — premium fleet card redesign ------------------------------------
   Visual-only overrides. Keep QuickCab's native vehicle DOM, data attributes
   and click handlers completely untouched. */
.qcm-root .qcm-fleet-overlay{
  background:rgba(2,6,23,.78)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  backdrop-filter:blur(12px)!important;
}
.qcm-root .qcm-fleet-modal{
  width:min(1120px,100%)!important;
  max-height:min(90vh,880px)!important;
  border:1px solid rgba(100,116,139,.34)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(15,23,42,.99),rgba(8,15,30,.99))!important;
  box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 0 1px rgba(139,92,246,.08)!important;
}
.qcm-root .qcm-fleet-head{
  padding:24px 28px!important;
  border-bottom:1px solid rgba(100,116,139,.20)!important;
  background:linear-gradient(180deg,rgba(30,41,59,.72),rgba(15,23,42,.42))!important;
}
.qcm-root .qcm-fleet-head h2{
  margin:0 0 6px!important;
  color:#fff!important;
  font-size:20px!important;
  line-height:1.25!important;
  font-weight:750!important;
  letter-spacing:-.025em!important;
}
.qcm-root .qcm-fleet-head p{
  max-width:760px!important;
  color:#94a3b8!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.qcm-root .qcm-fleet-close{
  width:38px!important;
  height:38px!important;
  border:1px solid rgba(100,116,139,.26)!important;
  border-radius:11px!important;
  background:rgba(30,41,59,.62)!important;
  color:#94a3b8!important;
}
.qcm-root .qcm-fleet-close:hover{
  border-color:rgba(167,139,250,.35)!important;
  background:rgba(139,92,246,.15)!important;
  color:#fff!important;
}
.qcm-root .qcm-fleet-body{
  min-height:210px!important;
  padding:26px!important;
  background:
    radial-gradient(circle at 50% -10%,rgba(139,92,246,.08),transparent 38%),
    transparent!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicles-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item{
  position:relative!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(100,116,139,.24)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(30,41,59,.70),rgba(15,23,42,.92))!important;
  box-shadow:0 14px 34px rgba(0,0,0,.20)!important;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(167,139,250,.38)!important;
  box-shadow:0 20px 46px rgba(0,0,0,.30),0 0 0 1px rgba(139,92,246,.07)!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item>.row{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  margin:0!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  min-height:176px!important;
  height:176px!important;
  float:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:18px 18px 8px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 58%,rgba(139,92,246,.18),transparent 48%),
    linear-gradient(180deg,rgba(51,65,85,.26),rgba(15,23,42,.04))!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column:after{
  content:""!important;
  position:absolute!important;
  left:12%!important;
  right:12%!important;
  bottom:10px!important;
  height:18px!important;
  border-radius:50%!important;
  background:rgba(0,0,0,.26)!important;
  filter:blur(10px)!important;
  pointer-events:none!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column img{
  position:relative!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  max-width:260px!important;
  height:148px!important;
  margin:0 auto!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transition:transform .30s ease!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item:hover .quickcab-vehicle-image-column img{
  transform:scale(1.035)!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-details-column{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  float:none!important;
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  margin:0!important;
  padding:17px 18px 18px!important;
  color:#fff!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-name{
  order:1!important;
  margin:0!important;
  color:#f8fafc!important;
  font-size:17px!important;
  line-height:1.3!important;
  font-weight:750!important;
  letter-spacing:-.02em!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-features{
  order:2!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  min-height:30px!important;
  margin:11px 0 0!important;
  padding:0!important;
  list-style:none!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-features li{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  margin:0!important;
  padding:5px 8px!important;
  border:1px solid rgba(71,85,105,.42)!important;
  border-radius:999px!important;
  background:rgba(30,41,59,.68)!important;
  color:#cbd5e1!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:600!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-features .glyphicon-ok{
  color:#34d399!important;
  font-size:10px!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-details-column>.pull-right{
  order:3!important;
  width:100%!important;
  float:none!important;
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  justify-content:flex-end!important;
  margin:14px 0 0!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icons{
  order:1!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:7px!important;
  margin:0 0 15px!important;
  padding:0!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-width:52px!important;
  height:31px!important;
  margin:0!important;
  padding:0 9px!important;
  border:1px solid rgba(100,116,139,.28)!important;
  border-radius:9px!important;
  background:rgba(15,23,42,.68)!important;
  color:#94a3b8!important;
  font-size:13px!important;
  line-height:1!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icon .glyphicon{
  color:#a78bfa!important;
  font-size:13px!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-hand-luggage-icon svg{
  width:13px!important;
  height:16px!important;
  fill:#a78bfa!important;
  stroke:none!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icon-number{
  color:#e2e8f0!important;
  font-size:12px!important;
  font-weight:700!important;
  font-variant-numeric:tabular-nums!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-book-container{
  order:2!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  margin:0!important;
  padding:14px 0 0!important;
  border-top:1px solid rgba(100,116,139,.18)!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price{
  margin:0!important;
  color:#fff!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price .woocommerce-Price-amount,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price bdi,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price .woocommerce-Price-currencySymbol{
  color:inherit!important;
  font:inherit!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button,
.qcm-root .qcm-fleet-native-slot a.quickcab-vehicle-book-button.quickcab-button{
  appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid rgba(196,181,253,.20)!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,#8b5cf6,#7c3aed)!important;
  box-shadow:0 8px 20px rgba(124,58,237,.28)!important;
  color:#fff!important;
  text-decoration:none!important;
  text-align:center!important;
  font:700 13px/1 inherit!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button:hover,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button:focus-visible{
  outline:none!important;
  transform:translateY(-1px)!important;
  filter:brightness(1.08)!important;
  box-shadow:0 10px 26px rgba(124,58,237,.38)!important;
  color:#fff!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button:active{
  transform:translateY(0)!important;
}
.qcm-root .qcm-fleet-foot{
  padding:17px 28px!important;
  border-top:1px solid rgba(100,116,139,.18)!important;
  background:rgba(8,15,30,.82)!important;
}
.qcm-root .qcm-fleet-foot p{
  color:#64748b!important;
  font-size:11px!important;
}
.qcm-root .qcm-fleet-back{
  height:38px!important;
  padding:0 16px!important;
  border:1px solid rgba(100,116,139,.28)!important;
  border-radius:10px!important;
  background:rgba(30,41,59,.58)!important;
  color:#cbd5e1!important;
  font:650 12px/1 inherit!important;
}
.qcm-root .qcm-fleet-back:hover{
  border-color:rgba(167,139,250,.28)!important;
  background:rgba(139,92,246,.12)!important;
  color:#fff!important;
}
.qcm-root .qcm-fleet-body::-webkit-scrollbar{width:8px}
.qcm-root .qcm-fleet-body::-webkit-scrollbar-track{background:transparent}
.qcm-root .qcm-fleet-body::-webkit-scrollbar-thumb{background:rgba(100,116,139,.30);border-radius:999px}

@media(max-width:960px){
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicles-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .qcm-root .qcm-fleet-overlay{align-items:flex-end!important;padding:0!important}
  .qcm-root .qcm-fleet-modal{width:100%!important;max-height:92vh!important;border-radius:20px 20px 0 0!important;border-bottom:0!important}
  .qcm-root .qcm-fleet-head{padding:18px 18px 16px!important}
  .qcm-root .qcm-fleet-head h2{font-size:18px!important}
  .qcm-root .qcm-fleet-head p{font-size:12px!important}
  .qcm-root .qcm-fleet-body{padding:16px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicles-list{grid-template-columns:1fr!important;gap:12px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item>.row{display:grid!important;grid-template-columns:130px minmax(0,1fr)!important;align-items:stretch!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column{height:auto!important;min-height:100%!important;padding:14px 4px 14px 10px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column img{height:110px!important;max-width:128px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-details-column{padding:14px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-name{font-size:15px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-features{display:none!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-details-column>.pull-right{margin-top:10px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icons{gap:5px!important;margin-bottom:10px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icon{min-width:44px!important;height:27px!important;padding:0 7px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-book-container{grid-template-columns:1fr!important;gap:8px!important;padding-top:10px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price{font-size:19px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button,
  .qcm-root .qcm-fleet-native-slot a.quickcab-vehicle-book-button.quickcab-button{height:38px!important;font-size:12px!important}
  .qcm-root .qcm-fleet-foot{padding:14px 16px!important}
}
@media(max-width:420px){
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item>.row{grid-template-columns:108px minmax(0,1fr)!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column img{height:94px!important;max-width:106px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-details-column{padding:12px!important}
  .qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icons{display:none!important}
}

/* v0.4.0 — integrated WooCommerce checkout ------------------------------- */
.qcm-root .qcm-checkout-stage[hidden],
.qcm-root .qcm-checkout-shell[hidden],
.qcm-root .qcm-checkout-success[hidden],
.qcm-root .qcm-checkout-trip-extra[hidden],
.qcm-root .qcm-checkout-alert[hidden],
.qcm-root .qcm-checkout-submit-status[hidden],
.qcm-root .qcm-phone-prefix-list[hidden],
.qcm-root .qcm-checkout-flight-wrap[hidden],
.qcm-root .qcm-checkout-waypoint-row[hidden],
.qcm-root .qcm-checkout-extras-row[hidden],
.qcm-root .qcm-checkout-card-fee-row[hidden]{display:none!important}
.qcm-root .qcm-card[hidden]{display:none!important}
.qcm-root .qcm-checkout-stage{position:relative;width:100%;max-width:820px;margin:0 auto;color:#fff}
.qcm-root .qcm-checkout-shell{position:relative;display:flex;flex-direction:column;gap:10px;padding:14px 12px 16px;border-radius:24px;border:1px solid rgba(255,255,255,.07);background:rgba(15,23,42,.84);backdrop-filter:blur(24px);box-shadow:0 24px 80px -24px rgba(0,0,0,.5),0 32px 64px -16px rgba(139,92,246,.12);overflow:visible}
.qcm-root .qcm-checkout-glow{position:absolute;inset:-18px;z-index:-1;border-radius:30px;pointer-events:none;filter:blur(26px)}
.qcm-root .qcm-checkout-glow-a{background:rgba(15,23,42,.28)}
.qcm-root .qcm-checkout-glow-b{background:rgba(139,92,246,.055)}
.qcm-root .qcm-checkout-details-card,
.qcm-root .qcm-checkout-customer-card,
.qcm-root .qcm-checkout-payment-card,
.qcm-root .qcm-checkout-price-card{min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.035);backdrop-filter:blur(20px)}
.qcm-root .qcm-checkout-details-card{order:2;border-radius:22px;border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 8px 32px -16px rgba(0,0,0,.2)}
.qcm-root .qcm-checkout-customer-card{order:1;margin-top:2px;border-radius:18px}
.qcm-root .qcm-checkout-payment-card{order:3;border-radius:18px;padding:16px 20px;text-align:center}
.qcm-root .qcm-checkout-price-card{order:5;border-radius:22px;padding:16px 18px;background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.qcm-root .qcm-checkout-actions{order:6;display:flex;gap:12px;align-items:center}
.qcm-root .qcm-checkout-submit-status{order:7;padding:11px 13px;border-radius:12px;border:1px solid rgba(52,211,153,.25);background:rgba(16,185,129,.10);color:#a7f3d0;font-size:12px;font-weight:600;text-align:center}
.qcm-root .qcm-checkout-submit-status.is-error{border-color:rgba(251,191,36,.32);background:rgba(245,158,11,.12);color:#fde68a}
.qcm-root .qcm-checkout-trust{order:8;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:2px 0 0;color:rgba(255,255,255,.82);font-size:12px}
.qcm-root .qcm-checkout-trust>svg{width:13px;height:13px}
.qcm-root .qcm-checkout-section-head{padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.055);text-align:center}
.qcm-root .qcm-checkout-section-head>p{margin:0;color:#fff;font-size:13px;font-weight:700;letter-spacing:-.01em}
.qcm-root .qcm-checkout-customer-head{padding:12px 18px;background:rgba(255,255,255,.04);border-bottom-color:rgba(255,255,255,.04)}
.qcm-root .qcm-checkout-customer-head h3{margin:0;color:#fff;font-size:16px;font-weight:800;letter-spacing:-.015em}
.qcm-root .qcm-checkout-customer-head p{margin:4px 0 0;color:rgba(255,255,255,.5);font-size:12px;font-weight:500;letter-spacing:.02em}
.qcm-root .qcm-checkout-trip-body{padding:12px 14px 14px}
.qcm-root .qcm-checkout-trip-main{min-width:0;padding-left:10px;border-left:1px solid rgba(139,92,246,.45)}
.qcm-root .qcm-checkout-route{margin:0;color:rgba(255,255,255,.96);font-size:13px;font-weight:600;line-height:1.4;word-break:break-word}
.qcm-root .qcm-checkout-route-arrow{display:inline-block;margin:0 5px;color:rgba(255,255,255,.45)}
.qcm-root .qcm-checkout-trip-meta{margin:6px 0 0;color:#fff;font-size:13px;font-weight:600;word-break:break-word}
.qcm-root .qcm-checkout-trip-extra{display:flex;flex-wrap:wrap;gap:6px 10px;margin:10px 0 0;padding:10px;border-radius:10px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05)}
.qcm-root .qcm-checkout-trip-extra span{color:rgba(255,255,255,.72);font-size:11px;font-weight:600}
.qcm-root .qcm-checkout-trip-toggle{appearance:none;display:flex;align-items:center;justify-content:center;gap:8px;width:min(100%,360px);min-height:44px;margin:10px auto 0;padding:0 18px;border:0;border-radius:15px;background:#8b5cf6;color:#fff;font:700 12px/1 inherit;cursor:pointer;box-shadow:0 6px 24px -4px rgba(139,92,246,.45);transition:.2s}
.qcm-root .qcm-checkout-trip-toggle:hover{background:#7c3aed;transform:translateY(-1px)}
.qcm-root .qcm-checkout-trip-toggle svg{width:14px;height:14px}
.qcm-root .qcm-checkout-alert{display:flex;align-items:flex-start;gap:11px;margin:14px 18px 0;padding:13px 14px;border:1px solid rgba(251,191,36,.3);border-radius:12px;background:linear-gradient(135deg,rgba(245,158,11,.12),rgba(251,191,36,.08));box-shadow:0 4px 24px -4px rgba(245,158,11,.15),inset 0 1px 0 rgba(255,255,255,.04);color:#fde68a;font-size:13px;font-weight:600}
.qcm-root .qcm-checkout-alert-icon{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:8px;background:rgba(245,158,11,.20);color:#fbbf24;font-weight:900}
.qcm-root .qcm-checkout-fields{min-width:0}
.qcm-root .qcm-checkout-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:14px 18px;border-top:1px solid rgba(255,255,255,.055)}
.qcm-root .qcm-checkout-field-grid:first-child{border-top:0}
.qcm-root .qcm-checkout-flight-wrap{padding:14px 18px;border-top:1px solid rgba(255,255,255,.055)}
.qcm-root .qcm-checkout-field{display:block;min-width:0}
.qcm-root .qcm-checkout-field>span,
.qcm-root .qcm-checkout-phone-field>span,
.qcm-root .qcm-checkout-payment-label{display:block;margin:0 0 7px;color:rgba(255,255,255,.9);font-size:11px;font-weight:800;letter-spacing:.085em;text-transform:uppercase}
.qcm-root .qcm-checkout-field>span em{color:rgba(255,255,255,.45);font-style:normal;font-weight:600;text-transform:none;letter-spacing:0}
.qcm-root .qcm-checkout-field input,
.qcm-root .qcm-checkout-field textarea,
.qcm-root .qcm-phone-control{width:100%;border:1px solid rgba(255,255,255,.065);border-radius:12px;background:rgba(255,255,255,.04);color:#fff;box-shadow:none;transition:.2s}
.qcm-root .qcm-checkout-field input{height:48px;padding:0 13px;font:500 14px/1 inherit}
.qcm-root .qcm-checkout-field textarea{min-height:80px;padding:12px 13px;resize:none;font:500 14px/1.45 inherit}
.qcm-root .qcm-checkout-field input::placeholder,
.qcm-root .qcm-checkout-field textarea::placeholder,
.qcm-root .qcm-checkout-phone::placeholder{color:rgba(255,255,255,.28)}
.qcm-root .qcm-checkout-field input:hover,
.qcm-root .qcm-checkout-field textarea:hover,
.qcm-root .qcm-phone-control:hover{background:rgba(255,255,255,.06)}
.qcm-root .qcm-checkout-field input:focus,
.qcm-root .qcm-checkout-field textarea:focus{outline:0;border-color:rgba(167,139,250,.4);background:rgba(255,255,255,.06);box-shadow:0 0 0 2px rgba(139,92,246,.20)}
.qcm-root .qcm-checkout-field.has-error input,
.qcm-root .qcm-checkout-field.has-error textarea,
.qcm-root .qcm-checkout-phone-field.has-error .qcm-phone-control{border-color:rgba(251,191,36,.75);box-shadow:0 0 0 2px rgba(251,191,36,.10)}
.qcm-root .qcm-checkout-field small{display:block;margin-top:6px;color:#fcd34d;font-size:11px;font-weight:600}
.qcm-root .qcm-checkout-field small[hidden]{display:none!important}
.qcm-root .qcm-checkout-notes-field{padding:14px 18px;border-top:1px solid rgba(255,255,255,.055)}
.qcm-root .qcm-phone-control{position:relative;display:flex;align-items:center;height:48px;overflow:visible}
.qcm-root .qcm-phone-prefix{appearance:none;display:flex;align-items:center;justify-content:center;gap:3px;flex:none;width:66px;height:46px;border:0;border-radius:11px 0 0 11px;background:transparent;color:#fff;font:600 14px/1 inherit;cursor:pointer}
.qcm-root .qcm-phone-prefix svg{width:13px;height:13px;color:rgba(255,255,255,.6)}
.qcm-root .qcm-phone-prefix:after{content:"";position:absolute;left:66px;top:13px;width:1px;height:20px;background:rgba(100,116,139,.5)}
.qcm-root .qcm-checkout-phone{min-width:0;flex:1;height:46px!important;padding:0 13px!important;border:0!important;border-radius:0 11px 11px 0!important;background:transparent!important;box-shadow:none!important;color:#fff!important;font:500 14px/1 inherit!important;outline:0!important}
.qcm-root .qcm-phone-prefix-list{position:absolute;left:0;top:52px;z-index:25;width:230px;max-width:min(230px,calc(100vw - 40px));max-height:280px;overflow-y:auto;overscroll-behavior:contain;padding:5px;border:1px solid rgba(100,116,139,.45);border-radius:12px;background:#111827;box-shadow:0 18px 40px rgba(0,0,0,.35);scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.5) transparent}
.qcm-root .qcm-phone-prefix-list button{appearance:none;display:block;width:100%;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:#e2e8f0;text-align:left;font:600 12px/1.2 inherit;cursor:pointer;white-space:nowrap}
.qcm-root .qcm-phone-prefix-list button:hover{background:rgba(139,92,246,.18);color:#fff}
.qcm-root .qcm-checkout-payment-toggle{display:flex;width:min(100%,320px);margin:0 auto;padding:6px;border:1px solid rgba(139,92,246,.30);border-radius:13px;background:rgba(46,16,101,.35)}
.qcm-root .qcm-payment-option{appearance:none;display:flex;align-items:center;justify-content:center;gap:8px;flex:1;height:46px;border:0;border-radius:11px;background:transparent;color:#c4b5fd;font:700 13px/1 inherit;cursor:pointer;transition:.2s}
.qcm-root .qcm-payment-option:hover{background:rgba(139,92,246,.16);color:#fff}
.qcm-root .qcm-payment-option.is-active{background:#8b5cf6;color:#fff;box-shadow:0 7px 22px rgba(139,92,246,.34)}
.qcm-root .qcm-payment-option svg{width:16px;height:16px}
.qcm-root .qcm-banknote-icon{display:grid;place-items:center;width:18px;height:14px;border:1px solid currentColor;border-radius:3px;font-size:9px;font-weight:900}
.qcm-root .qcm-checkout-payment-note{margin:8px 0 0;color:rgba(255,255,255,.68);font-size:11px;font-weight:500}
.qcm-root .qcm-checkout-price-card>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:3px 0;color:rgba(255,255,255,.88);font-size:11px}
.qcm-root .qcm-checkout-price-card strong{color:#fff;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
.qcm-root .qcm-checkout-price-card .qcm-checkout-total-row{margin-top:7px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);font-size:13px;font-weight:700;color:#fff}
.qcm-root .qcm-checkout-price-card .qcm-checkout-total-row strong{font-size:18px;font-weight:850;letter-spacing:-.02em}
.qcm-root .qcm-checkout-back,
.qcm-root .qcm-checkout-submit{appearance:none;display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border-radius:15px;font:700 13px/1 inherit;cursor:pointer;transition:.2s}
.qcm-root .qcm-checkout-back{flex:none;min-width:122px;padding:0 18px;border:1px solid rgba(255,255,255,.065);background:rgba(255,255,255,.04);color:rgba(255,255,255,.72)}
.qcm-root .qcm-checkout-back:hover{background:rgba(255,255,255,.08);color:#fff}
.qcm-root .qcm-checkout-submit{flex:1;border:1px solid rgba(196,181,253,.18);background:linear-gradient(180deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 8px 24px -5px rgba(139,92,246,.45)}
.qcm-root .qcm-checkout-submit:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}
.qcm-root .qcm-checkout-submit:disabled{cursor:not-allowed;opacity:.62;transform:none}
.qcm-root .qcm-checkout-submit svg,.qcm-root .qcm-checkout-back svg{width:14px;height:14px}
.qcm-root .qcm-submit-spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.28);border-top-color:#fff;border-radius:50%;animation:qcmCheckoutSpin .7s linear infinite}
@keyframes qcmCheckoutSpin{to{transform:rotate(360deg)}}
.qcm-root .qcm-checkout-success{position:relative;padding:48px 24px;border:1px solid rgba(52,211,153,.18);border-radius:24px;background:rgba(15,23,42,.9);box-shadow:0 24px 80px -24px rgba(0,0,0,.5),0 20px 60px -20px rgba(16,185,129,.16);text-align:center}
.qcm-root .qcm-success-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:18px;background:rgba(16,185,129,.14);color:#34d399;border:1px solid rgba(52,211,153,.22)}
.qcm-root .qcm-success-icon svg{width:28px;height:28px;stroke-width:2.5}
.qcm-root .qcm-checkout-success h2{margin:0;color:#fff;font-size:22px;font-weight:850;letter-spacing:-.025em}
.qcm-root .qcm-checkout-success p{margin:8px auto 0;max-width:520px;color:rgba(255,255,255,.65);font-size:13px;line-height:1.55}
.qcm-root .qcm-success-order{margin-top:14px;color:#a7f3d0;font-size:13px;font-weight:700}
.qcm-root .qcm-success-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin-top:18px;padding:0 16px;border-radius:12px;background:#8b5cf6;color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:700}

@media(max-width:680px){
  .qcm-root .qcm-checkout-shell{padding:10px 8px 14px;border-radius:20px}
  .qcm-root .qcm-checkout-field-grid{grid-template-columns:1fr;gap:12px;padding:13px 14px}
  .qcm-root .qcm-checkout-flight-wrap,.qcm-root .qcm-checkout-notes-field{padding:13px 14px}
  .qcm-root .qcm-checkout-alert{margin-left:14px;margin-right:14px}
  .qcm-root .qcm-checkout-payment-card{padding:14px}
  .qcm-root .qcm-checkout-price-card{padding:14px}
  .qcm-root .qcm-checkout-actions{flex-direction:column-reverse;gap:9px}
  .qcm-root .qcm-checkout-back,.qcm-root .qcm-checkout-submit{width:100%;min-width:0;flex:auto}
}
.qcm-root .qcm-checkout-field small:empty{display:none!important;margin:0!important}

/* v0.4.1 — airport pickup flight number ----------------------------------- */
.qcm-root .qcm-required-mark{color:#fbbf24;font:800 12px/1 inherit}

/* v0.4.3 — checkout trip-details modal ------------------------------------ */
html.qcm-trip-details-open,
html.qcm-trip-details-open body{overflow:hidden!important}
.qcm-root .qcm-trip-details-overlay[hidden]{display:none!important}
.qcm-root .qcm-trip-details-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:100000!important;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(2,6,23,.72);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.qcm-root .qcm-trip-details-modal{
  position:relative;
  width:100%;
  max-width:620px;
  max-height:min(88vh,820px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(100,116,139,.58);
  border-radius:26px;
  background:#0f172a;
  color:#fff;
  box-shadow:0 30px 90px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.025) inset;
  animation:qcmTripDetailsIn .18s ease-out both;
}
@keyframes qcmTripDetailsIn{
  from{opacity:0;transform:translateY(10px) scale(.985)}
  to{opacity:1;transform:none}
}
.qcm-root .qcm-trip-details-head{
  flex:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:20px 24px;
  border-bottom:1px solid rgba(100,116,139,.38);
}
.qcm-root .qcm-trip-details-head h2{
  margin:0;
  color:#fff;
  font-size:20px;
  line-height:1.2;
  font-weight:750;
  letter-spacing:-.02em;
}
.qcm-root .qcm-trip-details-close{
  appearance:none;
  flex:none;
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  padding:0;
  border:0;
  border-radius:12px;
  background:transparent;
  color:#94a3b8;
  cursor:pointer;
  transition:background .18s,color .18s,transform .18s;
}
.qcm-root .qcm-trip-details-close:hover{background:rgba(30,41,59,.86);color:#fff}
.qcm-root .qcm-trip-details-close:active{transform:scale(.96)}
.qcm-root .qcm-trip-details-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}
.qcm-root .qcm-trip-details-body{
  flex:1;
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding:24px;
  scrollbar-width:thin;
  scrollbar-color:rgba(148,163,184,.35) transparent;
}
.qcm-root .qcm-trip-details-body::-webkit-scrollbar{width:7px}
.qcm-root .qcm-trip-details-body::-webkit-scrollbar-thumb{background:rgba(148,163,184,.32);border-radius:99px}
.qcm-root .qcm-trip-details-route{display:flex;gap:18px;min-width:0}
.qcm-root .qcm-trip-details-line{
  flex:none;
  display:flex;
  flex-direction:column;
  align-items:center;
  width:28px;
  padding-top:2px;
}
.qcm-root .qcm-trip-dot{
  position:relative;
  z-index:1;
  flex:none;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:50%;
}
.qcm-root .qcm-trip-dot-origin{background:rgba(16,185,129,.20)}
.qcm-root .qcm-trip-dot-origin i{display:block;width:9px;height:9px;border-radius:50%;background:#34d399}
.qcm-root .qcm-trip-dot-destination{background:rgba(244,63,94,.18);color:#fb7185}
.qcm-root .qcm-trip-dot-destination svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2}
.qcm-root .qcm-trip-line-stem{flex:1;width:1px;min-height:26px;background:rgba(100,116,139,.52)}
.qcm-root .qcm-trip-details-route-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:22px}
.qcm-root .qcm-trip-details-route-copy>div>p,
.qcm-root .qcm-trip-details-stats p,
.qcm-root .qcm-trip-details-return p,
.qcm-root .qcm-trip-details-extras p,
.qcm-root .qcm-trip-details-vehicle p{
  margin:0 0 5px;
  color:#94a3b8;
  font-size:11px;
  line-height:1.25;
  font-weight:750;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.qcm-root .qcm-trip-details-route-copy strong,
.qcm-root .qcm-trip-details-stats strong,
.qcm-root .qcm-trip-details-return strong,
.qcm-root .qcm-trip-details-extras strong,
.qcm-root .qcm-trip-details-vehicle strong{
  display:block;
  color:#fff;
  font-size:14px;
  line-height:1.45;
  font-weight:650;
  overflow-wrap:anywhere;
}
.qcm-root .qcm-trip-details-waypoints[hidden],
.qcm-root .qcm-trip-details-return[hidden],
.qcm-root .qcm-trip-details-extras[hidden]{display:none!important}
.qcm-root .qcm-trip-details-waypoints{display:flex!important;flex-direction:column;gap:14px;padding:2px 0}
.qcm-root .qcm-trip-details-waypoints>div{position:relative;padding-left:12px}
.qcm-root .qcm-trip-details-waypoints>div:before{content:"";position:absolute;left:-33px;top:8px;width:7px;height:7px;border-radius:50%;background:#a78bfa;box-shadow:0 0 0 5px rgba(139,92,246,.13)}
.qcm-root .qcm-trip-details-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid rgba(100,116,139,.38);
}
.qcm-root .qcm-trip-details-stats strong{font-size:14px}
.qcm-root .qcm-trip-details-passengers,
.qcm-root .qcm-trip-details-suitcases{display:flex!important;align-items:center;gap:7px}
.qcm-root .qcm-trip-details-passengers svg,
.qcm-root .qcm-trip-details-suitcases svg{flex:none;width:16px;height:16px;color:#94a3b8;fill:none;stroke:currentColor;stroke-width:2}
.qcm-root .qcm-trip-details-return,
.qcm-root .qcm-trip-details-extras{
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid rgba(100,116,139,.38);
}
.qcm-root .qcm-trip-details-vehicle{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid rgba(100,116,139,.38);
}
.qcm-root .qcm-trip-details-vehicle>div{min-width:0}
.qcm-root .qcm-trip-details-change-vehicle{
  appearance:none;
  flex:none;
  min-height:40px;
  padding:0 18px;
  border:1px solid rgba(139,92,246,.45);
  border-radius:12px;
  background:rgba(139,92,246,.15);
  color:#c4b5fd;
  font:700 13px/1 inherit;
  cursor:pointer;
  transition:.18s;
}
.qcm-root .qcm-trip-details-change-vehicle:hover{background:rgba(139,92,246,.26);color:#fff;border-color:rgba(167,139,250,.6)}

@media(max-width:680px){
  .qcm-root .qcm-trip-details-overlay{align-items:flex-end;padding:10px}
  .qcm-root .qcm-trip-details-modal{max-width:none;max-height:88vh;border-radius:22px 22px 18px 18px}
  .qcm-root .qcm-trip-details-head{padding:16px 18px}
  .qcm-root .qcm-trip-details-head h2{font-size:18px}
  .qcm-root .qcm-trip-details-body{padding:18px}
  .qcm-root .qcm-trip-details-route{gap:14px}
  .qcm-root .qcm-trip-details-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}
  .qcm-root .qcm-trip-details-vehicle{align-items:stretch;flex-direction:column}
  .qcm-root .qcm-trip-details-change-vehicle{width:100%}
}

/* v0.4.5 — light theme conversion ----------------------------------------- */
.qcm-root{
  --qcm-violet:#8b5cf6;
  --qcm-violet2:#7c3aed;
  --qcm-bg:#f8fafc;
  --qcm-text:#0f172a;
  --qcm-muted:rgba(15,23,42,.62);
  color:#0f172a;
}
.qcm-root,
.qcm-root .qcm-app,
.qcm-root .qcm-head h2,
.qcm-root .qcm-select-label,
.qcm-root .qcm-trust p,
.qcm-root .qcm-return-label,
.qcm-root .qcm-extra-row,
.qcm-root .qcm-tab,
.qcm-root .qcm-primary,
.qcm-root .qcm-field-grow,
.qcm-root .qcm-checkout-section-head>p,
.qcm-root .qcm-checkout-customer-head h3,
.qcm-root .qcm-checkout-route,
.qcm-root .qcm-checkout-trip-meta,
.qcm-root .qcm-checkout-field>span,
.qcm-root .qcm-checkout-phone-field>span,
.qcm-root .qcm-checkout-payment-label,
.qcm-root .qcm-trip-details-head h2,
.qcm-root .qcm-trip-details-route-copy strong,
.qcm-root .qcm-trip-details-stats strong,
.qcm-root .qcm-trip-details-return strong,
.qcm-root .qcm-trip-details-extras strong,
.qcm-root .qcm-trip-details-vehicle strong{color:#0f172a}

.qcm-root .qcm-glow-a{background:rgba(255,255,255,.7)}
.qcm-root .qcm-glow-b{background:rgba(139,92,246,.08)}
.qcm-root .qcm-card,
.qcm-root .qcm-checkout-shell,
.qcm-root .qcm-checkout-success{
  background:rgba(255,255,255,.94);
  border-color:rgba(148,163,184,.22);
  box-shadow:0 24px 80px -24px rgba(15,23,42,.16),0 0 0 1px rgba(255,255,255,.66),0 24px 48px -24px rgba(139,92,246,.12);
}
.qcm-root .qcm-card-sheen{background:linear-gradient(to bottom,rgba(139,92,246,.06),transparent 28%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.75)}
.qcm-root .qcm-badges span,
.qcm-root .qcm-tabs,
.qcm-root .qcm-address-card,
.qcm-root .qcm-secondary,
.qcm-root .qcm-extra-row,
.qcm-root .qcm-return-toggle,
.qcm-root .qcm-select-shell,
.qcm-root .qcm-checkout-details-card,
.qcm-root .qcm-checkout-customer-card,
.qcm-root .qcm-checkout-payment-card,
.qcm-root .qcm-checkout-price-card{
  background:#fff;
  border-color:rgba(148,163,184,.20);
  box-shadow:0 12px 30px -24px rgba(15,23,42,.14);
}
.qcm-root .qcm-badges span{color:#334155}
.qcm-root .qcm-tabs{background:#f1f5f9}
.qcm-root .qcm-tab{color:#64748b}
.qcm-root .qcm-tab:hover{background:#e2e8f0;color:#334155}
.qcm-root .qcm-tab.is-active{background:linear-gradient(180deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 8px 24px rgba(139,92,246,.24)}
.qcm-root .qcm-divider,.qcm-root .qcm-inner-divider{background:rgba(148,163,184,.22)}
.qcm-root .qcm-error{border-color:rgba(251,191,36,.4);background:#fffbeb;color:#92400e}
.qcm-root .qcm-eyebrow,
.qcm-root .qcm-native-address-group .qcm-native-origin-row>label,
.qcm-root .qcm-native-address-group .qcm-native-destination-row>label,
.qcm-root .qcm-native-address-group .qcm-native-origin-row .control-label,
.qcm-root .qcm-native-address-group .qcm-native-destination-row .control-label{color:#10b981!important}
.qcm-root .qcm-origin-slot,
.qcm-root .qcm-destination-slot{color:#0f172a}
.qcm-root .qcm-address-control,
.qcm-root .qcm-root .qcm-address-control.form-control,
.qcm-root .qcm-root .qcm-address-control.quickcab-form-input,
.qcm-root .qcm-native-address-group .qcm-address-control,
.qcm-root .qcm-native-address-group input.qcm-address-control,
.qcm-root .qcm-native-address-group select.qcm-address-control,
.qcm-root .qcm-waypoint-native-field .qcm-waypoint-control,
.qcm-root .qcm-waypoint-native-field input.qcm-waypoint-control,
.qcm-root .qcm-waypoint-native-field select.qcm-waypoint-control,
.qcm-root .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control,
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control,
.qcm-root .qcm-modern-select,
.qcm-root .qcm-root .qcm-modern-select.form-control{color:#0f172a!important}
.qcm-root .qcm-address-control::placeholder,
.qcm-root .qcm-native-address-group .qcm-address-control::placeholder,
.qcm-root .qcm-waypoint-native-field .qcm-waypoint-control::placeholder,
.qcm-root .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control::placeholder,
.qcm-root .qcm-checkout-field input::placeholder,
.qcm-root .qcm-checkout-field textarea::placeholder,
.qcm-root .qcm-checkout-phone::placeholder{color:#94a3b8!important}
.qcm-root .qcm-address-control option,
.qcm-root .qcm-modern-select option{background:#fff;color:#0f172a}
.qcm-root .qcm-icon-button{border-color:rgba(148,163,184,.22);background:#fff;color:#64748b}
.qcm-root .qcm-icon-button:hover{color:#7c3aed;background:#f5f3ff;border-color:rgba(139,92,246,.25)}
.qcm-root .qcm-plus-badge,
.qcm-root .qcm-picker-icon{background:rgba(139,92,246,.12);color:#8b5cf6}
.qcm-root .qcm-secondary,
.qcm-root .qcm-extra-row,
.qcm-root .qcm-return-toggle,
.qcm-root .qcm-picker-trigger,
.qcm-root .qcm-select-shell{color:#0f172a}
.qcm-root .qcm-secondary:hover,
.qcm-root .qcm-extra-row:hover,
.qcm-root .qcm-return-toggle:hover,
.qcm-root .qcm-select-shell:hover{background:#faf5ff;border-color:rgba(139,92,246,.20)}
.qcm-root .qcm-picker-trigger{border-color:rgba(148,163,184,.24);background:#fff}
.qcm-root .qcm-picker-trigger:hover{border-color:rgba(139,92,246,.26)}
.qcm-root .qcm-chevron,.qcm-root .qcm-select-icon{color:#64748b}
.qcm-root .qcm-switch{background:#cbd5e1}
.qcm-root .qcm-switch span{background:#fff}
.qcm-root .qcm-return-toggle[aria-pressed="true"] .qcm-switch{background:#8b5cf6}
.qcm-root .qcm-primary{background:linear-gradient(180deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 12px 30px rgba(139,92,246,.24)}
.qcm-root .qcm-primary:hover{background:linear-gradient(180deg,#9d71fb,#8750ee)}
.qcm-root .qcm-trust>div>span:first-child,
.qcm-root .qcm-trust p{color:#334155}
.qcm-root .qcm-trust em{color:#94a3b8}

/* Dropdowns / popovers */
.qcm-root .qcm-date-popover{border-color:rgba(148,163,184,.22);background:linear-gradient(#ffffff,#f8fafc);color:#0f172a;box-shadow:0 25px 60px rgba(15,23,42,.16),0 0 0 1px rgba(255,255,255,.7)}
.qcm-root .qcm-cal-head{background:#f8fafc;border-bottom-color:rgba(148,163,184,.22)}
.qcm-root .qcm-cal-head h3{color:#0f172a}
.qcm-root .qcm-cal-head button{background:#fff;color:#64748b;border:1px solid rgba(148,163,184,.18)}
.qcm-root .qcm-cal-head button:hover{background:#f5f3ff;color:#7c3aed}
.qcm-root .qcm-weekdays span,.qcm-root .qcm-popover-help{color:#64748b}
.qcm-root .qcm-day{color:#334155}
.qcm-root .qcm-day:hover{background:#f5f3ff;color:#7c3aed}
.qcm-root .qcm-day.is-today{background:#f5f3ff;color:#7c3aed;border-color:rgba(139,92,246,.25)}
.qcm-root .qcm-day[disabled]{color:#cbd5e1}
.qcm-root .qcm-time-popover{border-color:rgba(148,163,184,.22);background:rgba(255,255,255,.98);box-shadow:0 18px 40px rgba(15,23,42,.16)}
.qcm-root .qcm-wheel-highlight{background:#f1f5f9}
.qcm-root .qcm-wheel-item{color:#94a3b8}
.qcm-root .qcm-wheel-item.is-active,.qcm-root .qcm-colon{color:#0f172a}

html.qcm-google-pac-theme .pac-container{border-color:rgba(139,92,246,.22)!important;background:#fff!important;color:#0f172a!important;box-shadow:0 18px 42px -10px rgba(15,23,42,.16),0 0 0 1px rgba(139,92,246,.08)!important}
html.qcm-google-pac-theme .pac-item{border-top-color:rgba(148,163,184,.12)!important;color:#475569!important;background:#fff!important}
html.qcm-google-pac-theme .pac-item:hover,
html.qcm-google-pac-theme .pac-item-selected{background:#f5f3ff!important;color:#0f172a!important}
html.qcm-google-pac-theme .pac-item-query{color:#0f172a!important}
html.qcm-google-pac-theme .pac-matched{color:#8b5cf6!important}
html.qcm-google-pac-theme .pac-item span:not(.pac-icon):not(.pac-item-query):not(.pac-matched){color:#64748b!important}
html.qcm-google-pac-theme .pac-logo:after{border-top-color:rgba(148,163,184,.12)!important;background:#fff!important}

/* Waypoint cards */
.qcm-root .qcm-native-waypoints>.qcm-waypoint-row,
.qcm-root .qcm-native-address-group .qcm-native-waypoints>.qcm-waypoint-row{background:#f8fafc!important;border-color:rgba(148,163,184,.18)!important}
.qcm-root .qcm-waypoint-number{color:#d97706!important}
.qcm-root .qcm-waypoint-up,
.qcm-root .qcm-waypoint-down{color:#64748b!important}
.qcm-root .qcm-waypoint-up:hover,
.qcm-root .qcm-waypoint-down:hover{color:#0f172a!important;background:#eef2ff!important}
.qcm-root .qcm-waypoint-remove{background:#fff1f2;border-color:rgba(244,63,94,.18);color:#fb7185}
.qcm-root .qcm-waypoint-remove:hover{background:#ffe4e6;color:#e11d48}
.qcm-root .qcm-native-address-group .quickcab-autocomplete-warning{color:#b45309!important}

/* Fleet modal */
.qcm-root .qcm-fleet-overlay{background:rgba(15,23,42,.30);backdrop-filter:blur(10px)}
.qcm-root .qcm-fleet-modal{background:#f8fafc;border-color:rgba(148,163,184,.18);box-shadow:0 32px 64px rgba(15,23,42,.18),0 0 0 1px rgba(255,255,255,.7)}
.qcm-root .qcm-fleet-head,.qcm-root .qcm-fleet-foot{border-color:rgba(148,163,184,.18);background:#fff}
.qcm-root .qcm-fleet-head h2{color:#0f172a}
.qcm-root .qcm-fleet-head p,.qcm-root .qcm-fleet-foot p,.qcm-root .qcm-fleet-loading{color:#64748b}
.qcm-root .qcm-fleet-close,.qcm-root .qcm-fleet-back{background:#fff;border:1px solid rgba(148,163,184,.18);color:#475569}
.qcm-root .qcm-fleet-close:hover,.qcm-root .qcm-fleet-back:hover{background:#f5f3ff;color:#7c3aed;border-color:rgba(139,92,246,.25)}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item{background:#fff!important;border:1px solid rgba(148,163,184,.18)!important;box-shadow:0 16px 32px -24px rgba(15,23,42,.14)!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item:hover{border-color:rgba(139,92,246,.30)!important;box-shadow:0 20px 40px -24px rgba(139,92,246,.14)!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column{background:linear-gradient(180deg,#faf5ff,#f8fafc)!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column:after{background:linear-gradient(135deg,rgba(139,92,246,.10),transparent 70%)!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-name{color:#0f172a!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-features li{color:#475569!important;background:#f8fafc!important;border-color:rgba(148,163,184,.15)!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-features .glyphicon-ok{color:#10b981!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icon{background:#f8fafc!important;border-color:rgba(148,163,184,.18)!important;color:#475569!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icon-number{color:#0f172a!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price .woocommerce-Price-amount,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price bdi,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price .woocommerce-Price-currencySymbol{color:#0f172a!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button,
.qcm-root .qcm-fleet-native-slot a.quickcab-vehicle-book-button.quickcab-button{background:linear-gradient(180deg,#8b5cf6,#7c3aed)!important;border-color:rgba(139,92,246,.2)!important;color:#fff!important;box-shadow:0 10px 24px -8px rgba(139,92,246,.28)!important}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button:hover,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button:focus-visible{filter:brightness(1.05)!important}

/* Checkout */
.qcm-root .qcm-checkout-glow-a{background:rgba(255,255,255,.6)}
.qcm-root .qcm-checkout-glow-b{background:rgba(139,92,246,.05)}
.qcm-root .qcm-checkout-details-card{background:#fff;border-color:rgba(148,163,184,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.65),0 8px 32px -16px rgba(15,23,42,.10)}
.qcm-root .qcm-checkout-customer-head,
.qcm-root .qcm-checkout-section-head{background:#f8fafc;border-bottom-color:rgba(148,163,184,.18)}
.qcm-root .qcm-checkout-customer-head p,.qcm-root .qcm-checkout-price-card>div,.qcm-root .qcm-checkout-payment-note,.qcm-root .qcm-checkout-trip-extra span,.qcm-root .qcm-checkout-trust{color:#64748b}
.qcm-root .qcm-checkout-trip-main{border-left-color:rgba(139,92,246,.30)}
.qcm-root .qcm-checkout-route-arrow{color:#94a3b8}
.qcm-root .qcm-checkout-trip-extra{background:#f8fafc;border-color:rgba(148,163,184,.15)}
.qcm-root .qcm-checkout-alert{background:#fffbeb;color:#92400e;border-color:rgba(251,191,36,.32);box-shadow:none}
.qcm-root .qcm-checkout-alert-icon{background:#fef3c7;color:#d97706}
.qcm-root .qcm-checkout-field-grid,
.qcm-root .qcm-checkout-flight-wrap,
.qcm-root .qcm-checkout-notes-field{border-top-color:rgba(148,163,184,.16)}
.qcm-root .qcm-checkout-field>span,
.qcm-root .qcm-checkout-phone-field>span,
.qcm-root .qcm-checkout-payment-label{color:#334155}
.qcm-root .qcm-checkout-field>span em{color:#94a3b8}
.qcm-root .qcm-checkout-field input,
.qcm-root .qcm-checkout-field textarea,
.qcm-root .qcm-checkout-phone-control{background:#fff;border-color:rgba(148,163,184,.22)!important;color:#0f172a!important;box-shadow:none}
.qcm-root .qcm-checkout-field input:hover,
.qcm-root .qcm-checkout-field textarea:hover,
.qcm-root .qcm-checkout-phone-control:hover{border-color:rgba(139,92,246,.24)!important;background:#fff}
.qcm-root .qcm-checkout-field input:focus,
.qcm-root .qcm-checkout-field textarea:focus,
.qcm-root .qcm-checkout-phone-control:focus-within{border-color:rgba(139,92,246,.4)!important;background:#fff!important;box-shadow:0 0 0 3px rgba(139,92,246,.12)!important}
.qcm-root .qcm-checkout-phone{color:#0f172a!important}
.qcm-root .qcm-checkout-field small{color:#b45309}
.qcm-root .qcm-checkout-payment-toggle{border-color:rgba(139,92,246,.22);background:#f5f3ff}
.qcm-root .qcm-checkout-price-card .qcm-checkout-total-row{border-top-color:rgba(148,163,184,.18);color:#0f172a}
.qcm-root .qcm-checkout-price-card strong{color:#0f172a}
.qcm-root .qcm-checkout-back{border-color:rgba(148,163,184,.20);background:#fff;color:#334155}
.qcm-root .qcm-checkout-back:hover{background:#f5f3ff;color:#7c3aed}
.qcm-root .qcm-checkout-submit-status{border-color:rgba(16,185,129,.22);background:#ecfdf5;color:#047857}
.qcm-root .qcm-checkout-submit-status.is-error{border-color:rgba(251,191,36,.32);background:#fffbeb;color:#92400e}
.qcm-root .qcm-checkout-success{border-color:rgba(16,185,129,.16);background:#ffffff}
.qcm-root .qcm-checkout-success h2{color:#0f172a}
.qcm-root .qcm-checkout-success p{color:#64748b}

/* Trip details modal */
.qcm-root .qcm-trip-details-overlay{background:rgba(15,23,42,.28);backdrop-filter:blur(10px)}
.qcm-root .qcm-trip-details-modal{background:#fff;border-color:rgba(148,163,184,.20);box-shadow:0 32px 64px rgba(15,23,42,.18),0 0 0 1px rgba(255,255,255,.7)}
.qcm-root .qcm-trip-details-head{border-bottom-color:rgba(148,163,184,.18)}
.qcm-root .qcm-trip-details-close{background:#fff;border:1px solid rgba(148,163,184,.18);color:#64748b}
.qcm-root .qcm-trip-details-close:hover{background:#f5f3ff;color:#7c3aed}
.qcm-root .qcm-trip-details-body::-webkit-scrollbar-thumb{background:rgba(148,163,184,.40)}
.qcm-root .qcm-trip-details-route-copy>div>p,
.qcm-root .qcm-trip-details-stats p,
.qcm-root .qcm-trip-details-return p,
.qcm-root .qcm-trip-details-extras p,
.qcm-root .qcm-trip-details-vehicle p{color:#64748b}
.qcm-root .qcm-trip-line-stem{background:rgba(148,163,184,.45)}
.qcm-root .qcm-trip-details-waypoints>div:before{box-shadow:0 0 0 5px rgba(139,92,246,.10)}
.qcm-root .qcm-trip-details-stats,
.qcm-root .qcm-trip-details-return,
.qcm-root .qcm-trip-details-extras,
.qcm-root .qcm-trip-details-vehicle{border-top-color:rgba(148,163,184,.18)}
.qcm-root .qcm-trip-details-passengers svg,
.qcm-root .qcm-trip-details-suitcases svg{color:#64748b}
.qcm-root .qcm-trip-details-change-vehicle{background:#f5f3ff;color:#7c3aed;border-color:rgba(139,92,246,.30)}
.qcm-root .qcm-trip-details-change-vehicle:hover{background:#ede9fe;color:#6d28d9;border-color:rgba(139,92,246,.40)}

/* v0.4.7 — solid violet buttons, no gradients ----------------------------- */
.qcm-root .qcm-tab.is-active,
.qcm-root .qcm-primary,
.qcm-root .qcm-extras-done,
.qcm-root .qcm-checkout-trip-toggle,
.qcm-root .qcm-payment-option.is-active,
.qcm-root .qcm-checkout-submit,
.qcm-root .qcm-success-link,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button,
.qcm-root .qcm-fleet-native-slot a.quickcab-vehicle-book-button.quickcab-button{
  background:#8b5cf6!important;
  background-image:none!important;
}

.qcm-root .qcm-primary:hover,
.qcm-root .qcm-extras-done:hover,
.qcm-root .qcm-checkout-trip-toggle:hover,
.qcm-root .qcm-checkout-submit:hover:not(:disabled),
.qcm-root .qcm-success-link:hover,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button:hover,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button:focus-visible,
.qcm-root .qcm-fleet-native-slot a.quickcab-vehicle-book-button.quickcab-button:hover,
.qcm-root .qcm-fleet-native-slot a.quickcab-vehicle-book-button.quickcab-button:focus-visible{
  background:#7c3aed!important;
  background-image:none!important;
}

/* v0.4.8 — visible disabled vehicle CTA in light theme --------------------- */
.qcm-root .qcm-find-vehicles:disabled,
.qcm-root .qcm-find-vehicles.is-disabled,
.qcm-root .qcm-find-vehicles:disabled:hover,
.qcm-root .qcm-find-vehicles.is-disabled:hover{
  background:#e2e8f0!important;
  background-image:none!important;
  border:1px solid #cbd5e1!important;
  color:#64748b!important;
  opacity:1!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
  transform:none!important;
}
.qcm-root .qcm-find-vehicles:disabled svg,
.qcm-root .qcm-find-vehicles.is-disabled svg{
  color:#64748b!important;
  opacity:.8!important;
}

/* v0.4.9 — force native QuickCab address block into light theme ------------
   Older address-layout rules use !important and otherwise win over the
   generic light-theme conversion. Keep the real QuickCab DOM intact. */
.qcm-root .qcm-address-card{
  background:#ffffff!important;
  background-image:none!important;
  border:1px solid #e2e8f0!important;
  box-shadow:0 10px 28px -24px rgba(15,23,42,.18)!important;
}
.qcm-root .qcm-native-address-group{
  background:#ffffff!important;
  border:0!important;
  box-shadow:none!important;
}
.qcm-root .qcm-native-address-group .qcm-native-origin-row,
.qcm-root .qcm-native-address-group .qcm-native-destination-row{
  background:#ffffff!important;
  color:#0f172a!important;
}
.qcm-root .qcm-native-address-group .qcm-native-destination-row{
  border-top:1px solid #e2e8f0!important;
}
.qcm-root .qcm-native-address-group .qcm-address-control,
.qcm-root .qcm-native-address-group input.qcm-address-control,
.qcm-root .qcm-native-address-group select.qcm-address-control{
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
}
.qcm-root .qcm-native-address-group .qcm-address-control::placeholder{
  color:#94a3b8!important;
  -webkit-text-fill-color:#94a3b8!important;
  opacity:1!important;
}
.qcm-root .qcm-native-address-group .qcm-airport-fixed{
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
}
.qcm-root .qcm-waypoint-wrap{
  background:#ffffff!important;
  border-top:1px solid #e2e8f0!important;
}
.qcm-root .qcm-waypoint-wrap .qcm-secondary{
  background:#f8fafc!important;
  border-color:#e2e8f0!important;
  color:#334155!important;
}
.qcm-root .qcm-waypoint-wrap .qcm-secondary:hover{
  background:#f5f3ff!important;
  border-color:rgba(139,92,246,.28)!important;
  color:#7c3aed!important;
}

/* v0.4.10 — light passenger / luggage picker ------------------------------- */
.qcm-root .qcm-number-field .qcm-select-label{
  color:#334155!important;
}
.qcm-root .qcm-number-trigger,
.qcm-root button.qcm-number-trigger{
  background:#ffffff!important;
  border:1px solid #cbd5e1!important;
  color:#0f172a!important;
  box-shadow:0 1px 2px rgba(15,23,42,.03)!important;
}
.qcm-root .qcm-number-trigger:hover,
.qcm-root button.qcm-number-trigger:hover{
  background:#f8fafc!important;
  border-color:#94a3b8!important;
}
.qcm-root .qcm-number-trigger:focus-visible,
.qcm-root .qcm-number-trigger[aria-expanded="true"]{
  outline:none!important;
  background:#ffffff!important;
  border-color:#8b5cf6!important;
  box-shadow:0 0 0 3px rgba(139,92,246,.14)!important;
}
.qcm-root .qcm-number-trigger .qcm-select-icon{
  color:#64748b!important;
}
.qcm-root .qcm-number-value{
  color:#0f172a!important;
}
.qcm-root .qcm-number-chevron{
  color:#64748b!important;
}
.qcm-root .qcm-number-trigger[aria-expanded="true"] .qcm-number-chevron{
  color:#8b5cf6!important;
}

/* The listbox is appended outside .qcm-root, so it needs global light rules. */
.qcm-number-listbox{
  border:1px solid #cbd5e1!important;
  background:#ffffff!important;
  color:#0f172a!important;
  box-shadow:0 18px 42px -10px rgba(15,23,42,.18),0 0 0 1px rgba(255,255,255,.75)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
.qcm-number-option{
  border-top:1px solid #f1f5f9!important;
  background:#ffffff!important;
  color:#334155!important;
}
.qcm-number-option:hover,
.qcm-number-option:focus-visible{
  background:#f5f3ff!important;
  color:#6d28d9!important;
}
.qcm-number-option:active{
  background:#ede9fe!important;
  color:#6d28d9!important;
}
.qcm-number-option.is-selected,
.qcm-number-option[aria-selected="true"]{
  background:#8b5cf6!important;
  color:#ffffff!important;
  font-weight:700!important;
}
.qcm-number-listbox::-webkit-scrollbar-thumb{
  background:#cbd5e1!important;
}
.qcm-number-listbox::-webkit-scrollbar-thumb:hover{
  background:#a78bfa!important;
}

/* v0.4.11 — passenger / luggage borders aligned with the other light fields */
.qcm-root .qcm-number-trigger,
.qcm-root button.qcm-number-trigger{
  border-color:#e2e8f0!important;
  box-shadow:none!important;
}
.qcm-root .qcm-number-trigger:hover,
.qcm-root button.qcm-number-trigger:hover{
  background:#ffffff!important;
  border-color:rgba(139,92,246,.24)!important;
}
.qcm-root .qcm-number-trigger:focus-visible,
.qcm-root .qcm-number-trigger[aria-expanded="true"]{
  border-color:rgba(139,92,246,.40)!important;
  box-shadow:0 0 0 3px rgba(139,92,246,.12)!important;
}
.qcm-number-listbox{
  border-color:#e2e8f0!important;
  box-shadow:0 18px 42px -12px rgba(15,23,42,.12),0 0 0 1px rgba(255,255,255,.8)!important;
}

/* v0.4.12 — hide address example text while typing ------------------------ */
.qcm-root .qcm-address-control:focus::placeholder,
.qcm-root .qcm-native-address-group .qcm-address-control:focus::placeholder,
.qcm-root .qcm-waypoint-control:focus::placeholder,
.qcm-root .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control:focus::placeholder{
  color:transparent!important;
  opacity:0!important;
}

/* v0.4.13 — fleet modal aligned with the light form ------------------------ */
.qcm-root .qcm-fleet-overlay{
  background:rgba(15,23,42,.26)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  backdrop-filter:blur(8px)!important;
}
.qcm-root .qcm-fleet-modal{
  border:1px solid #e2e8f0!important;
  background:#ffffff!important;
  background-image:none!important;
  box-shadow:0 28px 70px -24px rgba(15,23,42,.24),0 0 0 1px rgba(255,255,255,.85)!important;
}
.qcm-root .qcm-fleet-head{
  border-bottom:1px solid #e2e8f0!important;
  background:#ffffff!important;
  background-image:none!important;
}
.qcm-root .qcm-fleet-head h2{
  color:#0f172a!important;
}
.qcm-root .qcm-fleet-head p{
  color:#64748b!important;
}
.qcm-root .qcm-fleet-close{
  border:1px solid #e2e8f0!important;
  background:#f8fafc!important;
  color:#64748b!important;
  box-shadow:none!important;
}
.qcm-root .qcm-fleet-close:hover{
  border-color:rgba(139,92,246,.24)!important;
  background:#f5f3ff!important;
  color:#7c3aed!important;
}
.qcm-root .qcm-fleet-body{
  background:#f8fafc!important;
  background-image:none!important;
}
.qcm-root .qcm-fleet-loading{
  color:#64748b!important;
}
.qcm-root .qcm-fleet-loading span{
  border-color:#e2e8f0!important;
  border-top-color:#8b5cf6!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item{
  border:1px solid #e2e8f0!important;
  background:#ffffff!important;
  background-image:none!important;
  box-shadow:0 12px 28px -24px rgba(15,23,42,.18)!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-item:hover{
  border-color:rgba(139,92,246,.28)!important;
  box-shadow:0 16px 34px -24px rgba(139,92,246,.20)!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column{
  background:#f8fafc!important;
  background-image:none!important;
  border-bottom:1px solid #f1f5f9!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-image-column:after{
  background:rgba(15,23,42,.08)!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-details-column{
  color:#0f172a!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-name{
  color:#0f172a!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-features li{
  border:1px solid #e2e8f0!important;
  background:#f8fafc!important;
  color:#475569!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-features .glyphicon-ok{
  color:#10b981!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icon{
  border:1px solid #e2e8f0!important;
  background:#ffffff!important;
  color:#64748b!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icon .glyphicon{
  color:#8b5cf6!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-hand-luggage-icon svg{
  fill:#8b5cf6!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-icon-number{
  color:#334155!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-book-container{
  border-top:1px solid #e2e8f0!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price .woocommerce-Price-amount,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price bdi,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-price .woocommerce-Price-currencySymbol{
  color:#0f172a!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button,
.qcm-root .qcm-fleet-native-slot a.quickcab-vehicle-book-button.quickcab-button{
  border-color:#8b5cf6!important;
  background:#8b5cf6!important;
  background-image:none!important;
  box-shadow:0 8px 20px -8px rgba(139,92,246,.34)!important;
  color:#ffffff!important;
}
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button:hover,
.qcm-root .qcm-fleet-native-slot .quickcab-vehicle-book-button:focus-visible,
.qcm-root .qcm-fleet-native-slot a.quickcab-vehicle-book-button.quickcab-button:hover,
.qcm-root .qcm-fleet-native-slot a.quickcab-vehicle-book-button.quickcab-button:focus-visible{
  border-color:#7c3aed!important;
  background:#7c3aed!important;
  background-image:none!important;
  box-shadow:0 10px 24px -8px rgba(124,58,237,.30)!important;
}
.qcm-root .qcm-fleet-foot{
  border-top:1px solid #e2e8f0!important;
  background:#ffffff!important;
}
.qcm-root .qcm-fleet-foot p{
  color:#94a3b8!important;
}
.qcm-root .qcm-fleet-back{
  border:1px solid #e2e8f0!important;
  background:#ffffff!important;
  color:#475569!important;
  box-shadow:none!important;
}
.qcm-root .qcm-fleet-back:hover{
  border-color:rgba(139,92,246,.24)!important;
  background:#f5f3ff!important;
  color:#7c3aed!important;
}
.qcm-root .qcm-fleet-body::-webkit-scrollbar-thumb{
  background:#cbd5e1!important;
}
.qcm-root .qcm-fleet-body::-webkit-scrollbar-thumb:hover{
  background:#a78bfa!important;
}

/* v0.4.14 — address placeholders disappear instantly; visible text caret --- */
.qcm-root .qcm-address-control,
.qcm-root .qcm-native-address-group .qcm-address-control,
.qcm-root .qcm-waypoint-control,
.qcm-root .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control{
  caret-color:#0f172a!important;
}

.qcm-root .qcm-address-control::placeholder,
.qcm-root .qcm-native-address-group .qcm-address-control::placeholder,
.qcm-root .qcm-waypoint-control::placeholder,
.qcm-root .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control::placeholder{
  transition:none!important;
}

.qcm-root .qcm-address-control:focus::placeholder,
.qcm-root .qcm-native-address-group .qcm-address-control:focus::placeholder,
.qcm-root .qcm-waypoint-control:focus::placeholder,
.qcm-root .qcm-native-waypoints>.qcm-waypoint-row>.qcm-waypoint-control:focus::placeholder{
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  opacity:0!important;
  transition:none!important;
}

/* v0.4.15 — remove ambient violet shadow from the form -------------------- */
.qcm-root .qcm-glow-b{
  display:none!important;
  background:transparent!important;
}
.qcm-root .qcm-card{
  box-shadow:0 20px 50px -28px rgba(15,23,42,.16),0 0 0 1px rgba(255,255,255,.72)!important;
}
.qcm-root .qcm-card-sheen{
  background:transparent!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72)!important;
}
.qcm-root .qcm-checkout-shell{
  box-shadow:0 20px 50px -28px rgba(15,23,42,.16),0 0 0 1px rgba(255,255,255,.72)!important;
}

/* v0.4.16 — remove outer frame, keep only the inner card edge ------------ */
.qcm-root .qcm-card{
  border-color:transparent!important;
  box-shadow:0 20px 50px -28px rgba(15,23,42,.16)!important;
}
.qcm-root .qcm-card-sheen{
  box-shadow:inset 0 0 0 1px #e2e8f0!important;
}

/* v0.4.17 — qcm-card is the only visible outer form container ------------- */
.qcm-root{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.qcm-root > form.qcm-enabled,
.qcm-root form.qcm-enabled{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.qcm-root .qcm-app{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.qcm-root .qcm-glow,
.qcm-root .qcm-glow-a,
.qcm-root .qcm-glow-b{
  display:none!important;
}
.qcm-root .qcm-card{
  /* The card itself is now the first/only visible frame. */
  margin:0!important;
  box-shadow:none!important;
  border:0!important;
}
.qcm-root .qcm-card-sheen{
  /* Keep the single inner edge the user selected. */
  background:transparent!important;
  box-shadow:inset 0 0 0 1px #e2e8f0!important;
}

/* v0.4.19 — mobile time picker as full-screen confirmation modal ----------- */
html.qcm-time-modal-open,
html.qcm-time-modal-open body{overflow:hidden!important}

/* Desktop keeps the compact anchored picker. */
.qcm-root .qcm-time-popover{
  height:auto;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  backdrop-filter:none;
  box-shadow:none;
  display:block;
}
.qcm-root .qcm-time-backdrop,
.qcm-root .qcm-time-mobile-head,
.qcm-root .qcm-time-preview,
.qcm-root .qcm-time-mobile-actions{display:none}
.qcm-root .qcm-time-dialog{
  position:relative;
  width:100%;
  height:252px;
  display:grid;
  grid-template-columns:80px 24px 80px;
  justify-content:center;
  align-items:center;
  padding:16px;
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 40px rgba(15,23,42,.16);
  overflow:hidden;
}
.qcm-root .qcm-time-wheel-panel{display:contents}

@media(max-width:680px){
  .qcm-root .qcm-time-popover{
    position:fixed!important;
    inset:0!important;
    z-index:9999999!important;
    width:100%!important;
    max-width:none!important;
    height:100dvh!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:16px!important;
    animation:qcmFade .16s ease!important;
  }
  .qcm-root .qcm-time-popover[hidden]{display:none!important}
  .qcm-root .qcm-time-backdrop{
    display:block;
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.58);
    backdrop-filter:blur(5px);
  }
  .qcm-root .qcm-time-dialog{
    position:relative;
    z-index:2;
    width:min(320px,100%);
    height:auto;
    display:block;
    padding:0;
    border:1px solid #e2e8f0;
    border-radius:28px;
    background:#fff;
    box-shadow:0 28px 70px rgba(15,23,42,.28);
    overflow:hidden;
    animation:qcmModal .2s cubic-bezier(.2,.8,.2,1);
  }
  .qcm-root .qcm-time-mobile-head{
    display:block;
    padding:22px 24px 8px;
  }
  .qcm-root .qcm-time-mobile-head h2{
    margin:0;
    color:#0f172a;
    text-align:center;
    font-size:17px;
    line-height:1.3;
    font-weight:700;
    letter-spacing:-.01em;
  }
  .qcm-root .qcm-time-preview{
    display:flex;
    align-items:baseline;
    justify-content:center;
    padding:8px 20px 18px;
    color:#0f172a;
    font-variant-numeric:tabular-nums;
  }
  .qcm-root .qcm-time-preview-hour,
  .qcm-root .qcm-time-preview-minute{
    font-size:36px;
    line-height:1;
    font-weight:600;
  }
  .qcm-root .qcm-time-preview-colon{
    margin:0 5px;
    color:#8b5cf6;
    font-size:36px;
    line-height:1;
    font-weight:400;
  }
  .qcm-root .qcm-time-wheel-panel{
    position:relative;
    display:grid;
    grid-template-columns:80px 32px 80px;
    justify-content:center;
    align-items:center;
    height:220px;
    margin:0 20px;
    border:1px solid #e2e8f0;
    border-radius:18px;
    background:#f8fafc;
    overflow:hidden;
  }
  .qcm-root .qcm-time-wheel-panel .qcm-wheel-highlight{
    left:12px;
    right:12px;
    top:50%;
    height:44px;
    border:1px solid rgba(139,92,246,.22);
    border-radius:12px;
    background:rgba(139,92,246,.10);
  }
  .qcm-root .qcm-time-wheel{
    height:220px;
    touch-action:pan-y;
    -webkit-overflow-scrolling:touch;
  }
  .qcm-root .qcm-wheel-item{color:#94a3b8}
  .qcm-root .qcm-wheel-item.is-active{
    color:#0f172a;
    font-weight:700;
    transform:scale(1.05);
  }
  .qcm-root .qcm-colon{
    color:#8b5cf6;
    font-weight:700;
  }
  .qcm-root .qcm-time-mobile-actions{
    display:block;
    padding:18px 20px 20px;
  }
  .qcm-root .qcm-time-confirm{
    appearance:none;
    width:100%;
    height:54px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:16px;
    background:#8b5cf6;
    color:#fff;
    font:700 16px/1 inherit;
    cursor:pointer;
    box-shadow:none;
    transition:background-color .15s ease,transform .12s ease;
  }
  .qcm-root .qcm-time-confirm:hover{background:#7c3aed}
  .qcm-root .qcm-time-confirm:active{transform:scale(.985)}
}

/* v0.4.20 — hidden time picker must never render on desktop --------------- */
.qcm-root .qcm-time-popover[hidden]{display:none!important}
