.store-availability[hidden] { display: none !important; }
.store-availability { margin: 18px 0; padding: 16px; border: 1px solid #e4e4e4; border-radius: 4px; background: #fafafa; }
.store-availability h3 { margin: 0 0 12px; font-size: 18px; line-height: 1.4; }
.store-availability ul { margin: 0; padding: 0; list-style: none; }
.store-availability li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 16px; row-gap: 6px; padding: 6px 0; }
.store-availability-shop { display: flex; align-items: center; gap: 9px; min-width: 0; }
.store-availability-shop > span { min-width: 0; overflow-wrap: break-word; }
.store-availability-reserve { display: inline-flex; grid-column: 2; align-items: center; justify-self: end; gap: 7px; white-space: nowrap; color: #333; text-decoration: none; }
.store-availability-reserve:hover, .store-availability-reserve:focus { color: #ff6800; text-decoration: underline; }
.store-availability-reserve .social-icon { width: 26px; height: 26px; flex: 0 0 26px; margin: 0; float: none; }
.store-availability-details { display: inline-flex; flex: 0 0 23px; width: 23px; height: 23px; justify-content: center; align-items: center; border: 1px solid #777; border-radius: 50%; color: #555; background: #fff; font-size: 14px; font-weight: bold; text-decoration: none; }
.store-availability-details:hover, .store-availability-details:focus { color: #fff; background: #555; text-decoration: none; }
.product-info-size td[data-combination] { cursor: pointer; }
.product-info-size td[data-combination]:focus { outline: 2px solid #555; outline-offset: -2px; }
@media (max-width: 767px) {
    .store-availability li { grid-template-columns: minmax(0, 1fr); padding: 9px 0; }
    .store-availability-reserve { grid-column: 1; justify-self: start; }
}
