/* ================================
   ADMIN UVT — ECOSSISTEMA ALTA PIATÃ
   ================================ */


/* ================================
   SECTION 1 — VARIÁVEIS
   ================================ */

:root {

    --fundo:
        #06101d;

    --fundo-profundo:
        #030914;

    --painel:
        rgba(8, 20, 35, 0.84);

    --painel-forte:
        rgba(7, 17, 30, 0.96);

    --painel-suave:
        rgba(255, 255, 255, 0.025);

    --texto:
        #f4f7fb;

    --texto-secundario:
        #9eacbb;

    --texto-suave:
        #728091;

    --dourado:
        #f4b942;

    --dourado-claro:
        #ffd36a;

    --azul:
        #2497ff;

    --ciano:
        #36d6d0;

    --verde:
        #4ed594;

    --vermelho:
        #ff6b6b;

    --borda:
        rgba(255, 255, 255, 0.08);

    --borda-forte:
        rgba(255, 255, 255, 0.13);

    --borda-dourada:
        rgba(244, 185, 66, 0.28);

    --sidebar:
        280px;

    --topo:
        84px;

    --raio:
        18px;

    --raio-grande:
        24px;

    --sombra:
        0 26px 80px rgba(0, 0, 0, 0.34);

}


/* ================================
   SECTION 2 — RESET
   ================================ */

* {

    box-sizing:
        border-box;

}


html {

    scroll-behavior:
        smooth;

}


body {

    margin:
        0;

    min-height:
        100vh;

    color:
        var(--texto);

    background:

        radial-gradient(
            circle at 85% 15%,
            rgba(36, 151, 255, 0.06),
            transparent 28%
        ),

        radial-gradient(
            circle at 30% 80%,
            rgba(244, 185, 66, 0.04),
            transparent 32%
        ),

        var(--fundo);

    font-family:
        Inter,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

}


body::before {

    content:
        "";

    position:
        fixed;

    inset:
        0;

    z-index:
        -1;

    pointer-events:
        none;

    background-image:

        linear-gradient(
            rgba(255, 255, 255, 0.018) 1px,
            transparent 1px
        ),

        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.018) 1px,
            transparent 1px
        );

    background-size:
        46px 46px;

}


body.modal-aberto {

    overflow:
        hidden;

}


button,
input,
select,
textarea {

    font:
        inherit;

}


button,
a {

    -webkit-tap-highlight-color:
        transparent;

}


img {

    max-width:
        100%;

}


/* ================================
   SECTION 3 — ESTRUTURA PRINCIPAL
   ================================ */

.admin-shell {

    min-height:
        100vh;

    display:
        grid;

    grid-template-columns:
        var(--sidebar) 1fr;

}


/* ================================
   SECTION 4 — SIDEBAR
   ================================ */

.admin-sidebar {

    position:
        fixed;

    top:
        0;

    left:
        0;

    bottom:
        0;

    width:
        var(--sidebar);

    display:
        flex;

    flex-direction:
        column;

    padding:
        22px 16px;

    border-right:
        1px solid
        var(--borda);

    background:
        rgba(4, 12, 23, 0.96);

    backdrop-filter:
        blur(18px);

    -webkit-backdrop-filter:
        blur(18px);

    z-index:
        300;

    overflow-y:
        auto;

}


/* ================================
   SECTION 4.1 — MARCA SIDEBAR
   ================================ */

.admin-sidebar__marca {

    display:
        flex;

    align-items:
        center;

    gap:
        13px;

    padding:
        4px 8px 22px;

    margin-bottom:
        10px;

    border-bottom:
        1px solid
        rgba(255, 255, 255, 0.06);

}


.admin-sidebar__logo {

    width:
        54px;

    height:
        54px;

    object-fit:
        contain;

    flex:
        0 0 auto;

}


.admin-sidebar__marca > div {

    display:
        grid;

    gap:
        2px;

}


.admin-sidebar__ecossistema {

    color:
        var(--dourado);

    font-size:
        0.58rem;

    font-weight:
        800;

    letter-spacing:
        0.14em;

    text-transform:
        uppercase;

}


.admin-sidebar__marca strong {

    font-size:
        1.2rem;

    letter-spacing:
        0.03em;

}


.admin-sidebar__marca small {

    color:
        var(--texto-secundario);

    font-size:
        0.72rem;

}


/* ================================
   SECTION 4.2 — NAVEGAÇÃO
   ================================ */

.admin-nav {

    display:
        flex;

    flex-direction:
        column;

    gap:
        6px;

}


.admin-nav__grupo {

    display:
        flex;

    flex-direction:
        column;

    gap:
        5px;

    margin-top:
        18px;

}


.admin-nav__titulo {

    margin:
        0 10px 5px;

    color:
        var(--texto-suave);

    font-size:
        0.66rem;

    font-weight:
        800;

    letter-spacing:
        0.14em;

    text-transform:
        uppercase;

}


.admin-nav__item {

    position:
        relative;

    width:
        100%;

    min-height:
        44px;

    display:
        grid;

    grid-template-columns:
        26px 1fr auto;

    align-items:
        center;

    gap:
        10px;

    padding:
        0 12px;

    border:
        1px solid transparent;

    border-radius:
        12px;

    color:
        #b9c5d1;

    background:
        transparent;

    text-align:
        left;

    text-decoration:
        none;

    font:
        inherit;

    font-size:
        0.87rem;

    font-weight:
        700;

    cursor:
        pointer;

    transition:
        background 0.18s ease,
        border-color 0.18s ease,
        color 0.18s ease,
        transform 0.18s ease;

}


