/**
 * Aexis Educação — Plataforma do Método (CSS)
 *
 * Estilo da área restrita (login + painéis).
 * Versão: 1.2.0 — fundo claro neutro, marca em acentos.
 *
 * Aplicado SÓ em páginas com classe body 'aexis-plataforma'
 * (injetada pelo plugin Aexis Polos).
 */


/* ============================================================
   VARIÁVEIS DA PLATAFORMA
   ============================================================ */
:root {
    --aexis-azul: #2563EB;
    --aexis-azul-escuro: #1D4ED8;
    --aexis-laranja: #F97316;
    --aexis-laranja-escuro: #EA580C;

    --aexis-fundo: #F1F5F9;       /* slate-100 */
    --aexis-card: #FFFFFF;
    --aexis-borda: #E2E8F0;       /* slate-200 */
    --aexis-borda-forte: #CBD5E1; /* slate-300 */

    --aexis-texto: #0F172A;       /* slate-900 */
    --aexis-texto-suave: #475569; /* slate-600 */
    --aexis-texto-discreto: #94A3B8; /* slate-400 */

    --aexis-info-fundo: #EFF6FF;  /* blue-50 */
    --aexis-warn-fundo: #FFF7ED;  /* orange-50 */
    --aexis-erro: #DC2626;
    --aexis-sucesso: #16A34A;

    --aexis-raio: 12px;
    --aexis-raio-sm: 8px;
    --aexis-raio-pill: 999px;

    --aexis-sombra-sutil: 0 1px 3px rgba(15, 23, 42, 0.04), 0 1px 2px rgba(15, 23, 42, 0.03);
    --aexis-sombra-card: 0 4px 12px rgba(15, 23, 42, 0.06);
    --aexis-sombra-foco: 0 0 0 3px rgba(37, 99, 235, 0.15);
}


/* ============================================================
   RESET E BASE DA PLATAFORMA
   ============================================================ */
body.aexis-plataforma {
    background: var(--aexis-fundo);
    color: var(--aexis-texto);
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    margin: 0;
    padding: 0;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
}

/* Esconde botão flutuante de WhatsApp e elementos do tema institucional
   que possam escapar do remove_action no functions.php */
body.aexis-plataforma .aexis-whatsapp,
body.aexis-plataforma .whatsapp-float,
body.aexis-plataforma .floating-whatsapp,
body.aexis-plataforma .whatsapp-button,
body.aexis-plataforma .floating-wpp,
body.aexis-plataforma .wpb-wrapper,
body.aexis-plataforma [class*="whatsapp-flo"],
body.aexis-plataforma [id*="whatsapp"],
body.aexis-plataforma [id*="wpp-float"] {
    display: none !important;
}


/* ============================================================
   NAVBAR DA PLATAFORMA
   ============================================================ */
.aexis-plat-navbar {
    background: var(--aexis-card);
    border-bottom: 1px solid var(--aexis-borda);
    padding: 14px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: var(--aexis-sombra-sutil);
}

.aexis-plat-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.aexis-plat-logo__mark {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--aexis-azul), var(--aexis-laranja));
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 800;
    font-size: 18px;
}

