.container--sound { max-width: 1020px; }
.sound-hero { background: linear-gradient(135deg, #edf8ff, #f8fbff); }
.sound-eyebrow, .sound-kicker { color: #175f87; font-size: .78rem; font-weight: 800; letter-spacing: .12em; margin: 0 0 .35rem; }
.sound-trust { color: #2d5d43; font-weight: 700; }
.sound-heading { align-items: start; display: flex; gap: 1rem; justify-content: space-between; }
.sound-heading h2 { margin-top: 0; }
.sound-heading__actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.sound-fields { display: grid; gap: 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sound-field { display: grid; gap: .45rem; }
.sound-field label { font-weight: 750; }
.sound-field small { color: #566474; line-height: 1.5; }
.sound-distance-input { display: grid; grid-template-columns: minmax(0, 1fr) 6.5rem; }
.sound-distance-input input { border-bottom-right-radius: 0; border-top-right-radius: 0; min-width: 0; }
.sound-distance-input select { border-bottom-left-radius: 0; border-left: 0; border-top-left-radius: 0; min-width: 0; width: 100%; }
.sound-input { align-items: center; display: grid; grid-template-columns: minmax(0, 1fr) auto; }
.sound-input input { border-bottom-right-radius: 0; border-top-right-radius: 0; min-width: 0; }
.sound-input span { align-items: center; align-self: stretch; background: #eef6fa; border: 1px solid #bdcad8; border-left: 0; border-radius: 0 .5rem .5rem 0; display: flex; padding: 0 .75rem; }
.sound-actions { margin-top: 1.25rem; }
.sound-notice { background: #fff8e8; border-left: 4px solid #d09a21; margin-top: 1rem; padding: .85rem 1rem; }
.sound-error { min-height: 1.5em; }
.sound-results { border-top: 1px solid #d7e4f1; margin-top: 1.5rem; padding-top: 1.5rem; }
.sound-results h2 { margin-top: 0; }
.sound-main-result { background: linear-gradient(135deg, #1d6f91, #174a72); border-radius: .9rem; color: #fff; padding: 1.25rem; text-align: center; }
.sound-main-result strong { display: block; font-size: clamp(1.8rem, 5vw, 2.8rem); overflow-wrap: anywhere; }
.sound-main-result span { display: block; margin-top: .35rem; min-height: 1.4em; }
.sound-result-grid { display: grid; gap: .8rem; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 1rem; }
.sound-result-grid > div { background: #f6f9fb; border: 1px solid #dbe5ec; border-radius: .75rem; padding: .9rem; }
.sound-result-grid span { color: #566474; display: block; font-size: .88rem; }
.sound-result-grid strong { display: block; font-size: 1.1rem; margin-top: .25rem; overflow-wrap: anywhere; }
.sound-copy-row { align-items: center; display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1rem; }
.sound-copy-status { margin: 0; }
.sound-formula { background: #eef4fb; border-radius: .45rem; display: block; margin: .8rem 0; overflow-x: auto; padding: .8rem; white-space: nowrap; }
@media (max-width: 640px) { .sound-heading { display: block; } .sound-heading__actions { margin-top: .8rem; } .sound-heading__actions .button-secondary { flex: 1; } .sound-fields, .sound-result-grid { grid-template-columns: 1fr; } .sound-distance-input { grid-template-columns: minmax(0, 1fr) 5.75rem; } .sound-main-result strong { font-size: 1.9rem; } }
.sound-modes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; margin: 1.25rem 0; }
.sound-modes .button-secondary { min-height: 44px; white-space: normal; }
.sound-modes [aria-pressed="true"] { background: #174a72; color: #fff; border-color: #174a72; }
.sound-modes .button-secondary:focus-visible { outline: 3px solid #f1a33c; outline-offset: 2px; }
.sound-result-grid.sound-distance-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 640px) { .sound-modes, .sound-result-grid.sound-distance-grid { grid-template-columns: 1fr; } }
