@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f7f7f2;--white:#fff;--ink:#243d35;--body:#65706a;--line:#e0e4da;--orange:#c15c3c;--light-orange:#fbefe7;--sage:#eaf0e4;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:26px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 var(--sans);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,select,input{touch-action:manipulation}button,a,select,textarea,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}svg:not(.leaflet-zoom-animated){width:19px;height:19px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{outline:3px solid #c15c3c;outline-offset:4px}button:disabled{cursor:default}button{border:0;background:none}.site-header{height:100px;border-bottom:1px solid var(--line);max-width:1600px;margin:auto;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{font-family:var(--serif);font-size:36px;letter-spacing:-1.7px;display:flex;align-items:center;font-weight:400;line-height:1}.brand-mark{margin-right:11px;display:flex;align-items:center}.brand-mark svg{width:29px;height:29px;stroke-width:1.35}.brand-period{color:var(--orange)}nav{display:flex;align-items:center;gap:29px;margin-left:58px;height:100%}.nav-link{font-size:13px;color:var(--body);height:100%;display:flex;align-items:center;position:relative}.nav-link:hover,.nav-link.active{color:var(--ink)}.nav-link.active:after{content:'';position:absolute;bottom:25px;height:2px;left:0;right:0;background:var(--ink)}.header-actions{display:flex;align-items:center;gap:24px}.draft-status{font-size:11px;color:var(--body);white-space:nowrap;display:flex;gap:7px;align-items:center}.draft-status i{height:6px;width:6px;background:#80916f;border-radius:50%}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:10px 15px;border-radius:5px;font-weight:500;font-size:12px;transition:background .15s}.button svg{width:16px;height:16px}.button-outline{border:1px solid #cdd5c8;background:transparent}.button-outline:hover{background:#eaf0e4}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:#35564a}main{max-width:1380px;padding:0 38px;margin:auto}.hero{display:flex;align-items:center;justify-content:space-between;gap:60px;padding:58px 0 49px}.eyebrow{font-size:10px;line-height:1.5;letter-spacing:1.7px;font-weight:600;margin:0 0 14px;color:#637064;display:flex;align-items:center;gap:9px}.tiny-line{width:25px;height:1px;display:inline-block;background:var(--orange)}h1{font-family:var(--serif);font-size:79px;line-height:.99;font-weight:400;letter-spacing:-2.3px;margin:24px 0 20px;position:relative}h1 em{color:var(--orange);font-weight:400}h1 .hero-star{color:var(--orange);font:52px/1 var(--serif);display:inline-block;transform:rotate(8deg);margin-left:18px;vertical-align:15px}.hero-copy{color:var(--body);font-size:13px;line-height:1.85;margin:0}.trip-overview{width:343px;flex:none;margin-right:3px;padding:25px 24px 21px;background:#eeefe5;border:1px solid #e3e6d9;border-radius:7px;position:relative}.overview-top{display:flex;align-items:center;gap:8px;margin-bottom:24px;font-size:10px;font-weight:600;letter-spacing:1.4px}.overview-top>span:first-child{display:flex}.overview-top svg{width:17px;height:17px}.pill{margin-left:auto;background:#f7f7ef;border:1px solid #dfe4d6;padding:3px 8px;border-radius:4px;font-size:9px;letter-spacing:0;font-weight:400;color:#6e7a64}.trip-overview>label{font-size:11px;color:#697461;display:block;margin-bottom:3px}.arrival-wrap{position:relative}.arrival-wrap select{appearance:none;background:transparent;border:0;border-bottom:1px dashed #aeb9a2;width:100%;font-size:23px;letter-spacing:-.8px;font-family:var(--serif);color:var(--ink);padding:0 25px 8px 0;cursor:pointer}.arrival-wrap>span{position:absolute;right:0;top:6px;pointer-events:none}.arrival-wrap svg{width:16px;height:16px}.trip-stats{margin-top:19px;display:flex;justify-content:space-between;font-size:10px;color:#6b7862}.trip-stats b{font-weight:600;color:#2f493e;margin-right:3px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:21px;gap:20px}.section-heading .eyebrow{margin-bottom:7px;font-size:9px;letter-spacing:1.6px}h2{font-family:var(--serif);font-size:31px;letter-spacing:-.45px;font-weight:400;line-height:1.15;margin:0}.section-hint{display:flex;align-items:center;gap:6px;font-size:11px;color:#7c847a;padding-bottom:3px}.section-hint svg{height:15px;width:15px}.route-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:19px;gap:0;background:#fdfdf9;border:1px solid var(--line);border-radius:6px;overflow:hidden}.route-stop{padding:17px 18px;display:flex;gap:13px;align-items:center;text-align:left;position:relative;border-right:1px solid var(--line);min-width:0;transition:background .18s}.route-stop:last-child{border-right:0}.route-stop:hover{background:#f0f2e9}.route-stop.selected{background:#f9eee5}.route-number{border:1px solid #d6dece;border-radius:50%;height:32px;width:32px;flex:none;display:flex;align-items:center;justify-content:center;font-size:11px;color:#788569}.route-number svg{height:16px;width:16px}.selected .route-number{background:var(--orange);border-color:var(--orange);color:#fff}.route-stop-info{min-width:0}.route-stop-name{display:block;font-size:13px;font-weight:550;white-space:nowrap}.route-stop-meta{font-size:10px;color:#8a8e83;display:block;margin-top:2px;white-space:nowrap}.selected .route-stop-name{color:#a54b31}.route-arrow{margin-left:auto;color:#acb4a5}.route-arrow svg{width:14px;height:14px}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:0;border:1px solid #d8ded2;border-radius:7px;overflow:hidden;min-height:456px;background:#fff}.map-frame{position:relative;min-width:0;background:#e9eee2;isolation:isolate}#map{height:100%;min-height:456px;z-index:0;background:#e7ecde}.map-topbar{position:absolute;top:18px;left:18px;right:18px;display:flex;justify-content:space-between;gap:10px;z-index:600;pointer-events:none}.map-badge,.map-reset{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 11px;background:#fffffff2;border:1px solid #dce1d6;border-radius:4px;box-shadow:0 2px 5px #31402d09;font-size:9px;font-weight:600;letter-spacing:1px;pointer-events:auto}.map-badge svg{height:14px;width:14px}.map-reset{font-size:10px;font-weight:500;letter-spacing:0}.map-reset:hover{background:#f2f4ea}.map-reset svg{width:13px;height:13px}.map-legend{position:absolute;bottom:27px;left:18px;z-index:600;display:flex;align-items:center;gap:8px;font-size:9px;color:#58674f;background:#fffffff0;padding:6px 9px;border-radius:3px}.legend-dash{width:21px;height:0;border-top:2px dashed var(--orange)}.leaflet-tile-pane{filter:saturate(.52) contrast(.94)}.leaflet-control-zoom{border:1px solid #d7ddce!important;box-shadow:0 2px 5px #31402d09!important;margin-bottom:58px!important;margin-right:18px!important;border-radius:4px!important;overflow:hidden}.leaflet-control-zoom a{color:#42523e!important;background:#fffefa!important;font:20px/30px var(--sans)!important;width:29px!important;height:30px!important}.leaflet-control-attribution{font:9px/1.5 var(--sans)!important;background:#ffffffcf!important;color:#677060!important}.leaflet-control-attribution a{color:#536d4c!important}.leaflet-tooltip.destination-label{background:#fffffff2;border:1px solid #d9e0d0;color:#354b3d;padding:4px 8px;font:500 10px var(--sans);box-shadow:0 1px 4px #243b2720;border-radius:4px;white-space:nowrap}.leaflet-tooltip.destination-label:before{display:none}.map-marker{height:30px;width:30px;border-radius:50%;border:3px solid #fff;background:#52684e;color:#fff;box-shadow:0 2px 6px #213d3a30;display:flex;align-items:center;justify-content:center;font:600 10px var(--sans)}.map-marker.active{background:var(--orange);outline:5px solid #c15c3c20}.map-marker svg{width:14px;height:14px}.stop-panel{padding:25px 25px 21px;border-left:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.stop-kicker{font-size:9px;letter-spacing:1.7px;color:#839078;display:flex;align-items:center;gap:7px;margin-bottom:9px}.stop-kicker>span{color:#a8b39b}.stop-panel h3{font:39px/1.05 var(--serif);letter-spacing:-.6px;font-weight:400;margin:0 0 8px}.stop-panel .description{font-size:11px;line-height:1.8;color:#76806f;margin:14px 0 19px}.date-edit{display:flex;align-items:center;gap:5px;color:#869078;font-size:10px;padding:0}.date-edit svg{height:12px;width:12px}.date-edit:hover{color:var(--orange)}.incoming-card{padding:14px;background:#f5f6f0;border:1px solid #e8ebe0;border-radius:5px}.incoming-heading{display:flex;align-items:center;gap:7px;font-size:9px;font-weight:500;letter-spacing:1px;color:#67735e;margin-bottom:14px}.incoming-heading svg{height:14px;width:14px}.station-list{position:relative;padding-left:19px;margin-bottom:13px}.station-list:before{content:'';position:absolute;left:4px;top:7px;bottom:7px;border-left:1px dashed #adb6a0}.station{position:relative;font-size:10px;line-height:1.7;margin:0 0 12px}.station:before{content:'';position:absolute;left:-18px;top:5px;height:5px;width:5px;border:1px solid #809070;background:#fff;border-radius:50%}.station:last-child{margin-bottom:0;font-weight:550}.station:last-child:before{background:var(--orange);border-color:var(--orange)}.leg-meta{display:flex;gap:8px;font-size:9px;align-items:center;color:#64715b}.leg-meta span+span:before{content:'·';margin-right:8px}.leg-note{font-size:9px;line-height:1.75;color:#88917e;margin:8px 0 0}.train-link{font-size:10px;font-weight:550;display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:10px;border-top:1px solid #dde3d4}.train-link svg{height:12px;width:12px}.train-link:hover{color:var(--orange)}.stop-panel-bottom{padding-top:17px;margin-top:auto;display:flex;align-items:center;justify-content:space-between}.stop-tag{font-size:9px;font-style:italic;font-family:Georgia,serif;color:#9b735e}.explore-stop{display:flex;align-items:center;gap:4px;font-size:9px}.explore-stop svg{width:13px;height:13px}.route-footnote{font-size:10px;color:#8a9281;display:flex;align-items:center;gap:7px;margin-top:11px}.route-footnote svg{width:12px;height:12px;flex:none}.ideas-section{padding-top:45px}.saved-count{font-size:10px;background:#ecefe4;color:#75816b;border:1px solid #dde4d4;padding:4px 9px;border-radius:4px}.idea-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.idea-card{background:#fdfdf9;border:1px solid var(--line);padding:21px 21px 17px;border-radius:6px;display:flex;flex-direction:column;min-height:218px}.idea-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.idea-icon{height:36px;width:36px;display:flex;align-items:center;justify-content:center;border-radius:5px;background:#eff1e5;color:#83906b}.idea-card:nth-child(2) .idea-icon{background:#f4ece3;color:#ae8b63}.idea-card:nth-child(3) .idea-icon{background:#eaf0eb;color:#729384}.idea-category{font-size:8px;letter-spacing:1.2px;text-transform:uppercase;color:#929984}.idea-card h3{font:24px/1.12 var(--serif);font-weight:400;letter-spacing:-.3px;margin:0 0 9px}.idea-card p{font-size:11px;line-height:1.8;color:#7b8475;margin:0 0 18px;max-width:310px}.idea-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto}.source-link{font-size:9px;color:#8a927f;display:flex;align-items:center;gap:5px}.source-link:hover{color:var(--orange)}.source-link svg{width:11px;height:11px}.save-idea{font-size:10px;display:flex;align-items:center;gap:5px;color:#637457;padding:4px 0 4px 6px}.save-idea svg{width:13px;height:13px}.save-idea[aria-pressed=true]{color:var(--orange)}.save-idea[aria-pressed=true] svg{fill:#c15c3c18}.planning-section{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:25px}.planning-card{border:1px solid var(--line);border-radius:6px;padding:23px;background:#fdfdf9;min-width:0}.card-title{display:flex;align-items:center;gap:12px;margin-bottom:21px}.icon-tile{height:35px;width:35px;background:#eff1e8;border-radius:5px;display:flex;align-items:center;justify-content:center;flex:none;color:#819171}.icon-tile svg{width:17px;height:17px}.card-title .eyebrow{font-size:8px;margin-bottom:4px;letter-spacing:1.2px}.card-title h2{font-size:25px}.count-badge{font-size:10px;color:#87917b;margin-left:auto}.check-item{display:flex;align-items:flex-start;gap:10px;font-size:11px;color:#6f7c64;padding:10px 0;border-bottom:1px solid #edf0e6;cursor:pointer}.check-item input{appearance:none;width:14px;height:14px;margin:2px 0 0;border:1px solid #cdd5bf;border-radius:3px;flex:none;cursor:pointer}.check-item input:checked{background:#536f4e;border-color:#536f4e}.check-item input:checked:after{content:'✓';color:#fff;display:block;font-size:11px;line-height:12px;text-align:center}.check-item:has(input:checked)>span{text-decoration:line-through;color:#9ca592}.local-hint{font-size:9px;color:#939c86;display:flex;align-items:center;gap:6px;margin:16px 0 0}.local-hint svg{width:11px;height:11px}.save-status{font-size:9px;margin-left:auto;color:#8b977e;white-space:nowrap}textarea{width:100%;height:119px;display:block;resize:vertical;border:0;background:repeating-linear-gradient(transparent,transparent 29px,#e6eadf 29px,#e6eadf 30px);line-height:30px;font-size:11px;color:#64745b;padding:0;border-radius:0}textarea::placeholder{color:#a2a995;font-style:italic}.notes-bottom{margin-top:15px;display:flex;justify-content:space-between;gap:12px;font-size:8px;color:#929c84}.planning-reminder{display:flex;align-items:center;justify-content:center;gap:11px;background:#edf0e4;border:1px solid #e3e8d8;border-radius:5px;padding:15px;margin:27px 0 43px;font-size:10px;color:#7d8a6e}.planning-reminder>span{display:flex}.planning-reminder strong{font-weight:550;color:#617253}.planning-reminder svg{width:17px;height:17px}footer{max-width:1304px;margin:0 auto 25px;padding:22px 0 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;color:#8d9682}.footer-brand{font-size:25px;color:#586a4f}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 20px;z-index:2000;border-radius:5px;box-shadow:0 5px 20px #243d3525;font-size:12px;max-width:90vw;text-align:center}.map-error{position:absolute;left:20px;right:20px;top:75px;z-index:650;background:#fff5e9;border:1px solid #debda3;padding:14px;font-size:11px;border-radius:5px}.map-error button{text-decoration:underline}.skip-link{position:fixed;top:-60px;left:10px;padding:10px;background:white;z-index:3000}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:30px;width:min(470px,calc(100% - 32px));box-shadow:0 30px 100px #243d3520;background:var(--paper)}dialog::backdrop{background:#14281f5c;backdrop-filter:blur(3px)}dialog h2{font-size:32px;margin:6px 0 12px}dialog p:not(.eyebrow){font-size:12px;color:var(--body)}.dialog-heading{display:flex;justify-content:space-between;align-items:center}.dialog-heading .eyebrow{margin:0}.icon-button{font-size:25px;line-height:1;padding:0 4px}.date-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:23px 0 10px}.date-fields label{display:flex;flex-direction:column;gap:8px;font-size:11px}.date-fields input{background:#fff;border:1px solid #cfd7c6;border-radius:4px;padding:10px;min-width:0;color:var(--ink)}.date-error{color:#a83f2d!important;min-height:19px}.dialog-actions{display:flex;justify-content:space-between;gap:10px;margin-top:20px}.noscript{position:fixed;bottom:0;left:0;right:0;padding:20px;background:#fce5cf;z-index:1000;text-align:center}
.flight-route{display:flex;justify-content:space-between;align-items:center;gap:15px}.flight-route>div{display:flex;flex-direction:column}.flight-city{font-size:11px;color:#617059;white-space:nowrap}.flight-city small{font-size:8px;color:#8d987d;margin-left:3px}.flight-route strong{font:34px/1.4 var(--serif);font-weight:400;letter-spacing:-.4px}.flight-zone{font-size:8px;color:#89947a}.flight-line{color:#8b9b78}.flight-line svg{width:26px;height:26px}.flight-note{font-size:8px;color:#8a947e;margin:14px 0 0;padding-bottom:12px;border-bottom:1px solid #d9e0ce}.trip-overview .trip-stats{margin-top:12px}.arrival-alert{margin:10px 0 0;color:#a4704f;font-size:9px;line-height:1.65}.date-static{display:flex;align-items:center;gap:6px;font-size:10px;color:#7f8b71}.date-static svg{width:12px;height:12px}
@media(min-width:1500px){.site-header{padding:0 8%}main{padding:0 38px}.hero{padding-top:66px;padding-bottom:57px}.map-layout,#map{min-height:490px}}
@media(max-width:1100px){.site-header{padding:0 30px;gap:20px}nav{margin-left:0;gap:20px}.draft-status{display:none}main{padding:0 30px}.hero{gap:30px}h1{font-size:70px}.trip-overview{width:300px}.map-layout{grid-template-columns:minmax(0,1fr) 305px}.stop-panel{padding:23px 21px}.route-stop{padding:15px 13px;gap:9px}.route-stop-name{font-size:12px}.route-arrow{display:none}.idea-category{font-size:7px;letter-spacing:.7px}.notes-bottom>span:last-child{display:none}footer{margin:0 30px 25px}}
@media(max-width:800px){.site-header{height:78px;padding:0 22px}.brand{font-size:31px}.brand-mark svg{width:25px;height:25px}nav{gap:19px}nav a{font-size:11px!important}.nav-link.active:after{bottom:14px}.header-actions{gap:0}.export-button{padding:8px}.export-button>span:last-child{display:none}main{padding:0 22px}.hero{padding:39px 0 36px;gap:25px;align-items:start}h1{font-size:58px;margin-top:18px;letter-spacing:-1.3px}.hero-star{font-size:35px!important;margin-left:11px!important;vertical-align:13px!important}.hero-copy{font-size:11px}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.trip-overview{width:250px;padding:20px 18px;margin-top:15px}.overview-top{font-size:8px;letter-spacing:.8px;margin-bottom:20px}.arrival-wrap select{font-size:21px}.trip-stats{font-size:8px}.section-hint{display:none}h2{font-size:29px}.route-stop{padding:12px 10px;gap:7px}.route-number{height:26px;width:26px;font-size:9px}.route-stop-name{font-size:10px}.route-stop-meta{font-size:8px}.map-layout{grid-template-columns:minmax(0,1fr) 270px;min-height:465px}.stop-panel{padding:22px 18px}.stop-panel h3{font-size:34px}.stop-panel .description{font-size:10px}.map-legend{font-size:8px;left:12px}.legend-sub{display:none}.map-topbar{left:12px;right:12px;top:12px}.map-badge{font-size:7px;padding:8px}.map-badge svg{display:none}.map-reset{font-size:9px;padding:7px}.idea-cards{gap:11px}.idea-card{padding:16px 14px}.idea-category{max-width:80px;text-align:right;line-height:1.6}.idea-card h3{font-size:23px}.planning-card{padding:18px}.card-title .eyebrow{font-size:7px}.card-title h2{font-size:23px}.save-status{font-size:8px}.icon-tile{height:29px;width:29px}.card-title{gap:9px}.planning-reminder{font-size:9px}.planning-reminder>div>span{display:block}footer{margin-left:22px;margin-right:22px}footer>span:last-child{display:none}}
@media(max-width:600px){.site-header{padding:0 19px;height:73px}.brand{font-size:30px}.brand-mark{margin-right:7px}.brand-mark svg{width:23px}nav{gap:16px;margin-left:auto;margin-right:6px}nav .nav-link:nth-child(2){display:none}.nav-link{font-size:10px!important}.header-actions .button{padding:7px;border:0}.hero{flex-direction:column;padding-top:31px;gap:23px}h1{font-size:66px;line-height:1.01;margin-top:18px}.hero-copy{font-size:12px}.hero-star{font-size:37px!important;vertical-align:16px!important}.trip-overview{width:100%;margin:0;padding:17px 19px}.overview-top{margin-bottom:12px;font-size:9px}.trip-overview>label{font-size:10px}.arrival-wrap select{font-size:24px}.trip-stats{font-size:10px;margin-top:13px}.pill{font-size:9px}.section-heading{margin-bottom:17px;gap:10px}.section-heading .eyebrow{font-size:8px}h2{font-size:29px}.route-strip{grid-template-columns:1fr 1fr;margin-bottom:14px}.route-stop{padding:12px;gap:10px}.route-stop:nth-child(2){border-right:0}.route-stop:nth-child(-n+2){border-bottom:1px solid var(--line)}.route-stop-name{font-size:12px}.route-stop-meta{font-size:9px}.route-number{height:29px;width:29px}.map-layout{grid-template-columns:1fr}.map-frame,#map{height:355px;min-height:355px}.map-badge{font-size:8px}.map-badge svg{display:block}.map-reset{font-size:10px}.map-legend{font-size:8px;bottom:24px}.stop-panel{border-left:0;border-top:1px solid var(--line);padding:23px}.stop-panel h3{font-size:37px}.stop-panel .description{font-size:12px;margin:12px 0 17px}.stop-kicker{font-size:9px}.date-edit{font-size:11px}.incoming-card{padding:17px}.station{font-size:12px}.incoming-heading{font-size:9px}.leg-meta,.leg-note{font-size:10px}.train-link{font-size:11px}.stop-tag,.explore-stop{font-size:10px}.route-footnote{align-items:start;font-size:9px;line-height:1.6}.route-footnote svg{margin-top:2px}.ideas-section{padding-top:35px}.saved-count{font-size:9px;white-space:nowrap}.idea-cards{grid-template-columns:1fr;gap:12px}.idea-card{padding:20px;min-height:0}.idea-top{margin-bottom:12px}.idea-category{font-size:8px;max-width:none}.idea-card h3{font-size:27px}.idea-card p{font-size:12px;max-width:none;margin-bottom:15px}.save-idea,.source-link{font-size:10px}.planning-section{grid-template-columns:1fr;gap:14px;margin-top:20px}.planning-card{padding:21px}.card-title .eyebrow{font-size:8px}.card-title h2{font-size:27px}.check-item{font-size:12px}.local-hint,.save-status{font-size:9px}.notes-bottom{font-size:9px}textarea{font-size:12px;height:124px}.planning-reminder{align-items:start;justify-content:start;font-size:10px;padding:16px;margin-bottom:30px}.planning-reminder svg{margin-top:3px}.planning-reminder>div>span{margin-top:4px}footer{font-size:8px;gap:10px;padding-top:19px}.footer-brand{font-size:24px}.dialog-actions .button{font-size:11px;padding:10px 12px}dialog{padding:24px}.date-fields{gap:10px}.date-fields input{font-size:12px;padding:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
.stop-reminder{display:flex;gap:12px;align-items:flex-start;background:#f2efe4;border:1px solid #e8e3d3;padding:15px 19px;border-radius:5px;margin-top:22px;color:#8c8164;font-size:10px}.reminder-icon{display:flex;flex:none;margin-top:2px}.reminder-icon svg{height:15px;width:15px}.stop-reminder strong{font-size:10px;font-weight:550;color:#817456}.stop-reminder p{margin:3px 0 0;line-height:1.8}.stop-reminder a{white-space:nowrap;text-decoration:underline;text-underline-offset:3px;margin-left:4px}.stop-reminder a svg{height:10px;width:10px}.stop-reminder+.ideas-section{padding-top:32px}
/* The longer itinerary stays visible as a compact, numbered route board. */
.route-summary{display:flex;justify-content:space-between;gap:16px;margin:-3px 0 15px;color:#849076;font-size:10px}.route-summary strong{color:#617456;font-weight:550}.route-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.route-strip .route-stop{border:0;background:#fdfdf9;padding:14px 18px}.route-strip .route-stop:hover{background:#eff2e8}.route-strip .route-stop.selected{background:#f9eee5}.route-stop-meta{white-space:normal}.map-layout{min-height:490px}.map-frame #map{min-height:490px}.map-legend{gap:7px}.rail-legend{border-color:#6d8065}.flight-legend{border-color:#447ea0;margin-left:5px}.leg-mode{font-size:9px;color:#7d896f;margin:-4px 0 12px}.leg-meta{flex-wrap:wrap;row-gap:3px}.flight-card{background:#f0f5f8;border-color:#dce7ed}.flight-card .incoming-heading,.flight-card .leg-mode,.flight-card .train-link{color:#4d7790}.flight-card .station:last-child:before{background:#447ea0;border-color:#447ea0}.stop-date-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.stay-badge{border:1px solid #e2e7d8;color:#7a8969;border-radius:3px;font-size:8px;padding:2px 6px;white-space:nowrap}.date-fields input[readonly]{background:#edf0e6;color:#6a7c5a}.stop-panel .description{margin-bottom:17px}.route-footnote{line-height:1.8}#footer-route{max-width:45%;text-align:right;font-size:8px}
@media(max-width:800px){.route-summary{font-size:9px}.route-summary>span:last-child{max-width:180px;text-align:right}.route-strip .route-stop{padding:13px 12px}.map-legend .legend-sub{display:none}.map-layout{grid-template-columns:minmax(0,1fr) 285px}.map-legend{font-size:8px}.map-frame #map{min-height:490px}}
@media(max-width:600px){.route-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.route-strip .route-stop{padding:12px}.route-strip .route-stop:last-child{grid-column:1/-1}.route-summary{display:block;font-size:10px;line-height:1.8}.route-summary>span{display:block}.route-summary>span:last-child{max-width:none;text-align:left;font-size:9px}.map-layout{grid-template-columns:1fr;min-height:0}.map-frame,.map-frame #map{height:390px;min-height:390px}.map-legend{font-size:8px;left:9px;padding:6px}.map-legend .legend-dash{width:16px}.stop-panel .description{margin-bottom:17px}.stay-badge{font-size:9px}.leg-mode{font-size:10px}}
.journey-date{display:flex;align-items:flex-start;gap:6px;font-size:9px;line-height:1.6;color:#8b7258;margin:0 0 12px}.journey-date svg{height:12px;width:12px;flex:none;margin-top:2px}.flight-card .journey-date{color:#4d7790}.milestone-badge{display:flex;gap:6px;align-items:center;width:fit-content;margin-top:15px;background:#f7eee0;border:1px solid #eadac2;color:#a17a49;border-radius:4px;padding:5px 8px;font-size:9px}.milestone-badge svg{width:13px;height:13px}.route-strip .route-stop-meta{font-size:10px;line-height:1.5;margin-top:3px}.route-summary strong{font-weight:600}
@media(max-width:600px){.route-strip .route-stop-meta{font-size:9px}.journey-date{font-size:10px}.milestone-badge{font-size:10px}.route-summary{font-size:10px}}
