/* ==========================
   RESET
========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{
    background:#f4f5f7;
    color:#333;
}

/* ==========================
   TOPO
========================== */

.topo{

    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:25px 50px;

    background:
        radial-gradient(circle at right,#7a0000 0%,transparent 30%),
        linear-gradient(90deg,#0d0d0d,#191919);

    border-bottom:4px solid #d60000;

    box-shadow:0 10px 30px rgba(0,0,0,.25);

}

.topo-esquerda{

    width:280px;
    display:flex;
    justify-content:center;

}

.logo{

    width:230px;
    height:auto;

}

.topo-centro{

    flex:1;

    display:flex;

    align-items:center;

}

.linha{

    width:2px;
    height:90px;
    background:#555;
    margin:0 35px;

}

.topo-centro h1{

    color:white;

    font-size:42px;

    letter-spacing:2px;

}

.topo-centro p{

    color:#d6d6d6;

    margin-top:8px;

    font-size:20px;

}

.topo-direita{

    display:flex;

    align-items:center;

    gap:20px;

}

.usuario{

    color:white;

    font-size:17px;

}

.usuario i{

    margin-right:8px;

}

.btn-sair{

    background:#d60000;

    color:white;

    border:none;

    padding:12px 22px;

    border-radius:8px;

    cursor:pointer;

    transition:.3s;

    font-weight:bold;

}

.btn-sair:hover{

    background:#ff2020;

}

/* ==========================
   MENU
========================== */

nav{

    background:white;

    display:flex;

    justify-content:center;

    gap:15px;

    padding:18px;

    box-shadow:0 4px 15px rgba(0,0,0,.08);

}

nav button{

    background:#d60000;

    color:white;

    border:none;

   padding:16px;

    border-radius:12px;

    cursor:pointer;

    font-weight:bold;

    transition:.3s;

}

nav button:hover{

    background:#b00000;

    transform:translateY(-3px);

}

nav button i{

    margin-right:8px;

}

/* ==========================
   CONTEÚDO
========================== */

main,
#conteudo{
    width:100%;
    max-width:1600px;
    margin:0 auto;
    padding:20px;
    box-sizing:border-box;
}
/* ==========================
   TOPO
========================== */

.topo{
    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:35px 60px;

    background:
    radial-gradient(circle at right,#9d0000 0%,transparent 35%),
    linear-gradient(90deg,#111,#1b1b1b);

    border-bottom:4px solid #d00000;
}

/* LOGO */

.topo-esquerda{
    width:300px;
}

.logo{
    width:230px;
    display:block;
}

/* CENTRO */

.topo-centro{
    flex:1;
    display:flex;
    align-items:center;
    margin-left:30px;
}

.linha{
    width:2px;
    height:90px;
    background:#555;
    margin-right:35px;
}

.topo-centro h1{
    color:#fff;
    font-size:52px;
    margin:0;
}

.topo-centro p{
    color:#d7d7d7;
    margin-top:10px;
    font-size:22px;
}

/* DIREITA */

.topo-direita{
    display:flex;
    align-items:center;
    gap:25px;
}

.usuario{
    display:flex;
    align-items:center;
    gap:10px;
    color:white;
    font-size:20px;
}

.usuario i{
    font-size:34px;
}

.btn-sair{
    background:transparent;
    color:white;
    border:2px solid #d00000;
    padding:14px 28px;
    border-radius:10px;
    cursor:pointer;
    font-size:17px;
    transition:.3s;
}

.btn-sair:hover{
    background:#d00000;
}
.dashboard{
    width:100%;
    max-width:1200px;
    margin:40px auto;
    padding:0 20px;
    box-sizing:border-box;
}

.titulo-pagina{
    font-size:32px;
    margin-bottom:25px;
    color:#222;
}

.cards{
    display:flex;
    gap:20px;
    margin:25px 0;
}

.cards .card{
    flex:1;
}

.info{
    background:#fff;
    border-radius:18px;
    padding:25px;
    box-shadow:0 8px 20px rgba(0,0,0,.08);
    border-top:5px solid #d60000;
    transition:.3s;
}

.info:hover{
    transform:translateY(-5px);
}

.info span{
    color:#777;
    font-size:15px;
}

.info h2{
    margin-top:10px;
    font-size:36px;
    color:#d60000;
}

.graficos{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:25px;
}

.grafico-card{
    height:350px;
}

#graficoDashboard{
    width:100% !important;
    height:300px !important;
}
#graficoDashboard{
    width:100% !important;
    height:300px !important;
    max-height:300px;
}

/* ===========================
   FORMULÁRIO
=========================== */

.form-chamado{
    display:flex;
    flex-direction:column;
    gap:18px;
    padding-top:20px;
}

.linha-form{
    display:flex;
    gap:20px;
}

.campo{
    flex:1;
    display:flex;
    flex-direction:column;
}

.form-chamado label{
    font-weight:bold;
    margin-bottom:6px;
    color:#444;
}

.form-chamado input,
.form-chamado select,
.form-chamado textarea{
    width:100%;
    padding:16px;
    border:2px solid #ececec;
    border-radius:12px;
    font-size:15px;
    transition:.3s;
    outline:none;
}

.form-chamado input:focus,
.form-chamado select:focus,
.form-chamado textarea:focus{
    border-color:#d60000;
    background:#fff;
    box-shadow:0 0 0 4px rgba(214,0,0,.10);
}
    

input:focus,
select:focus,
textarea:focus{

    border-color:#d60000;

    background:#fff;

    box-shadow:0 0 0 4px rgba(214,0,0,.08);

}

.form-chamado textarea{
    resize:vertical;
}

.btn-vermelho{

margin-top:15px;

display:flex;
justify-content:center;
align-items:center;
gap:10px;

width:100%;

height:55px;

font-size:18px;

border-radius:12px;

font-weight:bold;

background:#d60000;

color:white;

border:none;

cursor:pointer;

transition:.3s;

box-shadow:0 10px 20px rgba(214,0,0,.25);

}

.btn-vermelho:hover{

background:#b50000;

transform:translateY(-3px);

box-shadow:0 15px 25px rgba(214,0,0,.35);

}

@media(max-width:900px){

    .linha-form{
        flex-direction:column;
    }

}

/* ==========================
   TABELA DE CHAMADOS
========================== */

.titulo-tabela{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
}

#campoPesquisa{
    width:320px;
    padding:12px;
    border:2px solid #ddd;
    border-radius:8px;
    font-size:15px;
}

table{
    width:100%;
    border-collapse:collapse;
}
table th,
table td{
    text-align:center;
    padding:18px 10px;
    vertical-align:middle;
}
table th:nth-child(1),
table td:nth-child(1){
    width:8%;
}

table th:nth-child(2),
table td:nth-child(2){
    width:18%;
}

table th:nth-child(3),
table td:nth-child(3){
    width:16%;
}

table th:nth-child(4),
table td:nth-child(4){
    width:18%;
}

table th:nth-child(5),
table td:nth-child(5){
    width:14%;
}

table th:nth-child(6),
table td:nth-child(6){
    width:14%;
}

table th:nth-child(7),
table td:nth-child(7){
    width:12%;
}
table td{
    white-space: nowrap;
}

.status,
.prioridade,
.sla-ok,
.sla-alerta,
.sla-vencido{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:4px 10px;

    border-radius:20px;

    font-size:12px;

    font-weight:bold;

    color:white;
}
/* ===== Prioridade ===== */

.prioridade{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:80px;
    height:28px;

    padding:0 12px;

    background:#ff9800;
    color:#fff;

    border-radius:20px;

    font-size:12px;
    font-weight:bold;
}


/* ===== SLA ===== */

.sla-ok,
.sla-alerta,
.sla-vencido{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:100px;
    height:28px;

    padding:0 12px;

    border-radius:20px;

    color:#fff;
    font-size:12px;
    font-weight:bold;
}

.sla-ok{
    background:#2196f3;
}

.sla-alerta{
    background:#ff9800;
}

.sla-vencido{
    background:#d32f2f;
}


/* ===== Tabela ===== */

table th,
table td{
    text-align:center;
    vertical-align:middle;
    padding:14px 10px;
}


/* ===== Botão ===== */

table button{
    background:#d60000;
    color:#fff;
    border:none;
    padding:8px 14px;
    border-radius:8px;
    cursor:pointer;
    font-weight:bold;
    transition:.3s;
}

table button:hover{
    background:#b40000;
}
.status{
    display:inline-block;
    padding:8px 18px;
    border-radius:30px;
    color:#fff;
    font-size:13px;
    font-weight:bold;
}

.status-aberto{
    background:#e30613;
}

.status-atendimento{
    background:#ff9800;
}

.status-resolvido{
    background:#28a745;
}

/* Status */
.status-aberto{
    background:#d32f2f;
}

.status-atendimento{
    background:#1976d2;
}

.status-resolvido{
    background:#2e7d32;
}
.status{
    display:inline-block;
    min-width:120px;
    text-align:center;
    padding:6px 12px;
    border-radius:20px;
    font-size:12px;
    font-weight:bold;
    color:#fff;
}

/* Status */
.aberto{
    background:#d32f2f;
}

.atendimento{
    background:#1976d2;
}

.resolvido{
    background:#2e7d32;
}
.detalhes{

    background:#fff;

    border-radius:12px;

    padding:25px;

    box-shadow:0 5px 15px rgba(0,0,0,.08);

}

.detalhes p{

    margin:12px 0;

    font-size:16px;

}

.detalhes h3{

    margin-top:20px;

    color:#d60000;

}

.detalhes hr{

    margin:25px 0;

    border:none;

    border-top:1px solid #ddd;

}

.dashboard{
    width:1200px;
    max-width:95%;
    margin:40px auto;
}

.titulo-dashboard{

margin:30px 0;

}

.titulo-dashboard h2{

font-size:38px;

margin-bottom:5px;

}

.titulo-dashboard p{

color:#666;

}

.cards-dashboard{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:25px;

margin-bottom:30px;

}

.card-info{
    background:#fff;
    border-radius:18px;
    padding:22px;
    display:flex;
    align-items:center;
    gap:20px;
    border:1px solid #ececec;
    box-shadow:0 8px 20px rgba(0,0,0,.08);
    transition:.3s;
}

.card-info:hover{
    transform:translateY(-4px);
}

.card-info .icone{
    width:78px;
    height:78px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:34px;
    flex-shrink:0;
}

.card-info > div:last-child{
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.card-info h3{
    margin:0;
    font-size:16px;
    color:#555;
}

.card-info h1{
    margin:6px 0;
    font-size:48px;
    line-height:1;
    color:#222;
}

.card-info p{
    margin:0;
    color:#888;
}
.total .icone{
    background:#111;
}

.aberto .icone{
    background:#e30613;
}

.atendimento .icone{
    background:#ff9800;
}

.resolvido .icone{
    background:#28a745;
}

.card-info h1{
    margin:8px 0 6px;
    font-size:54px;
    line-height:1;
}

.card-info h3{
    margin:0;
    font-size:16px;
    color:#4b5563;
    font-weight:700;
    line-height:1.3;

    height:42px;          /* força todos os títulos terem a mesma altura */
    display:flex;
    align-items:center;
}   

.card-info p{
    margin:0;
    color:#7a7a7a;
    min-height:40px;
}
.dashboard table{

    width:100%;

    border-collapse:collapse;

    table-layout: fixed;

    background:white;

    border-radius:15px;

    overflow:hidden;

    box-shadow:0 8px 20px rgba(0,0,0,.08);
    

}

.dashboard th{
    background:#fff;
    color:#222;
    padding:18px;
    border-bottom:2px solid #eee;
    text-align:center;
    font-weight:700;
}

.dashboard td{
    padding:18px;
    border-bottom:1px solid #eee;
    text-align:center;
    vertical-align:middle;
}
.card table{
    width:100%;
    border-collapse:collapse;
    margin-top:20px;
    background:#fff;
    border-radius:15px;
    overflow:hidden;
}

.card th{
    background:#fafafa;
    color:#444;
    padding:18px;
    text-align:center;
    font-size:15px;
    font-weight:700;
    border-bottom:2px solid #ececec;
}

.card td{
    padding:18px;
    text-align:center;
    border-bottom:1px solid #efefef;
    font-size:15px;
}

.card tr:hover{
    background:#f8f8f8;
    transition:.2s;
}
.card button{
    background:#e30613;
    color:#fff;
    border:none;
    padding:10px 18px;
    border-radius:10px;
    cursor:pointer;
    font-weight:600;
    transition:.3s;
}

.card button:hover{
    background:#b80000;
    transform:scale(1.05);
}
.titulo-consulta{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:25px;
}

.titulo-consulta p{
    color:#777;
    font-weight:600;
}

.filtros{
    display:flex;
    gap:20px;
    margin-bottom:25px;
}

.filtros input,
.filtros select{

    flex:1;

    padding:14px;

    border:1px solid #ddd;

    border-radius:10px;

    font-size:15px;

    outline:none;

}

.filtros input:focus,
.filtros select:focus{

    border-color:#d60000;

}

.btn-ver{

    background:#d60000;

    color:white;

    border:none;

    padding:10px 14px;

    border-radius:8px;

    cursor:pointer;

    transition:.3s;

}

.btn-ver:hover{

    background:#aa0000;

}
.prioridade-baixa{
    background:#28a745;
    color:#fff;
    padding:6px 12px;
    border-radius:20px;
    font-size:12px;
    font-weight:bold;
}

.prioridade-media{
    background:#ff9800;
    color:#fff;
    padding:6px 12px;
    border-radius:20px;
    font-size:12px;
    font-weight:bold;
}

.prioridade-alta{
    background:#dc3545;
    color:#fff;
    padding:6px 12px;
    border-radius:20px;
    font-size:12px;
    font-weight:bold;
}
.card{

    width:100%;
    background:#fff;
    border-radius:18px;
    padding:20px;
    margin-bottom:20px;
    box-sizing:border-box;
    overflow:hidden;

    box-shadow:0 8px 25px rgba(0,0,0,.08);

}
#graficoChamados{

    width:320px !important;

    height:320px !important;

    margin:20px auto;

    display:block;

}

.btn-aceitar{

background:#1976d2;

color:white;

border:none;

padding:10px 15px;

border-radius:8px;

cursor:pointer;

margin-right:8px;

transition:.3s;

}

.btn-aceitar:hover{

background:#0d47a1;

}

.btn-finalizar{

background:#28a745;

color:white;

border:none;

padding:10px 15px;

border-radius:8px;

cursor:pointer;

transition:.3s;

}

.btn-finalizar:hover{

background:#1f7a34;

}
.dashboard-inferior{
    display:flex;
    gap:25px;
    margin-top:25px;
    align-items:flex-start;
}

.grafico-card{
    width:340px;
    min-width:340px;
}

.grafico-card canvas{
    width:100% !important;
    height:300px !important;
}

.tabela-card{
    flex:1;
}

@media(max-width:1000px){

.dashboard-inferior{
    flex-direction:column;
}

.grafico-card{
    width:100%;
    min-width:100%;
}

}
/* DASHBOARD */
.dashboard{
    width:100%;
    max-width:1600px;
    margin:0 auto;
    padding:20px;
    box-sizing:border-box;
}

/* CARDS */
.card{
    width:100%;
    background:#fff;
    border-radius:15px;
    padding:20px;
    margin-bottom:20px;
    box-sizing:border-box;
    overflow:hidden;
}

/* TABELA */
table{
    width:100%;
    border-collapse:collapse;
    table-layout:auto;
}

th,
td{
    padding:15px;
    text-align:center;
    white-space:nowrap;
}

th{
    background:#f5f5f5;
}
.grafico-dashboard{

    width: 350px;
    height: 350px;

    margin: 20px auto;

}

.grafico-dashboard canvas{

    width:100% !important;
    height:100% !important;

}
#graficoChamados{
    max-width: 420px;
    max-height: 280px;
    margin: 20px auto;
    display: block;
}
.card-info{
    display:flex;
    align-items:center;
    gap:20px;
}

.icone-card{
    width:60px;
    height:60px;
    border-radius:15px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:26px;
    color:#fff;
}

.total .icone-card{
    background:#007bff;
}

.aberto .icone-card{
    background:#dc3545;
}

.atendimento .icone-card{
    background:#ff9800;
}

.resolvido .icone-card{
    background:#28a745;
}
.dashboard-header{
    margin-bottom:25px;
}

.dashboard-header h2{
    margin:0;
    font-size:32px;
    color:#222;
}

.dashboard-header p{
    margin-top:8px;
    color:#777;
}

.cards-dashboard{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-bottom:30px;
}

.card-info{
    background:#fff;
    border-radius:18px;
    padding:25px;
    display:flex;
    align-items:center;
    gap:18px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.3s;
}

.card-info:hover{
    transform:translateY(-6px);
}

.icone-card{
    width:75px;
    height:75px;
    border-radius:18px;
    display:flex;
    justify-content:center;
    align-items:center;
    color:#fff;
    font-size:32px;
    flex-shrink:0;
}

.total .icone-card{
    background:#111;
}

.aberto .icone-card{
    background:#d60000;
}

.atendimento .icone-card{
    background:#ff9800;
}

.resolvido .icone-card{
    background:#28a745;
}

.card-info h3{
    margin:0;
    font-size:16px;
    color:#666;
}

.card-info h1{
    margin:6px 0 0;
    font-size:42px;
    color:#222;
}

.grafico-dashboard{
    height:320px;
    display:flex;
    justify-content:center;
    align-items:center;
}

#graficoChamados{
    max-width:420px;
    max-height:300px;
}
.dashboard-linha{
    display:flex;
    gap:20px;
    align-items:stretch;
}

.dashboard-linha .card:first-child{
    flex:2;
}

.dashboard-linha .card:last-child{
    flex:1;
}

.grafico-dashboard{
    height:300px;
    display:flex;
    justify-content:center;
    align-items:center;
}

#graficoChamados{
    width:260px !important;
    height:260px !important;
}
.dashboard-linha{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:25px;
    margin-top:25px;
}

.grafico-dashboard{
    position:relative;
    height:300px;
}

.indicadores{
    display:flex;
    flex-direction:column;
    gap:15px;
}

