/* Paginа: admin/academias.html — CSS extraido automaticamente */
:root{
    --bg-main:#F5F2E9;
    --bg-secondary:#181818;
    --glass-bg:#FFFFFF;
    --glass-bg-hover:rgba(255,255,255,.95);
    --gold:#16804A;
    --gold-soft:rgba(22,128,74,.10);
    --green:#16804A;
    --text:#111111;
    --text-muted:#6f6a5f;
    --border:rgba(17,17,17,.10);
    --sidebar-width:270px;
}

body{
    background:var(--bg-main);
    color:#eee;
    font-family:'Montserrat',sans-serif;
    margin:0;
}

/* =========================================================
           SIDEBAR — PADRAO CANONICO DO PORTAL
        ========================================================= */

.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);height:100vh;background:var(--bg-secondary);border-right:1px solid var(--border);z-index:1050;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;transition:transform .25s ease;}

.sidebar-brand{display:flex;align-items:center;gap:11px;padding:20px 18px 18px;border-bottom:1px solid var(--border);text-decoration:none;flex-shrink:0;}

.sidebar-brand img{width:38px;height:38px;object-fit:contain;flex-shrink:0;}

.sidebar-brand h5{margin:0;color:var(--gold);font-size:15px;font-weight:800;line-height:1.1;letter-spacing:.8px;}

.sidebar-brand small{display:block;margin-top:2px;color:var(--text-muted);font-size:9px;font-weight:600;letter-spacing:1px;}

.sidebar-menu{flex:1;padding:14px 12px;display:flex;flex-direction:column;gap:2px;}

.sidebar-section{padding:14px 10px 5px;color:var(--text-muted);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1.4px;}

.sidebar-menu a{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:9px;color:var(--text-muted);text-decoration:none;font-size:12px;font-weight:600;transition:.15s ease;}

.sidebar-menu a i{width:20px;text-align:center;font-size:16px;flex-shrink:0;}

.sidebar-menu a:hover{background:rgba(255,255,255,.055);color:#fff;}

.sidebar-menu a.active{background:rgba(255,215,0,.10);color:var(--gold);}

.sidebar-divider{height:1px;margin:9px 10px;background:rgba(255,255,255,.045);flex-shrink:0;}

.sidebar-footer{padding:14px 18px;border-top:1px solid var(--border);color:var(--text-muted);font-size:9px;text-align:center;flex-shrink:0;}

.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:1040;}

.sidebar-overlay.show{display:block;}

.main-content{margin-left:var(--sidebar-width);min-height:100vh;}

#menuButton{display:none;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:10px;background:var(--glass-bg);color:var(--text-muted);font-size:18px;cursor:pointer;flex-shrink:0;}

#menuButton:hover{background:rgba(255,255,255,.075);color:#fff;}

.topbar{
    min-height:75px;
    padding:0 30px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    background:#09090c;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.page-title{
    display:flex;
    align-items:center;
    gap:10px;
}

.page-title h4{
    margin:0;
    font-size:1rem;
    font-weight:700;
}

.page-title small{
    color:#777;
    font-size:.7rem;
}

.page{
    padding:35px;
}

.admin-profile{
    display:flex;
    align-items:center;
    gap:10px;
}

.admin-avatar{
    width:38px;
    height:38px;
    border-radius:50%;
    background:linear-gradient(
        135deg,
        var(--gold),
        var(--green)
    );
    display:flex;
    align-items:center;
    justify-content:center;
    color:#000;
    font-weight:800;
    overflow:hidden;
    background-size:cover;
    background-position:center;
}

.admin-info small{
    display:block;
    color:#777;
    font-size:.65rem;
}

.btn-outline-aya{
    border:1px solid rgba(255,215,0,.4);
    color:var(--gold);
    background:transparent;
    border-radius:9px;
    padding:8px 14px;
    font-size:.72rem;
}

.btn-outline-aya:hover{
    background:rgba(255,215,0,.08);
    color:var(--gold);
}

.card-aya{
    background:var(--glass-bg);
    border:1px solid var(--border);
    border-radius:18px;
    padding:24px;
}

.nucleo{
    background:var(--glass-bg);
    border:1px solid var(--border);
    border-radius:18px;
    padding:25px;
    height:100%;
    position:relative;
    transition:.3s;
}

.nucleo:hover{
    transform:translateY(-4px);
    border-color:rgba(255,215,0,.3);
}

.icon{
    width:50px;
    height:50px;
    border-radius:12px;
    background:rgba(34,139,34,.12);
    color:#55d66d;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.4rem;
}