.admin-nav__item:hover {

    color:
        #ffffff;

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-nav__item--ativo {

    color:
        #ffffff;

    border-color:
        rgba(244, 185, 66, 0.18);

    background:
        linear-gradient(
            90deg,
            rgba(244, 185, 66, 0.10),
            rgba(36, 151, 255, 0.04)
        );

}


.admin-nav__item--ativo::before {

    content:
        "";

    position:
        absolute;

    left:
        -1px;

    top:
        10px;

    bottom:
        10px;

    width:
        3px;

    border-radius:
        999px;

    background:
        var(--dourado);

}


.admin-nav__icone {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        24px;

    height:
        24px;

    color:
        var(--dourado);

    font-size:
        0.9rem;

}


.admin-nav__badge {

    min-width:
        24px;

    height:
        22px;

    padding:
        0 7px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    border-radius:
        999px;

    color:
        #07111d;

    background:
        var(--dourado);

    font-size:
        0.68rem;

    font-weight:
        900;

}


/* ================================
   SECTION 4.3 — RODAPÉ SIDEBAR
   ================================ */

.admin-sidebar__rodape {

    margin-top:
        auto;

    display:
        grid;

    gap:
        3px;

    padding:
        20px 8px 2px;

    border-top:
        1px solid
        rgba(255, 255, 255, 0.06);

    color:
        var(--texto-suave);

}


.admin-sidebar__rodape span {

    font-size:
        0.69rem;

    font-weight:
        700;

}


.admin-sidebar__rodape small {

    font-size:
        0.65rem;

}


/* ================================
   SECTION 5 — ÁREA PRINCIPAL
   ================================ */

.admin-main {

    grid-column:
        2;

    min-width:
        0;

}


/* ================================
   SECTION 6 — TOPO
   ================================ */

.admin-topo {

    position:
        sticky;

    top:
        0;

    z-index:
        200;

    min-height:
        var(--topo);

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        24px;

    padding:
        14px 30px;

    border-bottom:
        1px solid
        var(--borda);

    background:
        rgba(6, 16, 29, 0.82);

    backdrop-filter:
        blur(18px);

    -webkit-backdrop-filter:
        blur(18px);

}


/* ================================
   SECTION 6.1 — TOPO ESQUERDA
   ================================ */

.admin-topo__esquerda {

    display:
        flex;

    align-items:
        center;

    gap:
        14px;

}


.admin-topo__menu {

    display:
        none;

    width:
        42px;

    height:
        42px;

    align-items:
        center;

    justify-content:
        center;

    border:
        1px solid
        var(--borda);

    border-radius:
        11px;

    color:
        #ffffff;

    background:
        rgba(255, 255, 255, 0.035);

    cursor:
        pointer;

}


.admin-topo__contexto {

    margin:
        0 0 3px;

    color:
        var(--texto-secundario);

    font-size:
        0.68rem;

    letter-spacing:
        0.12em;

    text-transform:
        uppercase;

}


.admin-topo h1 {

    margin:
        0;

    font-size:
        clamp(
            1.35rem,
            2.4vw,
            2rem
        );

    letter-spacing:
        -0.025em;

}


/* ================================
   SECTION 6.2 — TOPO DIREITA
   ================================ */

.admin-topo__direita {

    display:
        flex;

    align-items:
        center;

    gap:
        18px;

}


.admin-topo__status {

    display:
        inline-flex;

    align-items:
        center;

    gap:
        8px;

    color:
        var(--texto-secundario);

    font-size:
        0.76rem;

}


.admin-topo__status span {

    width:
        8px;

    height:
        8px;

    border-radius:
        50%;

    background:
        var(--verde);

    box-shadow:
        0 0 14px
        rgba(78, 213, 148, 0.55);

}


/* ================================
   SECTION 6.3 — PERFIL ADMIN
   ================================ */

.admin-perfil {

    display:
        flex;

    align-items:
        center;

    gap:
        10px;

}


.admin-perfil__texto {

    display:
        grid;

    gap:
        1px;

    text-align:
        right;

}


.admin-perfil__texto strong {

    font-size:
        0.82rem;

}


.admin-perfil__texto span {

    color:
        var(--texto-secundario);

    font-size:
        0.68rem;

}


.admin-perfil__avatar {

    width:
        40px;

    height:
        40px;

    border:
        1px solid
        rgba(244, 185, 66, 0.34);

    border-radius:
        50%;

    object-fit:
        cover;

}


.admin-topo__sair {

    min-height:
        38px;

    padding:
        0 14px;

    border:
        1px solid
        var(--borda-forte);

    border-radius:
        10px;

    color:
        #d9e1e9;

    background:
        rgba(255, 255, 255, 0.025);

    font:
        inherit;

    font-size:
        0.78rem;

    font-weight:
        800;

    cursor:
        pointer;

}


/* ================================
   SECTION 7 — CONTEÚDO
   ================================ */

.admin-conteudo {

    width:
        min(100% - 54px, 1500px);

    margin:
        0 auto;

    padding:
        34px 0 70px;

}


/* ================================
   SECTION 8 — CARREGAMENTO
   ================================ */

.admin-carregando {

    min-height:
        60vh;

    display:
        flex;

    flex-direction:
        column;

    align-items:
        center;

    justify-content:
        center;

    gap:
        16px;

    color:
        var(--texto-secundario);

}


.admin-carregando__icone {

    width:
        72px;

    height:
        72px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    border:
        1px solid
        rgba(244, 185, 66, 0.30);

    border-radius:
        22px;

    color:
        var(--dourado);

    background:
        rgba(244, 185, 66, 0.05);

    font-weight:
        900;

    letter-spacing:
        0.06em;

}


/* ================================
   SECTION 9 — COMPONENTES GERAIS
   ================================ */

.admin-secao {

    display:
        grid;

    gap:
        22px;

}


.admin-cabecalho {

    display:
        flex;

    align-items:
        flex-end;

    justify-content:
        space-between;

    gap:
        24px;

}


.admin-cabecalho__texto {

    max-width:
        760px;

}


.admin-cabecalho__etiqueta {

    margin:
        0 0 7px;

    color:
        var(--dourado);

    font-size:
        0.68rem;

    font-weight:
        800;

    letter-spacing:
        0.15em;

    text-transform:
        uppercase;

}


.admin-cabecalho h2 {

    margin:
        0;

    font-size:
        clamp(
            1.7rem,
            3vw,
            2.6rem
        );

    letter-spacing:
        -0.035em;

}


.admin-cabecalho p {

    margin:
        10px 0 0;

    color:
        var(--texto-secundario);

    line-height:
        1.6;

}


/* ================================
   SECTION 10 — BOTÕES
   ================================ */

.admin-botao {

    min-height:
        44px;

    padding:
        0 16px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        8px;

    border:
        1px solid transparent;

    border-radius:
        11px;

    font:
        inherit;

    font-size:
        0.82rem;

    font-weight:
        800;

    text-decoration:
        none;

    cursor:
        pointer;

    transition:
        transform 0.18s ease,
        border-color 0.18s ease,
        background 0.18s ease;

}


.admin-botao:hover {

    transform:
        translateY(-1px);

}


.admin-botao--principal {

    color:
        #07111d;

    background:
        linear-gradient(
            135deg,
            var(--dourado-claro),
            var(--dourado)
        );

}


.admin-botao--secundario {

    color:
        #ffffff;

    border-color:
        var(--borda-forte);

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-botao--perigo {

    color:
        #ffd6d6;

    border-color:
        rgba(255, 107, 107, 0.28);

    background:
        rgba(255, 107, 107, 0.06);

}


/* ================================
   SECTION 11 — CARDS DE MÉTRICA
   ================================ */

.admin-metricas {

    display:
        grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        14px;

}


.admin-metrica {

    position:
        relative;

    min-height:
        142px;

    padding:
        20px;

    border:
        1px solid
        var(--borda);

    border-radius:
        var(--raio);

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.03),
            rgba(255, 255, 255, 0.012)
        );

    overflow:
        hidden;

}


