.mgmb-booking{
  --mgmb-primary:#2563eb;
  --mgmb-primary-soft:#eff6ff;
  --mgmb-primary-border:#bfdbfe;
  --mgmb-accent:#ea580c;
  --mgmb-accent-soft:#fff7ed;
  --mgmb-surface:#ffffff;
  --mgmb-surface-muted:#f8fafc;
  --mgmb-border:#e5e7eb;
  --mgmb-border-strong:#cbd5e1;
  --mgmb-text:#111827;
  --mgmb-text-soft:#475569;
  --mgmb-success:#16a34a;
  --mgmb-success-soft:#f0fdf4;
  --mgmb-danger:#dc2626;
  --mgmb-danger-soft:#fef2f2;
  --mgmb-shadow:0 18px 40px rgba(15,23,42,.08);
  --mgmb-shadow-soft:0 10px 24px rgba(15,23,42,.06);
  --mgmb-fs-heading:16px;
  --mgmb-fs-text:14px;
  --mgmb-fs-label:11px;
  font:inherit;
  color:var(--mgmb-text);
  background:#fff;
  border:1px solid rgba(148,163,184,.24);
  border-radius:18px;
  box-shadow:var(--mgmb-shadow);
  padding:18px;
  overflow:hidden;
}
.mgmb-booking *{box-sizing:border-box}
.mgmb-booking__tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:16px}
.mgmb-booking__tab{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;width:100%;border:1px solid var(--mgmb-border);background:#fff;border-radius:10px;padding:0 12px;cursor:pointer;font:inherit;font-size:var(--mgmb-fs-text);font-weight:700;color:var(--mgmb-text);transition:all .18s ease}
.mgmb-booking__tab:hover{border-color:var(--mgmb-primary-border)}
.mgmb-booking__tab.is-active{background:var(--mgmb-primary-soft);border-color:var(--mgmb-primary);color:var(--mgmb-primary)}
.mgmb-booking__tab-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#eef2ff;color:#4f46e5;flex:0 0 24px;font-size:12px}
.mgmb-booking__shell{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px;align-items:start}
.mgmb-booking__main,.mgmb-booking__quote{min-width:0}
.mgmb-booking__main{display:grid;gap:14px}
.mgmb-booking__quote{position:sticky;top:12px}
.mgmb-booking__panel{background:var(--mgmb-surface);border:1px solid var(--mgmb-border);border-radius:14px;box-shadow:var(--mgmb-shadow-soft);padding:16px}
.mgmb-booking__panel + .mgmb-booking__panel{margin-top:16px}
.mgmb-booking__panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.mgmb-booking__panel-title{margin:0;font-size:var(--mgmb-fs-heading);font-weight:700;line-height:1.3}
.mgmb-booking__step{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:var(--mgmb-primary-soft);color:var(--mgmb-primary);font-size:var(--mgmb-fs-label);font-weight:bolder;flex:0 0 28px}
.mgmb-golf-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-left:auto}
.mgmb-check{display:inline-flex;align-items:center;gap:10px;margin-top:5px;cursor:pointer}
.mgmb-check input{position:absolute;opacity:0;pointer-events:none}
.mgmb-check__box{width:20px;height:20px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.55);display:inline-flex;align-items:center;justify-content:center;transition:all .18s ease}
.mgmb-check__box::after{content:'';width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) scale(0);transition:transform .18s ease}
.mgmb-check input:checked + .mgmb-check__box{background:#0d6efd;border-color:#0d6efd}
.mgmb-check input:checked + .mgmb-check__box::after{transform:rotate(-45deg) scale(1)}
.mgmb-check__label{font-size:var(--mgmb-fs-text);font-weight:700;color:var(--mgmb-text)}
.mgmb-booking__subtabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.mgmb-booking__subtab{min-height:34px;padding:0 12px;border-radius:8px;border:1px solid var(--mgmb-border);background:#fff;color:var(--mgmb-text);cursor:pointer;font:inherit;font-size:var(--mgmb-fs-text);font-weight:700}
.mgmb-booking__subtab.is-active{background:var(--mgmb-accent-soft);border-color:#fdba74;color:#c2410c}
.mgmb-grid{display:grid;gap:12px}
.mgmb-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mgmb-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mgmb-field--ghost{visibility:hidden}
.mgmb-field label{display:block;margin:0 0 6px;font-size:var(--mgmb-fs-label);font-weight:700;color:var(--mgmb-text);letter-spacing:.03em;text-transform:uppercase}
.mgmb-booking .mgmb-field > input,
.mgmb-booking .mgmb-field > select,
.mgmb-booking .mgmb-field > textarea{width:100%;min-height:38px;padding:0 12px;border:1px solid var(--mgmb-border)!important;border-radius:10px!important;background:#fff!important;color:var(--mgmb-text)!important;font:inherit;font-size:16px!important;font-weight:400!important;box-shadow:none!important}
.mgmb-booking .mgmb-field > input:focus,
.mgmb-booking .mgmb-field > select:focus,
.mgmb-booking .mgmb-field > textarea:focus{outline:none;border-color:var(--mgmb-primary)!important;box-shadow:0 0 0 3px rgba(37,99,235,.08)!important}
.mgmb-booking .mgmb-field > textarea{min-height:92px;resize:vertical;padding-top:10px;padding-bottom:10px}
.mgmb-field select option{background:#fff;color:var(--mgmb-text)}
.mgmb-help{margin-top:4px;font-size:var(--mgmb-fs-label);color:var(--mgmb-text-soft);line-height:1.5}
.mgmb-help--inline{display:flex;align-items:flex-end;padding-bottom:6px}
.mgmb-date-legend{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:var(--mgmb-fs-text);color:var(--mgmb-text-soft)}
.mgmb-date-legend__dot{width:8px;height:8px;border-radius:999px;background:#f97316;box-shadow:0 0 0 4px rgba(249,115,22,.14)}
.mgmb-points{display:grid;gap:10px}
.mgmb-point{display:block}
.mgmb-place-card{padding:0;background:transparent;border:0;border-radius:0}
.mgmb-place-row{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:8px;align-items:center}
.mgmb-booking .mgmb-place-card .mgmb-place-input,
.mgmb-booking input.mgmb-date-alt{min-height:38px;padding:0 12px;border:1px solid var(--mgmb-border)!important;border-radius:10px!important;background:#fff!important;color:var(--mgmb-text)!important;font:inherit!important;font-size:16px!important;font-weight:400!important;line-height:38px;box-shadow:none!important;-webkit-appearance:none;appearance:none}
.mgmb-place-card .mgmb-place-input:focus,
.mgmb-booking input.mgmb-date-alt:focus{border-color:var(--mgmb-primary)!important;box-shadow:0 0 0 3px rgba(37,99,235,.08)!important}
.mgmb-field .mgmb-place-input{margin-bottom:0}
.mgmb-place-card--airport .mgmb-place-input{border-color:#fdba74}
.mgmb-place-card--golf .mgmb-place-input{border-color:#86efac}
.mgmb-place-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px;margin-bottom:10px}
.mgmb-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;font-size:var(--mgmb-fs-label);font-weight:700}
.mgmb-pill--fixed{background:var(--mgmb-success-soft);color:var(--mgmb-success);border:1px solid rgba(22,163,74,.18)}
.mgmb-pill--google{background:var(--mgmb-primary-soft);color:var(--mgmb-primary);border:1px solid rgba(37,99,235,.16)}
.mgmb-actions{display:flex;flex-wrap:wrap;gap:8px}
.mgmb-actions--center{justify-content:center}
.mgmb-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 12px;border-radius:8px;border:1px solid var(--mgmb-primary);background:var(--mgmb-primary);color:#fff;cursor:pointer;font:inherit;font-size:var(--mgmb-fs-text);font-weight:700;transition:all .18s ease}
.mgmb-btn:hover{background:#1d4ed8;border-color:#1d4ed8}
.mgmb-btn.is-loading{opacity:.58;pointer-events:none}
.mgmb-btn--secondary{background:#fff;color:var(--mgmb-text);border-color:var(--mgmb-border-strong)}
.mgmb-btn--secondary:hover{background:#f8fafc;border-color:var(--mgmb-primary-border)}
.mgmb-add-pickup,
.mgmb-add-dropoff{margin-top:10px}
.mgmb-add-pickup::before{content:'+';font-size:16px;line-height:1}
.mgmb-add-dropoff::before{content:'+';font-size:16px;line-height:1}
.mgmb-point-remove{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:32px;height:32px;min-width:32px;min-height:32px;margin-top:0;padding:0;border:1px solid #fecaca;background:#fff;color:var(--mgmb-danger);border-radius:999px;font-size:0;cursor:pointer}
.mgmb-point-remove::before{content:'×';font-size:16px;line-height:1}
.mgmb-point-remove:hover{background:var(--mgmb-danger-soft)}
.mgmb-airport-mode{margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #eef2f7}
.mgmb-golf-mode{margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #eef2f7}
.mgmb-daily-rental-mode{margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #eef2f7}
.mgmb-golf-mode:empty{display:none!important}
.mgmb-daily-rental-tripmode{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mgmb-trip-mode-option{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;border:1px solid var(--mgmb-border);border-radius:999px;background:#fff;cursor:pointer}
.mgmb-trip-mode-option input{margin:0}
.mgmb-trip-mode-option span{font-size:var(--mgmb-fs-text);font-weight:700;color:var(--mgmb-text)}
.mgmb-daily-rental-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-left:auto}
.mgmb-golf-segments{display:grid;gap:12px;margin-bottom:14px}
.mgmb-golf-segment{padding:14px;border:1px solid #dbe7ff;border-radius:14px;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%)}
.mgmb-golf-segment__head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;margin-bottom:12px}
.mgmb-golf-segment__head strong{display:flex;align-items:center;min-height:34px;font-size:var(--mgmb-fs-text);font-weight:bolder;color:var(--mgmb-text)}
.mgmb-golf-segment__mode{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.mgmb-golf-segment__meta{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.mgmb-golf-segment__time-text{font-size:var(--mgmb-fs-label);font-weight:700;color:var(--mgmb-text-soft)}
.mgmb-golf-segment__time-fields{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mgmb-golf-segment__time-field{display:flex;align-items:center;gap:8px}
.mgmb-golf-segment__time-field span{font-size:var(--mgmb-fs-label);font-weight:700;color:var(--mgmb-text-soft);text-transform:uppercase;white-space:nowrap}
.mgmb-booking .mgmb-golf-segment__time-select{min-width:104px;min-height:34px;margin-bottom:0;padding:0 10px;border:1px solid var(--mgmb-border)!important;border-radius:10px!important;background:#fff!important;color:var(--mgmb-text)!important;font:inherit!important;font-size:16px!important;font-weight:400!important;box-shadow:none!important}
.mgmb-booking .mgmb-golf-segment__time-select:focus{outline:none;border-color:var(--mgmb-primary)!important;box-shadow:0 0 0 3px rgba(37,99,235,.08)!important}
.mgmb-golf-segment__date{font-size:var(--mgmb-fs-label);font-weight:700;color:var(--mgmb-primary)}
.mgmb-golf-segment__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mgmb-golf-segment__pickup.is-readonly .mgmb-place-input{background:#f8fafc!important;color:#64748b!important}
.mgmb-golf-segment__pickup.is-readonly .mgmb-place-meta{opacity:.92}
.mgmb-quote-card{display:grid;gap:14px}
.mgmb-quote-card__hero{background:linear-gradient(135deg,#eff6ff 0%,#ffffff 100%);border:1px solid var(--mgmb-primary-border);border-radius:12px;padding:14px}
.mgmb-quote-card__label{font-size:var(--mgmb-fs-heading);text-transform:uppercase;letter-spacing:.02em;color:var(--mgmb-primary);font-weight:bolder}
.mgmb-quote-card__total{margin-top:8px;font-size:28px;line-height:1.12;font-weight:bolder;color:var(--mgmb-text)}
.mgmb-quote-card__note{margin-top:8px;font-size:var(--mgmb-fs-text);line-height:1.55;color:var(--mgmb-text-soft)}
.mgmb-quote-card__box{border:1px solid var(--mgmb-border);border-radius:12px;padding:14px;background:#fff}
.mgmb-quote-card__title{margin:0 0 10px;font-size:var(--mgmb-fs-text);;font-weight:bolder}
.mgmb-quote-card__rows{display:grid}
.mgmb-quote-card__row{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #eef2f7;font-size:var(--mgmb-fs-text)}
.mgmb-quote-card__row:last-child{border-bottom:0}
.mgmb-quote-card__row span{color:var(--mgmb-text-soft)}
.mgmb-quote-card__row strong{text-align:right;color:var(--mgmb-text)}
.mgmb-quote-card__row--total span,.mgmb-quote-card__row--total strong{font-size:var(--mgmb-fs-text);font-weight:bolder;color:var(--mgmb-text)}
.mgmb-quote-card__badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.mgmb-quote-card__badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#f1f5f9;color:var(--mgmb-text-soft);font-size:14px;font-weight:700}
.mgmb-quote-card__badge--fixed{background:var(--mgmb-success-soft);color:var(--mgmb-success)}
.mgmb-quote-card__badge--rule{background:var(--mgmb-primary-soft);color:var(--mgmb-primary)}
.mgmb-quote-card__rules{margin:0;padding-left:18px;display:grid;gap:6px;font-size:var(--mgmb-fs-label);color:var(--mgmb-text-soft)}
.mgmb-quote-card__rules-copy{font-size:var(--mgmb-fs-label);line-height:1.7;color:var(--mgmb-text-soft)}
.mgmb-quote-card__rules-copy p{margin:0 0 10px;font-size:var(--mgmb-fs-label);line-height:1.7;color:var(--mgmb-text-soft)}
.mgmb-quote-card__rules-copy p:last-child{margin-bottom:0}
.mgmb-quote-card__rules-copy strong{color:var(--mgmb-text-soft);font-size:var(--mgmb-fs-label);font-weight:700}
.mgmb-quote-card__empty{border:1px dashed var(--mgmb-border-strong);border-radius:12px;background:var(--mgmb-surface-muted);padding:14px;font-size:var(--mgmb-fs-text);line-height:1.6;color:var(--mgmb-text-soft)}
.mgmb-booking__customer{display:none}
.mgmb-booking__customer.is-visible{display:block}
.mgmb-booking__customer-note{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--mgmb-accent-soft);border:1px solid #fed7aa;font-size:var(--mgmb-fs-text);line-height:1.6;color:#9a3412}
.ui-autocomplete{background:#fff!important;border:1px solid #dbe4ef!important;border-radius:10px!important;box-shadow:0 18px 40px rgba(15,23,42,.14)!important;padding:8px!important;max-height:280px;overflow:auto;z-index:999999!important}
.ui-menu .ui-menu-item{margin:0 0 4px!important}
.ui-menu .ui-menu-item-wrapper{display:block;padding:10px 12px!important;border-radius:8px!important;border:0!important;background:#fff!important;color:var(--mgmb-text)!important;font-size:13px!important;line-height:1.45!important}
.ui-menu .ui-state-active,.ui-menu .ui-menu-item-wrapper.ui-state-active{background:#eff6ff!important;color:#1d4ed8!important;margin:0!important}
.mgmb-booking input.mgmb-date-alt{width:100%}
.mgmb-booking .flatpickr-calendar{width:324px;max-width:calc(100vw - 32px);padding:14px 12px 12px;border:1px solid rgba(148,163,184,.24);border-radius:18px;background:#fff;box-shadow:0 24px 60px rgba(15,23,42,.16)}
.mgmb-booking .flatpickr-calendar.open,
.mgmb-booking .flatpickr-calendar.inline{display:block}
.mgmb-booking .flatpickr-months{position:relative;align-items:center;min-height:42px;margin-bottom:10px}
.mgmb-booking .flatpickr-months .flatpickr-month{height:42px}
.mgmb-booking .flatpickr-current-month{display:none}
.mgmb-booking .mgmb-flatpickr-title{position:absolute;inset:0 44px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:bolder;line-height:1.1;color:var(--mgmb-text);pointer-events:none}
.mgmb-booking .flatpickr-prev-month,
.mgmb-booking .flatpickr-next-month{top:3px!important;width:36px;height:36px;padding:0;border:1px solid transparent;border-radius:999px;color:var(--mgmb-text);z-index:3}
.mgmb-booking .flatpickr-prev-month:hover,
.mgmb-booking .flatpickr-next-month:hover{border-color:var(--mgmb-border);background:#f8fafc;color:var(--mgmb-primary)}
.mgmb-booking .flatpickr-prev-month > span,
.mgmb-booking .flatpickr-next-month > span{display:none!important}
.mgmb-booking .flatpickr-prev-month svg,
.mgmb-booking .flatpickr-next-month svg{display:none}
.mgmb-booking .flatpickr-prev-month::before,
.mgmb-booking .flatpickr-next-month::before{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:24px;font-weight:500;line-height:1}
.mgmb-booking .flatpickr-prev-month::before{content:'‹'}
.mgmb-booking .flatpickr-next-month::before{content:'›'}
.mgmb-booking .flatpickr-weekdays{height:auto;margin-bottom:6px;background:transparent}
.mgmb-booking .flatpickr-innerContainer{display:block}
.mgmb-booking span.flatpickr-weekday{color:var(--mgmb-text-soft);font-size:12px;font-weight:bolder;text-transform:uppercase}
.mgmb-booking span.flatpickr-weekday:nth-child(7){color:#dc2626}
.mgmb-booking .flatpickr-days{width:100%}
.mgmb-booking .dayContainer{width:100%;min-width:100%;max-width:100%}
.mgmb-booking .flatpickr-day{position:relative;display:flex;align-items:center;justify-content:center;max-width:none;height:40px;line-height:40px;border:1px solid transparent;border-radius:12px;color:var(--mgmb-text);font-size:14px;font-weight:600}
.mgmb-booking .flatpickr-day:nth-child(7n){color:#dc2626}
.mgmb-booking .flatpickr-day.prevMonthDay:nth-child(7n),
.mgmb-booking .flatpickr-day.nextMonthDay:nth-child(7n),
.mgmb-booking .flatpickr-day.flatpickr-disabled:nth-child(7n){color:#f1a2a2}
.mgmb-booking .flatpickr-day:hover{background:#eff6ff;border-color:var(--mgmb-primary-border);color:var(--mgmb-primary)}
.mgmb-booking .flatpickr-day.today{border-color:rgba(37,99,235,.24);background:#f8fbff}
.mgmb-booking .flatpickr-day.selected,
.mgmb-booking .flatpickr-day.startRange,
.mgmb-booking .flatpickr-day.endRange{background:var(--mgmb-primary);border-color:var(--mgmb-primary);color:#fff}
.mgmb-booking .flatpickr-day.flatpickr-disabled,
.mgmb-booking .flatpickr-day.prevMonthDay,
.mgmb-booking .flatpickr-day.nextMonthDay{color:#cbd5e1}
.mgmb-booking .flatpickr-day.mgmb-flatpickr-day--special{background:rgba(249,115,22,.08);border-color:rgba(249,115,22,.28);color:#9a3412}
.mgmb-booking .flatpickr-day.mgmb-flatpickr-day--special::after{content:'';position:absolute;left:50%;bottom:6px;width:6px;height:6px;border-radius:999px;background:#f97316;transform:translateX(-50%)}
.mgmb-booking .flatpickr-day.mgmb-flatpickr-day--special.selected,
.mgmb-booking .flatpickr-day.mgmb-flatpickr-day--special.startRange,
.mgmb-booking .flatpickr-day.mgmb-flatpickr-day--special.endRange{background:linear-gradient(180deg,#2563eb 0%,#1d4ed8 100%);border-color:#1d4ed8;color:#fff}
.mgmb-booking .flatpickr-day.mgmb-flatpickr-day--special.selected::after,
.mgmb-booking .flatpickr-day.mgmb-flatpickr-day--special.startRange::after,
.mgmb-booking .flatpickr-day.mgmb-flatpickr-day--special.endRange::after{background:#fff}
.mgmb-hidden{display:none!important}
@media (max-width:1024px){.mgmb-booking__tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.mgmb-booking__shell{grid-template-columns:1fr}.mgmb-booking__quote{position:static}.mgmb-golf-segment__head,.mgmb-golf-segment__meta,.mgmb-golf-segment__time-fields{align-items:flex-start;justify-content:flex-start}.mgmb-golf-segment__grid{grid-template-columns:1fr}.mgmb-daily-rental-tripmode,.mgmb-daily-rental-actions{justify-content:flex-start}}
@media (max-width:767px){.mgmb-booking{padding:14px}.mgmb-booking__tabs,.mgmb-grid--2,.mgmb-grid--3{grid-template-columns:1fr}.mgmb-btn{width:100%}}
