/* Journey comparisons and rail profiles share the atlas' paper-and-ink palette. */
.sidebar>.sidebar-tabs{padding-top:22px}
.map-top{justify-content:flex-end}
.sidebar-footer{justify-content:flex-end;gap:16px}
.sidebar-footer #guide-button{margin-left:0}
.language-setting select{font:inherit;font-size:calc(11px * var(--font-scale,1.12));color:#4b6442;background:#f8faf4;border:1px solid #dce4d4;border-radius:5px;padding:7px 5px;cursor:pointer;max-width:100px}
.brand strong{white-space:nowrap}
.sidebar:has(#route-panel:not([hidden])) .sidebar-intro{padding-top:18px;padding-bottom:15px}
.sidebar:has(#route-panel:not([hidden])) .sidebar-intro h1{font-size:calc(23px * var(--font-scale, 1.12));margin:7px 0}
.sidebar:has(#route-panel:not([hidden])) .sidebar-intro p{display:none}
#route-panel{overflow-y:auto;scrollbar-width:thin;padding-bottom:15px}
#route-results{overflow:visible;flex-shrink:0;border:0;padding-top:4px}
.route-options-heading{display:flex;gap:8px;justify-content:space-between;align-items:center}
.route-options-heading button{font-size:calc(10px * var(--font-scale,1.12));color:#69835b;text-decoration:underline;text-underline-offset:3px;padding:3px 0}
.route-options-heading strong{font-size:calc(12px * var(--font-scale, 1.12))}.route-options-heading span{font-size:calc(10px * var(--font-scale, 1.12));color:#7b8a78}
.route-results .estimate-caption{font-size:calc(10px * var(--font-scale, 1.12));text-align:left;color:#798875;margin:7px 0 12px}
.route-choices{display:grid;gap:9px}
.route-choice{display:block;width:100%;text-align:left;border:1px solid #e0e5d9;background:#fffefa;border-radius:9px;padding:13px 12px;transition:border-color .15s,background .15s}
.route-choice:hover{border-color:#a9bba1;background:#f5f8f0}.route-choice.selected{border:1px solid #6d8b66;background:#edf3e8;box-shadow:inset 3px 0 #6d8b66}
.choice-top{display:flex;align-items:center;gap:8px}.choice-number{font-size:calc(10px * var(--font-scale, 1.12));color:#8c9b81;letter-spacing:1px}.choice-top strong{font-size:calc(17px * var(--font-scale, 1.12));font-weight:600;color:#2a463b}.choice-check{margin-left:auto;color:#64825c;font-size:calc(13px * var(--font-scale, 1.12))}
.choice-tags{display:flex;align-items:center;gap:5px;margin-top:8px;flex-wrap:wrap}.choice-tags i{font-style:normal;font-size:calc(10px * var(--font-scale, 1.12));border-radius:3px;padding:3px 5px;background:#dfead8;color:#53704b}.choice-tags>span{font-size:calc(10px * var(--font-scale, 1.12));color:#74816b;margin-left:auto}
.choice-lines{display:block;font-size:calc(11px * var(--font-scale, 1.12));line-height:1.8;margin-top:9px;color:#435947;overflow-wrap:anywhere}.choice-lines b{font-weight:400;color:#9ba98f}
.choice-breakdown{display:block;font-size:calc(10px * var(--font-scale, 1.12));color:#7d8c74;margin-top:6px;line-height:1.6}
.route-results .alternative-note{font-size:calc(10px * var(--font-scale, 1.12));color:#819176;text-align:left;margin:10px 1px;line-height:1.8}
.journey-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #dde5d6;margin-top:23px;padding-top:20px}.journey-heading h3{font-size:calc(12px * var(--font-scale, 1.12));margin:0}.journey-heading span{font-size:calc(11px * var(--font-scale, 1.12));color:#65805d}
.time-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;background:#f1f4ec;border-radius:7px;padding:12px 10px;margin-top:12px}.time-breakdown>span{font-size:calc(10px * var(--font-scale, 1.12));color:#7d8b72;line-height:1.6}.time-breakdown strong{display:block;font-size:calc(14px * var(--font-scale, 1.12));font-weight:500;color:#465d3c;margin-top:3px}
.time-explainer{font-size:calc(10px * var(--font-scale, 1.12));color:#7a8d6e;line-height:1.9;margin:12px 0 23px}.time-explainer summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.time-explainer p{margin:10px 0}.route-results .route-note{text-align:left;color:#7d8d73;font-size:calc(10px * var(--font-scale, 1.12))}
.route-step{padding-bottom:22px}.route-step h4 button,.route-end-title button{padding:0;text-align:left;font-size:calc(12px * var(--font-scale, 1.12));line-height:1.7}.route-step .step-line{align-items:flex-start;font-size:calc(11px * var(--font-scale, 1.12));line-height:1.7;color:#536c47}.step-line .line-badge{margin-top:1px}.step-line>span:last-child{flex:1}.step-meta{font-size:calc(10px * var(--font-scale, 1.12));color:#849379;line-height:1.8;margin-top:6px}.step-meta button{font-size:calc(10px * var(--font-scale, 1.12));color:#5e8154;text-decoration:underline;text-underline-offset:3px;padding:2px 0}.route-step details{font-size:calc(10px * var(--font-scale, 1.12));color:#7e9071}
.profile-kicker{font-size:calc(9px * var(--font-scale, 1.12));letter-spacing:1.2px;color:#819275}.line-intro{background:#f0f4e9;border:1px solid #dce5d2;border-radius:9px;padding:17px 14px;margin-bottom:17px}.line-intro h3{font-size:calc(15px * var(--font-scale, 1.12));line-height:1.7;margin:8px 0 10px}.line-intro p,.station-profile p{font-size:calc(12px * var(--font-scale, 1.12));line-height:1.9;color:#607156;margin:9px 0}.line-intro ul,.station-profile ul{padding-left:17px;margin:10px 0;font-size:calc(11px * var(--font-scale, 1.12));line-height:1.9;color:#728465}.line-intro li,.station-profile li{margin:6px 0}.profile-sources{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.profile-sources a{font-size:calc(10px * var(--font-scale, 1.12));line-height:1.7;text-decoration:underline;text-underline-offset:3px;color:#668258}.line-stations{font-size:calc(11px * var(--font-scale, 1.12));line-height:1.9;color:#6a805b;margin-top:14px;border-top:1px solid #dce4d2;padding-top:11px}.line-stations summary{cursor:pointer}.line-stations>div{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}.line-stations button{font-size:calc(11px * var(--font-scale, 1.12));background:#fffefa;border:1px solid #dce4d2;border-radius:4px;padding:5px 8px;text-align:left}
.station-profile{padding:13px 0;border-top:1px solid #e0e6d7;margin-top:12px}.station-profile details{font-size:calc(10px * var(--font-scale, 1.12));line-height:1.8;color:#718365}.station-profile summary{cursor:pointer}.station-card{width:310px}.station-card .station-lines{gap:6px}
#line-profile-dialog{padding:35px 26px 24px;width:min(550px,calc(100vw - 30px))}#line-profile-content .line-intro{margin:0;border:0;background:none;padding:10px 0}#line-profile-content .line-intro h3{font-size:calc(23px * var(--font-scale, 1.12))}#line-profile-content .line-intro p{font-size:calc(13px * var(--font-scale, 1.12))}
.atlas-directory{border-top:1px solid #e2e7db;margin-top:18px}.atlas-directory h3{font-size:calc(13px * var(--font-scale, 1.12));margin:21px 0 13px}.profile-station-grid{display:flex;flex-wrap:wrap;gap:7px}.profile-station-grid button{font-size:calc(11px * var(--font-scale, 1.12));background:#eef3e7;border:1px solid #dae3d0;padding:8px 12px;border-radius:5px}.profile-line-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.profile-line-grid button{display:flex;align-items:center;gap:8px;text-align:left;font-size:calc(11px * var(--font-scale, 1.12));padding:7px 4px;line-height:1.65}.profile-line-grid .line-badge{width:24px;height:24px;font-size:calc(9px * var(--font-scale, 1.12))}
.font-setting{display:flex;align-items:center;gap:5px;color:#73816b}.font-setting>span{font-size:calc(15px * var(--font-scale, 1.12))}.font-setting select{font:inherit;font-size:calc(11px * var(--font-scale, 1.12));color:#4b6442;background:#f8faf4;border:1px solid #dce4d4;border-radius:5px;padding:7px 5px;cursor:pointer;max-width:87px}
.sidebar{width:360px;min-width:360px}.sidebar-footer{padding-left:15px;padding-right:15px;gap:6px}.sidebar-footer #network-summary{flex:1;line-height:1.6}.sidebar-footer button{white-space:nowrap}.header-right{gap:15px}.line-count{font-size:calc(10px * var(--font-scale, 1.12))}
@media(min-width:1600px){.sidebar{width:380px;min-width:380px}}
@media(max-width:1050px){.sidebar{width:340px;min-width:340px}.main-nav{gap:14px}.topbar{padding:0 17px}.header-right{gap:7px}.station-card{width:285px}.map-heading{max-width:190px}}
@media(max-width:720px){.header-right{display:flex;gap:0}.header-right #about-button{display:none}.font-setting>span{display:none}.font-setting select{font-size:calc(10px * var(--font-scale, 1.12));padding:6px 3px;max-width:68px}.topbar{padding:0 11px;gap:9px}.brand{gap:8px}.brand strong{font-size:calc(13px * var(--font-scale, 1.12));letter-spacing:0}.brand small{font-size:calc(9px * var(--font-scale, 1.12));letter-spacing:.4px}.brand-icon{height:30px;width:30px}.main-nav{gap:8px}.nav-button{padding:0 1px;font-size:calc(10px * var(--font-scale, 1.12))}.sidebar{width:100%;min-width:0}.sidebar:has(#route-panel:not([hidden])){height:79dvh}.sidebar:has(#route-panel:not([hidden])) .sidebar-intro{padding:14px 20px}.sidebar:has(#route-panel:not([hidden])) .sidebar-intro h1{font-size:calc(20px * var(--font-scale, 1.12))}.sidebar:has(#route-panel:not([hidden])) .sidebar-tabs{top:37px}.sidebar.mobile-open:has(#route-panel:not([hidden]))~.map-section .map-attribution{bottom:calc(79dvh + 6px)}.station-card{width:min(310px,calc(100% - 32px))}.shinkansen-option small{display:block;margin-left:0}.profile-line-grid{grid-template-columns:1fr}.sidebar-footer{padding:10px 16px}.map-heading h2{max-width:145px}.map-watermark{display:none}.route-choice{padding:12px}.map-legend{flex-wrap:wrap;gap:7px;max-width:calc(100% - 66px)}.map-legend button,.map-legend>span{white-space:nowrap}}
@media(max-width:390px){.main-nav .nav-button[data-view=explore]{display:none}.brand strong{font-size:calc(12px * var(--font-scale, 1.12))}}
@media(max-width:720px){.sidebar .sidebar-intro{padding:13px 20px 9px}.sidebar .sidebar-intro h1{display:none}.sidebar .sidebar-tabs{position:static;border-bottom:1px solid var(--border);padding:0 20px;gap:25px}.sidebar .sidebar-tabs button{padding-bottom:12px}.sidebar:has(#route-panel:not([hidden])) .sidebar-intro{padding:13px 20px 9px}}
.sidebar-footer{gap:16px}.sidebar-footer #network-summary[hidden]{display:none}
.line-row.selected .line-arrow{transform:rotate(90deg)}
.inline-line-detail .line-intro{border-top:0;border-radius:0 0 8px 8px;margin:0 0 12px;padding:14px 12px 17px}
.inline-line-detail .line-intro h3{display:none}
.line-list,.route-results,#route-panel,.station-card{overflow-anchor:none}
.route-pending{margin:4px 0 12px;padding:9px 11px;border-radius:5px;background:#f4f0df;color:#766d49;font-size:calc(11px * var(--font-scale,1.12));line-height:1.7;flex-shrink:0}
.operator-filters{display:flex;flex-wrap:wrap;gap:5px}.operator-filters button{flex:1 0 auto;white-space:nowrap;padding:8px 6px}
.line-row-info{min-width:0}.line-row-info strong{overflow-wrap:anywhere}.line-row-info small:empty{display:none}
.header-right{flex-shrink:0}.language-setting select{max-width:108px}
@media(max-width:900px){.main-nav{display:none}.brand{margin-right:auto}}
@media(max-width:720px){.sidebar .sidebar-tabs{padding-top:18px;flex-shrink:0}.header-right{gap:5px}.language-setting select{font-size:calc(10px * var(--font-scale,1.12));padding:6px 3px;max-width:78px}.brand strong{font-size:calc(12px * var(--font-scale,1.12))}.brand-icon{width:27px;height:27px;flex-shrink:0}.brand{gap:6px}.sidebar-footer{gap:14px}.map-top{top:16px}.map-tools{gap:5px}.mobile-panel{top:107px}.selection-banner{top:151px}}
@media(max-width:360px){.topbar{padding:0 8px;gap:5px}.brand-icon{display:none}.brand strong{font-size:calc(11px * var(--font-scale,1.12))}.header-right{gap:3px}.font-setting select{max-width:66px}.language-setting select{max-width:73px}}
