/* ESP Auth Module - Additional Styles */

/* Full page takeover - hide theme elements */
body.esp-auth-page {
    margin: 0;
    padding: 0;
    background: var(--esp-white, #fff);
}

body.esp-auth-page #wpadminbar,
body.esp-auth-page header,
body.esp-auth-page .site-header,
body.esp-auth-page nav.main-navigation,
body.esp-auth-page footer,
body.esp-auth-page .site-footer,
body.esp-auth-page .entry-header,
body.esp-auth-page .page-header,
body.esp-auth-page .entry-footer,
body.esp-auth-page .comments-area,
body.esp-auth-page .post-navigation,
body.esp-auth-page aside,
body.esp-auth-page .sidebar {
    display: none !important;
}

body.esp-auth-page .site-content,
body.esp-auth-page .entry-content,
body.esp-auth-page main,
body.esp-auth-page article,
body.esp-auth-page .content-area {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    float: none !important;
}

/* Smooth entrance animation */
.esp-auth-form-container {
    animation: espFadeInUp 0.5s ease-out;
}

@keyframes espFadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Decorative pattern on brand panel */
.esp-auth-brand {
    background-image:
        radial-gradient(circle at 20% 80%, rgba(46, 134, 193, 0.08) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgba(232, 168, 56, 0.06) 0%, transparent 50%),
        url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

/* Password strength indicator */
.esp-password-strength {
    height: 4px;
    border-radius: 2px;
    margin-top: 8px;
    background: var(--esp-gray-100);
    overflow: hidden;
}

.esp-password-strength-bar {
    height: 100%;
    border-radius: 2px;
    transition: width 0.3s ease, background 0.3s ease;
    width: 0%;
}

.esp-password-strength-bar.weak { width: 25%; background: #ef4444; }
.esp-password-strength-bar.fair { width: 50%; background: #f59e0b; }
.esp-password-strength-bar.good { width: 75%; background: #3b82f6; }
.esp-password-strength-bar.strong { width: 100%; background: #10b981; }

/* Phone input specific */
.esp-phone-country {
    font-weight: 600;
    letter-spacing: 0.5px;
}

/* Recaptcha badge hide (using invisible) */
.grecaptcha-badge {
    visibility: hidden !important;
}
