.eltp-planner{
	/* Brand palette: dark blue accents + theme gold for buttons. */
	--green:#0f3d5f;--green-d:#0a2b45;--green-l:#e9f0f6;--blue:#0f3d5f;
	--gold:#9c7a1e;--gold-d:#7f6218;--gold-l:#f7f1de;
	--ink:#16232b;--muted:#65767f;--line:#e3e9ee;--bg:#f7f9fb;--card:#fff;--rad:14px;
	width:92%;max-width:1720px;margin:0 auto;padding:6px 20px 60px;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	color:var(--ink);box-sizing:border-box;
}
/* Opt-in: if the theme boxes the shortcode in a narrow column, add the
   `eltp-fullbleed` class to the [tour_planner] wrapper (or via the shortcode
   attribute) to break out to the full browser width. */
.eltp-planner.eltp-fullbleed{
	width:100vw;max-width:100vw;
	position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;
	padding-left:max(24px,4vw);padding-right:max(24px,4vw);
}
.eltp-planner *,.eltp-planner *::before,.eltp-planner *::after{box-sizing:border-box;}
.eltp-planner h2{font-size:24px;margin:0 0 4px;}
.eltp-planner h4{font-size:16px;margin:0 0 14px;}
.eltp-muted{color:var(--muted);}
.eltp-tiny{font-size:12px;margin:-6px 0 10px;}
.eltp-hint,small.eltp-hint{display:block;color:var(--muted);font-size:11px;margin-top:5px;}
.eltp-sub{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:20px 0 10px;font-weight:700;}
.eltp-sub small{text-transform:none;letter-spacing:0;font-weight:400;}
.eltp-sec{display:flex;align-items:center;gap:8px;font-size:15px;margin:24px 0 12px;color:var(--ink);}
.eltp-sec .eltp-ic{color:var(--green);}
.eltp-loading,.eltp-empty{color:var(--muted);padding:44px 0;text-align:center;}
.eltp-card{background:var(--card);border:1px solid var(--line);border-radius:var(--rad);padding:20px;}
.eltp-pad{padding:14px 16px 0;margin:0;}
.eltp-ic{width:16px;height:16px;flex:0 0 16px;}

/* steps */
.eltp-steps{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;background:#eef4f8;border:1px solid var(--line);border-radius:999px;padding:7px 8px;margin-bottom:22px;}
.eltp-step{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--muted);padding:6px 15px;border-radius:999px;}
.eltp-step span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#cdd8df;color:#fff;font-size:12px;}
.eltp-step.is-active{color:var(--green);background:var(--green-l);}
.eltp-step.is-active span,.eltp-step.is-done span{background:var(--green);}
.eltp-step.is-clickable{cursor:pointer;}
.eltp-step.is-clickable:hover{background:#dcebe2;color:var(--green-d);}

/* fields */
.eltp-field{margin-bottom:15px;}
.eltp-field>label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;}
.eltp-field>label small{color:var(--muted);font-weight:400;}
.eltp-field>label b{color:#c0392b;}
.eltp-fieldset{border:1px solid var(--line);border-radius:12px;padding:16px 16px 2px;background:#fcfdfe;}
.eltp-planner input,.eltp-planner select,.eltp-planner textarea{width:100%;min-width:0;max-width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font-size:14px;background:#fff;color:var(--ink);}
.eltp-planner input:focus,.eltp-planner select:focus,.eltp-planner textarea:focus{outline:2px solid var(--green);border-color:var(--green);}
.eltp-planner input[type=date]{cursor:pointer;min-height:42px;padding-left:10px;padding-right:6px;}
.eltp-planner input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;margin-left:0;}
.eltp-planner input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1;}
/* Guard against theme rules that force widths on inputs inside the planner. */
.eltp-planner .eltp-field>input,.eltp-planner .eltp-field>select{box-sizing:border-box;}
.eltp-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;}
.eltp-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 14px;}
.eltp-grid2>*,.eltp-grid3>*{min-width:0;}

/* Inside multi-column grids: reserve two lines for every label so single-line
   and wrapped labels ("Budget Range (per person)") share one baseline, and the
   inputs beneath them line up even when only some fields carry a hint. */
.eltp-grid2 .eltp-field,.eltp-grid3 .eltp-field{display:flex;flex-direction:column;}
.eltp-grid2 .eltp-field>label,.eltp-grid3 .eltp-field>label{
	min-height:34px;display:flex;align-items:flex-start;flex-wrap:wrap;gap:0 4px;line-height:1.25;margin-bottom:6px;}
.eltp-grid2 .eltp-field>.eltp-hint,.eltp-grid3 .eltp-field>.eltp-hint{min-height:15px;margin-top:5px;}
.eltp-counterwrap{position:relative;}
.eltp-counter{position:absolute;right:10px;bottom:8px;font-size:11px;color:var(--muted);}

