/* Shared styles for completed-tour journey pages (tours/YYYYMM/plan.html). */
:root{--ink:#19382f;--muted:#64766b;--paper:#f4f4ed;--card:#fff;--line:#dbe3da;--orange:#b86522;--radius:18px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}a{color:#126e66;text-decoration-thickness:1px;text-underline-offset:3px}button{font:inherit;cursor:pointer}.wrap{max-width:1200px;margin:auto;padding:0 26px}header{background:#173b30;color:white;padding:42px 0 35px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:750;color:#c6ddc8}h1{font-size:clamp(30px,5vw,49px);line-height:1.13;margin:10px 0 15px;letter-spacing:-.035em;max-width:900px}header p{max-width:840px;color:#d8e5dc;margin:8px 0}.subline{font-size:14px;color:#adcbb9}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:25px}.metric{border:1px solid #ffffff2d;border-radius:12px;padding:13px 16px;background:#ffffff07}.metric strong{display:block;font-size:25px;line-height:1.2}.metric span{font-size:12px;color:#d4e2d7}.lead-note{background:#fff6e6;border-left:4px solid #cf9d45;padding:15px 19px;border-radius:0 10px 10px 0;margin:24px 0;font-size:14px}.lead-note strong{color:#674914}.section{margin:28px 0}.section h2{margin:0 0 7px;font-size:24px;letter-spacing:-.025em}.section>p{margin:0 0 17px;color:var(--muted)}.card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 28px #14362905}.mapbar{padding:17px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.buttons{display:flex;flex-wrap:wrap;gap:7px}.day-btn,.light-btn{border:1px solid #d5ded4;color:#335043;border-radius:8px;background:#fff;padding:7px 12px;font-size:14px;font-weight:650}.day-btn.active{background:#173b30;color:white;border-color:#173b30}.day-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px}.light-btn:hover{background:#edf3ed}.primary-btn{background:#176b57;border:0;color:white;padding:9px 14px;border-radius:8px;font-size:14px;font-weight:700}.map-area{position:relative}#route-map{height:560px;background:#e9ede5}#offline-map{display:none;padding:10px;background:#f7f6f0}#offline-map svg{width:100%;height:auto}.map-status{font-size:13px;min-height:21px;color:var(--muted);padding:8px 18px;border-top:1px solid var(--line)}.map-caption{font-size:12px;color:var(--muted);padding:8px 18px 14px}.legend{display:flex;gap:17px;flex-wrap:wrap;padding:12px 18px 0;font-size:12px;color:var(--muted)}.legend i{display:inline-block;width:10px;height:10px;vertical-align:middle;margin-right:6px}.round{border-radius:50%}.diamond{transform:rotate(45deg);background:#d45483}.map-note{font-size:13px;color:var(--muted);padding:0 18px 18px}.findings{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.finding{padding:20px;border:1px solid var(--line);border-radius:14px;background:white}.finding .tag{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#3b7e6a}.finding h3{font-size:18px;margin:7px 0}.finding p{margin:0;font-size:14px;color:var(--muted)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;background:#f2f6f0;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:13px 15px;color:#53685a;white-space:nowrap}td{padding:13px 15px;border-top:1px solid #e8ede5;vertical-align:top}td small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.nowrap{white-space:nowrap}.badge{display:inline-block;font-size:10px;line-height:1.4;background:#eaf2e9;color:#37684d;padding:3px 6px;border-radius:5px;margin-left:6px;vertical-align:middle}.badge.transit{background:#f0eee4;color:#756746}.day-section{margin-top:16px}.day-head{padding:20px;display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line)}.day-head h3{margin:0 0 6px;font-size:20px}.day-head p{margin:0;font-size:13px;color:var(--muted);max-width:820px}.distance{font-size:24px;font-weight:750;white-space:nowrap}.distance small{display:block;font-size:11px;font-weight:400;color:var(--muted)}.time-cell{min-width:155px}.evidence{font-size:12px;color:var(--muted);max-width:470px}.evidence a{font-size:12px}.stop-button{border:0;padding:0;background:transparent;color:#176b57;text-align:left;font:inherit;font-weight:650;text-decoration:underline;text-decoration-color:#c2d3c6;text-underline-offset:3px}.route-links{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.route-link{display:block;padding:14px 17px;background:white;border:1px solid var(--line);border-radius:10px;font-size:14px;font-weight:650;text-decoration:none}.route-link:after{content:' ↗';float:right}.method{font-size:13px;color:#5a6b5f}.method li{margin:7px 0}.method details{margin:13px 0}.method summary{cursor:pointer;font-weight:650;color:var(--ink)}.footer{font-size:12px;color:var(--muted);padding:25px 0 35px}.leaflet-popup-content{font:13px/1.5 system-ui,sans-serif;min-width:210px}.leaflet-popup-content h3{margin:0 0 6px;font-size:15px}.leaflet-popup-content p{margin:5px 0}.leaflet-tooltip{font:12px system-ui,sans-serif}.hidden{display:none!important}.kml-help{background:#eef5ef;padding:17px 20px;border-radius:12px;font-size:14px;margin-top:14px}.kml-help ol{margin:8px 0 0;padding-left:22px}.source-label{font-size:11px;font-weight:650;color:#6a7b6d}.small-link{font-size:12px}.photo-table td{font-size:12px}.photo-table th{font-size:10px}.muted{color:var(--muted)}
@media(max-width:700px){.wrap{padding:0 15px}header{padding:27px 0}.metrics{grid-template-columns:repeat(2,1fr)}.metric strong{font-size:22px}.findings{grid-template-columns:1fr}.mapbar{padding:13px}.day-btn{padding:7px 9px;font-size:12px}#route-map{height:420px}.route-links{grid-template-columns:1fr}.day-head{padding:16px}.day-head h3{font-size:18px}.distance{font-size:21px}td,th{padding:11px}.evidence{min-width:220px}.section h2{font-size:22px}.map-caption,.map-status,.legend,.map-note{padding-left:13px;padding-right:13px}.lead-note{font-size:13px}.time-cell{min-width:125px}}
@media print{header{color:#173b30;background:white;padding:10px 0}.eyebrow,header p,.subline,.metric span{color:#456351}.metrics .metric{border:1px solid #ccd8cb}.wrap{max-width:none}#route-map,.mapbar,.legend,.map-status,.map-note,.primary-btn{display:none!important}#offline-map{display:block!important}.card{box-shadow:none}.day-section{break-inside:avoid}.footer{padding-bottom:0}a{color:inherit}.findings{grid-template-columns:repeat(3,1fr)}.hidden{display:block!important}}

.leaflet-control-layers-toggle{background-image:none!important;display:flex;align-items:center;justify-content:center}.leaflet-control-layers-toggle::after{content:"☷";font-size:26px;color:#315846}

[hidden]{display:none!important}.map-views{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:14px 18px;background:#edf3ec;border-bottom:1px solid var(--line)}.view-btn{border:1px solid transparent;background:transparent;color:#335043;border-radius:8px;padding:9px 13px;font-size:14px;font-weight:700}.view-btn.active{background:white;border-color:#c9d7c8;box-shadow:0 2px 5px #173b3008}.map-open{margin-left:auto;font-size:13px;font-weight:650;padding:6px}.replay-controls{padding:17px 18px 13px;background:#f7faf5;border-top:1px solid var(--line)}.replay-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.replay-row label{font-size:13px;color:#365846;display:flex;align-items:center;gap:8px}.replay-row select{font:inherit;color:var(--ink);background:white;border:1px solid #c6d4c4;border-radius:7px;padding:6px 9px}.follow-label{margin-left:auto}.follow-label input{accent-color:#176b57;width:16px;height:16px}.replay-info{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px;font-size:13px}.replay-info strong{font-variant-numeric:tabular-nums}.replay-info span{font-size:12px;color:var(--muted);white-space:nowrap}.replay-seek{width:100%;margin:13px 0 10px;accent-color:#176b57;cursor:pointer;display:block;min-height:22px}.replay-place{font-size:14px;min-height:24px;font-weight:650;color:#315c46}.replay-place.gap-message{color:#986018}.replay-help{margin:8px 0 0;font-size:12px;color:var(--muted);max-width:950px}.replay-car{background:none;border:0;filter:drop-shadow(0 3px 5px #183b3055)}.car-rotor{width:46px;height:46px;transform-origin:center}.car-rotor svg{display:block;width:100%;height:100%}.day-btn.replaying:not(.active){box-shadow:inset 0 -3px #dca446}.google-map-frame{display:block;width:100%;height:650px;border:0;background:#e9ede5}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #dd9c35;outline-offset:3px}button:disabled{opacity:.45;cursor:default}@media(max-width:700px){.map-views{padding:11px 13px}.view-btn{font-size:12px;padding:9px}.map-open{margin-left:0;width:100%;font-size:12px}.replay-controls{padding:15px 13px}.replay-row{gap:12px}.follow-label{margin-left:0}.replay-info{align-items:flex-start;flex-direction:column;gap:4px}.replay-place{font-size:13px}.google-map-frame{height:500px}}@media print{.map-views,.replay-controls,#google-panel{display:none!important}#recorded-panel{display:block!important}}

#route-map{background-color:#edf1e8;background-image:none}.route-city-label{background:#fffffff0;border:0;box-shadow:none;color:#244735;font-size:11px;font-weight:700}.google-direct{padding:30px;max-width:800px}.google-direct h3{margin-top:0}.google-direct a.primary-btn{display:inline-block;text-decoration:none;margin:10px 0}.google-direct p{font-size:14px}
.tough-card{border-left:6px solid #c62828;background:#fff7f5;padding:24px 26px}.tough-card p{margin:0 0 12px}.tough-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 18px}.tough-stat{background:white;border:1px solid #f1c9c2;border-radius:12px;padding:12px 14px}.tough-stat strong{display:block;font-size:22px;color:#9f1d1d;line-height:1.2}.tough-stat span{font-size:13px;color:#7b4b45}.tough-list{margin:0 0 14px;padding-left:20px}.tough-list li{margin:5px 0}.tough-note{font-weight:700;color:#7a2a20}
tr.tough td{background:#fff3f1!important}tr.tough td:first-child{box-shadow:inset 4px 0 #c62828}tr.tough-banner td{background:#c62828!important;color:white;font-weight:700;font-size:14px}tr.tough-banner a{color:white}
.legend .tough-line{display:inline-block;width:22px;height:6px;border-radius:3px;background:#c62828;vertical-align:middle;margin-right:5px}
@media(max-width:700px){.tough-stats{grid-template-columns:1fr}.tough-card{padding:18px}}
.text-card{padding:22px 26px}.text-card p{margin:0 0 12px}.text-card p:last-child{margin-bottom:0}.text-card table{margin:4px 0 0}.text-card td,.text-card th{padding:10px 12px}
.note-box{border-left:4px solid #cf9d45;background:#fff8e8;padding:12px 16px;border-radius:0 10px 10px 0;font-size:14px;margin:14px 0 0}
.findings.six{grid-template-columns:repeat(3,1fr)}.map-fallback{padding:40px 20px;text-align:center;color:var(--muted)}
tr.special td{background:#f4f8ff!important}
@media(max-width:700px){.text-card{padding:18px}.findings.six{grid-template-columns:1fr}}
.google-direct{padding:30px;max-width:800px}.google-direct h3{margin-top:0}.google-direct a.primary-btn{display:inline-block;text-decoration:none;margin:10px 8px 10px 0}.google-direct p{font-size:14px}
.slow-card{border-left:6px solid #cf7a1d;background:#fff8ee;padding:22px 24px;margin-top:16px}.slow-card h3{margin:0 0 8px;color:#8a4b0f}.slow-card>p{margin:0 0 12px;font-weight:600;color:#6b3d12}
.slow-table td:first-child{white-space:nowrap}.slow-table .light-btn{white-space:nowrap}
