/* Fengi Tutor Auth Pages Style v3.0
   Proper scoped solution:
   - Only styles exact Tutor auth forms marked by JS with .fengi-auth-form-scope
   - Does NOT style header/footer text
   - Light glass page vibe
*/

body.fengi-tutor-auth-page {
    --fta-blue: #0b82ff;
    --fta-cyan: #21d4fd;
    background:
        radial-gradient(circle at 15% 20%, rgba(14,165,255,.18), transparent 28%),
        radial-gradient(circle at 88% 20%, rgba(33,212,253,.20), transparent 32%),
        linear-gradient(135deg, #edf8ff 0%, #dff3ff 48%, #caeaff 100%) !important;
    min-height: 100vh;
}

/* Page title hidden only on auth pages */
body.fengi-tutor-auth-page .entry-title,
body.fengi-tutor-auth-page .page-title {
    display: none !important;
}

/* Give only page body content breathing space. No text color here. */
body.fengi-tutor-auth-page .site-content > .ast-container,
body.fengi-tutor-auth-page #content > .ast-container {
    max-width: 1160px !important;
    padding-top: 92px !important;
    padding-bottom: 76px !important;
}

/* Exact scoped auth wrapper added by JS */
body.fengi-tutor-auth-page .fengi-auth-form-scope {
    width: 100% !important;
    max-width: 500px !important;
    padding: 34px 34px 36px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(255,255,255,.62) !important;
    background:
        linear-gradient(145deg, rgba(255,255,255,.72), rgba(255,255,255,.48)),
        rgba(255,255,255,.62) !important;
    box-shadow: none !important;
    backdrop-filter: blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.08) !important;
    position: relative !important;
    overflow: hidden !important;
    font-family: "Inter", sans-serif !important;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope::before {
    content: "Fengi Academy";
    display: inline-flex;
    width: max-content;
    max-width: 100%;
    padding: 8px 13px;
    margin: 0 0 22px;
    border-radius: 999px;
    color: #0f172a;
    background: rgba(255,255,255,.70);
    border: 1px solid rgba(148,163,184,.24);
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope::after {
    content: "";
    position: absolute;
    top: -140px;
    right: -140px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(33,212,253,.18), transparent 68%);
    pointer-events: none;
    z-index: 0;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope > * {
    position: relative;
    z-index: 1;
}

/* Remove nested Tutor card only inside scoped form */
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-card,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-card-body,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-card-footer,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-login-form-wrapper,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-form-wrap {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Text only inside scoped form */
body.fengi-tutor-auth-page .fengi-auth-form-scope,
body.fengi-tutor-auth-page .fengi-auth-form-scope h1,
body.fengi-tutor-auth-page .fengi-auth-form-scope h2,
body.fengi-tutor-auth-page .fengi-auth-form-scope h3,
body.fengi-tutor-auth-page .fengi-auth-form-scope h4,
body.fengi-tutor-auth-page .fengi-auth-form-scope h5,
body.fengi-tutor-auth-page .fengi-auth-form-scope h6,
body.fengi-tutor-auth-page .fengi-auth-form-scope p,
body.fengi-tutor-auth-page .fengi-auth-form-scope label,
body.fengi-tutor-auth-page .fengi-auth-form-scope span:not([class^="tutor-icon-"]):not([class*=" tutor-icon-"]),
body.fengi-tutor-auth-page .fengi-auth-form-scope div:not([class^="tutor-icon-"]):not([class*=" tutor-icon-"]) {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-color-muted,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-color-secondary,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-form-check-label {
    color: #475569 !important;
    -webkit-text-fill-color: #475569 !important;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope label,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-form-label {
    font-size: 13px !important;
    font-weight: 650 !important;
    margin-bottom: 8px !important;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-form-group,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-mb-24,
body.fengi-tutor-auth-page .fengi-auth-form-scope p {
    margin-bottom: 17px !important;
}

/* Inputs */
body.fengi-tutor-auth-page .fengi-auth-form-scope input[type="text"],
body.fengi-tutor-auth-page .fengi-auth-form-scope input[type="email"],
body.fengi-tutor-auth-page .fengi-auth-form-scope input[type="password"],
body.fengi-tutor-auth-page .fengi-auth-form-scope input[type="tel"],
body.fengi-tutor-auth-page .fengi-auth-form-scope input[type="url"],
body.fengi-tutor-auth-page .fengi-auth-form-scope textarea,
body.fengi-tutor-auth-page .fengi-auth-form-scope select,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-form-control {
    width: 100% !important;
    min-height: 48px !important;
    border-radius: 13px !important;
    border: 1px solid rgba(148,163,184,.30) !important;
    background: rgba(255,255,255,.82) !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    padding: 12px 14px !important;
    box-shadow: inset 0 1px rgba(255,255,255,.78), 0 8px 18px rgba(15,23,42,.06) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope input::placeholder,
body.fengi-tutor-auth-page .fengi-auth-form-scope textarea::placeholder {
    color: #64748b !important;
    -webkit-text-fill-color: #64748b !important;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope input:focus,
body.fengi-tutor-auth-page .fengi-auth-form-scope textarea:focus,
body.fengi-tutor-auth-page .fengi-auth-form-scope select:focus,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-form-control:focus {
    border-color: rgba(14,130,255,.50) !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(14,130,255,.10), 0 12px 26px rgba(15,23,42,.10) !important;
    outline: none !important;
}

/* Buttons */
body.fengi-tutor-auth-page .fengi-auth-form-scope button[type="submit"],
body.fengi-tutor-auth-page .fengi-auth-form-scope input[type="submit"],
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-btn-primary,
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-button-primary {
    width: 100% !important;
    min-height: 49px !important;
    border: 0 !important;
    border-radius: 13px !important;
    background: linear-gradient(135deg, #21d4fd, #0b82ff) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 750 !important;
    box-shadow: 0 15px 30px rgba(14,130,255,.22) !important;
}

/* Links inside auth form only */
body.fengi-tutor-auth-page .fengi-auth-form-scope a:not([href*="google"]),
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-btn-link {
    color: #0b82ff !important;
    -webkit-text-fill-color: #0b82ff !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    min-height: auto !important;
    font-weight: 650 !important;
    text-decoration: none !important;
    display: inline !important;
    width: auto !important;
}

/* Google button */
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-google-login,
body.fengi-tutor-auth-page .fengi-auth-form-scope a[href*="google"],
body.fengi-tutor-auth-page .fengi-auth-form-scope button[class*="google"] {
    width: auto !important;
    min-height: 42px !important;
    padding: 10px 18px !important;
    border-radius: 11px !important;
    background: #ffffff !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    border: 1px solid rgba(15,23,42,.12) !important;
    box-shadow: 0 10px 22px rgba(15,23,42,.12) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-google-login *,
body.fengi-tutor-auth-page .fengi-auth-form-scope a[href*="google"] *,
body.fengi-tutor-auth-page .fengi-auth-form-scope button[class*="google"] * {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    opacity: 1 !important;
}

/* Checkbox */
body.fengi-tutor-auth-page .fengi-auth-form-scope input[type="checkbox"],
body.fengi-tutor-auth-page .fengi-auth-form-scope .tutor-form-check-input {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    border-radius: 5px !important;
    accent-color: #0b82ff !important;
}

/* Floating icons removed completely to avoid footer/header overlap */
body.fengi-tutor-auth-page .fengi-auth-edu-icons,
body.fengi-tutor-auth-page .fengi-auth-edu-icon {
    display: none !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.fengi-tutor-auth-page .site-content > .ast-container,
    body.fengi-tutor-auth-page #content > .ast-container {
        padding: 46px 14px 48px !important;
    }

    body.fengi-tutor-auth-page .fengi-auth-form-scope {
        max-width: 100% !important;
        padding: 24px 18px !important;
        border-radius: 20px !important;
    }
}


/* =========================================================
   v3.1 Registration pages only
   Match login card style + add registration titles/descriptions.
   Login page is untouched.
   ========================================================= */

/* Registration form card: same clean glass style as login page */
body.fengi-tutor-auth-page.page-student-registration .fengi-auth-form-scope,
body.fengi-tutor-auth-page.page-instructor-registration .fengi-auth-form-scope,
body.fengi-tutor-auth-page[class*="student-registration"] .fengi-auth-form-scope,
body.fengi-tutor-auth-page[class*="instructor-registration"] .fengi-auth-form-scope {
    width: 100% !important;
    max-width: 500px !important;
    padding: 34px 34px 36px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(255,255,255,.62) !important;
    background:
        linear-gradient(145deg, rgba(255,255,255,.72), rgba(255,255,255,.48)),
        rgba(255,255,255,.62) !important;
    box-shadow: none !important;
    backdrop-filter: blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.08) !important;
}

/* Hide the old small badge only on registration pages */
body.fengi-tutor-auth-page.page-student-registration .fengi-auth-form-scope::before,
body.fengi-tutor-auth-page.page-instructor-registration .fengi-auth-form-scope::before,
body.fengi-tutor-auth-page[class*="student-registration"] .fengi-auth-form-scope::before,
body.fengi-tutor-auth-page[class*="instructor-registration"] .fengi-auth-form-scope::before {
    display: none !important;
}

/* Titles and descriptions for registration pages */
body.fengi-tutor-auth-page.page-student-registration .fengi-auth-form-scope::before,
body.fengi-tutor-auth-page[class*="student-registration"] .fengi-auth-form-scope::before {
    content: "Student Registration\A Create your student account and start learning with Fengi Academy." !important;
    display: block !important;
    white-space: pre-line !important;
    width: auto !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 0 28px !important;
    border: 0 !important;
    background: transparent !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    font-size: 28px !important;
    line-height: 1.18 !important;
    font-weight: 780 !important;
    letter-spacing: -0.03em !important;
}

body.fengi-tutor-auth-page.page-instructor-registration .fengi-auth-form-scope::before,
body.fengi-tutor-auth-page[class*="instructor-registration"] .fengi-auth-form-scope::before {
    content: "Instructor Registration\A Register as an instructor and share your knowledge with students." !important;
    display: block !important;
    white-space: pre-line !important;
    width: auto !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 0 28px !important;
    border: 0 !important;
    background: transparent !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    font-size: 28px !important;
    line-height: 1.18 !important;
    font-weight: 780 !important;
    letter-spacing: -0.03em !important;
}

/* Make the second line description smaller using a subtle shadow separator feel */
body.fengi-tutor-auth-page.page-student-registration .fengi-auth-form-scope,
body.fengi-tutor-auth-page.page-instructor-registration .fengi-auth-form-scope,
body.fengi-tutor-auth-page[class*="student-registration"] .fengi-auth-form-scope,
body.fengi-tutor-auth-page[class*="instructor-registration"] .fengi-auth-form-scope {
    position: relative !important;
}

/* Registration fields consistent with login */
body.fengi-tutor-auth-page.page-student-registration .fengi-auth-form-scope input[type="text"],
body.fengi-tutor-auth-page.page-student-registration .fengi-auth-form-scope input[type="email"],
body.fengi-tutor-auth-page.page-student-registration .fengi-auth-form-scope input[type="password"],
body.fengi-tutor-auth-page.page-instructor-registration .fengi-auth-form-scope input[type="text"],
body.fengi-tutor-auth-page.page-instructor-registration .fengi-auth-form-scope input[type="email"],
body.fengi-tutor-auth-page.page-instructor-registration .fengi-auth-form-scope input[type="password"],
body.fengi-tutor-auth-page[class*="student-registration"] .fengi-auth-form-scope input[type="text"],
body.fengi-tutor-auth-page[class*="student-registration"] .fengi-auth-form-scope input[type="email"],
body.fengi-tutor-auth-page[class*="student-registration"] .fengi-auth-form-scope input[type="password"],
body.fengi-tutor-auth-page[class*="instructor-registration"] .fengi-auth-form-scope input[type="text"],
body.fengi-tutor-auth-page[class*="instructor-registration"] .fengi-auth-form-scope input[type="email"],
body.fengi-tutor-auth-page[class*="instructor-registration"] .fengi-auth-form-scope input[type="password"] {
    min-height: 48px !important;
    border-radius: 13px !important;
    background: rgba(255,255,255,.82) !important;
}

/* Mobile registration card */
@media (max-width: 767px) {
    body.fengi-tutor-auth-page.page-student-registration .fengi-auth-form-scope,
    body.fengi-tutor-auth-page.page-instructor-registration .fengi-auth-form-scope,
    body.fengi-tutor-auth-page[class*="student-registration"] .fengi-auth-form-scope,
    body.fengi-tutor-auth-page[class*="instructor-registration"] .fengi-auth-form-scope {
        max-width: 100% !important;
        padding: 24px 18px !important;
        border-radius: 20px !important;
    }

    body.fengi-tutor-auth-page.page-student-registration .fengi-auth-form-scope::before,
    body.fengi-tutor-auth-page.page-instructor-registration .fengi-auth-form-scope::before,
    body.fengi-tutor-auth-page[class*="student-registration"] .fengi-auth-form-scope::before,
    body.fengi-tutor-auth-page[class*="instructor-registration"] .fengi-auth-form-scope::before {
        font-size: 24px !important;
        line-height: 1.2 !important;
        margin-bottom: 24px !important;
    }
}


/* =========================================================
   v3.2 Robust registration form styling
   Uses JS-added classes instead of WordPress page slug classes.
   ========================================================= */

body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-student-registration-scope,
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-instructor-registration-scope {
    width: 100% !important;
    max-width: 500px !important;
    padding: 34px 34px 36px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(255,255,255,.62) !important;
    background:
        linear-gradient(145deg, rgba(255,255,255,.72), rgba(255,255,255,.48)),
        rgba(255,255,255,.62) !important;
    box-shadow: none !important;
    backdrop-filter: blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.08) !important;
}

/* Remove old Fengi Academy badge on registration forms only */
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-student-registration-scope::before,
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-instructor-registration-scope::before {
    display: none !important;
}

body.fengi-tutor-auth-page .fengi-auth-reg-heading {
    margin: 0 0 26px !important;
    padding: 0 0 22px !important;
    border-bottom: 1px solid rgba(15,23,42,.08) !important;
}

body.fengi-tutor-auth-page .fengi-auth-reg-heading h2 {
    margin: 0 0 8px !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    font-size: 28px !important;
    line-height: 1.15 !important;
    font-weight: 780 !important;
    letter-spacing: -0.03em !important;
}

body.fengi-tutor-auth-page .fengi-auth-reg-heading p {
    margin: 0 !important;
    color: #475569 !important;
    -webkit-text-fill-color: #475569 !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
    font-weight: 500 !important;
}

body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-student-registration-scope input[type="text"],
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-student-registration-scope input[type="email"],
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-student-registration-scope input[type="password"],
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-instructor-registration-scope input[type="text"],
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-instructor-registration-scope input[type="email"],
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-instructor-registration-scope input[type="password"] {
    min-height: 48px !important;
    border-radius: 13px !important;
    background: rgba(255,255,255,.82) !important;
    border-color: rgba(148,163,184,.30) !important;
}

@media (max-width: 767px) {
    body.fengi-tutor-auth-page .fengi-auth-reg-heading h2 {
        font-size: 24px !important;
    }
    body.fengi-tutor-auth-page .fengi-auth-reg-heading {
        margin-bottom: 22px !important;
        padding-bottom: 18px !important;
    }
}


/* v3.3 external fallback */
body.fengi-tutor-auth-page .entry-content .fengi-registration-scope {
    width: 100% !important;
    max-width: 500px !important;
    padding: 34px 34px 36px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(255,255,255,.62) !important;
    background: linear-gradient(145deg, rgba(255,255,255,.72), rgba(255,255,255,.48)), rgba(255,255,255,.62) !important;
    box-shadow: none !important;
}
body.fengi-tutor-auth-page .entry-content .fengi-registration-scope::before {
    display: none !important;
}


/* v3.4 remove registration card shadow */
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-student-registration-scope,
body.fengi-tutor-auth-page .fengi-auth-form-scope.fengi-instructor-registration-scope,
body.fengi-tutor-auth-page .entry-content .fengi-registration-scope {
    box-shadow: none !important;
}


/* =========================================================
   v3.5 remove registration shadow from card, pseudo glow,
   fields and Elementor wrapper parent
   ========================================================= */
body.fengi-tutor-auth-page .entry-content .fengi-registration-scope,
body.fengi-tutor-auth-page .entry-content .fengi-registration-scope.fengi-auth-form-scope,
body.fengi-tutor-auth-page .entry-content .fengi-auth-form-scope.fengi-student-registration-scope,
body.fengi-tutor-auth-page .entry-content .fengi-auth-form-scope.fengi-instructor-registration-scope,
body.fengi-tutor-auth-page .entry-content .fengi-reg-no-shadow,
body.fengi-tutor-auth-page .entry-content .fengi-reg-no-shadow > .elementor-widget-container,
body.fengi-tutor-auth-page .entry-content .fengi-reg-no-shadow .elementor-widget-container {
    box-shadow: none !important;
    filter: none !important;
}

body.fengi-tutor-auth-page .entry-content .fengi-registration-scope::after,
body.fengi-tutor-auth-page .entry-content .fengi-auth-form-scope.fengi-student-registration-scope::after,
body.fengi-tutor-auth-page .entry-content .fengi-auth-form-scope.fengi-instructor-registration-scope::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    content: none !important;
    box-shadow: none !important;
    filter: none !important;
}

body.fengi-tutor-auth-page .entry-content .fengi-registration-scope input,
body.fengi-tutor-auth-page .entry-content .fengi-registration-scope textarea,
body.fengi-tutor-auth-page .entry-content .fengi-registration-scope select {
    box-shadow: none !important;
    filter: none !important;
}


/* =========================================================
   v3.6 final shadow removal for registration pages
   ========================================================= */
body.fengi-tutor-auth-page .entry-content .fengi-registration-scope,
body.fengi-tutor-auth-page .entry-content .fengi-registration-scope *,
body.fengi-tutor-auth-page .entry-content .fengi-registration-shadow-clean,
body.fengi-tutor-auth-page .entry-content .fengi-registration-shadow-clean *,
body.fengi-tutor-auth-page .entry-content .fengi-registration-shadow-clean > .elementor-widget-container,
body.fengi-tutor-auth-page .entry-content .fengi-registration-shadow-clean .elementor-widget-container {
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
}

body.fengi-tutor-auth-page .entry-content .fengi-registration-scope::after {
    display: none !important;
    content: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    box-shadow: none !important;
    filter: none !important;
}

body.fengi-tutor-auth-page .entry-content .elementor-element:has(.fengi-registration-scope),
body.fengi-tutor-auth-page .entry-content .elementor-widget:has(.fengi-registration-scope),
body.fengi-tutor-auth-page .entry-content .elementor-widget-container:has(.fengi-registration-scope) {
    box-shadow: none !important;
    filter: none !important;
}


/* =========================================================
   v3.7: Paid-course login screen styling
   Tutor can display login on /courses/... pages, not only /dashboard/.
   ========================================================= */
body.fengi-tutor-course-login-page {
    --fta-blue: #0b82ff;
    --fta-cyan: #21d4fd;
    background:
        radial-gradient(circle at 15% 20%, rgba(14,165,255,.18), transparent 28%),
        radial-gradient(circle at 88% 20%, rgba(33,212,253,.20), transparent 32%),
        linear-gradient(135deg, #edf8ff 0%, #dff3ff 48%, #caeaff 100%) !important;
    min-height: 100vh;
}

body.fengi-tutor-course-login-page .site-content,
body.fengi-tutor-course-login-page #content,
body.fengi-tutor-course-login-page main {
    background: transparent !important;
}

body.fengi-tutor-course-login-page .entry-title,
body.fengi-tutor-course-login-page .page-title,
body.fengi-tutor-course-login-page .tutor-course-single-content-wrapper,
body.fengi-tutor-course-login-page .tutor-course-details-page,
body.fengi-tutor-course-login-page .tutor-course-details-content {
    background: transparent !important;
}

body.fengi-tutor-course-login-page .fengi-course-login-parent-scope {
    display: flex !important;
    justify-content: center !important;
    align-items: flex-start !important;
    width: 100% !important;
}

body.fengi-tutor-course-login-page .fengi-auth-form-scope.fengi-course-login-scope,
body.fengi-tutor-course-login-page .fengi-course-login-scope {
    width: 100% !important;
    max-width: 500px !important;
    margin: 96px auto 90px !important;
    padding: 34px 34px 36px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(255,255,255,.66) !important;
    background:
        linear-gradient(145deg, rgba(255,255,255,.76), rgba(255,255,255,.50)),
        rgba(255,255,255,.62) !important;
    box-shadow: none !important;
    backdrop-filter: blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.08) !important;
    position: relative !important;
    overflow: hidden !important;
    font-family: "Inter", sans-serif !important;
}

body.fengi-tutor-course-login-page .fengi-course-login-scope::before {
    content: "Fengi Academy";
    display: inline-flex;
    width: max-content;
    max-width: 100%;
    padding: 8px 13px;
    margin: 0 0 22px;
    border-radius: 999px;
    color: #0f172a;
    background: rgba(255,255,255,.70);
    border: 1px solid rgba(15,23,42,.08);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
}

body.fengi-tutor-course-login-page .fengi-course-login-scope h2,
body.fengi-tutor-course-login-page .fengi-course-login-scope h3,
body.fengi-tutor-course-login-page .fengi-course-login-scope .tutor-fs-5 {
    color: #111827 !important;
    font-family: "Inter", sans-serif !important;
    font-weight: 500 !important;
}

body.fengi-tutor-course-login-page .fengi-course-login-scope input[type="text"],
body.fengi-tutor-course-login-page .fengi-course-login-scope input[type="email"],
body.fengi-tutor-course-login-page .fengi-course-login-scope input[type="password"],
body.fengi-tutor-course-login-page .fengi-course-login-scope .tutor-form-control {
    width: 100% !important;
    min-height: 50px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15,23,42,.13) !important;
    background: rgba(255,255,255,.82) !important;
    box-shadow: none !important;
    color: #111827 !important;
    font-family: "Inter", sans-serif !important;
}

body.fengi-tutor-course-login-page .fengi-course-login-scope button[type="submit"],
body.fengi-tutor-course-login-page .fengi-course-login-scope input[type="submit"],
body.fengi-tutor-course-login-page .fengi-course-login-scope .tutor-btn-primary {
    width: 100% !important;
    min-height: 52px !important;
    border-radius: 13px !important;
    border: 0 !important;
    background: linear-gradient(135deg, var(--fta-cyan), #2078ff) !important;
    color: #fff !important;
    font-weight: 800 !important;
    box-shadow: none !important;
}

body.fengi-tutor-course-login-page .fengi-course-login-scope a {
    color: #2078ff !important;
    font-weight: 700 !important;
}

@media (max-width: 767px) {
    body.fengi-tutor-course-login-page .fengi-course-login-scope {
        max-width: calc(100vw - 32px) !important;
        margin: 44px auto 56px !important;
        padding: 28px 20px 30px !important;
        border-radius: 22px !important;
    }
}


/* =========================================================
   v3.8 unified clean auth layout for dashboard/course/register
   ========================================================= */

/* Same background everywhere */
html body.fengi-tutor-auth-page,
html body.fengi-tutor-course-login-page,
html body.fengi-auth-layout-normalized {
    --fta-blue: #0b82ff;
    --fta-cyan: #21d4fd;
    background:
        radial-gradient(circle at 18% 18%, rgba(14,165,255,.16), transparent 30%),
        radial-gradient(circle at 86% 20%, rgba(33,212,253,.20), transparent 34%),
        linear-gradient(135deg, #eef9ff 0%, #def3ff 48%, #c9edff 100%) !important;
    min-height: 100vh !important;
}

/* Make page areas transparent and consistent */
body.fengi-auth-layout-normalized .site,
body.fengi-auth-layout-normalized .site-content,
body.fengi-auth-layout-normalized #content,
body.fengi-auth-layout-normalized main,
body.fengi-auth-layout-normalized article,
body.fengi-auth-layout-normalized .entry-content,
body.fengi-auth-layout-normalized .ast-container,
body.fengi-auth-layout-normalized .tutor-wrap,
body.fengi-auth-layout-normalized .tutor-page-wrap,
body.fengi-auth-layout-normalized .tutor-course-details-page,
body.fengi-auth-layout-normalized .tutor-course-single-content-wrapper {
    background: transparent !important;
}

/* Desktop page spacing: reduce giant gaps */
body.fengi-auth-layout-normalized .site-content > .ast-container,
body.fengi-auth-layout-normalized #content > .ast-container,
body.fengi-auth-layout-normalized .entry-content,
body.fengi-auth-layout-normalized .fengi-auth-parent-normalized {
    max-width: 1160px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Form card same across dashboard/course/register */
body.fengi-auth-layout-normalized .fengi-auth-form-scope,
body.fengi-auth-layout-normalized .fengi-course-login-scope,
body.fengi-auth-layout-normalized .fengi-registration-scope {
    width: 100% !important;
    max-width: 500px !important;
    margin: 52px auto 48px !important;
    padding: 34px 34px 32px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(255,255,255,.66) !important;
    background:
        linear-gradient(145deg, rgba(255,255,255,.78), rgba(255,255,255,.52)),
        rgba(255,255,255,.62) !important;
    box-shadow: none !important;
    filter: none !important;
    backdrop-filter: blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.08) !important;
    overflow: visible !important;
    position: relative !important;
    font-family: "Inter", sans-serif !important;
}

/* Fix header/form spacing */
body.fengi-auth-layout-normalized .fengi-auth-parent-normalized {
    padding-top: 10px !important;
    padding-bottom: 32px !important;
}

/* Registration page: reduce header-to-form and form-to-footer gap */
body.fengi-auth-layout-normalized .fengi-registration-scope,
body.fengi-auth-layout-normalized .fengi-auth-form-scope.fengi-student-registration-scope,
body.fengi-auth-layout-normalized .fengi-auth-form-scope.fengi-instructor-registration-scope {
    margin-top: 38px !important;
    margin-bottom: 40px !important;
    padding-bottom: 30px !important;
}

/* Google sign-in closer to form */
body.fengi-auth-layout-normalized .fengi-auth-form-scope + *,
body.fengi-auth-layout-normalized .fengi-registration-scope + *,
body.fengi-auth-layout-normalized .fengi-course-login-scope + * {
    margin-top: 16px !important;
}

body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-login-with-google,
body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-google-login,
body.fengi-auth-layout-normalized .fengi-auth-form-scope [class*="google"],
body.fengi-auth-layout-normalized .fengi-registration-scope .tutor-login-with-google,
body.fengi-auth-layout-normalized .fengi-registration-scope .tutor-google-login,
body.fengi-auth-layout-normalized .fengi-registration-scope [class*="google"] {
    margin-top: 16px !important;
    margin-bottom: 0 !important;
}

/* Inputs and button consistent */
body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="text"],
body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="email"],
body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="password"],
body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-form-control {
    width: 100% !important;
    min-height: 50px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15,23,42,.13) !important;
    background: rgba(255,255,255,.84) !important;
    box-shadow: none !important;
    color: #111827 !important;
    font-family: "Inter", sans-serif !important;
}

body.fengi-auth-layout-normalized .fengi-auth-form-scope button[type="submit"],
body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="submit"],
body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-btn-primary {
    width: 100% !important;
    min-height: 52px !important;
    border-radius: 13px !important;
    border: 0 !important;
    background: linear-gradient(135deg, var(--fta-cyan), #2078ff) !important;
    color: #fff !important;
    font-weight: 800 !important;
    box-shadow: none !important;
}

/* Course-page login should not start too low */
body.fengi-tutor-course-login-page .fengi-course-login-scope {
    margin-top: 38px !important;
    margin-bottom: 52px !important;
}

/* Mobile clean layout: stop card clipping/overflow */
@media (max-width: 767px) {
    html body.fengi-tutor-auth-page,
    html body.fengi-tutor-course-login-page,
    html body.fengi-auth-layout-normalized {
        overflow-x: hidden !important;
    }

    body.fengi-auth-layout-normalized .site-content > .ast-container,
    body.fengi-auth-layout-normalized #content > .ast-container,
    body.fengi-auth-layout-normalized .entry-content,
    body.fengi-auth-layout-normalized .fengi-auth-parent-normalized {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
        padding-top: 22px !important;
        padding-bottom: 28px !important;
        margin: 0 auto !important;
        display: block !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope,
    body.fengi-auth-layout-normalized .fengi-course-login-scope,
    body.fengi-auth-layout-normalized .fengi-registration-scope {
        width: 100% !important;
        max-width: 100% !important;
        margin: 24px auto 28px !important;
        padding: 28px 20px 28px !important;
        border-radius: 22px !important;
        transform: none !important;
        left: auto !important;
        right: auto !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope *,
    body.fengi-auth-layout-normalized .fengi-registration-scope *,
    body.fengi-auth-layout-normalized .fengi-course-login-scope * {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="text"],
    body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="email"],
    body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="password"],
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-form-control {
        min-height: 48px !important;
        font-size: 14px !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope h2,
    body.fengi-auth-layout-normalized .fengi-auth-form-scope h3,
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-fs-5 {
        font-size: 20px !important;
        line-height: 1.3 !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-reg-heading h2 {
        font-size: 24px !important;
    }

    /* Reduce registration Google/footer gaps on mobile */
    body.fengi-auth-layout-normalized .fengi-registration-scope {
        margin-bottom: 22px !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope + *,
    body.fengi-auth-layout-normalized .fengi-registration-scope + * {
        margin-top: 10px !important;
    }
}


/* =========================================================
   v3.9 MOBILE ONLY: reduce login/register top gap and padding
   Desktop is untouched.
   ========================================================= */
@media (max-width: 767px) {
    body.fengi-auth-layout-normalized,
    body.fengi-tutor-auth-page,
    body.fengi-tutor-course-login-page {
        overflow-x: hidden !important;
    }

    /* Reduce the gap between header and auth card on mobile only */
    body.fengi-auth-layout-normalized .site-content,
    body.fengi-auth-layout-normalized #content,
    body.fengi-auth-layout-normalized main,
    body.fengi-auth-layout-normalized article,
    body.fengi-auth-layout-normalized .entry-content,
    body.fengi-auth-layout-normalized .tutor-wrap,
    body.fengi-auth-layout-normalized .tutor-page-wrap {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }

    body.fengi-auth-layout-normalized .site-content > .ast-container,
    body.fengi-auth-layout-normalized #content > .ast-container,
    body.fengi-auth-layout-normalized .entry-content,
    body.fengi-auth-layout-normalized .fengi-auth-parent-normalized {
        padding-top: 0 !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
        padding-bottom: 18px !important;
        margin-top: -52px !important;
    }

    /* Card closer to header + smaller internal padding */
    body.fengi-auth-layout-normalized .fengi-auth-form-scope,
    body.fengi-auth-layout-normalized .fengi-course-login-scope,
    body.fengi-auth-layout-normalized .fengi-registration-scope {
        width: 100% !important;
        max-width: calc(100vw - 28px) !important;
        margin-top: 0 !important;
        margin-bottom: 20px !important;
        padding: 22px 16px 22px !important;
        border-radius: 20px !important;
        left: auto !important;
        right: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
    }

    /* Reduce internal vertical gaps */
    body.fengi-auth-layout-normalized .fengi-auth-form-scope::before,
    body.fengi-auth-layout-normalized .fengi-course-login-scope::before {
        margin-bottom: 16px !important;
        padding: 7px 12px !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope h2,
    body.fengi-auth-layout-normalized .fengi-auth-form-scope h3,
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-fs-5 {
        margin-bottom: 18px !important;
        font-size: 20px !important;
        line-height: 1.25 !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-mb-32,
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-mb-24,
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-mb-20,
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-mb-16 {
        margin-bottom: 14px !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="text"],
    body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="email"],
    body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="password"],
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-form-control {
        min-height: 46px !important;
        padding: 11px 14px !important;
        font-size: 14px !important;
        border-radius: 11px !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope button[type="submit"],
    body.fengi-auth-layout-normalized .fengi-auth-form-scope input[type="submit"],
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-btn-primary {
        min-height: 48px !important;
        border-radius: 12px !important;
    }

    /* Keep checkbox/forgot row clean on mobile */
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-d-flex {
        gap: 10px !important;
    }

    /* Reduce Google login and footer gaps */
    body.fengi-auth-layout-normalized .fengi-auth-form-scope + *,
    body.fengi-auth-layout-normalized .fengi-registration-scope + *,
    body.fengi-auth-layout-normalized .fengi-course-login-scope + * {
        margin-top: 8px !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-login-with-google,
    body.fengi-auth-layout-normalized .fengi-auth-form-scope .tutor-google-login,
    body.fengi-auth-layout-normalized .fengi-auth-form-scope [class*="google"] {
        margin-top: 10px !important;
        margin-bottom: 0 !important;
    }
}

@media (max-width: 480px) {
    body.fengi-auth-layout-normalized .site-content > .ast-container,
    body.fengi-auth-layout-normalized #content > .ast-container,
    body.fengi-auth-layout-normalized .entry-content,
    body.fengi-auth-layout-normalized .fengi-auth-parent-normalized {
        margin-top: -58px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope,
    body.fengi-auth-layout-normalized .fengi-course-login-scope,
    body.fengi-auth-layout-normalized .fengi-registration-scope {
        max-width: calc(100vw - 24px) !important;
        padding: 20px 14px 20px !important;
    }
}


/* =========================================================
   v3.10 MOBILE ONLY: add 60px top padding between header and auth form
   Desktop is untouched.
   ========================================================= */
@media (max-width: 767px) {
    body.fengi-auth-layout-normalized .site-content > .ast-container,
    body.fengi-auth-layout-normalized #content > .ast-container,
    body.fengi-auth-layout-normalized .entry-content,
    body.fengi-auth-layout-normalized .fengi-auth-parent-normalized {
        margin-top: 0 !important;
        padding-top: 60px !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope,
    body.fengi-auth-layout-normalized .fengi-course-login-scope,
    body.fengi-auth-layout-normalized .fengi-registration-scope {
        margin-top: 0 !important;
    }
}

@media (max-width: 480px) {
    body.fengi-auth-layout-normalized .site-content > .ast-container,
    body.fengi-auth-layout-normalized #content > .ast-container,
    body.fengi-auth-layout-normalized .entry-content,
    body.fengi-auth-layout-normalized .fengi-auth-parent-normalized {
        margin-top: 0 !important;
        padding-top: 60px !important;
    }
}


/* =========================================================
   v3.11 MOBILE ONLY: proper single top gap fix
   Previous 60px applied on multiple nested containers, causing huge gap.
   This resets nested spacing and applies one clean gap only.
   ========================================================= */
@media (max-width: 767px) {
    body.fengi-auth-layout-normalized .site-content,
    body.fengi-auth-layout-normalized #content,
    body.fengi-auth-layout-normalized main,
    body.fengi-auth-layout-normalized article,
    body.fengi-auth-layout-normalized .entry-content,
    body.fengi-auth-layout-normalized .tutor-wrap,
    body.fengi-auth-layout-normalized .tutor-page-wrap,
    body.fengi-auth-layout-normalized .site-content > .ast-container,
    body.fengi-auth-layout-normalized #content > .ast-container {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }

    /* Apply only one clean gap below the mobile header */
    body.fengi-auth-layout-normalized .fengi-auth-parent-normalized {
        padding-top: 32px !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
        padding-bottom: 18px !important;
        margin-top: 0 !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope,
    body.fengi-auth-layout-normalized .fengi-course-login-scope,
    body.fengi-auth-layout-normalized .fengi-registration-scope {
        margin-top: 0 !important;
        margin-bottom: 20px !important;
        padding: 22px 16px 22px !important;
        max-width: calc(100vw - 28px) !important;
    }
}

@media (max-width: 480px) {
    body.fengi-auth-layout-normalized .site-content,
    body.fengi-auth-layout-normalized #content,
    body.fengi-auth-layout-normalized main,
    body.fengi-auth-layout-normalized article,
    body.fengi-auth-layout-normalized .entry-content,
    body.fengi-auth-layout-normalized .tutor-wrap,
    body.fengi-auth-layout-normalized .tutor-page-wrap,
    body.fengi-auth-layout-normalized .site-content > .ast-container,
    body.fengi-auth-layout-normalized #content > .ast-container {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-parent-normalized {
        padding-top: 28px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body.fengi-auth-layout-normalized .fengi-auth-form-scope,
    body.fengi-auth-layout-normalized .fengi-course-login-scope,
    body.fengi-auth-layout-normalized .fengi-registration-scope {
        max-width: calc(100vw - 24px) !important;
        padding: 20px 14px 20px !important;
    }
}


/* =========================================================
   v3.12 Tutor cart/checkout clean background + hide page title
   Only cart/checkout pages are affected.
   ========================================================= */
body.fengi-auth-commerce-page {
    --fta-blue: #0b82ff;
    --fta-cyan: #21d4fd;
    background:
        radial-gradient(circle at 18% 18%, rgba(14,165,255,.16), transparent 30%),
        radial-gradient(circle at 86% 20%, rgba(33,212,253,.20), transparent 34%),
        linear-gradient(135deg, #eef9ff 0%, #def3ff 48%, #c9edff 100%) !important;
    min-height: 100vh !important;
}

/* Make containers transparent so the new background shows */
body.fengi-auth-commerce-page .site,
body.fengi-auth-commerce-page .site-content,
body.fengi-auth-commerce-page #content,
body.fengi-auth-commerce-page main,
body.fengi-auth-commerce-page article,
body.fengi-auth-commerce-page .entry-content,
body.fengi-auth-commerce-page .ast-container,
body.fengi-auth-commerce-page .tutor-wrap,
body.fengi-auth-commerce-page .tutor-page-wrap {
    background: transparent !important;
}

/* Hide page titles: Cart / Checkout */
body.fengi-auth-commerce-page .entry-title,
body.fengi-auth-commerce-page .page-title,
body.fengi-auth-commerce-page h1.entry-title,
body.fengi-auth-commerce-page h1.page-title,
body.fengi-auth-commerce-page main > h1:first-child,
body.fengi-auth-commerce-page .site-content h1:first-child {
    display: none !important;
}

/* Keep cart/checkout content centered with cleaner spacing */
body.fengi-auth-commerce-page .entry-content,
body.fengi-auth-commerce-page .tutor-wrap,
body.fengi-auth-commerce-page .tutor-page-wrap {
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.fengi-auth-commerce-page .site-content,
body.fengi-auth-commerce-page #content {
    padding-top: 26px !important;
    padding-bottom: 56px !important;
}

/* Light glass cards without changing structure */
body.fengi-auth-commerce-page .tutor-card,
body.fengi-auth-commerce-page .tutor-checkout-form,
body.fengi-auth-commerce-page .tutor-cart-page,
body.fengi-auth-commerce-page .tutor-cart-list,
body.fengi-auth-commerce-page .tutor-cart-summary,
body.fengi-auth-commerce-page .tutor-checkout-order-summary,
body.fengi-auth-commerce-page .tutor-checkout-billing-form,
body.fengi-auth-commerce-page .tutor-checkout-payment-method,
body.fengi-auth-commerce-page [class*="checkout"] .tutor-card,
body.fengi-auth-commerce-page [class*="cart"] .tutor-card {
    background: rgba(255,255,255,.62) !important;
    border: 1px solid rgba(255,255,255,.70) !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    backdrop-filter: blur(16px) saturate(1.05) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.05) !important;
}

/* Tutor native fields */
body.fengi-auth-commerce-page input,
body.fengi-auth-commerce-page select,
body.fengi-auth-commerce-page textarea,
body.fengi-auth-commerce-page .tutor-form-control {
    border-radius: 10px !important;
    box-shadow: none !important;
}

/* Buttons match site color */
body.fengi-auth-commerce-page .tutor-btn-primary,
body.fengi-auth-commerce-page button[type="submit"],
body.fengi-auth-commerce-page .tutor-cart-checkout-btn {
    background: linear-gradient(135deg, var(--fta-cyan), #2078ff) !important;
    border: 0 !important;
    border-radius: 12px !important;
    color: #fff !important;
    font-weight: 800 !important;
    box-shadow: none !important;
}

@media (max-width: 767px) {
    body.fengi-auth-commerce-page .site-content,
    body.fengi-auth-commerce-page #content {
        padding-top: 18px !important;
        padding-bottom: 36px !important;
    }

    body.fengi-auth-commerce-page .entry-content,
    body.fengi-auth-commerce-page .tutor-wrap,
    body.fengi-auth-commerce-page .tutor-page-wrap {
        width: 100% !important;
        max-width: calc(100vw - 28px) !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.fengi-auth-commerce-page .tutor-card,
    body.fengi-auth-commerce-page .tutor-checkout-form,
    body.fengi-auth-commerce-page .tutor-cart-page,
    body.fengi-auth-commerce-page .tutor-cart-list,
    body.fengi-auth-commerce-page .tutor-cart-summary,
    body.fengi-auth-commerce-page .tutor-checkout-order-summary,
    body.fengi-auth-commerce-page .tutor-checkout-billing-form,
    body.fengi-auth-commerce-page .tutor-checkout-payment-method {
        border-radius: 16px !important;
    }
}


/* =========================================================
   v3.13 CART/CHECKOUT ONLY: add header spacing + checkout field gaps
   Does not affect login, register, dashboard, or other pages.
   ========================================================= */

/* Desktop/tablet spacing below the header */
body.fengi-auth-commerce-page .site-content,
body.fengi-auth-commerce-page #content {
    padding-top: 118px !important;
}

/* Keep the cart/checkout content box lower without changing other page layouts */
body.fengi-auth-commerce-page .entry-content,
body.fengi-auth-commerce-page .tutor-wrap,
body.fengi-auth-commerce-page .tutor-page-wrap {
    margin-top: 0 !important;
}

/* Checkout only: increase gaps between billing fields */
body.fengi-auth-checkout-page .tutor-checkout-billing-form,
body.fengi-auth-checkout-page [class*="billing"],
body.fengi-auth-checkout-page [class*="checkout"] form {
    row-gap: 14px !important;
    column-gap: 14px !important;
}

body.fengi-auth-checkout-page .tutor-checkout-billing-form .tutor-row,
body.fengi-auth-checkout-page .tutor-checkout-billing-form [class*="row"],
body.fengi-auth-checkout-page [class*="billing"] .tutor-row,
body.fengi-auth-checkout-page [class*="billing"] [class*="row"] {
    gap: 14px !important;
}

body.fengi-auth-checkout-page .tutor-checkout-billing-form .tutor-form-group,
body.fengi-auth-checkout-page .tutor-checkout-billing-form [class*="form-group"],
body.fengi-auth-checkout-page [class*="billing"] .tutor-form-group,
body.fengi-auth-checkout-page [class*="billing"] [class*="form-group"] {
    margin-bottom: 14px !important;
}

body.fengi-auth-checkout-page input,
body.fengi-auth-checkout-page select,
body.fengi-auth-checkout-page textarea,
body.fengi-auth-checkout-page .tutor-form-control {
    margin-bottom: 12px !important;
}

/* Make side-by-side fields stop touching each other */
body.fengi-auth-checkout-page .tutor-checkout-billing-form input,
body.fengi-auth-checkout-page .tutor-checkout-billing-form select,
body.fengi-auth-checkout-page .tutor-checkout-billing-form textarea,
body.fengi-auth-checkout-page [class*="billing"] input,
body.fengi-auth-checkout-page [class*="billing"] select,
body.fengi-auth-checkout-page [class*="billing"] textarea {
    border-radius: 10px !important;
}

/* Remove extra gap after final address field before payment title */
body.fengi-auth-checkout-page .tutor-checkout-billing-form input:last-child,
body.fengi-auth-checkout-page .tutor-checkout-billing-form select:last-child,
body.fengi-auth-checkout-page .tutor-checkout-billing-form textarea:last-child {
    margin-bottom: 6px !important;
}

/* Mobile spacing */
@media (max-width: 767px) {
    body.fengi-auth-commerce-page .site-content,
    body.fengi-auth-commerce-page #content {
        padding-top: 82px !important;
        padding-bottom: 36px !important;
    }

    body.fengi-auth-checkout-page input,
    body.fengi-auth-checkout-page select,
    body.fengi-auth-checkout-page textarea,
    body.fengi-auth-checkout-page .tutor-form-control {
        margin-bottom: 10px !important;
    }

    body.fengi-auth-checkout-page .tutor-checkout-billing-form,
    body.fengi-auth-checkout-page [class*="billing"],
    body.fengi-auth-checkout-page [class*="checkout"] form {
        row-gap: 10px !important;
        column-gap: 10px !important;
    }
}


/* =========================================================
   v3.14.1 Tutor checkout custom fields: hide N/A + add Grade dropdown
   ========================================================= */
body.fengi-checkout-fields-customized .fengi-checkout-na-hidden {
    display: none !important;
}

body.fengi-auth-checkout-page .fengi-checkout-grade-field,
body.fengi-checkout-fields-customized .fengi-checkout-grade-field {
    width: 100% !important;
    margin-bottom: 16px !important;
}

body.fengi-auth-checkout-page .fengi-checkout-grade-field label,
body.fengi-checkout-fields-customized .fengi-checkout-grade-field label {
    display: block !important;
    margin-bottom: 8px !important;
    color: #1f2937 !important;
    font-weight: 700 !important;
    font-family: "Inter", sans-serif !important;
}

body.fengi-auth-checkout-page .fengi-checkout-grade-field select,
body.fengi-checkout-fields-customized .fengi-checkout-grade-field select {
    width: 100% !important;
    min-height: 46px !important;
    padding: 10px 14px !important;
    border: 1px solid rgba(15,23,42,.16) !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.88) !important;
    color: #1f2937 !important;
    box-shadow: none !important;
    font-family: "Inter", sans-serif !important;
    outline: none !important;
}

body.fengi-auth-checkout-page .fengi-checkout-grade-field select:focus,
body.fengi-checkout-fields-customized .fengi-checkout-grade-field select:focus {
    border-color: #21d4fd !important;
    box-shadow: 0 0 0 4px rgba(33,212,253,.14) !important;
}

body.fengi-auth-checkout-page .fengi-checkout-grade-field select.fengi-checkout-grade-error,
body.fengi-checkout-fields-customized .fengi-checkout-grade-field select.fengi-checkout-grade-error {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 4px rgba(239,68,68,.12) !important;
}

@media (max-width: 767px) {
    body.fengi-auth-checkout-page .fengi-checkout-grade-field,
    body.fengi-checkout-fields-customized .fengi-checkout-grade-field {
        margin-bottom: 14px !important;
    }
}


/* v3.14.2: Hide checkout Grade label. Dropdown placeholder "Select Grade" remains visible. */
body.fengi-auth-checkout-page .fengi-checkout-grade-field label,
body.fengi-checkout-fields-customized .fengi-checkout-grade-field label,
body.fengi-auth-checkout-page .fengi-checkout-grade-label-hidden,
body.fengi-checkout-fields-customized .fengi-checkout-grade-label-hidden {
    display: none !important;
}

body.fengi-auth-checkout-page .fengi-checkout-grade-field,
body.fengi-checkout-fields-customized .fengi-checkout-grade-field {
    margin-top: 0 !important;
}
