.verde_ceasa {
    background: rgb(36, 166, 55);
    background: linear-gradient(90deg, rgba(36, 166, 55, 1) 0%, rgba(36, 166, 55, 1) 19%, rgba(83, 189, 191, 1) 100%);
    height: 150px;
}

.head_container_logo {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    background-image: url("/static/img/logos/logo_ceasa_estado.svg");
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 400px 200px !important;
}

.head_container_left {
    display: flex !important;
    flex-direction: column-reverse !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    align-content: space-around !important;
    height: 150px !important;
    margin: 0 0 0 0 !important;
    padding: 0 0 0 0 !important;
}

.head_left:nth-child(1) {
    display: block !important;
    flex-grow: 0 !important;
    flex-shrink: 1 !important;
    flex-basis: auto !important;
    align-self: auto !important;
    order: 0 !important;
    background-image: url("/static/img/logos/logo_complemento.svg");
    background-position: bottom !important;
    background-repeat: no-repeat !important;
    height: 80%;
    width: 100%;
}

.auth-box {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
    align-content: normal !important;
    min-height: 0 !important;
}

@media (max-width: 650px) {
    .head_container_logo {
        background-size: 300px 100px !important;
    }
}

@media (max-width: 1240px) {
    .head_container_left {
        display: none !important;
    }

    .head_container_right {
        display: none !important;
    }

    .head_container_logo {
        width: 100%;
    }
}

.dashed-left {
    border-left: 1px dashed rgba(155, 166, 183, 0.45);
}

.dashed-right {
    border-right: 1px dashed rgba(155, 166, 183, 0.45);
}


hr {
    margin: 1px 0;
}

/* Themas -------------------------------------------------------- Login */
.logo-login, .logo-login-min {
    display: none;
}

html[data-bs-theme=dark] .logo-login-dark {
    display: block;
}

html[data-bs-theme=light] .logo-login-light {
    display: block;
}

@media (max-width: 991px) {
    .dashed-left {
        border: none !important;
    }

    .logo-login-view {
        display: none !important;
    }

    .logo-login-view-dark {
        display: block !important;
    }
}

@media (min-width: 992px) and (max-width: 2048px) {
    .logo-login-view {
        display: block !important;
    }

    .logo-login-view-dark {
        display: none !important;
    }
}

/* Estilos específicos para a animação e estrutura de colunas *genival*/
        :root {
            --ceasa-verde-principal: #2E8B57;
            --ceasa-verde-escuro: #1b5334;
            --ceasa-azul-destaque: #4682B4;
        }

        /* Ajuste de tamanho do container principal */
        .login-container-custom {
            background: #fff;
            border-radius: 15px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.1);
            overflow: hidden;
            max-width: 800px; /* Diminuído para não ficar tão gigante */
            width: 100%;
            margin: 1rem;
        }

        /* Coluna da Esquerda - Identidade */
        .login-left-custom {
            background: linear-gradient(135deg, var(--ceasa-verde-principal) 0%, var(--ceasa-verde-escuro) 100%);
            color: #fff;
            padding: 2.5rem;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            text-align: center;
        }

        .login-left-custom img {
            max-width: 110px !important; /* Logo mais discreta e elegante */
            height: auto;
            margin-bottom: 1.5rem;
            filter: drop-shadow(0px 4px 6px rgba(0,0,0,0.2));
        }

        .feature-item {
            display: flex;
            align-items: center;
            margin-bottom: 0.8rem;
            text-align: left;
            width: 100%;
            font-size: 0.9rem;
        }

        .feature-item i {
            margin-right: 10px;
            color: #FFD700;
        }

        /* Coluna da Direita - Formulário */
        .login-right {
            padding: 2.5rem !important;
        }

        .input-group-text {
            background-color: #f8f9fa;
            border-right: none;
            color: var(--ceasa-verde-principal);
        }

        .login-right .form-control {
            border-left: none;
            font-size: 0.95rem;
        }

        .login-right .form-control:focus {
            box-shadow: none;
            border-color: #dee2e6;
        }

        .btn-login {
            background: linear-gradient(45deg, var(--ceasa-verde-principal), var(--ceasa-azul-destaque));
            border: none;
            transition: all 0.3s ease;
        }

        .btn-login:hover {
            transform: translateY(-1px);
            filter: brightness(1.1);
        }

        .login-container-custom input[type="text"].form-control,
        .login-container-custom input[type="email"].form-control,
        .login-container-custom input::placeholder {
            text-transform: none !important;
        }

        .fade-in-up {
            animation: fadeInUp 0.5s ease-out;
        }

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

        @media (max-width: 991px) {
            .login-left-custom { display: none; }
            .login-container-custom { max-width: 400px; }
        }

/* Deixa a logo redonda */
.login-left-custom img,
.logo-ceasa {
    width: 100px;          /* ajuste se quiser maior ou menor */
    height: 100px;
    object-fit: cover;     /* mantém proporção */
    border-radius: 50%;    /* deixa redonda */
    border: 6px solid #0f6b37;  /* borda verde institucional */
    padding: 6px;          /* espaço interno */
    background-color: #fff;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

 summary::-webkit-details-marker { display: none; }
        summary::after {
            content: '\2b'; /* Sinal de + */
            float: right;
            font-weight: bold;
        }
        details[open] summary::after {
            content: '\2212'; /* Sinal de - */
        }
        .e-n-accordion-item-title:hover {
            background-color: #f8f9fa !important;
        }
