.bs-stock-notifications {
    margin: 1.5rem 0;
    padding: 1.25rem;
    border: 1px solid #dfe5dc;
    border-radius: 6px;
    background: #f8faf7;
}

.bs-stock-notifications[hidden] {
    display: none !important;
}

.bs-stock-notifications h3 {
    margin: 0 0 .5rem;
}

.bs-stock-notifications__controls {
    display: flex;
    gap: .65rem;
    align-items: stretch;
}

.bs-stock-notifications__controls input[type="email"] {
    min-width: 0;
    flex: 1 1 18rem;
    padding-left: .75rem;
}

.bs-stock-notifications__controls .button.alt {
    box-sizing: border-box;
    height: 45px;
}

/* Match the green hover treatment used by the storefront purchase buttons. */
.bs-stock-notifications__controls .button.alt:not(:disabled):hover,
.bs-stock-notifications__controls .button.alt:not(:disabled):focus-visible {
    background: #007730 !important;
    border-color: #007730 !important;
    color: #fff !important;
}

.bs-stock-notifications__website {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.bs-stock-notifications__privacy {
    margin: .65rem 0 0;
    color: #586256;
    font-size: .85em;
}

.bs-stock-notifications__status {
    margin: .65rem 0 0;
    font-weight: 600;
}

.bs-stock-notifications__status:empty {
    display: none;
}

.bs-stock-notifications__status.is-success {
    color: #276129;
}

.bs-stock-notifications__status.is-error {
    color: #a12622;
}

.bs-stock-notifications__cancel {
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    text-decoration: underline;
    cursor: pointer;
}

@media (max-width: 520px) {
    .bs-stock-notifications__controls {
        flex-direction: column;
    }
}
