        /* Remove duplicate plain-text upgrade link from availability toggle switch */
        .filmly-avail-toggle-wrap a.ftp-blur-gate,
        .filmly-avail-toggle-wrap .ftp-blur-gate {
            display: none !important;
        }

        /* Suppress orphan error notices on the login form when registration has errors */
        .e-n-tabs:has(.um-register.um-err) .um-login .um-notice.err,
        .um-register.um-err~.um-login .um-notice.err {
            display: none !important;
        }

        /* Always suppress any native Ultimate Member password toggles and browser native reveal buttons */
        .um-toggle-password,
        span.um-toggle-password,
        i.um-icon-eye,
        i.um-icon-eye-slash,
        input[type="password"]::-ms-reveal,
        input[type="password"]::-ms-clear {
            display: none !important;
        }

        /* Password input field padding for eye toggle */
        input.filmly-pwd-input,
        .um-field input[type="password"].filmly-pwd-input,
        .um-field-area-password input.filmly-pwd-input {
            padding-right: 46px !important;
        }

        /* Password toggle button - strictly ONE icon visible at a time.
           The account page styles every button as a red pill (head-styles-a-2.css), so the
           account selectors below are needed to keep this a small icon there too. */
        .filmly-pwd-toggle,
        body.um-page-account .um-account button.filmly-pwd-toggle,
        .um-account-main button.filmly-pwd-toggle,
        .um-account-section button.filmly-pwd-toggle {
            position: absolute !important;
            right: 12px !important;
            top: 50% !important;
            transform: translateY(-50%) !important;
            background: transparent !important;
            border: none !important;
            box-shadow: none !important;
            outline: none !important;
            padding: 4px !important;
            margin: 0 !important;
            cursor: pointer !important;
            color: #94a3b8 !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            z-index: 10 !important;
            transition: color 0.15s ease !important;
            line-height: 1 !important;
            height: auto !important;
            width: auto !important;
            min-width: 0 !important;
            min-height: 0 !important;
            border-radius: 6px !important;
            font-size: 0 !important;
        }

        .filmly-pwd-toggle:hover,
        .filmly-pwd-toggle:focus,
        body.um-page-account .um-account button.filmly-pwd-toggle:hover,
        body.um-page-account .um-account button.filmly-pwd-toggle:focus,
        .um-account-main button.filmly-pwd-toggle:hover,
        .um-account-section button.filmly-pwd-toggle:hover {
            color: #f1f5f9 !important;
            background: transparent !important;
            background-color: transparent !important;
            box-shadow: none !important;
            transform: translateY(-50%) !important;
        }

        .filmly-pwd-toggle svg {
            pointer-events: none !important;
        }

        /* Default state (password masked): show open-eye */
        .filmly-pwd-toggle .filmly-eye-open {
            display: block !important;
        }

        .filmly-pwd-toggle .filmly-eye-closed {
            display: none !important;
        }

        /* Revealed state (password text visible): show slashed-eye */
        .filmly-pwd-toggle.is-revealed .filmly-eye-open {
            display: none !important;
        }

        .filmly-pwd-toggle.is-revealed .filmly-eye-closed {
            display: block !important;
        }

        /* Password Requirements Box */
        .filmly-pwd-reqs {
            margin-top: 10px !important;
            margin-bottom: 12px !important;
            padding: 14px 16px !important;
            background: #11131c !important;
            border: 1px solid #23253b !important;
            border-radius: 10px !important;
            font-size: 12px !important;
            font-family: degular, sans-serif !important;
            box-sizing: border-box !important;
            transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
            text-align: left !important;
        }

        .filmly-pwd-reqs.all-valid {
            border-color: #10b981 !important;
            box-shadow: 0 0 12px rgba(16, 185, 129, 0.15) !important;
        }

        .filmly-pwd-reqs-title {
            color: #94a3b8 !important;
            font-weight: 700 !important;
            margin-bottom: 8px !important;
            font-size: 11px !important;
            text-transform: uppercase !important;
            letter-spacing: 0.6px !important;
        }

        .filmly-req-item {
            display: flex !important;
            align-items: center !important;
            gap: 8px !important;
            margin-bottom: 5px !important;
            color: #64748b !important;
            font-size: 12px !important;
            transition: color 0.15s ease !important;
        }

        .filmly-req-item:last-child {
            margin-bottom: 0 !important;
        }

        .filmly-req-item .req-icon {
            font-size: 11px !important;
            line-height: 1 !important;
            width: 14px !important;
            text-align: center !important;
            color: #64748b !important;
            transition: color 0.15s ease !important;
        }

        .filmly-req-item.valid {
            color: #10b981 !important;
        }

        .filmly-req-item.valid .req-icon {
            color: #10b981 !important;
        }

        /* Ensure "Keep me signed in" checkbox is strictly left-aligned naturally — NEVER center the checkbox */
        .um-login .um-col-alt {
            display: block !important;
            text-align: left !important;
            width: 100% !important;
            margin: 15px 0 5px 0 !important;
            float: none !important;
            clear: both !important;
        }

        .um-login .um-field.um-field-c,
        .um-login .um-col-alt .um-field-c,
        .um-login .um-col-alt .um-field-area,
        .um-login .um-col-alt label.um-field-checkbox {
            text-align: left !important;
            display: block !important;
            margin-left: 0 !important;
            margin-right: auto !important;
            float: none !important;
        }

        .um-login .um-col-alt label.um-field-checkbox {
            display: inline-flex !important;
            align-items: center !important;
            justify-content: flex-start !important;
            cursor: pointer !important;
        }

        .um-login .um-col-alt label.um-field-checkbox .um-field-checkbox-option {
            text-align: left !important;
            margin-left: 0 !important;
            margin-right: 0 !important;
        }

        /* Center login and registration submit buttons ONLY */
        .um-login .um-center,
        .um-register .um-center {
            text-align: center !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            width: 100% !important;
            margin: 16px auto 0 auto !important;
            float: none !important;
            clear: both !important;
        }

        .um-login input[type="submit"]#um-submit-btn,
        .um-register input[type="submit"]#um-submit-btn {
            display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            margin: 0 auto !important;
            text-align: center !important;
        }

        /* Center forgot password link */
        .um-login .um-col-alt-b,
        .um-login .um-col-alt-b a {
            text-align: center !important;
            display: block !important;
            margin: 12px auto 0 auto !important;
        }
    