.indicador{
    background:#f8f9fb;
    border-left:5px solid #d60000;
    border-radius:10px;
    padding:18px;
}

.indicador h3{
    margin:0;
    font-size:15px;
    color:#666;
}

.indicador h1{
    margin-top:8px;
    color:#222;
    font-size:32px;
}
.icone-card{
    width:65px;
    height:65px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:26px;
}

.total .icone-card{
    background:#2563eb;
}

.aberto .icone-card{
    background:#ef4444;
}

.atendimento .icone-card{
    background:#f59e0b;
}

.resolvido .icone-card{
    background:#22c55e;
}

.card-info h3{
    font-size:15px;
    color:#777;
    margin-bottom:6px;
}

.card-info h1{
    font-size:34px;
    font-weight:700;
}
.dashboard-linha{
    display:grid;
    grid-template-columns: 2fr 1fr;
    gap:25px;
    margin-bottom:30px;
}

.grafico-dashboard{
    width:320px;
    height:320px;
    margin:20px auto;
}

.indicadores{
    display:flex;
    flex-direction:column;
    gap:15px;
}

.indicador{
    background:#f8f9fb;
    border-left:5px solid #d60000;
    padding:15px;
    border-radius:10px;
}

.indicador h3{
    margin:0;
    color:#666;
    font-size:15px;
}

.indicador h1{
    margin-top:8px;
    color:#222;
    font-size:30px;
}
.base-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:20px;
    margin-top:20px;
}

.base-item{
    background:#fff;
    border-left:5px solid #d60000;
    border-radius:10px;
    padding:20px;
    box-shadow:0 5px 15px rgba(0,0,0,.1);
    transition:.3s;
}

.base-item:hover{
    transform:translateY(-5px);
}

.base-item h3{
    margin-bottom:10px;
    color:#d60000;
}

.artigo{
    background:#fff;
    border-radius:15px;
    padding:30px;
    box-shadow:0 5px 20px rgba(0,0,0,.08);
}

.artigo-topo{
    border-left:6px solid #d60000;
    padding-left:20px;
    margin-bottom:25px;
}

.artigo-topo h2{
    font-size:30px;
    color:#222;
    margin-bottom:10px;
}

.artigo-topo p{
    color:#666;
    font-size:16px;
}

.passo{
    background:#f8f8f8;
    border-left:5px solid #0b7dda;
    padding:18px;
    margin-bottom:18px;
    border-radius:10px;
}

.passo h3{
    margin-bottom:10px;
    color:#222;
}

.alerta{
    background:#fff4e5;
    border-left:5px solid orange;
    padding:20px;
    margin-top:25px;
    border-radius:10px;
}

.ramais{
    width:100%;
    border-collapse:collapse;
    margin-top:20px;
}

.ramais th{
    background:#d60000;
    color:white;
    padding:12px;
}

.ramais td{
    border-bottom:1px solid #ddd;
    padding:12px;
}

.ramais tr:hover{
    background:#f4f4f4;
}

.pesquisa-base{
    margin:25px 0;
}

.pesquisa-base input{
    width:100%;
    padding:16px;
    font-size:17px;
    border:1px solid #ddd;
    border-radius:12px;
    outline:none;
    transition:.3s;
}

.pesquisa-base input:focus{
    border-color:#d60000;
    box-shadow:0 0 10px rgba(214,0,0,.25);
}

.btn-sair {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 9px;
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    transition: background 0.2s ease, transform 0.2s ease;
}

.btn-sair:hover {
    background: #ffffff;
    color: #b40000;
    transform: translateY(-2px);
}

.btn-sair i {
    font-size: 15px;
}

/* ==========================================
   MURAL EVOLUTION — VISUAL PROFISSIONAL
========================================== */

.mural-evolution {
    width: min(1440px, 100%);
    margin: 0 auto;
    padding: 42px 26px 70px;
}

.mural-cabecalho {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    overflow: hidden;
    padding: 34px 42px;
    border-radius: 22px;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% 15%, rgba(255, 255, 255, 0.17), transparent 24%),
        linear-gradient(120deg, #161616 0%, #2b0808 53%, #bd0000 100%);
    box-shadow: 0 18px 40px rgba(46, 0, 0, 0.22);
}

.mural-cabecalho::after {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -130px;
    width: 260px;
    height: 260px;
    border: 36px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
}

.mural-cabecalho > * {
    position: relative;
    z-index: 1;
}

.mural-identificador {
    display: block;
    margin-bottom: 8px;
    color: #ffb8b8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.8px;
}

.mural-cabecalho h2 {
    margin: 0;
    font-size: clamp(30px, 4vw, 43px);
    line-height: 1.05;
}

.mural-cabecalho p {
    margin: 11px 0 0;
    color: rgba(255, 255, 255, 0.86);
    font-size: 16px;
}

.btn-gerenciar-mural,
.btn-voltar-mural {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    flex-shrink: 0;
    padding: 13px 18px;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 10px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.12);
    cursor: pointer;
    font-size: 14px;
    font-weight: 800;
    transition: 0.2s ease;
}

.btn-gerenciar-mural:hover,
.btn-voltar-mural:hover {
    color: #b30000;
    background: #ffffff;
    transform: translateY(-2px);
}

.mural-grade {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(320px, 0.85fr);
    gap: 26px;
    margin-top: 28px;
}

.mural-lateral {
    display: grid;
    gap: 26px;
}

.mural-painel {
    overflow: hidden;
    padding: 27px;
    border: 1px solid #e9e9e9;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(24, 24, 24, 0.08);
}

.mural-comunicados {
    min-height: 500px;
}

.mural-titulo {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 23px;
}