.aexis-plat-logo__text {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.aexis-plat-logo__title {
    font-weight: 800;
    font-size: 16px;
    color: var(--aexis-azul);
    letter-spacing: 0.3px;
}

.aexis-plat-logo__sub {
    font-weight: 700;
    font-size: 11px;
    color: var(--aexis-laranja);
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.aexis-plat-navbar__right {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
}

.aexis-plat-navbar__user {
    color: var(--aexis-texto-suave);
}

.aexis-plat-navbar__user strong {
    color: var(--aexis-texto);
    font-weight: 600;
}

.aexis-plat-navbar__sair {
    color: var(--aexis-texto-suave);
    text-decoration: none;
    padding: 6px 14px;
    border-radius: var(--aexis-raio-pill);
    border: 1px solid var(--aexis-borda);
    transition: all .15s;
    font-weight: 500;
    font-size: 13px;
}

.aexis-plat-navbar__sair:hover {
    color: var(--aexis-erro);
    border-color: var(--aexis-erro);
}

.aexis-plat-navbar__voltar {
    color: var(--aexis-texto-suave);
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
}

.aexis-plat-navbar__voltar:hover {
    color: var(--aexis-azul);
}


/* ============================================================
   CONTAINER PRINCIPAL
   ============================================================ */
.aexis-plat-main {
    max-width: 1100px;
    margin: 0 auto;
    padding: 40px 24px;
}


/* ============================================================
   FOOTER DA PLATAFORMA
   ============================================================ */
.aexis-plat-footer {
    margin-top: 60px;
    padding: 24px;
    border-top: 1px solid var(--aexis-borda);
    text-align: center;
    color: var(--aexis-texto-discreto);
    font-size: 13px;
}

.aexis-plat-footer a {
    color: var(--aexis-texto-suave);
    text-decoration: none;
    margin: 0 10px;
}

.aexis-plat-footer a:hover {
    color: var(--aexis-azul);
}


/* ============================================================
   PÁGINA DE LOGIN
   ============================================================ */
body.aexis-plataforma-login .aexis-plat-main {
    min-height: calc(100vh - 200px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 40px;
    padding-bottom: 40px;
}

.aexis-login-wrapper {
    width: 100%;
    max-width: 440px;
}

.aexis-login-card {
    background: var(--aexis-card);
    border: 1px solid var(--aexis-borda);
    border-radius: var(--aexis-raio);
    box-shadow: var(--aexis-sombra-card);
    padding: 40px 36px;
}

.aexis-login-card__brand {
    text-align: center;
    margin-bottom: 24px;
}

.aexis-login-card__brand-mark {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--aexis-azul), var(--aexis-laranja));
    margin: 0 auto 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 800;
    font-size: 24px;
}

.aexis-login-card__brand-text {
    line-height: 1.2;
}

.aexis-login-card__brand-title {
    font-weight: 800;
    font-size: 18px;
    color: var(--aexis-azul);
    letter-spacing: 0.5px;
}

.aexis-login-card__brand-sub {
    font-weight: 700;
    font-size: 12px;
    color: var(--aexis-laranja);
    letter-spacing: 2px;
    text-transform: uppercase;
}

.aexis-login-card h1 {
    font-size: 24px;
    font-weight: 700;
    color: var(--aexis-texto);
    margin: 0 0 6px;
    text-align: center;
    letter-spacing: -0.3px;
}

.aexis-login-card__hint {
    font-size: 14px;
    color: var(--aexis-texto-suave);
    text-align: center;
    margin: 0 0 28px;
}

/* Formulário */
.aexis-login-box {
    width: 100%;
}

.aexis-login-box .login-username,
.aexis-login-box .login-password {
    margin-bottom: 16px;
}

.aexis-login-box label {
    display: block;
    font-weight: 600;
    font-size: 13px;
    color: var(--aexis-texto);
    margin-bottom: 6px;
}

.aexis-login-box input[type="text"],
.aexis-login-box input[type="email"],
.aexis-login-box input[type="password"] {
    width: 100%;
    padding: 11px 14px;
    border: 1px solid var(--aexis-borda-forte);
    border-radius: var(--aexis-raio-sm);
    font-size: 15px;
    background: var(--aexis-card);
    color: var(--aexis-texto);
    box-sizing: border-box;
    font-family: inherit;
    transition: border-color .15s, box-shadow .15s;
}

.aexis-login-box input[type="text"]:focus,
.aexis-login-box input[type="email"]:focus,
.aexis-login-box input[type="password"]:focus {
    outline: none;
    border-color: var(--aexis-azul);
    box-shadow: var(--aexis-sombra-foco);
}

.aexis-login-box .login-remember {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 4px 0 24px;
    font-size: 14px;
    color: var(--aexis-texto-suave);
}

.aexis-login-box .login-remember label {
    margin: 0;
    font-weight: 500;
    font-size: 14px;
    color: var(--aexis-texto-suave);
    cursor: pointer;
}

.aexis-login-box .login-remember input[type="checkbox"] {
    width: 16px;
    height: 16px;
    accent-color: var(--aexis-azul);
    cursor: pointer;
}

.aexis-login-box .login-submit {
    margin: 0;
}

.aexis-login-box input[type="submit"],
.aexis-login-box .aexis-btn {
    width: 100%;
    padding: 13px 20px;
    border: 0;
    border-radius: var(--aexis-raio-pill);
    background: var(--aexis-laranja);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    transition: background-color .15s, transform .05s;
    box-shadow: 0 1px 2px rgba(249, 115, 22, 0.3);
}

.aexis-login-box input[type="submit"]:hover,
.aexis-login-box .aexis-btn:hover {
    background: var(--aexis-laranja-escuro);
}

.aexis-login-box input[type="submit"]:active,
.aexis-login-box .aexis-btn:active {
    transform: translateY(1px);
}

.aexis-btn-primary {
    background: var(--aexis-azul) !important;
    box-shadow: 0 1px 2px rgba(37, 99, 235, 0.3) !important;
}

.aexis-btn-primary:hover {
    background: var(--aexis-azul-escuro) !important;
}

.aexis-login-extra {
    margin-top: 18px;
    text-align: center;
    font-size: 14px;
}

.aexis-login-extra a {
    color: var(--aexis-azul);
    text-decoration: none;
    font-weight: 500;
}

.aexis-login-extra a:hover {
    text-decoration: underline;
}

.aexis-login-box--logado {
    text-align: center;
}

.aexis-login-box--logado p {
    margin: 8px 0;
    color: var(--aexis-texto-suave);
}

.aexis-link-sair {
    color: var(--aexis-texto-discreto);
    text-decoration: none;
    font-size: 13px;
}

.aexis-link-sair:hover {
    color: var(--aexis-erro);
}


/* ============================================================
   RESPONSIVO
   ============================================================ */
@media (max-width: 640px) {
    .aexis-plat-navbar {
        padding: 12px 16px;
    }

    .aexis-plat-navbar__user {
        display: none;
    }

    .aexis-plat-main {
        padding: 24px 16px;
    }

    .aexis-login-card {
        padding: 32px 24px;
    }

    .aexis-login-card h1 {
        font-size: 21px;
    }
}
