   .esfl-auth-shell {
                max-width: 1100px;
                margin: 32px auto;
                
            }
.esfl-password-wrap{
    position:relative;
}

.esfl-password-wrap input{
    padding-right:50px;
}

.esfl-password-toggle{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    border:none;
    background:transparent;
    cursor:pointer;
    font-size:18px;
    line-height:1;
    padding:0;
}
            .esfl-auth-header {
                text-align: center;
                margin-bottom: 24px;
            }

            .esfl-auth-badge {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                padding: 7px 14px;
                border-radius: 999px;
                background: #eef8f1;
                color: #2f7d32;
                font-size: 13px;
                font-weight: 700;
                margin-bottom: 12px;
            }

            .esfl-auth-header h2 {
                margin: 0 0 10px;
                font-size: 32px;
                line-height: 1.25;
                font-weight: 700;
                color: #1f2937;
            }

            .esfl-auth-header p {
                max-width: 720px;
                margin: 0 auto;
                color: #6b7280;
                font-size: 15px;
                line-height: 1.7;
            }

            .esfl-auth-layout {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 24px;
                align-items: stretch;
            }

            .esfl-auth-layout--single {
                grid-template-columns: minmax(0, 560px);
                justify-content: center;
            }

            .esfl-auth-switch {
                margin: 20px 0 0;
                text-align: center;
                color: #4b5563;
                font-size: 14px;
            }

            .esfl-auth-switch a {
                color: #2f7d32;
                font-weight: 700;
                text-decoration: underline;
            }

            .esfl-auth-card {
                background: #ffffff;
                border: 1px solid #e7ecef;
                border-radius: 18px;
                padding: 28px;
                box-shadow: 0 10px 30px rgba(16, 24, 40, 0.06);
            }

            .esfl-auth-card__head {
                margin-bottom: 20px;
            }

            .esfl-auth-card__head h3 {
                margin: 0 0 6px;
                font-size: 24px;
                line-height: 1.3;
                color: #1f2937;
                font-weight: 700;
            }

            .esfl-auth-card__head p {
                margin: 0;
                color: #6b7280;
                font-size: 14px;
                line-height: 1.6;
            }

            .esfl-auth-form {
                margin: 0;
            }

            .esfl-field {
                margin-bottom: 16px;
            }

            .esfl-field label {
                display: block;
                margin-bottom: 7px;
                font-size: 14px;
                font-weight: 600;
                color: #374151;
            }

            .esfl-auth-form input[type="text"],
            .esfl-auth-form input[type="password"] {
                width: 100%;
                height: 48px;
                padding: 0 15px;
                border: 1px solid #d7dde3;
                border-radius: 10px;
                background: #fff;
                box-shadow: none;
margin:0;
                font-size: 14px;
                color: #111827;
                transition: all .2s ease;
            }

            .esfl-auth-form input[type="text"]::placeholder,
            .esfl-auth-form input[type="password"]::placeholder {
                color: #9ca3af;
            }

            .esfl-auth-form input[type="text"]:focus,
            .esfl-auth-form input[type="password"]:focus {
                border-color: #5fae67;
                box-shadow: 0 0 0 3px rgba(95, 174, 103, 0.14);
                outline: none;
            }

            .esfl-auth-row {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px;
                margin: 4px 0 18px;
            }

            .esfl-checkbox {
                display: inline-flex;
                align-items: center;
                
                font-size: 14px;
                color: #4b5563;
                cursor: pointer;
            }

            .esfl-checkbox input {
                margin: 0;
            }

            .esfl-btn {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                min-height: 48px;
                padding: 0 18px;
                border: none;
                border-radius: 10px;
                font-size: 15px;
                font-weight: 700;
                cursor: pointer;
                transition: all .2s ease;
                text-decoration: none;
margin: 0;
            }
button.esfl-btn.esfl-btn--primary.esfl-btn--full {
    margin: 0;
}
            .esfl-btn--primary {
                background: linear-gradient(135deg, #4f9f57 0%, #2f7d32 100%);
                color: #fff;
            }

            .esfl-btn--primary:hover {
                transform: translateY(-1px);
                box-shadow: 0 10px 20px rgba(47, 125, 50, 0.18);
                color: #fff;
margin: 0;
            }

            .esfl-btn--full {
                width: 100%;
            }

            .esfl-divider {
                position: relative;
                text-align: center;
                margin-bottom: 16px;
            }

            .esfl-divider:before {
                content: "";
                position: absolute;
                top: 50%;
                left: 0;
                right: 0;
                height: 1px;
                background: #e5e7eb;
            }

            .esfl-divider span {
                position: relative;
                display: inline-block;
                padding: 0 12px;
                background: #fff;
                color: #6b7280;
                font-size: 13px;
            }

            .esfl-auth-note {
                margin-top: 18px;
                padding: 14px 15px;
                border-radius: 12px;
                background: #f8faf8;
                border: 1px solid #e6efe7;
                color: #4b5563;
                font-size: 14px;
                line-height: 1.6;
            }

            .esfl-auth-message,
            .esfl-auth-notice {
                margin-bottom: 18px;
                padding: 14px 16px;
                border-radius: 12px;
                font-size: 14px;
                font-weight: 600;
            }

            .esfl-auth-message.success,
            .esfl-auth-notice--success {
                background: #ecfdf3;
                color: #067647;
                border: 1px solid #abefc6;
            }

            .esfl-auth-message.error {
                background: #fef3f2;
                color: #b42318;
                border: 1px solid #fecdca;
            }

            @media (max-width: 849px) {
                .esfl-auth-header h2 {
                    font-size: 22px;
                }
a.esfl-social-btn.esfl-social-btn--facebook,a.esfl-social-btn.esfl-social-btn--google{
font-size:10px;
}
                .esfl-auth-layout {
                    grid-template-columns: 1fr;
                }

                .esfl-auth-card {
                    padding: 22px;
                    border-radius: 16px;
                }
            }

            div.nsl-container.nsl-container-block .nsl-container-buttons {
                display: flex !important;
                padding: 5px 0;
                gap: 15px;
            }
