/* All additions are scoped to Carros; retain the shared guide's type and controls. */
#carros-short[hidden],#carros-full[hidden],#carros-short [hidden]{display:none!important}
.carros-mode-control{padding-top:26px;padding-bottom:32px;border-top:1px solid #ccd7c3}
.carros-mode-control .hu-plan-form{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);align-items:end}
.carros-mode-control .hu-plan-option{grid-column:auto}
#carros-short .hu-plan-form{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr))}
#carros-short .hu-plan-option{grid-column:auto}
#carros-short .hu-plan-form button{align-self:end}
#carros-short .hu-plan-form input,#carros-short .hu-plan-form select,.carros-mode-control select{min-width:0;width:100%;max-width:100%}
.carros-stage-grid,.carros-food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:30px}
.carros-stay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:26px}
.carros-stage,.carros-stay{padding:24px;background:#fffefa;border:1px solid #ccd7c3;border-radius:4px;min-width:0;max-width:none}
.carros-stage p,.carros-stay p,#carros-short .hu-food-card p{font-size:14px;line-height:1.7}
.carros-stage h3,#carros-short .carros-stay h3{font-size:25px;margin:10px 0 16px}
.carros-stage a,.carros-stay a{overflow-wrap:anywhere}
.carros-stage-metric{padding:13px 15px;background:#edf2e6;border-left:3px solid #ad792e}
.carros-sequence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 30px;padding-left:22px;margin-top:24px}
.carros-sequence li{font-size:14px;line-height:1.7;padding-left:3px}
#carros-short .hu-logistics{grid-template-columns:repeat(2,minmax(0,1fr))}
#carros-short .hu-route-map{height:420px}
#carros-short .hu-readiness{padding-top:15px}
.carros-cost-note,.carros-accuracy-note{background:#fff8e8;border-left:4px solid #ad792e}
.carros-cost-note{padding:22px;margin-top:28px}
.carros-accuracy-note{padding-top:22px;padding-bottom:22px;font-size:14px}
/* Shared code initially renders the old food metric; keep it hidden until replaced. */
#carros-full .hu-food-distance{display:none}
#carros-full .hu-food-distance.carros-distance-caveat{display:block;font-weight:400;font-size:13px}
#carros-short .hu-text-button{white-space:normal;text-align:left;min-height:42px}
#carros-copy-fallback input{max-width:100%;min-width:0}
@media(max-width:980px){.carros-stage-grid,.carros-food-grid{grid-template-columns:1fr}#carros-short .hu-plan-form{grid-template-columns:repeat(2,minmax(0,1fr))}#carros-short .hu-plan-option{grid-column:1/-1}}
@media(max-width:600px){.carros-mode-control .hu-plan-form,#carros-short .hu-plan-form,.carros-stay-grid,#carros-short .hu-logistics,.carros-sequence{grid-template-columns:1fr}.carros-stage,.carros-stay{padding:20px}#carros-short .hu-route-map{height:310px}#carros-short h2,.carros-mode-control h2{overflow-wrap:break-word}.carros-mode-control .hd-button,#carros-short .hu-plan-form .hd-button{width:100%;white-space:normal}.carros-accuracy-note{margin-left:5%;margin-right:5%;max-width:90%}}

/* Optional village nights use a single base preference; both suggestions remain comparable. */
.carros-base-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:22px 0}
#carros-base-options{margin:28px 0 35px}
#carros-base-summary{padding:15px 18px;background:#edf2e6;border-left:3px solid #52796a}
#carros-short [data-carros-base-card].carros-base-selected{border:2px solid #52796a}
#carros-short [data-carros-choose-base][aria-pressed="true"]{font-weight:700}
.carros-night-outline{padding-left:24px;line-height:1.8}
.carros-night-outline li{margin:6px 0}
@media(max-width:600px){.carros-base-grid{grid-template-columns:1fr}}

/* Short-option route controls and un-cropped, attributed refuge photography. */
#carros-short .carros-map-controls{display:flex;align-items:end;gap:18px;justify-content:space-between;margin:0 0 15px;padding:15px 18px;background:#edf2e6;border:1px solid #ccd7c3;border-radius:4px}
#carros-short .carros-map-controls label{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1;font-size:13px;font-weight:700}
#carros-short .carros-map-controls select{width:100%;min-width:0;max-width:100%;min-height:44px;background:#fffefa;border:1px solid #a3af98;border-radius:3px;padding:8px;color:inherit;font:inherit}
#carros-short .carros-map-actions{display:flex;gap:14px;flex-wrap:wrap}
#carros-short .carros-map-actions button{min-height:44px}
#carros-short .carros-map-legend{display:flex;flex-wrap:wrap;gap:10px 24px;margin:16px 0 8px;padding:0;list-style:none;font-size:13px;line-height:1.6}
#carros-short .carros-map-legend li{display:flex;align-items:center;gap:8px}
#carros-short .carros-line-key{display:inline-block;flex:0 0 27px;width:27px;border-top:4px solid}
#carros-short .carros-line-day1{border-color:#a34e0a}#carros-short .carros-line-day2{border-color:#246887}#carros-short .carros-line-day3{border-color:#74479c}
#carros-short .carros-line-lift{border-color:#515b60;border-top-style:dashed;border-top-width:3px}
#carros-short #carros-map-status{margin:10px 0;font-weight:700}
#carros-short .carros-map-source{margin-top:10px}
#carros-short .carros-hut-photo{margin:0 0 18px;padding:0;width:100%}
#carros-short .carros-hut-photo img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;border-radius:3px}
#carros-short .carros-hut-photo figcaption{padding:9px 0 0;font-size:12px;line-height:1.6;color:#4c5945;overflow-wrap:anywhere}
@media(max-width:600px){#carros-short .carros-map-controls{align-items:stretch;flex-direction:column;gap:10px;padding:13px}#carros-short .carros-map-actions{justify-content:space-between;gap:8px}#carros-short .carros-map-actions button{flex:1}#carros-short .carros-map-legend{gap:8px 16px}}

#carros-short .carros-line-alternative{border-top-style:dotted;border-top-width:3px}

/* Personal trail photographs are confined to the short option; never crop originals. */
#carros-short .carros-personal-photo{min-width:0;margin:0;padding:0}
#carros-short .carros-personal-photo img{display:block;width:100%;max-width:100%;height:auto;object-fit:contain;border-radius:3px}
#carros-short .carros-personal-photo figcaption{margin:0;padding:9px 0 0;font-size:12px;line-height:1.6;color:#4c5945;overflow-wrap:anywhere}
#carros-short .carros-photo-credit{display:block;font-size:11px;color:#596450}
#carros-short .carros-personal-lead{max-width:720px;margin:24px 0 26px}
#carros-short .carros-photo-grid{display:grid;grid-template-columns:9fr 16fr 9fr 9fr;gap:18px;align-items:start;margin-top:22px}
#carros-short .carros-photo-section{padding-top:36px;padding-bottom:36px;border-bottom:1px solid #ccd7c3}
@media(max-width:760px){#carros-short .carros-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}}
@media(max-width:400px){#carros-short .carros-photo-grid{gap:20px 12px}#carros-short .carros-personal-photo figcaption{font-size:11px}}
