/* AIRPORT CAR HUB / ROAD TRIP WORKSPACE v3
   A genuine application-style layout: control rail at left, interactive map at right.
   Load AFTER your existing planner.css. All selectors are scoped to #rtp-global. */
#rtp-global {
  --work-ink:#163250; --work-quiet:#667d96; --work-accent:#1469c9;
  --work-border:#dbe6f2; --work-paper:#fff; --work-wash:#f5f8fc;
  color:var(--work-ink); background:var(--work-wash);
  font-family:inherit;
}
#rtp-global, #rtp-global * {box-sizing:border-box}
#rtp-global .rtp__container {width:min(1260px,calc(100% - 48px));max-width:1260px;margin:0 auto;padding:34px 0 72px}
#rtp-global .rtp__intro {position:relative;inset:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;padding:12px 0 30px;margin:0!important;border:0;background:transparent!important;box-shadow:none!important;min-height:0;height:auto;overflow:visible}
#rtp-global .rtp__intro-main {min-width:0}
#rtp-global .rtp__intro .rtp__eyebrow {display:inline-flex;gap:9px;align-items:center;font-weight:800;font-size:11px;letter-spacing:.14em;color:#1765b4}
#rtp-global .rtp__intro .rtp__eyebrow .rtp-icon {width:17px;height:17px}
#rtp-global .rtp__intro h1 {color:#112e4e;letter-spacing:-.045em;font-size:clamp(30px,3.45vw,48px);line-height:1.12;font-weight:800;max-width:800px;margin:11px 0 11px}
#rtp-global .rtp__intro p {color:#536e89;font-size:15px;line-height:1.7;max-width:780px;margin:0}
#rtp-global .rtp__intro-features {display:flex;flex-direction:column;gap:10px;border-left:1px solid #dbe6f2;padding-left:25px;padding-bottom:5px;min-width:190px}
#rtp-global .rtp__intro-features span {display:flex;gap:10px;align-items:center;font-weight:650;font-size:12px;color:#345773;white-space:nowrap}
#rtp-global .rtp__intro-features .rtp-icon {color:#1671ca;width:17px;height:17px}

/* Real structural change: flat, semantic two-column application layout. */
#rtp-global .rtp__app-shell {display:grid;grid-template-columns:minmax(300px,365px) minmax(0,1fr);grid-template-areas:'setup map' 'routes map' 'builder metrics' 'builder details' 'tips details' 'save details';gap:18px 22px;align-items:start}
#rtp-global .rtp__app-shell > * {min-width:0;position:relative;inset:auto!important;transform:none!important;float:none!important;margin:0!important;max-width:none}
#rtp-global .rtp__launch {grid-area:setup}
#rtp-global .rtp__curated {grid-area:routes}
#rtp-global .rtp__map-card {grid-area:map}
#rtp-global .rtp__overview {grid-area:metrics}
#rtp-global .rtp__right {grid-area:builder;width:100%!important;padding:0!important;background:transparent;border:0;box-shadow:none;display:block}
#rtp-global .rtp__details {grid-area:details;display:flex;flex-direction:column;gap:18px;min-width:0}
#rtp-global .rtp__tip-card {grid-area:tips}
#rtp-global .rtp__save {grid-area:save}
#rtp-global .rtp__launch,#rtp-global .rtp__curated,#rtp-global .rtp__map-card,#rtp-global .rtp__builder,#rtp-global .rtp__detail-panel,#rtp-global .rtp__tip-card,#rtp-global .rtp__save {border:1px solid var(--work-border);border-radius:18px;box-shadow:0 4px 20px rgba(22,58,99,.04);overflow:visible;background:var(--work-paper)}
#rtp-global .rtp__pane-eyebrow {display:block;color:#1d69ad;font-weight:800;font-size:10px;letter-spacing:.13em;line-height:1.3;text-transform:uppercase}