.mural-titulo > i {
    display: grid;
    width: 47px;
    height: 47px;
    place-items: center;
    flex-shrink: 0;
    border-radius: 13px;
    color: #ffffff;
    background: linear-gradient(135deg, #ef1010, #a90000);
    font-size: 19px;
    box-shadow: 0 8px 17px rgba(191, 0, 0, 0.22);
}

.mural-aniversarios .mural-titulo > i {
    background: linear-gradient(135deg, #f7a400, #e16d00);
    box-shadow: 0 8px 17px rgba(225, 109, 0, 0.2);
}

.mural-eventos .mural-titulo > i {
    background: linear-gradient(135deg, #4d67d6, #243b9e);
    box-shadow: 0 8px 17px rgba(36, 59, 158, 0.2);
}

.mural-titulo h2 {
    margin: 0;
    color: #1d1d1d;
    font-size: 21px;
}

.mural-titulo p {
    margin: 4px 0 0;
    color: #777777;
    font-size: 13px;
}

.mural-lista {
    display: grid;
    gap: 14px;
}

.mural-item {
    padding: 19px 20px;
    border-left: 4px solid #d60000;
    border-radius: 12px;
    background: #f7f8fa;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.mural-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08);
}

.mural-item-topo {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.mural-item h3 {
    margin: 0;
    color: #222222;
    font-size: 17px;
}

.mural-item p {
    margin: 10px 0 0;
    color: #555555;
    font-size: 14px;
    line-height: 1.6;
}

.mural-item time {
    flex-shrink: 0;
    color: #888888;
    font-size: 12px;
    font-weight: 700;
}

/* O primeiro comunicado vira o grande destaque do mural */
.mural-comunicados .mural-item:first-child {
    display: flex;
    min-height: 280px;
    flex-direction: column;
    justify-content: center;
    padding: 42px 44px;
    border: 0;
    border-radius: 17px;
    color: #ffffff;
    background:
        radial-gradient(circle at right top, rgba(255, 255, 255, 0.16), transparent 33%),
        linear-gradient(120deg, #8c0000, #d90000 60%, #ef2929);
    box-shadow: 0 18px 35px rgba(190, 0, 0, 0.25);
}

.mural-comunicados .mural-item:first-child::before {
    content: "AVISO EM DESTAQUE";
    display: inline-block;
    width: fit-content;
    margin-bottom: 16px;
    padding: 7px 11px;
    border-radius: 7px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.18);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.mural-comunicados .mural-item:first-child h3 {
    color: #ffffff;
    font-size: clamp(27px, 3vw, 38px);
    line-height: 1.15;
}

.mural-comunicados .mural-item:first-child p {
    max-width: 760px;
    color: rgba(255, 255, 255, 0.92);
    font-size: 17px;
}

.mural-comunicados .mural-item:first-child time {
    margin-top: 18px;
    color: rgba(255, 255, 255, 0.82);
}

.mural-vazio {
    margin: 0;
    padding: 20px;
    border: 1px dashed #d7d7d7;
    border-radius: 12px;
    color: #777777;
    background: #fafafa;
    font-size: 14px;
    text-align: center;
}

/* Área administrativa do mural */
.mural-admin {
    width: min(1440px, 100%);
    margin: 0 auto;
    padding: 42px 26px 70px;
}

.mural-admin-cabecalho {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-bottom: 28px;
    padding: 28px 34px;
    border-radius: 20px;
    color: #ffffff;
    background: linear-gradient(115deg, #171717, #9e0000);
}

.mural-admin-cabecalho h2,
.mural-admin-cabecalho p {
    margin: 0;
}

.mural-admin-cabecalho p {
    margin-top: 8px;
    color: rgba(255, 255, 255, 0.82);
}

.mural-admin-grade {
    display: grid;
    grid-template-columns: minmax(320px, 0.8fr) minmax(0, 1.2fr);
    gap: 26px;
}

.mural-formulario,
.mural-publicacoes {
    padding: 27px;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(24, 24, 24, 0.08);
}

.mural-formulario h3,
.mural-publicacoes h3 {
    margin: 0 0 22px;
    color: #222222;
    font-size: 20px;
}

.mural-formulario form {
    display: grid;
    gap: 10px;
}

.mural-formulario label {
    margin-top: 8px;
    color: #333333;
    font-size: 13px;
    font-weight: 800;
}

.mural-formulario input,
.mural-formulario select,
.mural-formulario textarea {
    width: 100%;
    padding: 13px;
    border: 1px solid #dedede;
    border-radius: 9px;
    color: #222222;
    background: #ffffff;
    font: inherit;
    outline: none;
}

.mural-formulario input:focus,
.mural-formulario select:focus,
.mural-formulario textarea:focus {
    border-color: #d60000;
    box-shadow: 0 0 0 3px rgba(214, 0, 0, 0.1);
}

.mural-formulario textarea {
    resize: vertical;
}

.btn-publicar-mural {
    margin-top: 12px;
    padding: 14px;
    border: 0;
    border-radius: 9px;
    color: #ffffff;
    background: #d60000;
    cursor: pointer;
    font-weight: 800;
    transition: 0.2s ease;
}

.btn-publicar-mural:hover {
    background: #a90000;
    transform: translateY(-2px);
}

.mural-admin-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 0;
    border-bottom: 1px solid #ececec;
}

.mural-admin-item:first-of-type {
    padding-top: 0;
}

.mural-admin-item strong,
.mural-admin-item p,
.mural-admin-item small {
    display: block;
}

.mural-admin-item strong {
    margin-top: 8px;
    color: #222222;
}

.mural-admin-item p {
    margin: 7px 0;
    color: #666666;
    font-size: 14px;
}

.mural-admin-item small {
    color: #999999;
}

.mural-etiqueta {
    display: inline-block;
    padding: 5px 8px;
    border-radius: 999px;
    color: #b30000;
    background: #ffe7e7;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.btn-excluir-mural {
    padding: 9px 12px;
    border: 1px solid #f0b4b4;
    border-radius: 8px;
    color: #b30000;
    background: #fff5f5;
    cursor: pointer;
    font-weight: 700;
}

.btn-excluir-mural:hover {
    color: #ffffff;
    background: #c40000;
}

/* Tela menor / celular */
@media (max-width: 900px) {
    .mural-grade,
    .mural-admin-grade {
        grid-template-columns: 1fr;
    }

    .mural-cabecalho,
    .mural-admin-cabecalho {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 560px) {
    .mural-evolution,
    .mural-admin {
        padding: 22px 16px 45px;
    }

    .mural-cabecalho,
    .mural-admin-cabecalho {
        padding: 27px 22px;
        border-radius: 16px;
    }

    .mural-painel,
    .mural-formulario,
    .mural-publicacoes {
        padding: 20px;
        border-radius: 15px;
    }

    .mural-comunicados .mural-item:first-child {
        min-height: 230px;
        padding: 28px 24px;
    }

    .mural-item-topo,
    .mural-admin-item {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Carrossel de avisos do mural */

.mural-carrossel {
    width: 100%;
}

.mural-slides {
    position: relative;
}

.mural-comunicados .mural-slide {
    display: flex;
    min-height: 280px;
    flex-direction: column;
    justify-content: center;
    padding: 42px 44px;
    border: 0;
    border-radius: 17px;
    color: #ffffff;
    background:
        radial-gradient(circle at right top, rgba(255, 255, 255, 0.16), transparent 33%),
        linear-gradient(120deg, #8c0000, #d90000 60%, #ef2929);
    box-shadow: 0 18px 35px rgba(190, 0, 0, 0.25);
    animation: entradaMural 0.45s ease both;
}

.mural-comunicados .mural-slide:not(.ativo) {
    display: none;
}

.mural-comunicados .mural-slide::before {
    content: "AVISO EM DESTAQUE";
    display: inline-block;
    width: fit-content;
    margin-bottom: 16px;
    padding: 7px 11px;
    border-radius: 7px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.18);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.mural-comunicados .mural-slide h3 {
    color: #ffffff;
    font-size: clamp(27px, 3vw, 38px);
    line-height: 1.15;
}

.mural-comunicados .mural-slide p {
    max-width: 760px;
    color: rgba(255, 255, 255, 0.92);
    font-size: 17px;
}

.mural-comunicados .mural-slide time {
    margin-top: 18px;
    color: rgba(255, 255, 255, 0.82);
}

.mural-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 20px;
}

.mural-dot {
    width: 10px;
    height: 10px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #d6d6d6;
    cursor: pointer;
    transition: 0.25s ease;
}

.mural-dot:hover {
    background: #a90000;
    transform: scale(1.15);
}

.mural-dot.ativo {
    width: 28px;
    border-radius: 999px;
    background: #d60000;
}

@keyframes entradaMural {
    from {
        opacity: 0;
        transform: translateX(18px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@media (max-width: 560px) {
    .mural-comunicados .mural-slide {
        min-height: 230px;
        padding: 28px 24px;
    }

    .mural-comunicados .mural-slide p {
        font-size: 15px;
    }
}   
/* ==========================================
   VISUAL PROFISSIONAL — TELA DE CHAMADOS
========================================== */

.chamados-profissional {
    width: min(1440px, 100%);
    margin: 0 auto;
    padding: 42px 26px 70px;
}

.chamados-topo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 31px 38px;
    border-radius: 20px;
    color: #ffffff;
    background:
        radial-gradient(circle at right top, rgba(255, 255, 255, 0.13), transparent 25%),
        linear-gradient(115deg, #151515, #4c0808 62%, #c80000);
    box-shadow: 0 16px 35px rgba(75, 0, 0, 0.20);
}

.chamados-identificador {
    display: block;
    margin-bottom: 8px;
    color: #ffb5b5;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.chamados-topo h2 {
    margin: 0;
    font-size: 34px;
}

.chamados-topo p {
    margin: 8px 0 0;
    color: rgba(255, 255, 255, 0.84);
}

.chamados-total {
    display: flex;
    align-items: center;
    gap: 13px;
    min-width: 180px;
    padding: 15px 19px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.12);
}

.chamados-total > i {
    font-size: 24px;
}

.chamados-total strong,
.chamados-total span {
    display: block;
}

.chamados-total strong {
    font-size: 24px;
}

.chamados-total span {
    color: rgba(255, 255, 255, 0.82);
    font-size: 12px;
}

.chamados-resumo {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin: 25px 0;
}

.chamados-metrica {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px;
    border: 1px solid #ececec;
    border-radius: 15px;
    background: #ffffff !important;
    box-shadow: 0 9px 20px rgba(0, 0, 0, 0.06);
}

.chamados-metrica > i {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 12px;
    color: #ffffff;
    font-size: 18px;
}

.chamados-metrica.total > i {
    background: #2d63e7;
}

.chamados-metrica.aberto > i {
    background: #ef3f46;
}

.chamados-metrica.atendimento > i {
    background: #f39900;
}

.chamados-metrica.resolvido > i {
    background: #1dbd69;
}

.chamados-metrica span,
.chamados-metrica strong {
    display: block;
}

.chamados-metrica span {
    color: #767676;
    font-size: 13px;
}

.chamados-metrica strong {
    margin-top: 3px;
    color: #222222;
    font-size: 27px;
}

.chamados-filtros {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 190px 190px auto;
    gap: 12px;
    align-items: center;
    margin-bottom: 22px;
    padding: 17px;
    border: 1px solid #ebebeb;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.04);
}

.campo-busca-chamados {
    position: relative;
}

.campo-busca-chamados i {
    position: absolute;
    top: 50%;
    left: 14px;
    color: #9a9a9a;
    transform: translateY(-50%);
}

.campo-busca-chamados input,
.chamados-filtros select {
    width: 100%;
    height: 45px;
    padding: 0 13px;
    border: 1px solid #dddddd;
    border-radius: 9px;
    background: #ffffff;
    color: #343434;
    font: inherit;
    outline: none;
}

.campo-busca-chamados input {
    padding-left: 40px;
}

.campo-busca-chamados input:focus,
.chamados-filtros select:focus {
    border-color: #d60000;
    box-shadow: 0 0 0 3px rgba(214, 0, 0, 0.10);
}

.btn-limpar-filtros {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 45px;
    padding: 0 16px;
    border: 1px solid #e3b9b9;
    border-radius: 9px;
    color: #b40000;
    background: #fff8f8;
    cursor: pointer;
    font-weight: 800;
}

.btn-limpar-filtros:hover {
    color: #ffffff;
    background: #c40000;
}

.tabela-chamados-wrapper {
    overflow-x: auto;
    border: 1px solid #e9e9e9;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06);
}

.tabela-chamados {
    width: 100%;
    min-width: 1040px;
    border-collapse: collapse;
}

.tabela-chamados th {
    padding: 17px 15px;
    color: #6b6b6b;
    background: #f8f8f9;
    font-size: 12px;
    letter-spacing: 0.3px;
    text-align: left;
    text-transform: uppercase;
}

.tabela-chamados td {
    padding: 17px 15px;
    border-top: 1px solid #eeeeee;
    color: #333333;
    font-size: 14px;
}

.tabela-chamados tbody tr:hover {
    background: #fffafa;
}

.prioridade {
    display: inline-block;
    padding: 6px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
}

.prioridade-urgente {
    color: #ffffff;
    background: #d60000;
}

.prioridade-alta {
    color: #a24600;
    background: #ffe1bf;
}

.prioridade-media {
    color: #866300;
    background: #fff1bc;
}

.prioridade-baixa {
    color: #276a4c;
    background: #d7f3e2;
}

.nenhum-chamado {
    padding: 42px !important;
    color: #888888 !important;
    text-align: center;
}

.nenhum-chamado i {
    margin-right: 8px;
    color: #d60000;
}

@media (max-width: 950px) {
    .chamados-resumo {
        grid-template-columns: repeat(2, 1fr);
    }

    .chamados-filtros {
        grid-template-columns: 1fr 1fr;
    }

    .campo-busca-chamados {
        grid-column: 1 / -1;
    }
}

@media (max-width: 560px) {
    .chamados-profissional {
        padding: 22px 16px 45px;
    }

    .chamados-topo {
        align-items: flex-start;
        flex-direction: column;
        padding: 26px 22px;
    }

    .chamados-resumo,
    .chamados-filtros {
        grid-template-columns: 1fr;
    }

    .campo-busca-chamados {
        grid-column: auto;
    }
}

/* ==========================================
   VISUAL PROFISSIONAL — DETALHE DO CHAMADO
========================================== */

.detalhe-chamado {
    width: min(1440px, 100%);
    margin: 0 auto;
    padding: 42px 26px 70px;
}

.detalhe-topo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 32px 38px;
    border-radius: 20px;
    color: #ffffff;
    background:
        radial-gradient(circle at right top, rgba(255, 255, 255, 0.14), transparent 24%),
        linear-gradient(115deg, #151515, #4c0808 62%, #c80000);
    box-shadow: 0 16px 35px rgba(75, 0, 0, 0.20);
}

.detalhe-identificador {
    display: block;
    margin-bottom: 8px;
    color: #ffb5b5;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.3px;
}

.detalhe-topo h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(28px, 3vw, 38px);
    line-height: 1.15;
}

.detalhe-topo p {
    margin: 9px 0 0;
    color: rgba(255, 255, 255, 0.85);
    font-size: 14px;
}

.detalhe-acoes-topo {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.btn-voltar-chamado {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 15px;
    border: 1px solid rgba(255, 255, 255, 0.56);
    border-radius: 9px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.10);
    cursor: pointer;
    font-size: 14px;
    font-weight: 800;
    transition: 0.2s ease;
}

.btn-voltar-chamado:hover {
    color: #b40000;
    background: #ffffff;
    transform: translateY(-2px);
}

.detalhe-info-grade {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 17px;
    margin: 25px 0;
}

.detalhe-info-card {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 86px;
    padding: 18px;
    border: 1px solid #ebebeb;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.05);
}

.detalhe-info-card > i {
    display: grid;
    width: 43px;
    height: 43px;
    place-items: center;
    flex-shrink: 0;
    border-radius: 11px;
    color: #ffffff;
    background: linear-gradient(135deg, #ef1010, #a90000);
    font-size: 17px;
}

.detalhe-info-card:nth-child(2) > i {
    background: linear-gradient(135deg, #506ee8, #253b9d);
}

.detalhe-info-card:nth-child(3) > i {
    background: linear-gradient(135deg, #7c53c9, #4d258f);
}

.detalhe-info-card:nth-child(4) > i {
    background: linear-gradient(135deg, #ee9800, #ca6500);
}

.detalhe-info-card:nth-child(5) > i {
    background: linear-gradient(135deg, #168fbd, #075a82);
}

.detalhe-info-card:nth-child(6) > i {
    background: linear-gradient(135deg, #69807a, #3e514c);
}

.detalhe-info-card span,
.detalhe-info-card strong {
    display: block;
}

.detalhe-info-card span {
    margin-bottom: 4px;
    color: #808080;
    font-size: 12px;
    font-weight: 700;
}

.detalhe-info-card strong {
    color: #262626;
    font-size: 15px;
}

.detalhe-conteudo-grade {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.65fr);
    gap: 25px;
    align-items: start;
}

.detalhe-mensagem,
.detalhe-historico {
    padding: 29px;
    border: 1px solid #ebebeb;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 10px 23px rgba(0, 0, 0, 0.06);
}

.detalhe-secao-identificador {
    display: block;
    margin-bottom: 10px;
    color: #b40000;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.3px;
}

.detalhe-mensagem h3 {
    margin: 20px 0 8px;
    color: #222222;
    font-size: 19px;
}

.detalhe-mensagem h3:first-of-type {
    margin-top: 0;
}

.detalhe-assunto {
    margin: 0;
    color: #555555;
    font-size: 16px;
}

.detalhe-descricao {
    min-height: 125px;
    padding: 20px;
    border-left: 4px solid #d60000;
    border-radius: 10px;
    color: #424242;
    background: #f8f8f9;
    font-size: 15px;
    line-height: 1.7;
    white-space: pre-wrap;
}

.detalhe-historico-titulo {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 23px;
}

.detalhe-historico-titulo > i {
    display: grid;
    width: 43px;
    height: 43px;
    place-items: center;
    border-radius: 11px;
    color: #ffffff;
    background: linear-gradient(135deg, #e58d00, #bc5c00);
    font-size: 17px;
}

.detalhe-historico h3 {
    margin: 0;
    color: #222222;
    font-size: 20px;
}

.detalhe-historico p {
    margin: 4px 0 0;
    color: #777777;
    font-size: 13px;
}

.linha-tempo {
    position: relative;
    margin-left: 10px;
    padding-left: 26px;
    border-left: 2px solid #ececec;
}

.linha-tempo-item {
    position: relative;
    padding: 0 0 25px;
}

.linha-tempo-item:last-child {
    padding-bottom: 0;
}

.linha-tempo-ponto {
    position: absolute;
    top: 4px;
    left: -34px;
    width: 15px;
    height: 15px;
    border: 3px solid #ffffff;
    border-radius: 50%;
    background: #d60000;
    box-shadow: 0 0 0 2px #d60000;
}

.linha-tempo-item strong {
    display: block;
    color: #282828;
    font-size: 14px;
}

.linha-tempo-item p {
    margin: 4px 0;
    color: #666666;
    font-size: 13px;
}

.linha-tempo-item time {
    color: #999999;
    font-size: 12px;
    font-weight: 700;
}

@media (max-width: 1000px) {
    .detalhe-info-grade {
        grid-template-columns: repeat(2, 1fr);
    }

    .detalhe-conteudo-grade {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 650px) {
    .detalhe-chamado {
        padding: 22px 16px 45px;
    }

    .detalhe-topo {
        align-items: flex-start;
        flex-direction: column;
        padding: 26px 22px;
    }

    .detalhe-acoes-topo {
        flex-wrap: wrap;
    }

    .detalhe-info-grade {
        grid-template-columns: 1fr;
    }

    .detalhe-mensagem,
    .detalhe-historico {
        padding: 22px;
    }
}
/* ==========================================
   VISUAL PROFISSIONAL — ABRIR CHAMADO
========================================== */

.abrir-chamado-profissional {
    width: min(1440px, 100%);
    margin: 0 auto;
    padding: 42px 26px 70px;
}

.novo-chamado-topo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    padding: 32px 38px;
    border-radius: 20px;
    color: #ffffff;
    background:
        radial-gradient(circle at right top, rgba(255, 255, 255, 0.14), transparent 24%),
        linear-gradient(115deg, #151515, #4c0808 62%, #c80000);
    box-shadow: 0 16px 35px rgba(75, 0, 0, 0.20);
}

.novo-chamado-identificador {
    display: block;
    margin-bottom: 8px;
    color: #ffb5b5;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.novo-chamado-topo h2 {
    margin: 0;
    color: #ffffff;
    font-size: 34px;
}

.novo-chamado-topo h2 i {
    margin-right: 8px;
}

.novo-chamado-topo p {
    margin: 8px 0 0;
    color: rgba(255, 255, 255, 0.84);
}

.novo-chamado-etapas {
    display: flex;
    align-items: center;
    gap: 13px;
    flex-wrap: wrap;
}

.novo-chamado-etapas span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255, 255, 255, 0.88);
    font-size: 13px;
    font-weight: 700;
}

.novo-chamado-etapas strong {
    display: grid;
    width: 25px;
    height: 25px;
    place-items: center;
    border-radius: 50%;
    color: #b40000;
    background: #ffffff;
    font-size: 12px;
}

.novo-chamado-corpo {
    display: grid;
    grid-template-columns: minmax(260px, 0.62fr) minmax(0, 1.38fr);
    gap: 25px;
    align-items: start;
    margin-top: 26px;
}

.novo-chamado-ajuda {
    padding: 29px;
    border-radius: 18px;
    color: #ffffff;
    background:
        radial-gradient(circle at right top, rgba(255, 255, 255, 0.13), transparent 30%),
        linear-gradient(145deg, #2d1010, #840000);
    box-shadow: 0 13px 27px rgba(76, 0, 0, 0.18);
}

.novo-chamado-ajuda-icone {
    display: grid;
    width: 51px;
    height: 51px;
    place-items: center;
    margin-bottom: 19px;
    border-radius: 14px;
    color: #b40000;
    background: #ffffff;
    font-size: 21px;
}

.novo-chamado-ajuda h3 {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    line-height: 1.25;
}

.novo-chamado-ajuda p {
    margin: 14px 0 25px;
    color: rgba(255, 255, 255, 0.86);
    font-size: 14px;
    line-height: 1.65;
}

.novo-chamado-dica {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 15px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 11px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.10);
    font-size: 13px;
    line-height: 1.5;
}

.novo-chamado-dica i {
    margin-top: 2px;
    color: #ffb5b5;
}

.abrir-chamado-profissional .formulario-chamado-profissional {
    display: grid;
    gap: 18px;
    padding: 30px;
    border: 1px solid #e8e8e8;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.07);
}

.abrir-chamado-profissional .linha-form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.abrir-chamado-profissional .campo {
    display: grid;
    gap: 8px;
}

.abrir-chamado-profissional label {
    color: #343434;
    font-size: 13px;
    font-weight: 800;
}

.abrir-chamado-profissional label i {
    width: 18px;
    margin-right: 5px;
    color: #c40000;
    text-align: center;
}

.campo-opcional {
    color: #8a8a8a;
    font-size: 11px;
    font-weight: 600;
}

.abrir-chamado-profissional input[type="text"],
.abrir-chamado-profissional select,
.abrir-chamado-profissional textarea {
    width: 100%;
    border: 1px solid #dddddd;
    border-radius: 10px;
    color: #292929;
    background: #ffffff;
    font: inherit;
    outline: none;
    transition: 0.2s ease;
}

.abrir-chamado-profissional input[type="text"],
.abrir-chamado-profissional select {
    height: 48px;
    padding: 0 14px;
}

.abrir-chamado-profissional textarea {
    min-height: 170px;
    padding: 14px;
    line-height: 1.55;
    resize: vertical;
}

.abrir-chamado-profissional input[type="text"]::placeholder,
.abrir-chamado-profissional textarea::placeholder {
    color: #9b9b9b;
}

.abrir-chamado-profissional input[type="text"]:focus,
.abrir-chamado-profissional select:focus,
.abrir-chamado-profissional textarea:focus {
    border-color: #d60000;
    box-shadow: 0 0 0 3px rgba(214, 0, 0, 0.10);
}

.campo-anexo {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 55px;
    padding: 9px 13px;
    border: 1px dashed #d3a0a0;
    border-radius: 10px;
    background: #fffafa;
}

.campo-anexo input[type="file"] {
    max-width: 235px;
    color: #555555;
    font-size: 13px;
}

.campo-anexo span {
    color: #7a6464;
    font-size: 12px;
}

.btn-enviar-chamado {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 53px;
    margin-top: 7px;
    border: 0;
    border-radius: 10px;
    color: #ffffff;
    background: linear-gradient(115deg, #b90000, #ef1717);
    box-shadow: 0 10px 20px rgba(194, 0, 0, 0.24);
    cursor: pointer;
    font-size: 15px;
    font-weight: 800;
    transition: 0.2s ease;
}

.btn-enviar-chamado:hover {
    background: linear-gradient(115deg, #8f0000, #cf0000);
    box-shadow: 0 13px 24px rgba(194, 0, 0, 0.30);
    transform: translateY(-2px);
}

@media (max-width: 1000px) {
    .novo-chamado-corpo {
        grid-template-columns: 1fr;
    }

    .novo-chamado-ajuda {
        display: grid;
        grid-template-columns: auto 1fr;
        column-gap: 17px;
    }

    .novo-chamado-ajuda-icone {
        grid-row: span 2;
        margin: 0;
    }

    .novo-chamado-ajuda p {
        margin: 10px 0 20px;
    }

    .novo-chamado-dica {
        grid-column: 1 / -1;
    }
}

@media (max-width: 700px) {
    .abrir-chamado-profissional {
        padding: 22px 16px 45px;
    }

    .novo-chamado-topo {
        align-items: flex-start;
        flex-direction: column;
        padding: 26px 22px;
    }

    .novo-chamado-etapas {
        gap: 9px;
    }

    .abrir-chamado-profissional .linha-form {
        grid-template-columns: 1fr;
    }

    .abrir-chamado-profissional .formulario-chamado-profissional {
        padding: 22px;
    }

    .novo-chamado-ajuda {
        display: block;
        padding: 24px;
    }

    .novo-chamado-ajuda-icone {
        margin-bottom: 16px;
    }

    .campo-anexo {
        align-items: flex-start;
        flex-direction: column;
    }
}
/* Escala global de leitura */

html {
    font-size: 110%;
}

body {
    font-size: 1rem;
}

button,
input,
select,
textarea {
    font-size: inherit;
}

/* ==========================
   PAINEL RH
========================== */

.card-rh {
    display: flex;
    flex-direction: column;
    cursor: pointer;
    transition: 0.2s ease;
}

.card-rh:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.card-rh p {
    flex: 1;
}

.rh-ver-mais {
    margin-top: 15px;
    font-weight: 700;
    font-size: 13px;
    color: #d10000;
}


/* TELA INTERNA */

.btn-voltar-rh {
    background: #222;
    color: white;
    border: none;
    border-radius: 7px;
    padding: 9px 14px;
    cursor: pointer;
    font-weight: 600;
}

.btn-voltar-rh:hover {
    background: #000;
}


/* PERGUNTAS */

.rh-lista {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.rh-pergunta {
    border: 1px solid #e3e3e3;
    border-radius: 9px;
    overflow: hidden;
    background: white;
}

.rh-pergunta-titulo {
    width: 100%;
    border: none;
    background: #f7f7f7;
    padding: 16px;

    display: flex;
    justify-content: space-between;
    align-items: center;

    text-align: left;
    cursor: pointer;

    font-size: 15px;
    font-weight: 700;
    color: #222;
}

.rh-pergunta-titulo:hover {
    background: #f1f1f1;
}

.rh-pergunta-titulo span i {
    color: #d10000;
    margin-right: 8px;
}

.rh-resposta {
    display: none;
    padding: 16px;
    line-height: 1.6;
    color: #555;
    border-top: 1px solid #eee;
}

.rh-resposta.aberta {
    display: block;
}


/* NÃO RESOLVEU */

.rh-nao-resolveu {
    margin-top: 25px;
    padding: 20px;

    border-radius: 10px;
    border-left: 4px solid #d10000;

    background: #f8f8f8;
}

.rh-nao-resolveu h3 {
    margin-bottom: 8px;
}

.rh-nao-resolveu p {
    margin-bottom: 15px;
    color: #6f6f6f;
}

.btn-rh-chamado {
    padding: 11px 18px;

    border: none;
    border-radius: 8px;

    background: linear-gradient(135deg, #d10000, #a00000);
    color: white;

    font-weight: 700;
    cursor: pointer;

    transition: 0.2s ease;
}

.btn-rh-chamado:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 12px rgba(209, 0, 0, 0.25);
}
/* =====================================================
   PAINEL RH - VISUAL PROFISSIONAL
===================================================== */

/* Área principal do Painel RH */
.rh-painel {
    background: linear-gradient(180deg, #ffffff 0%, #fafafa 100%);
    border-radius: 18px;
    padding: 28px 30px 32px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
    border: 1px solid #eeeeee;
}

/* Título */
.rh-painel h2 {
    font-size: 26px;
    font-weight: 800;
    color: #222;
    margin-bottom: 5px;
}

/* Texto abaixo do título */
.rh-painel > p {
    color: #666;
    font-size: 14px;
    margin-bottom: 25px;
}

/* Grade dos cards */
.rh-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

/* Cards */
.rh-card {
    position: relative;
    background: #ffffff;
    border: 1px solid #eeeeee;
    border-top: 4px solid #d10000;
    border-radius: 15px;
    padding: 22px;
    min-height: 185px;

    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.07);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;

    cursor: pointer;
}

/* Efeito ao passar o mouse */
.rh-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 30px rgba(150, 0, 0, 0.15);
    border-color: #d10000;
}

/* Ícones */
.rh-card > i {
    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: linear-gradient(135deg, #d10000, #9e0000);
    color: #ffffff;

    border-radius: 12px;

    font-size: 19px;
    margin-bottom: 15px;

    box-shadow: 0 5px 12px rgba(209, 0, 0, 0.20);
}

/* Título dos cards */
.rh-card h3 {
    font-size: 18px;
    font-weight: 800;
    color: #222;
    margin: 0 0 8px 0;
}

/* Descrição */
.rh-card p {
    font-size: 14px;
    line-height: 1.5;
    color: #666;
    margin-bottom: 15px;
}

/* Texto Ver orientações */
.rh-card span,
.rh-card .rh-link {
    color: #b00000;
    font-weight: 700;
    font-size: 13px;
    transition: 0.2s ease;
}

/* Destaque do link */
.rh-card:hover span,
.rh-card:hover .rh-link {
    color: #e00000;
}

/* Área de resolução quando abrir um tópico */
.rh-detalhe,
.rh-resolucao {
    background: #ffffff;
    border-radius: 16px;
    padding: 28px;
    border: 1px solid #eeeeee;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

/* Caixa "não resolveu?" */
.rh-nao-resolveu {
    margin-top: 25px;
    padding: 20px;

    background: #f8f8f8;
    border-left: 4px solid #d10000;
    border-radius: 10px;
}

/* Botão abrir chamado */
.btn-rh-chamado {
    padding: 11px 20px;
    border: none;
    border-radius: 8px;

    background: linear-gradient(135deg, #d10000, #a00000);
    color: white;

    font-weight: 700;
    cursor: pointer;

    box-shadow: 0 4px 10px rgba(209, 0, 0, 0.20);
    transition: 0.2s ease;
}

.btn-rh-chamado:hover {
    transform: translateY(-2px);
    box-shadow: 0 7px 16px rgba(209, 0, 0, 0.30);
}

/* Responsividade */
@media (max-width: 1000px) {

    .rh-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 650px) {

    .rh-grid {
        grid-template-columns: 1fr;
    }

    .rh-painel {
        padding: 20px;
    }

}
/* =====================================================
   PAINEL RH - VISUAL PROFISSIONAL
===================================================== */

/* Container dos cards SOMENTE do Painel RH */
.cards:has(.card-rh) {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 10px;
}

/* CARD RH */
.info.card-rh {
    position: relative;
    display: flex;
    flex-direction: column;

    background: #ffffff;

    min-height: 190px;
    padding: 22px;

    border: 1px solid #eeeeee;
    border-top: 4px solid #d10000;
    border-radius: 14px;

    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.07);

    cursor: pointer;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

/* EFEITO AO PASSAR O MOUSE */
.info.card-rh:hover {
    transform: translateY(-6px);

    border-color: #d10000;

    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.10),
        0 5px 15px rgba(209, 0, 0, 0.10);
}

/* ÍCONE */
.info.card-rh > i {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 45px;
    height: 45px;

    margin-bottom: 15px;

    border-radius: 11px;

    background: linear-gradient(
        135deg,
        #d10000,
        #990000
    );

    color: #ffffff;

    font-size: 18px;

    box-shadow: 0 5px 12px rgba(209, 0, 0, 0.20);
}

/* TÍTULO */
.info.card-rh h3 {
    margin: 0 0 8px 0;

    color: #222222;

    font-size: 18px;
    font-weight: 800;
}

/* DESCRIÇÃO */
.info.card-rh p {
    margin: 0 0 18px 0;

    color: #666666;

    font-size: 14px;
    line-height: 1.5;
}

/* EMPURRA O "VER ORIENTAÇÕES" PARA BAIXO */
.info.card-rh .rh-ver-mais {
    margin-top: auto;

    color: #b00000;

    font-size: 13px;
    font-weight: 700;

    transition: 0.2s ease;
}

/* MUDA O LINK QUANDO PASSAR O MOUSE */
.info.card-rh:hover .rh-ver-mais {
    color: #e00000;
    transform: translateX(4px);
}

/* RESPONSIVO */
@media (max-width: 1000px) {

    .cards:has(.card-rh) {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 650px) {

    .cards:has(.card-rh) {
        grid-template-columns: 1fr;
    }

}


/* =========================================================
   MANUTENÇÕES GERAIS - VISUAL PROFISSIONAL
   ========================================================= */

.manutencoes-gerais {
    max-width: 1250px;
    margin: 0 auto;
}

.manutencoes-gerais h2 {
    font-size: 25px;
    color: #222;
    margin-bottom: 4px;
}

.manutencoes-gerais > p {
    color: #666;
    font-size: 14px;
    margin-bottom: 25px;
}


/* GRID DOS CARDS */

.cards-manutencao {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-top: 20px;
}


/* CARD INDIVIDUAL */

.card-manutencao {
    background: #ffffff;
    border: 1px solid #eeeeee;
    border-top: 3px solid #d10000;
    border-radius: 14px;
    padding: 22px 20px;
    min-height: 190px;

    display: flex;
    flex-direction: column;

    cursor: pointer;

    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.07);

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}


/* EFEITO AO PASSAR O MOUSE */

.card-manutencao:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
    border-top-color: #a40000;
}


/* ÍCONE */

.card-manutencao > i {
    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background: #fff1f1;
    color: #d10000;

    font-size: 21px;

    margin-bottom: 14px;
}


/* TÍTULO */

.card-manutencao h3 {
    color: #222;
    font-size: 17px;
    margin: 0 0 8px 0;
}


/* DESCRIÇÃO */

.card-manutencao p {
    color: #666;
    font-size: 14px;
    line-height: 1.45;

    margin: 0 0 15px 0;

    flex: 1;
}


/* VER OPÇÕES */

.card-manutencao span {
    color: #d10000;
    font-size: 13px;
    font-weight: 700;
    margin-top: auto;
}

.card-manutencao:hover span {
    color: #a00000;
}


/* =========================================================
   TELA INTERNA DA MANUTENÇÃO
   ========================================================= */

.manutencao-detalhe {
    max-width: 1100px;
    margin: 0 auto;
}


/* TOPO */

.manutencao-detalhe-topo {
    margin-bottom: 22px;
}


/* BOTÃO VOLTAR */

.btn-voltar-manutencao {
    border: none;
    background: #f3f3f3;
    color: #444;

    padding: 9px 15px;

    border-radius: 8px;

    cursor: pointer;

    font-weight: 600;

    margin-bottom: 20px;

    transition: 0.2s;
}

.btn-voltar-manutencao:hover {
    background: #e7e7e7;
}


/* TÍTULO + ÍCONE */

.manutencao-detalhe-titulo {
    display: flex;
    align-items: center;
    gap: 16px;
}

.manutencao-detalhe-icone {
    width: 55px;
    height: 55px;

    border-radius: 12px;

    background: linear-gradient(135deg, #d10000, #a00000);

    color: white;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 23px;

    box-shadow: 0 5px 14px rgba(209, 0, 0, 0.22);
}

.manutencao-detalhe-titulo h2 {
    margin: 0 0 4px;
    color: #222;
}

.manutencao-detalhe-titulo p {
    margin: 0;
    color: #666;
}


/* CAIXA DE ORIENTAÇÃO */

.manutencao-orientacao {
    display: flex;
    align-items: flex-start;
    gap: 13px;

    background: #fff8f8;

    border-left: 4px solid #d10000;

    padding: 16px 18px;

    border-radius: 8px;

    margin: 22px 0;
}

.manutencao-orientacao > i {
    color: #d10000;
    font-size: 20px;
    margin-top: 2px;
}

.manutencao-orientacao strong {
    color: #222;
}

.manutencao-orientacao p {
    margin: 4px 0 0;
    color: #666;
}


/* PERGUNTA */

.manutencao-pergunta {
    margin: 25px 0 14px;
    color: #222;
    font-size: 17px;
}


/* LISTA DE PROBLEMAS */

.manutencao-opcoes {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}


/* OPÇÃO */

.manutencao-opcao {
    display: flex;
    align-items: center;
    gap: 12px;

    background: white;

    border: 1px solid #e5e5e5;

    border-radius: 10px;

    padding: 14px 15px;

    transition: 0.2s;
}

.manutencao-opcao:hover {
    border-color: #d10000;
    background: #fffafa;
    transform: translateX(2px);
}


/* NÚMERO */

.manutencao-opcao-numero {
    width: 30px;
    height: 30px;

    min-width: 30px;

    border-radius: 50%;

    background: #fff0f0;

    color: #d10000;

    display: flex;
    align-items: center;
    justify-content: center;

    font-weight: 700;
}


/* TEXTO */

.manutencao-opcao-texto {
    flex: 1;

    color: #333;

    font-size: 14px;

    font-weight: 500;
}

.manutencao-opcao > i {
    color: #aaa;
}


/* =========================================================
   NÃO RESOLVEU
   ========================================================= */

.manutencao-nao-resolveu {
    margin-top: 28px;

    background: linear-gradient(
        135deg,
        #181818,
        #292929
    );

    border-radius: 14px;

    padding: 22px 25px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 25px;

    color: white;
}

.manutencao-nao-resolveu h3 {
    color: white;
    margin: 0 0 7px;
}

.manutencao-nao-resolveu h3 i {
    color: #ff3030;
    margin-right: 5px;
}

.manutencao-nao-resolveu p {
    color: #d0d0d0;

    margin: 0;

    font-size: 13px;

    line-height: 1.5;

    max-width: 650px;
}


/* BOTÃO ABRIR CHAMADO */

.btn-abrir-manutencao {
    border: none;

    background: linear-gradient(
        135deg,
        #d10000,
        #a00000
    );

    color: white;

    padding: 13px 19px;

    border-radius: 9px;

    font-weight: 700;

    cursor: pointer;

    white-space: nowrap;

    transition: 0.2s;
}

.btn-abrir-manutencao:hover {
    transform: translateY(-2px);

    box-shadow:
        0 6px 16px rgba(209, 0, 0, 0.35);
}


/* =========================================================
   RESPONSIVO
   ========================================================= */

@media (max-width: 1000px) {

    .cards-manutencao {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 650px) {

    .cards-manutencao {
        grid-template-columns: 1fr;
    }

    .manutencao-opcoes {
        grid-template-columns: 1fr;
    }

    .manutencao-nao-resolveu {
        flex-direction: column;
        align-items: flex-start;
    }

}

/* =====================================================
   MANUTENÇÕES GERAIS - LAYOUT CORRETO
   ===================================================== */

.manutencoes-painel {
    max-width: 1250px;
    margin: 0 auto;
    padding: 28px 30px !important;
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 6px 25px rgba(0,0,0,0.08);
}

.manutencoes-painel h2 {
    margin: 0 0 5px 0;
    font-size: 24px;
    color: #222;
}

.manutencoes-painel h2 i {
    color: #d10000;
    margin-right: 7px;
}

.manutencoes-subtitulo {
    margin: 0 0 25px 0 !important;
    color: #666;
    font-size: 14px;
}


/* GRID */

.manutencoes-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 18px !important;
    width: 100%;
}


/* CARDS */

.manutencao-card {
    background: #ffffff;
    border: 1px solid #eeeeee;
    border-top: 3px solid #d10000;

    border-radius: 14px;

    padding: 20px;

    min-height: 180px;

    display: flex !important;
    flex-direction: column;

    cursor: pointer;

    box-shadow: 0 5px 16px rgba(0,0,0,0.07);

    transition: all 0.2s ease;
}

.manutencao-card:hover {
    transform: translateY(-5px);

    box-shadow: 0 10px 25px rgba(0,0,0,0.13);

    border-top-color: #a00000;
}


/* ÍCONE */

.manutencao-icone {
    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #fff1f1;

    border-radius: 11px;

    color: #d10000;

    font-size: 21px;

    margin-bottom: 14px;
}


/* TÍTULO */

.manutencao-card h3 {
    margin: 0 0 8px 0;

    font-size: 17px;

    color: #222;
}


/* DESCRIÇÃO */

.manutencao-card p {
    margin: 0 0 15px 0;

    color: #666;

    font-size: 14px;

    line-height: 1.45;

    flex: 1;
}


/* VER OPÇÕES */

.manutencao-card span {
    display: inline-flex;
    align-items: center;

    color: #d10000;

    font-size: 13px;

    font-weight: 700;

    margin-top: auto;
}

.manutencao-card:hover span {
    color: #a00000;
}


/* RESPONSIVO */

@media (max-width: 1050px) {

    .manutencoes-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

}

@media (max-width: 650px) {

    .manutencoes-grid {
        grid-template-columns: 1fr !important;
    }

    .manutencoes-painel {
        padding: 20px !important;
    }

}
/* =========================================================
   LOGIN EVOLUTION - VERSÃO MODERNA
   ========================================================= */

/* Fundo exclusivo da tela de login */
body.modo-login {
    min-height: 100vh;
    margin: 0;
    background:
        radial-gradient(circle at 12% 18%, rgba(220, 0, 0, 0.22), transparent 28%),
        radial-gradient(circle at 90% 88%, rgba(130, 0, 0, 0.20), transparent 30%),
        #111111 !important;
}

/* Esconde o sistema enquanto estiver no login */
body.modo-login .topo,
body.modo-login #menuPrincipal {
    display: none !important;
}

body.modo-login #conteudo {
    min-height: 100vh !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}


/* =========================================================
   ÁREA PRINCIPAL
   ========================================================= */

.login-evolution {
    width: 100%;
    min-height: 100vh;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 40px 25px;
    box-sizing: border-box;
}


/* =========================================================
   PAINEL CENTRAL
   ========================================================= */

.login-evolution-painel {
    width: min(1000px, 100%);
    min-height: 590px;

    display: grid;
    grid-template-columns: 1.08fr 0.92fr;

    background: #ffffff;

    border-radius: 24px;
    overflow: hidden;

    border: 1px solid rgba(255,255,255,0.18);

    box-shadow:
        0 30px 80px rgba(0,0,0,0.48),
        0 8px 25px rgba(0,0,0,0.22);
}


/* =========================================================
   LADO ESQUERDO
   ========================================================= */

.login-evolution-apresentacao {
    position: relative;

    min-height: 590px;

    padding: 48px 52px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    color: #ffffff;

    background:
        radial-gradient(
            circle at 85% 85%,
            rgba(255, 40, 40, 0.23) 0,
            rgba(255, 40, 40, 0.23) 22%,
            transparent 22.5%
        ),
        linear-gradient(
            135deg,
            #160b0b 0%,
            #390707 38%,
            #760000 72%,
            #9f0000 100%
        );

    box-sizing: border-box;
}


/* efeito decorativo */
.login-evolution-apresentacao::after {
    content: "";

    position: absolute;
    width: 300px;
    height: 300px;

    right: -120px;
    bottom: -150px;

    border: 32px solid rgba(255,255,255,0.08);

    border-radius: 50%;

    pointer-events: none;
}


/* LOGO - importante para impedir aquela logo gigante */

.login-evolution-logo {
    display: block !important;

    width: 135px !important;
    max-width: 135px !important;
    height: auto !important;

    object-fit: contain;

    margin: 0 0 48px 0 !important;

    position: relative;
    z-index: 2;
}


/* PORTAL INTERNO */

.login-evolution-tag {
    position: relative;
    z-index: 2;

    color: #ffb7b7;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 3px;

    margin-bottom: 12px;
}


/* TÍTULO */

.login-evolution-apresentacao h1 {
    position: relative;
    z-index: 2;

    margin: 0 0 18px 0;

    color: #ffffff !important;

    font-size: clamp(38px, 4vw, 52px);
    line-height: 0.98;

    font-weight: 800;
    letter-spacing: -1.5px;
}


/* TEXTO */

.login-evolution-apresentacao > p {
    position: relative;
    z-index: 2;

    max-width: 440px;

    margin: 0 0 34px;

    color: rgba(255,255,255,0.88) !important;

    font-size: 15px;
    line-height: 1.65;
}


/* DESTAQUES */

.login-evolution-destaques {
    position: relative;
    z-index: 2;

    display: flex;
    flex-direction: column;

    gap: 13px;
}

.login-evolution-destaques > div {
    display: flex;
    align-items: center;

    gap: 12px;

    color: #ffffff;

    font-size: 13px;
    font-weight: 700;
}

.login-evolution-destaques i {
    width: 34px;
    height: 34px;

    min-width: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 9px;

    color: #ffffff;

    background: rgba(255,255,255,0.13);
}


/* =========================================================
   LADO DIREITO - FORMULÁRIO
   ========================================================= */

.login-evolution-form {
    padding: 55px 48px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    box-sizing: border-box;

    background: #ffffff;
}


/* ÍCONE SUPERIOR */

.login-evolution-icon {
    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 14px;

    margin-bottom: 18px;

    color: white;

    font-size: 20px;

    background: linear-gradient(135deg, #d10000, #ff1717);

    box-shadow:
        0 10px 25px rgba(209,0,0,0.28);
}


/* BEM-VINDO */

.login-evolution-form h2 {
    margin: 0 0 7px;

    color: #181818 !important;

    font-size: 30px;

    font-weight: 800;
}


/* descrição */

.login-evolution-descricao {
    margin: 0 0 34px !important;

    color: #777 !important;

    font-size: 14px;

    line-height: 1.55;
}


/* LABEL */

.login-evolution-form label {
    display: block;

    margin: 0 0 7px;

    color: #222;

    font-size: 12px;
    font-weight: 800;
}


/* CAMPO */

.login-evolution-campo {
    width: 100%;

    min-height: 50px;

    display: flex;
    align-items: center;

    gap: 11px;

    padding: 0 15px;

    margin-bottom: 19px;

    background: #ffffff;

    border: 1px solid #dddddd;

    border-radius: 11px;

    box-sizing: border-box;

    transition: 0.2s ease;
}

.login-evolution-campo:focus-within {
    border-color: #d10000;

    box-shadow:
        0 0 0 3px rgba(209, 0, 0, 0.08);
}


/* ÍCONE CAMPO */

.login-evolution-campo i {
    color: #d10000;

    font-size: 15px;
}


/* INPUT */

.login-evolution-campo input {
    width: 100% !important;

    border: none !important;
    outline: none !important;

    background: transparent !important;

    padding: 0 !important;

    font-size: 14px;

    color: #222 !important;

    box-shadow: none !important;
}

.login-evolution-campo input::placeholder {
    color: #999;
}


/* =========================================================
   BOTÃO
   ========================================================= */

.login-evolution-btn {
    width: 100%;

    min-height: 50px;

    border: none;

    border-radius: 11px;

    margin-top: 9px;

    background:
        linear-gradient(
            135deg,
            #c90000,
            #f11212
        );

    color: #ffffff;

    font-size: 15px;

    font-weight: 800;

    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    box-shadow:
        0 12px 25px rgba(209,0,0,0.25);

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.login-evolution-btn:hover {
    transform: translateY(-2px);

    box-shadow:
        0 16px 30px rgba(209,0,0,0.32);
}

.login-evolution-btn:active {
    transform: translateY(0);
}


/* TEXTO AJUDA */

.login-evolution-form small {
    display: block;

    margin-top: 20px;

    color: #888;

    font-size: 11px;

    line-height: 1.5;

    text-align: center;
}


/* =========================================================
   RESPONSIVO
   ========================================================= */

@media (max-width: 850px) {

    .login-evolution {
        align-items: flex-start;

        padding: 22px;
    }

    .login-evolution-painel {
        grid-template-columns: 1fr;

        max-width: 600px;
    }

    .login-evolution-apresentacao {
        min-height: auto;

        padding: 38px 32px;
    }

    .login-evolution-logo {
        width: 115px !important;
        max-width: 115px !important;

        margin-bottom: 30px !important;
    }

    .login-evolution-apresentacao h1 {
        font-size: 38px;
    }

    .login-evolution-form {
        padding: 40px 32px;
    }
}


@media (max-width: 500px) {

    .login-evolution {
        padding: 12px;
    }

    .login-evolution-painel {
        border-radius: 16px;
    }

    .login-evolution-apresentacao {
        padding: 30px 24px;
    }

    .login-evolution-form {
        padding: 32px 24px;
    }

    .login-evolution-apresentacao h1 {
        font-size: 32px;
    }

}
/* ========================================
   DASHBOARD - RESUMO E INDICADORES
======================================== */

.dashboard-linha {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 20px;
    align-items: stretch;
}

.dashboard-linha > .card {
    min-height: 330px;
    border-radius: 16px;
    padding: 20px;
    background: #ffffff;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
}

.dashboard-linha > .card h2 {
    margin: 0 0 18px 0;
    font-size: 22px;
    color: #252525;
}

/* GRÁFICO */

#graficoDashboard {
    display: block;
    width: 100% !important;
    height: 250px !important;
    max-height: 250px !important;
}

/* INDICADORES */

.indicadores-dashboard {
    display: grid;
    gap: 10px;
}

.indicadores-dashboard .indicador {
    min-height: 46px;
    padding: 10px 15px;
    border-radius: 10px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    background: #f8f9fb;
    border-left: 4px solid #d1d5db;

    box-shadow: none;
}

.indicadores-dashboard .indicador-nome {
    font-size: 14px;
    font-weight: 600;
    color: #4b5563;
}

.indicadores-dashboard .indicador strong {
    font-size: 22px;
    font-weight: 700;
    color: #111827;
}

/* CORES */

.indicadores-dashboard .indicador-total {
    border-left-color: #2563eb;
}

.indicadores-dashboard .indicador-aberto {
    border-left-color: #ff3b30;
}

.indicadores-dashboard .indicador-atendimento {
    border-left-color: #ff9f0a;
}

.indicadores-dashboard .indicador-resolvido {
    border-left-color: #22c55e;
}

.indicadores-dashboard .indicador-pendente {
    border-left-color: #6b7280;
}

/* RESPONSIVO */

@media (max-width: 900px) {
    .dashboard-linha {
        grid-template-columns: 1fr;
    }
}
/* =========================================
   SOLUÇÃO - MANUTENÇÕES GERAIS
========================================= */

#solucaoManutencao {
    margin-top: 16px;
    margin-bottom: 16px;
}

.solucao-manutencao-box {
    background: #fff7f7;
    border: 1px solid #ffd1d1;
    border-left: 4px solid #d60000;
    border-radius: 10px;
    padding: 16px 20px;
}

.solucao-manutencao-titulo {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #d60000;
    font-size: 16px;
    margin-bottom: 8px;
}

.solucao-manutencao-box p {
    margin: 0;
    color: #333;
    line-height: 1.5;
}

.solucao-manutencao-aviso {
    background: #fff7f7;
    border-left: 4px solid #d60000;
    border-radius: 10px;
    padding: 16px 20px;
}

.solucao-manutencao-aviso strong {
    color: #d60000;
}

.solucao-manutencao-aviso p {
    margin: 5px 0 0;
    color: #555;
}
/* =========================================================
   MANUTENÇÕES GERAIS — MESMO VISUAL DO PAINEL RH
   ========================================================= */

.manutencoes-painel {
    width: 100%;
    max-width: none;
    padding: 20px !important;
}

.manutencoes-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
    width: 100%;
    margin-top: 10px;
}

.manutencao-card {
    display: flex !important;
    flex-direction: column;
    min-height: 190px;
    padding: 22px;

    background: #ffffff;
    border: 1px solid #eeeeee;
    border-top: 4px solid #d10000;
    border-radius: 14px;

    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.07);
    cursor: pointer;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

.manutencao-card:hover {
    transform: translateY(-6px);
    border-color: #d10000;

    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.10),
        0 5px 15px rgba(209, 0, 0, 0.10);
}

.manutencao-icone {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 45px;
    height: 45px;
    margin-bottom: 15px;

    background: linear-gradient(135deg, #d10000, #990000);
    color: #ffffff;

    border-radius: 11px;
    font-size: 18px;

    box-shadow: 0 5px 12px rgba(209, 0, 0, 0.20);
}

.manutencao-card h3 {
    margin: 0 0 8px;
    color: #222222;
    font-size: 18px;
    font-weight: 800;
}

.manutencao-card p {
    flex: 1;
    margin: 0 0 18px;

    color: #666666;
    font-size: 14px;
    line-height: 1.5;
}

.manutencao-card span {
    display: inline-flex;
    align-items: center;

    margin-top: auto;
    color: #b00000;

    font-size: 13px;
    font-weight: 700;

    transition:
        color 0.2s ease,
        transform 0.2s ease;
}

.manutencao-card:hover span {
    color: #e00000;
    transform: translateX(4px);
}

/* TABLET */

@media (max-width: 1000px) {
    .manutencoes-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* CELULAR */

@media (max-width: 650px) {
    .manutencoes-grid {
        grid-template-columns: 1fr !important;
    }

    .manutencoes-painel {
        padding: 20px !important;
    }
}
/* =========================================
   EVOLUTION PLANEJAMENTO
========================================= */

.planejamento-pagina {
    max-width: 1560px;
    margin: 20px auto;
    padding: 0 20px 40px;
}

.planejamento-cabecalho {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 30px 34px;
    color: #ffffff;
    border-left: 6px solid #f2b705;
    border-radius: 16px;
    background: linear-gradient(120deg, #111111, #310d10 60%, #9d0808);
    box-shadow: 0 16px 35px rgba(0, 0, 0, 0.15);
}

.planejamento-etiqueta {
    display: block;
    margin-bottom: 10px;
    color: #f2b705;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.planejamento-cabecalho h2 {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 8px;
    font-size: 30px;
}

.planejamento-cabecalho p {
    margin: 0;
    color: rgba(255, 255, 255, 0.82);
}

.planejamento-status {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 11px 17px;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 800;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.1);
}

.planejamento-status span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #2dcc70;
    box-shadow: 0 0 12px #2dcc70;
}

.planejamento-resumo {
    display: grid;
    grid-template-columns: repeat(4, minmax(180px, 1fr));
    gap: 18px;
    margin: 22px 0;
}

.planejamento-resumo article {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 23px;
    border-top: 4px solid #d90000;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 10px 25px rgba(20, 25, 35, 0.08);
}

.planejamento-resumo strong {
    color: #171b24;
    font-size: 31px;
}

.planejamento-resumo span {
    color: #687080;
    font-size: 14px;
}

.planejamento-resumo .prazo-normal {
    border-color: #20a65a;
}

.planejamento-resumo .prazo-proximo {
    border-color: #f0ad00;
}

.planejamento-resumo .prazo-vencido {
    border-color: #d90000;
}

.planejamento-conteudo {
    min-height: 250px;
    padding: 28px;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 10px 28px rgba(20, 25, 35, 0.08);
}

.planejamento-conteudo p {
    margin: 0;
    color: #687080;
}

@media (max-width: 900px) {
    .planejamento-cabecalho {
        align-items: flex-start;
        flex-direction: column;
    }

    .planejamento-resumo {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    .planejamento-resumo {
        grid-template-columns: 1fr;
    }
}
/* EVOLUTION PLANEJAMENTO */

.planejamento-carregando,
.planejamento-sem-resultados {
    padding: 42px 20px;
    text-align: center;
    color: #6b7280;
    font-weight: 600;
}

.planejamento-alerta,
.planejamento-erro {
    margin: 18px 0;
    padding: 15px 18px;
    border-radius: 10px;
    font-weight: 600;
}

.planejamento-alerta {
    color: #854d0e;
    background: #fff7d6;
    border-left: 4px solid #eab308;
}

.planejamento-erro {
    color: #991b1b;
    background: #fff0f0;
    border-left: 4px solid #dc0000;
}

.planejamento-conteudo-topo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.planejamento-etiqueta-vermelha {
    display: inline-block;
    margin-bottom: 6px;
    color: #dc0000;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.planejamento-conteudo h3 {
    margin: 0;
    color: #171717;
    font-size: 25px;
}

.planejamento-filtros {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 220px 220px;
    gap: 12px;
    margin-bottom: 20px;
    padding: 16px;
    background: #f8f9fb;
    border: 1px solid #e1e5eb;
    border-radius: 12px;
}

.planejamento-pesquisa {
    position: relative;
}

.planejamento-pesquisa input,
.planejamento-filtros select {
    width: 100%;
    min-height: 46px;
    padding: 0 14px;
    color: #20242c;
    background: #fff;
    border: 1px solid #d7dce3;
    border-radius: 9px;
    font-size: 14px;
    outline: none;
}

.planejamento-pesquisa input:focus,
.planejamento-filtros select:focus {
    border-color: #dc0000;
    box-shadow: 0 0 0 3px rgba(220, 0, 0, 0.1);
}

.planejamento-tabela-wrapper {
    overflow-x: auto;
    background: #fff;
    border: 1px solid #e1e5eb;
    border-radius: 12px;
}

.planejamento-tabela {
    width: 100%;
    min-width: 1000px;
    border-collapse: collapse;
}

.planejamento-tabela th {
    padding: 14px 16px;
    color: #687080;
    background: #f5f6f8;
    border-bottom: 1px solid #e1e5eb;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
    text-align: left;
    text-transform: uppercase;
}

.planejamento-tabela td {
    padding: 15px 16px;
    color: #252932;
    border-bottom: 1px solid #e8ebef;
    font-size: 13px;
    vertical-align: middle;
}

.planejamento-tabela tbody tr:last-child td {
    border-bottom: none;
}

.planejamento-tabela tbody tr:hover {
    background: #fffafa;
}

.planejamento-area {
    color: #760000;
    font-weight: 800;
}

.planejamento-atividade {
    min-width: 280px;
    font-weight: 600;
    line-height: 1.45;
}

.planejamento-situacao {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 100px;
    padding: 7px 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.status-prazo {
    color: #08783e;
    background: #e7f8ee;
}

.status-proximo {
    color: #8a5a00;
    background: #fff3c7;
}

.status-critico {
    color: #a43c00;
    background: #ffead9;
}

.status-vencido {
    color: #b00000;
    background: #ffe5e5;
}

.status-sem-data {
    color: #596273;
    background: #edf0f4;
}

.planejamento-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 13px;
    color: #fff;
    background: linear-gradient(135deg, #ef1010, #a90000);
    border-radius: 7px;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 6px 14px rgba(220, 0, 0, 0.18);
}

.planejamento-link:hover {
    transform: translateY(-1px);
    filter: brightness(1.05);
}

.planejamento-sem-link {
    color: #9ca3af;
    font-size: 12px;
}

@media (max-width: 1000px) {
    .planejamento-filtros {
        grid-template-columns: 1fr;
    }

    .planejamento-conteudo-topo {
        align-items: flex-start;
        flex-direction: column;
    }
}
/* MELHORIA VISUAL DA TABELA DE PLANEJAMENTO */

.planejamento-tabela-wrapper {
    border: none;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(20, 25, 35, 0.08);
    overflow: auto;
    max-height: 650px;
}

.planejamento-tabela {
    background: #ffffff;
}

.planejamento-tabela thead {
    position: sticky;
    top: 0;
    z-index: 5;
}

.planejamento-tabela th {
    padding: 17px 18px;
    color: #4b5563;
    background: linear-gradient(180deg, #f8f9fb, #f1f3f6);
    border-bottom: 2px solid #e3e6eb;
    font-size: 11px;
    letter-spacing: 1.1px;
    white-space: nowrap;
}

.planejamento-tabela td {
    padding: 17px 18px;
    border-bottom: 1px solid #edf0f3;
    line-height: 1.45;
    text-align: left !important;
}

.planejamento-tabela tbody tr {
    transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

.planejamento-tabela tbody tr:nth-child(even) {
    background: #fcfcfd;
}

.planejamento-tabela tbody tr:hover {
    position: relative;
    background: #fff6f6;
    box-shadow: inset 4px 0 0 #df0000;
}

.planejamento-area {
    display: inline-flex;
    align-items: center;
    padding: 7px 10px;
    color: #9f0000;
    background: #fff0f0;
    border: 1px solid #ffd4d4;
    border-radius: 7px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.4px;
    white-space: nowrap;
}

.planejamento-atividade {
    color: #20232a;
    font-size: 13px;
    font-weight: 700;
    text-align: left !important;
}

.planejamento-tabela td:nth-child(2) {
    color: #596273;
    font-weight: 600;
}

.planejamento-tabela td:nth-child(4),
.planejamento-tabela td:nth-child(5) {
    color: #424956;
    font-weight: 600;
    white-space: nowrap;
}

.planejamento-situacao {
    min-width: auto;
    padding: 8px 12px;
    border: 1px solid transparent;
    box-shadow: none;
}

.status-vencido {
    color: #b50000;
    background: #ffe8e8;
    border-color: #ffcaca;
}

.status-critico {
    color: #a43c00;
    background: #fff0df;
    border-color: #ffd8b2;
}

.status-proximo {
    color: #826000;
    background: #fff7d6;
    border-color: #f4df91;
}

.status-prazo {
    color: #08783e;
    background: #e8f8ef;
    border-color: #bce8cf;
}

.status-sem-data {
    color: #596273;
    background: #eef1f5;
    border-color: #dce1e8;
}

.planejamento-link {
    min-width: 76px;
    padding: 9px 14px;
    border-radius: 8px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.planejamento-link:hover {
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(210, 0, 0, 0.28);
}

.planejamento-sem-link {
    display: block;
    color: #a4aab4;
    font-size: 17px;
    text-align: center;
}

@media (max-width: 1200px) {
    .planejamento-tabela th,
    .planejamento-tabela td {
        padding: 14px 12px;
    }

    .planejamento-atividade {
        min-width: 260px;
    }
}
/* ACABAMENTO CORPORATIVO — EVOLUTION PLANEJAMENTO */

.planejamento-conteudo {
    padding: 30px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-top: 4px solid #d90000;
    border-radius: 16px;
    box-shadow: 0 14px 40px rgba(15, 23, 42, 0.08);
}

.planejamento-conteudo-topo {
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e7e9ed;
}

.planejamento-etiqueta-vermelha {
    margin-bottom: 8px;
    color: #d60000;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 2.2px;
}

.planejamento-conteudo h3 {
    margin-bottom: 5px;
    color: #18202d;
    font-size: 27px;
    font-weight: 800;
    letter-spacing: -0.4px;
}

.planejamento-conteudo-topo p {
    margin: 0;
    color: #697386;
    font-size: 14px;
}

/* Área dos filtros */

.planejamento-filtros {
    display: grid;
    grid-template-columns: minmax(350px, 1fr) 220px 220px;
    gap: 12px;
    margin-bottom: 24px;
    padding: 16px;
    background: #f7f8fa;
    border: 1px solid #e1e5ea;
    border-radius: 12px;
}

.planejamento-pesquisa {
    position: relative;
    display: flex;
    align-items: center;
}

.planejamento-pesquisa i {
    position: absolute;
    left: 16px;
    top: 50%;
    z-index: 2;
    color: #8a93a3;
    font-size: 14px;
    transform: translateY(-50%);
    pointer-events: none;
}

.planejamento-pesquisa input {
    padding-left: 44px !important;
}

.planejamento-pesquisa input,
.planejamento-filtros select {
    height: 48px;
    min-height: 48px;
    color: #293140;
    background: #ffffff;
    border: 1px solid #d5dae2;
    border-radius: 8px;
    font-size: 13px;
    transition: 0.2s ease;
}

.planejamento-pesquisa input:hover,
.planejamento-filtros select:hover {
    border-color: #aeb6c3;
}

.planejamento-pesquisa input:focus,
.planejamento-filtros select:focus {
    border-color: #d90000;
    box-shadow: 0 0 0 3px rgba(217, 0, 0, 0.08);
}

/* Tabela corporativa */

.planejamento-tabela-wrapper {
    max-height: 610px;
    overflow: auto;
    background: #ffffff;
    border: 1px solid #dfe3e8;
    border-radius: 12px;
    box-shadow: none;
}

.planejamento-tabela {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.planejamento-tabela thead {
    position: sticky;
    top: 0;
    z-index: 10;
}

.planejamento-tabela th {
    height: 52px;
    padding: 0 18px;
    color: #596273;
    background: #f3f5f7;
    border-bottom: 1px solid #d9dee5;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1.3px;
    text-align: left;
    text-transform: uppercase;
}

.planejamento-tabela td {
    height: 66px;
    padding: 12px 18px;
    color: #283142;
    background: #ffffff;
    border-bottom: 1px solid #e7eaf0;
    font-size: 12px;
    text-align: left !important;
    vertical-align: middle;
}

.planejamento-tabela tbody tr:nth-child(even) td {
    background: #fafbfc;
}

.planejamento-tabela tbody tr:hover td {
    background: #fff7f7;
}

.planejamento-tabela tbody tr:hover td:first-child {
    box-shadow: inset 3px 0 0 #d90000;
}

.planejamento-tabela tbody tr:last-child td {
    border-bottom: none;
}

/* Informações */

.planejamento-area {
    display: inline-flex;
    align-items: center;
    min-width: 100px;
    justify-content: center;
    padding: 7px 10px;
    color: #a50000;
    background: #fff2f2;
    border: 1px solid #ffcaca;
    border-radius: 6px;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.5px;
}

.planejamento-atividade {
    min-width: 320px;
    color: #171d27;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
}

.planejamento-tabela td:nth-child(2) {
    min-width: 220px;
    color: #4d5869;
    font-weight: 600;
}

.planejamento-tabela td:nth-child(4),
.planejamento-tabela td:nth-child(5) {
    color: #374151;
    font-weight: 700;
    white-space: nowrap;
}

/* Situação */

.planejamento-situacao {
    min-width: 132px;
    padding: 8px 12px;
    border-radius: 7px;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.1px;
    text-align: center;
}

.status-vencido {
    color: #b00000;
    background: #fff0f0;
    border: 1px solid #ffc8c8;
}

.status-critico {
    color: #a64200;
    background: #fff2e7;
    border: 1px solid #ffd3ae;
}

.status-proximo {
    color: #765900;
    background: #fff8df;
    border: 1px solid #f0dda0;
}

.status-prazo {
    color: #087443;
    background: #eaf8f1;
    border: 1px solid #bde8d2;
}

.status-sem-data {
    color: #626b79;
    background: #f0f2f5;
    border: 1px solid #dce1e7;
}

/* Botão de acesso */

.planejamento-link {
    min-width: 78px;
    padding: 9px 14px;
    color: #ffffff;
    background: #d90000;
    border: 1px solid #d90000;
    border-radius: 7px;
    font-size: 11px;
    font-weight: 800;
    box-shadow: 0 5px 12px rgba(217, 0, 0, 0.16);
}

.planejamento-link:hover {
    color: #ffffff;
    background: #ae0000;
    border-color: #ae0000;
    transform: translateY(-1px);
}

.planejamento-sem-link {
    color: #a4aab3;
    font-size: 14px;
    text-align: center;
}

/* Barra de rolagem */

.planejamento-tabela-wrapper::-webkit-scrollbar {
    width: 9px;
    height: 9px;
}

.planejamento-tabela-wrapper::-webkit-scrollbar-track {
    background: #f1f3f5;
}

.planejamento-tabela-wrapper::-webkit-scrollbar-thumb {
    background: #bdc3cc;
    border: 2px solid #f1f3f5;
    border-radius: 10px;
}

.planejamento-tabela-wrapper::-webkit-scrollbar-thumb:hover {
    background: #969eaa;
}

@media (max-width: 1100px) {
    .planejamento-filtros {
        grid-template-columns: 1fr;
    }

    .planejamento-conteudo {
        padding: 20px;
    }
}
/* DIVISÃO PROFISSIONAL POR ÁREA */

.planejamento-grupo-area td {
    height: auto !important;
    padding: 22px 18px 10px !important;
    background: #ffffff !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

.planejamento-grupo-area:first-child td {
    padding-top: 16px !important;
}

.planejamento-grupo-area:hover td {
    background: #ffffff !important;
    box-shadow: none !important;
}

.planejamento-grupo-area span {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #1f2937;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.planejamento-grupo-area span::before {
    width: 5px;
    height: 22px;
    background: linear-gradient(180deg, #ec0000, #920000);
    border-radius: 10px;
    content: "";
}

.planejamento-grupo-area span::after {
    flex: 1;
    height: 1px;
    margin-left: 4px;
    background: linear-gradient(
        90deg,
        #dfe3e8,
        rgba(223, 227, 232, 0)
    );
    content: "";
}

/* Remove a repetição da área dentro das linhas */
.planejamento-grupo-area + tr .planejamento-area {
    margin-top: 0;
}

.planejamento-tabela tbody tr:not(.planejamento-grupo-area)
    td:first-child {
    padding-left: 26px;
}

/* Visual mais suave entre os grupos */
.planejamento-grupo-area:not(:first-child) td {
    border-top: 10px solid #f4f5f7 !important;
}
/* ========================================
   SOLUÇÃO ADOTADA - DETALHE DO CHAMADO
======================================== */

.detalhe-solucao {
    margin-top: 24px;
    padding: 22px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-left: 5px solid #16a34a;
    border-radius: 14px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
}

.detalhe-solucao-titulo {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.detalhe-solucao-icone {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: #16a34a;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.detalhe-solucao-icone i {
    color: #ffffff;
    font-size: 18px;
}

.detalhe-solucao-titulo span {
    display: block;
    margin-bottom: 2px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
    color: #16a34a;
}

.detalhe-solucao-titulo h3 {
    margin: 0;
    font-size: 18px;
    color: #1f2937;
}

.detalhe-solucao-texto {
    padding: 16px 18px;
    background: #f7f7f8;
    border-radius: 10px;
    color: #2f2f2f;
    font-size: 14px;
    line-height: 1.6;
    white-space: pre-wrap;
}

.detalhe-solucao-rodape {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid #ececec;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.detalhe-solucao-rodape span {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #6b7280;
}

.detalhe-solucao-rodape i {
    color: #16a34a;
}

.detalhe-solucao-rodape strong {
    color: #1f2937;
}
/* ========================================
   AUMENTAR LETRAS - EVOLUTION PLANEJAMENTO
======================================== */

.planejamento-tabela {
    font-size: 14px;
}

.planejamento-tabela th {
    font-size: 13px;
}

.planejamento-tabela td {
    font-size: 14px;
}

.planejamento-atividade {
    font-size: 14px;
}

.planejamento-area {
    font-size: 14px;
}

.planejamento-situacao {
    font-size: 13px;
}

.btn-planejamento-editar {
    font-size: 13px;
}
/* ========================================
   DETALHES DA SOLICITAÇÃO - MELHORIA VISUAL
======================================== */

.detalhe-mensagem {
    background: #ffffff;
    border-radius: 16px;
    padding: 28px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06);
}

.detalhe-secao-identificador {
    display: inline-block;
    margin-bottom: 12px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.3px;
    color: #d10000;
}

.detalhe-mensagem h3 {
    margin: 14px 0 8px;
    font-size: 19px;
    color: #1f1f1f;
}

.detalhe-assunto {
    margin: 0 0 22px;
    font-size: 15px;
    font-weight: 500;
    color: #4b5563;
}

.detalhe-descricao {
    margin-top: 10px;
    padding: 22px 24px;

    background: #f9fafb;

    border: 1px solid #e5e7eb;
    border-left: 4px solid #d10000;

    border-radius: 10px;

    color: #1f2937;

    font-size: 15px;
    line-height: 1.7;

    white-space: pre-wrap;

    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);
}
.detalhe-descricao::before {
    content: "Descrição informada pelo solicitante";
    display: block;

    margin-bottom: 18px;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 0.8px;
    text-transform: uppercase;

    color: #d10000;
}
/* MELHORIA VISUAL — DETALHES DA SOLICITAÇÃO */

.detalhe-conteudo-grade > .detalhe-mensagem {
    position: relative;
    padding: 30px;
    overflow: hidden;
    border: 1px solid #e4e8ee;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 8px 30px rgba(15, 23, 42, 0.07);
}

.detalhe-conteudo-grade > .detalhe-mensagem::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    background: linear-gradient(90deg, #d10000, #ff4545);
}

.detalhe-mensagem .detalhe-secao-identificador {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    color: #d10000;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.detalhe-mensagem .detalhe-secao-identificador::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #d10000;
    box-shadow: 0 0 0 4px rgba(209, 0, 0, 0.1);
}

.detalhe-mensagem h3 {
    margin: 22px 0 8px;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.detalhe-mensagem .detalhe-assunto {
    margin: 0;
    padding: 13px 16px;
    border: 1px solid #e4e8ee;
    border-radius: 10px;
    background: #f8fafc;
    color: #172033;
    font-size: 15px;
    font-weight: 600;
}

.detalhe-mensagem .detalhe-descricao {
    position: relative;
    margin-top: 0;
    padding: 22px 24px 22px 28px;
    overflow: hidden;
    border: 1px solid #e4e8ee;
    border-radius: 12px;
    background: #f8fafc;
    color: #334155;
    font-size: 15px;
    line-height: 1.75;
    white-space: pre-wrap;
    box-shadow: none;
}

.detalhe-mensagem .detalhe-descricao::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 4px;
    background: #d10000;
}

@media (max-width: 600px) {
    .detalhe-conteudo-grade > .detalhe-mensagem {
        padding: 22px 18px;
        border-radius: 12px;
    }

    .detalhe-mensagem .detalhe-descricao {
        padding: 18px 18px 18px 22px;
    }
}
/* =========================================================
   ABAS DO MURAL
   ========================================================= */

.mural-abas {
    display: flex;
    align-items: center;
    gap: 8px;

    margin: 22px 0;
    padding: 5px;

    width: fit-content;

    background: #f1f2f4;
    border: 1px solid #e1e2e6;
    border-radius: 12px;
}

.mural-aba {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    min-height: 38px;
    padding: 0 16px;

    color: #6b6d75;
    background: transparent;

    border: 1px solid transparent;
    border-radius: 9px;

    font-size: 12px;
    font-weight: 700;

    cursor: pointer;

    transition:
        color 160ms ease,
        background-color 160ms ease,
        border-color 160ms ease,
        box-shadow 160ms ease;
}

.mural-aba:hover {
    color: #85151c;
    background: rgba(255, 255, 255, 0.7);
}

.mural-aba.ativa {
    color: #981922;
    background: #ffffff;

    border-color: #dedfe3;

    box-shadow:
        0 3px 8px rgba(16, 24, 40, 0.06),
        0 1px 2px rgba(16, 24, 40, 0.04);
}

.mural-aba i {
    font-size: 12px;
}

.mural-aba-conteudo {
    display: none;
}

.mural-aba-conteudo.ativa {
    display: block;
    animation: entradaAbaMural 220ms ease;
}

@keyframes entradaAbaMural {
    from {
        opacity: 0;
        transform: translateY(5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* =========================================================
   ÁREA DE BENEFÍCIOS
   ========================================================= */

.beneficios-area {
    padding: 26px;

    background:
        radial-gradient(
            circle at 95% 0%,
            rgba(159, 23, 33, 0.08),
            transparent 34%
        ),
        #ffffff;

    border: 1px solid #e6e7ea;
    border-radius: 17px;

    box-shadow:
        0 12px 32px rgba(16, 24, 40, 0.05),
        0 2px 6px rgba(16, 24, 40, 0.03);
}

.beneficios-cabecalho {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;

    margin-bottom: 24px;
}

.beneficios-cabecalho > div:first-child > span {
    display: block;
    margin-bottom: 7px;

    color: #9b1720;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.15em;
}

.beneficios-cabecalho h2 {
    margin: 0 0 7px;

    color: #202126;
    font-size: 23px;
    font-weight: 750;
    letter-spacing: -0.035em;
}

.beneficios-cabecalho p {
    max-width: 600px;
    margin: 0;

    color: #74757d;
    font-size: 12px;
    line-height: 1.6;
}

.beneficios-cabecalho-icone {
    flex: 0 0 auto;

    display: grid;
    place-items: center;

    width: 48px;
    height: 48px;

    color: #9b1720;
    background: #fff3f4;

    border: 1px solid #efd7d9;
    border-radius: 14px;

    font-size: 18px;
}

/* Grade dos benefícios */

.beneficios-grade {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(220px, 0.8fr);
    gap: 15px;
}

.beneficio-card {
    position: relative;
    overflow: hidden;

    background: #ffffff;

    border: 1px solid #e6e7eb;
    border-radius: 15px;

    transition:
        transform 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.beneficio-card:hover {
    transform: translateY(-2px);

    border-color: #d4d5da;

    box-shadow:
        0 14px 28px rgba(16, 24, 40, 0.07),
        0 3px 8px rgba(16, 24, 40, 0.04);
}

.beneficio-wellhub::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;

    width: 4px;

    background: linear-gradient(
        to bottom,
        #ff6840,
        #ec2b58,
        #8e41bd
    );
}

/* Cabeçalho do Wellhub */

.beneficio-topo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;

    padding: 19px 21px 16px;

    border-bottom: 1px solid #eeeeF1;
}

.wellhub-marca {
    display: flex;
    align-items: center;
    gap: 11px;
}

.wellhub-simbolo {
    display: grid;
    place-items: center;
    position: relative;
    overflow: hidden;

    width: 42px;
    height: 42px;

    color: #ffffff;

    background: linear-gradient(
        145deg,
        #ff6840,
        #ec2b58 55%,
        #8e41bd
    );

    border-radius: 12px;

    box-shadow: 0 8px 18px rgba(224, 42, 91, 0.2);

    font-size: 19px;
    font-weight: 850;
}

/* ACABAMENTO DE LANÇAMENTO — ACESSIBILIDADE E CONFORTO */

:where(button, a, input, select, textarea):focus-visible {
    outline: 3px solid rgba(15, 96, 190, 0.72);
    outline-offset: 3px;
}

.login-evolution-campo .login-evolution-ver-senha {
    position: relative;
    z-index: 1;
    display: inline-grid;
    place-items: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    margin-right: 5px;
    color: #777981;
    background: transparent;
    border: 0;
    border-radius: 9px;
    cursor: pointer;
}

.login-evolution-campo .login-evolution-ver-senha:hover {
    color: #a80008;
    background: #fff0f1;
}

.login-evolution-campo .login-evolution-ver-senha i {
    color: inherit;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* AGENDA DE RAMAIS */

.tabela-ramais-wrapper {
    width: 100%;
    overflow-x: auto;
    border-radius: 12px;
}

.tabela-ramais {
    min-width: 760px;
}

.tabela-ramais th:nth-child(3),
.tabela-ramais td:nth-child(3) {
    white-space: nowrap;
}

.ramal-email {
    color: #a80008;
    font-weight: 700;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.ramal-email:hover {
    color: #740006;
    text-decoration: underline;
}

/* ABA — MATERIAIS DE ESCRITÓRIO */

.materiais-pagina {
    width: min(100%, 1390px);
    margin: 0 auto;
}

.materiais-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 32px 35px;
    color: #ffffff;
    background:
        radial-gradient(circle at 90% 20%, rgba(255, 255, 255, 0.14), transparent 26%),
        linear-gradient(135deg, #250002 0%, #7d0006 64%, #d10000 100%);
    border-radius: 20px;
    box-shadow: 0 18px 38px rgba(80, 0, 4, 0.2);
}

.materiais-hero span {
    display: block;
    margin-bottom: 8px;
    color: #ffc7ca;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1.8px;
}

.materiais-hero h2 {
    margin: 0 0 9px;
    color: #ffffff;
    font-size: clamp(28px, 3vw, 40px);
}

.materiais-hero p {
    max-width: 720px;
    margin: 0;
    color: #f5dfe0;
    font-size: 14px;
    line-height: 1.6;
}

.materiais-hero-icone {
    display: grid;
    place-items: center;
    flex: 0 0 78px;
    width: 78px;
    height: 78px;
    color: #a60008;
    background: #ffffff;
    border-radius: 20px;
    font-size: 31px;
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.2);
}

.materiais-aviso {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 22px 0;
    padding: 16px 18px;
    color: #5f4600;
    background: #fff9df;
    border: 1px solid #f0df9d;
    border-radius: 12px;
}

.materiais-aviso i {
    margin-top: 2px;
    color: #b28200;
}

.materiais-aviso p {
    margin: 0;
    font-size: 13px;
    line-height: 1.55;
}

.materiais-grade {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.material-card {
    display: flex;
    flex-direction: column;
    min-height: 235px;
    padding: 24px;
    background: #ffffff;
    border: 1px solid #e6e6ea;
    border-top: 4px solid #c90009;
    border-radius: 16px;
    box-shadow: 0 9px 24px rgba(25, 25, 30, 0.07);
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.material-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 31px rgba(110, 0, 6, 0.12);
}

.material-card-icone {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    margin-bottom: 17px;
    color: #ffffff;
    background: linear-gradient(135deg, #d10000, #8e0007);
    border-radius: 13px;
    font-size: 19px;
}

.material-card h3 {
    margin: 0 0 8px;
    color: #22252b;
    font-size: 18px;
}

.material-card p {
    flex: 1;
    margin: 0 0 20px;
    color: #686b73;
    font-size: 13px;
    line-height: 1.55;
}

.material-card button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 42px;
    color: #ffffff;
    background: #a80008;
    border: 0;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.material-card button:hover {
    background: #790006;
}

.materiais-nao-encontrou {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 22px;
    padding: 22px 24px;
    color: #ffffff;
    background: linear-gradient(120deg, #2b080b 0%, #700008 58%, #b00009 100%);
    border-radius: 16px;
    box-shadow: 0 12px 28px rgba(95, 0, 6, 0.18);
}

.materiais-nao-encontrou-icone {
    display: grid;
    place-items: center;
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
    color: #a80008;
    background: #ffffff;
    border-radius: 13px;
    font-size: 20px;
}

.materiais-nao-encontrou-texto {
    flex: 1;
}

.materiais-nao-encontrou h3 {
    margin: 0 0 5px;
    font-size: 17px;
}

.materiais-nao-encontrou p {
    margin: 0;
    color: rgba(255, 255, 255, 0.82);
    font-size: 13px;
    line-height: 1.5;
}

.materiais-nao-encontrou button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 0 20px;
    color: #8c0007;
    background: #ffffff;
    border: 0;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
    cursor: pointer;
}

.materiais-nao-encontrou button:hover {
    background: #fff0f1;
}

@media (max-width: 900px) {
    .materiais-grade {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .materiais-hero {
        align-items: flex-start;
        padding: 26px 22px;
    }

    .materiais-hero-icone {
        display: none;
    }

    .materiais-grade {
        grid-template-columns: 1fr;
    }

    .materiais-nao-encontrou {
        align-items: flex-start;
        flex-wrap: wrap;
        padding: 20px;
    }

    .materiais-nao-encontrou-texto {
        min-width: calc(100% - 68px);
    }

    .materiais-nao-encontrou button {
        width: 100%;
    }
}

/* PLANEJAMENTO — TABELA COMPLETA SEM ROLAGEM HORIZONTAL */

/* =====================================================
   ESTOQUE ADMINISTRATIVO
===================================================== */

.estoque-pagina { max-width: 1440px; margin: 0 auto; padding: 4px 0 34px; color: #202229; }
.estoque-hero { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 30px 34px; color: #fff; background: linear-gradient(120deg, #210609 0%, #650008 58%, #bc000a 100%); border-radius: 18px; box-shadow: 0 18px 42px rgba(94, 0, 7, .2); overflow: hidden; position: relative; }
.estoque-hero::after { content: ""; position: absolute; right: -70px; top: -120px; width: 300px; height: 300px; border: 46px solid rgba(255,255,255,.07); border-radius: 50%; }
.estoque-hero > * { position: relative; z-index: 1; }
.estoque-hero span, .estoque-secao-titulo span, .estoque-card-cabecalho > div > span, .estoque-dialogo-topo span { display: block; margin-bottom: 7px; color: #ffb8bd; font-size: 10px; font-weight: 900; letter-spacing: 1.5px; }
.estoque-hero h2 { margin: 0 0 8px; font-size: 30px; }
.estoque-hero p { margin: 0; color: rgba(255,255,255,.78); font-size: 13px; }
.estoque-hero-acoes { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.estoque-hero-acoes button { min-height: 44px; padding: 0 18px; color: #8d0007; background: #fff; border: 0; border-radius: 10px; font-size: 12px; font-weight: 850; cursor: pointer; }
.estoque-hero-acoes button.secundario { color: #fff; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.35); }
.estoque-hero-acoes i { margin-right: 7px; }
.estoque-navegacao { display: inline-flex; gap: 5px; margin: 20px 0; padding: 5px; background: #eceef2; border: 1px solid #e0e2e7; border-radius: 12px; }
.estoque-navegacao button { min-height: 40px; padding: 0 17px; color: #62656d; background: transparent; border: 0; border-radius: 8px; font-size: 12px; font-weight: 800; cursor: pointer; }
.estoque-navegacao button.ativo { color: #fff; background: #a90008; box-shadow: 0 5px 12px rgba(140,0,7,.22); }
.estoque-navegacao i { margin-right: 7px; }
.estoque-kpis { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 15px; margin-bottom: 18px; }
.estoque-kpis article, .estoque-mov-resumo article { display: flex; align-items: center; gap: 14px; padding: 20px; background: #fff; border: 1px solid #e6e7eb; border-radius: 14px; box-shadow: 0 8px 22px rgba(25,28,35,.06); }
.estoque-kpis article > i, .estoque-mov-resumo article > i { display: grid; place-items: center; flex: 0 0 45px; width: 45px; height: 45px; color: #a80008; background: #fff0f1; border-radius: 12px; font-size: 18px; }
.estoque-kpis article.alerta > i { color: #b06400; background: #fff5df; }
.estoque-kpis span, .estoque-mov-resumo span { display: block; margin-bottom: 4px; color: #777b84; font-size: 11px; }
.estoque-kpis strong, .estoque-mov-resumo strong { color: #22252c; font-size: 22px; }
.estoque-tabela-card, .estoque-mov-form { background: #fff; border: 1px solid #e4e5e9; border-radius: 16px; box-shadow: 0 10px 28px rgba(24,27,34,.07); overflow: hidden; }
.estoque-filtros, .estoque-card-cabecalho { display: flex; align-items: center; gap: 12px; padding: 17px; background: #f8f9fb; border-bottom: 1px solid #e8e9ed; }
.estoque-busca { display: flex; align-items: center; flex: 1; min-height: 43px; padding: 0 14px; background: #fff; border: 1px solid #d9dce3; border-radius: 9px; }
.estoque-busca i { margin-right: 10px; color: #89909c; }
.estoque-busca input { width: 100%; border: 0; outline: 0; color: #2a2d34; background: transparent; font-size: 12px; }
.estoque-filtros select { min-width: 185px; min-height: 43px; padding: 0 12px; color: #3e424b; background: #fff; border: 1px solid #d9dce3; border-radius: 9px; font-size: 12px; }
.estoque-tabela-wrapper { width: 100%; overflow-x: auto; }
.estoque-tabela { width: 100%; border-collapse: collapse; font-size: 12px; }
.estoque-tabela th { padding: 14px 15px; color: #686c76; background: #fff; border-bottom: 1px solid #e7e8ec; text-align: left; font-size: 10px; letter-spacing: .6px; text-transform: uppercase; white-space: nowrap; }
.estoque-tabela td { padding: 13px 15px; border-bottom: 1px solid #eeeeF1; vertical-align: middle; }
.estoque-tabela tbody tr:hover { background: #fffafb; }
.estoque-tabela td small { display: block; margin-top: 4px; color: #8a8e97; font-size: 10px; }
.estoque-tabela .numero { text-align: right; white-space: nowrap; }

/* Alinhamento consistente entre cabeçalho e conteúdo do estoque */
.estoque-tabela:not(.estoque-tabela-mov) { table-layout: fixed; }
.estoque-tabela:not(.estoque-tabela-mov) th:nth-child(1),
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(1) { width: 24%; text-align: left; }
.estoque-tabela:not(.estoque-tabela-mov) th:nth-child(2),
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(2) { width: 18%; text-align: left; }
.estoque-tabela:not(.estoque-tabela-mov) th:nth-child(3),
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(3) { width: 10%; text-align: left; }
.estoque-tabela:not(.estoque-tabela-mov) th:nth-child(4),
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(4),
.estoque-tabela:not(.estoque-tabela-mov) th:nth-child(5),
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(5),
.estoque-tabela:not(.estoque-tabela-mov) th:nth-child(6),
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(6) { width: 8%; text-align: right; }
.estoque-tabela:not(.estoque-tabela-mov) th:nth-child(7),
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(7) { width: 13%; text-align: center; }
.estoque-tabela:not(.estoque-tabela-mov) th:nth-child(8),
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(8) { width: 5%; text-align: center; }
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(1),
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(2) { overflow-wrap: anywhere; }
.estoque-tabela:not(.estoque-tabela-mov) td:nth-child(8) .estoque-btn-icone { margin: 0 auto; }
.estoque-status, .estoque-tipo { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border-radius: 999px; font-size: 10px; font-weight: 850; white-space: nowrap; }
.estoque-status i { width: 7px; height: 7px; border-radius: 50%; }
.estoque-status.normal { color: #147747; background: #eaf8f0; }.estoque-status.normal i { background: #20a968; }
.estoque-status.baixo { color: #9b5c00; background: #fff4dc; }.estoque-status.baixo i { background: #e79a21; }
.estoque-status.zerado { color: #aa0c16; background: #ffebed; }.estoque-status.zerado i { background: #cf1f2b; }
.estoque-btn-icone { display: grid; place-items: center; width: 33px; height: 33px; color: #9f0008; background: #fff1f2; border: 1px solid #f4d4d7; border-radius: 8px; cursor: pointer; }
.estoque-rodape-tabela { padding: 12px 17px; color: #858892; background: #fafbfc; font-size: 10px; }
.estoque-vazio { padding: 42px !important; color: #858892; text-align: center; }
.estoque-carregando, .estoque-erro { display: grid; place-items: center; min-height: 440px; padding: 40px; text-align: center; background: #fff; border: 1px solid #e5e6ea; border-radius: 18px; }
.estoque-carregando i, .estoque-erro > i { color: #aa0008; font-size: 32px; }.estoque-carregando h2, .estoque-erro h2 { margin: 14px 0 5px; }.estoque-carregando p, .estoque-erro p { margin: 0; color: #777b84; font-size: 13px; }
.estoque-erro button { margin-top: 18px; padding: 12px 18px; color: #fff; background: #a80008; border: 0; border-radius: 9px; font-weight: 800; cursor: pointer; }
.estoque-dialogo { width: min(680px, calc(100% - 28px)); padding: 0; border: 0; border-radius: 17px; box-shadow: 0 25px 80px rgba(0,0,0,.28); }
.estoque-dialogo::backdrop { background: rgba(18,20,25,.58); backdrop-filter: blur(3px); }
.estoque-dialogo form { padding: 24px; }
.estoque-dialogo-topo { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }.estoque-dialogo-topo span { color: #b00009; }.estoque-dialogo-topo h3 { margin: 0; font-size: 21px; }.estoque-dialogo-topo > button { width: 35px; height: 35px; color: #70737b; background: #f2f3f5; border: 0; border-radius: 8px; cursor: pointer; }
.estoque-form-grade { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }.estoque-form-grade .campo-largo { grid-column: 1/-1; }
.estoque-dialogo label, .estoque-mov-form label { display: flex; flex-direction: column; gap: 6px; color: #555963; font-size: 11px; font-weight: 750; }
.estoque-dialogo input, .estoque-dialogo select, .estoque-mov-form input, .estoque-mov-form select, .estoque-mov-form textarea { width: 100%; min-height: 42px; padding: 10px 11px; color: #24272e; background: #fff; border: 1px solid #d9dce2; border-radius: 8px; outline: 0; font: inherit; box-sizing: border-box; }
.estoque-dialogo input:focus, .estoque-dialogo select:focus, .estoque-mov-form input:focus, .estoque-mov-form select:focus, .estoque-mov-form textarea:focus { border-color: #ba1119; box-shadow: 0 0 0 3px rgba(186,17,25,.09); }
.estoque-dialogo-acoes { display: flex; justify-content: flex-end; gap: 10px; margin-top: 22px; }.estoque-dialogo-acoes button { min-height: 42px; padding: 0 17px; color: #fff; background: #a80008; border: 0; border-radius: 9px; font-size: 11px; font-weight: 850; cursor: pointer; }.estoque-dialogo-acoes button.cancelar { color: #555962; background: #eef0f3; }
.estoque-dialogo-nota { margin: 15px 0 0; padding: 11px 13px; color: #64520b; background: #fff8dc; border-radius: 8px; font-size: 10px; }
.estoque-mov-layout { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 18px; margin-bottom: 18px; }
.estoque-mov-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; padding: 22px; overflow: visible; }
.estoque-mov-form > label:nth-of-type(2), .estoque-mov-form > label:nth-of-type(5), .estoque-mov-form > label:last-of-type, .estoque-secao-titulo, .estoque-salvar-mov { grid-column: 1/-1; }
.estoque-secao-titulo { display: flex; align-items: center; justify-content: space-between; }.estoque-secao-titulo h3, .estoque-card-cabecalho h3 { margin: 0; font-size: 19px; }.estoque-secao-titulo > i { color: #af0009; font-size: 22px; }
.estoque-form-duplo { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.estoque-mov-form textarea { resize: vertical; min-height: 76px; }
.estoque-salvar-mov { min-height: 45px; color: #fff; background: #a80008; border: 0; border-radius: 9px; font-size: 12px; font-weight: 850; cursor: pointer; }
.estoque-mov-resumo { display: grid; align-content: start; gap: 12px; }.estoque-mov-resumo article.entrada > i { color: #168453; background: #e8f8ef; }.estoque-mov-resumo article.saida > i { color: #b4232d; background: #ffebed; }
.estoque-card-cabecalho { justify-content: space-between; }.estoque-card-cabecalho .estoque-busca { max-width: 390px; }
.estoque-tipo.entrada { color: #147747; background: #eaf8f0; }.estoque-tipo.saida { color: #a9151e; background: #ffebed; }
.estoque-historico-card { margin-bottom: 20px; }

@media (max-width: 1050px) { .estoque-kpis { grid-template-columns: repeat(2,1fr); }.estoque-mov-layout { grid-template-columns: 1fr; }.estoque-mov-resumo { grid-template-columns: repeat(3,1fr); } }
@media (max-width: 720px) { .estoque-hero { align-items: flex-start; flex-direction: column; padding: 25px 21px; }.estoque-hero-acoes, .estoque-hero-acoes button { width: 100%; }.estoque-kpis, .estoque-mov-resumo { grid-template-columns: 1fr; }.estoque-navegacao { display: flex; width: 100%; box-sizing: border-box; }.estoque-navegacao button { flex: 1; padding: 0 9px; }.estoque-filtros, .estoque-card-cabecalho { align-items: stretch; flex-direction: column; }.estoque-filtros select, .estoque-card-cabecalho .estoque-busca { width: 100%; max-width: none; }.estoque-form-grade, .estoque-mov-form { grid-template-columns: 1fr; }.estoque-form-grade .campo-largo, .estoque-mov-form > * { grid-column: 1 !important; }.estoque-form-duplo { grid-template-columns: 1fr; }.estoque-dialogo-acoes button { flex: 1; } }

.planejamento-tabela-wrapper {
    overflow-x: hidden;
    overflow-y: auto;
}

.planejamento-tabela {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
}

.planejamento-tabela th,
.planejamento-tabela td {
    min-width: 0 !important;
    padding-right: 10px;
    padding-left: 10px;
    overflow-wrap: anywhere;
}

.planejamento-tabela th:nth-child(1) { width: 13%; }
.planejamento-tabela th:nth-child(2) { width: 18%; }
.planejamento-tabela th:nth-child(3) { width: 28%; }
.planejamento-tabela th:nth-child(4) { width: 10%; }
.planejamento-tabela th:nth-child(5) { width: 9%; }
.planejamento-tabela th:nth-child(6) { width: 14%; }
.planejamento-tabela th:nth-child(7) { width: 8%; }

.planejamento-area,
.planejamento-atividade,
.planejamento-tabela td:nth-child(2) {
    min-width: 0 !important;
    max-width: 100%;
    white-space: normal;
}

.planejamento-tabela td:nth-child(4),
.planejamento-tabela td:nth-child(5) {
    white-space: normal;
}

.btn-planejamento-editar {
    max-width: 100%;
    white-space: nowrap;
}

.planejamento-situacao {
    display: grid;
    width: 100%;
    min-width: 0;
    max-width: 150px;
    min-height: 36px;
    margin: 0 auto;
    padding: 7px 8px;
    place-items: center;
    border-radius: 8px;
    font-size: 10px;
    line-height: 1.25;
    text-align: center;
    white-space: normal;
}

@media (max-width: 1050px) {
    .planejamento-tabela th,
    .planejamento-tabela td {
        padding-right: 7px;
        padding-left: 7px;
        font-size: 11px;
    }

    .planejamento-area,
    .planejamento-situacao,
    .btn-planejamento-editar {
        padding-right: 7px;
        padding-left: 7px;
        font-size: 10px;
    }
}

.wellhub-simbolo img {
    position: absolute;
    top: -12px;
    left: -24px;
    width: 96px;
    height: auto;
    max-width: none;
    display: block;
}

.wellhub-marca strong,
.wellhub-marca small {
    display: block;
}

.wellhub-marca strong {
    color: #25262b;
    font-size: 15px;
}

.wellhub-marca small {
    margin-top: 3px;

    color: #85868d;
    font-size: 10px;
}

.beneficio-disponivel {
    display: inline-flex;
    align-items: center;
    gap: 6px;

    padding: 6px 9px;

    color: #19774d;
    background: #edf9f3;

    border: 1px solid #cee9db;
    border-radius: 999px;

    font-size: 9px;
    font-weight: 750;
}

.beneficio-disponivel::before {
    content: "";

    width: 6px;
    height: 6px;

    background: #28a86e;
    border-radius: 50%;

    box-shadow: 0 0 0 3px rgba(40, 168, 110, 0.12);
}

/* Conteúdo do cartão */

.beneficio-conteudo {
    padding: 19px 21px;
}

.beneficio-categoria {
    color: #9c1a22;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.13em;
}

.beneficio-conteudo h3 {
    margin: 7px 0;

    color: #25262b;
    font-size: 17px;
    letter-spacing: -0.02em;
}

.beneficio-conteudo > p {
    max-width: 650px;
    margin: 0;

    color: #6f7078;
    font-size: 11px;
    line-height: 1.65;
}

.beneficio-conteudo ul {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 18px;

    margin: 16px 0 0;
    padding: 0;

    list-style: none;
}

.beneficio-conteudo li {
    display: flex;
    align-items: center;
    gap: 6px;

    color: #585960;
    font-size: 10px;
}

.beneficio-conteudo li i {
    color: #9b1720;
}

/* Rodapé do cartão */

.beneficio-rodape {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;

    padding: 14px 21px;

    background: #fafafa;
    border-top: 1px solid #eeeeF1;
}

.beneficio-rodape strong,
.beneficio-rodape small {
    display: block;
}

.beneficio-rodape strong {
    color: #4b4c53;
    font-size: 9px;
}

.beneficio-rodape small {
    margin-top: 3px;

    color: #909198;
    font-size: 8px;
}

.beneficio-botao {
    flex: 0 0 auto;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;

    min-height: 37px;
    padding: 0 14px;

    color: #ffffff;
    background: #981922;

    border: 1px solid #981922;
    border-radius: 9px;

    box-shadow: 0 6px 14px rgba(152, 25, 34, 0.16);

    font-size: 10px;
    font-weight: 700;
    text-decoration: none;

    transition:
        background-color 160ms ease,
        transform 160ms ease;
}

.beneficio-botao:hover {
    color: #ffffff;
    background: #7e1118;

    transform: translateY(-1px);
}

/* Benefícios futuros */

.beneficio-futuro {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    min-height: 245px;
    padding: 24px;

    background: linear-gradient(
        145deg,
        #fbfbfc,
        #f5f5f7
    );

    border-style: dashed;
}

.beneficio-futuro-icone {
    flex: 0 0 auto;

    display: grid;
    place-items: center;

    width: 41px;
    height: 41px;

    color: #999aa1;
    background: #ffffff;

    border: 1px solid #dedfe3;
    border-radius: 12px;
}

.beneficio-futuro span {
    color: #9b1720;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.beneficio-futuro h3 {
    margin: 5px 0;

    color: #414249;
    font-size: 14px;
}

.beneficio-futuro p {
    max-width: 220px;
    margin: 0;

    color: #85868e;
    font-size: 10px;
    line-height: 1.55;
}

/* Responsividade */

@media (max-width: 850px) {
    .beneficios-grade {
        grid-template-columns: 1fr;
    }

    .beneficio-futuro {
        min-height: 145px;
        justify-content: flex-start;
    }
}

@media (max-width: 600px) {
    .mural-abas {
        width: 100%;
    }

    .mural-aba {
        flex: 1;
        padding: 0 10px;
    }

    .beneficios-area {
        padding: 20px 16px;
    }

    .beneficios-cabecalho-icone {
        display: none;
    }

    .beneficio-topo,
    .beneficio-conteudo,
    .beneficio-rodape {
        padding-right: 16px;
        padding-left: 16px;
    }

    .beneficio-rodape {
        align-items: stretch;
        flex-direction: column;
    }

    .beneficio-botao {
        width: 100%;
    }

    .beneficio-conteudo ul {
        align-items: flex-start;
        flex-direction: column;
    }
}
/* =========================================================
   REFINAMENTO PROFISSIONAL — BENEFÍCIOS
   Cole este bloco no FINAL do style.css
   ========================================================= */

.beneficios-area {
    position: relative;
    overflow: hidden;

    padding: 32px;

    background:
        radial-gradient(
            circle at 92% 0%,
            rgba(155, 23, 32, 0.075),
            transparent 31%
        ),
        linear-gradient(
            145deg,
            #ffffff 0%,
            #fdfdfd 70%,
            #faf7f8 100%
        );

    border: 1px solid #e6e7eb;
    border-radius: 20px;

    box-shadow:
        0 18px 45px rgba(16, 24, 40, 0.07),
        0 3px 10px rgba(16, 24, 40, 0.03);
}

/* Cabeçalho */

.beneficios-cabecalho {
    align-items: center;
    margin-bottom: 28px;
}

.beneficios-cabecalho > div:first-child > span {
    margin-bottom: 9px;

    color: #a61922;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.17em;
}

.beneficios-cabecalho h2 {
    margin-bottom: 8px;

    color: #17181c;
    font-size: 27px;
    font-weight: 780;
    line-height: 1.15;
}

.beneficios-cabecalho p {
    max-width: 680px;

    color: #6c6e76;
    font-size: 13px;
}

.beneficios-cabecalho-icone {
    width: 54px;
    height: 54px;

    color: #a61922;
    background: linear-gradient(145deg, #fff8f8, #fff0f1);

    border-color: #efd6d8;
    border-radius: 16px;

    box-shadow:
        0 10px 24px rgba(166, 25, 34, 0.08),
        inset 0 1px 0 #ffffff;

    font-size: 20px;
}

/* Organização dos cartões */

.beneficios-grade {
    align-items: stretch;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 18px;
}

/* Cartão principal do Wellhub */

.beneficio-wellhub {
    overflow: hidden;

    border: 1px solid #dedfe4;
    border-radius: 18px;

    box-shadow:
        0 14px 34px rgba(16, 24, 40, 0.08),
        0 3px 8px rgba(16, 24, 40, 0.04);
}

.beneficio-wellhub::before {
    inset: 0 0 auto;
    width: auto;
    height: 4px;

    background: linear-gradient(
        90deg,
        #ff6840 0%,
        #ed2d5a 48%,
        #8c3fba 100%
    );
}

.beneficio-wellhub:hover {
    transform: translateY(-3px);

    border-color: #d3d4da;

    box-shadow:
        0 20px 42px rgba(16, 24, 40, 0.11),
        0 5px 12px rgba(16, 24, 40, 0.05);
}

/* Parte superior do cartão */

.beneficio-topo {
    min-height: 76px;
    padding: 20px 24px 17px;

    background:
        linear-gradient(
            90deg,
            rgba(255, 104, 64, 0.035),
            rgba(142, 65, 189, 0.025)
        );

    border-bottom-color: #ebebef;
}

.wellhub-marca {
    gap: 13px;
}

.wellhub-simbolo {
    width: 48px;
    height: 48px;

    border-radius: 15px;

    box-shadow:
        0 10px 22px rgba(224, 42, 91, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.25);

    font-size: 21px;
}

.wellhub-marca strong {
    color: #1e1f24;
    font-size: 17px;
    font-weight: 780;
}

.wellhub-marca small {
    color: #777981;
    font-size: 11px;
}

.beneficio-disponivel {
    padding: 7px 11px;

    color: #16754a;
    background: #ecfaf3;

    border-color: #caebda;

    font-size: 10px;
}

/* Conteúdo principal */

.beneficio-conteudo {
    padding: 24px;
}

.beneficio-categoria {
    font-size: 9px;
    letter-spacing: 0.15em;
}

.beneficio-conteudo h3 {
    margin: 8px 0;

    color: #1e1f23;
    font-size: 20px;
    font-weight: 760;
}

.beneficio-conteudo > p {
    max-width: 720px;

    color: #65676f;
    font-size: 12px;
    line-height: 1.7;
}

.beneficio-conteudo ul {
    gap: 10px 22px;
    margin-top: 19px;
}

.beneficio-conteudo li {
    gap: 8px;

    color: #52545c;
    font-size: 11px;
}

.beneficio-conteudo li i {
    display: grid;
    place-items: center;

    width: 18px;
    height: 18px;

    color: #ffffff;
    background: #a61922;

    border-radius: 50%;

    font-size: 8px;
}

/* Rodapé do cartão */

.beneficio-rodape {
    min-height: 68px;
    padding: 15px 24px;

    background: #fafafb;
    border-top-color: #ebebef;
}

.beneficio-rodape strong {
    color: #3e4047;
    font-size: 10px;
}

.beneficio-rodape small {
    color: #85878f;
    font-size: 9px;
}

.beneficio-botao {
    min-height: 42px;
    padding: 0 17px;

    background: linear-gradient(135deg, #a61922, #861118);

    border: 0;
    border-radius: 11px;

    box-shadow:
        0 9px 20px rgba(152, 25, 34, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.12);

    font-size: 11px;
}

.beneficio-botao:hover {
    background: linear-gradient(135deg, #8d121a, #700c12);

    transform: translateY(-2px);

    box-shadow:
        0 12px 24px rgba(152, 25, 34, 0.25);
}

/* Cartão de benefícios futuros */

.beneficio-futuro {
    align-items: flex-start;
    justify-content: flex-end;
    flex-direction: column;

    min-height: auto;
    padding: 25px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(166, 25, 34, 0.07),
            transparent 45%
        ),
        linear-gradient(145deg, #fafafb, #f4f4f6);

    border-color: #dcdde2;
    border-radius: 18px;
}

.beneficio-futuro::before {
    content: "EM BREVE";
    position: absolute;
    top: 20px;
    right: 20px;

    color: #9a9ba2;

    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.14em;
}

.beneficio-futuro-icone {
    width: 47px;
    height: 47px;
    margin-bottom: 5px;

    color: #a61922;
    background: #ffffff;

    border-color: #dedfe3;
    border-radius: 14px;

    box-shadow:
        0 9px 20px rgba(16, 24, 40, 0.06),
        inset 0 1px 0 #ffffff;

    font-size: 14px;
}

.beneficio-futuro span {
    display: block;
    margin-top: 10px;

    font-size: 9px;
}

.beneficio-futuro h3 {
    margin: 7px 0;

    color: #292a30;
    font-size: 17px;
    font-weight: 740;
}

.beneficio-futuro p {
    color: #73757d;
    font-size: 11px;
    line-height: 1.6;
}

/* Telas menores */

@media (max-width: 950px) {
    .beneficios-grade {
        grid-template-columns: 1fr;
    }

    .beneficio-futuro {
        min-height: 180px;
    }
}

@media (max-width: 600px) {
    .beneficios-area {
        padding: 22px 17px;
        border-radius: 16px;
    }

    .beneficios-cabecalho h2 {
        font-size: 23px;
    }

    .beneficio-topo {
        align-items: flex-start;
    }

    .beneficio-disponivel {
        padding: 6px 8px;
        font-size: 9px;
    }

    .beneficio-topo,
    .beneficio-conteudo,
    .beneficio-rodape {
        padding-right: 17px;
        padding-left: 17px;
    }

    .beneficio-conteudo h3 {
        font-size: 18px;
    }
}
/* =========================================================
   REFINAMENTO PROFISSIONAL — ABAS DO MURAL
   ========================================================= */

.mural-abas {
    position: relative;

    display: inline-flex;
    align-items: center;
    gap: 5px;

    width: auto;
    margin: 22px 0 26px;
    padding: 5px;

    background: rgba(242, 243, 245, 0.9);

    border: 1px solid #e0e1e5;
    border-radius: 14px;

    box-shadow:
        0 8px 22px rgba(16, 24, 40, 0.06),
        inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.mural-aba {
    position: relative;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-width: 126px;
    min-height: 43px;
    padding: 0 17px;

    color: #666870;
    background: transparent;

    border: 1px solid transparent;
    border-radius: 10px;

    box-shadow: none;

    font-size: 12px;
    font-weight: 700;
    line-height: 1;

    cursor: pointer;

    transition:
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease,
        transform 180ms ease;
}

.mural-aba i {
    color: #777981;
    font-size: 13px;

    transition:
        color 180ms ease,
        transform 180ms ease;
}

/* Efeito ao passar o mouse */

.mural-aba:hover {
    color: #8f151e;
    background: rgba(255, 255, 255, 0.72);

    transform: translateY(-1px);
}

.mural-aba:hover i {
    color: #a61922;
    transform: scale(1.05);
}

/* Aba selecionada */

.mural-aba.ativa {
    color: #ffffff;

    background: linear-gradient(
        135deg,
        #a91c26 0%,
        #891119 100%
    );

    border-color: rgba(117, 10, 18, 0.25);

    box-shadow:
        0 7px 16px rgba(145, 20, 29, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.16);

    transform: none;
}

.mural-aba.ativa i {
    color: #ffffff;
}

/* Pequeno detalhe luminoso da aba selecionada */

.mural-aba.ativa::after {
    content: "";
    position: absolute;
    right: 12px;
    bottom: 6px;
    left: 12px;

    height: 1px;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.45),
        transparent
    );
}

/* Acessibilidade pelo teclado */

.mural-aba:focus-visible {
    outline: 3px solid rgba(166, 25, 34, 0.18);
    outline-offset: 3px;
}

/* Celular */

@media (max-width: 600px) {
    .mural-abas {
        display: grid;
        grid-template-columns: 1fr 1fr;

        width: 100%;
    }

    .mural-aba {
        width: 100%;
        min-width: 0;
        padding: 0 12px;
    }
}

/* =========================================================
   PAINEL ADMINISTRATIVO DO MURAL — VISUAL PROFISSIONAL
   ========================================================= */

.mural-admin {
    width: min(1390px, calc(100% - 40px));
    margin: 0 auto;
}

/* Cabeçalho */

.mural-admin-cabecalho {
    position: relative;
    overflow: hidden;

    min-height: 138px;
    padding: 30px 34px;

    background:
        radial-gradient(
            circle at 90% 0%,
            rgba(255, 255, 255, 0.1),
            transparent 30%
        ),
        linear-gradient(
            120deg,
            #291416 0%,
            #661014 55%,
            #aa0000 100%
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;

    box-shadow:
        0 18px 38px rgba(66, 0, 4, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.mural-admin-cabecalho::before {
    content: "";
    position: absolute;
    inset: 24px auto 24px 0;

    width: 3px;

    background: linear-gradient(
        to bottom,
        transparent,
        #ffb100,
        transparent
    );

    border-radius: 0 5px 5px 0;
}

.mural-admin-cabecalho h2 {
    margin: 7px 0 6px;

    color: #ffffff;
    font-size: 28px;
    font-weight: 760;
    letter-spacing: -0.035em;
}

.mural-admin-cabecalho p {
    margin: 0;

    color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
}

.mural-admin-cabecalho .mural-identificador {
    color: #ffc247;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.17em;
}

.btn-voltar-mural {
    min-height: 44px;
    padding: 0 17px;

    color: #ffffff;
    background: rgba(255, 255, 255, 0.08);

    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 11px;

    backdrop-filter: blur(8px);

    font-size: 11px;
    font-weight: 750;

    transition:
        background-color 160ms ease,
        transform 160ms ease,
        border-color 160ms ease;
}

.btn-voltar-mural:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.16);
    border-color: rgba(255, 255, 255, 0.65);

    transform: translateY(-1px);
}

/* Organização principal */

.mural-admin-grade {
    display: grid;
    grid-template-columns: minmax(370px, 0.82fr) minmax(0, 1.25fr);
    align-items: start;
    gap: 24px;

    margin-top: 26px;
}

/* Cartões */

.mural-formulario,
.mural-publicacoes {
    position: relative;

    padding: 28px;

    background: #ffffff;

    border: 1px solid #e5e6ea;
    border-radius: 18px;

    box-shadow:
        0 16px 38px rgba(16, 24, 40, 0.07),
        0 3px 9px rgba(16, 24, 40, 0.03);
}

.mural-formulario {
    overflow: hidden;
}

.mural-formulario::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;

    height: 4px;

    background: linear-gradient(
        90deg,
        #a80008,
        #db1d25,
        #ffb000
    );
}

.mural-formulario h3,
.mural-publicacoes h3 {
    margin: 0 0 24px;

    color: #202126;
    font-size: 20px;
    font-weight: 750;
    letter-spacing: -0.025em;
}

.mural-publicacoes h3 {
    padding-bottom: 18px;
    border-bottom: 1px solid #eeeeF1;
}

/* Formulário */

.mural-formulario form {
    display: flex;
    flex-direction: column;
}

.mural-formulario label {
    margin: 0 0 7px;

    color: #3f4148;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.015em;
}

.mural-formulario select,
.mural-formulario input,
.mural-formulario textarea {
    width: 100%;
    margin: 0 0 18px;
    padding: 11px 13px;

    color: #292a30;
    background: #ffffff;

    border: 1px solid #d9dae0;
    border-radius: 11px;

    font-family: inherit;
    font-size: 12px;

    outline: none;

    transition:
        border-color 160ms ease,
        box-shadow 160ms ease,
        background-color 160ms ease;
}

.mural-formulario select,
.mural-formulario input {
    min-height: 48px;
}

.mural-formulario textarea {
    min-height: 145px;
    line-height: 1.55;
    resize: vertical;
}

.mural-formulario select:hover,
.mural-formulario input:hover,
.mural-formulario textarea:hover {
    border-color: #c1c3ca;
}

.mural-formulario select:focus,
.mural-formulario input:focus,
.mural-formulario textarea:focus {
    background: #ffffff;
    border-color: #a80008;

    box-shadow: 0 0 0 4px rgba(168, 0, 8, 0.09);
}

/* Área específica do link */

#muralCampoLink {
    margin: 2px 0 19px;
    padding: 17px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(168, 0, 8, 0.055),
            transparent 45%
        ),
        #fafafa;

    border: 1px solid #e5e5e9;
    border-radius: 13px;
}

#muralCampoLink label {
    display: block;
}

#muralCampoLink input {
    margin-bottom: 8px;
    background: #ffffff;
}

.mural-ajuda-link {
    display: flex;
    align-items: center;
    gap: 6px;

    color: #85878f;
    font-size: 9px;
    line-height: 1.45;
}

.mural-ajuda-link::before {
    content: "ⓘ";

    color: #a80008;
    font-size: 11px;
}

/* Botão principal */

.btn-publicar-mural {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    width: 100%;
    min-height: 48px;
    margin-top: 2px;

    color: #ffffff;
    background: linear-gradient(
        135deg,
        #b00009 0%,
        #8e0007 100%
    );

    border: 0;
    border-radius: 11px;

    box-shadow:
        0 10px 22px rgba(176, 0, 9, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.14);

    font-size: 12px;
    font-weight: 800;

    cursor: pointer;

    transition:
        transform 160ms ease,
        box-shadow 160ms ease,
        background 160ms ease;
}

.btn-publicar-mural:hover {
    color: #ffffff;
    background: linear-gradient(
        135deg,
        #980007,
        #710005
    );

    transform: translateY(-2px);

    box-shadow:
        0 14px 27px rgba(176, 0, 9, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.btn-publicar-mural:active {
    transform: translateY(0);
}

/* Publicações */

.mural-publicacoes {
    min-height: 565px;
}

.mural-admin-item {
    padding: 19px 0;

    border-bottom: 1px solid #eeeeF1;

    transition: background-color 160ms ease;
}

.mural-admin-item:first-of-type {
    padding-top: 2px;
}

.mural-admin-item strong {
    color: #25262b;
    font-size: 13px;
}

.mural-admin-item p {
    margin: 7px 0;

    color: #696b73;
    font-size: 11px;
    line-height: 1.55;
}

.mural-admin-item small {
    color: #9a9ba2;
    font-size: 9px;
}

.mural-etiqueta {
    display: inline-flex;
    margin-bottom: 8px;
    padding: 5px 8px;

    color: #a80008;
    background: #fff0f1;

    border: 1px solid #f3dadd;
    border-radius: 999px;

    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.08em;
}

.btn-excluir-mural {
    min-height: 38px;
    padding: 0 13px;

    color: #a80008;
    background: #ffffff;

    border: 1px solid #ecc5c8;
    border-radius: 9px;

    font-size: 10px;
    font-weight: 750;

    transition:
        color 160ms ease,
        background-color 160ms ease,
        border-color 160ms ease;
}

.btn-excluir-mural:hover {
    color: #ffffff;
    background: #a80008;
    border-color: #a80008;
}

/* Responsividade */

@media (max-width: 900px) {
    .mural-admin-grade {
        grid-template-columns: 1fr;
    }

    .mural-publicacoes {
        min-height: auto;
    }
}

@media (max-width: 600px) {
    .mural-admin {
        width: min(100% - 24px, 1390px);
    }

    .mural-admin-cabecalho {
        align-items: flex-start;
        flex-direction: column;

        padding: 25px 22px;
        border-radius: 16px;
    }

    .btn-voltar-mural {
        width: 100%;
    }

    .mural-formulario,
    .mural-publicacoes {
        padding: 22px 18px;
        border-radius: 15px;
    }
}
