.ready-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.ready-route-card{border:1px solid #d8ddc8;border-radius:24px;overflow:hidden;background:#fffdf2;display:flex;flex-direction:column}.route-card-body{padding:24px;display:flex;flex-direction:column;flex:1}.route-card-body h3{font-size:25px;line-height:1.2;margin:16px 0}.route-card-body p{flex:1}.route-photo{margin:0;min-width:0}.route-photo img{width:100%;height:210px;object-fit:cover;display:block}.route-photo figcaption{font-size:11px;line-height:1.5;padding:7px 12px;background:#eeefdc;color:#61735c}.route-chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 20px}.route-chips span{padding:7px 11px;background:#f3e3b9;border-radius:20px;font-size:13px}.route-builder-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#e8edda;border:1px solid #d8ddc8;border-radius:24px;padding:32px;margin:28px 0}.route-builder-banner h2{margin:10px 0}.route-cover{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;border-radius:24px;overflow:hidden;margin:24px 0}.route-cover img{height:290px}.route-metrics{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:16px;padding:24px;background:#e8edda;border-radius:20px;margin:24px 0}.route-metrics small{display:block;color:#697861;margin-bottom:10px}.route-metrics b{font-size:23px;font-weight:600}.route-note{max-width:1000px;font-size:14px}.goldies-route-note{margin:28px 0;padding:24px;border-radius:20px;background:#fae9b8}.goldies-route-note p{margin-bottom:0}.trip-stops{list-style:none;padding:0;margin:32px 0}.trip-stops>li{display:grid;grid-template-columns:44px minmax(150px,260px) 1fr;gap:24px;padding:28px 0;border-top:1px dashed #c8cfb5;align-items:start}.trip-stops h2{font-size:28px;margin:12px 0}.trip-stops .route-photo{border-radius:16px;overflow:hidden}.trip-number{border:1px solid #c89e50;border-radius:50%;background:#f7d98c;width:40px;height:40px;display:grid;place-items:center}.route-builder-form{background:#e8edda;padding:28px;border-radius:24px;margin:25px 0}.route-builder-form fieldset{border:0;padding:0;margin:0 0 24px}.route-builder-form legend{font-weight:700;margin-bottom:12px}.route-interest{display:flex;gap:10px;flex-wrap:wrap}.route-interest label{position:relative}.route-interest input{position:absolute;opacity:0;width:1px;height:1px}.route-interest span{display:block;padding:12px 17px;border:1px solid #bfc9ad;border-radius:24px;background:#fffdf2;cursor:pointer}.route-interest input:checked+span{background:#305d49;color:#fffdf2}.route-interest input:focus-visible+span{outline:3px solid #d88753;outline-offset:2px}.route-form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.route-builder label{display:block;font-weight:600}.route-builder input:not([type=checkbox]),.route-builder select{display:block;width:100%;min-width:0;padding:15px;border:1px solid #cbd2bb;border-radius:12px;background:#fffdf4;color:#305240;font:inherit;margin-top:8px}.route-builder-work{display:grid;grid-template-columns:340px minmax(0,1fr);gap:28px;align-items:start}.route-editor{background:#fffdf2;padding:24px;border:1px solid #d8ddc8;border-radius:20px}.route-editor h2{margin-top:0}.route-result{min-width:0}.route-result .route-metrics{grid-template-columns:1fr 1fr;margin-top:0}.route-result .real-map{height:520px}.route-editor ol{list-style:none;padding:0}.route-editor li{padding:20px 0;border-bottom:1px dashed #c8cfb5}.route-editor small{display:block;font-weight:400;margin:6px 0}.route-editor li label{font-size:12px;margin:12px 0}.route-editor li input{max-width:110px;padding:10px!important}.route-order{display:flex;gap:10px;align-items:center}.route-order .secondary{padding:8px 16px}.route-search-item{display:block;text-align:left;background:#e8edda;border:0;border-radius:8px;padding:12px;font:inherit;color:#305240;width:100%;margin:8px 0;cursor:pointer}.route-search-item:disabled{opacity:.45}.route-result .map-tools{gap:8px}.route-result .map-tools button{padding:12px}.route-page .page-actions{flex-wrap:wrap}.route-page .guide-grid{margin-top:24px}.route-page .small-card{padding:24px;background:#e8edda;border-radius:20px}.visit-proof{padding:20px;border:1px solid #d7be72;border-radius:16px;background:#fff1c9;margin-bottom:20px}.visit-proof button{margin-top:10px}.visit-proof [role=status]{margin-bottom:0}.goldies-history{list-style:none;padding:0}.goldies-history li{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px dashed #cad1ba}.reward-label{background:#fae9b8;padding:10px;border-radius:10px;font-size:14px}#guest-routes p{display:flex;justify-content:space-between;gap:10px;font-size:14px}.ready-route-card img{transition:transform .25s}.ready-route-card:hover img{transform:scale(1.025)}@media(prefers-reduced-motion:reduce){.ready-route-card img{transition:none}}@media(max-width:1000px){.ready-routes{grid-template-columns:repeat(2,minmax(0,1fr))}.route-builder-work{grid-template-columns:300px minmax(0,1fr)}.route-form-grid{grid-template-columns:1fr 1fr}.route-metrics{grid-template-columns:1fr 1fr}.route-cover img{height:230px}}@media(max-width:700px){.ready-routes{grid-template-columns:1fr}.route-builder-banner{display:block;padding:24px}.route-builder-banner .primary{margin-top:14px}.route-cover{grid-template-columns:1fr 1fr}.route-cover .route-photo:first-child{grid-column:1/-1}.route-cover img{height:160px}.route-cover .route-photo:first-child img{height:220px}.route-metrics{padding:20px;gap:20px}.route-metrics b{font-size:19px}.route-builder-work{grid-template-columns:1fr}.route-builder-form{padding:20px}.route-form-grid{grid-template-columns:1fr 1fr;gap:12px}.route-form-grid label{font-size:13px}.route-form-grid select{padding:12px 8px}.route-interest span{padding:10px 13px;font-size:14px}.trip-stops>li{grid-template-columns:36px 1fr;gap:16px}.trip-stops .route-photo{grid-column:2}.trip-stops>li>div{grid-column:2}.trip-stops .route-photo img{height:200px}.trip-number{width:34px;height:34px}.trip-stops h2{font-size:24px}.route-result .real-map{height:420px}.route-page .page-actions .primary,.route-page .page-actions .secondary{max-width:100%;white-space:normal}.route-result .map-topnote span:last-child{display:none}}

.route-builder .map-empty{display:none}

/* Route stop actions share a centered row; back links must not inherit page-navigation margins. */
.trip-stops .trip-actions{margin:20px 0 0;gap:10px 16px;align-items:center}
.trip-stops .trip-actions>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;max-width:100%;white-space:normal;text-align:center}
@media(max-width:480px){.trip-stops .trip-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.trip-stops .trip-actions>a{width:100%}}