/* buttons */
.eltp-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px;}
.eltp-actions--split{justify-content:space-between;}
.eltp-btn{display:inline-flex !important;align-items:center;gap:7px;padding:11px 20px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,transform .1s;text-decoration:none;line-height:1.2;width:auto;visibility:visible;opacity:1;}
.eltp-btn:hover{background:#f2f5f7;}
.eltp-btn:active{transform:translateY(1px);}
.eltp-btn--primary{background:var(--gold) !important;border-color:var(--gold) !important;color:#fff !important;}
.eltp-btn--primary:hover{background:var(--gold-d) !important;border-color:var(--gold-d) !important;}
.eltp-btn--primary:disabled{background:#c9c2ac !important;border-color:#c9c2ac !important;cursor:not-allowed;}
.eltp-btn--sm{padding:8px 13px;font-size:12.5px;}
.eltp-btn--lg{padding:13px 26px;font-size:15px;}
/* Step 1 bottom navigation bar */
.eltp-bar--s1{margin-top:16px;}
.eltp-bar__note{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted);flex:1;}
.eltp-bar__note .eltp-ic{color:var(--green);flex:0 0 16px;}
.eltp-link{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--green);font-weight:600;font-size:13px;cursor:pointer;padding:5px 7px;border-radius:8px;transition:background .15s;}
.eltp-link:hover{background:var(--green-l);}
.eltp-link--danger{color:#c0392b;}
.eltp-link--danger:hover{background:#fdecec;}

/* chips */
.eltp-chips{display:flex;flex-wrap:wrap;gap:8px;}
.eltp-chip{padding:9px 14px;border:1px solid var(--line);background:#fff;border-radius:10px;font-size:13px;cursor:pointer;color:var(--ink);transition:all .15s;}
.eltp-chip:hover{border-color:var(--green);}
.eltp-chip.is-on{background:var(--green-l);border-color:var(--green);color:var(--green);font-weight:600;}

/* ===== SIDEBAR RAIL ===== */
.eltp-rail{background:var(--card);border:1px solid var(--line);border-radius:var(--rad);padding:18px;align-self:start;}
.eltp-rail__trip small{font-size:10px;letter-spacing:.09em;color:var(--muted);font-weight:700;}
.eltp-rail__trip h4{display:flex;align-items:center;gap:6px;margin:6px 0 10px;font-size:17px;}
.eltp-rail__edit{background:none;border:none;cursor:pointer;color:var(--muted);padding:2px;border-radius:6px;display:inline-flex;}
.eltp-rail__edit:hover{color:var(--green);background:var(--green-l);}
.eltp-rail__meta{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);margin-bottom:6px;}
.eltp-rail__meta .eltp-ic{color:var(--muted);}
.eltp-rail__nav{list-style:none;margin:14px 0 16px;padding:14px 0 0;border-top:1px solid var(--line);}
.eltp-rail__nav li{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--muted);padding:9px 10px;border-radius:9px;}
.eltp-rail__ic{display:inline-flex;color:var(--muted);}
.eltp-rail__nav li.active{color:var(--green);font-weight:600;background:var(--green-l);box-shadow:inset 3px 0 0 var(--green);}
.eltp-rail__nav li.active .eltp-rail__ic{color:var(--green);}
.eltp-rail__nav li.done{color:var(--ink);}
.eltp-rail__nav li.done .eltp-rail__ic{color:var(--green);}
.eltp-rail__nav li.clickable{cursor:pointer;}
.eltp-rail__nav li.clickable:hover{background:#f3f7f5;color:var(--green);}
.eltp-rail__nav li.muted{opacity:.55;}
.eltp-rail__tick{margin-left:auto;color:var(--green);display:inline-flex;}
.eltp-rail__help{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:14px;font-size:12px;color:var(--muted);}
.eltp-rail__help strong{display:block;color:var(--ink);font-size:13.5px;margin-bottom:4px;}
.eltp-rail__help p{margin:0 0 10px;}
.eltp-chatbtn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:9px;border:1px solid var(--green);background:#fff;color:var(--green);border-radius:9px;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s;}
.eltp-chatbtn:hover{background:var(--green);color:#fff;}

/* ===== STEP 1 ===== */
.eltp-s1{display:grid;grid-template-columns:200px minmax(0,1.75fr) minmax(0,210px) minmax(0,1fr);gap:16px;align-items:start;}
.eltp-s1>*{min-width:0;}
.eltp-s1__side,.eltp-s1__map{display:flex;flex-direction:column;gap:14px;min-width:0;}
.eltp-ov__row{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);}
.eltp-ov__row:last-child{border-bottom:none;}
.eltp-ov__row .eltp-ic{color:var(--muted);margin-top:3px;}
.eltp-ov__row small{display:block;font-size:11px;color:var(--muted);}
.eltp-ov__row strong{font-size:13.5px;}
.eltp-why ul{list-style:none;margin:0;padding:0;}
.eltp-why li{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);padding:6px 0;}
.eltp-why li .eltp-ic{color:var(--green);}
.eltp-statbar{display:flex;gap:10px;padding:14px;}
.eltp-statbox{display:flex;align-items:center;gap:8px;flex:1;}
.eltp-statbox .eltp-ic{color:var(--muted);}
.eltp-statbox small{display:block;font-size:10.5px;color:var(--muted);}
.eltp-statbox strong{font-size:14px;}

/* map */
.eltp-mapcard{padding:0;overflow:hidden;position:relative;z-index:0;isolation:isolate;}
.eltp-map{height:340px;width:100%;background:#dfe7ec;position:relative;z-index:0;}
/* Keep Leaflet's internal layers/controls contained below the site header. */
.eltp-planner .leaflet-pane,
.eltp-planner .leaflet-top,
.eltp-planner .leaflet-bottom{z-index:1 !important;}
.eltp-planner .leaflet-control{z-index:2 !important;}
.eltp-planner .leaflet-container{z-index:0;}
.eltp-map--sm{height:230px;}
.eltp-map__bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap;}
.eltp-viewtabs{display:flex;gap:2px;}
.eltp-vtab{padding:6px 12px;border:none;background:none;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:color .15s;}
.eltp-vtab:hover{color:var(--green);}
.eltp-vtab.is-on{color:var(--green);border-bottom-color:var(--green);}
.eltp-map__right{display:flex;align-items:center;gap:10px;}
.eltp-toggle{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--muted);cursor:pointer;}
.eltp-toggle input{position:absolute;opacity:0;width:0;height:0;}
.eltp-toggle i{width:34px;height:18px;background:#cfd9df;border-radius:999px;position:relative;transition:background .18s;}
.eltp-toggle i::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .18s;}
.eltp-toggle input:checked + i{background:var(--green);}
.eltp-toggle input:checked + i::after{transform:translateX(16px);}
.eltp-map__stats{display:flex;gap:10px;padding:12px 14px;border-top:1px solid var(--line);}
.eltp-map__stats span{display:flex;align-items:center;gap:8px;flex:1;}
.eltp-map__stats .eltp-ic{color:var(--muted);}
.eltp-map__stats i{font-style:normal;}
.eltp-map__stats small{display:block;font-size:10.5px;color:var(--muted);}
.eltp-map__stats strong{font-size:14px;}
.eltp-mk span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--green);color:#fff;border:2px solid #fff;border-radius:50%;font-weight:700;font-size:12px;box-shadow:0 1px 5px rgba(0,0,0,.35);}
.eltp-mk.is-start span{background:var(--blue);}
.eltp-mk.is-end span{background:var(--gold-d);}

/* list view */
.eltp-listview{max-height:340px;overflow-y:auto;}
.eltp-lv{list-style:none;margin:0;padding:8px;}
.eltp-lv__item{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid transparent;border-radius:10px;cursor:pointer;}
.eltp-lv__item:hover{background:var(--bg);}
.eltp-lv__item.is-focus{border-color:var(--green);background:var(--green-l);}
.eltp-lv__no{width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;}
.eltp-lv__body{flex:1;min-width:0;}
.eltp-lv__body strong{display:block;font-size:14px;}
.eltp-lv__body small{color:var(--muted);font-size:11.5px;}
.eltp-lv__leg{text-align:right;font-size:10.5px;color:var(--muted);}
.eltp-lv__leg strong{display:block;font-size:12.5px;color:var(--ink);}
.eltp-lv__leg em{font-style:normal;}

