:root{--ink:#24251f;--muted:#66675e;--paper:#f7f3e9;--paper-2:#fbf9f3;--line:#c9c3b5;--drive:#60788d;--sight:#4f6f57;--meal:#9b6a3d;--rust:#993f2c;--serif:'Songti SC','STSong','Noto Serif CJK SC',serif;--sans:-apple-system,BlinkMacSystemFont,'PingFang SC','Noto Sans CJK SC',sans-serif;color-scheme:light}*{box-sizing:border-box}html{background:#ebe7dd;scroll-behavior:smooth}body{max-width:480px;min-width:280px;min-height:100vh;margin:0 auto;border-inline:1px solid #ddd6c8;background:var(--paper);color:var(--ink);font:16px/1.68 var(--sans)}a{color:inherit;text-underline-offset:4px}button,input{font:inherit;color:inherit}button,summary{cursor:pointer}button{min-height:40px;border:1px solid var(--line);background:transparent}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3{font-family:var(--serif)}h1{font-size:30px;line-height:1.25;letter-spacing:.04em}h2{font-size:23px;line-height:1.3}h3{font-size:23px;line-height:1.35}h4{font:700 12px/1.4 var(--sans);letter-spacing:.12em}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,.gallery:focus-visible{outline:2px solid #365d48;outline-offset:3px}.skip{position:fixed;top:-100px;left:12px;z-index:50;background:var(--paper);padding:10px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}
.mast{height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:4px double var(--ink)}.brand{display:flex;align-items:baseline;gap:8px;font:900 25px/1 var(--serif);letter-spacing:.14em;text-decoration:none;white-space:nowrap}.brand span{font-size:10px;font-weight:400;letter-spacing:.12em}.mast-actions{display:flex;align-items:center;gap:8px}.trip-date{font:600 11px/1.25 Georgia,var(--serif);text-align:right;white-space:nowrap}.trip-date span{display:block;font:10px/1.3 var(--sans);color:var(--muted)}.prep-button{min-height:38px;border:0;border-left:1px solid var(--line);padding:0 0 0 8px;font-size:12px;font-weight:700;white-space:nowrap}
.app-layout{display:block}.app-layout aside{position:sticky;top:0;z-index:20;height:auto;padding:0 16px;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--ink)}.nav-label,.side-note{display:none}nav{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}nav::-webkit-scrollbar{display:none}.day-link{flex:0 0 72px;display:block;padding:9px 0 8px;border-bottom:3px solid transparent;text-decoration:none;color:var(--muted);scroll-snap-align:center}.day-link time{display:block;font:700 17px/1.2 Georgia,var(--serif)}.day-link span{display:block;overflow:hidden;margin-top:2px;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.day-link[aria-current]{border-color:var(--ink);color:var(--ink)}main{min-width:0;padding:18px 16px 0}.day-header{padding-bottom:14px;border-bottom:1px solid var(--line)}.day-top{display:flex;justify-content:space-between;gap:8px;margin-bottom:9px;font-size:11px;letter-spacing:.06em;color:var(--muted)}.day-header h1{margin-bottom:5px}.route{font-size:13px;color:#4f514a}.summary-row{display:flex;flex-wrap:wrap;gap:3px 14px;margin-top:8px;font-size:12px;color:var(--muted)}.day-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:13px}.day-tool{display:grid;place-content:center;min-width:0;min-height:66px;padding:8px 5px;border:1px solid #17241f;background:#243b32;color:#fff;text-align:center}.day-tool:nth-child(2){border-color:#263945;background:#344b58}.day-tool.outfit-tool{border-color:#6e3429;background:#874435}.day-tool strong,.day-tool span{display:block}.day-tool strong{font:700 13px/1.35 var(--serif);white-space:nowrap}.day-tool span{margin-top:5px;font-size:10px;line-height:1.25;color:#fff;opacity:.78}.day-tool:active{filter:brightness(.9)}
.schedule{margin:20px 0 28px}.section-head{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px}.weather-btn{min-height:34px;border:0;padding:0 2px;font-size:12px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.weather-btn:disabled{opacity:.5}.weather-explainer{min-height:18px;margin:4px 0 12px;font-size:11px;color:var(--muted)}
.timeline{position:relative;margin-left:2px}.timeline:before{content:'';position:absolute;top:8px;bottom:8px;left:5px;width:1px;background:#aaa79e}.timeline-row{position:relative;display:grid;grid-template-columns:12px minmax(0,1fr);gap:9px;align-items:start;margin-bottom:24px}.timeline-dot{z-index:1;width:11px;height:11px;margin-top:15px;border:2px solid var(--paper);outline:1px solid currentColor;background:currentColor}.timeline-dot.drive{color:var(--drive)}.timeline-dot.sight{color:var(--sight)}.timeline-dot.meal{color:var(--meal)}.event-card{--card-color:var(--ink);position:relative;min-width:0;overflow:hidden;border:1px solid var(--line);border-top:3px solid var(--card-color);border-radius:0;background:var(--paper-2);padding:14px}.drive-card{--card-color:var(--drive)}.sight-card{--card-color:var(--sight)}.meal-card{--card-color:var(--meal)}.event-meta{display:flex;align-items:center;gap:9px;margin:0 74px 9px 0;font-size:12px;color:var(--card-color);font-weight:700;letter-spacing:.08em}.event-meta time{font:700 13px/1 var(--sans);letter-spacing:0;color:var(--ink)}.event-meta span:before{content:'·';margin-right:9px;color:var(--line)}.event-card h3{margin-bottom:7px}.drive-card h3,.meal-card h3{font-size:20px}.event-card>p{font-size:15px;line-height:1.68;color:#51534c}.meal-included{display:block;margin:-2px 0 6px;font-size:12px;color:var(--muted)}.prep-meal{position:absolute;top:0;right:0;z-index:2;padding:6px 9px;background:var(--rust);color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em}
.sight-heading h3{margin-bottom:12px}.gallery-bar{display:flex;justify-content:space-between;gap:6px;margin-bottom:6px;font-size:11px;color:var(--muted)}.gallery{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:7px}.gallery::-webkit-scrollbar{display:none}.gallery figure{flex:0 0 82%;min-width:0;scroll-snap-align:start}.photo-open{display:block;width:100%;min-height:0;border:0;padding:0;background:#deddd5;text-align:left}.gallery img{display:block;width:100%;height:160px;object-fit:cover}.gallery figcaption{display:flex;align-items:baseline;gap:8px;padding:6px 0 2px;font-size:11px;line-height:1.35;color:var(--muted)}.gallery figcaption strong{font-weight:500}.photo-number{font:italic 14px Georgia,serif;color:var(--ink)}.spot-guide{margin-top:14px}.spot-guide p{margin-top:5px;font-size:15px;line-height:1.72;color:#454840}.checkins{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.checkins>h4{margin-bottom:4px}.checkin-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #dfdbd1}.checkin-row>div{min-width:0}.checkin-row strong,.checkin-row span{display:block}.checkin-row strong{font-size:13px}.checkin-row div span{margin-top:2px;font-size:12px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}.copy-address{min-width:72px;min-height:40px;padding:5px 9px;border-color:#aaa69a;font-size:12px;font-weight:700;white-space:nowrap}.copy-address:active{background:#e8e4da}.copy-state{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.wx-box{position:relative;min-width:0;margin-top:12px;padding:9px 10px 7px;border:1px solid #d3d2c8;background:#f9faf5}.weather-title{padding-right:76px;font-size:11px;line-height:1.25;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weather-title strong{display:inline;font-weight:600;color:var(--ink)}.weather-title span{margin-left:7px}.weather-compact{display:flex;align-items:center;gap:8px;height:30px}.weather-icon{display:grid;place-items:center;width:26px;height:26px;color:#56635a}.weather-icon svg{width:24px;height:24px}.weather-compact strong{font:700 20px/1 Georgia,var(--serif)}.weather-compact>span:last-child{font-size:12px;color:var(--muted)}.weather-plain{overflow:hidden;font-size:11px;line-height:1.35;color:#55584f;white-space:nowrap;text-overflow:ellipsis}.wx-details>summary{position:absolute;top:4px;right:8px;display:flex;align-items:center;min-height:32px;padding:0;font-size:11px;color:var(--muted);list-style:none}.wx-details>summary:after{content:'⌄';margin-left:5px}.wx-details[open]>summary:after{transform:rotate(180deg)}.wx-details>summary::-webkit-details-marker{display:none}.wx-detail-body{margin:10px -2px 0;padding-top:8px;border-top:1px solid #d5d7cd}.wx-point+ .wx-point{margin-top:14px;padding-top:12px;border-top:1px solid #dddcd3}.wx-point h4{font-size:12px;letter-spacing:0}.time-edit{display:flex;flex-wrap:wrap;align-items:end;gap:8px;margin:8px 0}.time-edit label{font-size:11px}.time-edit input{display:block;width:62px;min-height:40px;margin-top:2px;border:1px solid var(--line);background:#fff;padding:4px 6px}.apply-time{min-height:40px;padding:4px 10px;font-size:11px}.wx-table-wrap{max-width:100%;overflow:auto}.wx-table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:11px}.wx-table th,.wx-table td{padding:5px 9px 5px 0;border-bottom:1px solid #e0dfd7;text-align:left;font-weight:400}.wx-origin,.wx-source{margin-top:7px;font-size:10px;color:var(--muted)}
footer{margin-top:18px;padding:18px 0;border-top:4px double var(--ink);font:12px var(--serif);color:var(--muted)}
.day-info-dialog{padding:20px}.day-info-dialog .dialog-head{position:sticky;top:-20px;z-index:2;background:var(--paper);padding-top:2px}.reminder-list{margin:0;padding-left:20px}.reminder-list li{margin:0 0 14px;line-height:1.65}.reminder-list li:last-child{margin-bottom:0}.day-info-copy h3{margin-bottom:12px;font-size:21px}.day-info-copy>p,.outfit-panel>p{font-size:15px;line-height:1.75}.day-info-copy dl{display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px 12px;margin:18px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:13px}.day-info-copy dt{color:var(--muted)}.day-info-copy dd{margin:0}.color-groups{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.color-groups>section{padding:12px;border:1px solid var(--line);background:var(--paper-2)}.color-groups h3{margin:0 0 10px;font:700 15px/1.35 var(--serif)}.color-swatches{display:grid;gap:9px}.color-swatches>div{display:flex;align-items:center;gap:8px}.color-swatches i{flex:0 0 34px;width:34px;height:34px;border:1px solid #7776}.color-swatches span{font-size:12px;line-height:1.35;color:var(--ink)}.outfit-panel .pack{margin-top:16px;padding-top:12px;border-top:1px solid var(--line);font-size:14px}.outfit-panel .pack strong{display:block;margin-bottom:4px}dialog{width:min(448px,calc(100% - 24px));max-height:88vh;border:1px solid var(--ink);background:var(--paper);color:var(--ink);padding:20px}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:12px;border-bottom:4px double var(--ink)}.dialog-head h2{font-size:27px}.dialog-head button{padding:6px 10px}.practical h2{font-size:21px;margin-bottom:14px}.practical-grid{display:grid;gap:18px}.practical h3{font-size:18px}.practical p,.practical a{font-size:14px}.sources{margin-top:24px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.sources summary{min-height:40px;color:var(--ink)}.sources p,.sources li{margin:8px 0}dialog::backdrop{background:#151713d9}.lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;background:#11130f;color:#f7f3e9;padding:0}.lightbox figure{height:100%;display:grid;place-items:center;grid-template-rows:minmax(0,1fr) auto;padding:58px 18px 24px}.lightbox img{display:block;max-width:100%;max-height:calc(100dvh - 130px);object-fit:contain}.lightbox figcaption{width:100%;padding-top:12px;text-align:center}.lightbox figcaption strong,.lightbox figcaption span{display:block}.lightbox figcaption strong{font:700 15px var(--serif)}.lightbox figcaption span{font-size:12px;color:#c8c8be}.lightbox-close{position:fixed;top:12px;right:12px;z-index:2;border-color:#777;color:#fff;padding:4px 10px}.lightbox-nav{position:fixed;top:46%;z-index:2;width:42px;border:0;color:#fff;font-size:36px;background:#111b}.lightbox-prev{left:2px}.lightbox-next{right:2px}.photo-fallback{display:grid;place-items:center;height:160px;padding:18px;font-size:12px}
.outfit-advice{padding-left:10px;border-left:2px solid var(--sight)}.outfit-advice+.outfit-advice{margin-top:12px;border-left-color:var(--rust)}.outfit-advice strong{display:block;margin-bottom:3px;color:var(--muted);font-size:12px;letter-spacing:.08em}.outfit-advice p{font-size:14px;line-height:1.65}
@media(max-width:350px){body{font-size:15px}.mast{padding-inline:12px}.brand{font-size:22px}.brand span{display:none}.trip-date{display:none}.app-layout aside,main{padding-inline:12px}.day-link{flex-basis:68px}.event-card{padding:12px}.event-meta{margin-right:68px}.gallery figure{flex-basis:86%}.weather-plain{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery{scroll-behavior:auto}*{transition:none!important}}

/* 景点信息：三个同级折叠栏 */
.spot-sections{margin-top:12px;border-top:1px solid var(--line)}
.spot-section{margin:0!important;padding:0!important;border:0!important;border-bottom:1px solid var(--line)!important;background:transparent!important;color:var(--ink)}
.spot-section>summary{display:flex;align-items:center;min-height:44px;padding:0 2px;list-style:none;font:700 14px/1.35 var(--sans);cursor:pointer}
.spot-section>summary::-webkit-details-marker{display:none}
.spot-section>summary:after{content:'⌄';margin-left:8px;color:var(--muted);font-size:15px;transition:transform .15s ease}
.spot-section[open]>summary:after{transform:rotate(180deg)}
.spot-section>summary>span{margin-left:auto;max-width:62%;overflow:hidden;color:var(--muted);font-size:11px;font-weight:400;white-space:nowrap;text-overflow:ellipsis}
.section-body{padding:0 2px 13px}
.play-body{font-size:12px;line-height:1.58;color:#454840}
.play-body ol,.play-body ul{margin:0;padding:0;list-style:none}
.play-body ol{display:grid;gap:9px}
.play-body ol>li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:7px}
.play-body ol b{font:italic 12px/1.58 Georgia,serif;color:var(--green)}
.play-body .avoid{margin-top:12px;padding-left:10px;border-left:2px solid var(--rust)}
.play-body .avoid>strong{display:block;margin-bottom:5px;color:var(--rust);font-size:12px}
.play-body .avoid p{margin:0;font-size:13px;line-height:1.65;color:#454840}
.event-card .ugc-refs{margin:11px 0 0;color:var(--muted);font-size:12px;line-height:1.58}
.event-card .ugc-refs a{font-size:inherit;white-space:nowrap}
.checkins .section-body{padding-bottom:7px}
.checkin-row{grid-template-columns:minmax(0,1fr) 40px;gap:8px;padding:8px 0}
.checkin-row div span{display:-webkit-box;margin-top:3px;overflow:hidden;font-size:12px;line-height:1.45;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.copy-address{display:grid;place-items:center;width:40px;min-width:40px;height:40px;min-height:40px;padding:0;border:0}
.copy-address svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.copy-address.copied{color:#fff;background:var(--green)}
.weather-section{position:relative}
.weather-section>.weather-title,.weather-section>.weather-compact,.weather-section>.weather-plain,.weather-section>.wx-details{margin-left:2px;margin-right:2px}
.weather-section>.weather-title{padding-right:78px}
.weather-section>.wx-details>summary{top:44px}
.weather-section>.wx-details[open]{padding-bottom:7px}
.weather-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;margin-bottom:12px;font-size:11px;color:var(--muted)}
.weather-rows{padding:0 2px}
.weather-stop-row{padding:8px 0 9px;border-top:1px solid #dfdbd1}
.weather-stop-row:first-child{border-top:0}
.weather-stop-meta{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:12px;line-height:1.4}
.weather-stop-meta strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.weather-stop-meta span{flex:0 0 auto;color:var(--muted);font-size:11px}
.weather-stop-row .weather-compact{height:29px;gap:7px}
.weather-stop-row .weather-compact strong{font:700 16px/1.1 var(--sans)}
.weather-stop-row .weather-icon,.weather-stop-row .weather-icon svg{width:22px;height:22px}
.weather-section>.wx-details>summary{position:static;justify-content:space-between;min-height:40px;padding:0 2px;border-top:1px solid #dfdbd1;font-size:11px}
.weather-section>.wx-details>summary:after{margin-left:auto}
.weather-section>.wx-details>.wx-detail-body{margin-top:0}
@media(max-width:350px){.play-body,.checkin-row div span{font-size:12px}.spot-section>summary{font-size:13px}}

.lightbox figure{grid-template-rows:minmax(0,1fr) auto;padding-bottom:20px}.lightbox img{max-height:calc(100dvh - 210px)}.lightbox figcaption{max-width:560px;margin:auto}.lightbox figcaption p{font-size:13px;line-height:1.5;color:#e8e6dc;margin:8px 0 4px}.lightbox figcaption a{display:inline-block;color:#f5d89a;font-size:13px;text-underline-offset:3px;padding:8px}.lightbox figcaption small{display:block;color:#adafa5;font-size:12px;margin-top:5px}.lightbox figcaption [hidden]{display:none}

/* 车程与用餐只占一行；晚餐候选在点击后横滑查看。 */
.compact-row{margin-bottom:14px}
.compact-row .timeline-dot{margin-top:18px}
.compact-card{padding:0;overflow:visible}
.compact-card>summary{display:flex;align-items:center;gap:7px;min-width:0;min-height:48px;padding:7px 11px;list-style:none;cursor:pointer;font:13px/1.3 var(--sans)}
.compact-card>summary::-webkit-details-marker{display:none}
.compact-card>summary time{flex:none;font-weight:700;color:var(--ink);white-space:nowrap}
.compact-type{flex:none;color:var(--card-color);font-size:12px;font-weight:700}
.compact-card>summary strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;color:var(--ink)}
.compact-extra{flex:none;white-space:nowrap;color:var(--muted);font-size:12px}
.compact-prep{flex:none;padding:3px 5px;background:var(--rust);color:#fff;font-size:11px;font-weight:700;white-space:nowrap}
.compact-arrow{flex:none;margin-left:auto;font-size:17px;line-height:1;color:var(--muted);transition:transform .15s}
.compact-card[open] .compact-arrow{transform:rotate(180deg)}
.compact-body{padding:0 12px 11px;border-top:1px solid #dfdbd1}
.compact-body>p{margin:9px 0 3px;font-size:13px;line-height:1.5;color:#4a4d47}
.compact-body>small{font-size:12px;color:var(--muted)}
.restaurant-head{display:flex;align-items:center;justify-content:space-between;margin:13px 0 7px;font-size:12px;color:var(--ink)}
.restaurant-head span{color:var(--muted)}
.restaurant-strip{display:flex;gap:9px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:0 12px 7px 0;margin-right:-12px;scrollbar-width:thin}
.restaurant-card{flex:0 0 min(71vw,205px);max-width:205px;align-self:flex-start;scroll-snap-align:start;border:1px solid var(--line);background:var(--paper)}
.restaurant-card>summary{display:block;list-style:none;cursor:pointer;padding:0 0 9px}
.restaurant-card>summary::-webkit-details-marker{display:none}
.restaurant-photo{display:block;width:100%;height:105px;overflow:hidden;background:#9a6a43}
.restaurant-photo img{display:block;width:100%;height:100%;object-fit:cover}
.restaurant-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(140deg,#523d32,#966c49);color:#f8f0dd;font:italic 33px/1 Georgia,serif}
.restaurant-placeholder small{margin-top:8px;font:12px/1.2 var(--sans)}
.restaurant-card>summary>strong,.restaurant-kind{display:block;margin:8px 9px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 13px/1.3 var(--sans);color:var(--ink)}
.restaurant-kind{margin-top:4px;font-size:11px;font-weight:400;color:var(--muted)}
.restaurant-score{display:block;width:max-content;margin:7px 9px 0;padding:2px 6px;border-left:2px solid var(--meal);background:#eee5d6;color:#5e3d20;font:700 11px/1.4 var(--sans)}
.restaurant-score.unverified{border-color:var(--line);background:#eeece5;color:var(--muted);font-weight:500}
.restaurant-info{padding:0 9px 9px;border-top:1px solid var(--line);overflow-wrap:anywhere}
.restaurant-info p{margin:8px 0 0;font-size:12px;line-height:1.5}
.restaurant-info b{display:block;color:var(--card-color)}
.restaurant-info .restaurant-note{color:var(--muted)}
.restaurant-info .score-note{color:var(--muted);font-size:11px}
.restaurant-info a{display:block;margin-top:8px;font-size:12px;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.restaurant-caveat{color:var(--muted)!important;font-size:11px!important}
@media(max-width:350px){.compact-card>summary{gap:5px;padding-inline:8px}.compact-extra{display:none}.compact-prep{font-size:10px}}
@media(prefers-reduced-motion:reduce){.compact-arrow{transition:none}}

/* 全程总览 */
.overview-link strong{display:block;font:700 17px/1.2 var(--serif)}
.overview-intro{padding:7px 0 22px;border-bottom:4px double var(--ink)}
.overview-eyebrow,.atlas-heading>span{font:700 11px/1.4 var(--sans);letter-spacing:.18em;color:var(--rust)}
.overview-intro h1{max-width:11em;margin:10px 0;font-size:32px;line-height:1.28}
.overview-lead{font-size:14px;line-height:1.7;color:#4b4e46}
.overview-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.overview-facts>div{min-width:0;padding:10px 5px;text-align:center}
.overview-facts>div+div{border-left:1px solid var(--line)}
.overview-facts strong,.overview-facts small{display:block}
.overview-facts strong{font:700 26px/1.1 Georgia,var(--serif)}
.overview-facts strong span{margin-left:2px;font:600 11px var(--sans)}
.overview-facts small{margin-top:5px;color:var(--muted);font-size:10px;line-height:1.3}
.overview-atlas,.overview-stops{margin-top:25px}
.atlas-heading{margin-bottom:13px}.atlas-heading h2{margin-top:3px;font-size:24px}
.land-panel{border:1px solid #a9b0a2;background:#e9e8de}
.map-panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:7px;padding:9px 11px 0}
.map-panel-head strong{font-size:15px}.map-panel-head span{font-size:11px;color:var(--muted);text-align:right}
.land-map{display:block;width:100%;height:auto;overflow:hidden}
.map-viewport{position:relative;width:100%;aspect-ratio:360/420;overflow:hidden;background:#e9e8de;touch-action:pan-y}
.map-viewport .land-map{position:absolute;inset:0;height:100%;transform-origin:0 0}
.map-key{display:flex;align-items:center;gap:12px;padding:7px 10px;border-top:1px solid #bec4b7;color:#5e665b;font-size:11px}.map-key span{display:flex;align-items:center;gap:5px}.map-key i{display:block;width:17px;border-top:2px solid var(--rust)}.map-key .map-key-spur{border-top-style:dashed}
.map-zoom-bar{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:48px;padding:4px 10px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.map-zoom-controls{display:flex;align-items:center;gap:3px;flex:none}.map-zoom-controls button{min-width:40px;min-height:40px;border:0;background:#f7f4eb;font-size:18px;font-weight:700}.map-zoom-controls button:last-child{font-size:12px}.map-zoom-controls button:disabled{opacity:.4}.map-zoom-controls output{min-width:29px;text-align:center;font-size:11px;color:var(--ink)}
.land-map text{font:700 11px var(--sans);fill:var(--ink);paint-order:stroke fill;stroke:#f1ecdf;stroke-width:3px;stroke-linejoin:round}
.region-land{fill:#d4dccd;stroke:#8f9e8b;stroke-width:1.2}
.map-region{stroke:#a9b5a4;stroke-width:.75}.map-region-0{fill:#d4dbcf}.map-region-1{fill:#d6d9c9}.map-region-2{fill:#d8dfd0}.map-region-3{fill:#e1dccb}.map-region-4{fill:#d7dfd2}
.map-graticule{fill:none;stroke:#fff;stroke-width:.75;opacity:.28;pointer-events:none}
.land-map .geography-name{font:600 11px var(--serif);letter-spacing:.14em;fill:#708071;stroke:#e9e8de;stroke-width:3px;pointer-events:none}.land-map .desert-name{font-size:12px;fill:#9d8864}
.road-halo,.road-line,.excursion-line{fill:none;stroke-linecap:round;stroke-linejoin:round}
.road-halo{stroke:#fffaf0;stroke-width:6}.road-line{stroke:#994937;stroke-width:2.6}
.excursion-line{stroke:#994937;stroke-width:1.8;stroke-dasharray:4 4}
.route-pin{cursor:pointer}.pin-hit{fill:transparent}.pin-ring{fill:#263e34;stroke:#fffaf0;stroke-width:2.7}
.route-pin text{font:700 10px var(--sans);fill:#fff;stroke:none;pointer-events:none}
.route-pin .route-label{font:700 13px var(--sans);fill:#20372e;stroke:#e9e6d8;stroke-width:4px;stroke-linejoin:round;paint-order:stroke fill;pointer-events:auto}
.map-label-leader{fill:none;stroke:#556c5e;stroke-width:1;stroke-dasharray:2 2}
.route-pin:focus-visible .pin-ring{stroke:#bd5739;stroke-width:5}
.pin-leader{fill:none;stroke:#263e34;stroke-width:1;stroke-dasharray:2 2}
.map-disclaimer{margin-top:9px;color:var(--muted);font-size:11px;line-height:1.55}
.map-disclaimer a{white-space:nowrap}
.overview-stops ol{margin:0;padding:0;list-style:none;border-top:1px solid var(--ink)}
.overview-stops li{border-bottom:1px solid var(--line)}
.overview-stops li a{display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 2px;text-decoration:none}
.stop-number{align-self:flex-start;min-width:31px;font:italic 22px/1.2 Georgia,serif;color:var(--rust)}
.stop-copy{display:block;min-width:0;flex:1}.stop-copy strong,.stop-copy small,.stop-copy>span{display:block}
.stop-copy strong{font:700 17px/1.3 var(--serif)}.stop-copy small{color:var(--rust);font-size:11px}.stop-copy>span{margin-top:3px;color:#56594f;font-size:12px;line-height:1.5}
.stop-arrow{color:var(--rust);font-size:17px}
.return-link{display:flex;align-items:center;gap:8px;min-height:48px;margin-top:9px;padding:8px 11px;background:#243b32;color:#fff;text-decoration:none;font-size:12px}
.return-link strong{flex:1;font-size:14px}.return-link>span:last-child{font-size:19px}
@media(max-width:350px){.overview-intro h1{font-size:28px}.map-panel-head span{font-size:9px}.overview-facts small{font-size:9px}}