.nucleo-meta{
    color:#777;
    font-size:.7rem;
    display:flex;
    align-items:center;
    gap:6px;
    margin-top:5px;
}

.acoes-card{
    position:absolute;
    top:12px;
    right:12px;
    display:none;
    gap:6px;
}

.nucleo:hover .acoes-card{
    display:flex;
}

.form-control,
.form-select{
    background:#101016;
    color:white;
    border-color:#292930;
}

.form-control:focus,
.form-select:focus{
    background:#101016;
    color:white;
    border-color:var(--gold);
    box-shadow:none;
}

.form-label{
    color:#bbb;
    font-size:.75rem;
    font-weight:600;
}

.form-check-label{
    color:#bbb;
    font-size:.75rem;
}

.form-check-input{
    background-color:#101016;
    border-color:#444;
}

.form-check-input:checked{
    background-color:var(--green);
    border-color:var(--green);
}

.btn-aya{
    background:var(--gold);
    color:#000;
    font-weight:700;
    border:none;
}

.btn-aya:hover{
    background:var(--gold-soft);
    color:#000;
}

.page-loading{
    position:fixed;
    inset:0;
    background:#0b0b0f;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:14px;
    z-index:2000;
}

.page-loading img{
    width:64px;
    object-fit:contain;
}

.page-loading p{
    color:#666;
    font-size:.75rem;
    margin:0;
}

.alert-aya{
    position:fixed;
    top:90px;
    right:24px;
    z-index:2100;
    min-width:280px;
    max-width:420px;
    display:none;
}

.empty-state{
    text-align:center;
    padding:60px 20px;
    color:#666;
}

.empty-state i{
    font-size:2.4rem;
    color:#444;
    margin-bottom:12px;
}

.empty-state p{
    font-size:.75rem;
    margin:0;
}

.aviso-leitura{
    background:rgba(255,193,7,.1);
    border:1px solid rgba(255,193,7,.28);
    color:#ffd75e;
    border-radius:12px;
    padding:12px 16px;
    font-size:.75rem;
    margin-bottom:18px;
    display:none;
}

.modal-content{
    background:#101016;
    border:1px solid #292930;
    border-radius:16px;
    color:#eee;
}

.modal-header,
.modal-footer{
    border-color:#222;
}

.modal-title{
    font-size:.95rem;
    font-weight:700;
}

.btn-close-white{
    filter:invert(1);
}

.nucleo-imagem{
    width:100%;
    height:160px;
    object-fit:cover;
    border-radius:12px;
    margin-bottom:16px;
    border:1px solid var(--border);
}

.badge-soft{
    font-size:.62rem;
    padding:5px 8px;
    border-radius:8px;
}

::-webkit-scrollbar{
    width:6px;
}

::-webkit-scrollbar-track{
    background:#08080a;
}

::-webkit-scrollbar-thumb{
    background:#333;
    border-radius:10px;
}

::-webkit-scrollbar-thumb:hover{
    background:var(--gold);
}

@media(max-width:991px){.sidebar{transform:translateX(-100%);}.sidebar.show{transform:translateX(0);}.main-content{margin-left:0;}#menuButton{display:flex;}}

@media(min-width:992px){#menuButton{display:none;}}

@media(max-width:576px){

    .page{
        padding:18px;
    }

    .topbar{
        padding:0 15px;
    }

    .admin-info{
        display:none;
    }

    .btn-outline-aya{
        display:none;
    }

    .btn-aya{
        width:100%;
    }

}


/* =========================================================
   VISIBILIDADE POR DEGRAU (data-exige)
========================================================= */

[data-exige]{
    display:none !important;
}

[data-exige].liberado{
    display:flex !important;
}

        /* ===== IEPLUS_LIGHT_OVERRIDES : IÃŠ+ tema claro (estrutura/navegaÃ§Ã£o preta com texto claro) ===== */
        .topbar,.sidebar,.sidebar-header,.bottom-navigation,.bottom-nav,.side-nav,.nav-drawer,.app-nav{background:#111111 !important;}
        .topbar,.topbar *,.sidebar *,.bottom-navigation *,.bottom-navigation a,.bottom-navigation i,.bottom-navigation span{color:rgba(255,255,255,.85) !important;}
        .sidebar a.active,.sidebar .active,.bottom-navigation .active{color:#8FE6B4 !important;}
        .sidebar a.active,.bottom-navigation .active{background:rgba(22,128,74,.30) !important;}