.route-filters{margin:24px 0;padding:24px;border:1px solid var(--line);border-radius:22px;background:var(--paper,#fffdf4)}
.route-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.route-filter-grid label{display:grid;gap:8px;font-weight:800}.route-filter-grid select{width:100%;min-width:0}
.route-filter-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:20px}.route-filter-actions label{display:flex;align-items:center;gap:9px;cursor:pointer}.route-filter-actions input{width:20px;height:20px;accent-color:#2e604c;flex:none}.route-filter-actions .primary{min-height:48px;font-size:15px;padding:12px 20px}.route-filter-reset{padding:12px 0}.route-filters .muted{font-size:14px;margin:16px 0 0}.route-result-count{margin:24px 0}.route-mode-switch{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.route-mode-switch a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:700px){.route-filters{padding:18px}.route-filter-grid{grid-template-columns:minmax(0,1fr)}.route-filter-actions{gap:16px}.route-filter-actions label{width:100%;font-size:15px}.route-filter-actions .primary{flex:1}.route-mode-switch a{flex:1}.route-chips{gap:6px}}
.route-filter-grid select{min-height:48px;padding:13px 16px;border:1px solid #cbd2bb;border-radius:12px;background:#fffdf4;color:#305240;font:inherit;font-weight:600}.route-filters{border-color:#d8ddc8}.route-filter-grid select:focus-visible{outline:3px solid #d88753;outline-offset:2px}
