.journey-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}.journey-card{padding:0!important;overflow:hidden;max-width:620px}.journey-cover{width:100%;height:210px;object-fit:cover;display:block;border-radius:12px}.journey-cover[hidden]{display:none}.journey-card>.journey-cover{border-radius:0}.journey-card-body{padding:22px}.journey-card h2{margin:0 0 10px}.journey-card .full{text-align:left}.journey-tabs,.journey-days{display:flex;gap:8px;overflow-x:auto;padding:10px 0;max-width:100%}.journey-tabs button,.journey-days button{flex-shrink:0}.journey-tabs [aria-current],.journey-days [aria-current]{background:var(--gold,#c4a46a);color:#111}.journey-view{max-width:760px;margin:auto}.journey-view h2{margin:0;overflow-wrap:anywhere}.journey-view .row{gap:12px}.journey-zone{font-size:12px}.journey-hotel{background:var(--panel,#191b20);border:1px solid var(--line,#303238);border-radius:12px;padding:15px;margin:16px 0}.journey-timeline{margin-top:20px}.journey-event{display:grid;grid-template-columns:65px minmax(0,1fr);gap:12px;padding-bottom:16px}.journey-event-time{font-size:12px;color:var(--muted,#a4a6ad);padding-top:18px;position:relative;border-right:1px solid var(--line,#303238)}.journey-event-time>span{position:absolute;right:-4px;top:21px;width:7px;height:7px;background:var(--gold,#c4a46a);border-radius:50%}.journey-event-card{background:var(--panel,#191b20);border:1px solid var(--line,#303238);border-radius:14px;overflow:hidden}.journey-event-card>summary{display:flex;gap:12px;padding:18px;align-items:flex-start;cursor:pointer;list-style:none}.journey-event-card>summary::-webkit-details-marker{display:none}.journey-event-card strong{display:block;font-size:15px;font-weight:500;overflow-wrap:anywhere}.journey-event-card small{display:block;color:var(--muted,#a4a6ad);margin-top:5px}.journey-event-type{color:var(--gold,#c4a46a)}.journey-chevron{margin-left:auto}.journey-event-card em{display:inline-block;font-size:11px;font-style:normal;color:var(--gold,#c4a46a);margin-top:8px}.journey-event-body{padding:0 18px 18px}.journey-event-body>div{margin-top:14px}.journey-event-body span{font-size:12px;color:var(--muted,#a4a6ad)}.journey-event-body p{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0;line-height:1.5}.journey-stop{margin-top:20px;padding:18px;border:1px solid var(--line,#303238);border-radius:12px}.journey-stop label{display:block;margin-top:10px}.journey-stop input,.journey-stop select,.journey-stop textarea,#journey-import input,#journey-import textarea,#journey-import select{width:100%;font-size:16px}.journey-dialog{width:min(800px,calc(100vw - 24px))}.journey-dialog::backdrop{background:#000b}@media(max-width:600px){.journey-dialog{max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 24px);margin:auto;padding:20px 14px}.journey-event{grid-template-columns:55px minmax(0,1fr);gap:10px}.journey-event-card>summary{padding:14px;gap:8px}.journey-cover{height:180px}}
/* Fit activity fields to the editor width, including narrow desktop dialogs. */
.journey-stop .two,#journey-import .two{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px}
.journey-stop label,#journey-import label{min-width:0}
.journey-stop input,.journey-stop select,.journey-stop textarea,#journey-import input,#journey-import select,#journey-import textarea{min-width:0;max-width:100%;box-sizing:border-box}
.journey-stop>.row{flex-wrap:wrap;gap:12px}

.journey-flight-day+.journey-flight-day{margin-top:24px}.journey-flight-day>h3{margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--line,#303238)}

/* Keep the itinerary editor comfortable at phone and desktop widths. */
dialog:has(.journey-editor){width:min(800px,calc(100vw - 24px));max-width:calc(100vw - 24px)}
.journey-editor,.journey-editor section,.journey-editor label{min-width:0}
.journey-editor label{display:block;line-height:1.45}
.journey-editor input,.journey-editor select,.journey-editor textarea{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box;margin-top:6px;font-size:16px;line-height:1.5;padding:11px 12px}
.journey-editor input,.journey-editor select{min-height:48px}
.journey-editor textarea{min-height:120px;max-height:360px;field-sizing:content;resize:vertical;overflow-y:auto}
.journey-editor .two{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px}
.journey-editor .row.between{flex-wrap:wrap;gap:12px}
.journey-editor .journey-custom-field{padding-top:12px;margin-top:16px;border-top:1px solid var(--line)}
.journey-editor .journey-custom-field>button{margin-top:10px}
@media(max-width:600px){
 dialog:has(.journey-editor){padding:20px 14px}
 .journey-editor .journey-stop{padding:14px}
 .journey-editor .two{grid-template-columns:minmax(0,1fr)}
 .journey-editor input[type="date"],.journey-editor input[type="datetime-local"]{appearance:none;-webkit-appearance:none}
}