/* First action, country selection: vertically arranged, legible form. */
#rtp-global .rtp__launch {padding:26px 25px 22px!important;z-index:6}
#rtp-global .rtp__pane-heading h2 {color:var(--work-ink);font-size:24px;letter-spacing:-.03em;line-height:1.23;margin:8px 0 7px;font-weight:800}
#rtp-global .rtp__pane-heading p {font-size:13px;line-height:1.65;color:var(--work-quiet);margin:0}
#rtp-global .rtp__launch-fields {display:flex!important;flex-direction:column;gap:17px;margin-top:23px;align-items:stretch!important}
#rtp-global .rtp__country-field,#rtp-global .rtp__start-field {min-width:0;width:100%;position:relative}
#rtp-global .rtp__launch-fields label {display:flex;gap:9px;align-items:center;font-size:13px;font-weight:750;color:#274660;margin:0 0 8px;letter-spacing:0;text-transform:none}
#rtp-global .rtp__field-required,#rtp-global .rtp__field-optional {font-size:10px;border-radius:6px;padding:3px 6px;font-weight:750}
#rtp-global .rtp__field-required {color:#1c68aa;background:#eaf3fe}
#rtp-global .rtp__field-optional {color:#7d8da1;background:#f0f3f7}
#rtp-global #rtp-country,#rtp-global .rtp__start-field input,#rtp-global .select2-container--default .select2-selection--single {background:#fff!important;border:1px solid #ccdbe9!important;border-radius:10px!important;min-height:51px!important;height:51px!important;box-shadow:none!important;width:100%;font-size:14px}
#rtp-global #rtp-country:focus-visible,#rtp-global .rtp__start-field input:focus-visible {outline:3px solid #c4e3ff;outline-offset:1px}
#rtp-global .select2-container {width:100%!important}
#rtp-global .select2-container--default .select2-selection--single .select2-selection__rendered {line-height:49px!important;padding-left:13px!important;color:#1c3652}
#rtp-global .select2-container--default .select2-selection--single .select2-selection__arrow {height:49px;top:0;right:9px}
#rtp-global .rtp__input-wrap {position:relative;width:100%}
#rtp-global .rtp__input-wrap > .rtp-icon {position:absolute;left:13px;top:16px;z-index:1;color:#3b83ce;width:18px;height:18px}
#rtp-global .rtp__start-field input {padding:0 13px 0 42px}
#rtp-global .rtp__field-help {display:block;font-size:11px;line-height:1.5;margin-top:7px;color:#7c91a6}
#rtp-global .rtp__explore-button {margin:0!important;width:100%;min-height:50px;height:auto;display:inline-flex;justify-content:center;align-items:center;gap:9px;border:0;background:#1469c9;color:#fff;border-radius:10px;padding:11px 15px;font-size:13px;font-weight:800;box-shadow:none}
#rtp-global .rtp__explore-button:hover {background:#0d55a9}
#rtp-global .rtp__explore-button:focus-visible {outline:3px solid #bddbff;outline-offset:2px}
#rtp-global .rtp__setup-hint {display:flex;align-items:flex-start;gap:8px;border-top:1px solid #edf1f5;margin:19px 0 0;padding:15px 0 0;font-size:12px;line-height:1.55;color:#688198}
#rtp-global .rtp__setup-hint .rtp-icon {flex:0 0 17px;color:#1672ce;width:17px;height:17px}

/* The actual map takes the place of the decorative hero graphic. */
#rtp-global .rtp__map-card {overflow:hidden;padding:0!important;z-index:1}
#rtp-global .rtp__map-title {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px 15px;margin:0;min-width:0}
#rtp-global .rtp__map-title h2 {font-size:21px;color:var(--work-ink);font-weight:800;letter-spacing:-.02em;margin:5px 0 3px}
#rtp-global .rtp__map-title p {color:var(--work-quiet);font-size:12px;line-height:1.5;margin:0}
#rtp-global .rtp__map-fit {flex-shrink:0;font-size:12px;border-radius:9px}
#rtp-global .rtp__map-wrap {position:relative;min-width:0;margin:0!important;overflow:hidden}
#rtp-global #rtp-map {height:500px!important;min-height:500px!important;width:100%;z-index:0;background:#eaf0f6}
#rtp-global .rtp__map-footer {display:flex;align-items:center;justify-content:space-between;gap:9px;padding:11px 17px;font-size:10px;color:#7f93a8;border-top:1px solid #e6edf5}
#rtp-global .rtp__map-ctrl {z-index:500}

