/* Shared guidance follows the address rows; suggestions stay beside their field. */
.hw-address-notes { display: flex; flex-direction: column; gap: .5rem; margin: 0 0 1.5rem; padding-top: .75rem; border-top: 1px solid var(--bs-border-color, #c6cedd); font-size: .875rem; line-height: 1.6; text-align: left; }
.hw-address-notes:empty { display: none; }
.hw-address-notes .form-text { margin: 0; font-size: inherit; line-height: inherit; }
.hw-address-hint { font-size: .875rem; line-height: 1.6; }
.hw-address-hint button { display: inline; width: auto; height: auto; min-height: 0; font: inherit; color: inherit; margin: 0; padding: 0; background: none; border: 0; border-radius: 0; text-align: left; text-decoration: underline; cursor: pointer; }
.hw-address-hint [role="status"] { display: block; }
.hw-address-options { border: 1px solid var(--bs-border-color, #c6cedd); border-radius: .5rem; margin-top: .25rem; overflow: hidden; background: var(--bs-body-bg, #fff); color: var(--bs-body-color, #2b4358); }
.hw-address-options[hidden], .hw-address-worker { display: none !important; }
.hw-address-option { padding: .65rem .75rem; cursor: pointer; overflow-wrap: anywhere; }
.hw-address-option:hover, .hw-address-option[aria-selected="true"] { background: #fbde37; color: #2b4358; }
.hw-address-attribution { padding: .3rem .75rem; background: #fff; color: #5e5e5e; font-size: 12px; font-style: normal; font-weight: 400; letter-spacing: normal; white-space: nowrap; }
.hw-address-validation { border: 1px solid var(--bs-border-color, #c6cedd); border-left: 4px solid #fbde37; padding: 1.5rem; border-radius: .75rem; margin: 1.5rem 0; scroll-margin-block: 7rem; background: var(--bs-body-bg, #fff); color: var(--bs-body-color, #2b4358); text-align: left; }
.hw-address-validation[hidden], .hw-address-validation [hidden], .hw-address-pending[hidden], .hw-address-pending [hidden] { display: none !important; }
.hw-address-validation h3 { margin: 0 0 .75rem; font-size: 1.2rem; }
.hw-address-validation p { margin: 0 0 1rem; }
.hw-address-validation > a { display: inline-block; margin-top: 1rem; text-decoration: underline; }
.hw-address-comparison { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin: 1.25rem 0; }
.hw-address-comparison > div { padding: 1rem; border: 1px solid var(--bs-border-color, #c6cedd); border-radius: .5rem; }
.hw-address-comparison p { white-space: pre-line; overflow-wrap: anywhere; margin: .5rem 0; }
.hw-address-confirm-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.hw-address-confirm-actions .btn, .hw-address-pending .btn { white-space: normal; height: auto; min-height: 2.75rem; line-height: 1.4; padding: .75rem 1rem; }
.hw-address-confirm-actions .btn { flex: 1 1 15rem; }
.hw-address-pending { border-left: 4px solid #fbde37; padding: 1rem; margin: 1rem 0; text-align: left; }
.hw-address-pending p { margin: 0 0 .75rem; }
@media (max-width: 575.98px) { .hw-address-comparison { grid-template-columns: 1fr; } .hw-address-validation { padding: 1rem; } }
