/* Selected direction: route-first, restrained teal, readable sans-serif. */
:root{--ink:#163330;--cta:#126e69;--paper:#f8faf9;--card:#fff;--muted:#55716b;--line:#dce6e2;--shadow:none;font-family:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
body{background:var(--paper);color:var(--ink);line-height:1.6}
h1,h2,h3,h4,.hero-copy h1,.discovery-heading h1,.discovery-heading h2,.trip-head h1,.route-detail-content h2{font-family:inherit;letter-spacing:0;font-weight:650}
.topbar{background:#f8faf9f5;border-color:var(--line);height:64px}.brand{font-size:19px;letter-spacing:0}.brand-mark{border-radius:10px;background:var(--cta);width:32px;height:32px}.beta-badge{color:var(--muted);letter-spacing:0}.icon-button,.round-action{background:#fff;border-color:var(--line);border-radius:10px}
main{max-width:1080px}.view{padding-top:24px}
.hero-card{background:transparent;color:var(--ink);border-radius:0;min-height:0;box-shadow:none;overflow:visible}.hero-copy{padding:12px 0 18px;width:100%}.hero-copy h1{font-size:38px;line-height:1.3;margin:8px 0 12px;max-width:none}.hero-copy .eyebrow{color:var(--muted);letter-spacing:.04em}.hero-copy>p:not(.eyebrow){color:var(--muted);font-size:15px;max-width:650px;line-height:1.7}.hero-art{display:none}.hero-actions{gap:12px}.hero-actions .text-button{color:var(--cta);text-decoration:none}.primary-button{background:var(--cta);color:#fff;border-radius:11px;box-shadow:none;min-height:46px;font-weight:600}.primary-button:hover{background:#0d5c58}.secondary-button{border-color:#bed3cd;color:var(--cta);background:#fff;border-radius:11px;font-weight:600}.text-button{color:var(--cta);font-weight:500}.benefit-line{text-align:left;color:var(--muted);font-size:12px;margin:0 0 24px}.benefit-line i{color:#9fbab2}
.scene-section{margin-bottom:24px}.scene-heading small{color:var(--muted)}.scene-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;overflow:visible}.scene-grid button{border:1px solid var(--line);box-shadow:none;border-radius:12px;background:#fff;padding:14px 12px;min-height:74px}.scene-grid button:hover{background:#edf5f2;border-color:#a8c7bd}.scene-icon{color:var(--cta);background:#eaf1ef;border-radius:9px;width:32px;height:32px}.scene-grid small{color:var(--muted);font-size:12px}.scene-grid b{font-size:13px}.scene-grid i{color:var(--muted)}
.discovery-heading .eyebrow,.trip-head .eyebrow,.toolkit-heading .eyebrow,.eyebrow{color:var(--muted);letter-spacing:.04em}.discovery-heading h2{font-size:26px}.discovery-heading h1{font-size:30px}.discover-home{margin:24px 0}.discovery-cities button{background:#fff;border-radius:10px;font-size:14px;border-color:var(--line);min-height:44px}.discovery-cities button.active{background:var(--cta);border-color:var(--cta);color:#fff}.discovery-themes button{background:#eaf1ef;color:var(--muted);border-radius:8px}.discovery-themes button.active{background:#d8ebe4;color:#14594f;border-color:#a9cabc}.quiet-link,.recommend-heading button{color:var(--cta)}.recommend-heading p{color:var(--muted)}
.route-grid{gap:16px}.route-card{background:#fff;box-shadow:none;border:1px solid var(--line);border-radius:16px}.route-card-body{padding:20px;order:0}.route-card h3{font-size:20px;line-height:1.45;font-weight:650;margin:0 0 12px}.route-kicker{color:var(--muted);font-size:12px}.route-kicker span{background:#edf3f0;color:var(--muted)}.route-summary{font-size:13px;color:var(--muted);line-height:1.7;flex:initial;margin:10px 0 14px}.route-facts span{background:#edf3f0;color:#42665c;font-size:12px}.route-price b{font-size:19px;letter-spacing:0;color:var(--ink);font-weight:650}.route-price small{font-size:12px;color:var(--muted)}.route-card-actions{border-color:var(--line);margin-top:14px}.route-card-actions button,.route-card-actions .route-detail-link{color:var(--cta);font-weight:550}.route-card-photo{height:112px;aspect-ratio:auto;border-radius:10px;margin-top:2px;flex-shrink:0}.photo-label{background:#184b43dc;color:#fff;border-radius:6px;font-size:11px;bottom:8px;left:9px;padding:4px 8px;backdrop-filter:none}.favorite-toggle{width:36px;height:36px;min-height:36px;right:8px;top:8px;font-size:23px;color:var(--cta);background:#ffffffed}.favorite-toggle.on{color:#9d3d44;background:#fff}.photo-placeholder{background:#eaf1ef;color:var(--muted);min-height:0}.photo-placeholder>span{font-size:20px}.photo-placeholder small{font-size:12px}
.mini-route{margin:2px 0 12px;padding:14px;border-radius:10px;background:#f5f8f6}.mini-route>small{font-size:12px;color:var(--muted);display:block;margin-bottom:9px}.mini-route ol{list-style:none;display:grid;gap:9px;margin:0;padding:0}.mini-route li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink);min-width:0}.mini-route li span{flex:none;background:#e3eeea;color:var(--cta);font-size:12px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center}.mini-route p{margin:9px 0 0;font-size:12px;color:var(--muted)}
.catalog-filter-panel{background:#edf3f0;border-color:var(--line);border-radius:14px}.catalog-top-tabs button.active{color:var(--cta);border-color:var(--cta)}.editorial-note,.filter-budget-note{color:var(--muted);font-size:12px}.walking-section-tabs button{border-color:var(--line);color:var(--cta)}.walking-section-tabs button[aria-pressed=true]{background:var(--cta);border-color:var(--cta)}.walking-card{border-color:var(--line);border-radius:16px;color:var(--ink);box-shadow:none}.walking-card h2{font-family:inherit;font-size:21px}.walking-card header button{background:#edf3f0;border-color:var(--line);color:var(--cta)}.walking-card header button[aria-pressed=true]{background:var(--cta);color:#fff}.walking-advice{background:#edf3f0}.walking-note{color:var(--muted)}.walking-card footer a{color:var(--cta)}.walking-home-link{border-color:var(--line);background:#fff;color:var(--cta);border-radius:11px;width:100%}
.trip-head h1{font-size:30px;line-height:1.35}.trip-head p{font-size:13px;color:var(--muted)}.trip-cover{height:112px;border-radius:12px;background:#eaf1ef;margin:0 0 18px}.trip-cover>span{font-size:11px;left:16px;bottom:14px;letter-spacing:.06em}.trip-cover>a{font-size:11px;max-width:60%}.summary-strip>div{background:#fff;border-color:var(--line);border-radius:11px}.summary-strip small{font-size:12px;color:var(--muted)}.summary-strip b{font-size:18px;color:var(--ink)}.route-helper{background:#eaf1ef;color:var(--muted);font-size:13px}.trip-view-switch{background:#eaf1ef}.trip-view-switch button{color:var(--muted);font-size:14px}.trip-view-switch button.active{background:#fff;color:var(--cta);box-shadow:none}.day-tab{background:#fff;color:var(--muted);border-color:var(--line);font-size:13px}.day-tab.active{background:var(--cta);color:#fff;border-color:var(--cta)}.stop-card{border-color:var(--line);border-radius:14px;background:#fff;margin-bottom:14px;box-shadow:none}.stop-time{font-size:13px;color:var(--cta)}.stop-body h3{font-size:20px;font-weight:650}.stop-body>p{color:var(--muted);font-size:14px;line-height:1.65}.trip-stop-photo{height:105px;border-radius:9px}.trip-photo-credit{font-size:11px;color:var(--muted)}.stop-detail{background:#edf3f0;color:var(--muted)}.stop-actions button,.stop-actions a{background:#edf3f0;border-color:var(--line);color:var(--cta);font-size:12px}.stop-actions a{background:var(--cta);color:#fff;border-color:var(--cta)}.stop-actions .danger{color:#a0474a}.trip-advice-fold{background:#edf3f0}.trip-advice-fold summary,.route-reason{color:var(--muted)}.companion-card{background:#edf3f0;border-color:var(--line)}
.travel-toolkit{background:#fff;border-color:var(--line);box-shadow:none;border-radius:14px}.toolkit-heading h2{font-size:17px}.toolkit-heading>span{color:var(--muted)}.toolkit-tabs{background:#eaf1ef}.toolkit-tabs button{color:var(--muted)}.toolkit-tabs button[aria-selected=true]{color:var(--cta);background:#fff;box-shadow:none}.prep-item{background:#f6f9f7;border-color:var(--line)}.prep-item.done{background:#e6f2eb;border-color:#c0dacc}.prep-item.done b{color:#286547}.prep-item input[type=checkbox]{accent-color:var(--cta)}.prep-item small,.tool-panel-intro,.toolkit-storage,.expense-footnote,.expense-status{color:var(--muted)}.prep-note,.extra-prep-form input,.expense-settings input,.expense-form input,.expense-form select{background:#fff;border-color:var(--line);color:var(--ink);font-size:16px}.expense-stats>div{background:#edf3f0}.expense-stats small{color:var(--muted);font-size:12px}.expense-stats .over-budget{background:#faecec;color:#a0474a}.expense-list small{color:var(--muted)}.expense-list button{color:#a0474a}.expense-settings button,.expense-undo,.extra-prep-form button{background:#edf3f0;border-color:var(--line);color:var(--cta)}.summary-export{background:var(--cta);border-color:var(--cta);color:#fff}.expense-settings label,.expense-form label{color:var(--muted)}.tool-empty{background:#edf3f0;color:var(--muted)}
.planner-card,.import-card,.place-picker,.adjust-card,.community-post,.saved-card,.account-card{border-color:var(--line);box-shadow:none;background:#fff;border-radius:14px}.segmented button.selected,.chip.selected,.pace-options input:checked+span{background:#e0eee8;color:#14594f;border-color:#a8c6b9}.planner-section .section-heading h2,.section-heading h2{font-size:24px}.import-card p,.form-hint{color:var(--muted)}.theme-card{background:#edf3f0;border-color:var(--line);border-radius:12px}.theme-card>span{color:var(--cta);background:#dfeee8}.bottom-nav{background:#fffffff5;border-color:var(--line);border-radius:14px 14px 0 0;box-shadow:none}.bottom-nav a{color:var(--muted)}.bottom-nav a.active{color:var(--cta)}.bottom-nav a.active svg{background:#e1f0ea;border-radius:8px}.bottom-nav b{font-size:12px}
.route-detail-dialog,.route-dialog-head,.route-detail-footer,.route-compare-dialog,.trip-summary-dialog,.action-dialog{background:#fff;color:var(--ink)}.route-dialog-head button{background:#edf3f0;color:var(--cta)}.route-detail-content h2{font-size:27px}.detail-metrics div,.detail-notes{background:#edf3f0}.detail-budget{background:#f5f8f6;border-color:var(--line)}.detail-budget small,.detail-notes p,.detail-stop p,.detail-stop small,.detail-metrics small{color:var(--muted)}.detail-stop-num{background:var(--cta);color:#fff}.route-detail-footer .primary-button{background:var(--cta);color:#fff}.route-detail-footer{border-color:var(--line)}.trip-summary-dialog textarea{background:#f5f8f6;border-color:var(--line);color:var(--ink)}.route-compare-bar{background:#184b43}.route-compare-bar .primary-button{background:#fff;color:var(--cta)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.route-card button:focus-visible,.discover-home button:focus-visible,.catalog-filter-panel :focus-visible,.route-detail-dialog :focus-visible,.route-compare-dialog :focus-visible{outline:3px solid #579e8d;outline-offset:3px}
@media(min-width:900px){.hero-card{min-height:0}.hero-copy{padding:14px 0 20px;width:100%}.hero-copy h1{font-size:40px}.route-card-photo{aspect-ratio:auto}.trip-stop-photo{height:120px}.stop-card{padding:20px}}
@media(max-width:679px){.view{padding:18px 16px 24px}.hero-card{min-height:0}.hero-copy{width:100%;padding:8px 0 16px}.hero-copy h1{font-size:29px;margin:8px 0 10px}.hero-copy>p:not(.eyebrow){max-width:none;font-size:14px;line-height:1.7}.hero-actions .text-button{padding:8px 0;font-size:13px}.benefit-line{font-size:12px;margin-bottom:22px}.scene-grid{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:9px;padding:0}.scene-grid button{padding:12px 10px;min-height:74px}.scene-grid b{font-size:12px}.scene-grid small{font-size:11px}.scene-heading>span{font-size:13px}.scene-heading small{font-size:11px}.discovery-heading h1{font-size:27px}.discovery-heading h2{font-size:24px}.route-card-body{padding:18px}.route-card h3{font-size:19px}.route-card-photo{height:100px;aspect-ratio:auto}.trip-head h1{font-size:25px}.summary-strip small{font-size:11px}.summary-strip b{font-size:15px}.trip-cover{height:96px}.trip-stop-photo{height:100px}.walking-section-tabs button{font-size:13px;padding:11px 13px}.expense-stats b{font-size:17px}}
@media(max-width:359px){.view{padding-left:12px;padding-right:12px}.scene-grid button{gap:7px}.scene-icon{width:26px;height:30px}.scene-grid b{font-size:11px}.scene-grid small{font-size:11px}.summary-strip b{font-size:13px}.toolkit-heading h2{font-size:15px}}