/* ===== STEP 2 ===== */
.eltp-s2{display:grid;grid-template-columns:196px minmax(0,1fr) minmax(0,360px);gap:14px;align-items:start;}
.eltp-s2>*{min-width:0;}
.eltp-itin__tools{display:flex;justify-content:flex-end;align-items:center;margin:10px 0 12px;}
.eltp-pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:5px 10px;border-radius:999px;}
.eltp-pill em{font-style:normal;background:var(--green);color:#fff;font-size:9.5px;padding:2px 6px;border-radius:999px;font-weight:700;}
.eltp-alloc{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 13px;font-size:13px;color:var(--muted);margin-bottom:12px;}
.eltp-alloc strong{color:var(--ink);font-size:15px;}
.eltp-alloc.is-ok{background:var(--green-l);border-color:var(--green);color:var(--green-d);}
.eltp-alloc.is-over{background:#fdecec;border-color:#d9534f;color:#b02a26;}
.eltp-addbar{display:flex;gap:8px;margin-bottom:14px;}
.eltp-addbar select{flex:1;}

.eltp-days{display:flex;flex-direction:column;gap:10px;}
.eltp-empty2{color:var(--muted);border:2px dashed var(--line);border-radius:12px;padding:28px;text-align:center;}
.eltp-day{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:11px;background:#fff;cursor:pointer;transition:border-color .12s,box-shadow .12s;}
.eltp-day.is-focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(15,61,95,.12);}
.eltp-day.sortable-ghost{opacity:.45;}

/* bigger drag handle */
.eltp-day__grip{display:flex;align-items:center;justify-content:center;width:34px;height:38px;flex:0 0 34px;
	border:none;background:none;color:#b9c4cb;cursor:grab;border-radius:8px;transition:background .15s,color .15s;}
.eltp-day__grip:hover{background:var(--bg);color:var(--green);}
.eltp-day__grip:active{cursor:grabbing;}
.eltp-day__grip .eltp-ic{width:24px;height:24px;flex:0 0 24px;}

.eltp-day__img{width:70px;height:56px;border-radius:9px;background-size:cover;background-position:center;flex:0 0 70px;}
.eltp-day__img.is-ph{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:20px;background:linear-gradient(135deg,var(--blue),var(--green));}
.eltp-day__body{flex:1;min-width:0;}
.eltp-day__body small{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:11px;}
.eltp-day__body small .eltp-ic{width:13px;height:13px;flex:0 0 13px;}
.eltp-day__body strong{display:block;font-size:15px;margin:2px 0 7px;}
.eltp-day__btns{display:flex;gap:7px;flex-wrap:wrap;}
.eltp-mini{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;padding:6px 10px;border:1px solid var(--line);background:#f7fbf8;color:var(--green);border-radius:8px;cursor:pointer;font-weight:600;transition:all .15s;}
.eltp-mini:hover{background:var(--green);color:#fff;border-color:var(--green);}
.eltp-mini .eltp-ic{width:13px;height:13px;flex:0 0 13px;}
.eltp-day__tag{margin-top:7px;font-size:11px;color:var(--green);font-weight:600;}
.eltp-day__stay{text-align:center;}
.eltp-day__stay small{display:block;font-size:10px;color:var(--muted);margin-bottom:4px;}
.eltp-stepper{display:flex;align-items:center;gap:4px;}
.eltp-stepper button{width:26px;height:26px;border:1px solid var(--line);background:#fff;border-radius:7px;cursor:pointer;font-size:15px;line-height:1;color:var(--ink);transition:all .15s;}
.eltp-stepper button:hover{border-color:var(--green);color:var(--green);}
.eltp-stepper span{font-size:12px;min-width:28px;text-align:center;color:var(--muted);}

/* bigger delete */
.eltp-day__del{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;
	border:1px solid transparent;background:none;cursor:pointer;color:#a9b4bb;border-radius:9px;transition:all .15s;}
.eltp-day__del .eltp-ic{width:20px;height:20px;flex:0 0 20px;}
.eltp-day__del:hover{color:#c0392b;background:#fdecec;border-color:#f3c9c7;}

/* detail */
.eltp-detailcol{display:flex;flex-direction:column;gap:14px;min-width:0;}
.eltp-detail__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px;}
.eltp-detail__head h4{margin:0;}
.eltp-detail__head span{font-size:12px;color:var(--muted);}
.eltp-tabs{display:flex;gap:4px;background:var(--bg);border-radius:10px;padding:4px;margin-bottom:12px;}
.eltp-tab{flex:1;padding:8px;border:none;background:none;border-radius:8px;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .15s;}
.eltp-tab:hover{color:var(--green);}
.eltp-tab.is-on{background:#fff;color:var(--green);box-shadow:0 1px 3px rgba(0,0,0,.08);}
.eltp-filters{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px;}
.eltp-fchip{padding:5px 11px;border:1px solid var(--line);background:#fff;border-radius:999px;font-size:11px;cursor:pointer;color:var(--muted);transition:all .15s;}
.eltp-fchip:hover{border-color:var(--blue);color:var(--blue);}
.eltp-fchip.is-on{background:var(--blue);border-color:var(--blue);color:#fff;}
.eltp-items{display:flex;flex-direction:column;gap:7px;max-height:330px;overflow-y:auto;}
.eltp-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;transition:border-color .15s,background .15s;}
.eltp-item:hover{border-color:#cfe0d5;background:#fcfefd;}
.eltp-item.is-on{background:#f5fbf7;border-color:var(--green);}
.eltp-item strong{display:block;font-size:13px;}
.eltp-item small{color:var(--muted);font-size:12px;}

/* ADD BUTTON — cursor + hover effect */
.eltp-add{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;padding:7px 12px;
	border:1px solid var(--green);background:#fff;color:var(--green);border-radius:8px;
	font-size:12px;font-weight:600;cursor:pointer;
	transition:background .15s,color .15s,transform .12s,box-shadow .15s;}
.eltp-add .eltp-ic{width:14px;height:14px;flex:0 0 14px;}
.eltp-add:hover{background:var(--gold);color:#fff;border-color:var(--gold);transform:translateY(-1px);box-shadow:0 4px 10px rgba(156,122,30,.25);}
.eltp-add:active{transform:translateY(0);box-shadow:none;}
.eltp-add.is-on{background:var(--green);color:#fff;}
.eltp-add.is-on:hover{background:#c0392b;border-color:#c0392b;box-shadow:0 4px 10px rgba(192,57,43,.2);}

/* bottom bar */
.eltp-bar{display:flex;align-items:center;gap:18px;margin-top:14px;background:var(--card);border:1px solid var(--line);border-radius:var(--rad);padding:14px 18px;}
.eltp-bar__stats{display:flex;gap:22px;}
.eltp-stat{display:flex;align-items:center;gap:8px;}
.eltp-stat .eltp-ic{color:var(--muted);}
.eltp-stat strong{font-size:15px;display:block;}
.eltp-stat span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;}
.eltp-bar__price{margin-left:auto;text-align:right;}
.eltp-bar__price small{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;}
.eltp-bar__price strong{font-size:17px;color:var(--green);}

/* ===== STEP 3 ===== */
.eltp-s3{display:grid;grid-template-columns:196px minmax(0,1fr) minmax(0,340px);gap:14px;align-items:start;}
.eltp-s3>*{min-width:0;}
.eltp-s3__side{display:flex;flex-direction:column;gap:14px;min-width:0;}
.eltp-methods{display:flex;gap:8px;}
.eltp-method{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;border:1px solid var(--line);background:#fff;border-radius:10px;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .15s;}
.eltp-method:hover{border-color:var(--green);color:var(--green);}
.eltp-method.is-on{background:var(--green-l);border-color:var(--green);color:var(--green);}
.eltp-upload{border:2px dashed var(--line);border-radius:12px;padding:22px;text-align:center;transition:all .15s;}
.eltp-upload.is-drag{border-color:var(--green);background:var(--green-l);}
.eltp-upload__in .eltp-ic{width:30px;height:30px;color:var(--muted);margin-bottom:6px;}
.eltp-upload p{margin:0;font-size:13px;color:var(--muted);}
.eltp-upload small{font-size:11px;color:var(--muted);}
.eltp-browse{background:none;border:none;color:var(--green);font-weight:600;cursor:pointer;text-decoration:underline;padding:0;font-size:13px;}
.eltp-filelist{list-style:none;margin:10px 0 0;padding:0;font-size:12px;color:var(--green);}
.eltp-summary__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}
.eltp-summary__head h4{margin:0;}
.eltp-sum__stats{display:flex;gap:8px;background:var(--bg);border-radius:10px;padding:12px;margin-bottom:8px;flex-wrap:wrap;}
.eltp-sum__stats .eltp-stat{flex:1;min-width:70px;}
.eltp-sum__list{display:flex;flex-direction:column;gap:8px;}
.eltp-sum__row{display:flex;align-items:center;gap:9px;font-size:13px;}
.eltp-sum__dot{width:8px;height:8px;border-radius:50%;background:var(--green);flex:0 0 8px;}
.eltp-sum__d{color:var(--muted);width:44px;font-size:12px;}
.eltp-sum__n{font-weight:600;flex:1;}
.eltp-sum__img{width:38px;height:30px;border-radius:6px;background-size:cover;background-position:center;flex:0 0 38px;}
.eltp-sum__img.is-ph{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:12px;background:linear-gradient(135deg,var(--blue),var(--green));}
.eltp-sum__est{display:flex;flex-direction:column;gap:9px;}
.eltp-sum__est>div{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);}
.eltp-sum__est strong{color:var(--ink);}
.eltp-sum__budget{border-top:1px solid var(--line);padding-top:10px;}
.eltp-sum__budget strong{color:var(--green);font-size:15px;}
.eltp-privacy{display:flex;gap:10px;align-items:flex-start;background:var(--green-l);border:1px solid #cbe6d6;border-radius:12px;padding:14px;}
.eltp-privacy .eltp-ic{color:var(--green);margin-top:2px;}
.eltp-privacy strong{display:block;font-size:12.5px;}
.eltp-privacy small{font-size:11.5px;color:var(--muted);}

/* ===== STEP 4 ===== */
.eltp-s4{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,250px) minmax(0,330px);gap:14px;align-items:start;}
.eltp-s4>*{min-width:0;}
.eltp-s4__mid,.eltp-s4__side{display:flex;flex-direction:column;gap:14px;min-width:0;}
.eltp-review__top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;}
.eltp-review__bar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin-bottom:6px;font-size:13.5px;}
.eltp-rev__days{display:flex;flex-direction:column;}
.eltp-rev__day{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);}
.eltp-rev__no{width:27px;height:27px;flex:0 0 27px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;}
.eltp-rev__when{width:60px;flex:0 0 60px;}
.eltp-rev__when strong{display:block;font-size:13px;}
.eltp-rev__when small{color:var(--muted);font-size:11px;}
.eltp-rev__place{display:flex;align-items:center;gap:7px;width:140px;flex:0 0 140px;}
.eltp-rev__place .eltp-ic{color:var(--muted);}
.eltp-rev__place strong{display:block;font-size:14px;}
.eltp-rev__place small{color:var(--muted);font-size:11px;}
.eltp-rev__img{width:74px;height:50px;border-radius:8px;background-size:cover;background-position:center;flex:0 0 74px;}
.eltp-rev__img.is-ph{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:20px;background:linear-gradient(135deg,var(--blue),var(--green));}
.eltp-rev__desc{flex:1;font-size:12.5px;color:var(--muted);min-width:0;}
.eltp-rev__desc em{display:block;font-style:normal;color:var(--green);font-weight:600;margin-top:3px;font-size:11.5px;}
.eltp-rev__edits{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:16px;padding:14px;background:var(--bg);border:1px solid var(--line);border-radius:12px;}
.eltp-rev__edits .eltp-ic{color:var(--green);}
.eltp-rev__edits .eltp-muted{font-size:12.5px;flex:1;min-width:180px;}
.eltp-costs__line{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;padding:9px 0;color:var(--muted);border-bottom:1px solid var(--line);}
.eltp-costs__total{display:flex;justify-content:space-between;align-items:center;padding-top:13px;margin-bottom:6px;}
.eltp-costs__total strong{font-size:17px;color:var(--green);}
.eltp-s4__submit{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--rad);padding:16px 18px;flex-wrap:wrap;}
.eltp-almost{display:flex;gap:10px;align-items:flex-start;flex:1;min-width:260px;}
.eltp-almost .eltp-ic{color:var(--green);margin-top:2px;}
.eltp-almost strong{display:block;font-size:14px;}
.eltp-almost small{font-size:11.5px;color:var(--muted);}
.eltp-s4__btns{display:flex;gap:10px;}

/* success */
.eltp-success{max-width:520px;margin:24px auto;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:var(--rad);padding:40px 26px;}
.eltp-success__tick{width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:var(--green-l);color:var(--green);display:flex;align-items:center;justify-content:center;}
.eltp-success__tick .eltp-ic{width:32px;height:32px;}

/* responsive */
@media(max-width:1240px){
	/* Step 1: form + overview on top row, map + stats full-width below. */
	.eltp-s1{grid-template-columns:190px minmax(0,1fr) minmax(0,240px);}
	.eltp-s1__map{grid-column:1 / -1;flex-direction:row;flex-wrap:wrap;}
	.eltp-s1__map .eltp-mapcard{flex:2 1 340px;min-width:0;}
	.eltp-s1__map .eltp-statbar{flex:1 1 240px;}
	.eltp-s4{grid-template-columns:minmax(0,1fr) minmax(0,300px);}
	.eltp-s4__mid{grid-column:2;}
	.eltp-s4__side{grid-column:1 / -1;flex-direction:row;flex-wrap:wrap;}
	.eltp-s4__side>*{flex:1 1 300px;min-width:0;}
}
@media(max-width:1024px){
	.eltp-s1,.eltp-s2,.eltp-s3,.eltp-s4{grid-template-columns:1fr;}
	.eltp-rail{order:-1;}
	.eltp-s1__side,.eltp-s1__map,.eltp-s4__mid,.eltp-s4__side{grid-column:auto;flex-direction:column;}
	.eltp-detailcol{order:3;}
}
@media(max-width:560px){
	.eltp-grid2,.eltp-grid3{grid-template-columns:1fr;}
	.eltp-grid2 .eltp-field>label,.eltp-grid3 .eltp-field>label{min-height:0;}
	.eltp-bar{flex-wrap:wrap;}
	.eltp-bar__price{margin-left:0;}
	.eltp-bar__stats{gap:14px;flex-wrap:wrap;}
	.eltp-step{font-size:12px;padding:5px 9px;}
	.eltp-review__top,.eltp-s4__submit{flex-direction:column;align-items:stretch;}
	.eltp-rev__day{flex-wrap:wrap;}
	.eltp-rev__place,.eltp-rev__when{flex:0 0 auto;width:auto;}
	.eltp-methods{flex-direction:column;}
	.eltp-map__bar{flex-direction:column;align-items:stretch;}
}

/* =====================================================================
 * THEME-PROOFING
 * Many WordPress themes style every <button> on the page (the client's
 * theme renders them as large gold blocks). These rules restore the
 * planner's own controls to their intended appearance.
 * ================================================================== */
.eltp-planner button{
	font-family:inherit;
	text-transform:none !important;
	letter-spacing:normal !important;
	box-shadow:none !important;
	min-height:0 !important;
	height:auto !important;
	width:auto;
	-webkit-appearance:none;appearance:none;
	line-height:1.2;
	text-shadow:none !important;
}
.eltp-mini{
	background:#f7fbf8 !important;color:var(--green) !important;border:1px solid var(--line) !important;
	padding:7px 11px !important;font-size:11.5px !important;border-radius:8px !important;font-weight:600 !important;
}
.eltp-mini:hover{background:var(--gold) !important;color:#fff !important;border-color:var(--gold) !important;}
.eltp-add{
	background:#fff !important;color:var(--green) !important;border:1px solid var(--green) !important;
	padding:7px 12px !important;font-size:12px !important;border-radius:8px !important;font-weight:600 !important;
}
.eltp-add:hover{background:var(--gold) !important;color:#fff !important;border-color:var(--gold) !important;}
.eltp-add.is-on{background:var(--gold) !important;color:#fff !important;border-color:var(--gold) !important;}
.eltp-tab{
	background:none !important;color:var(--muted) !important;border:none !important;
	padding:8px !important;font-size:12px !important;border-radius:8px !important;
}
.eltp-tab.is-on{background:#fff !important;color:var(--green) !important;}
.eltp-vtab{
	background:none !important;color:var(--muted) !important;border:none !important;
	border-bottom:2px solid transparent !important;padding:6px 12px !important;font-size:13px !important;border-radius:0 !important;
}
.eltp-vtab.is-on{color:var(--green) !important;border-bottom-color:var(--green) !important;}
.eltp-chip{
	background:#fff !important;color:var(--ink) !important;border:1px solid var(--line) !important;
	padding:9px 14px !important;font-size:13px !important;border-radius:10px !important;font-weight:400 !important;
}
.eltp-chip.is-on{background:var(--green-l) !important;border-color:var(--green) !important;color:var(--green) !important;font-weight:600 !important;}
.eltp-fchip{
	background:#fff !important;color:var(--muted) !important;border:1px solid var(--line) !important;
	padding:5px 11px !important;font-size:11px !important;border-radius:999px !important;
}
.eltp-fchip.is-on{background:var(--blue) !important;border-color:var(--blue) !important;color:#fff !important;}
.eltp-method{
	background:#fff !important;color:var(--muted) !important;border:1px solid var(--line) !important;
	padding:10px 8px !important;font-size:12.5px !important;border-radius:10px !important;
}
.eltp-method.is-on{background:var(--green-l) !important;border-color:var(--green) !important;color:var(--green) !important;}
.eltp-stepper button{
	background:#fff !important;color:var(--ink) !important;border:1px solid var(--line) !important;
	width:30px !important;height:30px !important;padding:0 !important;font-size:16px !important;border-radius:7px !important;
}
.eltp-day__grip,.eltp-day__del{background:none !important;border:1px solid transparent !important;padding:0 !important;border-radius:9px !important;}
.eltp-day__grip{color:#b9c4cb !important;}
.eltp-day__del{color:#a9b4bb !important;}
.eltp-day__del:hover{color:#c0392b !important;background:#fdecec !important;border-color:#f3c9c7 !important;}
.eltp-link{background:none !important;border:none !important;padding:5px 7px !important;font-size:13px !important;color:var(--green) !important;border-radius:8px !important;}
.eltp-link--danger{color:#c0392b !important;}
.eltp-browse{background:none !important;border:none !important;padding:0 !important;color:var(--green) !important;font-size:13px !important;text-decoration:underline !important;}
.eltp-chatbtn{background:#fff !important;color:var(--green) !important;border:1px solid var(--green) !important;padding:9px !important;font-size:12.5px !important;border-radius:9px !important;width:100% !important;}
.eltp-rail__edit{background:none !important;border:none !important;padding:2px !important;color:var(--muted) !important;}

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

/* The full-bleed breakout is desktop-only: on small screens it pushes the
   page wider than the viewport, which makes the browser zoom the whole site
   out. Neutralise it below 1024px. */
@media(max-width:1024px){
	.eltp-planner.eltp-fullbleed{
		width:100%;max-width:100%;
		position:static;left:auto;right:auto;
		margin-left:auto;margin-right:auto;
		padding-left:14px;padding-right:14px;
	}
	.eltp-planner{width:100%;padding-left:14px;padding-right:14px;}
}

@media(max-width:640px){
	.eltp-planner{padding-left:12px;padding-right:12px;}
	.eltp-card{padding:16px;}
	.eltp-planner h2{font-size:21px;}

	/* Step pills: 2 x 2 grid, evenly sized */
	.eltp-steps{display:grid;grid-template-columns:1fr 1fr;gap:6px;border-radius:14px;padding:8px;}
	.eltp-step{font-size:12px;padding:7px 8px;justify-content:flex-start;}

	/* --- Day card: two rows so controls never overlap --- */
	.eltp-day{
		display:grid;
		grid-template-columns:30px 58px minmax(0,1fr) 36px;
		grid-template-areas:
			"grip img body del"
			"stay stay stay stay";
		column-gap:9px;row-gap:10px;align-items:center;padding:12px;
	}
	.eltp-day__grip{grid-area:grip;width:30px;height:34px;flex:none;}
	.eltp-day__grip .eltp-ic{width:20px;height:20px;flex:none;}
	.eltp-day__img{grid-area:img;width:58px;height:48px;flex:none;}
	.eltp-day__body{grid-area:body;min-width:0;}
	.eltp-day__body strong{font-size:14px;margin:2px 0 6px;}
	.eltp-day__del{grid-area:del;width:36px;height:36px;flex:none;}
	.eltp-day__del .eltp-ic{width:19px;height:19px;flex:none;}
	/* Add Activity / Add Hotel stack full-width inside the body column */
	.eltp-day__btns{flex-direction:column;gap:6px;}
	.eltp-mini{width:100%;justify-content:center;}
	/* Stay control gets its own full-width row */
	.eltp-day__stay{
		grid-area:stay;display:flex;align-items:center;justify-content:space-between;
		gap:10px;border-top:1px solid var(--line);padding-top:10px;text-align:left;
	}
	.eltp-day__stay small{margin:0;}

	/* Map / list controls */
	.eltp-map__bar{gap:8px;}
	.eltp-viewtabs{width:100%;}
	.eltp-vtab{flex:1;text-align:center;}
	.eltp-map__right{width:100%;justify-content:space-between;}
	.eltp-map{height:260px;}
	.eltp-map__stats{flex-direction:column;gap:8px;}

	/* Detail panel tabs + items */
	.eltp-tabs{gap:2px;}
	.eltp-item{flex-direction:column;align-items:stretch;gap:8px;}
	.eltp-add{width:100%;justify-content:center;}
	.eltp-items{max-height:none;}

	/* Bottom bar: stack cleanly instead of overlapping */
	.eltp-bar{flex-direction:column;align-items:stretch;gap:12px;padding:14px;}
	.eltp-bar__stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
	.eltp-bar__price{margin-left:0;text-align:left;display:flex;align-items:baseline;justify-content:space-between;
		border-top:1px solid var(--line);padding-top:10px;}
	.eltp-bar__price small{display:inline;}
	.eltp-bar .eltp-btn{width:100%;justify-content:center;}
	.eltp-bar__note{order:-1;}

	/* Add-destination row */
	.eltp-addbar{flex-direction:column;}
	.eltp-addbar .eltp-btn{width:100%;justify-content:center;}

	/* Review screen */
	.eltp-rev__day{display:grid;grid-template-columns:28px 1fr;gap:8px 10px;align-items:start;}
	.eltp-rev__no{grid-row:span 2;}
	.eltp-rev__img{width:100%;height:120px;flex:none;}
	.eltp-rev__place,.eltp-rev__when{width:auto;flex:none;}
	.eltp-s4__btns{flex-direction:column;}
	.eltp-s4__btns .eltp-btn{width:100%;justify-content:center;}
	.eltp-rev__edits .eltp-btn{width:100%;justify-content:center;}

	/* Contact screen */
	.eltp-methods{flex-direction:column;}
	.eltp-method{width:100%;}
	.eltp-actions,.eltp-actions--split{flex-direction:column;gap:10px;}
	.eltp-actions .eltp-btn{width:100%;justify-content:center;}

	/* Interests chips wrap in two columns for a tidy grid */
	.eltp-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
	.eltp-chip{width:100%;text-align:center;justify-content:center;}
}

/* =====================================================================
 * BREATHING ROOM
 * Fields and sections were sitting too close together; this opens the
 * spacing up so each group reads as its own block.
 * ================================================================== */
.eltp-planner .eltp-card{padding:24px;}
.eltp-planner h2{margin-bottom:6px;}
.eltp-sub{margin:28px 0 12px;}
.eltp-sec{margin:32px 0 14px;padding-top:6px;}
.eltp-fieldset{padding:20px 20px 6px;border-radius:14px;}
.eltp-field{margin-bottom:20px;}
.eltp-field>label{margin-bottom:8px;}
.eltp-grid2{gap:4px 22px;}
.eltp-grid3{gap:4px 18px;}
.eltp-grid2 .eltp-field,.eltp-grid3 .eltp-field{margin-bottom:18px;}
.eltp-planner input,.eltp-planner select,.eltp-planner textarea{padding:12px 13px;}
.eltp-hint,small.eltp-hint{margin-top:7px;}
.eltp-chips{gap:10px;}
.eltp-chip{padding:10px 15px;}
.eltp-actions{margin-top:28px;}
.eltp-days{gap:12px;}
.eltp-day{padding:13px;}
.eltp-items{gap:9px;}
.eltp-item{padding:12px 13px;}
.eltp-ov__row{padding:11px 0;}
.eltp-rail__nav li{padding:10px 11px;}
.eltp-alloc{padding:12px 15px;margin-bottom:14px;}
.eltp-addbar{gap:10px;margin-bottom:18px;}
.eltp-tabs{padding:5px;margin-bottom:14px;}
.eltp-bar{padding:16px 20px;gap:20px;}
.eltp-sum__list{gap:10px;}
.eltp-costs__line{padding:11px 0;}
.eltp-rev__day{padding:15px 0;}
@media(max-width:640px){
	.eltp-planner .eltp-card{padding:16px;}
	.eltp-fieldset{padding:16px 16px 2px;}
	.eltp-field{margin-bottom:16px;}
}

/* =====================================================================
 * SEARCHABLE DESTINATION PICKER
 * Replaces the native <select>, which only revealed ~10 options at once
 * and made later destinations appear to be missing.
 * ================================================================== */
.eltp-pick{border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:20px;overflow:hidden;}
.eltp-pick__head{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--bg);}
.eltp-pick__search{flex:1;min-width:0;padding:11px 13px !important;border:1px solid var(--line);border-radius:9px;font-size:14px;}
.eltp-pick__count{font-size:11.5px;color:var(--muted);white-space:nowrap;}
.eltp-pick__list{max-height:290px;overflow-y:auto;padding:8px;scrollbar-width:thin;}
.eltp-pick__list::-webkit-scrollbar{width:10px;}
.eltp-pick__list::-webkit-scrollbar-thumb{background:#c9d4dc;border-radius:6px;border:3px solid #fff;}
.eltp-pick__list::-webkit-scrollbar-thumb:hover{background:#adbcc7;}
.eltp-pick__item{
	display:flex !important;align-items:center;justify-content:space-between;gap:12px;width:100% !important;
	padding:12px 13px !important;margin-bottom:6px;border:1px solid var(--line) !important;
	background:#fff !important;border-radius:10px !important;cursor:pointer;text-align:left;
	transition:border-color .15s,background .15s,transform .1s;
}
/* The search filter toggles [hidden]; it must beat the important display above. */
.eltp-pick__item[hidden]{display:none !important;}
.eltp-pick__item:last-of-type{margin-bottom:0;}
.eltp-pick__item:hover{border-color:var(--gold) !important;background:var(--gold-l) !important;transform:translateY(-1px);}
.eltp-pick__txt{display:flex;flex-direction:column;min-width:0;}
.eltp-pick__txt strong{font-size:14px;color:var(--ink);}
.eltp-pick__txt small{font-size:11.5px;color:var(--muted);margin-top:2px;}
.eltp-pick__add{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--gold-d);white-space:nowrap;}
.eltp-pick__add .eltp-ic{width:14px;height:14px;flex:0 0 14px;}
.eltp-pick__none{margin:0;padding:18px;text-align:center;color:var(--muted);font-size:13px;}

/* Make every scrollable list visibly scrollable, so nothing looks missing. */
.eltp-items,.eltp-listview,.eltp-pick__list{scrollbar-width:thin;}
.eltp-items::-webkit-scrollbar,.eltp-listview::-webkit-scrollbar{width:10px;}
.eltp-items::-webkit-scrollbar-thumb,.eltp-listview::-webkit-scrollbar-thumb{background:#c9d4dc;border-radius:6px;border:3px solid #fff;}
.eltp-items{max-height:420px;}

@media(max-width:640px){
	.eltp-pick__head{flex-direction:column;align-items:stretch;gap:8px;}
	.eltp-pick__count{text-align:right;}
	.eltp-pick__list{max-height:340px;}
}

/* =====================================================================
 * v1.0.3 — gold selections, required-field errors, roomier layout
 * ================================================================== */

/* Interest chips: gold when chosen (matches the theme's buttons) */
.eltp-planner .eltp-chip{
	background:#fff !important;border:1px solid var(--line) !important;color:var(--ink) !important;
	padding:11px 17px !important;border-radius:999px !important;font-weight:500 !important;
	transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .1s;
}
.eltp-planner .eltp-chip:hover{
	border-color:var(--gold) !important;color:var(--gold-d) !important;background:var(--gold-l) !important;transform:translateY(-1px);
}
.eltp-planner .eltp-chip.is-on{
	background:var(--gold) !important;border-color:var(--gold) !important;color:#fff !important;
	font-weight:600 !important;box-shadow:0 2px 8px rgba(156,122,30,.28) !important;
}
.eltp-planner .eltp-chip.is-on:hover{background:var(--gold-d) !important;border-color:var(--gold-d) !important;}

/* Other "selected" states follow the same gold language */
.eltp-planner .eltp-method.is-on{background:var(--gold-l) !important;border-color:var(--gold) !important;color:var(--gold-d) !important;}
.eltp-planner .eltp-fchip.is-on{background:var(--gold) !important;border-color:var(--gold) !important;color:#fff !important;}
.eltp-planner .eltp-add.is-on{background:var(--gold) !important;border-color:var(--gold) !important;color:#fff !important;}

/* Required-field validation */
.eltp-field.has-error>input,.eltp-field.has-error>select{
	border-color:#c0392b !important;background:#fdf6f5 !important;
	box-shadow:0 0 0 3px rgba(192,57,43,.12) !important;
}
.eltp-err{display:block;margin-top:6px;font-size:11.5px;color:#c0392b;font-weight:600;}
.eltp-field>label b{color:#c0392b;font-weight:700;}

/* Roomier sidebar ("dashboard") list */
.eltp-rail{padding:22px 20px;}
.eltp-rail__nav{margin:20px 0 22px;padding-top:18px;}
.eltp-rail__nav li{padding:13px 12px;margin-bottom:6px;gap:12px;line-height:1.35;}
.eltp-rail__nav li:last-child{margin-bottom:0;}
.eltp-rail__trip h4{margin:8px 0 14px;line-height:1.3;}
.eltp-rail__meta{margin-bottom:9px;line-height:1.4;}
.eltp-rail__help{padding:16px;margin-top:4px;}
.eltp-rail__help p{margin:0 0 14px;line-height:1.5;}

/* Travel Preferences and the other grouped blocks get more air */
.eltp-planner .eltp-fieldset{padding:24px 22px 8px;margin-bottom:8px;}
.eltp-planner .eltp-grid3{gap:8px 20px;}
.eltp-planner .eltp-grid2{gap:8px 24px;}
.eltp-planner .eltp-grid2 .eltp-field,.eltp-planner .eltp-grid3 .eltp-field{margin-bottom:22px;}
.eltp-planner .eltp-sub{margin:32px 0 14px;}
.eltp-planner .eltp-chips{gap:11px;margin-top:4px;}
.eltp-planner .eltp-counterwrap{margin-top:4px;}

/* WhatsApp button (now a link, not a button) */
a.eltp-chatbtn{
	display:flex !important;align-items:center;justify-content:center;gap:8px;width:100%;
	padding:12px 14px !important;border:1px solid var(--gold) !important;background:var(--gold) !important;
	color:#fff !important;border-radius:9px !important;font-size:13px;font-weight:600;
	text-decoration:none !important;transition:background .15s,transform .1s;
}
a.eltp-chatbtn:hover{background:var(--gold-d) !important;border-color:var(--gold-d) !important;color:#fff !important;transform:translateY(-1px);}
a.eltp-chatbtn .eltp-ic{width:17px;height:17px;flex:0 0 17px;}

@media(max-width:640px){
	.eltp-planner .eltp-chips{grid-template-columns:1fr 1fr;gap:9px;}
	.eltp-rail__nav li{padding:12px 11px;}
}

/* Warning when a destination has no nightly rate (no hotel or no room price) */
.eltp-day__warn{
	display:flex;align-items:center;gap:6px;margin-top:8px;padding:6px 9px;
	background:#fff7e6;border:1px solid #f0d9a8;border-radius:7px;
	font-size:11px;color:#8a6207;font-weight:600;line-height:1.35;
}
.eltp-day__warn .eltp-ic{width:13px;height:13px;flex:0 0 13px;color:#b8860b;}
.eltp-emptytab{display:flex;gap:10px;align-items:flex-start;padding:16px;background:var(--bg);border:1px dashed var(--line);border-radius:10px;}
.eltp-emptytab .eltp-ic{color:var(--muted);margin-top:2px;flex:0 0 16px;}
.eltp-emptytab strong{display:block;font-size:13px;color:var(--ink);}
.eltp-emptytab small{display:block;margin-top:3px;font-size:11.5px;color:var(--muted);line-height:1.45;}

/* "Breakfast included" style inclusion badge on hotel rows */
.eltp-incl{
	display:inline-flex;align-items:center;gap:4px;margin-top:5px;
	padding:2px 8px;border-radius:999px;
	background:#e8f3ec;border:1px solid #bfe0cb;
	font-size:10.5px;font-weight:600;color:#1c6b3d;
}
.eltp-incl .eltp-ic{width:11px;height:11px;flex:0 0 11px;}

/* =====================================================================
 * VEHICLE PICKER (Plan Itinerary, under the map)
 * ================================================================== */
.eltp-vehcard{margin-top:14px;}
.eltp-veh__head{display:flex;flex-direction:column;gap:2px;margin-bottom:12px;}
.eltp-veh__head strong{display:flex;align-items:center;gap:7px;font-size:15px;color:var(--ink);}
.eltp-veh__head strong .eltp-ic{width:18px;height:18px;color:var(--gold-d);}
.eltp-veh__head small{color:var(--muted);font-size:12px;}
.eltp-veh__list{display:flex;flex-direction:column;gap:9px;}
.eltp-veh{
	display:flex !important;align-items:center;gap:13px;width:100% !important;text-align:left;
	padding:11px !important;border:1px solid var(--line) !important;background:#fff !important;
	border-radius:12px !important;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .1s;
}
.eltp-veh:hover{border-color:var(--gold) !important;transform:translateY(-1px);box-shadow:0 3px 10px rgba(16,32,45,.06);}
.eltp-veh.is-on{border-color:var(--gold) !important;background:var(--gold-l) !important;box-shadow:0 0 0 2px var(--gold) inset !important;}
.eltp-veh__img{width:78px;height:56px;flex:0 0 78px;border-radius:9px;overflow:hidden;background:#eef2f5;display:flex;align-items:center;justify-content:center;}
.eltp-veh__img img{width:100%;height:100%;object-fit:cover;}
.eltp-veh__ph{color:#b6c2cb;}
.eltp-veh__ph .eltp-ic{width:30px;height:30px;}
.eltp-veh__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;}
.eltp-veh__body strong{font-size:14px;color:var(--ink);}
.eltp-veh__body small{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--muted);}
.eltp-veh__body small .eltp-ic{width:13px;height:13px;flex:0 0 13px;}
.eltp-veh__price{display:flex;flex-direction:column;align-items:flex-end;gap:3px;white-space:nowrap;}
.eltp-veh__price b{font-size:15px;color:var(--ink);}
.eltp-veh__price em{display:flex;align-items:center;gap:4px;font-style:normal;font-size:11px;font-weight:600;color:var(--gold-d);}
.eltp-veh__price em .eltp-ic{width:12px;height:12px;}
.eltp-veh.is-on .eltp-veh__price em{color:#137333;}

@media(max-width:640px){
	.eltp-veh__img{width:64px;height:48px;flex:0 0 64px;}
	.eltp-veh__price b{font-size:14px;}
}

/* Accommodation line on each day card (which hotel is being charged) */
.eltp-day__hotel{
	display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:8px;
	font-size:11.5px;color:#137333;font-weight:600;line-height:1.4;
}
.eltp-day__hotel .eltp-ic{width:13px;height:13px;flex:0 0 13px;}
.eltp-day__hotel b{color:var(--ink);font-weight:700;}
.eltp-day__hotel.is-auto{color:#8a6207;}
.eltp-day__hotel.is-auto .eltp-ic{color:#b8860b;}
.eltp-day__hotel em{flex-basis:100%;font-style:normal;font-weight:500;color:var(--muted);font-size:10.5px;margin-left:18px;}

/* Auto-selected (cheapest) hotel — highlighted but visibly a default, not a
   firm choice, so the customer knows they can still pick another. */
.eltp-item.is-auto{border-style:dashed !important;background:var(--gold-l) !important;border-color:var(--gold) !important;}
.eltp-add.is-auto{background:#fff !important;color:var(--gold-d) !important;border:1px dashed var(--gold) !important;}
.eltp-add.is-auto:hover{background:var(--gold) !important;color:#fff !important;}

/* "(optional)" hint on non-required field labels */
.eltp-opt{font-weight:400;font-size:11px;color:var(--muted);}

/* pickup / drop location fields */
.eltp-route2{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;}
@media(max-width:640px){.eltp-route2{grid-template-columns:1fr;}}

/* Admin-set star ratings on destinations, activities, attractions */
.eltp-stars{display:inline-flex;letter-spacing:1px;color:var(--gold);font-size:12px;vertical-align:middle;}
.eltp-stars__off{color:#d9dee3;}
.eltp-pick__txt .eltp-stars{margin-left:2px;}