/* Route ideas: never a huge empty bordered slab. */
#rtp-global .rtp__curated {padding:21px 21px 17px;z-index:3}
#rtp-global .rtp__curated-head {display:flex;align-items:start;justify-content:space-between;gap:12px}
#rtp-global .rtp__curated-head h2 {font-size:19px;font-weight:800;letter-spacing:-.02em;color:var(--work-ink);margin:7px 0 5px}
#rtp-global .rtp__curated-head p {color:var(--work-quiet);font-size:12px;line-height:1.5;margin:0}
#rtp-global .rtp__route-count {font-size:11px;white-space:normal;text-align:right}
#rtp-global #rtp-curated-list {display:flex;flex-direction:column;gap:10px;max-height:380px;overflow:auto;overscroll-behavior:contain;padding:2px 5px 2px 0;margin-top:15px}
#rtp-global .rtp__route-card {padding:14px;border:1px solid #e0eaf3;border-radius:11px;box-shadow:none;background:#fbfdff}
#rtp-global .rtp__route-card h3 {font-size:14px;line-height:1.4;color:#203d58}
#rtp-global .rtp__route-card p {font-size:12px;line-height:1.55;color:#688199}
#rtp-global .rtp__route-card-foot {display:flex;gap:7px;align-items:center;justify-content:space-between}
#rtp-global .rtp__route-pick {border-radius:8px;font-size:12px}
#rtp-global .rtp__curated-empty {border:1px dashed #d3e2f1;border-radius:11px;padding:15px 13px;background:#f7fbff;font-size:12px;line-height:1.5;color:#688199;margin:0!important}
#rtp-global .rtp__curated-hint {display:flex;align-items:flex-start;gap:7px;font-size:11px;color:#8799ab;line-height:1.5;padding:9px 0 0;margin:7px 0 0!important}
#rtp-global .rtp__curated-hint .rtp-icon {flex:0 0 14px;width:14px;height:14px}

/* Compact trip summary, no fictional values. */
#rtp-global .rtp__overview {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important;align-self:stretch}
#rtp-global .rtp__metric {display:flex;gap:12px;align-items:start;min-width:0;padding:16px!important;margin:0!important;background:#fff;box-shadow:none;border:1px solid var(--work-border);border-radius:14px}
#rtp-global .rtp__metric--highlight {border-color:#c7dcf4;background:#f0f7ff}
#rtp-global .rtp__metric-icon {flex:0 0 39px;width:39px;height:39px;display:inline-flex;justify-content:center;align-items:center;border-radius:10px;background:#edf5fd;color:#1c70c6}
#rtp-global .rtp__metric small {font-weight:800;font-size:10px;letter-spacing:.09em;color:#64819a}
#rtp-global .rtp__metric strong {font-size:23px;color:#14314d;overflow-wrap:anywhere}
#rtp-global .rtp__metric span:not(.rtp__metric-icon) {font-size:11px}

