:root{--paper:#fffcf6;--bg:#f4f2e9}.wrap{max-width:1180px}.hero{padding-top:34px}.routebar{box-shadow:0 4px 20px #173f3310}.return-picker{margin:22px 0 18px}.return-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.return-option{text-align:left;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;gap:7px;font-size:14px}.return-option[aria-pressed=true]{border:2px solid var(--green);padding:19px;background:#e9f0df;box-shadow:0 4px 12px #173f330b}.return-option span{color:var(--muted);font-size:13px}.return-option strong{font-size:17px}.return-option b{font-weight:500}.return-option em{font-style:normal;color:#a24a24;font-size:13px}.trip-builder{display:grid;grid-template-columns:330px 1fr;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--paper)}.plan-sidebar{padding:20px;border-right:1px solid var(--line)}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:16px}.panel-title span{font-size:12px;color:var(--muted)}.map-main{min-width:0}.map-toolbar{padding:12px;gap:7px}.map-canvas{height:490px}.map-status{padding:10px 16px;line-height:1.5;font-size:13px;margin:0}.map-status.error{color:#9b3f21;background:#fff0e3}.map-legend,.map-footnote{padding:0 16px}.map-footnote{margin-bottom:15px}.map-brand{border:1px solid var(--line);padding:7px 13px;border-radius:30px;white-space:nowrap;font-size:13px}.ordered-choices{display:grid;gap:6px;margin-top:16px}.choice-row{display:flex;align-items:center;gap:6px;border:1px solid transparent;border-radius:9px;padding:6px;background:#f3f2ea;min-height:44px}.choice-row.chosen{border-color:#c8d6bf;background:#edf2e6}.choice-row label{display:flex;align-items:center;gap:9px;flex:1;font-size:14px;cursor:pointer;line-height:1.4}.choice-row input{width:19px;height:19px;accent-color:var(--green);flex-shrink:0}.choice-row .seq{background:var(--green);color:white;border-radius:50%;min-width:22px;text-align:center;font-size:11px;padding:3px;line-height:16px}.choice-row:not(.chosen) .seq{background:#dbdfd4;color:#64756d}.move-btn{border:0;background:transparent;color:var(--green);font-size:18px;min-width:26px;min-height:36px;padding:0}.move-btn:disabled{color:#c5c8bf;cursor:default}.import-card{border-top:1px solid var(--line);background:#edf1e4;padding:22px}.import-card h3{font-family:var(--serif);font-size:24px;margin:5px 0}.import-card p{font-size:14px;margin:8px 0}.native-links{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}.native-links a{background:var(--green);color:white;border:1px solid var(--green);border-radius:9px;padding:12px 18px;text-decoration:none;font-weight:600;flex:1;text-align:center;min-width:140px;font-size:14px}.native-links a.secondary{background:var(--paper);color:var(--green)}.native-links .unavailable{color:#915131;font-size:14px}.import-tools{display:flex;gap:8px;flex-wrap:wrap}.leg-panel{margin-top:18px;padding:22px}.leg-selects select{min-height:48px}.leg-result{border-radius:12px;background:#f4f4ea;padding:20px;margin-top:18px}.leg-result h3{font-size:19px;line-height:1.5;margin:0 0 10px}.leg-result ol{padding-left:23px}.leg-result li{padding:4px 0}.legresult-status{font-size:13px;color:var(--muted)}.amap-number{width:32px;min-height:32px;border-radius:50%;background:var(--green);color:white;display:flex;align-items:center;justify-content:center;font:bold 13px sans-serif;border:2px solid white;box-shadow:0 2px 6px #0003;white-space:nowrap}.amap-number.dim{background:#aaa}.amap-popup{padding:8px;line-height:1.7;font-size:14px}.amap-popup a{color:var(--green)}.map-loading{padding:55px 22px;text-align:center;color:var(--muted);line-height:1.8}.route-presets{margin-top:10px}.route-presets .smallbtn{padding:6px 9px;font-size:12px}.stop-visual img{max-height:280px}.stop-content{font-size:16px}.photo-dialog{max-width:min(1100px,94vw)}.milestones b{font-variant-numeric:tabular-nums}.bottomin{max-width:1180px}.bottom small{line-height:1.6}.inline-foods{margin-top:18px}.map-panel button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #d69937;outline-offset:3px}.route-jump{line-height:1.6}.share-manual{width:100%;padding:12px;margin:12px 0}.checklist-hint{padding:16px;background:#edf1e4;border-radius:10px;font-size:14px}.fixed-reminder{background:#e9edde;padding:10px 14px;border-radius:8px;margin-bottom:12px}.leglist{max-height:150px;overflow:auto}.map-panel .legbuttons{gap:8px}.amap-logo,.amap-copyright{opacity:1!important;visibility:visible!important}.food-mini .maplink{font-size:12px;white-space:nowrap}
@media(max-width:900px){.trip-builder{grid-template-columns:290px 1fr}.map-canvas{height:470px}.native-links a{padding:11px 12px;min-width:120px}.import-card{padding:17px}.plan-sidebar{padding:16px}}
@media(max-width:680px){.wrap{padding:0 16px}.hero{gap:20px}.return-options{grid-template-columns:1fr;gap:10px}.return-option{padding:16px}.return-option[aria-pressed=true]{padding:15px}.return-option strong{font-size:16px}.trip-builder{display:flex;flex-direction:column}.plan-sidebar{border-right:0;border-bottom:1px solid var(--line)}.ordered-choices{grid-template-columns:1fr;max-height:340px;overflow:auto;padding-right:4px}.map-canvas{height:380px}.map-toolbar .smallbtn{font-size:12px;padding:7px 9px}.map-main{width:100%}.leg-panel{padding:16px}.leg-result{padding:14px}.legbuttons .smallbtn{font-size:13px}.milestones div{padding:14px 10px}.milestones b{font-size:26px}.milestones span{font-size:12px}.sectionhead h2{font-size:27px}.stop{margin-left:18px}.stop-content{padding:20px 18px}.stop::before{left:-19px}.num{left:-34px}.bottom{padding-bottom:env(safe-area-inset-bottom)}.bottomin{padding:12px 16px}.bottom strong{font-size:13px}.bottom small{font-size:11px}.bottom .btn{font-size:12px;padding:10px}.routebar{top:0}.tab b{font-size:15px}.nav{gap:18px}.food-mini{grid-template-columns:1fr}.food-mini .maplink{justify-self:start}.food-mini p{grid-column:1}.leg-selects{grid-template-columns:1fr}.map-legend{flex-direction:column;gap:3px}}
@media print{.trip-builder,.bottom,.routebar,.return-picker button:not([aria-pressed=true]),#share{display:none}.return-options{display:block}.return-option{border:1px solid #aaa!important}.stop{break-inside:avoid}.stop-visual img{height:140px}}

.fallback-map{display:block;width:100%;height:100%;object-fit:contain;background:#f1f2e9}.map-canvas:has(.fallback-map){height:auto;min-height:240px;aspect-ratio:5/3}
