/* HIKMAT Membership — shared front-end components and utilities */

/* Generic state helpers. */
.hm-force-hidden,
.hikmat-gate-hidden,
.hikmat-pin-protected-hidden {
    display: none !important;
}

.hm-mt-12 { margin-top: 12px; }
.hm-options-empty { padding: 14px; }

/* Legacy phone/email signup + login notices. */
.hikmat-member-notice {
    padding: 10px 12px;
    margin-bottom: 12px;
    border: 1px solid #2271b1;
    background: #f0f6fc;
}
.hikmat-member-notice.is-error {
    border-color: #cc1818;
    background: #fff2f2;
}
.hikmat-member-notice.is-success {
    border-color: #2271b1;
    background: #f0f6fc;
}

/* Tier text colors. */
.hikmat-member-tier-text-new { color: #8cdece; }
.hikmat-member-tier-text-silver { color: #a2a7a7; }
.hikmat-member-tier-text-gold { color: #d59826; }
.hikmat-member-tier-text-diamond { color: #4e99c4; }

/* PA compatibility / public portal. */
.hikmat-pa-error { color: #b42318; }
.hikmat-pa-portal-box { margin: 16px 0; padding: 16px; border: 1px solid #ddd; }
.hikmat-pa-phone-input { width: 100%; max-width: 360px; }
.hikmat-pa-assistant-card { padding: 20px; border: 1px solid #ddd; }
.hikmat-pa-helper { margin-top: 12px; font-size: 13px; color: #666; }

/* Default Elementor gate classes. These rules prevent an initial flash before
 * the shortcode's state script applies the member-specific root state. Custom
 * gate class attributes are still supported through hikmat-gate-hidden. */
.hikmat-ownership-web,
.hikmat-ownership-btq,
.hikmat-ownership-all,
.hikmat-has-boutique-origin,
.hikmat-no-boutique-origin,
.hikmat-pa-active,
.hikmat-pa-inactive,
.hikmat-has-nearest-boutique,
.hikmat-no-nearest-boutique {
    display: none !important;
}

html.hikmat-owner-web .hikmat-ownership-web,
html.hikmat-owner-btq .hikmat-ownership-btq,
html.hikmat-owner-all .hikmat-ownership-all,
html.hikmat-boutique-origin-yes .hikmat-has-boutique-origin,
html.hikmat-boutique-origin-no .hikmat-no-boutique-origin,
html.hikmat-pa-active-yes .hikmat-pa-active,
html.hikmat-pa-active-no .hikmat-pa-inactive,
html.hikmat-nearest-boutique-yes .hikmat-has-nearest-boutique,
html.hikmat-nearest-boutique-no .hikmat-no-nearest-boutique {
    display: var(--display, flex) !important;
}

/* Default PIN protected target. Custom target_class remains supported by the
 * gate script through hikmat-pin-protected-hidden. */
.hikmat-member-card-protected {
    display: none !important;
}
html.hikmat-member-pin-is-unlocked .hikmat-member-card-protected {
    display: block !important;
}
