/* ===== Ezy Range Picker — dual-month car-rental date range calendar =====
   Drop-in. Themeable via CSS vars (falls back to sensible defaults):
     --ezyrp-accent      primary/brand color (selection, buttons)
     --ezyrp-accent-2    range-fill tint
     --ezyrp-text        main text
     --ezyrp-muted       muted text
     --ezyrp-bg          popover background
     --ezyrp-border      borders
   Set these on :root per site and the picker matches the brand.        */

.ezyrp-field{
  display:flex;align-items:center;gap:12px;width:100%;
  padding:14px 16px;border:1px solid var(--ezyrp-border,#e2e8f0);
  border-radius:12px;background:var(--ezyrp-bg,#fff);cursor:pointer;
  font:inherit;color:var(--ezyrp-text,#1a2230);transition:border-color .15s,box-shadow .15s;
  -webkit-tap-highlight-color:transparent;
}
.ezyrp-field:hover{border-color:var(--ezyrp-accent,#188E33);}
.ezyrp-field.ezyrp-open{border-color:var(--ezyrp-accent,#188E33);box-shadow:0 0 0 3px color-mix(in srgb,var(--ezyrp-accent,#188E33) 18%,transparent);}
.ezyrp-field svg{flex-shrink:0;color:var(--ezyrp-accent,#188E33);}
.ezyrp-seg{display:flex;flex-direction:column;line-height:1.2;min-width:0;}
.ezyrp-seg .ezyrp-lbl{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ezyrp-muted,#64748b);font-weight:600;}
.ezyrp-seg .ezyrp-val{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ezyrp-seg .ezyrp-val.ezyrp-placeholder{color:var(--ezyrp-muted,#94a3b8);font-weight:500;}
.ezyrp-arrow-sep{color:var(--ezyrp-muted,#cbd5e1);flex-shrink:0;}
.ezyrp-nights{margin-left:auto;font-size:12px;font-weight:700;color:var(--ezyrp-accent,#188E33);
  background:color-mix(in srgb,var(--ezyrp-accent,#188E33) 10%,transparent);
  padding:4px 10px;border-radius:999px;white-space:nowrap;}

/* popover */
.ezyrp-pop{
  position:absolute;z-index:9999;margin-top:8px;
  background:var(--ezyrp-bg,#fff);border:1px solid var(--ezyrp-border,#e2e8f0);
  border-radius:16px;box-shadow:0 20px 48px rgba(15,23,42,.18);
  padding:18px;display:none;user-select:none;
}
.ezyrp-pop.ezyrp-show{display:block;animation:ezyrp-in .16s ease;}
@keyframes ezyrp-in{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}
.ezyrp-months{display:flex;gap:26px;}
.ezyrp-cal{width:266px;}
@media(max-width:640px){
  /* open wide and centered on small screens so days aren't cramped */
  .ezyrp-pop{
    position:fixed!important;
    left:50%!important; right:auto!important;
    top:12vh!important;
    transform:translateX(-50%);
    width:calc(100vw - 24px)!important;
    max-width:440px;
    padding:18px 16px;
    max-height:80vh; overflow-y:auto; box-shadow:0 24px 64px rgba(15,23,42,.28);
  }
  .ezyrp-pop.ezyrp-show{animation:ezyrp-in-m .18s ease;}
  .ezyrp-months{flex-direction:column;gap:20px;}
  .ezyrp-cal{width:100%;}
  .ezyrp-grid{gap:3px;}
  .ezyrp-day{font-size:15px;}           /* bigger tap targets */
  .ezyrp-dow span{font-size:12px;}
}
@keyframes ezyrp-in-m{from{opacity:0;transform:translate(-50%,8px);}to{opacity:1;transform:translate(-50%,0);}}
.ezyrp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
.ezyrp-title{font-weight:700;font-size:15px;color:var(--ezyrp-text,#1a2230);}
.ezyrp-nav{width:32px;height:32px;border:none;background:transparent;border-radius:8px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;color:var(--ezyrp-text,#1a2230);transition:background .12s;}
.ezyrp-nav:hover{background:color-mix(in srgb,var(--ezyrp-accent,#188E33) 12%,transparent);}
.ezyrp-nav:disabled{opacity:.25;cursor:default;}
.ezyrp-nav.ezyrp-spacer{visibility:hidden;}
.ezyrp-dow{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px;}
.ezyrp-dow span{text-align:center;font-size:11px;font-weight:700;color:var(--ezyrp-muted,#94a3b8);padding:4px 0;}
.ezyrp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;}
.ezyrp-day{
  aspect-ratio:1;display:flex;align-items:center;justify-content:center;
  font-size:13.5px;border:none;background:transparent;cursor:pointer;border-radius:9px;
  color:var(--ezyrp-text,#1a2230);position:relative;transition:background .1s,color .1s;
}
.ezyrp-day.ezyrp-empty{cursor:default;}
.ezyrp-day:not(.ezyrp-disabled):not(.ezyrp-empty):hover{background:color-mix(in srgb,var(--ezyrp-accent,#188E33) 16%,transparent);}
.ezyrp-day.ezyrp-disabled{color:var(--ezyrp-muted,#cbd5e1);cursor:default;text-decoration:line-through;opacity:.6;}
.ezyrp-day.ezyrp-today{font-weight:800;}
.ezyrp-day.ezyrp-today::after{content:"";position:absolute;bottom:5px;width:4px;height:4px;border-radius:50%;background:var(--ezyrp-accent,#188E33);}
/* range states */
.ezyrp-day.ezyrp-in-range{background:var(--ezyrp-accent-2,color-mix(in srgb,var(--ezyrp-accent,#188E33) 14%,transparent));border-radius:0;color:var(--ezyrp-text,#1a2230);}
.ezyrp-day.ezyrp-start,.ezyrp-day.ezyrp-end{background:var(--ezyrp-accent,#188E33)!important;color:#fff!important;font-weight:700;}
.ezyrp-day.ezyrp-start{border-radius:9px 0 0 9px;}
.ezyrp-day.ezyrp-end{border-radius:0 9px 9px 0;}
.ezyrp-day.ezyrp-start.ezyrp-end{border-radius:9px;}
.ezyrp-day.ezyrp-today.ezyrp-start::after,.ezyrp-day.ezyrp-today.ezyrp-end::after{background:#fff;}
/* footer */
.ezyrp-foot{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:14px;border-top:1px solid var(--ezyrp-border,#eef1f5);gap:12px;flex-wrap:wrap;}
@media(max-width:640px){
  .ezyrp-foot{flex-direction:column;align-items:stretch;gap:12px;}
  .ezyrp-hint{text-align:center;}
  .ezyrp-actions{display:flex;gap:10px;}
  .ezyrp-actions .ezyrp-btn{flex:1;padding:13px 0;font-size:15px;}
}
.ezyrp-hint{font-size:12.5px;color:var(--ezyrp-muted,#64748b);}
.ezyrp-hint b{color:var(--ezyrp-text,#1a2230);}
.ezyrp-actions{display:flex;gap:8px;}
.ezyrp-btn{padding:9px 18px;border-radius:9px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:filter .12s,background .12s;}
.ezyrp-btn-clear{background:transparent;color:var(--ezyrp-muted,#64748b);border-color:var(--ezyrp-border,#e2e8f0);}
.ezyrp-btn-clear:hover{background:#f6f8fa;}
.ezyrp-btn-apply{background:var(--ezyrp-accent,#188E33);color:#fff;}
.ezyrp-btn-apply:hover{filter:brightness(1.08);}
.ezyrp-btn-apply:disabled{opacity:.45;cursor:default;filter:none;}

/* ===== Compact mode (for search bars / banners) ===== */
.ezyrp-field.ezyrp-compact{ padding:11px 14px; gap:9px; }
.ezyrp-field.ezyrp-compact svg{ width:18px; height:18px; }
.ezyrp-field.ezyrp-compact .ezyrp-seg .ezyrp-lbl{ font-size:10px; }
.ezyrp-field.ezyrp-compact .ezyrp-seg .ezyrp-val{ font-size:14px; }
.ezyrp-field.ezyrp-compact .ezyrp-nights{ display:none; } /* save space in bars */


/* Ensure the picker field fills its search-field container flush-left */
.search-field .ezyrp-field,.fleet-refine-field .ezyrp-field{ width:100%; }