/* Working panels: visually quieter than primary country/map controls. */
#rtp-global .rtp__builder {overflow:hidden}
#rtp-global .rtp__builder-head {background:#f6faff!important;color:var(--work-ink)!important;padding:23px 23px 18px;border-bottom:1px solid #dce8f4}
#rtp-global .rtp__builder-head h2 {color:var(--work-ink);font-weight:800;font-size:21px;line-height:1.25;margin:6px 0 6px}
#rtp-global .rtp__builder-head p {color:var(--work-quiet);font-size:12px;line-height:1.6;margin:0}
#rtp-global .rtp__builder-content {padding:18px 20px 20px}
#rtp-global .rtp__builder .rtp__stop-header {display:flex;gap:6px;justify-content:space-between;align-items:center}
#rtp-global .rtp__builder .rtp__stops {padding-left:0}
#rtp-global .rtp__details .rtp__detail-panel {width:100%;min-width:0;overflow:hidden;padding:22px!important}
#rtp-global .rtp__panel-title h3 {font-size:21px;font-weight:800;letter-spacing:-.025em;color:var(--work-ink);margin:7px 0 0}
#rtp-global .rtp__detail-panel .rtp__pane-eyebrow {font-size:10px}
#rtp-global .rtp__tip-card {display:flex;gap:10px;padding:19px!important;background:#f4f9ff}
#rtp-global .rtp__tip-card h3 {color:var(--work-ink);font-size:16px;margin:5px 0 5px}
#rtp-global .rtp__tip-card p {color:#67819a;font-size:12px;line-height:1.6}
#rtp-global .rtp__save {padding:22px!important;overflow:hidden;background:linear-gradient(125deg,#0d3f7b,#176abf);color:#fff;border-color:transparent}
#rtp-global .rtp__save .rtp__pane-eyebrow {color:#bee1ff}
#rtp-global .rtp__save h3 {font-size:21px;color:#fff;margin:7px 0}
#rtp-global .rtp__save p {color:#e0efff;font-size:12px;line-height:1.55}
#rtp-global .rtp__save .rtp__primary {display:flex;align-items:center;justify-content:center;gap:10px;min-height:47px;margin:15px 0 12px;border-radius:9px;background:#ffe07a;color:#163250;font-weight:800}
#rtp-global .rtp__save-actions {display:grid;grid-template-columns:1fr 1fr;gap:9px}
#rtp-global .rtp__save-actions button {min-height:42px;border:1px solid #74a3d2;border-radius:9px;background:rgba(255,255,255,.07);color:#fff;font-size:12px}
#rtp-global .rtp__foot {margin:28px 0 0;color:#8999a9;text-align:center;font-size:11px}
#rtp-global [disabled] {cursor:not-allowed}

