/* Shared trip list: match the approved journey pages. */
#saved-dialog{width:min(960px,94vw);max-width:none;max-height:88vh;padding:36px;border:0;border-radius:20px;background:#fff;color:#142b38;box-shadow:0 20px 80px #05263330;overflow:auto}
#saved-dialog::backdrop{background:#05263380;backdrop-filter:blur(3px)}
#saved-dialog .detail-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:32px;padding:0}
#saved-dialog .dialog-close{right:12px;top:12px;width:44px;height:44px;border:0;border-radius:50%;background:#eff7f6;color:#285c66;font-size:27px;z-index:2}
#saved-dialog #saved-heading{grid-column:1;font-size:28px;line-height:1.5;margin:8px 0 14px;padding-right:15px}
#saved-dialog #saved-status{grid-column:1;font-size:15px;line-height:1.8;color:#45616a;margin:0 0 20px}
#saved-dialog #saved-list{grid-column:1;align-self:start;display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin:0}
#saved-dialog #saved-list[hidden]{display:none}
#saved-dialog .saved-item{font-size:17px;font-weight:800;line-height:1.7;padding:20px 0 8px;margin:0;border:0;overflow-wrap:anywhere}
#saved-dialog .course-add{justify-self:start;margin:0 0 18px;background:#e8f3fb;color:#286b9e;border:0;border-radius:999px;min-height:44px;padding:10px 16px;font-size:14px;font-weight:800}
#saved-dialog .course-add:disabled{background:#edf5ea;color:#49793f;opacity:1}
#saved-dialog .course-panel:not([hidden]){grid-column:2;grid-row:1/span 4;align-self:start;background:#eff7f6;border:0;border-radius:16px;padding:24px;margin:0;min-width:0}
#saved-dialog #course-shared:not([hidden]){grid-column:1/-1;grid-row:auto}
#saved-dialog .course-panel h3{font-size:25px;line-height:1.5;margin:8px 0 15px}
#saved-dialog .course-panel p{font-size:15px;line-height:1.85;color:#45616a}
#saved-dialog .course-panel .eyebrow{font-size:13px;color:#238e9a;font-weight:800;letter-spacing:.04em}
#saved-dialog .course-title-label,#saved-dialog #course-share-result label{font-size:15px;font-weight:800;display:block;margin:22px 0 9px}
#saved-dialog :is(#course-title,#course-share-url){width:100%;max-width:100%;min-height:50px;background:#fff;border:1px solid #cbdcde;border-radius:8px;color:#142b38;font-size:16px;padding:12px}
#saved-dialog .course-list{padding:0;margin:22px 0;list-style:none}
#saved-dialog .course-stop{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;background:#fff;padding:15px;border:0;border-radius:12px;margin-bottom:12px;align-items:center}
#saved-dialog .course-number{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff3d5;color:#856420;font-size:16px;font-weight:800}
#saved-dialog .course-stop-name{font-size:17px;font-weight:800;line-height:1.7;overflow-wrap:anywhere}
#saved-dialog .course-stop-actions{grid-column:2;display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}
#saved-dialog .course-action{min-width:44px;min-height:44px;border:0;border-radius:8px;background:#e8f3fb;color:#286b9e;font-size:16px;font-weight:800;padding:10px 12px}
#saved-dialog .course-action:disabled{opacity:.4;cursor:default}
#saved-dialog .course-stop-actions .course-action:last-child{background:#fdecee;color:#a63f4a;font-size:14px}
#saved-dialog .course-hint{font-size:13px!important;margin:20px 0}
#saved-dialog :is(#course-copy,#course-own){border-radius:999px;background:#238e9a;color:#fff;border:0;padding:14px 20px;font-size:16px;font-weight:800;min-height:52px;width:100%;margin:20px 0 0}
#saved-dialog #course-copy:disabled{background:#d5e4e5;color:#607c82;opacity:1;cursor:default}
#saved-dialog #course-share-result{margin-top:20px}
#saved-dialog #course-share-result p{font-size:13px;margin-top:12px}
#saved-dialog #course-status{margin:15px 0 0;color:#238e9a;font-weight:700}
#saved-dialog :is(a,button,input):focus-visible{outline:3px solid #009caf;outline-offset:3px}
@media(hover:hover){#saved-dialog button:not(:disabled):hover{filter:brightness(.96)}#saved-dialog .saved-item:hover,#saved-dialog a.course-stop-name:hover{color:#238e9a}}
@media(max-width:700px){#saved-dialog{width:94vw;max-height:88vh;padding:24px 20px;border-radius:16px}#saved-dialog .detail-body{grid-template-columns:minmax(0,1fr);gap:0}#saved-dialog #saved-heading{font-size:26px;margin-right:30px}#saved-dialog .course-panel:not([hidden]){grid-column:1;grid-row:auto;margin-top:24px;padding:20px}#saved-dialog .course-panel h3{font-size:23px}#saved-dialog .course-stop{padding:12px;gap:8px}#saved-dialog .course-stop-name{font-size:16px}}
#saved-dialog .course-action.course-add:disabled{opacity:1}

/* Maps of the saved places and ordered stops. */
#saved-dialog #saved-map-panel{grid-column:1;align-self:start;margin-top:12px}
#saved-dialog .trip-map-panel{min-width:0;margin:20px 0}
#saved-dialog .trip-map-toggle{min-height:48px;padding:12px 20px;border:1px solid #238e9a;border-radius:999px;background:#fff;color:#176c76;font-size:16px;font-weight:800}
#saved-dialog .trip-map{height:320px;width:100%;margin-top:16px;border-radius:12px;overflow:hidden;isolation:isolate;background:#e8f3f5}
#saved-dialog .trip-map[hidden],#saved-dialog .trip-map-panel[hidden]{display:none}
#saved-dialog .trip-map-panel [data-trip-map-status]{font-size:14px;line-height:1.8;margin:12px 0 0;color:#45616a}
.trip-map-marker{display:grid;place-items:center;background:transparent;border:0}
.trip-map-marker span{min-width:36px;min-height:36px;display:grid;place-items:center;background:#238e9a;border:3px solid #fff;box-shadow:0 2px 8px #142b3850;border-radius:50%;color:#fff;font-size:14px;font-weight:800;padding:3px}
.trip-map-link{display:block;min-height:44px;padding:12px 4px;font-size:15px;font-weight:700}
#saved-dialog .trip-map .leaflet-control-zoom a{min-width:36px;min-height:36px;line-height:36px}
@media(max-width:700px){#saved-dialog .trip-map{height:280px}#saved-dialog #saved-map-panel{grid-column:1}}