.admin-metrica::after {

    content:
        "";

    position:
        absolute;

    width:
        120px;

    height:
        120px;

    right:
        -60px;

    top:
        -60px;

    border-radius:
        50%;

    background:
        radial-gradient(
            circle,
            rgba(36, 151, 255, 0.10),
            transparent 70%
        );

}


.admin-metrica__rotulo {

    position:
        relative;

    z-index:
        1;

    color:
        var(--texto-secundario);

    font-size:
        0.75rem;

    font-weight:
        700;

}


.admin-metrica__valor {

    position:
        relative;

    z-index:
        1;

    display:
        block;

    margin-top:
        12px;

    font-size:
        2.2rem;

    font-weight:
        850;

    letter-spacing:
        -0.04em;

}


.admin-metrica__apoio {

    position:
        relative;

    z-index:
        1;

    display:
        block;

    margin-top:
        5px;

    color:
        var(--texto-suave);

    font-size:
        0.71rem;

}


/* ================================
   SECTION 12 — PAINÉIS
   ================================ */

.admin-painel {

    padding:
        22px;

    border:
        1px solid
        var(--borda);

    border-radius:
        var(--raio);

    background:
        var(--painel);

    box-shadow:
        0 16px 50px
        rgba(0, 0, 0, 0.18);

    backdrop-filter:
        blur(14px);

    -webkit-backdrop-filter:
        blur(14px);

}


.admin-painel__topo {

    display:
        flex;

    justify-content:
        space-between;

    align-items:
        center;

    gap:
        18px;

    margin-bottom:
        18px;

}


.admin-painel__topo h3 {

    margin:
        0;

    font-size:
        1.05rem;

}


.admin-painel__topo p {

    margin:
        4px 0 0;

    color:
        var(--texto-secundario);

    font-size:
        0.78rem;

}


/* ================================
   SECTION 13 — GRADE DUPLA
   ================================ */

.admin-grid {

    display:
        grid;

    gap:
        14px;

}


.admin-grid--2 {

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

}


.admin-grid--3 {

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

}


/* ================================
   SECTION 14 — LISTAS
   ================================ */

.admin-lista {

    display:
        grid;

    gap:
        9px;

}


.admin-lista__item {

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        18px;

    padding:
        14px 15px;

    border:
        1px solid
        rgba(255, 255, 255, 0.07);

    border-radius:
        12px;

    background:
        rgba(255, 255, 255, 0.018);

}


.admin-lista__item:hover {

    border-color:
        rgba(244, 185, 66, 0.18);

    background:
        rgba(244, 185, 66, 0.025);

}


.admin-lista__principal {

    min-width:
        0;

}


.admin-lista__principal strong {

    display:
        block;

    overflow:
        hidden;

    text-overflow:
        ellipsis;

    white-space:
        nowrap;

    font-size:
        0.87rem;

}


.admin-lista__principal span {

    display:
        block;

    margin-top:
        4px;

    color:
        var(--texto-secundario);

    font-size:
        0.74rem;

}


/* ================================
   SECTION 15 — TABELAS
   ================================ */

.admin-tabela-wrap {

    overflow-x:
        auto;

    border:
        1px solid
        var(--borda);

    border-radius:
        14px;

}


.admin-tabela {

    width:
        100%;

    border-collapse:
        collapse;

    min-width:
        760px;

}


.admin-tabela th {

    padding:
        13px 15px;

    border-bottom:
        1px solid
        var(--borda);

    color:
        var(--texto-suave);

    background:
        rgba(255, 255, 255, 0.02);

    text-align:
        left;

    font-size:
        0.68rem;

    font-weight:
        800;

    letter-spacing:
        0.08em;

    text-transform:
        uppercase;

}


.admin-tabela td {

    padding:
        14px 15px;

    border-bottom:
        1px solid
        rgba(255, 255, 255, 0.05);

    color:
        #d7e0e8;

    font-size:
        0.8rem;

}


.admin-tabela tr:last-child td {

    border-bottom:
        0;

}


.admin-tabela tbody tr {

    cursor:
        pointer;

    transition:
        background 0.16s ease;

}


.admin-tabela tbody tr:hover {

    background:
        rgba(255, 255, 255, 0.025);

}


/* ================================
   SECTION 16 — STATUS
   ================================ */

.admin-status {

    display:
        inline-flex;

    align-items:
        center;

    min-height:
        26px;

    padding:
        0 9px;

    border:
        1px solid
        var(--borda);

    border-radius:
        999px;

    font-size:
        0.68rem;

    font-weight:
        800;

}


.admin-status--aprovado,
.admin-status--ativo,
.admin-status--concluido {

    color:
        #bdf4d5;

    border-color:
        rgba(78, 213, 148, 0.24);

    background:
        rgba(78, 213, 148, 0.07);

}


.admin-status--pendente,
.admin-status--analise {

    color:
        #ffe0a1;

    border-color:
        rgba(244, 185, 66, 0.24);

    background:
        rgba(244, 185, 66, 0.07);

}


.admin-status--bloqueado,
.admin-status--recusado {

    color:
        #ffc3c3;

    border-color:
        rgba(255, 107, 107, 0.25);

    background:
        rgba(255, 107, 107, 0.07);

}


/* ================================
   SECTION 17 — FORMULÁRIOS
   ================================ */

.admin-campo {

    display:
        grid;

    gap:
        7px;

    margin-bottom:
        16px;

}


.admin-campo label {

    color:
        #d7e0e8;

    font-size:
        0.8rem;

    font-weight:
        700;

}


.admin-campo input,
.admin-campo select,
.admin-campo textarea {

    width:
        100%;

    min-height:
        44px;

    padding:
        0 12px;

    border:
        1px solid
        var(--borda-forte);

    border-radius:
        10px;

    outline:
        none;

    color:
        #ffffff;

    background:
        rgba(255, 255, 255, 0.03);

}


