.journey-coach-panel{--coach:#d62e32;--coach-ink:#24334a}.coach-head{display:flex;align-items:center;gap:10px}.coach-head h2{margin:0;font-size:clamp(19px,5vw,25px)}.coach-subtitle{color:#53657c}.journey-coach-panel label{display:block;font-weight:750;margin:13px 0 5px}.journey-coach-panel input,.journey-coach-panel textarea{box-sizing:border-box;width:100%;min-width:0;font:inherit;padding:12px;border:1px solid #bac5d1;border-radius:10px}.coach-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.coach-date-grid label{min-width:0}.coach-tools{display:grid;gap:9px;margin:16px 0}.coach-tools a{display:block;padding:12px;border:1px solid #e3b4b5;border-radius:10px;color:#92202b;font-weight:700;text-decoration:none;background:#fff9f9}.coach-summary,.coach-manual{margin-top:16px;padding:14px;background:#fff8f6;border:1px solid #f0d1c9;border-radius:12px}.coach-summary strong{display:block;font-size:19px}.coach-manual summary{font-weight:800;cursor:pointer}.coach-road-head{display:flex;justify-content:space-between;margin:18px 0 8px}.coach-road{list-style:none;padding:0;margin:0}.coach-road li{display:flex;gap:12px;align-items:center;padding:12px 8px;border-left:3px solid #d3d9e2;margin-left:11px}.coach-road li.done{opacity:.45}.coach-road li.next{background:#fff1e7;border-radius:9px;border-left-color:#d62e32}.coach-dot{width:15px;height:15px;border-radius:50%;background:#d62e32;flex:none;margin-left:-19px;border:3px solid white}.coach-road li span:nth-child(2){flex:1}.coach-road small{display:block;color:#556}.coach-road li b{font-size:12px;color:#a22}.coach-road-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.journey-coach-panel button{cursor:pointer}.journey-coach-panel button:disabled{opacity:.4;cursor:default}@media(max-width:360px){.coach-date-grid{grid-template-columns:1fr}}
#coachPlanForm input[type="date"],#coachPlanForm input[type="time"]{min-width:0;max-width:100%;box-sizing:border-box}
#coachPlanForm .coach-datetime{gap:12px}

.coach-nat-service{display:block;width:100%;margin:9px 0;padding:14px;text-align:left;border-radius:12px}.coach-official-search{display:block;margin-top:15px;padding:12px;text-align:center}.coach-date-grid{gap:16px!important}.coach-date-grid>*{min-width:0}
/* Stage 13: coach stop suggestions */
.coach-stop-suggestions{margin:4px 0 12px;border:1px solid #bac8dc;border-radius:12px;max-height:260px;overflow-y:auto;background:#fff;box-shadow:0 6px 16px #12254a1c}.coach-stop-suggestions[hidden]{display:none!important}.coach-stop-choice{display:block;width:100%;text-align:left;padding:12px 14px;border:0;border-bottom:1px solid #e8edf5;background:#fff;color:#142d5a;font:inherit;font-size:16px;line-height:1.3;cursor:pointer}.coach-stop-choice:focus,.coach-stop-choice:hover{background:#edf3ff}.coach-date-grid{gap:12px!important}.coach-date-grid>*{min-width:0}

/* Stage 14: minimal, legible Coach layout */
#journeyCoachPanel{padding-bottom:20px}
#journeyCoachPanel .coach-head{margin-bottom:12px}
#journeyCoachPanel #coachPlanForm>label{margin-top:12px}
#journeyCoachPanel #coachSwap{margin:8px 0 2px;padding:8px 15px}
#journeyCoachPanel .coach-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px!important;margin:8px 0 16px}
#journeyCoachPanel .coach-date-grid label{display:block;min-width:0;font-size:14px;line-height:1.35}
#journeyCoachPanel .coach-date-grid input{display:block;width:100%;min-width:0;max-width:100%;margin-top:7px;font-size:16px;padding:10px 7px}
#journeyCoachPanel .coach-more-options{margin-top:16px;background:transparent;border-color:#d9e1ec}
#journeyCoachPanel .coach-more-options>summary{font-size:15px;padding:12px 14px}
#journeyCoachPanel .coach-summary{margin-top:14px;padding:12px;border-radius:12px}
#journeyCoachPanel .coach-result-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px}
#journeyCoachPanel .coach-result-heading strong{font-size:17px}
#journeyCoachPanel .coach-result-heading span{font-size:13px;color:#5b6474}
#journeyCoachPanel .coach-result-count{font-weight:700;margin:12px 0 6px}
#journeyCoachPanel .coach-nat-service{padding:12px 14px;margin:7px 0;font-size:15px;line-height:1.35}
#journeyCoachPanel .coach-book-link{display:block;text-align:center;margin:12px 0 4px;font-weight:700;color:#9a2632}
#journeyCoachPanel .coach-snapshot-note{display:block;text-align:center;color:#647082;font-size:12px}
#journeyCoachPanel .coach-road-head{gap:10px}
@media(max-width:430px){#journeyCoachPanel .coach-date-grid{grid-template-columns:minmax(0,1fr)!important;gap:2px!important}#journeyCoachPanel .coach-date-grid label{margin:7px 0!important}}
