/* Paginа: admin/documentos.html — CSS extraido automaticamente */
/* =====================================================
   BASE
===================================================== */

: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;
    --green-light:#2FA866;

    --red:#C93632;

    --text:#111111;
    --text-muted:#6f6a5f;

    --border:rgba(17,17,17,.10);

    --sidebar-width:270px;
}

*{
    box-sizing:border-box;
}

html,
body{
    min-height:100%;
}

body{
    margin:0;
    background:var(--bg-main);
    color:#eee;
    font-family:'Montserrat',sans-serif;
}


/* =====================================================
   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;}
.sidebar-menu a[data-exige]{display:none;}
.sidebar-menu a[data-exige].liberado{display:flex;}


/* =====================================================
   TOPBAR
===================================================== */

.topbar{
    min-height:75px;

    padding:12px 30px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:20px;

    background:#09090c;

    border-bottom:1px solid var(--border);
}

.page-title{
    display:flex;
    align-items:center;

    gap:12px;

    min-width:0;
}

.page-title h4{
    margin:0;

    font-weight:700;

    font-size:1.05rem;
}

.page-title small{
    display:block;

    margin-top:3px;

    color:#777;

    font-size:.7rem;
}


/* =====================================================
   PERFIL ADMIN
===================================================== */

.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;

    flex-shrink:0;
}

.admin-info{
    min-width:0;
}

.admin-info strong{
    display:block;

    max-width:180px;

    overflow:hidden;

    text-overflow:ellipsis;

    white-space:nowrap;
}

.admin-info small{
    display:block;

    color:#777;

    font-size:.65rem;
}


/* BOTÃO SITE */

.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);
}


/* =====================================================
   PÁGINA
===================================================== */

.page{
    padding:24px;

    max-width:1200px;

    margin:0 auto;
}


/* =====================================================
   CARDS
===================================================== */

.card-aya{
    background:var(--glass-bg);

    border:1px solid var(--border);

    border-radius:14px;

    padding:18px;
}


/* =====================================================
   UPLOAD
===================================================== */

.upload{
    border:2px dashed rgba(255,215,0,.25);

    border-radius:14px;

    padding:18px 16px;

    text-align:center;

    color:#777;

    cursor:pointer;

    transition:.3s;
}

.upload:hover,
.upload.arrastando{
    border-color:rgba(255,215,0,.65);

    background:rgba(255,215,0,.04);

    color:#aaa;
}

.upload i{
    font-size:1.8rem;

    color:#FFD700;
}

.upload input[type=file]{
    display:none;
}


/* =====================================================
   DOCUMENTOS
===================================================== */

.doc{
    display:flex;

    align-items:center;

    gap:12px;

    padding:12px 0;

    border-bottom:1px solid rgba(255,255,255,.08);
}

.doc:last-child{
    border-bottom:none;
}

.doc-icon{
    width:36px;
    height:36px;

    border-radius:8px;

    background:rgba(255,215,0,.1);

    color:#FFD700;

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:1rem;

    flex-shrink:0;
}

.doc-icon.sem-arquivo{
    background:rgba(255,107,107,.12);

    color:#ff6b6b;
}

.doc-acoes{
    display:flex;

    gap:4px;

    flex-shrink:0;
}

.badge-tipo{
    font-size:.58rem;

    letter-spacing:.3px;

    text-transform:uppercase;
}


/* =====================================================
   FORMULÁRIOS
===================================================== */

.form-control,
.form-select{
    background:#101016;

    color:white;

    border-color:#292930;

    font-size:.82rem;
}

.form-control:focus,
.form-select:focus{
    background:#101016;

    color:white;

    border-color:#FFD700;

    box-shadow:none;
}

.form-label{
    color:#bbb;

    font-size:.72rem;

    font-weight:600;
}


/* =====================================================
   BOTÃO AYA
===================================================== */

.btn-aya{
    background:#FFD700;

    color:#000;

    font-weight:700;

    border:none;

    font-size:.82rem;
}

.btn-aya:hover{
    background:#e6c200;

    color:#000;
}


/* =====================================================
   LOADING
===================================================== */

.page-loading{
    position:fixed;

    inset:0;

    background:#0b0b0f;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    gap:12px;

    z-index:2000;
}

.page-loading img{
    width:56px;

    object-fit:contain;
}

.page-loading p{
    color:#666;

    font-size:.72rem;

    margin:0;
}


/* =====================================================
   ALERTA
===================================================== */

.alert-aya{
    position:fixed;

    top:70px;

    right:20px;

    z-index:2100;

    min-width:260px;

    max-width:380px;

    display:none;

    font-size:.82rem;
}


/* =====================================================
   ESTADO VAZIO
===================================================== */

.empty-state{
    text-align:center;

    padding:40px 16px;

    color:#666;
}

.empty-state i{
    font-size:2rem;

    color:#444;

    margin-bottom:10px;
}

.empty-state p{
    font-size:.72rem;

    margin:0;
}


/* =====================================================
   AVISOS
===================================================== */

.aviso-leitura{
    background:rgba(255,193,7,.1);

    border:1px solid rgba(255,193,7,.28);

    color:#ffd75e;

    border-radius:10px;

    padding:10px 14px;

    font-size:.72rem;

    margin-bottom:14px;

    display:none;
}

.aviso-alerta{
    background:rgba(255,107,107,.1);

    border:1px solid rgba(255,107,107,.28);

    color:#ff9b9b;

    border-radius:10px;

    padding:10px 14px;

    font-size:.72rem;

    margin-bottom:14px;

    display:none;
}


/* =====================================================
   MODAL
===================================================== */

.modal-content{
    background:#101016;

    border:1px solid #292930;

    border-radius:14px;

    color:#eee;
}

.modal-header,
.modal-footer{
    border-color:#222;
}

.modal-title{
    font-size:.9rem;

    font-weight:700;
}

.btn-close-white{
    filter:invert(1);
}


/* =====================================================
   SCROLLBAR
===================================================== */

::-webkit-scrollbar{
    width:5px;
}

::-webkit-scrollbar-track{
    background:#08080a;
}

::-webkit-scrollbar-thumb{
    background:#333;

    border-radius:10px;
}

::-webkit-scrollbar-thumb:hover{
    background:#FFD700;
}


/* =====================================================
   RESPONSIVO
===================================================== */

@media(max-width:991px){

    .sidebar{
        transform:translateX(-100%);
    }

    .sidebar.show{
        transform:translateX(0);
    }

    .main-content{
        margin-left:0;
    }

    .sidebar-overlay.show{
        display:block;
    }

    .topbar{
        padding:12px 18px;
    }
}

@media(max-width:576px){

    .page{
        padding:16px;
    }

    .doc{
        flex-wrap:wrap;
    }

    .doc-acoes{
        width:100%;

        justify-content:flex-end;
    }

    .btn-aya{
        width:100%;
    }
}

@media(max-width:991px){.sidebar{transform:translateX(-100%);}.sidebar.show{transform:translateX(0);}.main-content,.main{margin-left:0;}#menuButton{display:flex;}}
@media(min-width:992px){#menuButton{display:none;}}
        /* ===== 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;}