.recommended-dialog{width:min(1180px,96vw);max-width:96vw;max-height:94dvh;padding:0;border:1px solid #d8e3df;border-radius:24px;color:#143c3e;background:#fafbf5;box-shadow:0 25px 100px #102f4055}
.recommended-dialog::backdrop{background:#092c32b3;backdrop-filter:blur(4px)}
.recommended-header{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;border-bottom:1px solid #d8e3df;background:#fafbf5}.recommended-header h2{margin:4px 0;font-size:26px}.recommended-header span{font-size:11px;letter-spacing:.14em}.recommended-header button{font-size:26px;background:none;border:0;color:inherit;width:44px;height:44px;cursor:pointer}
.recommended-body{padding:20px 26px;line-height:1.5}.recommended-body a{color:#145e5a;text-underline-offset:3px}.recommended-body button,.recommended-body summary{cursor:pointer}.recommended-body button{font:inherit}.recommended-body :focus-visible{outline:3px solid #13867c;outline-offset:3px}
.recommended-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.recommended-date-control{position:relative;min-width:0}.recommended-date-control>summary{display:flex;align-items:center;gap:12px;padding:10px 14px;list-style:none;border:1px solid #abc2b9;border-radius:12px;background:white;font-size:14px;min-height:48px}.recommended-date-control>summary::-webkit-details-marker{display:none}.recommended-date-control>summary>span:first-child{font-size:23px;color:#19756b}.recommended-date-control>summary>span:last-child{color:#53706a;font-size:12px}.recommended-date-guests{font-size:12px;color:#647a74}.recommended-date-control[open]>summary{border-color:#19756b;box-shadow:0 0 0 2px #19756b22}
#recommended-dates{position:absolute;left:0;top:calc(100% + 9px);width:380px;max-width:calc(96vw - 36px);max-height:70dvh;overflow:auto;z-index:80;background:white;border:1px solid #abc2b9;box-shadow:0 20px 70px #123e4233;border-radius:18px;padding:18px}#recommended-dates label{display:grid;gap:4px;font-size:12px;color:#506c65}#recommended-dates input{width:100%;min-width:0;border:1px solid #abc2b9;border-radius:9px;padding:9px;font:inherit;font-size:14px;color:#143c3e;background:white}.recommended-date-fields,.recommended-guests{display:grid;grid-template-columns:1fr 1fr;gap:10px}.recommended-date-fields .trip-calendar{grid-column:1/-1;width:100%;min-width:0;margin:8px 0}.recommended-guests{margin-top:14px}.recommended-coverage{margin:12px 0;padding:12px;background:#e9f0e9;border-radius:10px;font-size:12px}.recommended-coverage p{margin:5px 0 0}.recommended-date-error:empty{display:none}.recommended-date-error{color:#9b362f;font-size:13px}.recommended-save-top{white-space:nowrap;font-size:14px!important;padding:12px 18px!important;border-radius:12px!important}
.recommended-hotels{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.recommended-hotels button{display:flex;align-items:center;gap:10px;padding:12px;text-align:left;border:1px solid #cbd9d1;border-radius:13px;background:white;color:#143c3e;min-width:0}.recommended-hotels strong{display:block;font-size:13px;line-height:1.3}.recommended-hotels small{display:block;margin-top:3px;color:#688078;font-size:10px}.recommended-hotel-number{color:#85a79b;font-size:12px;font-weight:700}.recommended-hotel-check{margin-left:auto;color:#688078}.recommended-hotels [aria-pressed=true]{background:#153f40;color:white;border-color:#153f40}.recommended-hotels [aria-pressed=true] small,.recommended-hotels [aria-pressed=true] .recommended-hotel-check{color:#c5dfcf}
.recommended-day-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:0 0 20px}.recommended-day-nav button{min-width:0;display:grid;gap:2px;border:1px solid #d6e1d8;border-radius:12px;background:#f0f4ec;color:#143c3e;text-align:left;padding:10px 12px;transition:background .15s,transform .15s}.recommended-day-nav button>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#5a7770}.recommended-day-nav strong{font-size:15px}.recommended-day-nav small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#678276}.recommended-day-nav [aria-pressed=true]{background:#d9eee2;border-color:#297c67;box-shadow:0 2px 0 #297c67}.recommended-day-nav button:hover{transform:translateY(-2px);border-color:#297c67}
.recommended-workspace{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr);gap:24px;align-items:start}.recommended-day-heading>span{font-size:12px;color:#5a7770}.recommended-day-heading h3{font-size:23px;margin:4px 0}.recommended-day-heading p{font-size:12px;color:#688078;margin:4px 0 18px}.recommended-activity-list{display:grid;gap:12px}.recommended-activity{display:flex;align-items:center;gap:14px;min-height:94px;width:100%;border:1px solid #d8e3d9;border-radius:16px;background:white;color:#143c3e;text-align:left;padding:15px;transition:transform .15s,box-shadow .15s}.recommended-activity:hover{transform:translateY(-2px);box-shadow:0 5px 18px #183e4212}.recommended-activity[aria-pressed=true]{border-color:#247b68;box-shadow:0 0 0 2px #247b6822}.recommended-activity-icon{display:grid;place-items:center;flex:none;width:45px;height:45px;border-radius:14px;background:#e9f0e6;font-size:24px}.recommended-activity-copy{display:grid;gap:4px;min-width:0}.recommended-activity-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#678276}.recommended-activity-copy strong{font-size:15px;line-height:1.3}.recommended-activity-copy>span{font-size:11px;color:#71857c}.recommended-activity-arrow{margin-left:auto;font-size:20px;color:#739689}.tone-event{background:linear-gradient(135deg,#213f46,#374368);color:#fff;border-color:#374368}.tone-event .recommended-activity-copy small,.tone-event .recommended-activity-copy>span,.tone-event .recommended-activity-arrow{color:#d0dfe0}.tone-event .recommended-activity-icon{background:#ffffff1a;color:#dbebe3}.tone-party .recommended-activity-icon{background:#eaddf2;color:#704086}.tone-open{border-style:dashed;background:#f4f6f0}.tone-travel .recommended-activity-icon{background:#e0ecf0;color:#1c6476}.tone-rest .recommended-activity-icon{background:#e9e5f0;color:#796286}
.recommended-map-side{position:sticky;top:12px;min-width:0;border:1px solid #d8e3d9;border-radius:18px;background:white;overflow:hidden}.recommended-map-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px}.recommended-map-heading>span{font-size:10px;letter-spacing:.08em;color:#688078}.recommended-map-heading button{background:#eff4ec;border:0;border-radius:7px;padding:6px 8px;font-size:10px;color:#325c52}.recommended-map-heading button+button{margin-left:4px}.recommended-map{height:300px;position:relative;background:#e4ebe5}.recommended-map .maplibregl-ctrl-top-right{top:8px!important;right:8px!important}.recommended-map .maplibregl-ctrl-bottom-left{bottom:0!important}.recommended-map .maplibregl-ctrl-bottom-right{bottom:0!important;max-width:100%}.recommended-stop-detail{padding:16px}.recommended-selected-label{color:#618373;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.recommended-stop-detail h3{font-size:19px;margin:5px 0}.recommended-stop-summary{font-size:12px;color:#60776e;margin:5px 0 12px}.recommended-stop-actions{display:flex;gap:8px;flex-wrap:wrap}.recommended-stop-actions a{border-radius:8px;background:#e6f1e8;padding:7px 10px;font-size:12px;font-weight:700;text-decoration:none}.recommended-no-pin{font-size:10px;color:#7b8e82;margin:10px 0}.recommended-stop-more{margin-top:12px;border-top:1px solid #e3ebe2;padding-top:10px;font-size:12px}.recommended-stop-more>summary{font-size:11px;color:#547465}.recommended-stop-more p{overflow-wrap:anywhere}.recommended-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #d8e3df;padding-top:16px;margin-top:22px;font-size:11px;color:#72887c}.recommended-footer button{background:transparent;border:0;color:#225f52;font-size:12px;padding:5px 0}.recommended-airport{font-size:13px;margin-top:14px;padding:16px;background:#edf3e9;border-radius:13px}.recommended-airport h3{margin-top:0}.recommended-airport p{overflow-wrap:anywhere}.recommended-entry{margin:10px 0;padding:12px 20px;border-radius:12px;border:1px solid #145e5a;background:#145e5a;color:white;font-weight:700;font-size:16px}.recommended-entry:disabled{opacity:.5}
@media(max-width:760px){.recommended-dialog{width:96vw;max-height:96dvh;border-radius:18px}.recommended-header{padding:14px 16px}.recommended-header h2{font-size:22px}.recommended-header span{font-size:9px}.recommended-body{padding:14px 16px}.recommended-toolbar{align-items:stretch;flex-direction:column;gap:8px}.recommended-date-control>summary{flex-wrap:wrap;gap:6px;font-size:12px}.recommended-date-guests{margin-left:auto;font-size:10px}.recommended-date-control>summary>span:last-child{font-size:10px}.recommended-save-top{padding:9px 12px!important;font-size:12px!important}.recommended-hotels{gap:6px}.recommended-hotels button{padding:9px 7px;gap:4px;align-items:flex-start}.recommended-hotels strong{font-size:10px}.recommended-hotels small{font-size:8px}.recommended-hotel-number,.recommended-hotel-check{display:none}.recommended-day-nav{display:flex;overflow:auto;gap:6px;padding:0 0 5px;margin-bottom:12px}.recommended-day-nav button{flex:0 0 74px;padding:8px}.recommended-day-nav strong{font-size:13px}.recommended-day-nav small{font-size:9px}.recommended-workspace{display:flex;flex-direction:column;gap:16px}.recommended-map-side{position:relative;top:auto;order:0;width:100%}.recommended-timeline{order:1;width:100%}.recommended-map{height:220px}.recommended-map-heading{padding:8px 10px}.recommended-map-heading>span{font-size:9px}.recommended-stop-detail{padding:12px}.recommended-stop-detail h3{font-size:16px}.recommended-day-heading h3{font-size:21px}.recommended-activity{min-height:82px;padding:12px}.recommended-activity-copy strong{font-size:14px}.recommended-footer{align-items:flex-start;flex-direction:column;gap:4px}.recommended-footer button{min-height:38px}#recommended-dates{padding:14px;max-height:72dvh}}
@media(prefers-reduced-motion:reduce){.recommended-day-nav button,.recommended-activity{transition:none}.recommended-activity:hover,.recommended-day-nav button:hover{transform:none}}

#recommended-dates .trip-calendar button{grid-column:auto;cursor:pointer;border:0;font-family:inherit;touch-action:manipulation;color:var(--ink);background:transparent;padding:0;box-shadow:none}
#recommended-dates .trip-calendar-nav button{height:34px;border:1px solid #dbe3d4;border-radius:9px;background:#f6f7ef;font-size:17px}
#recommended-dates .trip-calendar [data-date]{display:block;width:100%;height:36px;font-size:12px;font-weight:600;border-radius:8px}
#recommended-dates .trip-calendar [data-date]:hover:not(:disabled):not(.is-checkin):not(.is-checkout){background:#e7efdf}
#recommended-dates .trip-calendar [data-date].in-range{background:#dceadf;border-radius:0;color:#224b3c}
#recommended-dates .trip-calendar [data-date].is-preview{background:#e7efe1}
#recommended-dates .trip-calendar [data-date].is-checkin,#recommended-dates .trip-calendar [data-date].is-checkout{background:var(--teal);color:#fff;font-weight:800;border-radius:8px;opacity:1}
#recommended-dates .trip-calendar button:disabled:not(.is-checkin){opacity:.3;cursor:default}
#recommended-dates .trip-calendar button:focus-visible{position:relative;outline:2px solid #e9936c;outline-offset:-2px;z-index:1}
#recommended-dates .trip-calendar [aria-current=date]:not(.is-checkin):not(.is-checkout){text-decoration:underline;text-underline-offset:4px}

.recommended-header{position:sticky;top:0;z-index:60}.recommended-header:focus-within{z-index:61}@media(max-width:760px){.recommended-hotels strong{font-size:11px}.recommended-hotels button{min-height:62px}}
/* Shared visual planner, with tools kept behind deliberate controls. */
#planner-dialog.recommended-dialog{width:min(1180px,96vw);max-width:96vw;max-height:94dvh;padding:0;border-radius:24px;background:#fafbf5}#planner-dialog.recommended-dialog #planner-content{padding:0}
.recommended-header input{display:block;width:min(640px,65vw);font:700 26px/1.3 inherit;font-size:26px;font-weight:700;color:#143c3e;border:1px solid transparent;border-radius:8px;background:transparent;padding:3px 5px;margin:4px -5px}.recommended-header input:hover,.recommended-header input:focus{border-color:#aac4b8;background:white}
.visual-trip-tools{position:relative;font-size:13px}.visual-trip-tools>summary{padding:12px;border:1px solid #abc2b9;border-radius:10px;cursor:pointer;background:white}.visual-trip-tools[open]{max-width:500px}.visual-trip-tools label,.visual-custom label,.visual-edit label,.visual-picker label{display:grid;gap:5px;font-size:12px;margin:10px 0}.visual-trip-tools select,.visual-picker input,.visual-edit input,.visual-edit select,.visual-edit textarea,.visual-custom input{width:100%;min-width:0;padding:9px;border:1px solid #b8cdc1;border-radius:8px;color:#143c3e;background:white;font:inherit}.visual-tool-actions,.visual-base-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.visual-tool-actions button,.visual-base-actions button,.visual-add,.visual-custom button,.visual-move-actions button{padding:8px 12px;border:1px solid #b8cdc1;background:#edf4e9;border-radius:8px;color:#245c50}.visual-base-actions{margin:-7px 0 16px;font-size:12px}.visual-base-actions details{margin-left:auto}.visual-status:empty{display:none}.visual-status{font-size:12px;color:#865139;background:#fff3df;padding:10px;border-radius:8px}.visual-picker{margin:12px 0 20px;padding:16px;background:#edf3e9;border:1px solid #b8cdc1;border-radius:16px}.visual-picker-heading{display:flex;align-items:center;justify-content:space-between}.visual-picker-heading h3{margin:0}.visual-picker-heading button{border:0;background:transparent;font-size:24px;color:#245c50}.visual-picker p{font-size:12px;margin:6px 0}.visual-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:300px;overflow:auto;margin-top:12px}.visual-choice-list button{display:grid;gap:4px;text-align:left;padding:12px;border:1px solid #c8d9ce;border-radius:10px;background:white;color:#143c3e}.visual-choice-list button[hidden]{display:none}.visual-choice-list small{font-size:10px;color:#627c6f}.visual-add{width:100%;margin:12px 0}.visual-custom{font-size:12px;padding:8px}.visual-custom form{display:grid;grid-template-columns:1fr 120px;gap:8px}.visual-custom button{grid-column:1/-1}.visual-drag-handle{font-size:20px;color:#78978b;cursor:grab;flex:none}.recommended-activity.is-dragging{opacity:.4}.recommended-activity[draggable=true]{cursor:grab}.visual-edit{font-size:12px;border-top:1px solid #e3ebe2;margin-top:14px;padding-top:12px}.visual-edit>summary{cursor:pointer;color:#245c50;font-weight:600}.visual-edit-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.visual-edit textarea{min-height:75px;resize:vertical}.visual-edit .visual-confirm{display:flex;align-items:center;gap:8px}.visual-confirm input{width:16px}.visual-move-actions{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap}.recommended-stop-actions button{border:0;border-radius:8px;background:#e6f1e8;color:#145e5a;padding:7px 10px;font-size:12px;font-weight:700}.visual-warning{color:#913d30;font-size:12px}.visual-map-legend{display:flex;gap:14px;flex-wrap:wrap;padding:7px 12px;background:#f1f5ed;font-size:10px;color:#245c50}
.trip-pin{display:flex;align-items:center;gap:6px;width:auto;max-width:190px;min-height:42px;padding:6px 10px;border:2px solid white;border-radius:12px;background:#236b57;color:white;box-shadow:0 3px 12px #122e4266;cursor:pointer;text-align:left;font-family:inherit}.trip-pin-base{background:#133f52}.trip-pin-event{background:#754387}.trip-pin-symbol{font-size:24px}.trip-pin-name{display:grid;gap:2px;max-width:145px}.trip-pin-name small{font-size:8px;letter-spacing:.05em;opacity:.85}.trip-pin-name strong{font-size:11px;line-height:1.25;white-space:normal}.trip-pin.selected{outline:4px solid #ef916b;outline-offset:3px;box-shadow:0 0 0 9px #ef916b44,0 5px 15px #143e4255}.trip-pin:focus-visible{outline:3px solid #ef916b;outline-offset:2px}
.recommended-day-nav{display:flex;overflow:auto;padding-bottom:5px}.recommended-day-nav button{flex:1 0 95px}.visual-trip-tools .planner-transfer{margin:10px 0}.visual-trip-tools .planner-recovery{font-size:10px}.visual-trip-tools .planner-transfer-actions{flex-wrap:wrap}
@media(max-width:760px){#planner-dialog.recommended-dialog{border-radius:18px;max-height:96dvh}.recommended-header input{font-size:21px;width:72vw}.visual-choice-list{grid-template-columns:1fr}.visual-base-actions{gap:6px}.visual-base-actions details{margin-left:0}.visual-trip-tools{width:100%}.visual-custom form{grid-template-columns:1fr}.visual-edit-row{grid-template-columns:1fr 1fr}.trip-pin{max-width:150px}.trip-pin-name{max-width:110px}.trip-pin-name strong{font-size:10px}.recommended-day-nav button{flex:0 0 80px}.visual-drag-handle{font-size:16px}}
.visual-trip-tools textarea{width:100%;min-height:70px;padding:9px;border:1px solid #b8cdc1;border-radius:8px;font:inherit;color:#143c3e;background:white}.recommended-header input{font-family:inherit}#planner-dialog.recommended-dialog{margin:auto;height:auto}#planner-dialog.recommended-dialog #planner-content{max-height:94dvh}@media(max-width:760px){#planner-dialog.recommended-dialog #planner-content{max-height:94dvh}}

.activity-facts{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.activity-facts span{border-radius:7px;background:#edf4e9;padding:5px 8px;font-size:11px;font-weight:600;color:#245c50}.activity-summary{font-size:13px;line-height:1.6;margin:9px 0;color:#24494a}.activity-entry{font-size:11px;line-height:1.5;color:#627c6f;margin:8px 0 12px}
.recommended-body a.primary{color:#fff}
/* Show transport conditions before route actions, including narrow screens. */
.travel-warning{padding:12px 14px;border-left:3px solid #986426;background:#fff4df;color:#624416;font-size:13px;line-height:1.6;margin:12px 0;overflow-wrap:anywhere}
.travel-handoff{font-size:13px;line-height:1.65}.travel-handoff p{margin:8px 0}.travel-handoff a{text-decoration:underline;text-underline-offset:3px}
.recommended-research-coverage{padding:14px 16px;margin:12px 0 18px;border:1px solid #a3b9ae;border-left:4px solid #986426;border-radius:10px;background:#fff4df;color:#24494a;font-size:13px;line-height:1.6}.recommended-research-coverage strong{display:block;font-size:14px}.recommended-research-coverage p{margin:6px 0 0}

.visual-saved-stays{margin:0 0 18px;padding:16px;border:1px solid #c6d7ca;border-radius:16px;background:#fffef9}.visual-saved-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.visual-saved-heading h3{margin:0;font-size:18px}.visual-saved-heading h3 span{font-size:13px;padding:3px 7px;background:#e6efe3;border-radius:12px;margin-left:5px}.visual-saved-list{display:grid;gap:10px}.visual-saved-list article{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border:1px solid #d6e1d6;border-radius:11px;background:#fafcf6}.visual-saved-list article>div:first-child{min-width:0}.visual-saved-list strong{display:block;font-size:14px;overflow-wrap:anywhere}.visual-saved-list small{display:block;margin-top:4px;font-size:12px;color:#47645a}.visual-saved-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;flex-shrink:0}.visual-saved-actions button,.visual-saved-heading button,.recommended-base-suggestions>button,.visual-undated button{min-height:44px;padding:9px 12px;border:1px solid #b8cdc1;border-radius:9px;background:#edf4e9;color:#245c50;font-size:13px}.visual-saved-base{font-size:12px;color:#245c50;padding:7px}.recommended-base-suggestions{padding:12px 14px;margin-bottom:18px;border:1px solid #d8e3d9;border-radius:12px}.recommended-base-suggestions>summary{min-height:32px;font-weight:600;color:#365d50}.recommended-base-suggestions .recommended-hotels{margin-top:12px;margin-bottom:12px}.visual-undated{padding:22px;border:1px dashed #b8cdc1;border-radius:14px;background:#fffef9}.visual-undated h3{margin:0 0 8px;font-size:20px}.visual-undated p{font-size:14px;line-height:1.6;color:#47645a}
@media(max-width:760px){.recommended-timeline{order:0}.recommended-map-side{order:1}.visual-saved-stays{padding:13px}.visual-saved-list article{align-items:flex-start;flex-direction:column}.visual-saved-actions{width:100%}.recommended-body input:not([type=checkbox]),.recommended-body select,.recommended-body textarea{font-size:16px!important}.recommended-body .trip-calendar-nav button{min-height:44px}.recommended-body .trip-calendar [data-date]{min-height:44px}}

/* A readable week appears before hotel choices; details open only on request. */
[data-recommended-preview]{padding:16px 20px;margin:12px 0 20px;border:1px solid #c5d7cc;border-radius:18px;background:#f8fbf3;color:#143c3e}
[data-recommended-preview] button,[data-recommended-preview] select{font:inherit;color:inherit;cursor:pointer}
[data-recommended-preview] :focus-visible{outline:3px solid #13867c;outline-offset:3px}
.recommended-preview-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}
.recommended-preview-label{font-size:11px;color:#456958}
.recommended-preview-heading h2{font-size:23px;line-height:1.25;margin:2px 0 0}
.recommended-preview-customize{min-height:44px;padding:9px 14px;border:1px solid #a3bdb0;border-radius:10px;background:white;font-size:14px!important;font-weight:600!important;flex-shrink:0}
.recommended-preview-context{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0;font-size:12px}
.recommended-preview-context>strong{font-weight:500}
.recommended-preview-context label{display:flex;align-items:center;gap:6px;min-width:0;margin-left:auto;color:#456958}
.recommended-preview-context select{max-width:280px;min-height:34px;min-width:0;border:1px solid #c5d7cc;border-radius:8px;background:white;padding:5px 24px 5px 8px;font-size:12px!important;text-overflow:ellipsis}
.recommended-preview-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.recommended-preview-days>button{display:grid;grid-template-rows:15px 24px 34px 25px;align-content:start;gap:3px;min-width:0;padding:8px;border:1px solid #c5d7cc;border-radius:11px;background:#fffef9;text-align:left}
.recommended-preview-days>button[aria-expanded=true]{border-color:#19756b;box-shadow:0 0 0 2px #19756b22;background:#eaf3e7}
.recommended-preview-days>button>span{font-size:11px;color:#456958}
.recommended-preview-days i{font-style:normal;font-size:22px;line-height:24px;color:#245c50}
.recommended-preview-days strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:12px;line-height:17px}
.recommended-preview-days small{font-size:10px;line-height:12px;color:#567160}
.recommended-preview-days .preview-event,.recommended-preview-days .preview-weekly{border-top:3px solid #8f659a;padding-top:6px}
.recommended-preview-days .preview-flexible{background:#f0f4e9;border-style:dashed}
.recommended-preview-days .preview-departure{background:#eaf1f5}
.recommended-preview-note{font-size:11px;line-height:1.4;color:#567160;margin:9px 0 0}
.recommended-preview-detail{margin-top:12px;padding:14px;border-top:1px solid #c5d7cc;background:#fffef9;border-radius:10px}
.recommended-preview-detail>div{display:flex;align-items:center;justify-content:space-between;font-size:14px;gap:12px}
.recommended-preview-detail button{border:0;border-radius:8px;background:#edf4e9;width:44px;height:44px;font-size:22px}
.recommended-preview-detail ol{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:10px}
.recommended-preview-detail li{display:flex;gap:12px;align-items:flex-start}
.recommended-preview-detail li>span{font-size:23px;min-width:24px;color:#245c50}
.recommended-preview-detail li strong{font-size:14px;display:block}
.recommended-preview-detail small{display:block;color:#567160;font-size:12px;margin-top:3px}
.recommended-preview-detail p{font-size:12px;line-height:1.5;margin:5px 0}
.recommended-preview-detail .travel-warning{font-size:12px;padding:8px 10px}
.recommended-preview-gap{color:#765129}

.recommended-toolbar{align-items:stretch;margin-bottom:12px}
.recommended-base-control{display:flex;align-items:center;gap:10px;text-align:left;min-width:0;min-height:48px;padding:8px 12px;background:white;border:1px solid #abc2b9;border-radius:12px}
.recommended-base-control>span:first-child{font-size:25px;color:#19756b}
.recommended-base-control>span:nth-child(2){display:grid;min-width:0}
.recommended-base-control small{font-size:10px;color:#53706a}
.recommended-base-control strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.recommended-base-control>span:last-child{font-size:11px;color:#53706a;margin-left:auto}
.recommended-day-nav.is-week{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;overflow:visible}
.recommended-day-nav button{padding:9px;min-height:94px}
.recommended-day-nav strong{font-size:12px;line-height:17px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:4px 0;min-height:34px}
.recommended-day-nav small{font-size:10px;line-height:1.3}
.recommended-day-heading h3{font-size:23px;margin:3px 0}
.recommended-day-heading p{font-size:11px;margin:4px 0 10px}
.recommended-activity{min-height:72px;padding:10px 12px}
.recommended-activity-copy strong{font-size:15px}
.recommended-map-side{position:static;border:0;background:transparent;overflow:visible}
.recommended-stop-detail{padding:14px;border:1px solid #c5d7cc;border-radius:14px;background:#fffef9}
.recommended-map-panel{margin-top:12px;border:1px solid #c5d7cc;border-radius:12px;overflow:hidden;background:#fffef9}
.recommended-map-panel>summary{padding:11px 14px;color:#245c50;font-size:13px;min-height:44px}
.recommended-secondary{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:10px;margin-top:18px;border-top:1px solid #d8e3d9;padding-top:16px}
.recommended-secondary>details{margin:0;padding:0;border:1px solid #c5d7cc;border-radius:11px;background:#fffef9;font-size:12px;max-width:none}
.recommended-secondary>details>summary{padding:11px 14px;min-height:44px;font-size:13px;font-weight:600;color:#365d50;cursor:pointer;border:0;background:transparent;border-radius:11px}
.recommended-secondary>details[open]{padding-bottom:14px}
.recommended-secondary>details[open]>:not(summary){margin-left:14px;margin-right:14px}
.visual-saved-stays>summary>span{font-size:11px;padding:2px 6px;margin-left:5px;background:#e6efe3;border-radius:10px}
.visual-saved-heading{margin-top:10px}
.recommended-secondary .recommended-research-coverage{border-left:3px solid #986426;background:#fff8eb}
.recommended-secondary .visual-trip-tools[open]{max-width:none}
.recommended-secondary .visual-base-actions{margin:10px 14px 0}

@media(max-width:760px){
 [data-recommended-preview]{padding:12px;margin:8px 0 16px;border-radius:14px}
 .recommended-preview-heading{gap:8px}.recommended-preview-heading h2{font-size:19px}.recommended-preview-label{font-size:10px}
 .recommended-preview-customize{max-width:130px;padding:8px 10px;font-size:12px!important;line-height:1.3}
 .recommended-preview-context{gap:6px;margin:8px 0;font-size:11px;flex-wrap:wrap}.recommended-preview-context>strong{flex-basis:100%;white-space:nowrap}
 .recommended-preview-context label{flex:1 1 100%;gap:6px;margin-left:0;font-size:11px}.recommended-preview-context label>span{flex-shrink:0;white-space:nowrap}
 .recommended-preview-context select{flex:1;width:0;max-width:none;min-height:44px;padding:5px 24px 5px 8px;font-size:16px!important}
 .recommended-preview-days{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 .recommended-preview-days>button{grid-template-rows:13px 20px 30px minmax(40px,auto);gap:2px;padding:6px;border-radius:9px}
 .recommended-preview-days>button>span{font-size:10px}.recommended-preview-days i{font-size:19px;line-height:20px}
 .recommended-preview-days strong{font-size:12px;line-height:15px}.recommended-preview-days small{font-size:11px;line-height:12px}
 .recommended-preview-days .preview-event,.recommended-preview-days .preview-weekly{padding-top:4px}
 .recommended-preview-note{font-size:11px;line-height:1.4;margin-top:7px}
 .recommended-preview-detail{padding:10px}.recommended-preview-detail li{gap:8px}
 .recommended-toolbar{display:grid;grid-template-columns:1fr;gap:6px}.recommended-base-control{width:100%;min-height:44px;padding:7px 10px}
 .recommended-base-control>span:nth-child(2){display:flex;gap:8px;align-items:center;flex:1}.recommended-base-control strong{font-size:12px}
 .recommended-day-nav.is-week{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.recommended-day-nav.is-week button{min-width:0;padding:6px;min-height:86px}
 .recommended-day-nav strong{font-size:12px;line-height:15px;min-height:30px;margin:3px 0}.recommended-day-nav small{font-size:11px;line-height:12px}
 .recommended-day-heading h3{font-size:21px}.recommended-activity{min-height:70px}.recommended-activity-copy strong{font-size:14px}
 .recommended-secondary{grid-template-columns:1fr;gap:8px;margin-top:14px;padding-top:12px}.recommended-map-side{order:1}
 .recommended-stop-detail h3{font-size:17px}.recommended-map{height:220px}
}