.admin-campo textarea {

    min-height:
        120px;

    padding:
        12px;

    resize:
        vertical;

}


.admin-campo input:focus,
.admin-campo select:focus,
.admin-campo textarea:focus {

    border-color:
        rgba(244, 185, 66, 0.52);

    box-shadow:
        0 0 0 4px
        rgba(244, 185, 66, 0.06);

}


.admin-campo select option {

    color:
        #111820;

}


/* ================================
   SECTION 18 — ESTADO VAZIO
   ================================ */

.admin-vazio {

    padding:
        34px 20px;

    border:
        1px dashed
        rgba(255, 255, 255, 0.09);

    border-radius:
        14px;

    color:
        var(--texto-secundario);

    text-align:
        center;

}


.admin-vazio strong {

    display:
        block;

    color:
        #dfe6ed;

    margin-bottom:
        5px;

}


/* ================================
   SECTION 19 — MODAL
   ================================ */

.admin-modal {

    position:
        fixed;

    inset:
        0;

    z-index:
        1000;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    padding:
        20px;

}


.admin-modal__fundo {

    position:
        absolute;

    inset:
        0;

    background:
        rgba(1, 7, 14, 0.84);

    backdrop-filter:
        blur(10px);

    -webkit-backdrop-filter:
        blur(10px);

}


.admin-modal__conteudo {

    position:
        relative;

    z-index:
        1;

    width:
        min(100%, 760px);

    max-height:
        88vh;

    overflow-y:
        auto;

    padding:
        26px;

    border:
        1px solid
        var(--borda-dourada);

    border-radius:
        var(--raio-grande);

    background:
        var(--painel-forte);

    box-shadow:
        var(--sombra);

}


.admin-modal__cabecalho {

    display:
        flex;

    align-items:
        flex-start;

    justify-content:
        space-between;

    gap:
        20px;

    margin-bottom:
        22px;

}


.admin-modal__etiqueta {

    margin:
        0 0 6px;

    color:
        var(--dourado);

    font-size:
        0.66rem;

    font-weight:
        800;

    letter-spacing:
        0.14em;

    text-transform:
        uppercase;

}


.admin-modal__cabecalho h2 {

    margin:
        0;

    font-size:
        1.7rem;

}


.admin-modal__fechar {

    width:
        40px;

    height:
        40px;

    flex:
        0 0 auto;

    border:
        1px solid
        var(--borda);

    border-radius:
        50%;

    color:
        #ffffff;

    background:
        rgba(255, 255, 255, 0.035);

    font-size:
        1.4rem;

    cursor:
        pointer;

}


/* ================================
   SECTION 20 — TOAST
   ================================ */

.admin-toast {

    position:
        fixed;

    right:
        24px;

    bottom:
        24px;

    z-index:
        1200;

    max-width:
        min(420px, calc(100% - 48px));

    padding:
        13px 16px;

    border:
        1px solid
        rgba(36, 151, 255, 0.28);

    border-radius:
        12px;

    color:
        #e8f2fb;

    background:
        rgba(8, 22, 38, 0.97);

    box-shadow:
        0 18px 50px
        rgba(0, 0, 0, 0.32);

}


.admin-toast[data-tipo="sucesso"] {

    border-color:
        rgba(78, 213, 148, 0.32);

}


.admin-toast[data-tipo="erro"] {

    border-color:
        rgba(255, 107, 107, 0.32);

}


/* ================================
   SECTION 21 — OVERLAY MOBILE
   ================================ */

.admin-overlay {

    position:
        fixed;

    inset:
        0;

    z-index:
        250;

    background:
        rgba(1, 7, 14, 0.68);

    backdrop-filter:
        blur(4px);

}


/* ================================
   SECTION 22 — UTILITÁRIOS
   ================================ */

[hidden] {

    display:
        none !important;

}


/* ================================
   SECTION 23 — DESKTOP INTERMEDIÁRIO
   ================================ */

@media (
    max-width: 1180px
) {

    .admin-metricas {

        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

    }


    .admin-grid--3 {

        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

    }

}


/* ================================
   SECTION 24 — TABLET / MOBILE
   ================================ */

@media (
    max-width: 900px
) {

    :root {

        --sidebar:
            280px;

    }


    .admin-shell {

        display:
            block;

    }


    .admin-sidebar {

        transform:
            translateX(-100%);

        transition:
            transform 0.24s ease;

        box-shadow:
            30px 0 70px
            rgba(0, 0, 0, 0.35);

    }


    .admin-sidebar.admin-sidebar--aberta {

        transform:
            translateX(0);

    }


    .admin-main {

        min-width:
            0;

    }


    .admin-topo__menu {

        display:
            inline-flex;

    }


    .admin-topo {

        padding:
            12px 18px;

    }


    .admin-conteudo {

        width:
            min(100% - 28px, 1500px);

        padding-top:
            24px;

    }


    .admin-topo__status {

        display:
            none;

    }


    .admin-grid--2,
    .admin-grid--3 {

        grid-template-columns:
            1fr;

    }

}


/* ================================
   SECTION 25 — MOBILE
   ================================ */

@media (
    max-width: 640px
) {

    .admin-topo {

        min-height:
            70px;

    }


    .admin-topo__contexto {

        display:
            none;

    }


    .admin-topo h1 {

        font-size:
            1.25rem;

    }


    .admin-perfil__texto {

        display:
            none;

    }


    .admin-perfil__avatar {

        width:
            36px;

        height:
            36px;

    }


    .admin-topo__direita {

        gap:
            9px;

    }


    .admin-topo__sair {

        min-height:
            36px;

        padding:
            0 11px;

    }


    .admin-conteudo {

        width:
            min(100% - 20px, 1500px);

    }


    .admin-cabecalho {

        align-items:
            flex-start;

        flex-direction:
            column;

    }


    .admin-metricas {

        grid-template-columns:
            1fr;

    }


    .admin-painel {

        padding:
            18px;

    }


    .admin-painel__topo {

        align-items:
            flex-start;

        flex-direction:
            column;

    }


    .admin-modal {

        padding:
            8px;

    }


    .admin-modal__conteudo {

        padding:
            20px;

        border-radius:
            18px;

    }


    .admin-lista__item {

        align-items:
            flex-start;

        flex-direction:
            column;

    }

}


/* ================================
   SECTION 27 — USUÁRIOS
   ================================ */

.admin-usuarios__filtros {

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        10px;

}


.admin-usuarios__filtros input,
.admin-usuarios__filtros select {

    min-height:
        42px;

    padding:
        0 12px;

    border:
        1px solid
        var(--borda-forte);

    border-radius:
        10px;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.045);

}


