
/* Responsive hardening after visual QA */
main{min-width:0;overflow-x:hidden}.panel,.decision-card,.metric-card,.goal-card,.route-card,.week-card,.coach-box{min-width:0}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.goals-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.mini-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.routes-list{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.two-col{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.hero{grid-template-columns:minmax(0,1fr) minmax(280px,360px)}.route-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.route-stat strong{overflow-wrap:anywhere}.table-wrap{max-width:100%;overflow-x:auto}.coach-box{height:auto;min-height:280px}td,th{white-space:nowrap}.section-head{min-width:0}@media(max-width:1280px){.hero{grid-template-columns:1fr}.decision-card{min-height:180px}h1{font-size:44px}}@media(max-width:760px){.routes-list,.two-col{grid-template-columns:1fr}.metrics-grid{grid-template-columns:1fr 1fr}.route-stats{grid-template-columns:1fr 1fr}}
