/* Step 3 — validated acoustic inputs. Component-only styles. */
.box-acoustic-column{display:flex;flex-direction:column;gap:var(--space-2)}
.box-enclosure-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--line)}
.box-enclosure-summary>div{min-width:0}
.box-enclosure-summary small,.box-acoustic-step-title small,.box-acoustic-block__head small{display:block;color:var(--muted);font-size:var(--font-sm);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}
.box-enclosure-summary h2{margin:2px 0 0;font-size:var(--font-xl)}
.box-enclosure-summary .button{min-height:38px;padding-inline:12px;flex:none}
.box-acoustic-step-title{padding:2px 0 var(--space-1)}
.box-acoustic-step-title h3{margin:2px 0 0;font-size:var(--font-xl);line-height:1.2}

.box-acoustic-block{border:1px solid color-mix(in srgb,var(--design-color) 18%,var(--line));border-radius:10px;background:#fff;padding:var(--space-2);display:grid;gap:var(--space-2)}
.box-acoustic-block__head{display:flex;align-items:start;justify-content:space-between;gap:var(--space-2)}
.box-acoustic-block__head h3{margin:2px 0 0;font-size:var(--font-lg);line-height:1.25}
.box-acoustic-block label,.box-field{display:grid;gap:6px;color:#3f4b5f;font-size:var(--font-md);font-weight:var(--weight-semibold);min-width:0}
.box-acoustic-block input,.box-acoustic-block select{box-sizing:border-box;width:100%;min-width:0;min-height:calc(var(--control-height) - 4px);border:1px solid #cbd3e0;border-radius:8px;background:#fff;padding:8px 10px;color:var(--ink);font-size:var(--font-base)}
.box-acoustic-block input:focus-visible,.box-acoustic-block select:focus-visible{outline:2px solid var(--design-color);outline-offset:2px}
.box-acoustic-grid{display:grid;gap:var(--space-2)}
.box-acoustic-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.box-input-with-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}
.box-input-with-unit input{border-radius:8px 0 0 8px}
.box-input-with-unit b{display:grid;place-items:center;min-width:46px;padding:0 10px;border:1px solid #cbd3e0;border-left:0;border-radius:0 8px 8px 0;background:#f7f9fc;color:#667085;font-size:var(--font-md);font-weight:var(--weight-semibold)}
.box-derived-row,.box-future-value{display:flex;justify-content:space-between;align-items:start;gap:var(--space-2);padding:8px 0;border-top:1px solid #edf0f4;font-size:var(--font-md)}
.box-derived-row span,.box-future-value span{color:var(--muted)}
.box-derived-row strong,.box-future-value strong{color:var(--ink);text-align:right}
.box-future-value strong{color:#667085;font-weight:var(--weight-medium)}
.box-acoustic-note{margin:0;color:var(--muted);font-size:var(--font-sm);line-height:1.5}
.box-acoustic-validation{border:1px solid #ffd6de;border-left:3px solid var(--projects-color);border-radius:8px;background:#fff6f8;padding:9px 11px}
.box-acoustic-validation p{margin:0;color:#9f2754;font-size:var(--font-sm);line-height:1.45}
.box-acoustic-validation p+p{margin-top:5px}
.box-acoustic-planned{background:linear-gradient(180deg,#fff,#fafbff)}
.box-acoustic-planned h3{margin:2px 0 0;font-size:var(--font-lg)}
.box-acoustic-planned p{margin:0;color:var(--muted);font-size:var(--font-md);line-height:1.5}

.box-design-step.is-ready{border-color:color-mix(in srgb,var(--projects-color) 55%,#dce3ec);background:color-mix(in srgb,var(--projects-color) 4%,#fff)}
.box-preview__summary--dynamic{grid-template-columns:repeat(2,minmax(0,1fr))}
.box-preview__summary--dynamic div{min-height:58px}
.box-preview__summary--dynamic strong{white-space:normal;overflow:visible;text-overflow:clip}

@media(max-width:1500px){
  .box-acoustic-grid--2{grid-template-columns:1fr}
  .box-preview__summary--dynamic{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .box-enclosure-summary{align-items:flex-start}
  .box-preview__summary--dynamic{grid-template-columns:1fr}
}
