.bhw-button,
.wp-element-button,
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 2.75rem;
    padding: 0.875rem 1.3125rem;
    border: 0;
    border-radius: var(--bhw-radius-pill);
    background: var(--bhw-shell-button-gradient);
    box-shadow:
        0 16px 34px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.45);
    color: #120d07;
    font-weight: var(--bhw-weight-bold);
    transition:
        transform 180ms ease,
        box-shadow 180ms ease,
        filter 180ms ease;
}

.bhw-button::before,
.wp-element-button::before,
button::before,
input[type="button"]::before,
input[type="reset"]::before,
input[type="submit"]::before {
    position: absolute;
    inset: 1px;
    border-radius: inherit;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.18), transparent 32%);
    content: "";
    pointer-events: none;
}

.bhw-button:hover,
.wp-element-button:hover,
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
    background: var(--bhw-shell-button-gradient);
    box-shadow:
        0 20px 42px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.48);
    color: #120d07;
    filter: saturate(1.04);
    transform: translateY(-2px);
}

.bhw-button--secondary,
.bhw-button--ghost,
.bhw-navigation-toggle,
button.secondary,
button.ghost {
    border: 1px solid rgba(223, 192, 137, 0.18);
    background: var(--bhw-shell-button-secondary);
    box-shadow: var(--bhw-shell-shadow-soft), inset 0 1px 0 rgba(255, 255, 255, 0.04);
    color: var(--bhw-color-text-primary);
}

.bhw-button--secondary:hover,
.bhw-button--ghost:hover,
.bhw-navigation-toggle:hover,
button.secondary:hover,
button.ghost:hover {
    border-color: rgba(223, 192, 137, 0.34);
    background: var(--bhw-shell-button-secondary);
    color: var(--bhw-color-text-primary);
}

.bhw-button--text,
.bhw-text-link {
    color: var(--bhw-color-accent);
    text-underline-offset: 0.18em;
}

:where(
    input:not([type="button"]):not([type="reset"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
    select,
    textarea
) {
    border: 1px solid rgba(223, 192, 137, 0.12);
    border-radius: 1rem;
    background:
        linear-gradient(180deg, rgba(9, 12, 16, 0.94), rgba(13, 17, 22, 0.92));
    color: var(--bhw-color-text-primary);
}

:where(
    input:not([type="button"]):not([type="reset"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
    select,
    textarea
):focus {
    border-color: rgba(223, 192, 137, 0.32);
    outline: none;
    box-shadow: 0 0 0 4px rgba(223, 192, 137, 0.06);
}

.bhw-field :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
    padding: 0.875rem 1rem;
    border-radius: 1rem;
    background:
        linear-gradient(180deg, rgba(9, 12, 16, 0.94), rgba(13, 17, 22, 0.92));
}

.bhw-card,
.bhw-state,
.bhw-panel,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout_coupon {
    border-color: rgba(223, 192, 137, 0.12);
    border-radius: 1.375rem;
    background: var(--bhw-shell-panel-gradient);
    box-shadow: var(--bhw-shell-shadow-deep);
}
