.ha-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.78fr);gap:1.35rem;align-items:start;margin-top:1.4rem}
.ha-card,.ha-summary,.ha-panel{border:1px solid var(--line,#eadfce);background:rgba(255,255,255,.82);box-shadow:0 18px 45px rgba(85,67,42,.08);border-radius:24px}
.ha-card{overflow:hidden}
.ha-section{padding:1.35rem}
.ha-section+.ha-section{border-top:1px solid var(--line,#eadfce)}
.ha-section h2,.ha-summary h2,.ha-panel h2{margin:.15rem 0 0}
.ha-section-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:1rem}
.ha-section-head p,.ha-note,.ha-help{margin:0;color:var(--muted,#6e665c);line-height:1.6}
.ha-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.ha-field{display:flex;flex-direction:column;gap:.4rem;font-weight:700;min-width:0}
.ha-field-wide{grid-column:1/-1}
.ha-field input,.ha-field select{width:100%;box-sizing:border-box;border:1px solid #d9cdbd;border-radius:14px;background:#fff;padding:.78rem .85rem;font:inherit;color:inherit}
.ha-field input:focus,.ha-field select:focus{outline:3px solid rgba(255,193,79,.24);border-color:#d9a43f}
.ha-field small{font-weight:500;color:#6e665c}
.ha-check{display:flex;gap:.6rem;align-items:flex-start;font-weight:650;line-height:1.5}
.ha-check input{margin-top:.25rem}
.ha-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.9rem}
.ha-summary{position:sticky;top:1rem;padding:1.35rem}
.ha-price{padding:.4rem 0 1rem;border-bottom:1px solid var(--line,#eadfce)}
.ha-price span,.ha-price small{display:block;color:#6e665c}
.ha-price p{margin:.55rem 0 0;color:#6e665c;line-height:1.55}
#ha-reserve-short{color:#795a15;font-weight:700}
.ha-price strong{display:block;margin:.25rem 0;font-size:clamp(1.8rem,4.5vw,3rem);line-height:1.05;letter-spacing:-.04em;overflow-wrap:anywhere}
.ha-list{margin:1rem 0;display:grid;gap:.1rem}
.ha-list div,.ha-gap-list div{display:flex;justify-content:space-between;gap:.8rem;padding:.62rem 0;border-bottom:1px dashed #e9dfd2}
.ha-list dt,.ha-gap-list dt{color:#6e665c}
.ha-list dd,.ha-gap-list dd{margin:0;text-align:right;font-weight:800;overflow-wrap:anywhere}
.ha-status{margin:.8rem 0 0;padding:.75rem .9rem;border-radius:13px;background:#fff5dc;color:#795a15;line-height:1.55}
.ha-status[data-kind="error"]{background:#fff0ee;color:#922f24}
.ha-panel{margin-top:1.35rem;padding:1.35rem}
.ha-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem}
.ha-scenarios article{padding:1rem;border:1px solid #eadfce;border-radius:18px;background:#fffdf9;min-width:0}
.ha-scenarios h3{margin:0 0 .35rem;font-size:1rem}
.ha-scenarios strong{display:block;font-size:1.25rem;overflow-wrap:anywhere}
.ha-scenarios p{margin:.35rem 0 0;color:#6e665c}
.ha-chart{width:100%;height:auto;display:block}
.ha-chart-label,.ha-chart-value{font-size:14px;fill:#3f382f}
.ha-bar{fill:#ffbf5a}
.ha-bar-high{fill:#e7a08a}
.ha-links{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:.8rem}
.ha-links a{font-weight:800}
.ha-re-summary p{margin:.4rem 0}
@media(max-width:900px){
  .ha-layout{grid-template-columns:1fr}
  .ha-summary{position:static}
  .ha-section-head{flex-direction:column;align-items:flex-start}
}
@media(max-width:640px){
  .ha-grid,.ha-scenarios{grid-template-columns:1fr}
  .ha-field-wide{grid-column:auto}
  .ha-section,.ha-summary,.ha-panel{padding:1rem}
}
@media(max-width:390px){
  .ha-price strong{font-size:1.7rem}
  .ha-list div,.ha-gap-list div{align-items:flex-start}
  .ha-list dd,.ha-gap-list dd{max-width:54%}
}