@media (max-width:1050px) {
  #rtp-global .rtp__app-shell {grid-template-columns:minmax(280px,335px) minmax(0,1fr);gap:16px;}
  #rtp-global .rtp__intro-features {display:none}
  #rtp-global .rtp__intro {grid-template-columns:1fr}
  #rtp-global .rtp__overview {grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #rtp-global .rtp__metric {gap:7px;padding:13px!important}
  #rtp-global .rtp__metric-icon {flex-basis:32px;width:32px;height:32px}
  #rtp-global .rtp__metric strong {font-size:19px}
}
@media (max-width:870px) {
  #rtp-global .rtp__container {width:min(760px,calc(100% - 30px));padding:24px 0 48px}
  #rtp-global .rtp__app-shell {display:grid;grid-template-columns:minmax(0,1fr)!important;grid-template-areas:'setup' 'map' 'routes' 'metrics' 'builder' 'details' 'tips' 'save';gap:15px}
  #rtp-global .rtp__launch {padding:23px!important}
  #rtp-global .rtp__launch-fields {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end!important;gap:13px}
  #rtp-global .rtp__explore-button {grid-column:1/-1}
  #rtp-global #rtp-map {height:380px!important;min-height:380px!important}
  #rtp-global #rtp-curated-list {max-height:350px}
}
@media (max-width:540px) {
  #rtp-global .rtp__container {width:calc(100% - 24px);padding:19px 0 40px}
  #rtp-global .rtp__intro {padding:3px 1px 22px}
  #rtp-global .rtp__intro h1 {font-size:32px;line-height:1.15}
  #rtp-global .rtp__intro p {font-size:13px;line-height:1.65}
  #rtp-global .rtp__launch-fields {display:flex!important;flex-direction:column;gap:15px;align-items:stretch!important}
  #rtp-global .rtp__launch,#rtp-global .rtp__curated {padding:20px!important}
  #rtp-global .rtp__map-title {padding:17px;gap:9px}
  #rtp-global .rtp__map-title h2 {font-size:18px}
  #rtp-global .rtp__map-fit {font-size:11px;padding:8px}
  #rtp-global #rtp-map {height:340px!important;min-height:340px!important}
  #rtp-global .rtp__overview {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  #rtp-global .rtp__metric {display:block;padding:13px!important}
  #rtp-global .rtp__metric-icon {margin:0 0 7px}
  #rtp-global .rtp__metric strong {font-size:19px}
  #rtp-global .rtp__details .rtp__detail-panel {padding:17px!important}
}
@media (max-width:340px) {
  #rtp-global .rtp__overview {grid-template-columns:1fr!important}
  #rtp-global .rtp__save-actions {grid-template-columns:1fr}
}
/* Keep the SVG sprite out of layout even if the older stylesheet is not cached. */
#rtp-global > .rtp__sprite {position:absolute!important;width:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important}
/* Route builder controls use the same visual language as the country form. */
#rtp-global .rtp__builder-content .rtp__stop-header h4 {font-size:13px;font-weight:800;color:#213d59}
#rtp-global .rtp__clear-route {font-size:11px;font-weight:700;color:#a14a4a;background:transparent;border:0;padding:7px;cursor:pointer}
#rtp-global .rtp__stops {list-style:none;margin:12px 0 20px;padding:0}
#rtp-global .rtp__stops .rtp__empty-stop {list-style:none;padding:14px;border:1px dashed #cddfe9;border-radius:9px;color:#778ea4;background:#f8fbfe;font-size:12px;line-height:1.5}
#rtp-global .rtp__search {position:relative;margin-top:14px}
#rtp-global .rtp__search > label {display:block;font-size:12px;color:#345673;font-weight:800;margin-bottom:7px}
#rtp-global .rtp__search-box {display:flex;align-items:center;gap:9px;border:1px solid #cedceb;border-radius:9px;background:#fff;padding:0 12px;min-height:45px}
#rtp-global .rtp__search-box .rtp-icon {flex:0 0 17px;width:17px;height:17px;color:#4684bd}
#rtp-global .rtp__search-box input {width:100%;height:43px;min-width:0;border:0;outline:none;padding:0;font:inherit;font-size:13px;color:#183b5b;box-shadow:none;background:transparent}
#rtp-global .rtp__search-status {display:block;color:#8398a9;font-size:11px;line-height:1.6;margin-top:6px}
#rtp-global .rtp__route-type {padding:16px 0;margin-top:16px;border-top:1px solid #ecf0f5}
#rtp-global .rtp__route-type > span {display:block;font-size:12px;font-weight:800;color:#315371;margin-bottom:8px}
#rtp-global .rtp__segment {display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#eff4f9;border-radius:9px;padding:4px}
#rtp-global .rtp__segment button {cursor:pointer;min-height:36px;border:0;border-radius:7px;background:transparent;color:#64819e;font-size:12px;font-weight:750}
#rtp-global .rtp__segment button.is-active {background:#fff;color:#105bb1;box-shadow:0 1px 6px rgba(13,59,99,.08)}
#rtp-global .rtp__comfort {display:flex;gap:10px;align-items:center;justify-content:space-between;margin:6px 0 17px}
#rtp-global .rtp__comfort label {font-size:12px;font-weight:700;color:#506d87}
#rtp-global .rtp__comfort select {max-width:175px;width:auto;min-height:39px;border:1px solid #d2e0ee;border-radius:8px;background:#fff;color:#335874;padding:7px;font-size:12px}
#rtp-global .rtp__builder-bottom {display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #eaf0f5;padding-top:14px}
#rtp-global .rtp__builder-bottom button {display:inline-flex;gap:6px;align-items:center;background:#f5f9fd;border:1px solid #d8e6f2;border-radius:8px;padding:8px 10px;color:#3b6e9a;font-size:12px}
#rtp-global .rtp__builder-bottom small {font-size:10px;color:#9aa8b8}
#rtp-global .rtp__tune-grid input, #rtp-global .rtp__tune-grid select {max-width:100%;border:1px solid #d4e1ee;border-radius:8px;background:#fff;min-height:38px;padding:7px;color:#32516c;font:inherit;font-size:12px}