.admin-usuarios__filtros input {

    width:
        min(100%, 280px);

}


.admin-usuarios__filtros input:focus,
.admin-usuarios__filtros select:focus {

    outline:
        none;

    border-color:
        var(--dourado);

    box-shadow:
        0 0 0 3px
        rgba(244, 185, 66, 0.10);

}


.admin-tabela td strong,
.admin-tabela td small {

    display:
        block;

}


.admin-tabela td small {

    margin-top:
        4px;

    color:
        var(--texto-secundario);

    font-size:
        0.78rem;

}

/* ================================
   SECTION 27 — USUÁRIOS
   ================================ */

.admin-usuarios__filtros {

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

}


.admin-usuarios__filtros input,
.admin-usuarios__filtros select {

    min-height:
        40px;

    padding:
        0 11px;

    border:
        1px solid
        var(--borda);

    border-radius:
        10px;

    outline:
        none;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-usuarios__filtros input {

    width:
        min(300px, 34vw);

}


.admin-usuarios__filtros select option {

    color:
        #111820;

}


.admin-tabela td strong {

    display:
        block;

}


.admin-tabela td small {

    display:
        block;

    margin-top:
        4px;

    color:
        var(--texto-secundario);

}


.admin-usuario-modal {

    display:
        grid;

    gap:
        24px;

}


.admin-usuario-modal__resumo {

    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap:
        10px;

}


.admin-usuario-modal__resumo > div {

    padding:
        15px;

    border:
        1px solid
        var(--borda);

    border-radius:
        12px;

    background:
        rgba(255, 255, 255, 0.025);

}


.admin-usuario-modal__resumo span,
.admin-usuario-modal__dados span {

    display:
        block;

    margin-bottom:
        5px;

    color:
        var(--texto-secundario);

    font-size:
        0.7rem;

}


.admin-usuario-modal__resumo strong {

    font-size:
        0.92rem;

}


.admin-usuario-modal__secao {

    padding-top:
        19px;

    border-top:
        1px solid
        var(--borda);

}


.admin-usuario-modal__secao h3 {

    margin:
        0 0 14px;

    font-size:
        0.95rem;

}


.admin-usuario-modal__secao p {

    margin:
        0;

    color:
        var(--texto-secundario);

    font-size:
        0.8rem;

    line-height:
        1.6;

}


.admin-usuario-modal__dados {

    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap:
        16px;

}


.admin-usuario-modal__dados strong {

    display:
        block;

    overflow-wrap:
        anywhere;

    font-size:
        0.82rem;

}


.admin-usuario-modal__acoes {

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        9px;

}


@media (
    max-width: 700px
) {

    .admin-usuarios__filtros {

        width:
            100%;

        flex-direction:
            column;

        align-items:
            stretch;

    }


    .admin-usuarios__filtros input {

        width:
            100%;

    }


    .admin-usuario-modal__resumo,
    .admin-usuario-modal__dados {

        grid-template-columns:
            1fr;

    }

}

/* ================================
   SECTION 28 — MODERAÇÃO
   ================================ */

.admin-moderacao__filtro {

    min-height:
        40px;

    padding:
        0 11px;

    border:
        1px solid
        var(--borda);

    border-radius:
        10px;

    outline:
        none;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-moderacao__filtro option {

    color:
        #111820;

}


.admin-moderacao-modal {

    display:
        grid;

    gap:
        22px;

}


.admin-moderacao__acoes {

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        9px;

    padding-top:
        20px;

    border-top:
        1px solid
        var(--borda);

}

/* ================================
   SECTION 29 — PARTICIPAÇÕES
   ================================ */

.admin-participacoes__filtros {

    display:
        flex;

    align-items:
        center;

    flex-wrap:
        wrap;

    gap:
        9px;

}


.admin-participacoes__filtros input,
.admin-participacoes__filtros select {

    min-height:
        40px;

    padding:
        0 11px;

    border:
        1px solid
        var(--borda);

    border-radius:
        10px;

    outline:
        none;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-participacoes__filtros input {

    width:
        min(300px, 32vw);

}


.admin-participacoes__filtros select option {

    color:
        #111820;

}


/* ================================
   SECTION 29.1 — MODAL
   ================================ */

.admin-participacao-modal {

    display:
        grid;

    gap:
        22px;

}


.admin-participacao__resumo {

    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap:
        10px;

}


.admin-participacao__resumo > div {

    padding:
        15px;

    border:
        1px solid
        var(--borda);

    border-radius:
        12px;

    background:
        rgba(255, 255, 255, 0.025);

}


.admin-participacao__resumo span {

    display:
        block;

    margin-bottom:
        5px;

    color:
        var(--texto-secundario);

    font-size:
        0.7rem;

}


.admin-participacao__resumo strong {

    display:
        block;

    font-size:
        0.9rem;

}


/* ================================
   SECTION 29.2 — CHECKBOX
   ================================ */

.admin-participacao__checkbox {

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

    margin:
        4px 0 18px;

    color:
        var(--texto);

    font-size:
        0.8rem;

    cursor:
        pointer;

}


.admin-participacao__checkbox input {

    width:
        18px;

    height:
        18px;

    accent-color:
        var(--dourado);

}


/* ================================
   SECTION 29.3 — AÇÕES
   ================================ */

.admin-participacao__acoes {

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        9px;

    padding-top:
        20px;

    border-top:
        1px solid
        var(--borda);

}


/* ================================
   SECTION 29.4 — RESPONSIVO
   ================================ */

@media (
    max-width: 760px
) {

    .admin-participacoes__filtros {

        width:
            100%;

        flex-direction:
            column;

        align-items:
            stretch;

    }


    .admin-participacoes__filtros input {

        width:
            100%;

    }


    .admin-participacao__resumo {

        grid-template-columns:
            1fr;

    }

}

/* ================================
   SECTION 30 — ATIVIDADES
   ================================ */

.admin-atividades__filtros {

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

}


.admin-atividades__filtros input,
.admin-atividades__filtros select {

    min-height:
        40px;

    padding:
        0 11px;

    border:
        1px solid
        var(--borda);

    border-radius:
        10px;

    outline:
        none;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-atividades__filtros input {

    width:
        min(
            300px,
            30vw
        );

}


.admin-atividades__filtros select option {

    color:
        #111820;

}


/* ================================
   SECTION 30.1 — FORMULÁRIO
   ================================ */

.admin-atividade-form {

    display:
        grid;

    gap:
        4px;

}


.admin-atividade-form__grid {

    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap:
        14px;

}


.admin-atividade-form__acoes {

    display:
        flex;

    justify-content:
        flex-end;

    gap:
        9px;

    padding-top:
        14px;

}


/* ================================
   SECTION 30.2 — MODAL
   ================================ */

.admin-atividade-modal {

    display:
        grid;

    gap:
        22px;

}


.admin-atividade__resumo {

    display:
        grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        9px;

}


.admin-atividade__resumo > div {

    padding:
        14px;

    border:
        1px solid
        var(--borda);

    border-radius:
        12px;

    background:
        rgba(255, 255, 255, 0.025);

}


.admin-atividade__resumo span {

    display:
        block;

    margin-bottom:
        5px;

    color:
        var(--texto-secundario);

    font-size:
        0.68rem;

}


.admin-atividade__resumo strong {

    display:
        block;

    font-size:
        0.84rem;

}


/* ================================
   SECTION 30.3 — PARTICIPANTES
   ================================ */

.admin-atividade__participantes-topo {

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        20px;

}


.admin-atividade__participantes-topo h3 {

    margin:
        0 0 5px;

}


.admin-atividade__participantes-topo p {

    margin:
        0;

    color:
        var(--texto-secundario);

    font-size:
        0.77rem;

}


/* ================================
   SECTION 30.4 — RESPONSIVO
   ================================ */

@media (
    max-width: 760px
) {

    .admin-atividades__filtros {

        width:
            100%;

        flex-direction:
            column;

        align-items:
            stretch;

    }


    .admin-atividades__filtros input {

        width:
            100%;

    }


    .admin-atividade-form__grid {

        grid-template-columns:
            1fr;

    }


    .admin-atividade__resumo {

        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

    }


    .admin-atividade__participantes-topo {

        align-items:
            flex-start;

        flex-direction:
            column;

    }

}


@media (
    max-width: 480px
) {

    .admin-atividade__resumo {

        grid-template-columns:
            1fr;

    }

}

/* ================================
   SECTION 31 — AVISOS
   ================================ */

.admin-avisos__filtros {

    display:
        flex;

    align-items:
        center;

    flex-wrap:
        wrap;

    gap:
        9px;

}


.admin-avisos__filtros input,
.admin-avisos__filtros select {

    min-height:
        40px;

    padding:
        0 11px;

    border:
        1px solid
        var(--borda);

    border-radius:
        10px;

    outline:
        none;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-avisos__filtros input {

    width:
        min(
            280px,
            28vw
        );

}


.admin-avisos__filtros select option {

    color:
        #111820;

}


/* ================================
   SECTION 31.1 — FORMULÁRIO
   ================================ */

.admin-aviso-form {

    display:
        grid;

    gap:
        4px;

}


.admin-aviso-form__opcoes {

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        18px;

    margin:
        2px 0 18px;

}


.admin-aviso__checkbox {

    display:
        inline-flex;

    align-items:
        center;

    gap:
        9px;

    color:
        var(--texto);

    font-size:
        0.8rem;

    cursor:
        pointer;

}


.admin-aviso__checkbox input {

    width:
        18px;

    height:
        18px;

    accent-color:
        var(--dourado);

}


.admin-aviso-form__acoes {

    display:
        flex;

    justify-content:
        flex-end;

    padding-top:
        12px;

}


/* ================================
   SECTION 31.2 — MODAL
   ================================ */

.admin-aviso-modal {

    display:
        grid;

    gap:
        22px;

}


.admin-aviso__resumo {

    display:
        grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        9px;

}


.admin-aviso__resumo > div {

    padding:
        14px;

    border:
        1px solid
        var(--borda);

    border-radius:
        12px;

    background:
        rgba(255, 255, 255, 0.025);

}


.admin-aviso__resumo span {

    display:
        block;

    margin-bottom:
        5px;

    color:
        var(--texto-secundario);

    font-size:
        0.68rem;

}


.admin-aviso__resumo strong {

    display:
        block;

    font-size:
        0.82rem;

}


/* ================================
   SECTION 31.3 — RESPONSIVO
   ================================ */

@media (
    max-width: 760px
) {

    .admin-avisos__filtros {

        width:
            100%;

        flex-direction:
            column;

        align-items:
            stretch;

    }


    .admin-avisos__filtros input {

        width:
            100%;

    }


    .admin-aviso__resumo {

        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

    }

}


@media (
    max-width: 480px
) {

    .admin-aviso__resumo {

        grid-template-columns:
            1fr;

    }

}

/* ================================
   SECTION 32 — EVENTOS
   ================================ */

.admin-eventos__filtros {

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

}


.admin-eventos__filtros input,
.admin-eventos__filtros select {

    min-height:
        40px;

    padding:
        0 11px;

    border:
        1px solid
        var(--borda);

    border-radius:
        10px;

    outline:
        none;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-eventos__filtros input {

    width:
        min(
            300px,
            30vw
        );

}


.admin-eventos__filtros select option {

    color:
        #111820;

}


/* ================================
   SECTION 32.1 — FORMULÁRIO
   ================================ */

.admin-evento-form {

    display:
        grid;

    gap:
        4px;

}


.admin-evento-form__grid {

    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap:
        14px;

}


.admin-evento-form__acoes {

    display:
        flex;

    justify-content:
        flex-end;

    padding-top:
        14px;

}


/* ================================
   SECTION 32.2 — CHECKBOX
   ================================ */

.admin-evento__checkbox {

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

    margin:
        4px 0 18px;

    color:
        var(--texto);

    font-size:
        0.8rem;

    cursor:
        pointer;

}


.admin-evento__checkbox input {

    width:
        18px;

    height:
        18px;

    accent-color:
        var(--dourado);

}


/* ================================
   SECTION 32.3 — MODAL
   ================================ */

.admin-evento-modal {

    display:
        grid;

    gap:
        22px;

}


.admin-evento__resumo {

    display:
        grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        9px;

}


.admin-evento__resumo > div {

    padding:
        14px;

    border:
        1px solid
        var(--borda);

    border-radius:
        12px;

    background:
        rgba(255, 255, 255, 0.025);

}


.admin-evento__resumo span {

    display:
        block;

    margin-bottom:
        5px;

    color:
        var(--texto-secundario);

    font-size:
        0.68rem;

}


.admin-evento__resumo strong {

    display:
        block;

    font-size:
        0.82rem;

}


/* ================================
   SECTION 32.4 — PARTICIPAÇÕES
   ================================ */

.admin-evento__participacoes-topo {

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        18px;

}


.admin-evento__participacoes-topo h3 {

    margin:
        0 0 5px;

}


.admin-evento__participacoes-topo p {

    margin:
        0;

    color:
        var(--texto-secundario);

    font-size:
        0.77rem;

}


/* ================================
   SECTION 32.5 — RESPONSIVO
   ================================ */

@media (
    max-width: 760px
) {

    .admin-eventos__filtros {

        width:
            100%;

        flex-direction:
            column;

        align-items:
            stretch;

    }


    .admin-eventos__filtros input {

        width:
            100%;

    }


    .admin-evento-form__grid {

        grid-template-columns:
            1fr;

    }


    .admin-evento__resumo {

        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

    }


    .admin-evento__participacoes-topo {

        align-items:
            flex-start;

        flex-direction:
            column;

    }

}


@media (
    max-width: 480px
) {

    .admin-evento__resumo {

        grid-template-columns:
            1fr;

    }

}

/* ================================
   SECTION 33 — MENSAGENS
   ================================ */

.admin-mensagens__filtros {

    display:
        flex;

    gap:
        9px;

}


.admin-mensagens__filtros input,
.admin-mensagens__filtros select {

    min-height:
        40px;

    padding:
        0 11px;

    border:
        1px solid
        var(--borda);

    border-radius:
        10px;

    outline:
        none;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-mensagens__filtros input {

    width:
        min(280px, 30vw);

}


.admin-mensagens__filtros select option {

    color:
        #111820;

}


/* ================================
   SECTION 33.1 — LISTA
   ================================ */

.admin-mensagens__lista {

    display:
        grid;

    gap:
        8px;

}


.admin-mensagens__item {

    width:
        100%;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        20px;

    padding:
        15px;

    border:
        1px solid
        var(--borda);

    border-radius:
        13px;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.018);

    text-align:
        left;

    cursor:
        pointer;

}


.admin-mensagens__item:hover {

    border-color:
        rgba(244, 185, 66, 0.20);

    background:
        rgba(244, 185, 66, 0.025);

}


.admin-mensagens__usuario {

    min-width:
        0;

}


.admin-mensagens__usuario strong,
.admin-mensagens__usuario span,
.admin-mensagens__usuario small {

    display:
        block;

}


.admin-mensagens__usuario span {

    margin-top:
        4px;

    font-size:
        0.8rem;

}


.admin-mensagens__usuario small {

    max-width:
        560px;

    margin-top:
        5px;

    overflow:
        hidden;

    color:
        var(--texto-secundario);

    text-overflow:
        ellipsis;

    white-space:
        nowrap;

}


.admin-mensagens__meta {

    flex:
        0 0 auto;

    display:
        grid;

    justify-items:
        end;

    gap:
        7px;

}


.admin-mensagens__meta small {

    color:
        var(--texto-secundario);

    font-size:
        0.68rem;

}


/* ================================
   SECTION 33.2 — CONVERSA
   ================================ */

.admin-conversa {

    display:
        grid;

    gap:
        20px;

}


.admin-conversa__cabecalho {

    display:
        flex;

    justify-content:
        space-between;

    gap:
        20px;

}


.admin-conversa__cabecalho > div span,
.admin-conversa__cabecalho > div strong,
.admin-conversa__cabecalho > div small {

    display:
        block;

}


.admin-conversa__cabecalho > div span {

    color:
        var(--dourado);

    font-size:
        0.67rem;

    font-weight:
        800;

    text-transform:
        uppercase;

}


.admin-conversa__cabecalho > div strong {

    margin-top:
        5px;

}


.admin-conversa__cabecalho > div small {

    margin-top:
        4px;

    color:
        var(--texto-secundario);

}


/* ================================
   SECTION 33.3 — HISTÓRICO
   ================================ */

.admin-conversa__historico {

    max-height:
        420px;

    display:
        flex;

    flex-direction:
        column;

    gap:
        10px;

    padding:
        15px;

    overflow-y:
        auto;

    border:
        1px solid
        var(--borda);

    border-radius:
        14px;

    background:
        rgba(0, 0, 0, 0.12);

}


.admin-conversa__mensagem {

    max-width:
        78%;

    padding:
        11px 13px;

    border:
        1px solid
        var(--borda);

    border-radius:
        13px;

}


.admin-conversa__mensagem--admin {

    align-self:
        flex-end;

    background:
        rgba(244, 185, 66, 0.06);

}


.admin-conversa__mensagem--usuario {

    align-self:
        flex-start;

    background:
        rgba(36, 151, 255, 0.06);

}


.admin-conversa__mensagem span {

    color:
        var(--texto-secundario);

    font-size:
        0.65rem;

    font-weight:
        700;

}


.admin-conversa__mensagem p {

    margin:
        6px 0;

    line-height:
        1.5;

}


.admin-conversa__mensagem small {

    color:
        var(--texto-suave);

    font-size:
        0.62rem;

}


/* ================================
   SECTION 33.4 — FORM
   ================================ */

.admin-mensagem-form,
.admin-conversa__resposta {

    display:
        grid;

}


.admin-mensagem-form__acoes,
.admin-conversa__acoes {

    display:
        flex;

    justify-content:
        flex-end;

    flex-wrap:
        wrap;

    gap:
        9px;

}


/* ================================
   SECTION 33.5 — RESPONSIVO
   ================================ */

@media (
    max-width: 700px
) {

    .admin-mensagens__filtros {

        width:
            100%;

        flex-direction:
            column;

    }


    .admin-mensagens__filtros input {

        width:
            100%;

    }


    .admin-mensagens__item {

        align-items:
            flex-start;

        flex-direction:
            column;

    }


    .admin-mensagens__meta {

        width:
            100%;

        justify-items:
            start;

    }


    .admin-conversa__mensagem {

        max-width:
            92%;

    }

}

/* ================================
   SECTION 34 — PUBLICAÇÕES
   ================================ */

.admin-publicacoes__filtros {

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

}


.admin-publicacoes__filtros input,
.admin-publicacoes__filtros select {

    min-height:
        40px;

    padding:
        0 11px;

    border:
        1px solid
        var(--borda);

    border-radius:
        10px;

    outline:
        none;

    color:
        var(--texto);

    background:
        rgba(255, 255, 255, 0.035);

}


.admin-publicacoes__filtros input {

    width:
        min(300px, 30vw);

}


.admin-publicacoes__filtros select option {

    color:
        #111820;

}


/* ================================
   SECTION 34.1 — FORMULÁRIO
   ================================ */

.admin-publicacao-form {

    display:
        grid;

    gap:
        4px;

}


.admin-publicacao-form__grid {

    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap:
        14px;

}


.admin-publicacao-form__conteudo {

    min-height:
        240px !important;

}


.admin-publicacao-form__vinculo {

    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap:
        14px;

    padding:
        17px;

    margin-bottom:
        16px;

    border:
        1px solid
        var(--borda);

    border-radius:
        13px;

    background:
        rgba(255, 255, 255, 0.018);

}


.admin-publicacao-form__opcoes {

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        18px;

    margin:
        4px 0 18px;

}


.admin-publicacao__checkbox {

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

    font-size:
        0.8rem;

    cursor:
        pointer;

}


.admin-publicacao__checkbox input {

    width:
        18px;

    height:
        18px;

    accent-color:
        var(--dourado);

}


.admin-publicacao-form__acoes {

    display:
        flex;

    justify-content:
        flex-end;

    padding-top:
        12px;

}


/* ================================
   SECTION 34.2 — MODAL
   ================================ */

.admin-publicacao-modal {

    display:
        grid;

    gap:
        22px;

}


.admin-publicacao__resumo {

    display:
        grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        9px;

}


.admin-publicacao__resumo > div {

    padding:
        14px;

    border:
        1px solid
        var(--borda);

    border-radius:
        12px;

    background:
        rgba(255, 255, 255, 0.025);

}


.admin-publicacao__resumo span {

    display:
        block;

    margin-bottom:
        5px;

    color:
        var(--texto-secundario);

    font-size:
        0.68rem;

}


.admin-publicacao__resumo strong {

    display:
        block;

    font-size:
        0.82rem;

}


/* ================================
   SECTION 34.3 — RESPONSIVO
   ================================ */

@media (
    max-width: 760px
) {

    .admin-publicacoes__filtros {

        width:
            100%;

        flex-direction:
            column;

        align-items:
            stretch;

    }


    .admin-publicacoes__filtros input {

        width:
            100%;

    }


    .admin-publicacao-form__grid,
    .admin-publicacao-form__vinculo {

        grid-template-columns:
            1fr;

    }


    .admin-publicacao__resumo {

        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

    }

}


@media (
    max-width: 480px
) {

    .admin-publicacao__resumo {

        grid-template-columns:
            1fr;

    }

}
/* Finalização: agenda e formulários legíveis em celular. */
.admin-eventos-filtros,.admin-evento-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:end;}
.admin-eventos-lista {display:grid;gap:1rem;margin-top:1rem;}
.admin-eventos-lista h3,.admin-eventos-lista p {overflow-wrap:anywhere;}
.admin-campo input,.admin-campo textarea,.admin-campo select {min-width:0;max-width:100%;}
.admin-botao:focus-visible,[data-usuario-id]:focus-visible,[data-participacao-id]:focus-visible {outline:3px solid #f4c46c;outline-offset:3px;}
@media(max-width:600px){.admin-eventos-filtros,.admin-evento-grid {grid-template-columns:1fr;}.admin-cabecalho {flex-wrap:wrap;gap:1rem;}}
.admin-gestao-conteudo {margin-top:24px;padding-top:20px;border-top:1px solid #405464;}
.admin-gestao-acoes {display:flex;flex-wrap:wrap;gap:12px;}
.admin-botao--perigo {background:#682e32;color:#fff;border:1px solid #b5767a;}
.admin-gestao-confirmacao {margin-top:16px;padding:16px;border:1px solid #b5767a;border-radius:12px;}
.admin-gestao-confirmacao button {margin:6px;}
.admin-panorama section{margin:2rem 0;border-top:1px solid #526475;padding-top:1rem}.admin-panorama label{display:block;max-width:760px;margin:1rem 0}.admin-panorama input,.admin-panorama select,.admin-panorama textarea{display:block;width:100%;max-width:760px;border:1px solid #617487;border-radius:6px;background:#15283b;color:#eef5fb;padding:.65rem;font:inherit}.admin-panorama textarea{min-height:140px}.admin-panorama input[type=checkbox]{width:auto}.admin-panorama button{border:1px solid #91c9d7;border-radius:6px;background:#afdce6;color:#0b2431;padding:.65rem .9rem;font:inherit;cursor:pointer}.admin-panorama button:disabled{opacity:.5;cursor:default}.admin-panorama :focus-visible{outline:3px solid #e2c779;outline-offset:4px}.admin-panorama article{padding:1rem;border:1px solid #526475;border-radius:7px;margin:1rem 0;overflow-wrap:anywhere}.admin-panorama p{max-width:85ch}.admin-panorama select{min-width:0}
.panorama-ciclo{border:1px solid #678499;border-radius:12px;padding:20px;margin:20px 0;background:#102839;color:#eff5f8}.panorama-ciclo label{display:block;margin:14px 0;line-height:1.6}.panorama-ciclo input:not([type=checkbox]),.panorama-ciclo textarea,.panorama-ciclo select{display:block;width:100%;max-width:100%;padding:12px;background:#f7f9fa;color:#142d40;border:1px solid #8aa3b4;border-radius:6px;font:inherit}.panorama-ciclo textarea{min-height:100px}.panorama-ciclo button{padding:12px 16px;margin:8px 8px 8px 0;white-space:normal;min-height:44px}.panorama-ciclo details{padding:12px;margin:12px 0;border:1px solid #698598;border-radius:6px;overflow-wrap:anywhere}.panorama-ciclo summary{cursor:pointer;padding:8px;font-weight:600}.panorama-ciclo pre{overflow-wrap:anywhere;max-width:100%}.panorama-ciclo a{color:#b5e9f1;text-decoration:underline}.panorama-ciclo form{padding:12px;border-top:1px solid #698598}.panorama-ciclo h3,.panorama-ciclo h4{margin:18px 0 12px}.panorama-ciclo small{display:block;line-height:1.5}

/* Retorno ao sistema sem encerrar a sessão. */
.admin-topo,.admin-topo__direita{flex-wrap:wrap}.admin-retorno{display:flex;gap:10px;flex-wrap:wrap}.admin-retorno a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid #52677e;border-radius:8px;color:#edf3fa;text-decoration:none;font-size:.9rem}.admin-retorno a:hover{background:#243c53}.admin-retorno a:focus-visible{outline:3px solid #ffd36a;outline-offset:3px}@media(max-width:600px){.admin-retorno{width:100%}.admin-retorno a{flex:1}}
