* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Montserrat',sans-serif;
    background: #07152f;
    color: white;
}

.container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

/* HEADER */

.header {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1000;
    background: rgba(3,57,166,0.85);
    backdrop-filter: blur(8px);
}

.nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
}

/* BRAND */

.brand {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: nowrap;
}

.header .logo {
    height: 65px;
    width: auto;
    object-fit: contain;
    display: block;
}

.brand-text {
    white-space: nowrap;
    display: flex;
    align-items: center;
    padding-bottom: 0;
}

.brand-text span {
    font-size: 20px;
    font-weight: 600;
    font-style: normal;
    color: white;
    opacity: 0.92;
    letter-spacing: 0.4px;
}

/* MENU */

nav {
    display: flex;
    align-items: center;
}

    nav a {
        color: white;
        text-decoration: none;
        margin-left: 25px;
        font-weight: 600;
        transition: 0.3s;
    }

        nav a:hover {
            color: #5d92ff;
        }

/* HERO */

.hero {
    height: 100vh;
    position: relative;
    display: flex;
    align-items: center;
    overflow: hidden;
}

    .hero::before {
        content: '';
        position: absolute;
        inset: 0;
        background-size: cover;
        background-position: center;
        animation: slideShow 30s infinite;
        z-index: -2;
        filter: brightness(0.65) contrast(1.05) saturate(0.95);
        transform: scale(1.03);
    }

    .hero::after {
        content: '';
        position: absolute;
        inset: 0;
        background: linear-gradient( 90deg, rgba(2,13,35,0.72), rgba(3,57,166,0.38) );
        z-index: -1;
    }

@keyframes slideShow {

    0% {
        background-image: url('images/pesos.png');
    }

    33% {
        background-image: url('images/caminhao.png');
    }

    66% {
        background-image: url('images/sede.png');
    }

    100% {
        background-image: url('images/pesos.png');
    }
}

.hero-content {
    position: relative;
    z-index: 2;
}

.tag {
    background: #3375FA;
    padding: 10px 18px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 700;
}

.hero h1 {
    font-size: 58px;
    max-width: 700px;
    margin: 25px 0;
    line-height: 1.1;
}

.hero p {
    max-width: 650px;
    font-size: 20px;
    color: #d4d9e5;
}

.buttons {
    margin-top: 35px;
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

/* BOTÕES */

.btn {
    padding: 16px 28px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 700;
    transition: 0.3s;
}

.primary {
    background: #3375FA;
    color: white;
}

    .primary:hover {
        background: #5d92ff;
    }

.secondary {
    border: 2px solid white;
    color: white;
}

/* SECTIONS */

.coverage,
.services,
.about,
.client-area,
.contact {
    padding: 100px 0;
}

/* MAPA */

.coverage {
    background: #0b1d42;
}

.coverage-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 60px;
}

.coverage-text h2 {
    font-size: 48px;
    margin-bottom: 25px;
}

.coverage-text p {
    font-size: 20px;
    line-height: 1.7;
    color: #d7e2ff;
}

.highlight {
    margin-top: 25px;
    color: #5d92ff !important;
    font-weight: 700;
}

.map-area {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

    .map-area::before {
        content: '';
        position: absolute;
        width: 520px;
        height: 520px;
        border-radius: 50%;
        background: radial-gradient( rgba(51,117,250,0.35), transparent 70% );
        filter: blur(40px);
        z-index: -1;
    }

    .map-area img {
        width: 100%;
        max-width: 680px;
        transform: scale(1.12);
        filter: drop-shadow(0 0 25px rgba(51,117,250,0.45)) drop-shadow(0 0 60px rgba(51,117,250,0.25));
        animation: floatMap 5s ease-in-out infinite;
        transition: 0.4s;
    }

        .map-area img:hover {
            transform: scale(1.15);
        }

@keyframes floatMap {

    0% {
        transform: scale(1.12) translateY(0px);
    }

    50% {
        transform: scale(1.15) translateY(-10px);
    }

    100% {
        transform: scale(1.12) translateY(0px);
    }
}

/* SERVIÇOS */

.service-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
    gap: 25px;
    margin-top: 50px;
}

.service-card {
    background: #0d224f;
    padding: 35px;
    border-radius: 22px;
    transition: 0.3s;
}

    .service-card:hover {
        transform: translateY(-8px);
    }

    .service-card h3 {
        margin-bottom: 15px;
        color: #5d92ff;
    }

/* SOBRE */

.about-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

.about img {
    width: 100%;
    border-radius: 24px;
}



/* ÁREA CLIENTE HOME */

.client-area {
    padding: 100px 0;
}

.client-box {
    position: relative;
    overflow: hidden;
    background: linear-gradient( 135deg, #0339A6, #3375FA );
    border-radius: 32px;
    padding: 70px 60px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.35);
    border: 1px solid rgba(255,255,255,0.08);
}

    .client-box::before {
        content: '';
        position: absolute;
        width: 340px;
        height: 340px;
        border-radius: 50%;
        background: rgba(255,255,255,0.08);
        top: -140px;
        right: -120px;
    }

    .client-box::after {
        content: '';
        position: absolute;
        inset: 0;
        background: radial-gradient( rgba(255,255,255,0.10), transparent 70% );
        opacity: 0.6;
    }

    .client-box h2 {
        font-size: 44px;
        margin-bottom: 18px;
        position: relative;
        z-index: 2;
    }

    .client-box p {
        max-width: 650px;
        color: #dfe8ff;
        font-size: 19px;
        line-height: 1.7;
        position: relative;
        z-index: 2;
    }

    .client-box .btn {
        position: relative;
        z-index: 2;
        background: white;
        color: #0339A6;
        font-weight: 700;
        box-shadow: 0 10px 30px rgba(0,0,0,0.20);
    }

        .client-box .btn:hover {
            transform: translateY(-4px);
            background: #f3f6ff;
        }

/* WHATSAPP */

.whatsapp-box {
    text-align: center;
    background: linear-gradient( 135deg, #0339A6, #3375FA );
    padding: 80px 40px;
    border-radius: 28px;
}

    .whatsapp-box p {
        max-width: 700px;
        margin: 20px auto 40px;
        font-size: 20px;
        color: #dfe8ff;
    }

.whatsapp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 20px 38px;
    border-radius: 16px;
    background: #25D366;
    color: white;
    text-decoration: none;
    font-size: 20px;
    font-weight: 700;
    transition: 0.3s;
    box-shadow: 0 10px 30px rgba(37,211,102,0.35);
}

    .whatsapp-btn:hover {
        transform: translateY(-5px);
        background: #2df07a;
    }

/* FOOTER */

footer {
    background: #03122b;
    padding: 60px 0;
}

.footer-content {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    align-items: flex-start;
}

.footer-logo {
    width: auto;
    height: 70px;
    max-width: 100%;
    object-fit: contain;
    display: block;
}

footer a {
    color: #dce4ff;
    display: block;
    margin-top: 10px;
    text-decoration: none;
}

/* PAINEL */

.painel-area {
    position: relative;
    padding-top: 180px;
    min-height: 100vh;
    overflow: hidden;
}

    .painel-area::before {
        content: '';
        position: absolute;
        inset: 0;
        background: url('images/pesos.png') center/cover no-repeat;
        opacity: 0.50;
        filter: blur(2px) brightness(0.8);
        transform: scale(1.05);
        z-index: 0;
    }

    .painel-area::after {
        content: '';
        position: absolute;
        inset: 0;
        background: linear-gradient( 135deg, rgba(7,21,47,0.92), rgba(11,29,66,0.94) );
        z-index: 1;
    }

    .painel-area .container {
        position: relative;
        z-index: 2;
    }

.painel-subtitulo {
    margin-top: 10px;
    font-size: 20px;
    color: #9bb8ff;
}

/* LOGIN */

.login-section {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 15px;
    background: linear-gradient( 135deg, #07152f, #0b1d42 );
    position: relative;
    overflow: hidden;
}

    .login-section::before {
        content: '';
        position: absolute;
        inset: 0;
        background: url('images/pesos.png') center/cover no-repeat;
        opacity: 0.05;
        filter: blur(3px) brightness(0.7);
        transform: scale(1.05);
        z-index: 0;
    }

    .login-section::after {
        content: '';
        position: absolute;
        inset: 0;
        background: linear-gradient( 135deg, rgba(7,21,47,0.92), rgba(11,29,66,0.94) );
        z-index: 1;
    }

.login-container {
    width: 100%;
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 2;
}

.login-card {
    width: 100%;
    max-width: 420px;
    padding: 40px 30px;
    border-radius: 24px;
    background: #0d224f;
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 15px 40px rgba(0,0,0,0.35);
    text-align: center;
}

    .login-card .login-logo {
        width: auto !important;
        height: 70px !important;
        max-width: 220px;
        object-fit: contain;
        margin: 0 auto 18px;
        display: block;
    }

    .login-card h2 {
        font-size: 34px;
        margin-bottom: 15px;
        line-height: 1.2;
    }

    .login-card p {
        color: #dce5ff;
        margin-bottom: 30px;
        line-height: 1.6;
        font-size: 16px;
    }

    .login-card form {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .login-card input {
        width: 100%;
        padding: 16px 18px;
        border: none;
        border-radius: 12px;
        background: #102858;
        color: white;
        font-size: 16px;
    }

        .login-card input::placeholder {
            color: #9eb5f5;
        }

.login-btn {
    margin-top: 10px;
    padding: 16px;
    border: none;
    border-radius: 12px;
    background: #3375FA;
    color: white;
    font-size: 17px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s;
}

    .login-btn:hover {
        background: #5d92ff;
        transform: translateY(-2px);
    }

/* RESPONSIVO */

@media(max-width:900px) {

    nav {
        display: none;
    }

    .hero h1 {
        font-size: 42px;
    }

    .hero p {
        font-size: 18px;
    }

    .coverage-content {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .about-grid {
        grid-template-columns: 1fr;
    }

    .footer-content {
        flex-direction: column;
        gap: 30px;
    }
}

@media(max-width:768px) {

    .brand {
        gap: 10px;
    }

    .brand-text span {
        font-size: 16px;
    }

    .hero h1 {
        font-size: 36px;
    }

    .hero p {
        font-size: 16px;
    }

    .buttons {
        flex-direction: column;
    }

    .btn {
        width: 100%;
        text-align: center;
    }

    .client-box {
        flex-direction: column;
        text-align: center;
        padding: 45px 25px;
    }

        .client-box h2 {
            font-size: 34px;
        }

        .client-box p {
            font-size: 16px;
        }

    .footer-logo {
        height: 55px;
    }

    .login-section {
        padding: 30px 15px;
    }
}

/* ERRO LOGIN */

.login-error {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 16px 18px;
    margin-bottom: 22px;
    border-radius: 14px;
    background: linear-gradient( 135deg, rgba(255,59,59,0.22), rgba(180,0,0,0.20) );
    border: 1px solid rgba(255,80,80,0.55);
    box-shadow: 0 0 20px rgba(255,0,0,0.18);
    color: #ffd5d5;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    animation: errorPulse 1.8s infinite;
}

.error-icon {
    font-size: 20px;
    color: #ff5b5b;
}

@keyframes errorPulse {

    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.015);
    }

    100% {
        transform: scale(1);
    }
}
/* CERTIFICADOS */

.certificados-toggle {
    cursor: pointer;
}

.certificados-box {
    width: 100%;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    margin-top: 0;
    transition: max-height 0.5s ease, opacity 0.3s ease, margin-top 0.3s ease;
}

    .certificados-box.ativo {
        max-height: none;
        overflow: visible;
        opacity: 1;
        margin-top: 35px;
    }

.certificados-content {
    background: #0d224f;
    border-radius: 24px;
    padding: 35px;
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 15px 40px rgba(0,0,0,0.25);
}

    .certificados-content h3 {
        margin-bottom: 25px;
        font-size: 28px;
    }

/* FILTRO */

.filtro-linha {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 25px;
}

.filtro-certificados select {
    width: 100%;
    max-width: 280px;
    padding: 14px 18px;
    border: none;
    border-radius: 14px;
    background: #102858;
    color: white;
    font-size: 15px;
    font-weight: 600;
    outline: none;
}

.btn-filtrar {
    padding: 14px 22px;
    border: none;
    border-radius: 14px;
    background: #3375FA;
    color: white;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s;
}

    .btn-filtrar:hover {
        background: #5d92ff;
        transform: translateY(-2px);
    }

/* LISTA */

.lista-certificados {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ITEM */

.arquivo-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 18px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    transition: 0.3s;
}

    .arquivo-item:hover {
        transform: translateY(-3px);
        background: rgba(255,255,255,0.08);
    }

.arquivo-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

    .arquivo-info strong {
        color: #5d92ff;
        font-size: 15px;
    }

    .arquivo-info span {
        color: #dce5ff;
        font-size: 15px;
    }

/* AÇÕES */

.arquivo-acoes {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.btn-preview,
.btn-download,
.btn-pdf {
    padding: 12px 18px;
    border-radius: 12px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    transition: 0.3s;
    border: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-preview {
    background: #102858;
    color: white;
}

    .btn-preview:hover {
        background: #1c3f85;
    }

.btn-download {
    background: #3375FA;
    color: white;
}

    .btn-download:hover {
        background: #5d92ff;
    }

.btn-pdf {
    background: linear-gradient(135deg, #f04438 0%, #b42318 100%);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(180, 35, 24, 0.24);
}

    .btn-pdf:hover {
        background: linear-gradient(135deg, #ff5a4f 0%, #d92d20 100%);
        color: #ffffff;
        transform: translateY(-1px);
        box-shadow: 0 10px 22px rgba(180, 35, 24, 0.32);
    }

.btn-pdf-disabled {
    background: rgba(240, 68, 56, 0.18);
    color: rgba(255, 255, 255, 0.64);
    box-shadow: none;
    cursor: not-allowed;
    pointer-events: none;
}

/* PADRÃO DOS BOTÕES DA LISTA DE CERTIFICADOS */
.lista-certificados .arquivo-acoes {
    align-items: center;
}

.lista-certificados .arquivo-acoes a,
.lista-certificados .arquivo-acoes button {
    min-width: 112px;
    min-height: 42px;
    padding: 0 18px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    box-sizing: border-box;
    border: none;
    cursor: pointer;
    transition: 0.3s;
}

.lista-certificados .arquivo-acoes form {
    margin: 0;
    display: inline-flex;
}

.lista-certificados .arquivo-acoes .btn-preview {
    background: #102858;
    color: #ffffff;
}

.lista-certificados .arquivo-acoes .btn-preview:hover {
    background: #1c3f85;
    transform: translateY(-2px);
}

.lista-certificados .arquivo-acoes .btn-download {
    background: #3375FA;
    color: #ffffff;
}

.lista-certificados .arquivo-acoes .btn-download:hover {
    background: #5d92ff;
    transform: translateY(-2px);
}

.lista-certificados .arquivo-acoes .btn-excluir {
    background: #dc2626;
    color: #ffffff;
}

.lista-certificados .arquivo-acoes .btn-excluir:hover {
    background: #ef4444;
    transform: translateY(-2px);
}

/* CARD WHATSAPP */

.whatsapp-card {
    background: linear-gradient( 135deg, #1faa59, #25D366 ) !important;
    text-decoration: none;
    color: white !important;
    position: relative;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(37,211,102,0.25);
}

    .whatsapp-card::before {
        content: '';
        position: absolute;
        width: 180px;
        height: 180px;
        background: rgba(255,255,255,0.10);
        border-radius: 50%;
        top: -60px;
        right: -60px;
    }

    .whatsapp-card h3,
    .whatsapp-card p {
        color: white !important;
        position: relative;
        z-index: 2;
    }

/* MOBILE */

@media(max-width:768px) {

    .arquivo-item {
        flex-direction: column;
        align-items: flex-start;
    }

    .arquivo-acoes {
        width: 100%;
    }

    .btn-preview,
    .btn-download,
    .btn-filtrar,
    .btn-excluir {
        width: 100%;
        text-align: center;
    }

    .lista-certificados .arquivo-acoes form {
        width: 100%;
    }

    .lista-certificados .arquivo-acoes a,
    .lista-certificados .arquivo-acoes button {
        width: 100%;
        min-width: 100%;
    }

    .filtro-linha {
        flex-direction: column;
    }
}

/* RECUPERAR SENHA */

.forgot-password{

    margin-top:8px;

    color:#9bb8ff;

    text-decoration:none;

    font-size:14px;

    transition:0.3s;
}

.forgot-password:hover{

    color:white;
}

/* SUCESSO LOGIN */

.login-success{

    width:100%;

    display:flex;

    align-items:center;
    justify-content:center;

    gap:12px;

    padding:16px 18px;

    margin-bottom:22px;

    border-radius:14px;

    background:
        linear-gradient(
            135deg,
            rgba(37,211,102,0.22),
            rgba(10,120,50,0.20)
        );

    border:
        1px solid rgba(37,211,102,0.45);

    box-shadow:
        0 0 20px rgba(37,211,102,0.15);

    color:#d8ffe7;

    font-size:15px;
    font-weight:700;

    text-align:center;

    animation:successPulse 1.8s infinite;
}

.success-icon{

    font-size:20px;

    color:#25D366;
}

@keyframes successPulse{

    0%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.015);
    }

    100%{
        transform:scale(1);
    }

}

/* DASHBOARD COLABORADOR */

.dashboard-grid{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(220px,1fr));

    gap:22px;

    margin-bottom:35px;
}

.dashboard-main{

    display:grid;

    grid-template-columns:
        2fr 1fr;

    gap:25px;
}

.dashboard-card{

    background:
        rgba(13,34,79,0.92);

    border:
        1px solid rgba(255,255,255,0.08);

    border-radius:24px;

    padding:28px;

    backdrop-filter:blur(10px);

    box-shadow:
        0 10px 35px rgba(0,0,0,0.25);

    transition:0.3s;
}

.dashboard-card:hover{

    transform:translateY(-5px);
}

.mini-card{

    text-align:center;
}

.dash-icon{

    font-size:34px;

    display:block;

    margin-bottom:15px;
}

.mini-card h3{

    font-size:34px;

    margin-bottom:10px;

    color:#5d92ff;
}

.mini-card p{

    color:#dce5ff;
}

/* ANIVERSÁRIO COLABORADOR */

.aniversario-colaborador-card {
    position: relative;
    overflow: hidden;
    border-color: rgba(245, 158, 11, 0.35);
    background: linear-gradient( 135deg, rgba(245, 158, 11, 0.16), rgba(13, 34, 79, 0.94) );
}

    .aniversario-colaborador-card::before {
        content: '';
        position: absolute;
        width: 190px;
        height: 190px;
        border-radius: 50%;
        top: -70px;
        right: -70px;
        background: rgba(245, 158, 11, 0.16);
    }

    .aniversario-colaborador-card .dash-icon,
    .aniversario-colaborador-card h3,
    .aniversario-colaborador-card p,
    .aniversario-colaborador-msg,
    .aniversario-colaborador-data {
        position: relative;
        z-index: 2;
    }

    .aniversario-colaborador-card h3 {
        color: #fde68a;
    }

.aniversario-colaborador-msg {
    margin-top: 14px;
    padding: 12px;
    border-radius: 14px;
    background: rgba(255,255,255,0.06);
    color: #fff7d6;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.45;
}

.aniversario-colaborador-data {
    margin-top: 12px;
    color: #ffd76a;
    font-size: 13px;
    font-weight: 800;
}

.aniversario-colaborador-card.aniversario-hoje {
    border-color: rgba(37, 211, 102, 0.45);
    background: linear-gradient( 135deg, rgba(37, 211, 102, 0.20), rgba(51, 117, 250, 0.22), rgba(13, 34, 79, 0.96) );
    box-shadow: 0 12px 38px rgba(37, 211, 102, 0.20);
}

    .aniversario-colaborador-card.aniversario-hoje::before {
        background: rgba(37, 211, 102, 0.16);
    }

    .aniversario-colaborador-card.aniversario-hoje h3 {
        color: #b8ffd2;
    }

    .aniversario-colaborador-card.aniversario-hoje .aniversario-colaborador-data {
        color: #6fffac;
    }


/* WHATSAPP - COLABORADORES */

.whatsapp-numero-colaborador {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(37, 211, 102, 0.16);
    color: #b8ffd2;
    border: 1px solid rgba(37, 211, 102, 0.34);
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
}


/* AGENDA */

.card-title{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:25px;
}

.badge{

    padding:8px 14px;

    border-radius:30px;

    font-size:13px;

    font-weight:700;
}

.badge.blue{

    background:#3375FA;
}

.agenda-list{

    display:flex;

    flex-direction:column;

    gap:18px;
}

.agenda-item{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px;

    border-radius:18px;

    background:
        rgba(255,255,255,0.04);
}

.agenda-item strong{

    display:block;

    margin-bottom:6px;
}

.agenda-item span{

    color:#b8c7f3;

    font-size:14px;
}

.agenda-status{

    padding:10px 16px;

    border-radius:12px;

    font-size:13px;

    font-weight:700;
}

.agenda-status.andamento{

    background:
        rgba(37,211,102,0.18);

    color:#6fffac;
}

.agenda-status.pendente{

    background:
        rgba(255,193,7,0.18);

    color:#ffd76a;
}

/* SIDE */

.dashboard-side{

    display:flex;

    flex-direction:column;

    gap:22px;
}

.side-card{

    display:flex;

    align-items:center;

    gap:18px;

    text-decoration:none;

    color:white;
}

.side-icon{

    font-size:34px;
}

.side-card h3{

    margin-bottom:8px;
}

.side-card p{

    color:#dce5ff;
}

.whatsapp-side{

    background:
        linear-gradient(
            135deg,
            #1faa59,
            #25D366
        );

    box-shadow:
        0 10px 30px rgba(37,211,102,0.22);
}

/* MOBILE */

@media(max-width:900px){

    .dashboard-main{

        grid-template-columns:1fr;
    }

}

/* OBSERVAÇÃO AGENDA */

.agenda-obs{

    margin-top:10px;

    font-size:13px;

    color:#b8c7f3;

    line-height:1.5;
}

/* COMISSÃO */

.comissao-card{

    position:relative;

    overflow:hidden;
}

.comissao-card::before{

    content:'';

    position:absolute;

    width:180px;
    height:180px;

    border-radius:50%;

    background:
        rgba(37,211,102,0.10);

    top:-60px;
    right:-60px;
}

.comissao-extra{

    margin-top:18px;

    display:flex;

    justify-content:space-between;

    gap:12px;
}

.comissao-extra div{

    flex:1;

    padding:10px;

    border-radius:12px;

    background:
        rgba(255,255,255,0.05);
}

.comissao-extra small{

    display:block;

    color:#b8c7f3;

    margin-bottom:6px;

    font-size:12px;
}

.comissao-extra strong{

    color:#6fffac;

    font-size:15px;
}

/* HOLERITES */

.holerites-box{

    display:none;

    margin-top:30px;

    animation:fadeUp 0.3s ease;
}

.holerite-list{

    display:flex;

    flex-direction:column;

    gap:18px;
}

.holerite-item{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:20px;

    padding:18px;

    border-radius:18px;

    background:
        rgba(255,255,255,0.04);

    border:
        1px solid rgba(255,255,255,0.06);

    transition:0.3s;
}

.holerite-item:hover{

    background:
        rgba(255,255,255,0.07);

    transform:translateY(-3px);
}

.holerite-item span{

    color:#b8c7f3;

    font-size:14px;
}

.holerite-actions{

    display:flex;

    gap:12px;
}

.holerite-toggle{

    cursor:pointer;
}

/* MOBILE */

@media(max-width:768px){

    .holerite-item{

        flex-direction:column;

        align-items:flex-start;
    }

    .holerite-actions{

        width:100%;
    }

    .holerite-actions a{

        flex:1;

        text-align:center;
    }

}

/* UPLOAD HOLERITES */

.upload-form{

    display:flex;

    flex-direction:column;

    gap:18px;
}

.upload-form input{

    width:100%;

    padding:16px 18px;

    border:none;

    border-radius:14px;

    background:#102858;

    color:white;

    font-size:15px;
}

.upload-form input::placeholder{

    color:#9eb5f5;
}

.upload-form select {
    width: 100%;
    padding: 16px 18px;
    border: none;
    border-radius: 14px;
    background: #102858;
    color: white;
    font-size: 15px;
    font-weight: 600;
    outline: none;
    font-family: 'Montserrat', sans-serif;
}

.upload-form select option {
    background: #102858;
    color: white;
}

/* ADMIN SECTIONS */

.admin-section-title{

    color:white;

    font-size:26px;

    margin:

    50px 0 25px;

    font-weight:700;
}

/* AGENDA SEMANA */

.agenda-dia-titulo{

    display:flex;

    align-items:center;

    gap:12px;

    margin:
    30px 0 15px;

    padding-bottom:10px;

    border-bottom:
    1px solid rgba(255,255,255,0.08);

    color:#fff;

    font-size:18px;

    font-weight:700;
}

.agenda-dia-titulo.hoje {
    color: #ffffff;
    background: linear-gradient(135deg, rgba(51,117,250,0.30), rgba(93,146,255,0.12));
    border: 1px solid rgba(93,146,255,0.45);
    border-left: 5px solid #3375FA;
    border-radius: 16px;
    padding: 14px 16px;
    box-shadow: 0 10px 28px rgba(51,117,250,0.18);
}

.badge-hoje {
    background: #3375FA;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    padding: 5px 12px;
    border-radius: 20px;
    letter-spacing: 1px;
    box-shadow: 0 6px 18px rgba(51,117,250,0.35);
}

.badge-hoje{

    background:#3375fa;

    color:#fff;

    font-size:11px;

    font-weight:700;

    padding:
    4px 10px;

    border-radius:20px;

    letter-spacing:1px;
}

/* DESTAQUE DOS SERVIÇOS DO DIA ATUAL */

.agenda-item-hoje {
    background: linear-gradient(135deg, rgba(51,117,250,0.22), rgba(255,255,255,0.06));
    border: 1px solid rgba(93,146,255,0.45);
    border-left: 5px solid #3375FA;
    box-shadow: 0 10px 28px rgba(51,117,250,0.16);
}

.agenda-item-hoje strong {
    color: #ffffff;
}

.agenda-item-hoje span,
.agenda-item-hoje .agenda-obs {
    color: #dce8ff;
}

/* SOBRE DESTAQUES */

.about-destaques{

    display:flex;

    flex-direction:column;

    gap:14px;

    margin-top:28px;
}

.about-item{

    display:flex;

    align-items:flex-start;

    gap:14px;

    padding:16px 18px;

    border-radius:16px;

    background:
    rgba(255,255,255,0.035);

    border:
    1px solid rgba(255,255,255,0.05);

    transition:0.3s;
}

.about-item:hover{

    transform:translateY(-3px);

    background:
    rgba(255,255,255,0.055);
}

.about-check{

    width:28px;

    height:28px;

    border-radius:50%;

    background:#3375FA;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-weight:700;

    font-size:13px;

    flex-shrink:0;

    margin-top:2px;
}

.about-item strong{

    display:block;

    margin-bottom:4px;

    color:#fff;

    font-size:15px;

    font-weight:700;
}

.about-item p{

    color:#c9d7ff;

    font-size:13px;

    line-height:1.5;
}

/* VOLTAR SITE LOGIN */

.voltar-site-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 12px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.08);
    color: white;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    transition: 0.3s;
}

    .voltar-site-btn:hover {
        background: #3375FA;
        transform: translateY(-2px);
    }

.login-back {
    margin-bottom: 25px;
}

/* AJUSTE ÂNCORAS COM HEADER FIXO */

#inicio,
#servicos,
#sobre,
#clientes,
#contato {
    scroll-margin-top: 120px;
}

/* NUMERAÇÃO ADMIN */

.numeracao-card p {
    min-height: 45px;
}

.numeracao-form {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

    .numeracao-form input {
        width: 100%;
        padding: 14px 16px;
        border: none;
        border-radius: 14px;
        background: #102858;
        color: white;
        font-size: 15px;
    }

        .numeracao-form input::placeholder {
            color: #9eb5f5;
        }

.numeracao-gerada-box {
    justify-content: space-between;
    flex-wrap: wrap;
}

.btn-copiar-numero {
    border: none;
    padding: 10px 16px;
    border-radius: 12px;
    background: #3375FA;
    color: white;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s;
}

    .btn-copiar-numero:hover {
        background: #5d92ff;
        transform: translateY(-2px);
    }


/* LOADING PESQUISA */

.loading-pesquisa {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(3, 10, 25, 0.72);
    backdrop-filter: blur(5px);
    display: none;
    align-items: center;
    justify-content: center;
}

    .loading-pesquisa.ativo {
        display: flex;
    }

.loading-box {
    background: #0d224f;
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 22px;
    padding: 32px 38px;
    min-width: 280px;
    text-align: center;
    box-shadow: 0 20px 60px rgba(0,0,0,0.45);
}

.spinner {
    width: 46px;
    height: 46px;
    border: 4px solid rgba(255,255,255,0.18);
    border-top-color: #3375FA;
    border-radius: 50%;
    margin: 0 auto 18px;
    animation: girarLoading 0.8s linear infinite;
}

.loading-box span {
    color: white;
    font-size: 16px;
    font-weight: 700;
}

@keyframes girarLoading {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* PAINEL COLABORADOR AJUSTADO */

.dashboard-colaborador {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

    .dashboard-colaborador .large-card {
        width: 100%;
    }

.dashboard-links-colaborador {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 22px;
}

    .dashboard-links-colaborador .side-card {
        min-height: 120px;
    }

/* MENU ATIVO ADMIN */

nav a.menu-ativo {
    background: rgba(255,255,255,0.16);
    color: #ffffff;
    padding: 10px 14px;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.18);
}

nav a.menu-ativo:hover {
    background: rgba(255,255,255,0.22);
    color: #ffffff;
}

/* HISTÓRICO NUMERAÇÃO */

.historico-numeracao-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 22px;
    margin-top: 25px;
}

.historico-numeracao-card {
    background: rgba(13,34,79,0.92);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 24px;
    padding: 26px;
    box-shadow: 0 10px 35px rgba(0,0,0,0.25);
}

.historico-numeracao-card h3 {
    color: #5d92ff;
    margin-bottom: 20px;
    font-size: 21px;
}

.historico-lista {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.historico-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    padding: 15px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.07);
}

.historico-item strong {
    display: block;
    color: #ffffff;
    font-size: 15px;
    margin-bottom: 6px;
}

.historico-item span {
    display: block;
    color: #b8c7f3;
    font-size: 13px;
    line-height: 1.4;
}

@media(max-width:768px) {

    .historico-item {
        flex-direction: column;
        align-items: flex-start;
    }

    .historico-item .btn-copiar-numero {
        width: 100%;
    }
}

/* DASHBOARD ADMIN */

.dashboard-admin-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 22px;
    margin-top: 30px;
    margin-bottom: 35px;
}

.dashboard-admin-detalhes {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(420px, 1fr));
    gap: 25px;
}

.dashboard-lista {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.dashboard-lista-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    padding: 15px 16px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.07);
}

.dashboard-lista-item span {
    color: #dce5ff;
    font-size: 14px;
    line-height: 1.4;
}

.dashboard-lista-item strong {
    color: #5d92ff;
    font-size: 15px;
    white-space: nowrap;
}

@media(max-width:768px) {

    .dashboard-admin-detalhes {
        grid-template-columns: 1fr;
    }

    .dashboard-lista-item {
        flex-direction: column;
        align-items: flex-start;
    }

}

/* FILTRO DASHBOARD ADMIN */

.dashboard-filtro-periodo {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin: 0 0 30px;
    padding: 20px;
    border-radius: 20px;
    background: rgba(13,34,79,0.72);
    border: 1px solid rgba(255,255,255,0.08);
}

.dashboard-filtro-periodo label {
    font-weight: 700;
    color: #dce5ff;
}

.dashboard-filtro-periodo input {
    padding: 14px 16px;
    border: none;
    border-radius: 14px;
    background: #102858;
    color: white;
    font-size: 15px;
}

@media(max-width:768px) {

    .dashboard-filtro-periodo {
        flex-direction: column;
        align-items: stretch;
    }

    .dashboard-filtro-periodo input,
    .dashboard-filtro-periodo button {
        width: 100%;
    }
}

/* DESTAQUE CÓDIGO R.S. */

.codigo-rs-destaque {
    display: inline-block;
    width: fit-content;
    padding: 8px 12px;
    border-radius: 12px;
    background: rgba(51,117,250,0.20);
    border: 1px solid rgba(51,117,250,0.45);
    color: #ffffff !important;
    font-size: 16px !important;
}

/* GRÁFICO FATURAMENTO DASHBOARD */

.grafico-faturamento-card {
    margin-top: 30px;
}

.grafico-faturamento {
    display: flex;
    align-items: flex-end;
    gap: 14px;
    min-height: 280px;
    padding-top: 25px;
    overflow-x: auto;
}

.barra-mes {
    flex: 1;
    min-width: 65px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.barra-valor {
    font-size: 12px;
    color: #dce5ff;
    white-space: nowrap;
}

.barra-container {
    width: 100%;
    height: 190px;
    display: flex;
    align-items: flex-end;
    border-radius: 14px;
    background: rgba(255,255,255,0.05);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.07);
}

.barra-preenchimento {
    width: 100%;
    min-height: 4px;
    background: linear-gradient(180deg, #5d92ff, #3375FA);
    border-radius: 14px 14px 0 0;
    transition: 0.4s;
}

.barra-mes span {
    font-size: 13px;
    font-weight: 700;
    color: #9bb8ff;
}

/* GRÁFICO HORIZONTAL DASHBOARD */

.grafico-horizontal-card {
    margin-top: 30px;
}

.grafico-horizontal-lista {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.grafico-horizontal-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.grafico-horizontal-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
}

.grafico-horizontal-info span {
    color: #dce5ff;
    font-size: 14px;
    font-weight: 600;
}

.grafico-horizontal-info strong {
    color: #5d92ff;
    font-size: 14px;
    white-space: nowrap;
}

.grafico-horizontal-barra {
    width: 100%;
    height: 16px;
    border-radius: 999px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.07);
    overflow: hidden;
}

.grafico-horizontal-preenchimento {
    height: 100%;
    min-width: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, #3375FA, #5d92ff);
    transition: 0.4s;
}

@media(max-width:768px) {

    .grafico-horizontal-info {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* TABELA DETALHADA DASHBOARD */

.dashboard-tabela-card {
    margin-top: 30px;
}

.dashboard-tabela-scroll {
    width: 100%;
    overflow-x: auto;
}

.dashboard-tabela {
    width: 100%;
    border-collapse: collapse;
    min-width: 850px;
}

.dashboard-tabela th,
.dashboard-tabela td {
    padding: 14px 16px;
    text-align: left;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    font-size: 14px;
}

.dashboard-tabela th {
    color: #5d92ff;
    font-weight: 800;
    background: rgba(255,255,255,0.04);
}

.dashboard-tabela td {
    color: #dce5ff;
}

.dashboard-tabela td strong {
    color: #ffffff;
    white-space: nowrap;
}

.dashboard-tabela tr:hover td {
    background: rgba(255,255,255,0.04);
}

/* DETALHE EXPANSÍVEL DASHBOARD */

.dashboard-card-full {
    grid-column: 1 / -1;
}

.dashboard-detalhe-box {
    display: none;
    margin-top: 25px;
}

.dashboard-detalhe-box.ativo {
    display: block;
}

.btn-detalhe-dashboard {
    padding: 10px 16px;
    border: none;
    border-radius: 12px;
    background: #3375FA;
    color: white;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s;
}

.btn-detalhe-dashboard:hover {
    background: #5d92ff;
    transform: translateY(-2px);
}

/* CONSULTA RELATÓRIOS ADMIN EM TABELA */

.lista-relatorios-admin {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.relatorio-admin-card {
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 22px;
    padding: 22px;
    transition: 0.3s;
}

.relatorio-admin-card:hover {
    background: rgba(255,255,255,0.065);
    transform: translateY(-3px);
}

.relatorio-admin-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 25px;
    margin-bottom: 20px;
}

.relatorio-admin-header h3 {
    margin: 14px 0 8px;
    color: #ffffff;
    font-size: 20px;
}

.relatorio-admin-header span,
.relatorio-admin-footer span {
    display: block;
    color: #dce5ff;
    font-size: 14px;
    line-height: 1.5;
}

.relatorio-admin-meta {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 220px;
    text-align: right;
}

.relatorio-admin-tabela-scroll {
    width: 100%;
    overflow-x: auto;
}

.relatorio-admin-tabela {
    width: 100%;
    border-collapse: collapse;
    min-width: 620px;
}

.relatorio-admin-tabela th,
.relatorio-admin-tabela td {
    padding: 13px 15px;
    text-align: left;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    font-size: 14px;
}

.relatorio-admin-tabela th {
    color: #5d92ff;
    background: rgba(255,255,255,0.04);
    font-weight: 800;
}

.relatorio-admin-tabela td {
    color: #dce5ff;
}

.relatorio-admin-tabela tr:hover td {
    background: rgba(255,255,255,0.04);
}

.relatorio-admin-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,0.08);
}

@media(max-width:768px) {

    .relatorio-admin-header,
    .relatorio-admin-footer {
        flex-direction: column;
        align-items: flex-start;
    }

    .relatorio-admin-meta {
        text-align: left;
        min-width: auto;
    }

    .relatorio-admin-footer .arquivo-acoes {
        width: 100%;
    }
}

/* CAMPOS DE DATA / PERÍODO - ÍCONE BRANCO */

input[type="date"],
input[type="month"] {
    cursor: pointer;
    color-scheme: dark;
    color: white !important;
    background-color: #102858 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 18px 18px !important;
    padding-right: 48px !important;
}

/* Esconde o ícone nativo preto do Chrome/Edge/Safari */
input[type="date"]::-webkit-calendar-picker-indicator,
input[type="month"]::-webkit-calendar-picker-indicator {
    opacity: 0 !important;
    cursor: pointer;
}

/* STATUS ASO */

.status-aso-vencido {
    color: #ff6b6b !important;
}

.status-aso-alerta {
    color: #ffd76a !important;
}

.status-aso-valido {
    color: #6fffac !important;
}

/* ORGANIZAÇÃO DO DASHBOARD ADMIN */

.dashboard-grupo-titulo {
    margin: 38px 0 18px;
    color: #ffffff;
    font-size: 22px;
    font-weight: 800;
    padding-left: 14px;
    border-left: 5px solid #3375FA;
}

.dashboard-admin-grid + .dashboard-grupo-titulo,
.grafico-horizontal-card + .dashboard-grupo-titulo {
    margin-top: 45px;
}

.grafico-horizontal-card {
    margin-top: 30px;
}

.dashboard-tabela td strong {
    color: #ffffff;
}

.btn-excluir {
    padding: 12px 18px;
    border-radius: 12px;
    border: none;
    background: #b91c1c;
    color: white;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s;
}

.btn-excluir:hover {
    background: #ef4444;
    transform: translateY(-2px);
}

.tabela-acoes {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: nowrap;
}

.btn-tabela {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    font-size: 13px;
    white-space: nowrap;
}

.dashboard-tabela td {
    vertical-align: middle;
}

@media(max-width:768px) {
    .tabela-acoes {
        flex-wrap: wrap;
    }

    .btn-tabela {
        width: auto;
    }
}

/* ÍCONE DO CALENDÁRIO - INPUT MONTH/DATE */

input[type="month"],
input[type="date"] {
    color-scheme: dark;
}

input[type="month"]::-webkit-calendar-picker-indicator,
input[type="date"]::-webkit-calendar-picker-indicator {
    filter: invert(1);
    cursor: pointer;
}

/* MENU MODERNO DO PAINEL */

.menu-wrapper {
    position: relative;
}

.menu-toggle {
    padding: 12px 18px;
    border: none;
    border-radius: 14px;
    background: #102858;
    color: white;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s;
}

    .menu-toggle:hover {
        background: #3375FA;
    }

.menu-painel {
    position: absolute;
    top: 55px;
    right: 0;
    width: 260px;
    display: none;
    flex-direction: column;
    gap: 6px;
    padding: 14px;
    border-radius: 20px;
    background: rgba(13,34,79,0.98);
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 20px 50px rgba(0,0,0,0.45);
    backdrop-filter: blur(12px);
    z-index: 2000;
}

    @media(max-width:1100px) {
        .menu-painel.ativo {
            display: flex;
        }
    }

    .menu-painel a {
        margin-left: 0;
        padding: 13px 15px;
        border-radius: 12px;
        color: white;
        text-decoration: none;
        font-weight: 700;
        transition: 0.3s;
    }

        .menu-painel a:hover,
        .menu-painel a.menu-ativo {
            background: #3375FA;
            color: white;
        }

/* Remove regra antiga que escondia o nav no mobile */
@media(max-width:900px) {
    nav.menu-painel {
        display: none;
    }

        nav.menu-painel.ativo {
            display: flex;
        }
}

.manual-marca {
    margin: 28px 0 6px;
    padding: 13px 18px;
    border-radius: 14px;
    background: rgba(51,117,250,0.18);
    color: #ffffff;
    font-size: 20px;
    font-weight: 800;
    border-left: 5px solid #3375FA;
}

.filtro-manual {
    width: 100%;
    margin-bottom: 25px;
    padding: 16px 18px;
    border: none;
    border-radius: 14px;
    background: #102858;
    color: white;
    font-size: 15px;
    font-weight: 600;
    outline: none;
}

.filtro-manual::placeholder {
    color: #9eb5f5;
}

.dashboard-tabela tr.linha-deposito td {
    background: rgba(37, 211, 102, 0.14);
    color: #d8ffe7;
}

.dashboard-tabela tr.linha-deposito td strong {
    color: #25D366;
}

.dashboard-tabela tr.linha-deposito td:nth-child(3)::after {
    content: "  • transferência";
    color: #25D366;
    font-size: 12px;
    font-weight: 700;
}

.btn-nf {
    width: 42px;
    height: 42px;
    min-width: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: #102858;
    color: white;
    text-decoration: none;
    font-size: 18px;
    font-weight: 700;
    transition: 0.3s;
}

.btn-nf:hover {
    background: #3375FA;
    transform: translateY(-2px);
}

.dashboard-tabela td:nth-child(10),
.dashboard-tabela th:nth-child(10) {
    text-align: center;
}

.sem-nf {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    color: #9eb5f5;
    font-weight: 800;
}

.deposito-sem-nf {
    color: #25D366;
}

.btn-excluir {
    padding: 12px 18px;
    border-radius: 12px;
    background: #d93025;
    color: white;
    text-decoration: none;
    font-size: 14px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s;
}

.btn-excluir:hover {
    background: #ff4b3e;
    transform: translateY(-2px);
}

.acao-bloqueada {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 42px;
    color: #25D366;
    font-weight: 800;
}

.btn-editar {
    padding: 12px 18px;
    border-radius: 12px;
    background: #f4b400;
    color: #07152f;
    text-decoration: none;
    font-size: 14px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s;
    margin: 3px;
}

.btn-editar:hover {
    background: #ffd45a;
    transform: translateY(-2px);
}

.saldo-colaboradores-card {
    margin-bottom: 30px;
}

.saldo-colaboradores-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 14px;
    margin-top: 20px;
}

.saldo-colaborador-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px;
    border-radius: 16px;
    background: rgba(16, 40, 88, 0.85);
    border: 1px solid rgba(255,255,255,0.08);
    text-decoration: none;
    cursor: pointer;
    transition: 0.3s;
}

.saldo-colaborador-item:hover {
    transform: translateY(-3px);
    border-color: rgba(51, 117, 250, 0.8);
}

.saldo-colaborador-item strong {
    display: block;
    color: white;
    font-size: 15px;
    margin-bottom: 6px;
}

.saldo-colaborador-item span {
    display: block;
    color: #9eb5f5;
    font-size: 12px;
    line-height: 1.5;
}

.saldo-colaborador-valor {
    min-width: 115px;
    text-align: right;
    color: white;
    font-size: 18px;
    font-weight: 900;
}

.saldo-colaborador-valor small {
    display: block;
    margin-top: 4px;
    color: #ffdd57;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.saldo-colaborador-item.saldo-alerta {
    background: rgba(217, 48, 37, 0.20);
    border: 1px solid rgba(255, 75, 62, 0.55);
    box-shadow: 0 0 0 1px rgba(255, 75, 62, 0.15);
}

.saldo-colaborador-item.saldo-alerta .saldo-colaborador-valor {
    color: #ff6b5f;
}

.saldo-colaborador-item.saldo-normal {
    border-left: 4px solid #25D366;
}

@media (max-width: 600px) {
    .saldo-colaborador-item {
        flex-direction: column;
        align-items: flex-start;
    }

    .saldo-colaborador-valor {
        text-align: left;
    }
}

html {
    scroll-behavior: smooth;
}

#extratoDespesas {
    scroll-margin-top: 120px;
}

.financeiro-card {
    cursor: pointer;
    position: relative;
}

.financeiro-card .valor-ajuda {
    display: block;
    margin-top: 8px;
    color: #9eb5f5;
    font-size: 12px;
    font-weight: 700;
}

.financeiro-card.valor-oculto h3 {
    letter-spacing: 2px;
    color: #dce5ff;
}

.financeiro-card:hover .valor-ajuda {
    color: white;
}

/* ================================
   REVISÃO DE RELATÓRIO
================================ */

.revisao-form {
    padding: 28px;
}

.revisao-form label {
    display: block;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 8px;
}

.revisao-textarea {
    width: 100%;
    min-height: 170px;
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 14px;
    padding: 14px 16px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    line-height: 1.6;
    color: #ffffff;
    background: #102858;
    resize: vertical;
    outline: none;
    transition: all 0.2s ease;
    margin-bottom: 22px;
}

.revisao-textarea::placeholder {
    color: #9eb5f5;
}

.revisao-textarea:focus {
    border-color: #3375FA;
    box-shadow: 0 0 0 3px rgba(51, 117, 250, 0.18);
}

.revisao-textarea-original {
    background: #102858;
}

.revisao-textarea-formatado {
    min-height: 210px;
}

.revisao-campos-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 20px;
}

.revisao-campo {
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 16px;
    padding: 14px;
}

.revisao-campo label {
    font-size: 13px;
    color: #ffffff;
    margin-bottom: 6px;
}

.revisao-campo-atual {
    font-size: 13px;
    color: #b8c7f3;
    margin-bottom: 8px;
}

.revisao-campo-atual strong {
    color: #ffffff;
}

.revisao-input {
    width: 100%;
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 12px;
    padding: 11px 12px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    background: #102858;
    color: #ffffff;
    outline: none;
    transition: all 0.2s ease;
}

.revisao-input::placeholder {
    color: #9eb5f5;
}

.revisao-input:focus {
    border-color: #3375FA;
    box-shadow: 0 0 0 3px rgba(51, 117, 250, 0.18);
}

.revisao-input-total {
    font-weight: 800;
    background: rgba(51,117,250,0.20);
    border-color: rgba(93,146,255,0.55);
    color: #ffffff;
}

.revisao-acoes {
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid rgba(255,255,255,0.10);
}

.btn-fluxo {
    border: none;
    border-radius: 12px;
    padding: 12px 18px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    transition: all 0.2s ease;
    min-height: 44px;
}

.btn-fluxo:hover {
    transform: translateY(-1px);
    filter: brightness(0.97);
}

.btn-fluxo-ia {
    background: #eef2ff;
    color: #3730a3;
    border: 1px solid #c7d2fe;
}

.btn-fluxo-salvar {
    background: #3375FA;
    color: #ffffff;
}

.btn-fluxo-finalizar {
    background: #7c3aed;
    color: #ffffff;
}

.btn-fluxo-enviar {
    background: #16a34a;
    color: #ffffff;
}

.btn-fluxo-voltar {
    background: #e2e8f0;
    color: #334155;
}

.status-geracao-relato {
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    color: #64748b;
    margin-left: 10px;
}

.revisao-ajuda {
    font-size: 13px;
    color: #64748b;
    margin-top: -10px;
    margin-bottom: 18px;
}

@media (max-width: 800px) {
    .revisao-campos-grid {
        grid-template-columns: 1fr;
    }

    .revisao-acoes {
        flex-direction: column;
        align-items: stretch;
    }

    .btn-fluxo {
        width: 100%;
    }

    .status-geracao-relato {
        margin-left: 0;
        margin-top: 8px;
    }
}

/* ÚLTIMOS RELATÓRIOS - COLABORADOR */

.colaborador-top-grid {
    grid-template-columns: minmax(280px, 0.8fr) minmax(320px, 1.4fr);
    align-items: stretch;
}

.ultimos-relatorios-card {
    padding: 28px;
}

.ultimos-relatorios-lista {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.ultimo-relatorio-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 15px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    transition: 0.3s;
}

    .ultimo-relatorio-item:hover {
        background: rgba(255,255,255,0.08);
        transform: translateY(-2px);
    }

.ultimo-relatorio-info {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

    .ultimo-relatorio-info strong {
        color: #5d92ff;
        font-size: 14px;
    }

    .ultimo-relatorio-info span {
        color: #dce5ff;
        font-size: 13px;
        line-height: 1.4;
    }

.status-relatorio-colaborador {
    min-width: 105px;
    padding: 9px 12px;
    border-radius: 999px;
    text-align: center;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.3px;
    white-space: nowrap;
}

    .status-relatorio-colaborador.pendente {
        background: rgba(255,193,7,0.18);
        color: #ffd76a;
    }

    .status-relatorio-colaborador.em-revisao {
        background: rgba(51,117,250,0.18);
        color: #8fb4ff;
    }

    .status-relatorio-colaborador.avaliado {
        background: rgba(37,211,102,0.18);
        color: #6fffac;
    }

    .status-relatorio-colaborador.faturado {
        background: rgba(155,89,182,0.22);
        color: #e8b7ff;
    }

    .status-relatorio-colaborador.enviado {
        background: rgba(0,188,212,0.18);
        color: #7beeff;
    }

.sem-relatorios-colaborador {
    padding: 18px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    color: #b8c7f3;
    text-align: center;
    font-size: 14px;
}

@media(max-width:900px) {
    
    .ultimo-relatorio-item {
        flex-direction: column;
        align-items: flex-start;
    }

    .status-relatorio-colaborador {
        width: 100%;
    }
}

/* CARD RELATÓRIOS SEPARADO - COLABORADOR */

.relatorios-colaborador-separado {
    margin-top: 45px;
    margin-bottom: 45px;
    width: 100%;
}

.ultimos-relatorios-card {
    padding: 28px;
}

    .ultimos-relatorios-card .card-title {
        margin-bottom: 20px;
    }

/* SERVIÇOS MARCADOS - REVISÃO ADMINISTRATIVA */

.revisao-bloco-servicos {
    margin-bottom: 26px;
}

.servicos-revisao-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
    margin-top: 14px;
}

.servico-revisao-opcao {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    border-radius: 14px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    color: #dce5ff;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.3s;
}

.servico-revisao-opcao:hover {
    background: rgba(255,255,255,0.08);
    transform: translateY(-2px);
}

.servico-revisao-opcao input {
    width: 18px;
    height: 18px;
    accent-color: #3375FA;
    cursor: pointer;
}

.servico-revisao-opcao span {
    line-height: 1.4;
}

/* CORREÇÃO TEXTO CHECKBOX SERVIÇOS - REVISÃO */

.servicos-revisao-grid,
.servicos-revisao-grid label,
.servicos-revisao-grid span,
.servico-revisao-opcao,
.servico-revisao-opcao span {
    color: #ffffff !important;
}

.servico-revisao-opcao {
    background: rgba(255,255,255,0.06);
}

.servico-revisao-opcao:hover {
    background: rgba(51,117,250,0.22);
}

.servico-revisao-opcao input[type="checkbox"] {
    accent-color: #3375FA;
}

/* PEÇAS / ITENS - REVISÃO ADMINISTRATIVA */

.revisao-bloco-pecas {
    margin-bottom: 28px;
}

.pecas-revisao-lista {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 16px;
}

.peca-revisao-item {
    padding: 16px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
}

.peca-revisao-numero {
    color: #5d92ff;
    font-weight: 800;
    font-size: 14px;
    margin-bottom: 12px;
}

.peca-revisao-campos {
    display: grid;
    grid-template-columns: 110px 1fr 170px;
    gap: 12px;
    align-items: end;
}

.peca-revisao-campos label,
.revisao-bloco-pecas label {
    color: #ffffff !important;
}

.peca-revisao-campos input {
    color: #ffffff !important;
}

@media(max-width:768px) {

    .peca-revisao-campos {
        grid-template-columns: 1fr;
    }
}

/* PEÇAS / ITENS - REVISÃO ADMINISTRATIVA */

.revisao-bloco-pecas {
    margin-bottom: 28px;
}

.pecas-revisao-lista {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 16px;
}

.peca-revisao-item {
    padding: 16px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
}

.peca-revisao-numero {
    color: #5d92ff;
    font-weight: 800;
    font-size: 14px;
    margin-bottom: 12px;
}

.peca-revisao-campos {
    display: grid;
    grid-template-columns: 110px 1fr 170px;
    gap: 12px;
    align-items: end;
}

.peca-revisao-campos label,
.revisao-bloco-pecas label {
    color: #ffffff !important;
}

.peca-revisao-campos input {
    color: #ffffff !important;
}

#campoTotalPecasRevisao[readonly] {
    background: rgba(51,117,250,0.16);
    border: 1px solid rgba(93,146,255,0.45);
    color: #ffffff !important;
    cursor: not-allowed;
}

@media(max-width:768px) {

    .peca-revisao-campos {
        grid-template-columns: 1fr;
    }
}

/* CORREÇÃO CAMPOS DA REVISÃO ADMINISTRATIVA */

.revisao-form input,
.revisao-form textarea,
.revisao-form select,
.revisao-form .revisao-input,
.revisao-form .revisao-textarea {
    background: #102858 !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
    border-radius: 14px;
    outline: none;
}

.revisao-form input::placeholder,
.revisao-form textarea::placeholder {
    color: #9eb5f5 !important;
}

.revisao-form input:focus,
.revisao-form textarea:focus,
.revisao-form select:focus {
    border-color: #3375FA !important;
    box-shadow: 0 0 0 3px rgba(51,117,250,0.18);
}

.revisao-form label,
.revisao-form .revisao-campo label,
.revisao-bloco-pecas label,
.peca-revisao-campos label {
    color: #ffffff !important;
}

.revisao-campo-atual,
.revisao-ajuda {
    color: #b8c7f3 !important;
}

.revisao-campo-atual strong {
    color: #ffffff !important;
}

/* CAMPOS DE PEÇAS / ITENS */

.peca-revisao-item {
    background: rgba(255,255,255,0.05) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
}

.peca-revisao-numero {
    color: #5d92ff !important;
}

.peca-revisao-campos input {
    background: #102858 !important;
    color: #ffffff !important;
}

/* CAMPO PEÇAS AUTOMÁTICO */

#campoTotalPecasRevisao {
    background: rgba(51,117,250,0.20) !important;
    color: #ffffff !important;
    border: 1px solid rgba(93,146,255,0.55) !important;
}

/* AJUSTE FINAL VISUAL - REVISÃO ADMINISTRATIVA */

.revisao-form,
.revisao-form * {
    box-sizing: border-box;
}

.revisao-form .revisao-campo {
    background: rgba(255,255,255,0.06) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
}

.revisao-form .revisao-campo label,
.revisao-form label {
    color: #ffffff !important;
}

.revisao-form .revisao-campo-atual {
    color: #b8c7f3 !important;
}

.revisao-form .revisao-campo-atual strong {
    color: #ffffff !important;
}

.revisao-form .revisao-input,
.revisao-form .revisao-textarea,
.revisao-form input,
.revisao-form textarea {
    background: #102858 !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
}

.revisao-form .revisao-input::placeholder,
.revisao-form .revisao-textarea::placeholder,
.revisao-form input::placeholder,
.revisao-form textarea::placeholder {
    color: #9eb5f5 !important;
}

#campoTotalPecasRevisao[readonly] {
    background: rgba(51,117,250,0.20) !important;
    color: #ffffff !important;
    border: 1px solid rgba(93,146,255,0.55) !important;
}

/* LISTA RELATÓRIOS NÃO FATURADOS - COLABORADOR */

.ultimos-relatorios-card .ultimos-relatorios-lista {
    max-height: 620px;
    overflow-y: auto;
    padding-right: 6px;
}

.ultimos-relatorios-card .ultimos-relatorios-lista::-webkit-scrollbar {
    width: 8px;
}

.ultimos-relatorios-card .ultimos-relatorios-lista::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.05);
    border-radius: 999px;
}

.ultimos-relatorios-card .ultimos-relatorios-lista::-webkit-scrollbar-thumb {
    background: rgba(93,146,255,0.55);
    border-radius: 999px;
}

/* AÇÕES RELATÓRIOS NÃO FATURADOS - COLABORADOR */

.ultimo-relatorio-acoes {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.btn-relatorio-colaborador {
    padding: 9px 14px;
    font-size: 12px;
    border-radius: 999px;
    white-space: nowrap;
}

@media(max-width:900px) {

    .ultimo-relatorio-acoes {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }

    .btn-relatorio-colaborador {
        width: 100%;
        text-align: center;
    }

}

.btn-excluir {
    border: 0;
    background: #dc2626;
    color: #ffffff;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.2s;
}

.btn-excluir:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
}

/* CARDS DO FECHAMENTO FINANCEIRO */

.financeiro-fechamento-cards {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 14px;
}

    .financeiro-fechamento-cards .mini-card {
        min-height: auto;
        padding: 18px 12px;
        border-radius: 18px;
        text-align: center;
    }

    .financeiro-fechamento-cards .dash-icon {
        font-size: 26px;
        margin-bottom: 8px;
        display: block;
    }

    .financeiro-fechamento-cards .mini-card h3 {
        font-size: 25px;
        line-height: 1.1;
        margin: 6px 0;
    }

    .financeiro-fechamento-cards .mini-card p {
        font-size: 13px;
        margin: 0;
    }

/* Responsivo */
@media (max-width: 1100px) {
    .financeiro-fechamento-cards {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 700px) {
    .financeiro-fechamento-cards {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 430px) {
    .financeiro-fechamento-cards {
        grid-template-columns: 1fr;
    }
}

/* IMPRESSÃO DO FECHAMENTO FINANCEIRO */

.print-only {
    display: none;
}

@media print {

    @page {
        size: A4 landscape;
        margin: 8mm;
    }

    html,
    body {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        color: #000000 !important;
        overflow: visible !important;
    }

        /*
        Esconde tudo da página sem ocupar espaço.
        Diferente de visibility:hidden, display:none remove da impressão.
    */
        body > * {
            display: none !important;
        }

    /*
        Mostra somente a área principal do painel e o fechamento.
    */
    .painel-area,
    .painel-area > .container,
    #fechamento-comissoes-financeiro {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        color: #000000 !important;
        overflow: visible !important;
        position: static !important;
        box-shadow: none !important;
        border: 0 !important;
    }

        /*
        Esconde todos os filhos do container.
    */
        .painel-area > .container > * {
            display: none !important;
        }

        /*
        Reexibe apenas o card de fechamento.
    */
        .painel-area > .container > #fechamento-comissoes-financeiro,
        #fechamento-comissoes-financeiro,
        #fechamento-comissoes-financeiro * {
            display: revert !important;
            visibility: visible !important;
        }

        /*
        Remove fundos decorativos e efeitos.
    */
        .painel-area::before,
        .painel-area::after {
            display: none !important;
            content: none !important;
        }

    .no-print {
        display: none !important;
    }

    .print-only {
        display: flex !important;
    }

    #fechamento-comissoes-financeiro {
        page-break-after: avoid !important;
        break-after: avoid !important;
    }

    .cabecalho-impressao-financeiro {
        display: flex !important;
        justify-content: space-between;
        align-items: flex-start;
        gap: 20px;
        border-bottom: 2px solid #000000;
        padding-bottom: 8px;
        margin-bottom: 10px;
        color: #000000 !important;
    }

        .cabecalho-impressao-financeiro h2 {
            margin: 0 0 4px;
            font-size: 20px;
            color: #000000 !important;
        }

        .cabecalho-impressao-financeiro p {
            margin: 2px 0;
            color: #000000 !important;
            font-size: 11px;
        }

    #fechamento-comissoes-financeiro .card-title {
        display: none !important;
    }

    #fechamento-comissoes-financeiro .painel-subtitulo,
    #fechamento-comissoes-financeiro strong,
    #fechamento-comissoes-financeiro p,
    #fechamento-comissoes-financeiro h3,
    #fechamento-comissoes-financeiro td,
    #fechamento-comissoes-financeiro th {
        color: #000000 !important;
    }

    #fechamento-comissoes-financeiro .dashboard-card,
    #fechamento-comissoes-financeiro .mini-card {
        background: #ffffff !important;
        color: #000000 !important;
        border: 1px solid #cccccc !important;
        box-shadow: none !important;
    }

    #fechamento-comissoes-financeiro .financeiro-fechamento-cards {
        display: grid !important;
        grid-template-columns: repeat(5, 1fr) !important;
        gap: 6px !important;
        margin-bottom: 10px !important;
    }

    #fechamento-comissoes-financeiro .mini-card {
        padding: 6px !important;
        min-height: auto !important;
        border-radius: 6px !important;
        text-align: center !important;
    }

        #fechamento-comissoes-financeiro .mini-card .dash-icon {
            display: none !important;
        }

        #fechamento-comissoes-financeiro .mini-card h3 {
            font-size: 14px !important;
            margin: 0 0 3px !important;
            color: #000000 !important;
        }

        #fechamento-comissoes-financeiro .mini-card p {
            font-size: 10px !important;
            margin: 0 !important;
            color: #000000 !important;
        }

    #fechamento-comissoes-financeiro .dashboard-tabela-scroll {
        overflow: visible !important;
    }

    #fechamento-comissoes-financeiro table {
        width: 100% !important;
        border-collapse: collapse !important;
        font-size: 9px !important;
        color: #000000 !important;
        page-break-inside: auto !important;
    }

    #fechamento-comissoes-financeiro tr {
        page-break-inside: avoid !important;
        break-inside: avoid !important;
    }

    #fechamento-comissoes-financeiro th {
        background: #eeeeee !important;
        color: #000000 !important;
        border: 1px solid #999999 !important;
        padding: 4px !important;
        text-align: left !important;
    }

    #fechamento-comissoes-financeiro td {
        background: #ffffff !important;
        color: #000000 !important;
        border: 1px solid #cccccc !important;
        padding: 4px !important;
    }

    #fechamento-comissoes-financeiro .badge {
        background: transparent !important;
        border: 0 !important;
        color: #000000 !important;
        padding: 0 !important;
        font-weight: 700 !important;
    }
}

@media print {

    @page {
        size: A4 landscape;
        margin: 10mm;
    }

    body {
        background: #ffffff !important;
        color: #000000 !important;
    }

        body * {
            visibility: hidden;
        }

    #fechamento-comissoes-financeiro,
    #fechamento-comissoes-financeiro * {
        visibility: visible;
    }

    #fechamento-comissoes-financeiro {
        position: static !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        color: #000000 !important;
        box-shadow: none !important;
        border: 0 !important;
        page-break-after: auto !important;
    }

    .no-print {
        display: none !important;
    }

    .print-only {
        display: flex !important;
    }

    .cabecalho-impressao-financeiro {
        justify-content: space-between;
        align-items: flex-start;
        gap: 20px;
        border-bottom: 2px solid #000000;
        padding-bottom: 10px;
        margin-bottom: 14px;
        color: #000000 !important;
    }

        .cabecalho-impressao-financeiro h2 {
            margin: 0 0 4px;
            font-size: 22px;
            color: #000000 !important;
        }

        .cabecalho-impressao-financeiro p {
            margin: 2px 0;
            color: #000000 !important;
            font-size: 12px;
        }

    #fechamento-comissoes-financeiro .painel-subtitulo,
    #fechamento-comissoes-financeiro strong,
    #fechamento-comissoes-financeiro p,
    #fechamento-comissoes-financeiro h3,
    #fechamento-comissoes-financeiro td,
    #fechamento-comissoes-financeiro th {
        color: #000000 !important;
    }

    #fechamento-comissoes-financeiro .dashboard-card,
    #fechamento-comissoes-financeiro .mini-card {
        background: #ffffff !important;
        color: #000000 !important;
        border: 1px solid #cccccc !important;
        box-shadow: none !important;
    }

    #fechamento-comissoes-financeiro .financeiro-fechamento-cards {
        display: grid !important;
        grid-template-columns: repeat(5, 1fr) !important;
        gap: 8px !important;
        margin-bottom: 12px !important;
    }

    #fechamento-comissoes-financeiro .mini-card {
        padding: 8px !important;
        min-height: auto !important;
        border-radius: 8px !important;
    }

        #fechamento-comissoes-financeiro .mini-card .dash-icon {
            display: none !important;
        }

        #fechamento-comissoes-financeiro .mini-card h3 {
            font-size: 16px !important;
            margin: 0 0 4px !important;
            color: #000000 !important;
        }

        #fechamento-comissoes-financeiro .mini-card p {
            font-size: 11px !important;
            margin: 0 !important;
            color: #000000 !important;
        }

    #fechamento-comissoes-financeiro .dashboard-tabela-scroll {
        overflow: visible !important;
    }

    #fechamento-comissoes-financeiro table {
        width: 100% !important;
        border-collapse: collapse !important;
        font-size: 10px !important;
        color: #000000 !important;
    }

    #fechamento-comissoes-financeiro th {
        background: #eeeeee !important;
        color: #000000 !important;
        border: 1px solid #999999 !important;
        padding: 6px !important;
        text-align: left !important;
    }

    #fechamento-comissoes-financeiro td {
        background: #ffffff !important;
        color: #000000 !important;
        border: 1px solid #cccccc !important;
        padding: 5px !important;
    }

    #fechamento-comissoes-financeiro .badge {
        background: transparent !important;
        border: 0 !important;
        color: #000000 !important;
        padding: 0 !important;
        font-weight: 700 !important;
    }

    html,
    body {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    .painel-area,
    .painel-area .container,
    .services {
        min-height: 0 !important;
        height: auto !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
    }

        .painel-area::before,
        .painel-area::after {
            display: none !important;
            content: none !important;
        }
}

.financeiro-acoes-lote {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
}

.financeiro-acoes-fechamento {
    align-items: center;
}

    .financeiro-acoes-fechamento form {
        display: flex !important;
        align-items: center;
        margin: 0;
    }

    .financeiro-acoes-fechamento .btn-filtrar {
        height: 45px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        white-space: nowrap;
        margin: 0;
    }

.badge.yellow {
    background: rgba(245, 158, 11, 0.18);
    color: #fde68a;
    border: 1px solid rgba(245, 158, 11, 0.35);
}

.comissoes-colaborador-detalhe {
    width: 100%;
    margin-top: 25px;
    margin-bottom: 30px;
    clear: both;
}

    .comissoes-colaborador-detalhe .dashboard-tabela-scroll {
        width: 100%;
        overflow-x: auto;
    }

/* ALINHAMENTO DOS BOTÕES DO FECHAMENTO DE COMISSÃO */

#fechamento-comissoes-financeiro .card-title.no-print {
    display: block !important;
}

    #fechamento-comissoes-financeiro .card-title.no-print h3 {
        margin-bottom: 18px;
    }

#fechamento-comissoes-financeiro .financeiro-acoes-lote,
#fechamento-comissoes-financeiro .financeiro-acoes-fechamento {
    width: 100%;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px;
    flex-wrap: wrap;
}

    #fechamento-comissoes-financeiro .financeiro-acoes-lote form,
    #fechamento-comissoes-financeiro .financeiro-acoes-fechamento form {
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
    }

    #fechamento-comissoes-financeiro .financeiro-acoes-lote .badge,
    #fechamento-comissoes-financeiro .financeiro-acoes-lote .btn-filtrar,
    #fechamento-comissoes-financeiro .financeiro-acoes-fechamento .badge,
    #fechamento-comissoes-financeiro .financeiro-acoes-fechamento .btn-filtrar {
        height: 45px;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        white-space: nowrap;
        margin: 0 !important;
    }

/* RELATÓRIOS DE VISITA */

.visita-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.visita-form-grid label {
    display: block;
    margin-bottom: 8px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
}

.visita-form-full {
    grid-column: 1 / -1;
}

.upload-form textarea {
    width: 100%;
    padding: 16px 18px;
    border: none;
    border-radius: 14px;
    background: #102858;
    color: white;
    font-size: 15px;
    font-family: 'Montserrat', sans-serif;
    resize: vertical;
    min-height: 120px;
    outline: none;
}

.upload-form textarea::placeholder {
    color: #9eb5f5;
}

.upload-form input:focus,
.upload-form textarea:focus,
.upload-form select:focus {
    box-shadow: 0 0 0 3px rgba(51,117,250,0.22);
}

@media(max-width:768px) {
    .visita-form-grid {
        grid-template-columns: 1fr;
    }
}


/* RELATÓRIOS DE VISITA - BOTÕES DO FORMULÁRIO */

.visita-botoes-form {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 22px;
}

.visita-btn-form {
    width: 100%;
    min-height: 52px;
    padding: 0 22px;
    border: 0;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none !important;
    font-family: inherit;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.2;
    cursor: pointer;
    box-sizing: border-box;
    transition: 0.3s;
}

.visita-btn-principal {
    background: #3375FA;
    color: #ffffff !important;
}

.visita-btn-secundario {
    background: #3375FA;
    color: #ffffff !important;
}

.visita-btn-form:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
}

/* PAGINAÇÃO RELATÓRIOS */

.relatorios-paginacao-info {
    margin: 18px 0 22px;
    padding: 14px 18px;
    border-radius: 14px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.08);
    color: #dce5ff;
    font-size: 14px;
}

.paginacao-relatorios {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 26px;
}

.paginacao-relatorios a {
    text-decoration: none;
}

@media(max-width:768px) {
    .paginacao-relatorios a {
        width: 100%;
        text-align: center;
    }
}

/* MENU HEADER AGRUPADO */

.menu-wrapper {
    position: relative;
}

.menu-painel-novo {
    display: flex;
    align-items: center;
    gap: 8px;
}

.menu-painel-novo > a,
.menu-painel-novo summary {
    color: white;
    text-decoration: none;
    font-weight: 700;
    padding: 10px 13px;
    border-radius: 12px;
    cursor: pointer;
    list-style: none;
    transition: 0.25s;
    white-space: nowrap;
}

.menu-painel-novo > a {
    margin-left: 0;
}

.menu-painel-novo summary::-webkit-details-marker {
    display: none;
}

.menu-painel-novo summary::after {
    content: " ▾";
    font-size: 12px;
    opacity: 0.85;
}

.menu-painel-novo > a:hover,
.menu-painel-novo summary:hover {
    background: rgba(255,255,255,0.14);
    color: white;
}

.menu-grupo {
    position: relative;
}

.menu-grupo[open] summary,
.menu-grupo.menu-grupo-ativo summary {
    background: rgba(255,255,255,0.16);
    color: #ffffff;
    box-shadow: 0 6px 18px rgba(0,0,0,0.18);
}

.menu-submenu {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    min-width: 230px;
    padding: 10px;
    border-radius: 18px;
    background: rgba(7,21,47,0.98);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 18px 45px rgba(0,0,0,0.35);
    display: flex;
    flex-direction: column;
    gap: 6px;
    z-index: 3000;
}

.menu-submenu a {
    margin-left: 0;
    padding: 12px 14px;
    border-radius: 12px;
    color: #dce5ff;
    text-decoration: none;
    font-weight: 700;
}

.menu-submenu a:hover {
    background: rgba(51,117,250,0.22);
    color: white;
}

.menu-submenu a.menu-ativo {
    background: #3375FA;
    color: white;
    box-shadow: none;
}

.menu-toggle {
    display: none;
    border: 0;
    border-radius: 12px;
    padding: 12px 16px;
    background: #3375FA;
    color: white;
    font-weight: 800;
    cursor: pointer;
}

@media(max-width:1100px) {

    .menu-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .menu-painel-novo {
        display: none;
        position: absolute;
        right: 0;
        top: calc(100% + 14px);
        width: min(92vw, 360px);
        padding: 14px;
        border-radius: 20px;
        background: rgba(7,21,47,0.98);
        border: 1px solid rgba(255,255,255,0.12);
        box-shadow: 0 18px 45px rgba(0,0,0,0.38);
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        z-index: 3000;
    }

    .menu-painel-novo.ativo {
        display: flex;
    }

    .menu-painel-novo > a,
    .menu-painel-novo summary {
        width: 100%;
        display: block;
        padding: 13px 14px;
    }

    .menu-grupo {
        width: 100%;
    }

    .menu-submenu {
        position: static;
        margin-top: 8px;
        min-width: 100%;
        background: rgba(255,255,255,0.05);
        box-shadow: none;
        border-radius: 14px;
    }

    .menu-submenu a {
        padding: 11px 14px;
    }
}

@media(min-width:1101px) {
    .menu-toggle {
        display: none !important;
    }

    .menu-painel-novo {
        display: flex !important;
        position: static !important;
        width: auto !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        flex-direction: row !important;
        align-items: center !important;
    }

    .menu-painel-novo.ativo {
        display: flex !important;
    }
}

/* CORREÇÃO MENU HEADER AGRUPADO */

@media(min-width:1101px) {
    .menu-toggle {
        display: none !important;
    }

    nav.menu-painel.menu-painel-novo {
        display: flex !important;
        position: static !important;
        width: auto !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 8px !important;
    }

    nav.menu-painel.menu-painel-novo.ativo {
        display: flex !important;
    }

    nav.menu-painel.menu-painel-novo .menu-submenu {
        position: absolute !important;
    }
}

@media(max-width:1100px) {
    nav.menu-painel.menu-painel-novo {
        display: none !important;
        position: absolute !important;
        right: 0 !important;
        top: calc(100% + 14px) !important;
        width: min(92vw, 360px) !important;
        padding: 14px !important;
        border-radius: 20px !important;
        background: rgba(7,21,47,0.98) !important;
        border: 1px solid rgba(255,255,255,0.12) !important;
        box-shadow: 0 18px 45px rgba(0,0,0,0.38) !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 8px !important;
        z-index: 3000 !important;
    }

    nav.menu-painel.menu-painel-novo.ativo {
        display: flex !important;
    }
}

/* AGENDA MENSAL */

.agenda-layout {
    display: grid;
    grid-template-columns: 420px 1fr;
    gap: 25px;
    align-items: start;
}

.agenda-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.agenda-form-grid label {
    display: block;
    margin-bottom: 8px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
}

.agenda-form-grid input,
.agenda-form-grid select,
.agenda-form-grid textarea {
    width: 100%;
    padding: 14px 16px;
    border: none;
    border-radius: 14px;
    background: #102858;
    color: #ffffff;
    font-size: 15px;
    font-family: 'Montserrat', sans-serif;
    outline: none;
}

.agenda-form-grid input[type="datetime-local"] {
    color-scheme: dark;
}

.agenda-form-grid textarea {
    resize: vertical;
    min-height: 110px;
}

.agenda-form-full {
    grid-column: 1 / -1;
}

.agenda-calendario-topo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 24px;
}

.agenda-calendario-topo h3 {
    text-transform: lowercase;
    font-size: 28px;
    color: #ffffff;
    text-align: center;
}

.agenda-calendario {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 10px;
}

.agenda-dia-semana {
    text-align: center;
    color: #b8c7f3;
    font-weight: 900;
    font-size: 15px;
    padding-bottom: 8px;
}

.agenda-dia {
    min-height: 118px;
    border-radius: 18px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    padding: 10px;
    position: relative;
    overflow: hidden;
}

.agenda-dia-vazio {
    background: transparent;
    border: none;
}

.agenda-dia-hoje {
    background: rgba(51,117,250,0.20);
    border: 1px solid rgba(93,146,255,0.70);
    box-shadow: 0 0 0 2px rgba(51,117,250,0.10);
}

.agenda-dia-com-evento {
    border-color: rgba(255,255,255,0.16);
}

.agenda-dia-numero {
    color: #ffffff;
    font-size: 20px;
    font-weight: 900;
    margin-bottom: 8px;
}

.agenda-pontos {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.agenda-pontos span {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    display: inline-block;
}

.ponto-verde {
    background: #00e532;
    box-shadow: 0 0 8px rgba(0,229,50,0.75);
}

.ponto-vermelho {
    background: #ff1e1e;
    box-shadow: 0 0 8px rgba(255,30,30,0.65);
}

.agenda-dia-lista {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.agenda-evento-mini {
    display: block;
    padding: 6px 7px;
    border-radius: 9px;
    background: rgba(51,117,250,0.16);
    color: #dce5ff;
    text-decoration: none;
    font-size: 11px;
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
}

.agenda-evento-mini strong {
    color: #ffffff;
    margin-right: 4px;
}

.agenda-evento-mini:hover {
    background: rgba(51,117,250,0.32);
}

.agenda-mais {
    color: #9bb8ff;
    font-size: 11px;
    font-weight: 800;
}

.status-pendente {
    background: rgba(255,193,7,0.18);
    color: #ffd76a;
}

.status-pago {
    background: rgba(37,211,102,0.18);
    color: #6fffac;
}

@media(max-width:1100px) {
    .agenda-layout {
        grid-template-columns: 1fr;
    }

    .agenda-calendario {
        gap: 7px;
    }

    .agenda-dia {
        min-height: 95px;
        padding: 8px;
    }

    .agenda-evento-mini {
        display: none;
    }
}

@media(max-width:768px) {
    .agenda-calendario-topo {
        flex-direction: column;
    }

    .agenda-calendario {
        gap: 5px;
    }

    .agenda-dia {
        min-height: 72px;
        border-radius: 14px;
    }

    .agenda-dia-numero {
        font-size: 17px;
    }

    .agenda-dia-semana {
        font-size: 12px;
    }
}

/* CORREÇÃO AGENDA MOBILE */

@media(max-width:768px) {

    .agenda-layout {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .agenda-layout .dashboard-card {
        padding: 18px !important;
        border-radius: 20px !important;
        overflow: hidden !important;
    }

    .agenda-calendario-topo {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        text-align: center !important;
        margin-bottom: 18px !important;
    }

    .agenda-calendario-topo h3 {
        order: 1;
        font-size: 26px !important;
        line-height: 1.1 !important;
        margin: 4px 0 !important;
    }

    .agenda-calendario-topo a:first-child {
        order: 2;
    }

    .agenda-calendario-topo a:last-child {
        order: 3;
    }

    .agenda-calendario-topo .btn-preview,
    .agenda-calendario-topo .btn-download,
    .agenda-calendario-topo a {
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        margin: 0 !important;
        padding: 12px !important;
        font-size: 14px !important;
    }

    .agenda-calendario {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
        gap: 4px !important;
        overflow: visible !important;
    }

    .agenda-dia-semana {
        display: block !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        text-align: center !important;
        padding: 0 0 6px !important;
        color: #b8c7f3 !important;
        line-height: 1.1 !important;
    }

    .agenda-dia {
        min-height: 46px !important;
        height: 46px !important;
        padding: 5px 2px !important;
        border-radius: 10px !important;
        text-align: center !important;
        overflow: hidden !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    .agenda-dia-vazio {
        min-height: 46px !important;
        height: 46px !important;
    }

    .agenda-dia-numero {
        font-size: 15px !important;
        line-height: 1 !important;
        margin: 0 0 5px !important;
        width: 100% !important;
        text-align: center !important;
    }

    .agenda-pontos {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 3px !important;
        flex-wrap: wrap !important;
        margin: 0 !important;
        max-height: 16px !important;
        overflow: hidden !important;
    }

    .agenda-pontos span {
        width: 6px !important;
        height: 6px !important;
        min-width: 6px !important;
        min-height: 6px !important;
    }

    .agenda-dia-lista,
    .agenda-evento-mini,
    .agenda-mais {
        display: none !important;
    }

    .agenda-dia-hoje {
        box-shadow: inset 0 0 0 2px rgba(93,146,255,0.80) !important;
    }
}

/* BUSCA DE CLIENTE NA AGENDA */

.agenda-cliente-busca-wrap {
    position: relative;
}

.agenda-cliente-busca {
    width: 100%;
}

.agenda-cliente-resultados {
    display: none;
    position: absolute;
    z-index: 5000;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    max-height: 320px;
    overflow-y: auto;
    padding: 8px;
    border-radius: 16px;
    background: rgba(7,21,47,0.98);
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 18px 45px rgba(0,0,0,0.40);
}

.agenda-cliente-resultados.ativo {
    display: block;
}

.agenda-cliente-opcao {
    width: 100%;
    display: none;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 12px 14px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: white;
    text-align: left;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
}

.agenda-cliente-opcao:hover {
    background: rgba(51,117,250,0.25);
}

.agenda-cliente-opcao strong {
    color: white;
    font-size: 14px;
}

.agenda-cliente-opcao span {
    color: #9bb8ff;
    font-size: 13px;
}

.agenda-cliente-opcao small {
    color: #dce5ff;
    font-size: 12px;
    opacity: 0.85;
}

.agenda-cliente-ajuda {
    display: block;
    margin-top: 8px;
    color: #9bb8ff;
    font-size: 12px;
    line-height: 1.4;
}

@media(max-width:768px) {
    .agenda-cliente-resultados {
        position: fixed;
        left: 18px;
        right: 18px;
        top: 160px;
        max-height: 55vh;
    }
}

/* TÉCNICOS DA AGENDA */

.agenda-tecnicos-box {
    padding: 14px;
    border-radius: 16px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.10);
}

.agenda-tecnicos-ajuda {
    margin-bottom: 12px;
    color: #9bb8ff;
    font-size: 13px;
    line-height: 1.4;
}

.agenda-tecnicos-grupo {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px;
}

.agenda-tecnico-check {
    display: flex !important;
    align-items: center;
    gap: 10px;
    padding: 12px 13px;
    border-radius: 13px;
    background: rgba(16,40,88,0.85);
    border: 1px solid rgba(255,255,255,0.08);
    cursor: pointer;
    margin: 0 !important;
}

.agenda-tecnico-check:hover {
    background: rgba(51,117,250,0.20);
}

.agenda-tecnico-check input {
    width: 18px !important;
    height: 18px !important;
    accent-color: #3375FA;
}

.agenda-tecnico-check span {
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.agenda-tecnico-check small {
    color: #9bb8ff;
    font-size: 11px;
    font-weight: 600;
}

.agenda-tecnicos-vazio {
    padding: 14px;
    border-radius: 12px;
    background: rgba(255,193,7,0.12);
    color: #ffd76a;
    font-size: 13px;
    font-weight: 700;
}

@media(max-width:768px) {
    .agenda-tecnicos-grupo {
        grid-template-columns: 1fr;
    }
}

.badge-email-enviado,
.badge-email-nao-enviado {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    line-height: 1;
    min-width: 92px;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
}

.badge-email-enviado {
    background: rgba(37, 211, 102, 0.18);
    color: #b8ffd2;
    border: 1px solid rgba(37, 211, 102, 0.45);
}

.badge-email-nao-enviado {
    background: rgba(239, 68, 68, 0.18);
    color: #fecaca;
    border: 1px solid rgba(239, 68, 68, 0.45);
}

#relatorios-pendentes-faturamento {
    scroll-margin-top: 140px;
}

.badge-status-faturado,
.badge-status-pendente {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    line-height: 1;
    min-width: 96px;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
}

.badge-status-pendente {
    background: rgba(245, 158, 11, 0.18);
    color: #fde68a;
    border: 1px solid rgba(245, 158, 11, 0.45);
}

.badge-status-faturado {
    flex-direction: column;
    gap: 4px;
    min-width: 105px;
    padding: 8px 12px;
    background: rgba(37, 211, 102, 0.18);
    color: #b8ffd2;
    border: 1px solid rgba(37, 211, 102, 0.45);
}

.badge-status-faturado strong {
    font-size: 13px;
    line-height: 1;
}

.badge-status-faturado small {
    font-size: 11px;
    line-height: 1;
    font-weight: 700;
    color: #d8ffe7;
}

#lista-comissoes-colaborador {
    scroll-margin-top: 140px;
}

/* DASHBOARD ADMIN - RESUMO EXECUTIVO */

.dashboard-executivo {
    margin: 30px 0;
    padding: 28px;
    border-radius: 28px;
    background:
        linear-gradient(
            135deg,
            rgba(13,34,79,0.96),
            rgba(7,21,47,0.96)
        );
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 15px 45px rgba(0,0,0,0.28);
}

.dashboard-executivo-header,
.dashboard-alertas-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}

.dashboard-executivo-header h3,
.dashboard-alertas-header h3 {
    font-size: 24px;
    margin-bottom: 8px;
}

.dashboard-executivo-header p,
.dashboard-alertas-header p {
    color: #b8c7f3;
    line-height: 1.5;
}

.dashboard-periodo-badge {
    padding: 10px 16px;
    border-radius: 999px;
    background: rgba(51,117,250,0.20);
    color: #dce8ff;
    border: 1px solid rgba(51,117,250,0.40);
    font-weight: 800;
    white-space: nowrap;
}

.dashboard-executivo-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 18px;
}

.dashboard-executivo-card {
    padding: 22px;
    border-radius: 22px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.dashboard-executivo-card span {
    color: #b8c7f3;
    font-size: 14px;
    font-weight: 700;
}

.dashboard-executivo-card strong {
    color: white;
    font-size: 26px;
    line-height: 1.15;
}

.dashboard-executivo-card small {
    color: #9bb8ff;
    line-height: 1.4;
}

.destaque-financeiro {
    border-color: rgba(37,211,102,0.32);
}

.destaque-despesa {
    border-color: rgba(245,158,11,0.32);
}

.destaque-positivo {
    border-color: rgba(37,211,102,0.42);
    background: rgba(37,211,102,0.10);
}

.destaque-negativo {
    border-color: rgba(239,68,68,0.45);
    background: rgba(239,68,68,0.10);
}

.destaque-operacional {
    border-color: rgba(51,117,250,0.35);
}

/* CENTRAL DE ALERTAS ADMIN */

.dashboard-alertas-admin {
    margin: 0 0 35px;
    padding: 26px;
    border-radius: 26px;
    background: rgba(13,34,79,0.80);
    border: 1px solid rgba(255,255,255,0.08);
}

.dashboard-alertas-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 16px;
}

.dashboard-alerta-card {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px;
    border-radius: 20px;
    text-decoration: none;
    color: white;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
    transition: 0.25s;
}

.dashboard-alerta-card:hover {
    transform: translateY(-3px);
    background: rgba(255,255,255,0.08);
}

.dashboard-alerta-card > span {
    font-size: 28px;
}

.dashboard-alerta-card strong {
    display: block;
    font-size: 18px;
    margin-bottom: 5px;
}

.dashboard-alerta-card p {
    color: #b8c7f3;
    font-size: 13px;
    line-height: 1.4;
}

.alerta-vermelho {
    border-color: rgba(239,68,68,0.45);
    background: rgba(239,68,68,0.10);
}

.alerta-ok {
    border-color: rgba(37,211,102,0.35);
    background: rgba(37,211,102,0.08);
}

.alerta-azul {
    border-color: rgba(51,117,250,0.32);
}

@media(max-width:768px) {
    .dashboard-executivo-header,
    .dashboard-alertas-header {
        flex-direction: column;
    }

    .dashboard-executivo-card strong {
        font-size: 22px;
    }
}

/* DASHBOARD ADMIN - ACOMPANHAMENTO */

.dashboard-acompanhamento-admin {
    margin: 0 0 35px;
    padding: 26px;
    border-radius: 26px;
    background: rgba(13,34,79,0.82);
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 12px 35px rgba(0,0,0,0.20);
}

.dashboard-acompanhamento-header {
    margin-bottom: 22px;
}

.dashboard-acompanhamento-header h3 {
    font-size: 24px;
    margin-bottom: 8px;
}

.dashboard-acompanhamento-header p {
    color: #b8c7f3;
    line-height: 1.5;
}

.dashboard-acompanhamento-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 16px;
}

.dashboard-acompanhamento-card {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 20px;
    border-radius: 22px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
    text-decoration: none;
    color: white;
    transition: 0.25s;
}

.dashboard-acompanhamento-card:hover {
    transform: translateY(-3px);
    background: rgba(255,255,255,0.08);
    border-color: rgba(51,117,250,0.35);
}

.dashboard-acompanhamento-icone {
    width: 46px;
    height: 46px;
    min-width: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: rgba(51,117,250,0.18);
    font-size: 24px;
}

.dashboard-acompanhamento-card strong {
    display: block;
    font-size: 18px;
    margin-bottom: 6px;
}

.dashboard-acompanhamento-card span {
    display: block;
    color: #dce5ff;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 7px;
}

.dashboard-acompanhamento-card small {
    display: block;
    color: #9bb8ff;
    font-size: 13px;
    line-height: 1.45;
}

.alerta-amarelo {
    border-color: rgba(245,158,11,0.45);
    background: rgba(245,158,11,0.10);
}

@media(max-width:768px) {
    .dashboard-acompanhamento-card {
        padding: 17px;
    }
}

/* DASHBOARD ADMIN - INDICADORES COMPLEMENTARES */

.dashboard-detalhes-complementares {
    margin: 0 0 35px;
    border-radius: 26px;
    background: rgba(13,34,79,0.72);
    border: 1px solid rgba(255,255,255,0.08);
    overflow: hidden;
    box-shadow: 0 12px 35px rgba(0,0,0,0.18);
}

.dashboard-detalhes-complementares summary {
    list-style: none;
    cursor: pointer;
    padding: 22px 26px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    background: rgba(255,255,255,0.045);
}

.dashboard-detalhes-complementares summary::-webkit-details-marker {
    display: none;
}

.dashboard-detalhes-complementares summary strong {
    display: block;
    font-size: 20px;
    color: white;
    margin-bottom: 5px;
}

.dashboard-detalhes-complementares summary span {
    color: #b8c7f3;
    font-size: 14px;
}

.dashboard-detalhes-seta {
    font-size: 18px !important;
    color: #9bb8ff !important;
    transition: 0.25s;
}

.dashboard-detalhes-complementares[open] .dashboard-detalhes-seta {
    transform: rotate(180deg);
}

.dashboard-detalhes-conteudo {
    padding: 24px 26px 28px;
}

.dashboard-grupo-titulo-menor {
    font-size: 20px;
    margin-top: 10px;
}

/* DASHBOARD ADMIN - ANÁLISES E GRÁFICOS */

.dashboard-analises-admin {
    margin: 0 0 35px;
    padding: 28px;
    border-radius: 28px;
    background:
        linear-gradient(
            135deg,
            rgba(13,34,79,0.92),
            rgba(7,21,47,0.94)
        );
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 14px 42px rgba(0,0,0,0.24);
}

.dashboard-analises-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 24px;
}

.dashboard-analises-header h3 {
    font-size: 24px;
    margin-bottom: 8px;
}

.dashboard-analises-header p {
    color: #b8c7f3;
    line-height: 1.5;
}

.dashboard-analises-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 22px;
    align-items: stretch;
}

.dashboard-analises-grid .dashboard-card {
    margin-bottom: 0;
    height: auto;
}

.dashboard-analises-grid .grafico-faturamento-card,
.dashboard-analises-grid .grafico-horizontal-card {
    width: 100%;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.dashboard-analises-grid .grafico-horizontal-card {
    min-height: auto;
}

@media(max-width:768px) {
    .dashboard-analises-header {
        flex-direction: column;
    }

    .dashboard-analises-admin {
        padding: 22px;
    }
}

/* DASHBOARD ADMIN - RESUMOS E DETALHAMENTOS */

.dashboard-resumos-detalhes {
    margin-top: 0;
}

.dashboard-resumos-detalhes .dashboard-detalhes-conteudo {
    padding-top: 22px;
}

.dashboard-resumos-detalhes .dashboard-admin-detalhes {
    margin-bottom: 0;
}

/* DASHBOARD ADMIN - DESTAQUE DE ACOMPANHAMENTO */

.dashboard-acompanhamento-card.acompanhamento-alerta {
    border-color: rgba(245,158,11,0.45);
    background: rgba(245,158,11,0.085);
}

.dashboard-acompanhamento-card.acompanhamento-alerta .dashboard-acompanhamento-icone {
    background: rgba(245,158,11,0.18);
}

/* DASHBOARD ADMIN - ANIVERSARIANTES */

.dashboard-aniversariantes-admin {
    margin: 0 0 35px;
    padding: 26px;
    border-radius: 26px;
    background: rgba(13,34,79,0.82);
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 12px 35px rgba(0,0,0,0.20);
}

.dashboard-aniversariantes-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}

.dashboard-aniversariantes-header h3 {
    font-size: 24px;
    margin-bottom: 8px;
    color: #ffffff;
}

.dashboard-aniversariantes-header p {
    color: #b8c7f3;
    line-height: 1.5;
}

.dashboard-aniversariantes-lista {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 14px;
}

.dashboard-aniversariante-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px;
    border-radius: 20px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(51,117,250,0.28);
    text-decoration: none;
    color: white;
    transition: 0.25s;
}

.dashboard-aniversariante-item:hover {
    transform: translateY(-3px);
    background: rgba(255,255,255,0.08);
    border-color: rgba(51,117,250,0.45);
}

.dashboard-aniversariante-dia {
    width: 46px;
    height: 46px;
    min-width: 46px;
    border-radius: 16px;
    background: rgba(51,117,250,0.20);
    border: 1px solid rgba(51,117,250,0.42);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    color: #dce8ff;
    font-size: 18px;
}

.dashboard-aniversariante-item strong {
    display: block;
    font-size: 15px;
    margin-bottom: 5px;
    color: #ffffff;
}

.dashboard-aniversariante-item span {
    display: block;
    font-size: 13px;
    color: #9bb8ff;
    font-weight: 700;
}

.dashboard-aniversariante-info small {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    color: #dce5ff;
    font-weight: 600;
    line-height: 1.35;
}

@media(max-width:768px) {
    .dashboard-aniversariantes-header {
        flex-direction: column;
    }
}

/* WHATSAPP ADMIN */

.whatsapp-admin-layout {
    grid-template-columns: 1.25fr 0.75fr;
    align-items: flex-start;
}

.whatsapp-admin-card {
    border: 1px solid rgba(37, 211, 102, 0.22);
}

.whatsapp-admin-alerta {
    margin-bottom: 22px;
    padding: 16px 18px;
    border-radius: 16px;
    font-size: 15px;
    font-weight: 800;
}

.whatsapp-admin-alerta.ok {
    background: rgba(37, 211, 102, 0.16);
    border: 1px solid rgba(37, 211, 102, 0.34);
    color: #b8ffd2;
}

.whatsapp-admin-alerta.erro {
    background: rgba(239, 68, 68, 0.16);
    border: 1px solid rgba(239, 68, 68, 0.34);
    color: #ffd5d5;
}

.whatsapp-admin-form {
    gap: 22px;
}

.whatsapp-admin-select,
.whatsapp-admin-form textarea {
    width: 100%;
    padding: 16px 18px;
    border: none;
    border-radius: 12px;
    background: #102858;
    color: white;
    font-size: 15px;
    outline: none;
}

.whatsapp-admin-form textarea {
    min-height: 155px;
    resize: vertical;
    line-height: 1.55;
}

.whatsapp-admin-ajuda {
    display: block;
    margin-top: -5px;
    color: #9bb8ff;
    font-size: 13px;
    line-height: 1.45;
}

.whatsapp-admin-destinatarios {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-height: 430px;
    overflow: auto;
    padding-right: 6px;
}

.whatsapp-admin-destinatario {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 14px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    cursor: pointer;
}

.whatsapp-admin-destinatario:hover {
    background: rgba(37, 211, 102, 0.10);
    border-color: rgba(37, 211, 102, 0.28);
}

.whatsapp-admin-destinatario input {
    width: 18px;
    height: 18px;
    accent-color: #25D366;
}

.whatsapp-admin-destinatario span {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.whatsapp-admin-destinatario strong {
    color: white;
    font-size: 14px;
}

.whatsapp-admin-destinatario small {
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 700;
}

.whatsapp-admin-links {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.whatsapp-admin-link-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
}

.whatsapp-admin-link-item div {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.whatsapp-admin-link-item strong {
    color: white;
}

.whatsapp-admin-link-item span {
    color: #9bb8ff;
    font-size: 13px;
    font-weight: 700;
}

.whatsapp-admin-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 16px;
    border-radius: 12px;
    background: #25D366;
    color: white;
    text-decoration: none;
    font-weight: 900;
    white-space: nowrap;
}

.whatsapp-admin-btn:hover {
    background: #2df07a;
    transform: translateY(-1px);
}

.whatsapp-admin-vazio {
    color: #dce5ff;
    padding: 18px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
}

@media(max-width:900px) {
    .whatsapp-admin-layout {
        grid-template-columns: 1fr;
    }

    .whatsapp-admin-link-item {
        flex-direction: column;
        align-items: stretch;
    }

    .whatsapp-admin-btn {
        width: 100%;
    }
}


/* WHATSAPP ADMIN - ETAPA 3 */

.whatsapp-admin-ferramentas {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 15px;
}

.whatsapp-admin-busca {
    width: 100%;
    padding: 14px 16px;
    border: none;
    border-radius: 12px;
    background: #102858;
    color: white;
    font-size: 14px;
    outline: none;
}

.whatsapp-admin-busca::placeholder {
    color: #9bb8ff;
}

.whatsapp-admin-acoes {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.whatsapp-admin-mini-btn,
.whatsapp-admin-chip {
    border: 0;
    border-radius: 999px;
    padding: 9px 12px;
    background: rgba(37, 211, 102, 0.16);
    color: #b8ffd2;
    border: 1px solid rgba(37, 211, 102, 0.28);
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
    transition: 0.25s;
}

.whatsapp-admin-mini-btn:hover,
.whatsapp-admin-chip:hover {
    background: rgba(37, 211, 102, 0.28);
    transform: translateY(-1px);
}

.whatsapp-admin-mini-btn.secundario {
    background: rgba(255,255,255,0.07);
    border-color: rgba(255,255,255,0.14);
    color: #dce5ff;
}

.whatsapp-admin-contador {
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 800;
}

.whatsapp-admin-modelos-rapidos {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: -4px;
    margin-bottom: 4px;
}



/* WHATSAPP ADMIN - ETAPA 4 TEMPLATES */

.whatsapp-template-form label {
    color: #dce5ff;
    font-size: 13px;
    font-weight: 900;
    margin-bottom: -8px;
}

.whatsapp-template-lista {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-height: 620px;
    overflow: auto;
    padding-right: 5px;
}

.whatsapp-template-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 15px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(37, 211, 102, 0.20);
}

.whatsapp-template-item.inativo {
    opacity: 0.64;
    border-color: rgba(255,255,255,0.10);
}

.whatsapp-template-item > div:first-child {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.whatsapp-template-item strong {
    color: #ffffff;
    font-size: 14px;
}

.whatsapp-template-item span {
    color: #dce5ff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
}

.whatsapp-template-item small {
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 800;
}

.whatsapp-template-acoes {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.whatsapp-template-acoes a {
    text-decoration: none;
}

@media(max-width:900px) {
    .whatsapp-template-item {
        flex-direction: column;
    }

    .whatsapp-template-acoes {
        width: 100%;
        justify-content: flex-start;
    }
}


/* WHATSAPP ADMIN - ETAPA 5 HISTÓRICO */

.whatsapp-resumo-grid {
    margin-bottom: 25px;
}

.whatsapp-historico-filtros {
    display: grid;
    grid-template-columns: 170px 170px 170px 1fr auto;
    gap: 12px;
    align-items: end;
    margin-bottom: 22px;
}

.whatsapp-historico-filtros label {
    display: block;
    color: #dce5ff;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 7px;
}

.whatsapp-historico-filtros input,
.whatsapp-historico-filtros select {
    width: 100%;
    padding: 13px 14px;
    border: 0;
    border-radius: 12px;
    background: #102858;
    color: #ffffff;
    font-size: 14px;
    outline: none;
}

.whatsapp-historico-busca {
    min-width: 240px;
}

.whatsapp-historico-botoes {
    display: flex;
    gap: 8px;
    align-items: center;
}

.whatsapp-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
}

.whatsapp-status-ok {
    background: rgba(37, 211, 102, 0.18);
    color: #b8ffd2;
    border: 1px solid rgba(37, 211, 102, 0.34);
}

.whatsapp-status-pendente {
    background: rgba(245, 158, 11, 0.18);
    color: #fde68a;
    border: 1px solid rgba(245, 158, 11, 0.34);
}

.whatsapp-status-erro {
    background: rgba(239, 68, 68, 0.18);
    color: #ffd5d5;
    border: 1px solid rgba(239, 68, 68, 0.34);
}

.whatsapp-status-neutro {
    background: rgba(255,255,255,0.08);
    color: #dce5ff;
    border: 1px solid rgba(255,255,255,0.12);
}

.whatsapp-msg-detalhe {
    margin-top: 8px;
}

.whatsapp-msg-detalhe summary {
    cursor: pointer;
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 900;
}

.whatsapp-msg-detalhe div {
    margin-top: 8px;
    padding: 10px;
    border-radius: 12px;
    background: rgba(255,255,255,0.06);
    color: #dce5ff;
    font-size: 12px;
    line-height: 1.5;
    max-width: 420px;
    white-space: normal;
}

.whatsapp-msg-detalhe small {
    display: block;
    margin-top: 6px;
    color: #ffd5d5;
    font-size: 11px;
    font-weight: 800;
}

.whatsapp-historico-acoes {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
}

@media(max-width:1200px) {
    .whatsapp-historico-filtros {
        grid-template-columns: repeat(2, 1fr);
    }

    .whatsapp-historico-botoes {
        grid-column: span 2;
    }
}

@media(max-width:700px) {
    .whatsapp-historico-filtros {
        grid-template-columns: 1fr;
    }

    .whatsapp-historico-botoes {
        grid-column: auto;
        flex-direction: column;
        align-items: stretch;
    }
}


/* WHATSAPP ADMIN - ETAPA 6 LOTE */

.whatsapp-lote-topo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px;
    margin-bottom: 16px;
    border-radius: 18px;
    background: rgba(37, 211, 102, 0.10);
    border: 1px solid rgba(37, 211, 102, 0.22);
}

.whatsapp-lote-topo div {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.whatsapp-lote-topo strong {
    color: #ffffff;
    font-size: 15px;
}

.whatsapp-lote-topo span {
    color: #b8caff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
}

.whatsapp-admin-btn-lote {
    border: 0;
    cursor: pointer;
    font-family: inherit;
}

.whatsapp-link-acoes {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    flex-wrap: wrap;
}

.whatsapp-mensagem-preparada {
    max-width: 620px !important;
}

.whatsapp-admin-link-item.whatsapp-aberto-lote {
    border-color: rgba(37, 211, 102, 0.45);
    background: rgba(37, 211, 102, 0.10);
}

@media(max-width:900px) {
    .whatsapp-lote-topo {
        flex-direction: column;
        align-items: stretch;
    }

    .whatsapp-link-acoes {
        width: 100%;
        justify-content: flex-start;
    }
}


/* WHATSAPP ADMIN - ETAPA 7 AÇÕES RÁPIDAS */

.whatsapp-acao-rapida-card {
    border: 1px solid rgba(51, 117, 250, 0.22);
}

.whatsapp-acao-rapida-texto {
    color: #dce5ff;
    line-height: 1.55;
    margin-bottom: 18px;
}

.whatsapp-acoes-rapidas {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 12px;
}

.whatsapp-acao-rapida-btn {
    min-height: 96px;
    padding: 16px;
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 18px;
    background: rgba(255,255,255,0.05);
    color: #ffffff;
    text-align: left;
    font-family: inherit;
    font-size: 15px;
    font-weight: 900;
    cursor: pointer;
    transition: 0.25s;
}

.whatsapp-acao-rapida-btn small {
    display: block;
    margin-top: 8px;
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 800;
}

.whatsapp-acao-rapida-btn:hover,
.whatsapp-acao-rapida-btn.selecionado {
    transform: translateY(-2px);
    background: rgba(37, 211, 102, 0.13);
    border-color: rgba(37, 211, 102, 0.36);
}

.whatsapp-acao-rapida-btn.destaque {
    background: linear-gradient(135deg, rgba(51,117,250,0.22), rgba(37,211,102,0.12));
    border-color: rgba(51,117,250,0.34);
}

.whatsapp-variaveis-ajuda {
    margin-top: 16px;
    padding: 13px 14px;
    border-radius: 16px;
    background: rgba(255,255,255,0.05);
    color: #b8caff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.7;
}

.whatsapp-variaveis-ajuda code {
    display: inline-block;
    margin: 2px 3px;
    padding: 3px 7px;
    border-radius: 999px;
    background: rgba(255,255,255,0.08);
    color: #b8ffd2;
    font-family: inherit;
    font-size: 12px;
    font-weight: 900;
}

/* FINANCEIRO / DESPESAS - AÇÕES DO EXTRATO */

.despesas-acoes-td {
    vertical-align: middle;
}

.despesas-acoes {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 82px;
}

.despesas-acoes .btn-editar,
.despesas-acoes .btn-excluir {
    width: 82px;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none !important;
    box-sizing: border-box;
}

.despesas-acoes .btn-editar {
    background: #ffc400;
    color: #07152f !important;
}

.despesas-acoes .btn-excluir {
    background: #ff3b3b;
    color: #ffffff !important;
}

.despesas-acoes .btn-editar:hover,
.despesas-acoes .btn-excluir:hover {
    transform: translateY(-1px);
    filter: brightness(1.05);
}



/* RELATÓRIOS PENDENTES - BOTÕES PADRONIZADOS */

.relatorios-pendentes-botoes {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    flex-wrap: nowrap;
    min-width: 82px;
}

.relatorios-pendentes-botoes .relatorio-pendente-btn,
.relatorios-pendentes-botoes .btn-tabela,
.relatorios-pendentes-botoes button.btn-tabela {
    width: 82px;
    min-width: 82px;
    min-height: 32px;
    height: 32px;
    padding: 0 12px;
    border-radius: 13px;
    border: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none !important;
    box-sizing: border-box;
    white-space: nowrap;
}

.relatorios-pendentes-botoes .btn-preview {
    background: #102858;
    color: #ffffff !important;
}

.relatorios-pendentes-botoes .btn-download,
.relatorios-pendentes-botoes .btn-filtrar {
    background: #3375FA;
    color: #ffffff !important;
}

.relatorios-pendentes-botoes .btn-excluir {
    background: #ef2f2f;
    color: #ffffff !important;
    cursor: pointer;
}

.relatorios-pendentes-botoes .btn-preview:hover,
.relatorios-pendentes-botoes .btn-download:hover,
.relatorios-pendentes-botoes .btn-filtrar:hover,
.relatorios-pendentes-botoes .btn-excluir:hover {
    transform: translateY(-1px);
    filter: brightness(1.08);
}

.relatorio-pendente-form-excluir {
    display: flex;
    margin: 0;
    padding: 0;
}

@media(max-width:768px) {
    .relatorios-pendentes-botoes {
        align-items: stretch;
        width: 100%;
    }

    .relatorios-pendentes-botoes .relatorio-pendente-btn,
    .relatorios-pendentes-botoes .btn-tabela,
    .relatorios-pendentes-botoes button.btn-tabela {
        width: 100%;
        min-width: 100%;
    }

    .relatorio-pendente-form-excluir {
        width: 100%;
    }
}


/* COMERCIAL ADMIN */

.comercial-grid {
    display: grid;
    grid-template-columns: minmax(320px, 430px) 1fr;
    gap: 25px;
    align-items: flex-start;
}

.comercial-form-card h3,
.comercial-lista-card h3 {
    font-size: 24px;
    margin-bottom: 8px;
}

.comercial-card-subtitulo {
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 22px;
}

.comercial-alerta {
    margin-bottom: 22px;
    padding: 16px 18px;
    border-radius: 16px;
    font-weight: 800;
    border: 1px solid rgba(255,255,255,0.10);
}

.comercial-alerta-ok {
    background: rgba(37,211,102,0.14);
    color: #d8ffe7;
    border-color: rgba(37,211,102,0.35);
}

.comercial-alerta-erro {
    background: rgba(239,68,68,0.14);
    color: #ffd5d5;
    border-color: rgba(239,68,68,0.35);
}

.comercial-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.comercial-form label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
}

.comercial-form input,
.comercial-form select,
.comercial-form textarea,
.comercial-filtros input,
.comercial-filtros select {
    width: 100%;
    padding: 14px 16px;
    border: none;
    border-radius: 14px;
    background: #102858;
    color: white;
    font-size: 14px;
    font-weight: 600;
    outline: none;
}

.comercial-form textarea {
    resize: vertical;
    min-height: 86px;
}

.comercial-form input::placeholder,
.comercial-form textarea::placeholder,
.comercial-filtros input::placeholder {
    color: #9eb5f5;
}

.comercial-form-linha {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.comercial-form-acoes {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.comercial-lista-header {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: flex-start;
    margin-bottom: 18px;
}

.comercial-filtros {
    display: grid;
    grid-template-columns: 1.4fr 220px 160px auto;
    gap: 12px;
    margin-bottom: 22px;
    align-items: center;
}

.comercial-tabela small {
    color: #9bb8ff;
    font-size: 12px;
}

.comercial-tabela td strong {
    white-space: normal;
}

.comercial-tabela td {
    vertical-align: middle;
}

@media(max-width:1100px) {
    .comercial-grid {
        grid-template-columns: 1fr;
    }

    .comercial-filtros {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width:768px) {
    .comercial-form-linha,
    .comercial-filtros {
        grid-template-columns: 1fr;
    }

    .comercial-form-acoes .btn-filtrar,
    .comercial-form-acoes .btn-preview {
        width: 100%;
        text-align: center;
        justify-content: center;
    }
}


/* COMERCIAL - PROPOSTAS */

.comercial-propostas-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 25px;
    align-items: flex-start;
}

.comercial-proposta-form-card,
.comercial-lista-card {
    width: 100%;
}

.comercial-proposta-form-card h3,
.comercial-lista-card h3 {
    font-size: 24px;
    margin-bottom: 8px;
}

.comercial-itens-box {
    margin-top: 8px;
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
}

.comercial-itens-header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    margin-bottom: 16px;
}

.comercial-itens-header h4 {
    font-size: 18px;
    color: #ffffff;
}

.comercial-proposta-item {
    display: grid;
    grid-template-columns: minmax(260px, 1.35fr) minmax(260px, 1.55fr) minmax(90px, 0.45fr) minmax(140px, 0.65fr) minmax(140px, 0.65fr);
    gap: 12px;
    align-items: end;
    padding: 14px;
    border-radius: 16px;
    background: rgba(16,40,88,0.72);
    border: 1px solid rgba(255,255,255,0.07);
    margin-bottom: 12px;
}

.comercial-proposta-item label {
    font-size: 12px;
}

.comercial-total-linha {
    align-items: stretch;
}

.comercial-total-card {
    padding: 16px 18px;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(51,117,250,0.24), rgba(13,34,79,0.94));
    border: 1px solid rgba(93,146,255,0.22);
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px 18px;
    align-items: center;
}

.comercial-total-card span {
    color: #b8c7f3;
    font-size: 13px;
    font-weight: 800;
}

.comercial-total-card strong {
    color: #ffffff;
    font-size: 20px;
    text-align: right;
}

.comercial-proposta-acoes {
    align-items: end;
    justify-content: flex-end;
    margin-top: 20px;
}

.comercial-proposta-filtros {
    grid-template-columns: 1fr 190px auto;
}


.comercial-cliente-busca-wrap {
    width: 100%;
}

.comercial-cliente-resultados {
    z-index: 80;
}

.comercial-cliente-opcao small {
    color: #9bb8ff;
}

.comercial-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.3px;
}

.comercial-status-rascunho {
    background: rgba(148,163,184,0.18);
    color: #e2e8f0;
    border: 1px solid rgba(148,163,184,0.25);
}

.comercial-status-enviada {
    background: rgba(51,117,250,0.18);
    color: #cfe0ff;
    border: 1px solid rgba(51,117,250,0.30);
}

.comercial-status-aprovada {
    background: rgba(37,211,102,0.16);
    color: #d8ffe7;
    border: 1px solid rgba(37,211,102,0.35);
}

.comercial-status-atendida {
    background: rgba(59,130,246,0.16);
    color: #dbeafe;
    border: 1px solid rgba(59,130,246,0.30);
}

.comercial-status-reprovada,
.comercial-status-cancelada {
    background: rgba(239,68,68,0.16);
    color: #ffd5d5;
    border: 1px solid rgba(239,68,68,0.30);
}

.comercial-proposta-acoes-tabela {
    gap: 8px;
}

@media(max-width:1100px) {
    .comercial-proposta-item {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width:768px) {
    .comercial-itens-header {
        flex-direction: column;
        align-items: stretch;
    }

    .comercial-proposta-item,
    .comercial-proposta-filtros {
        grid-template-columns: 1fr;
    }

    .comercial-total-card {
        grid-template-columns: 1fr;
    }

    .comercial-total-card strong {
        text-align: left;
    }
}

/* BUSCA DE PRODUTOS NA PROPOSTA */

.comercial-produto-busca-wrap {
    width: 100%;
    position: relative;
}

.comercial-produto-resultados {
    z-index: 95;
    max-height: 320px;
    overflow-y: auto;
}

.comercial-produto-opcao small {
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 700;
}

.comercial-produto-busca {
    min-width: 0;
}


/* AGENDA - BUSCA DE CLIENTE COM CNPJ E CIDADE */

.agenda-cliente-opcao span {
    line-height: 1.45;
}

.agenda-cliente-opcao strong {
    line-height: 1.35;
}

.agenda-cliente-opcao small {
    line-height: 1.35;
}


/* RELATÓRIO DE LEADS */

.leads-form-card,
.leads-filtros-card,
.leads-lista-card {
    margin-bottom: 25px;
}

.leads-form-linha-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.leads-form-linha-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.leads-filtros {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 14px;
    align-items: end;
}

.lead-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    color: #ffffff;
    background: rgba(255,255,255,0.14);
    white-space: nowrap;
}

.lead-status-novo {
    background: rgba(51,117,250,0.25);
    color: #bcd1ff;
}

.lead-status-em_atendimento {
    background: rgba(244,180,0,0.25);
    color: #ffe09b;
}

.lead-status-retornado {
    background: rgba(37,211,102,0.20);
    color: #9ff0bd;
}

.lead-status-convertido {
    background: rgba(34,197,94,0.28);
    color: #c4fbd5;
}

.lead-status-perdido {
    background: rgba(239,68,68,0.24);
    color: #ffb4b4;
}

.lead-status-finalizado {
    background: rgba(100,116,139,0.24);
    color: #e2e8f0;
}

.btn-visualizar {
    background: linear-gradient(135deg, #0ea5a4, #2563eb);
    color: #ffffff;
    border: none;
}

.btn-visualizar:hover {
    filter: brightness(1.06);
    color: #ffffff;
}

@media(max-width: 900px){
    .leads-form-linha-3,
    .leads-form-linha-2 {
        grid-template-columns: 1fr;
    }

    .leads-resumo-grid {
        grid-template-columns: 1fr;
    }
}

/* LEADS - VISUALIZAÇÃO MARKETING */
.lead-detalhes {
    min-width: 210px;
}

.lead-detalhes summary {
    cursor: pointer;
    font-weight: 800;
    color: #ffffff;
    background: rgba(51,117,250,0.22);
    border: 1px solid rgba(255,255,255,0.16);
    border-radius: 10px;
    padding: 8px 10px;
    list-style: none;
}

.lead-detalhes summary::-webkit-details-marker {
    display: none;
}

.lead-detalhes div {
    margin-top: 10px;
    padding: 12px;
    border-radius: 12px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.12);
    font-size: 13px;
    line-height: 1.55;
    color: rgba(255,255,255,0.88);
}

/* LEADS - PADRONIZAÇÃO DOS BOTÕES DA LISTAGEM */
.leads-tabela .tabela-acoes {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    flex-wrap: nowrap;
}

.leads-tabela .tabela-acoes form {
    margin: 0;
    padding: 0;
    display: inline-flex !important;
}

.leads-tabela .btn-tabela,
.leads-tabela .tabela-acoes a.btn-tabela,
.leads-tabela .tabela-acoes button.btn-tabela {
    width: 92px;
    min-width: 92px;
    height: 38px;
    padding: 0 14px;
    border-radius: 13px;
    border: 1px solid rgba(255,255,255,0.16);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-family: inherit;
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    box-shadow: 0 10px 24px rgba(0,0,0,0.16);
    transition: transform 0.22s ease, filter 0.22s ease, box-shadow 0.22s ease;
}

.leads-tabela .btn-tabela:hover,
.leads-tabela .tabela-acoes a.btn-tabela:hover,
.leads-tabela .tabela-acoes button.btn-tabela:hover {
    transform: translateY(-2px);
    filter: brightness(1.06);
    box-shadow: 0 14px 28px rgba(0,0,0,0.22);
    text-decoration: none;
}

.leads-tabela .btn-visualizar {
    background: linear-gradient(135deg, #1d9bf0, #2563eb);
    color: #ffffff;
}

.leads-tabela .btn-editar {
    background: linear-gradient(135deg, #f6c343, #f59e0b);
    color: #102858;
}

.leads-tabela .btn-excluir {
    background: linear-gradient(135deg, #ef4444, #dc2626);
    color: #ffffff;
}

@media(max-width: 900px){
    .leads-tabela .tabela-acoes {
        flex-wrap: wrap;
    }

    .leads-tabela .btn-tabela,
    .leads-tabela .tabela-acoes a.btn-tabela,
    .leads-tabela .tabela-acoes button.btn-tabela {
        width: 100%;
        min-width: 120px;
    }
}



/* CADASTRO RÁPIDO DE PRODUTO NAS PROPOSTAS */
.produto-rapido-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(5, 15, 35, 0.78);
    backdrop-filter: blur(6px);
    display: none;
    align-items: center;
    justify-content: center;
    padding: 22px;
}

.produto-rapido-overlay.ativo {
    display: flex;
}

.produto-rapido-modal {
    width: min(980px, 100%);
    max-height: 92vh;
    overflow: auto;
    background: #07152f;
    border: 1px solid rgba(255,255,255,0.16);
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 28px 80px rgba(0,0,0,0.45);
}

.produto-rapido-topo {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-start;
    margin-bottom: 18px;
}

.produto-rapido-topo h3 {
    margin: 0 0 6px 0;
    color: #ffffff;
}

.produto-rapido-topo p {
    margin: 0;
    color: #b9c9f5;
}

.produto-rapido-fechar {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.16);
    background: rgba(255,255,255,0.08);
    color: #ffffff;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
}

.produto-rapido-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.produto-rapido-form label {
    color: #dce5ff;
    font-weight: 700;
}

.produto-rapido-form input,
.produto-rapido-form select,
.produto-rapido-form textarea {
    width: 100%;
    margin-top: 7px;
}

.produto-rapido-msg {
    display: none;
    margin-bottom: 14px;
    border-radius: 14px;
    padding: 12px 14px;
    font-weight: 700;
}

.produto-rapido-msg.ok {
    display: block;
    background: rgba(37, 211, 102, 0.14);
    border: 1px solid rgba(37, 211, 102, 0.35);
    color: #d8ffe8;
}

.produto-rapido-msg.erro {
    display: block;
    background: rgba(239, 68, 68, 0.14);
    border: 1px solid rgba(239, 68, 68, 0.35);
    color: #ffe2e2;
}

.produto-rapido-acoes {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 18px;
    flex-wrap: wrap;
}

@media(max-width: 760px) {
    .produto-rapido-grid {
        grid-template-columns: 1fr;
    }

    .produto-rapido-modal {
        padding: 18px;
    }

    .produto-rapido-acoes .btn-preview,
    .produto-rapido-acoes .btn-filtrar {
        width: 100%;
        text-align: center;
    }
}



/* AJUSTE DA LISTA DE LEADS - BOTÕES MAIS LEGÍVEIS */
.leads-tabela-wrapper {
    overflow-x: auto;
}

.leads-tabela-wrapper .tabela-acoes {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    min-width: 360px;
}

.leads-tabela-wrapper .btn-tabela {
    min-width: 92px;
    height: 38px;
    padding: 0 12px;
    border-radius: 12px;
    white-space: nowrap;
    font-size: 12px;
}

.leads-tabela-wrapper .lead-proposta-abrir-btn {
    min-width: 112px;
}

@media(max-width: 900px) {
    .leads-tabela-wrapper .tabela-acoes {
        min-width: 260px;
        display: grid;
        grid-template-columns: repeat(2, minmax(110px, 1fr));
    }

    .leads-tabela-wrapper .btn-tabela,
    .leads-tabela-wrapper .lead-proposta-abrir-btn {
        width: 100%;
        min-width: 0;
    }
}

/* PROPOSTA: MANTER LARGURA A4, MAS LIBERAR ALTURA */
.proposta-page {
    height: auto !important;
    min-height: 297mm;
    overflow: visible !important;
}

.proposta-body {
    overflow: visible !important;
}

@media print {
    .proposta-page {
        height: auto !important;
        min-height: 297mm;
        overflow: visible !important;
    }
}



/* LISTA DE LEADS - BOTÕES DE AÇÕES PADRONIZADOS */
.leads-lista-card .dashboard-tabela-scroll,
.leads-tabela-wrapper {
    overflow-x: auto;
}

.leads-lista-card .tabela-acoes {
    display: grid;
    grid-template-columns: repeat(3, minmax(92px, 1fr));
    gap: 8px;
    align-items: center;
    min-width: 390px;
}

.leads-lista-card .tabela-acoes form {
    margin: 0;
    display: contents;
}

.leads-lista-card .btn-tabela {
    min-width: 0;
    width: 100%;
    height: 38px;
    padding: 0 10px;
    border-radius: 12px;
    white-space: nowrap;
    font-size: 12px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.leads-lista-card .lead-proposta-btn {
    font-size: 11px;
}

@media(max-width: 900px) {
    .leads-lista-card .tabela-acoes {
        grid-template-columns: repeat(2, minmax(110px, 1fr));
        min-width: 250px;
    }
}

/* PROPOSTA: LARGURA A4 COM ALTURA LIVRE */
.proposta-page,
body.modo-render .proposta-page {
    height: auto !important;
    min-height: 297mm !important;
    overflow: visible !important;
}

.proposta-body,
.proposta-hero,
.proposta-footer {
    overflow: visible !important;
}



/* CORREÇÃO FINAL - BOTÕES DA LISTA DE LEADS */
.leads-lista-card .dashboard-tabela-scroll {
    overflow-x: auto;
}

.leads-lista-card .tabela-acoes {
    display: grid !important;
    grid-template-columns: repeat(2, 104px);
    gap: 8px 10px;
    align-items: center;
    justify-content: start;
    min-width: 220px;
}

.leads-lista-card .tabela-acoes form {
    display: contents !important;
    margin: 0 !important;
}

.leads-lista-card .btn-tabela,
.leads-lista-card .btn-visualizar,
.leads-lista-card .btn-editar,
.leads-lista-card .btn-download,
.leads-lista-card .btn-preview,
.leads-lista-card .btn-excluir {
    width: 104px !important;
    min-width: 104px !important;
    max-width: 104px !important;
    height: 38px !important;
    min-height: 38px !important;
    padding: 0 8px !important;
    border-radius: 12px !important;
    font-size: 11px !important;
    line-height: 1.05 !important;
    font-weight: 800 !important;
    white-space: normal !important;
    text-align: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

.leads-lista-card .lead-proposta-btn {
    font-size: 10.5px !important;
}

@media(max-width: 900px) {
    .leads-lista-card .tabela-acoes {
        grid-template-columns: repeat(2, 100px);
        min-width: 210px;
    }

    .leads-lista-card .btn-tabela,
    .leads-lista-card .btn-visualizar,
    .leads-lista-card .btn-editar,
    .leads-lista-card .btn-download,
    .leads-lista-card .btn-preview,
    .leads-lista-card .btn-excluir {
        width: 100px !important;
        min-width: 100px !important;
        max-width: 100px !important;
        font-size: 10.5px !important;
    }
}



/* MELHORIA VISUAL - CADASTRO RÁPIDO DE PRODUTO */
.produto-rapido-overlay {
    background: rgba(4, 14, 32, 0.82) !important;
    backdrop-filter: blur(8px);
}

.produto-rapido-modal {
    width: min(1040px, calc(100vw - 34px)) !important;
    background: linear-gradient(180deg, #07152f 0%, #0a1c3d 100%) !important;
    border: 1px solid rgba(126, 163, 255, 0.28) !important;
    border-radius: 26px !important;
    padding: 26px !important;
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.52) !important;
}

.produto-rapido-topo {
    padding-bottom: 18px;
    margin-bottom: 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}

.produto-rapido-topo h3 {
    color: #ffffff !important;
    font-size: 24px;
    line-height: 1.15;
    margin-bottom: 8px !important;
}

.produto-rapido-topo p {
    color: #b9c9f5 !important;
    font-size: 15px;
    line-height: 1.45;
}

.produto-rapido-fechar {
    flex: 0 0 auto;
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.10) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    color: #ffffff !important;
    font-weight: 900;
}

.produto-rapido-fechar:hover {
    background: rgba(239, 68, 68, 0.25) !important;
    border-color: rgba(239, 68, 68, 0.45) !important;
}

.produto-rapido-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.produto-rapido-form label {
    display: block;
    color: #dce5ff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.25;
}

.produto-rapido-form input,
.produto-rapido-form select,
.produto-rapido-form textarea {
    width: 100% !important;
    min-height: 46px;
    margin-top: 8px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(126, 163, 255, 0.26) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    outline: none !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
    transition: 0.2s ease;
}

.produto-rapido-form textarea {
    min-height: 96px;
    resize: vertical;
}

.produto-rapido-form input::placeholder,
.produto-rapido-form textarea::placeholder {
    color: rgba(220, 229, 255, 0.58) !important;
    font-weight: 600;
}

.produto-rapido-form select {
    appearance: auto;
    color-scheme: dark;
    cursor: pointer;
}

.produto-rapido-form select option {
    background: #07152f;
    color: #ffffff;
}

.produto-rapido-form input:focus,
.produto-rapido-form select:focus,
.produto-rapido-form textarea:focus {
    border-color: #5d92ff !important;
    background: rgba(255, 255, 255, 0.12) !important;
    box-shadow: 0 0 0 4px rgba(51, 117, 250, 0.18) !important;
}

.produto-rapido-form input[required],
.produto-rapido-form select[required] {
    border-color: rgba(93, 146, 255, 0.38) !important;
}

.produto-rapido-form > label {
    margin-top: 16px;
}

.produto-rapido-msg {
    border-radius: 14px !important;
    padding: 12px 14px !important;
}

.produto-rapido-acoes {
    padding-top: 18px;
    margin-top: 20px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.produto-rapido-acoes .btn-preview,
.produto-rapido-acoes .btn-filtrar {
    min-height: 46px;
    border-radius: 14px !important;
    padding: 0 22px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.produto-rapido-acoes .btn-preview {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
}

.produto-rapido-acoes .btn-filtrar {
    background: linear-gradient(135deg, #0d46c7, #3375fa) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(51, 117, 250, 0.25);
}

@media(max-width: 760px) {
    .produto-rapido-overlay {
        align-items: flex-start;
        padding: 14px !important;
        overflow-y: auto;
    }

    .produto-rapido-modal {
        width: 100% !important;
        max-height: none !important;
        padding: 20px !important;
        border-radius: 22px !important;
    }

    .produto-rapido-topo {
        gap: 12px;
    }

    .produto-rapido-topo h3 {
        font-size: 21px;
    }

    .produto-rapido-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .produto-rapido-acoes {
        display: grid !important;
        grid-template-columns: 1fr;
    }

    .produto-rapido-acoes .btn-preview,
    .produto-rapido-acoes .btn-filtrar {
        width: 100%;
    }
}



/* CONTRATOS DE CLIENTES */
.contratos-admin-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 22px;
}

.contratos-admin-resumo {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 22px;
}

.contratos-admin-card {
    background: rgba(255,255,255,0.96);
    border: 1px solid rgba(51,117,250,0.14);
    border-radius: 22px;
    padding: 22px;
    box-shadow: 0 18px 40px rgba(7,21,47,0.08);
}

.contratos-form-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.contratos-form-grid label,
.contratos-admin-card label {
    display: flex;
    flex-direction: column;
    gap: 7px;
    color: #102858;
    font-weight: 800;
    font-size: 13px;
}

.contratos-admin-card input,
.contratos-admin-card select,
.contratos-admin-card textarea {
    width: 100%;
    min-height: 44px;
    border-radius: 14px;
    border: 1px solid #d7e3ff;
    background: #f7f9ff;
    padding: 11px 13px;
    color: #07152f;
    font-weight: 700;
    outline: none;
}

.contratos-admin-card input:focus,
.contratos-admin-card select:focus,
.contratos-admin-card textarea:focus {
    border-color: #3375FA;
    box-shadow: 0 0 0 4px rgba(51,117,250,0.12);
    background: #ffffff;
}

.contratos-admin-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 16px;
}

.contrato-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.contrato-status-pill.ativo { color: #065f46; background: #d1fae5; }
.contrato-status-pill.inativo { color: #991b1b; background: #fee2e2; }

.contrato-modelo-pill {
    display: inline-flex;
    padding: 7px 10px;
    border-radius: 999px;
    background: #eef4ff;
    color: #0339A6;
    font-size: 11px;
    font-weight: 900;
}

.contrato-regra-lista {
    display: grid;
    gap: 10px;
    margin-top: 16px;
}

.contrato-regra-item {
    border: 1px solid #dfe8ff;
    border-radius: 18px;
    background: #f7f9ff;
    padding: 14px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 12px;
    align-items: center;
}

.contrato-regra-item strong { color: #07152f; }
.contrato-regra-item span { color: #52627a; font-size: 13px; font-weight: 700; }

@media(max-width: 900px) {
    .contratos-admin-resumo,
    .contratos-form-grid { grid-template-columns: 1fr; }
    .contrato-regra-item { grid-template-columns: 1fr; }
}



/* PADRONIZAÇÃO VISUAL - CONTRATOS DE CLIENTES */
body .contratos-admin-resumo {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 24px;
}

body .contratos-admin-resumo .mini-card {
    background: rgba(13,34,79,0.92);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 22px;
    padding: 22px 18px;
    text-align: center;
    box-shadow: 0 10px 35px rgba(0,0,0,0.22);
}

body .contratos-admin-resumo .mini-card span {
    display: block;
    color: #b8c7f3;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 8px;
}

body .contratos-admin-resumo .mini-card strong {
    display: block;
    color: #5d92ff;
    font-size: 28px;
    line-height: 1;
    font-weight: 900;
}

body .contratos-admin-card {
    background: rgba(13,34,79,0.94) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    border-radius: 24px !important;
    padding: 26px !important;
    box-shadow: 0 10px 35px rgba(0,0,0,0.25) !important;
    backdrop-filter: blur(10px);
}

body .contratos-admin-card h3 {
    color: #ffffff !important;
    font-size: 24px;
    line-height: 1.15;
    margin: 0 0 18px 0;
}

body .contratos-admin-card .painel-subtitulo {
    color: #b8c7f3 !important;
}

body .contratos-form-grid label,
body .contratos-admin-card label {
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 800;
}

body .contratos-admin-card input,
body .contratos-admin-card select,
body .contratos-admin-card textarea {
    background: #102858 !important;
    border: 1px solid rgba(157, 183, 255, 0.22) !important;
    color: #ffffff !important;
    border-radius: 14px !important;
    min-height: 46px;
    padding: 13px 15px !important;
    font-weight: 700;
    box-shadow: none !important;
}

body .contratos-admin-card textarea {
    min-height: 92px;
    resize: vertical;
}

body .contratos-admin-card input::placeholder,
body .contratos-admin-card textarea::placeholder {
    color: #9eb5f5 !important;
    opacity: 1;
}

body .contratos-admin-card input[type="date"] {
    color-scheme: dark;
}

body .contratos-admin-card select {
    color-scheme: dark;
    cursor: pointer;
}

body .contratos-admin-card select option {
    background: #102858;
    color: #ffffff;
}

body .contratos-admin-card input:focus,
body .contratos-admin-card select:focus,
body .contratos-admin-card textarea:focus {
    border-color: #5d92ff !important;
    box-shadow: 0 0 0 4px rgba(51,117,250,0.18) !important;
    background: #12306a !important;
}

body .contratos-admin-card .btn-filtrar {
    min-height: 46px;
    border-radius: 14px;
    padding: 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

body .contratos-admin-card .btn-preview {
    min-height: 46px;
    border-radius: 14px;
    padding: 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.08);
    color: #ffffff;
    border: 1px solid rgba(255,255,255,0.14);
}

body .contratos-admin-card .dashboard-tabela th {
    background: rgba(255,255,255,0.05);
    color: #5d92ff;
}

body .contratos-admin-card .dashboard-tabela td {
    color: #dce5ff;
}

body .contratos-admin-card .dashboard-tabela td strong {
    color: #ffffff;
}

body .contratos-admin-card .dashboard-tabela td small {
    color: #9bb8ff;
}

body .contrato-regra-item {
    background: rgba(16,40,88,0.72) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    border-radius: 18px;
}

body .contrato-regra-item strong {
    color: #ffffff !important;
}

body .contrato-regra-item span {
    color: #b8c7f3 !important;
}

body .contrato-modelo-pill {
    background: rgba(51,117,250,0.18);
    color: #bcd1ff;
}

body .contrato-status-pill.ativo {
    background: rgba(37,211,102,0.18);
    color: #9ff0bd;
}

body .contrato-status-pill.inativo {
    background: rgba(239,68,68,0.18);
    color: #ffb4b4;
}

body .contratos-admin-card .info-card {
    background: rgba(16,40,88,0.72);
    border: 1px solid rgba(255,255,255,0.10);
    color: #dce5ff;
}

body .contratos-admin-card .info-card strong {
    color: #ffffff;
}

@media(max-width: 900px) {
    body .contratos-admin-resumo {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width: 620px) {
    body .contratos-admin-resumo {
        grid-template-columns: 1fr;
    }

    body .contratos-admin-card {
        padding: 20px !important;
    }
}



/* BUSCA DE CLIENTE PADRÃO - CONTRATOS */
.contrato-cliente-campo {
    position: relative;
}

.contrato-cliente-resultados {
    position: absolute;
    z-index: 30;
    top: calc(100% - 18px);
    left: 0;
    right: 0;
    display: none;
    max-height: 310px;
    overflow-y: auto;
    padding: 8px;
    border-radius: 18px;
    background: #07152f;
    border: 1px solid rgba(93, 146, 255, 0.30);
    box-shadow: 0 18px 50px rgba(0,0,0,0.35);
}

.contrato-cliente-resultados.ativo {
    display: grid;
    gap: 8px;
}

.contrato-cliente-opcao {
    width: 100%;
    border: 1px solid rgba(255,255,255,0.10);
    background: rgba(16,40,88,0.92);
    color: #ffffff;
    border-radius: 14px;
    padding: 12px 14px;
    text-align: left;
    cursor: pointer;
    transition: 0.2s ease;
}

.contrato-cliente-opcao:hover {
    background: rgba(51,117,250,0.28);
    border-color: rgba(93,146,255,0.50);
    transform: translateY(-1px);
}

.contrato-cliente-opcao strong {
    display: block;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.25;
}

.contrato-cliente-opcao span {
    display: block;
    color: #b8c7f3;
    font-size: 12px;
    line-height: 1.35;
    margin-top: 4px;
    font-weight: 700;
}

.contrato-cliente-sem-resultado {
    padding: 13px 14px;
    border-radius: 14px;
    background: rgba(239,68,68,0.12);
    border: 1px solid rgba(239,68,68,0.25);
    color: #ffd5d5;
    font-weight: 800;
    font-size: 13px;
}

.contrato-cliente-ajuda {
    color: #9eb5f5 !important;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 700;
    margin-top: 2px;
}



/* BUSCA DA LISTA DE CONTRATOS - PADRÃO DO PAINEL */
.contratos-filtro-lista {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 220px auto;
    gap: 12px;
    align-items: end;
    margin: 4px 0 22px 0;
    padding: 16px;
    border-radius: 20px;
    background: rgba(7, 21, 47, 0.34);
    border: 1px solid rgba(255,255,255,0.08);
}

.contratos-filtro-lista label {
    margin: 0;
}

.contratos-filtro-lista input,
.contratos-filtro-lista select {
    background: #102858 !important;
    color: #ffffff !important;
    border: 1px solid rgba(157, 183, 255, 0.22) !important;
    border-radius: 14px !important;
    min-height: 46px;
    padding: 13px 15px !important;
    font-weight: 700;
}

.contratos-filtro-lista input::placeholder {
    color: #9eb5f5 !important;
}

.contratos-filtro-lista input:focus,
.contratos-filtro-lista select:focus {
    border-color: #5d92ff !important;
    box-shadow: 0 0 0 4px rgba(51,117,250,0.18) !important;
    background: #12306a !important;
}

.contratos-filtro-lista .btn-filtrar {
    min-height: 46px;
    border-radius: 14px;
    padding: 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media(max-width: 900px) {
    .contratos-filtro-lista {
        grid-template-columns: 1fr;
    }

    .contratos-filtro-lista .btn-filtrar {
        width: 100%;
    }
}



/* CORREÇÃO BUSCA CLIENTE CONTRATOS - LISTA VISÍVEL */
.contrato-cliente-campo {
    position: relative;
    z-index: 40;
}

.contrato-cliente-resultados {
    top: calc(100% + 6px) !important;
    z-index: 9999 !important;
}

.contratos-form-grid {
    overflow: visible !important;
}

.contratos-admin-card {
    overflow: visible !important;
}



/* BOTÕES PADRONIZADOS - LISTA DE CONTRATOS */
.contratos-admin-card .tabela-acoes {
    display: grid;
    grid-template-columns: repeat(2, minmax(86px, 1fr));
    gap: 8px;
    align-items: center;
    min-width: 190px;
}

.contratos-admin-card .tabela-acoes form {
    display: contents;
    margin: 0;
}

.contratos-admin-card .tabela-acoes .btn-tabela,
.contratos-admin-card .tabela-acoes a.btn-tabela,
.contratos-admin-card .tabela-acoes button.btn-tabela {
    width: 100%;
    min-width: 86px;
    height: 38px;
    min-height: 38px;
    padding: 0 12px;
    border-radius: 13px;
    border: none;
    font-size: 12px;
    line-height: 1;
    font-weight: 900;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    cursor: pointer;
    text-decoration: none;
}

.contratos-admin-card .tabela-acoes .btn-editar {
    background: linear-gradient(135deg, #fbbf24, #f59e0b);
    color: #07152f;
    box-shadow: 0 8px 18px rgba(245, 158, 11, 0.20);
}

.contratos-admin-card .tabela-acoes .btn-excluir {
    background: linear-gradient(135deg, #ef4444, #dc2626);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(239, 68, 68, 0.20);
}

.contratos-admin-card .tabela-acoes .btn-download {
    background: linear-gradient(135deg, #22c55e, #16a34a);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(34, 197, 94, 0.20);
}

.contratos-admin-card .tabela-acoes .btn-tabela:hover {
    filter: brightness(1.06);
    transform: translateY(-1px);
}

@media(max-width: 900px) {
    .contratos-admin-card .tabela-acoes {
        grid-template-columns: 1fr;
        min-width: 120px;
    }
}



/* TIPO DE FATURAMENTO - CONTRATOS */
.contrato-ajuda-faturamento {
    margin-top: 14px;
    padding: 14px 16px;
    border-radius: 16px;
    background: rgba(51,117,250,0.12);
    border: 1px solid rgba(93,146,255,0.22);
    color: #dce5ff;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 700;
}

.contrato-ajuda-faturamento strong {
    color: #ffffff;
}

.contrato-faturamento-pill {
    display: inline-flex;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(14,165,164,0.18);
    color: #99f6e4;
    font-size: 11px;
    font-weight: 900;
}



/* VALIDADE DOS CONTRATOS */
.contrato-validade-pill {
    display: inline-flex;
    margin-top: 6px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 11px;
    line-height: 1;
    font-weight: 900;
    text-transform: uppercase;
}

.contrato-validade-pill.vigente {
    background: rgba(37, 211, 102, 0.18);
    color: #9ff0bd;
}

.contrato-validade-pill.vencido {
    background: rgba(239, 68, 68, 0.18);
    color: #ffb4b4;
}

.contrato-validade-pill.futuro {
    background: rgba(251, 191, 36, 0.18);
    color: #fde68a;
}



/* STATUS DE VALIDADE - CONTRATOS */
.contrato-validade-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 88px;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.contrato-validade-pill.vigente {
    background: rgba(37, 211, 102, 0.18);
    color: #9ff0bd;
    border: 1px solid rgba(37, 211, 102, 0.28);
}

.contrato-validade-pill.vencido {
    background: rgba(239, 68, 68, 0.18);
    color: #ffb4b4;
    border: 1px solid rgba(239, 68, 68, 0.28);
}

.contrato-validade-pill.futuro {
    background: rgba(59, 130, 246, 0.18);
    color: #bcd1ff;
    border: 1px solid rgba(59, 130, 246, 0.28);
}



/* VALIDADE SIMPLES - CONTRATOS */
body .contrato-validade-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 92px;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

body .contrato-validade-pill.vigente {
    background: rgba(37, 211, 102, 0.18) !important;
    color: #9ff0bd !important;
    border: 1px solid rgba(37, 211, 102, 0.30);
}

body .contrato-validade-pill.vencido {
    background: rgba(239, 68, 68, 0.18) !important;
    color: #ffb4b4 !important;
    border: 1px solid rgba(239, 68, 68, 0.30);
}

body .contrato-validade-pill.futuro {
    background: rgba(59, 130, 246, 0.18) !important;
    color: #bcd1ff !important;
    border: 1px solid rgba(59, 130, 246, 0.30);
}


/* LISTA CONTRATOS ENXUTA + DIAS RESTANTES */
.contrato-dias-restantes {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 84px;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
    background: rgba(148, 163, 184, 0.16);
    color: #dbeafe;
    border: 1px solid rgba(148, 163, 184, 0.20);
}

.contrato-dias-restantes.vigente {
    background: rgba(37, 211, 102, 0.12);
    color: #9ff0bd;
    border-color: rgba(37, 211, 102, 0.24);
}

.contrato-dias-restantes.vencido {
    background: rgba(239, 68, 68, 0.12);
    color: #ffb4b4;
    border-color: rgba(239, 68, 68, 0.24);
}

.contrato-dias-restantes.futuro {
    background: rgba(59, 130, 246, 0.12);
    color: #bcd1ff;
    border-color: rgba(59, 130, 246, 0.24);
}

.dashboard-tabela td small {
    color: rgba(219, 234, 254, 0.72);
    font-weight: 700;
}



/* DIAS RESTANTES - CONTRATOS */
.contrato-dias-restantes.vencido,
.dias-restantes-contrato.vencido {
    color: #ffb4b4 !important;
    font-weight: 900;
}

.contrato-dias-restantes.vigente,
.dias-restantes-contrato.vigente {
    color: #9ff0bd !important;
    font-weight: 900;
}



/* CADASTRO DE CONTRATO MINIMIZADO */
.contrato-cadastro-card {
    transition: all 0.25s ease;
}

.contrato-cadastro-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.contrato-cadastro-header h3 {
    margin-bottom: 4px;
}

.contrato-cadastro-header p {
    margin: 0;
    color: #b7c8ef;
    font-size: 13px;
    font-weight: 700;
}

.btn-abrir-cadastro-contrato {
    border: none;
    min-height: 44px;
    padding: 0 20px;
    border-radius: 14px;
    background: linear-gradient(135deg, #3375fa, #1d4ed8);
    color: #ffffff;
    font-weight: 900;
    font-size: 13px;
    box-shadow: 0 12px 24px rgba(51, 117, 250, 0.22);
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.btn-abrir-cadastro-contrato.secundario {
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(190,210,255,0.20);
    box-shadow: none;
}

.btn-abrir-cadastro-contrato:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
}

.contrato-cadastro-corpo {
    margin-top: 18px;
}

.contrato-cadastro-card.minimizado .contrato-cadastro-corpo {
    display: none;
}

.contrato-cadastro-card.minimizado {
    padding-bottom: 24px;
}

.contrato-cadastro-card.aberto .contrato-cadastro-corpo {
    display: block;
}

@media(max-width: 760px) {
    .contrato-cadastro-header {
        align-items: stretch;
        flex-direction: column;
    }

    .btn-abrir-cadastro-contrato {
        width: 100%;
    }
}


/* TELA COMERCIAL - TESTE DE CONTRATO */
.teste-contrato-admin-card {
    width: 100%;
    background: rgba(16, 39, 90, 0.92);
    border: 1px solid rgba(160, 190, 255, 0.18);
    border-radius: 24px;
    padding: 18px;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.18);
    overflow: hidden;
}

.teste-contrato-admin-topo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
    padding: 4px 4px 16px;
    border-bottom: 1px solid rgba(180, 205, 255, 0.14);
}

.teste-contrato-admin-topo strong {
    display: block;
    color: #ffffff;
    font-size: 17px;
    font-weight: 900;
    margin-bottom: 4px;
}

.teste-contrato-admin-topo span {
    display: block;
    color: #b7c8ef;
    font-size: 13px;
    font-weight: 700;
}

.btn-abrir-teste-contrato {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 14px;
    background: linear-gradient(135deg, #3375fa, #1d4ed8);
    color: #ffffff;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    box-shadow: 0 12px 24px rgba(51, 117, 250, 0.20);
}

.btn-abrir-teste-contrato:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
}

.iframe-teste-contrato {
    width: 100%;
    min-height: 1120px;
    border: none;
    border-radius: 20px;
    background: #06142d;
    display: block;
}

@media(max-width: 800px) {
    .teste-contrato-admin-topo {
        align-items: stretch;
        flex-direction: column;
    }

    .btn-abrir-teste-contrato {
        width: 100%;
    }

    .iframe-teste-contrato {
        min-height: 1280px;
    }
}

/* DASHBOARD ADMIN - VISÃO COMERCIAL E CONTRATOS */

.destaque-comercial {
    border-color: rgba(59,130,246,0.42);
    background: rgba(59,130,246,0.08);
}

.destaque-contratos {
    border-color: rgba(168,85,247,0.42);
    background: rgba(168,85,247,0.08);
}

.dashboard-negocios-admin {
    margin: 0 0 35px;
    padding: 26px;
    border-radius: 26px;
    background:
        linear-gradient(
            135deg,
            rgba(13,34,79,0.88),
            rgba(19,42,92,0.78)
        );
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 12px 35px rgba(0,0,0,0.20);
}

.dashboard-negocios-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}

.dashboard-negocios-header h3 {
    font-size: 24px;
    margin-bottom: 8px;
}

.dashboard-negocios-header p {
    color: #b8c7f3;
    line-height: 1.5;
}

.dashboard-negocios-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 16px;
}

.dashboard-negocio-card {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 20px;
    border-radius: 22px;
    text-decoration: none;
    color: white;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
    transition: 0.25s;
}

.dashboard-negocio-card:hover {
    transform: translateY(-3px);
    background: rgba(255,255,255,0.085);
    border-color: rgba(51,117,250,0.38);
}

.dashboard-negocio-icone {
    width: 46px;
    height: 46px;
    min-width: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: rgba(51,117,250,0.18);
    font-size: 24px;
}

.dashboard-negocio-card small {
    display: block;
    color: #9bb8ff;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 8px;
}

.dashboard-negocio-card strong {
    display: block;
    color: #ffffff;
    font-size: 28px;
    line-height: 1.1;
    margin-bottom: 8px;
}

.dashboard-negocio-card p {
    color: #dce5ff;
    font-size: 13px;
    line-height: 1.45;
}

@media(max-width:768px) {
    .dashboard-negocios-header {
        flex-direction: column;
    }

    .dashboard-negocio-card {
        padding: 17px;
    }
}

/* DASHBOARD ADMIN V2 - VISÃO EXECUTIVA MODERNA */

.dashboard-v2-shell {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin: 28px 0 35px;
}

.dashboard-v2-hero {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 22px;
    padding: 30px;
    border-radius: 32px;
    background:
        radial-gradient(circle at top left, rgba(51,117,250,0.28), transparent 35%),
        linear-gradient(135deg, rgba(7,21,47,0.98), rgba(13,34,79,0.96));
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 20px 55px rgba(0,0,0,0.28);
    overflow: hidden;
    position: relative;
}

.dashboard-v2-hero::after {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    right: -90px;
    top: -120px;
    border-radius: 999px;
    background: rgba(37,211,102,0.10);
    filter: blur(2px);
}

.dashboard-v2-hero-texto,
.dashboard-v2-periodo {
    position: relative;
    z-index: 1;
}

.dashboard-v2-eyebrow {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(51,117,250,0.16);
    border: 1px solid rgba(51,117,250,0.34);
    color: #bcd1ff;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 10px;
}

.dashboard-v2-hero h3 {
    color: #ffffff;
    font-size: clamp(25px, 3vw, 38px);
    line-height: 1.05;
    margin: 0 0 10px;
}

.dashboard-v2-hero p {
    color: #b8c7f3;
    max-width: 760px;
    line-height: 1.55;
    font-size: 15px;
}

.dashboard-v2-periodo {
    min-width: 180px;
    padding: 18px 20px;
    border-radius: 24px;
    background: rgba(255,255,255,0.075);
    border: 1px solid rgba(255,255,255,0.12);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 5px;
}

.dashboard-v2-periodo small {
    color: #9bb8ff;
    font-weight: 800;
    font-size: 12px;
}

.dashboard-v2-periodo strong {
    color: #ffffff;
    font-size: 26px;
}

.dashboard-v2-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.dashboard-v2-kpi,
.dashboard-v2-card,
.dashboard-v2-mini-card {
    background: linear-gradient(180deg, rgba(13,34,79,0.92), rgba(7,21,47,0.92));
    border: 1px solid rgba(255,255,255,0.09);
    box-shadow: 0 14px 38px rgba(0,0,0,0.20);
}

.dashboard-v2-kpi {
    padding: 22px;
    border-radius: 26px;
    min-height: 158px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 12px;
}

.dashboard-v2-kpi-topo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.dashboard-v2-kpi-topo span {
    color: #dce8ff;
    font-size: 14px;
    font-weight: 900;
}

.dashboard-v2-kpi-topo small {
    color: #8fa8e8;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.dashboard-v2-kpi strong {
    color: #ffffff;
    font-size: clamp(22px, 2.3vw, 30px);
    line-height: 1.12;
}

.dashboard-v2-kpi p {
    color: #a9bcf5;
    font-size: 13px;
    line-height: 1.45;
}

.kpi-receita { border-color: rgba(37,211,102,0.35); }
.kpi-positivo { border-color: rgba(37,211,102,0.45); background: linear-gradient(180deg, rgba(13,74,52,0.68), rgba(7,21,47,0.92)); }
.kpi-negativo { border-color: rgba(239,68,68,0.45); background: linear-gradient(180deg, rgba(87,22,35,0.68), rgba(7,21,47,0.92)); }
.kpi-operacao { border-color: rgba(51,117,250,0.36); }
.kpi-comercial { border-color: rgba(168,85,247,0.38); }

.dashboard-v2-barra,
.dashboard-v2-progresso {
    height: 9px;
    border-radius: 999px;
    background: rgba(255,255,255,0.09);
    overflow: hidden;
}

.dashboard-v2-barra i,
.dashboard-v2-progresso i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #25d366, #3375fa);
}

.dashboard-v2-main-grid {
    display: grid;
    grid-template-columns: minmax(330px, 0.95fr) minmax(420px, 1.25fr);
    gap: 22px;
    align-items: stretch;
}

.dashboard-v2-card {
    padding: 24px;
    border-radius: 28px;
}

.dashboard-v2-card-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 20px;
}

.dashboard-v2-card-header h3 {
    color: #ffffff;
    font-size: 23px;
    margin: 0;
}

.dashboard-v2-card-header small {
    color: #9bb8ff;
    font-weight: 800;
    white-space: nowrap;
}

.dashboard-v2-link {
    color: #dce8ff;
    text-decoration: none;
    font-weight: 900;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(51,117,250,0.18);
    border: 1px solid rgba(51,117,250,0.35);
    white-space: nowrap;
}

.dashboard-v2-alert-lista {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.dashboard-v2-alerta {
    display: grid;
    grid-template-columns: 46px 1fr;
    gap: 14px;
    align-items: center;
    padding: 15px;
    border-radius: 20px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
    color: #ffffff;
    text-decoration: none;
    transition: 0.22s;
}

.dashboard-v2-alerta:hover,
.dashboard-v2-modulo:hover,
.dashboard-v2-contratos-resumo a:hover {
    transform: translateY(-2px);
    border-color: rgba(51,117,250,0.42);
    background: rgba(255,255,255,0.082);
}

.dashboard-v2-alerta > span {
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 17px;
    background: rgba(51,117,250,0.16);
    font-size: 22px;
}

.dashboard-v2-alerta strong {
    display: block;
    font-size: 21px;
    margin-bottom: 3px;
}

.dashboard-v2-alerta p {
    color: #b8c7f3;
    font-size: 13px;
    line-height: 1.35;
}

.alerta-warn { border-color: rgba(245,158,11,0.42); background: rgba(245,158,11,0.09); }
.alerta-danger { border-color: rgba(239,68,68,0.48); background: rgba(239,68,68,0.10); }
.alerta-ok-v2 { border-color: rgba(37,211,102,0.30); }

.dashboard-v2-pipeline {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.dashboard-v2-pipeline-item,
.dashboard-v2-contratos-resumo a,
.dashboard-v2-modulo,
.dashboard-v2-mini-card {
    border-radius: 20px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
}

.dashboard-v2-pipeline-item {
    padding: 18px;
}

.dashboard-v2-pipeline-item.destaque {
    border-color: rgba(37,211,102,0.34);
    background: rgba(37,211,102,0.075);
}

.dashboard-v2-pipeline-item small,
.dashboard-v2-contratos-resumo small,
.dashboard-v2-mini-card small {
    display: block;
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.045em;
    margin-bottom: 8px;
}

.dashboard-v2-pipeline-item strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 8px;
}

.dashboard-v2-pipeline-item span {
    color: #dce5ff;
    font-size: 13px;
    font-weight: 700;
}

.dashboard-v2-progresso-bloco {
    padding: 16px;
    border-radius: 20px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.07);
    margin-bottom: 16px;
}

.dashboard-v2-progresso-info {
    display: flex;
    justify-content: space-between;
    color: #dce8ff;
    font-weight: 900;
    margin-bottom: 10px;
}

.dashboard-v2-contratos-resumo {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.dashboard-v2-contratos-resumo a {
    display: block;
    text-decoration: none;
    padding: 15px;
    transition: 0.22s;
}

.dashboard-v2-contratos-resumo strong,
.dashboard-v2-mini-card strong {
    display: block;
    color: #ffffff;
    font-size: 24px;
}

.dashboard-v2-modulos-grid,
.dashboard-v2-mini-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.dashboard-v2-modulo {
    display: flex;
    flex-direction: column;
    gap: 9px;
    padding: 18px;
    text-decoration: none;
    color: #ffffff;
    transition: 0.22s;
    min-height: 135px;
}

.dashboard-v2-modulo > span {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: rgba(51,117,250,0.17);
    font-size: 22px;
}

.dashboard-v2-modulo strong {
    font-size: 17px;
}

.dashboard-v2-modulo p {
    color: #b8c7f3;
    font-size: 13px;
    line-height: 1.45;
}

.dashboard-v2-aniversarios .dashboard-aniversariantes-lista {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.dashboard-v2-detalhes {
    margin: 0;
}

.dashboard-v2-mini-card {
    padding: 18px;
}

.dashboard-v2-mini-card em {
    display: block;
    color: #9bb8ff;
    font-style: normal;
    font-size: 12px;
    margin-top: 7px;
}

@media(max-width: 1180px) {
    .dashboard-v2-kpis,
    .dashboard-v2-modulos-grid,
    .dashboard-v2-mini-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-v2-main-grid {
        grid-template-columns: 1fr;
    }
}

@media(max-width: 760px) {
    .dashboard-v2-hero,
    .dashboard-v2-card-header {
        flex-direction: column;
    }

    .dashboard-v2-kpis,
    .dashboard-v2-pipeline,
    .dashboard-v2-contratos-resumo,
    .dashboard-v2-modulos-grid,
    .dashboard-v2-mini-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-v2-hero,
    .dashboard-v2-card,
    .dashboard-v2-kpi {
        padding: 20px;
        border-radius: 24px;
    }

    .dashboard-v2-periodo {
        width: 100%;
    }
}

/* COMERCIAL - PROPOSTAS | formulário recolhido e status modernos */
.comercial-proposta-form-recolhivel {
    padding: 0;
    overflow: hidden;
}

.comercial-proposta-form-recolhivel > summary {
    list-style: none;
}

.comercial-proposta-form-recolhivel > summary::-webkit-details-marker {
    display: none;
}

.comercial-proposta-form-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px;
    cursor: pointer;
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(51,117,250,0.18), rgba(15,37,84,0.92));
    border: 1px solid rgba(117,161,255,0.16);
    transition: 0.22s ease;
}

.comercial-proposta-form-summary:hover {
    border-color: rgba(117,161,255,0.34);
    background: linear-gradient(135deg, rgba(51,117,250,0.25), rgba(15,37,84,0.96));
}

.comercial-proposta-form-summary span {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.comercial-proposta-form-summary strong {
    color: #ffffff;
    font-size: 22px;
    font-weight: 900;
}

.comercial-proposta-form-summary small {
    color: #b8c7f3;
    font-size: 13px;
    line-height: 1.45;
}

.comercial-proposta-form-summary b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    padding: 11px 16px;
    border-radius: 999px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 900;
    background: rgba(37,211,102,0.16);
    border: 1px solid rgba(37,211,102,0.34);
    box-shadow: 0 10px 26px rgba(0,0,0,0.18);
}

.comercial-proposta-form-recolhivel[open] .comercial-proposta-form-summary {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom-color: rgba(255,255,255,0.08);
}

.comercial-proposta-form-conteudo {
    padding: 22px 24px 24px;
}

.comercial-status-badge {
    gap: 7px;
    min-width: 102px;
    text-transform: uppercase;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.03), 0 10px 24px rgba(0,0,0,0.12);
}

.comercial-status-badge i {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    display: inline-block;
    background: currentColor;
    box-shadow: 0 0 12px currentColor;
}

.comercial-status-enviada {
    background: rgba(37,99,235,0.18);
    color: #bfdbfe;
    border: 1px solid rgba(59,130,246,0.38);
}

.comercial-status-rascunho {
    background: rgba(148,163,184,0.18);
    color: #e2e8f0;
    border: 1px solid rgba(148,163,184,0.34);
}

.comercial-status-cancelada,
.comercial-status-reprovada {
    background: rgba(239,68,68,0.18);
    color: #fecaca;
    border: 1px solid rgba(239,68,68,0.38);
}

.comercial-status-aprovada {
    background: rgba(34,197,94,0.18);
    color: #bbf7d0;
    border: 1px solid rgba(34,197,94,0.38);
}

.comercial-status-atendida {
    background: rgba(20,184,166,0.18);
    color: #ccfbf1;
    border: 1px solid rgba(20,184,166,0.38);
}

.comercial-status-outros {
    background: rgba(245,158,11,0.16);
    color: #fde68a;
    border: 1px solid rgba(245,158,11,0.34);
}

@media(max-width:768px) {
    .comercial-proposta-form-summary {
        flex-direction: column;
        align-items: stretch;
        padding: 18px;
    }

    .comercial-proposta-form-summary b {
        width: 100%;
    }

    .comercial-proposta-form-conteudo {
        padding: 18px;
    }
}

/* COMERCIAL - PROPOSTAS | layout profissional v3 */
.comercial-propostas-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 28px;
    margin-bottom: 22px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top right, rgba(37,211,102,0.18), transparent 34%),
        linear-gradient(135deg, rgba(10,31,74,0.98), rgba(13,48,116,0.92));
    border: 1px solid rgba(117,161,255,0.18);
    box-shadow: 0 24px 54px rgba(0,0,0,0.24);
}

.comercial-propostas-hero::after {
    content: "";
    position: absolute;
    inset: auto -80px -110px auto;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(51,117,250,0.18);
    filter: blur(2px);
    pointer-events: none;
}

.comercial-propostas-hero > div,
.comercial-propostas-hero > a {
    position: relative;
    z-index: 1;
}

.comercial-propostas-hero h2 {
    margin: 6px 0 8px;
    color: #ffffff;
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.06;
    font-weight: 950;
    letter-spacing: -0.04em;
}

.comercial-propostas-hero p {
    max-width: 760px;
    margin: 0;
    color: #c9d8ff;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 700;
}

.comercial-propostas-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #93c5fd;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.comercial-propostas-eyebrow::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #25d366;
    box-shadow: 0 0 18px rgba(37,211,102,0.8);
}

.comercial-propostas-hero-link,
.comercial-proposta-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    white-space: nowrap;
    border-radius: 999px;
    font-weight: 950;
    transition: .22s ease;
}

.comercial-propostas-hero-link {
    padding: 12px 18px;
    color: #ffffff;
    background: rgba(255,255,255,0.10);
    border: 1px solid rgba(255,255,255,0.18);
    box-shadow: 0 16px 32px rgba(0,0,0,0.16);
}

.comercial-propostas-hero-link:hover,
.comercial-proposta-chip:hover {
    transform: translateY(-1px);
    border-color: rgba(147,197,253,0.55);
    background: rgba(51,117,250,0.24);
}

.comercial-propostas-grid {
    gap: 20px;
}

.comercial-proposta-form-recolhivel {
    border-radius: 28px;
    border: 1px solid rgba(117,161,255,0.15);
    box-shadow: 0 18px 42px rgba(0,0,0,0.18);
}

.comercial-proposta-form-summary {
    border-radius: 28px;
    background:
        linear-gradient(135deg, rgba(15,37,84,0.96), rgba(20,55,126,0.82));
}

.comercial-proposta-form-summary b::after {
    content: "▾";
    margin-left: 9px;
    font-size: 12px;
    opacity: .85;
}

.comercial-proposta-form-recolhivel[open] .comercial-proposta-form-summary b::after {
    content: "▴";
}

.comercial-propostas-lista-card {
    padding: 0;
    overflow: hidden;
    border-radius: 30px;
    background:
        linear-gradient(180deg, rgba(15,37,84,0.98), rgba(8,25,60,0.98));
    border: 1px solid rgba(117,161,255,0.16);
    box-shadow: 0 24px 54px rgba(0,0,0,0.23);
}

.comercial-propostas-lista-header {
    padding: 24px 26px 18px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    background:
        radial-gradient(circle at right top, rgba(51,117,250,0.18), transparent 38%),
        rgba(255,255,255,0.02);
}

.comercial-propostas-lista-header h3 {
    margin: 6px 0 6px;
    color: #ffffff;
    font-size: 26px;
    line-height: 1.15;
    font-weight: 950;
    letter-spacing: -0.03em;
}

.comercial-propostas-header-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.comercial-proposta-chip {
    padding: 9px 12px;
    color: #dbeafe;
    font-size: 12px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.12);
}

.comercial-propostas-lista-card .comercial-proposta-filtros {
    margin: 0;
    padding: 18px 26px;
    background: rgba(255,255,255,0.025);
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

.comercial-propostas-lista-card .comercial-proposta-filtros input,
.comercial-propostas-lista-card .comercial-proposta-filtros select {
    min-height: 46px;
    border-radius: 16px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.12);
    color: #ffffff;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.comercial-propostas-lista-card .comercial-proposta-filtros input::placeholder {
    color: rgba(219,234,254,0.62);
}

.comercial-propostas-table-wrap {
    margin: 0;
    padding: 0;
    border-radius: 0;
}

.comercial-propostas-table {
    margin: 0;
    border-collapse: separate;
    border-spacing: 0 10px;
    padding: 12px 18px 18px;
    background: transparent;
}

.comercial-propostas-table thead th {
    padding: 10px 12px;
    color: #93a9d8;
    font-size: 11px;
    letter-spacing: .08em;
    text-transform: uppercase;
    background: transparent;
    border: 0;
}

.comercial-propostas-table tbody tr {
    background: rgba(255,255,255,0.055);
    box-shadow: 0 12px 28px rgba(0,0,0,0.13);
}

.comercial-propostas-table tbody tr:hover {
    background: rgba(51,117,250,0.12);
}

.comercial-propostas-table tbody td {
    padding: 16px 12px;
    border-top: 1px solid rgba(255,255,255,0.075);
    border-bottom: 1px solid rgba(255,255,255,0.075);
    vertical-align: middle;
}

.comercial-propostas-table tbody td:first-child {
    border-left: 1px solid rgba(255,255,255,0.075);
    border-top-left-radius: 18px;
    border-bottom-left-radius: 18px;
}

.comercial-propostas-table tbody td:last-child {
    border-right: 1px solid rgba(255,255,255,0.075);
    border-top-right-radius: 18px;
    border-bottom-right-radius: 18px;
}

.comercial-propostas-table td strong {
    color: #ffffff;
}

.comercial-propostas-table td small {
    color: #9fb4e3;
    font-weight: 750;
}

.comercial-proposta-acoes-tabela {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 7px;
}

.comercial-proposta-acoes-tabela .btn-tabela {
    border-radius: 999px !important;
    padding: 8px 11px !important;
    font-size: 11px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    min-height: 34px;
}

.comercial-status-badge {
    min-width: 116px;
    padding: 9px 12px;
}

@media(max-width: 900px) {
    .comercial-propostas-hero,
    .comercial-propostas-lista-header {
        flex-direction: column;
        align-items: stretch;
    }

    .comercial-propostas-header-actions {
        justify-content: flex-start;
    }

    .comercial-proposta-filtros {
        grid-template-columns: 1fr !important;
    }

    .comercial-propostas-table {
        min-width: 900px;
    }
}


/* PROPOSTAS COMERCIAIS - badges de status com prioridade visual */
.proposta-status-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-width: 118px !important;
    padding: 9px 13px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    letter-spacing: .35px !important;
    text-transform: uppercase !important;
    border: 1px solid transparent !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.16) !important;
    white-space: nowrap !important;
}

.proposta-status-pill i {
    width: 8px !important;
    height: 8px !important;
    border-radius: 999px !important;
    display: inline-block !important;
    background: currentColor !important;
    box-shadow: 0 0 12px currentColor !important;
    flex: 0 0 auto !important;
}

.proposta-status-enviada {
    background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
    color: #ffffff !important;
    border-color: rgba(147,197,253,.55) !important;
}

.proposta-status-rascunho {
    background: linear-gradient(135deg, #64748b, #334155) !important;
    color: #ffffff !important;
    border-color: rgba(203,213,225,.45) !important;
}

.proposta-status-aprovada {
    background: linear-gradient(135deg, #16a34a, #15803d) !important;
    color: #ffffff !important;
    border-color: rgba(134,239,172,.55) !important;
}

.proposta-status-atendida {
    background: linear-gradient(135deg, #0d9488, #0f766e) !important;
    color: #ffffff !important;
    border-color: rgba(94,234,212,.55) !important;
}

.proposta-status-cancelada,
.proposta-status-reprovada {
    background: linear-gradient(135deg, #dc2626, #991b1b) !important;
    color: #ffffff !important;
    border-color: rgba(252,165,165,.55) !important;
}

.proposta-status-pendente,
.proposta-status-aberta,
.proposta-status-outros {
    background: linear-gradient(135deg, #f59e0b, #b45309) !important;
    color: #111827 !important;
    border-color: rgba(253,230,138,.65) !important;
}

.proposta-status-expirada {
    background: linear-gradient(135deg, #7c2d12, #431407) !important;
    color: #fff7ed !important;
    border-color: rgba(253,186,116,.55) !important;
}

@media(max-width: 768px) {
    .proposta-status-pill {
        min-width: 104px !important;
        padding: 8px 11px !important;
        font-size: 11px !important;
    }
}

/* LEADS - TELA MODERNA PROFISSIONAL */
.leads-page-shell {
    display: grid;
    gap: 22px;
}

.leads-hero-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 22px;
    padding: 28px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top left, rgba(51, 117, 250, 0.30), transparent 36%),
        linear-gradient(135deg, rgba(15, 43, 93, 0.98), rgba(8, 24, 55, 0.98));
    border: 1px solid rgba(255,255,255,0.14);
    box-shadow: 0 24px 70px rgba(0,0,0,0.24);
}

.leads-eyebrow,
.leads-card-header span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.10em;
    text-transform: uppercase;
}

.leads-hero-card h2 {
    margin: 8px 0 8px 0;
    color: #ffffff;
    font-size: clamp(26px, 3vw, 42px);
    line-height: 1.05;
}

.leads-hero-card p {
    margin: 0;
    max-width: 720px;
    color: #c8d7ff;
    font-size: 15px;
    line-height: 1.65;
}

.leads-hero-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.leads-hero-btn {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px !important;
    padding: 0 18px !important;
    white-space: nowrap;
}

.leads-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.leads-kpi-card {
    position: relative;
    overflow: hidden;
    min-height: 132px;
    padding: 20px;
    border-radius: 24px;
    background: linear-gradient(145deg, rgba(17, 44, 94, 0.96), rgba(10, 28, 65, 0.96));
    border: 1px solid rgba(255,255,255,0.13);
    box-shadow: 0 18px 48px rgba(0,0,0,0.20);
}

.leads-kpi-card::after {
    content: "";
    position: absolute;
    width: 110px;
    height: 110px;
    right: -36px;
    top: -38px;
    border-radius: 50%;
    background: rgba(51,117,250,0.22);
}

.leads-kpi-card.success::after { background: rgba(34,197,94,0.22); }
.leads-kpi-card.warning::after { background: rgba(245,158,11,0.24); }
.leads-kpi-card.converted::after { background: rgba(20,184,166,0.22); }

.leads-kpi-card span {
    display: block;
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.leads-kpi-card strong {
    display: block;
    margin: 10px 0 8px 0;
    color: #ffffff;
    font-size: 34px;
    line-height: 1;
}

.leads-kpi-card small {
    color: #b9c9f5;
    font-size: 12px;
    font-weight: 700;
}

.leads-form-details {
    padding: 0 !important;
    overflow: hidden;
    border-radius: 24px !important;
}

.leads-form-details > summary {
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 20px 22px;
    background: linear-gradient(135deg, rgba(51,117,250,0.20), rgba(255,255,255,0.05));
    border-bottom: 1px solid transparent;
}

.leads-form-details[open] > summary {
    border-bottom-color: rgba(255,255,255,0.12);
}

.leads-form-details > summary::-webkit-details-marker {
    display: none;
}

.leads-form-details > summary span {
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.leads-form-details > summary strong {
    display: block;
    margin-top: 4px;
    color: #ffffff;
    font-size: 20px;
}

.leads-form-details > summary em {
    min-width: 145px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,0.09);
    border: 1px solid rgba(255,255,255,0.14);
    color: #dbe6ff;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
    text-align: center;
}

.leads-form-details[open] > summary em::before {
    content: "Ocultar formulário";
}

.leads-form-details[open] > summary em {
    font-size: 0;
}

.leads-form-details[open] > summary em::before {
    font-size: 12px;
}

.leads-form-inner {
    padding: 22px;
}

.leads-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.leads-card-header h3 {
    margin: 5px 0 0 0;
    color: #ffffff;
    font-size: 22px;
}

.leads-clear-filter,
.leads-list-meta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.13);
    color: #dbe6ff;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
}

.leads-clear-filter:hover {
    background: rgba(51,117,250,0.24);
    color: #ffffff;
    text-decoration: none;
}

.leads-modern-filter,
.leads-modern-list-card {
    border-radius: 26px !important;
    background: linear-gradient(145deg, rgba(12, 33, 76, 0.96), rgba(8, 24, 55, 0.98)) !important;
    border: 1px solid rgba(255,255,255,0.13) !important;
    box-shadow: 0 22px 60px rgba(0,0,0,0.22) !important;
}

.leads-modern-filter .leads-filtros {
    grid-template-columns: repeat(4, minmax(130px, 1fr));
    align-items: center;
}

.leads-modern-table {
    border-collapse: separate !important;
    border-spacing: 0 12px !important;
    min-width: 1120px;
}

.leads-modern-table thead th {
    background: transparent !important;
    border: none !important;
    color: #91a8dc !important;
    font-size: 11px !important;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0 12px 8px 12px !important;
}

.leads-modern-table tbody tr {
    background: rgba(255,255,255,0.045) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,0.14);
}

.leads-modern-table tbody td {
    padding: 16px 12px !important;
    border-top: 1px solid rgba(255,255,255,0.08) !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    color: #eaf1ff !important;
    vertical-align: middle !important;
}

.leads-modern-table tbody td:first-child {
    border-left: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 18px 0 0 18px;
}

.leads-modern-table tbody td:last-child {
    border-right: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 0 18px 18px 0;
}

.lead-main-cell,
.lead-contact-cell,
.lead-origin-cell,
.lead-subject-cell,
.lead-return-cell,
.lead-proposal-cell {
    display: grid;
    gap: 5px;
}

.lead-main-cell strong,
.lead-contact-cell strong,
.lead-subject-cell strong,
.lead-proposal-cell strong {
    color: #ffffff;
    font-size: 14px;
    line-height: 1.25;
}

.lead-main-cell small,
.lead-contact-cell small,
.lead-origin-cell small,
.lead-subject-cell small,
.lead-return-cell small,
.lead-proposal-cell small {
    color: #aebfea;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
}

.lead-origin-cell span {
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(51,117,250,0.17);
    color: #cfe0ff;
    font-size: 12px;
    font-weight: 900;
}

.lead-status-pill,
.lead-return-pill,
.lead-no-proposal {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 7px 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.02em;
    white-space: nowrap;
    border: 1px solid rgba(255,255,255,0.12);
}

.lead-status-pill::before,
.lead-return-pill::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 12px currentColor;
}

.lead-status-novo {
    background: rgba(51,117,250,0.18) !important;
    color: #9fc0ff !important;
    border-color: rgba(51,117,250,0.36) !important;
}

.lead-status-em-atendimento {
    background: rgba(245,158,11,0.18) !important;
    color: #ffd48a !important;
    border-color: rgba(245,158,11,0.36) !important;
}

.lead-status-retornado {
    background: rgba(20,184,166,0.18) !important;
    color: #99f6e4 !important;
    border-color: rgba(20,184,166,0.36) !important;
}

.lead-status-convertido {
    background: rgba(34,197,94,0.20) !important;
    color: #b7f7ca !important;
    border-color: rgba(34,197,94,0.38) !important;
}

.lead-status-perdido {
    background: rgba(239,68,68,0.18) !important;
    color: #ffc0c0 !important;
    border-color: rgba(239,68,68,0.38) !important;
}

.lead-status-finalizado {
    background: rgba(100,116,139,0.20) !important;
    color: #e2e8f0 !important;
    border-color: rgba(148,163,184,0.40) !important;
}

.lead-return-pill.ok {
    background: rgba(34,197,94,0.18);
    color: #b7f7ca;
    border-color: rgba(34,197,94,0.38);
}

.lead-return-pill.pending {
    background: rgba(245,158,11,0.18);
    color: #ffd48a;
    border-color: rgba(245,158,11,0.36);
}

.lead-no-proposal {
    background: rgba(148,163,184,0.12);
    color: #cbd5e1;
}

.leads-lista-card .leads-action-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 108px) !important;
    gap: 8px !important;
    min-width: 225px !important;
}

.leads-lista-card .leads-action-grid form {
    display: contents !important;
}

.leads-lista-card .leads-action-grid .btn-tabela {
    width: 108px !important;
    min-width: 108px !important;
    max-width: 108px !important;
    height: 38px !important;
    border-radius: 12px !important;
}

.leads-pagination-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 16px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.10);
}

.leads-pagination-info {
    color: #c8d7ff;
    font-size: 13px;
    font-weight: 800;
}

.leads-pagination-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.leads-pagination-btn {
    min-width: 38px;
    min-height: 38px;
    padding: 0 12px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.12);
    color: #dbe6ff;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
    transition: .2s ease;
}

.leads-pagination-btn:hover,
.leads-pagination-btn.active {
    background: linear-gradient(135deg, #3b82f6, #2563eb);
    border-color: rgba(139,173,255,.38);
    color: #ffffff;
    text-decoration: none;
}

.leads-pagination-btn.disabled {
    opacity: .45;
    cursor: not-allowed;
    pointer-events: none;
}

.leads-empty-state {
    text-align: center;
    padding: 28px !important;
    color: #c8d7ff !important;
}

@media(max-width: 1180px) {
    .leads-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .leads-modern-filter .leads-filtros {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media(max-width: 760px) {
    .leads-hero-card,
    .leads-card-header,
    .leads-form-details > summary {
        flex-direction: column;
        align-items: stretch;
    }

    .leads-hero-actions,
    .leads-hero-btn,
    .leads-clear-filter,
    .leads-list-meta,
    .leads-pagination-info,
    .leads-pagination-actions {
        width: 100%;
    }

    .leads-kpi-grid,
    .leads-modern-filter .leads-filtros {
        grid-template-columns: 1fr;
    }

    .leads-hero-card {
        padding: 22px;
    }
}

/* =========================================================
   COMERCIAL / CONTRATOS DE CLIENTES - VISUAL PROFISSIONAL
   ========================================================= */
body .contratos-page-shell{
    width:100%;
    display:flex;
    flex-direction:column;
    gap:22px;
}

body .contratos-hero-panel{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    gap:24px;
    padding:28px;
    border-radius:28px;
    border:1px solid rgba(125, 163, 255, .28);
    background:
        radial-gradient(circle at top left, rgba(53, 120, 255, .32), transparent 34%),
        linear-gradient(135deg, rgba(8, 31, 71, .98), rgba(14, 48, 106, .96));
    box-shadow:0 24px 60px rgba(0,0,0,.22);
    position:relative;
    overflow:hidden;
}

body .contratos-hero-panel:after{
    content:"";
    position:absolute;
    right:-90px;
    top:-90px;
    width:260px;
    height:260px;
    border-radius:999px;
    background:rgba(62, 127, 255, .24);
    filter:blur(1px);
}

body .contratos-hero-main,
body .contratos-hero-actions{
    position:relative;
    z-index:1;
}

body .contratos-eyebrow,
body .contratos-card-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    width:max-content;
    padding:7px 12px;
    border-radius:999px;
    background:rgba(80, 145, 255, .16);
    border:1px solid rgba(139, 181, 255, .28);
    color:#bcd2ff;
    font-size:11px;
    line-height:1;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

body .contratos-hero-main h2{
    margin:14px 0 8px;
    color:#ffffff;
    font-size:clamp(24px, 3vw, 36px);
    line-height:1.05;
    font-weight:950;
    letter-spacing:-.04em;
}

body .contratos-hero-main p{
    max-width:760px;
    margin:0;
    color:#c8d7f7;
    font-size:14px;
    line-height:1.65;
    font-weight:700;
}

body .contratos-hero-actions{
    display:flex;
    align-items:flex-end;
    justify-content:flex-end;
    gap:12px;
    flex-wrap:wrap;
    min-width:270px;
}

body .contratos-hero-btn{
    appearance:none;
    border:0;
    text-decoration:none;
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:0 18px;
    border-radius:16px;
    background:linear-gradient(135deg, #3b82f6, #2563eb);
    color:#fff !important;
    font-size:13px;
    font-weight:950;
    box-shadow:0 14px 28px rgba(37,99,235,.28);
}

body .contratos-hero-btn.secundario{
    background:rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.18);
    box-shadow:none;
}

body .contratos-kpi-grid{
    display:grid;
    grid-template-columns:repeat(6, minmax(130px, 1fr));
    gap:14px;
}

body .contratos-kpi-card{
    padding:18px;
    border-radius:22px;
    border:1px solid rgba(143, 173, 230, .24);
    background:linear-gradient(180deg, rgba(18, 47, 98, .98), rgba(17, 43, 88, .98));
    box-shadow:0 16px 36px rgba(2, 12, 27, .18);
    min-height:126px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    position:relative;
    overflow:hidden;
}

body .contratos-kpi-card:before{
    content:"";
    width:42px;
    height:4px;
    border-radius:999px;
    background:#60a5fa;
    position:absolute;
    left:18px;
    top:0;
}

body .contratos-kpi-card.sucesso:before{background:#34d399;}
body .contratos-kpi-card.alerta:before{background:#f59e0b;}
body .contratos-kpi-card.perigo:before{background:#fb7185;}
body .contratos-kpi-card.neutro:before{background:#93c5fd;}

body .contratos-kpi-card span{
    color:#9fb5dc;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}

body .contratos-kpi-card strong{
    margin-top:12px;
    color:#fff;
    font-size:30px;
    line-height:1;
    font-weight:950;
}

body .contratos-kpi-card small{
    margin-top:10px;
    color:#c3d2ee;
    font-size:12px;
    line-height:1.35;
    font-weight:750;
}

body .contratos-admin-layout-moderno{
    display:grid;
    grid-template-columns:minmax(0, 1fr);
    gap:22px;
}

body .contratos-page-shell .contratos-admin-card{
    border-radius:26px;
    border:1px solid rgba(132, 166, 225, .22);
    background:linear-gradient(180deg, rgba(14, 40, 86, .98), rgba(12, 34, 74, .98));
    box-shadow:0 20px 50px rgba(0,0,0,.20);
    padding:24px;
    overflow:visible;
}

body .contratos-page-shell .contratos-admin-card h3{
    color:#ffffff;
    margin:8px 0 6px;
    font-size:22px;
    line-height:1.1;
    font-weight:950;
    letter-spacing:-.03em;
}

body .contratos-page-shell .contratos-admin-card .painel-subtitulo,
body .contratos-lista-topo p{
    color:#adc1e2 !important;
    font-size:13px;
    line-height:1.5;
    font-weight:700;
    margin:0;
}

body .contratos-page-shell .contrato-cadastro-header{
    gap:18px;
    padding:0;
    align-items:center;
}

body .contratos-page-shell .btn-abrir-cadastro-contrato{
    border:0;
    min-height:44px;
    padding:0 18px;
    border-radius:15px;
    background:linear-gradient(135deg, #3b82f6, #2563eb);
    color:#fff;
    font-size:13px;
    font-weight:950;
    box-shadow:0 14px 26px rgba(37,99,235,.24);
    text-decoration:none;
    white-space:nowrap;
}

body .contratos-page-shell .btn-abrir-cadastro-contrato.secundario{
    background:rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.16);
    box-shadow:none;
}

body .contratos-page-shell .contrato-cadastro-card.minimizado{
    padding:22px 24px;
}

body .contratos-page-shell .contrato-cadastro-card.minimizado .contrato-cadastro-corpo{
    display:none;
}

body .contratos-page-shell .contrato-cadastro-card.aberto .contrato-cadastro-corpo{
    display:block;
    margin-top:22px;
    padding-top:22px;
    border-top:1px solid rgba(148, 178, 235, .20);
}

body .contratos-page-shell .contratos-form-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:14px;
}

body .contratos-page-shell label{
    color:#cbd8ee;
    font-weight:900;
    font-size:12px;
    letter-spacing:.02em;
}

body .contratos-page-shell input,
body .contratos-page-shell select,
body .contratos-page-shell textarea{
    margin-top:7px;
    width:100%;
    min-height:46px;
    border-radius:16px;
    border:1px solid rgba(147, 178, 235, .24);
    background:rgba(255,255,255,.08);
    color:#ffffff;
    font-size:13px;
    font-weight:800;
    outline:none;
    transition:.18s ease;
}

body .contratos-page-shell textarea{
    min-height:92px;
}

body .contratos-page-shell input:focus,
body .contratos-page-shell select:focus,
body .contratos-page-shell textarea:focus{
    border-color:rgba(96, 165, 250, .92);
    box-shadow:0 0 0 4px rgba(59,130,246,.18);
    background:rgba(255,255,255,.11);
}

body .contratos-page-shell select option{
    background:#102a57;
    color:#ffffff;
}

body .contratos-page-shell input::placeholder,
body .contratos-page-shell textarea::placeholder{
    color:#8196bd;
}

body .contrato-ajuda-faturamento{
    margin-top:18px;
    padding:16px 18px;
    border-radius:18px;
    border:1px solid rgba(96,165,250,.24);
    background:rgba(59,130,246,.10);
    color:#bfd1ef;
    font-size:13px;
    line-height:1.55;
    font-weight:750;
}

body .contrato-ajuda-faturamento strong{
    color:#fff;
}

body .contratos-admin-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:18px;
}

body .contratos-page-shell .btn-filtrar,
body .contratos-page-shell .btn-preview{
    border:0;
    min-height:44px;
    padding:0 18px;
    border-radius:15px;
    font-weight:950;
    font-size:13px;
    text-decoration:none;
}

body .contratos-page-shell .btn-filtrar{
    background:linear-gradient(135deg, #3b82f6, #2563eb);
    color:#fff;
}

body .contratos-page-shell .btn-preview{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.10);
    color:#fff !important;
    border:1px solid rgba(255,255,255,.14);
}

body .contratos-lista-topo{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start;
    margin-bottom:18px;
}

body .contratos-filtro-moderno{
    display:grid;
    grid-template-columns:minmax(240px, 1fr) 220px auto;
    gap:12px;
    align-items:end;
    padding:16px;
    border-radius:22px;
    background:rgba(255,255,255,.055);
    border:1px solid rgba(146, 176, 235, .18);
    margin-bottom:20px;
}

body .contratos-tabela-moderna{
    border-collapse:separate !important;
    border-spacing:0 12px !important;
    width:100%;
}

body .contratos-tabela-moderna thead th{
    border:0 !important;
    background:transparent !important;
    color:#9fb3d5 !important;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:11px !important;
    font-weight:950 !important;
    padding:0 12px 4px !important;
}

body .contratos-tabela-moderna tbody tr{
    background:linear-gradient(180deg, rgba(27, 61, 122, .92), rgba(24, 54, 108, .92));
    box-shadow:0 12px 28px rgba(0,0,0,.15);
}

body .contratos-tabela-moderna tbody td{
    border-top:1px solid rgba(148, 178, 235, .16) !important;
    border-bottom:1px solid rgba(148, 178, 235, .16) !important;
    padding:16px 12px !important;
    color:#e7eefc !important;
    vertical-align:middle;
}

body .contratos-tabela-moderna tbody td:first-child{
    border-left:1px solid rgba(148, 178, 235, .16) !important;
    border-radius:18px 0 0 18px;
}

body .contratos-tabela-moderna tbody td:last-child{
    border-right:1px solid rgba(148, 178, 235, .16) !important;
    border-radius:0 18px 18px 0;
}

body .contrato-cliente-cell{
    min-width:240px;
    display:flex;
    flex-direction:column;
    gap:4px;
}

body .contrato-cliente-cell strong{
    color:#fff !important;
    font-size:14px;
    font-weight:950;
    text-transform:uppercase;
    line-height:1.15;
}

body .contrato-cliente-cell span{
    color:#d6e3fb;
    font-size:12px;
    font-weight:850;
}

body .contrato-cliente-cell small,
body .contratos-tabela-moderna td small{
    color:#9fb3d5 !important;
    font-size:11px;
    font-weight:850;
}

body .contrato-modelo-pill,
body .contrato-faturamento-pill,
body .contrato-validade-pill,
body .contrato-status-pill,
body .contrato-dias-restantes{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:0 11px !important;
    border-radius:999px !important;
    font-size:11px !important;
    line-height:1;
    font-weight:950 !important;
    text-transform:uppercase;
    letter-spacing:.03em;
    border:1px solid rgba(255,255,255,.12);
    white-space:nowrap;
}

body .contrato-modelo-pill{
    background:rgba(96,165,250,.16) !important;
    color:#bfdbfe !important;
}

body .contrato-faturamento-pill{
    background:rgba(168,85,247,.16) !important;
    color:#e9d5ff !important;
}

body .contrato-status-pill.ativo{
    background:rgba(16,185,129,.18) !important;
    color:#a7f3d0 !important;
    border-color:rgba(52,211,153,.34) !important;
}

body .contrato-status-pill.inativo{
    background:rgba(248,113,113,.16) !important;
    color:#fecaca !important;
    border-color:rgba(248,113,113,.30) !important;
}

body .contrato-validade-pill.vigente,
body .contrato-dias-restantes.vigente{
    background:rgba(16,185,129,.18) !important;
    color:#a7f3d0 !important;
    border-color:rgba(52,211,153,.34) !important;
}

body .contrato-validade-pill.vencido,
body .contrato-dias-restantes.vencido{
    background:rgba(244,63,94,.18) !important;
    color:#fecdd3 !important;
    border-color:rgba(251,113,133,.34) !important;
}

body .contrato-validade-pill.futuro,
body .contrato-dias-restantes.futuro{
    background:rgba(245,158,11,.18) !important;
    color:#fde68a !important;
    border-color:rgba(251,191,36,.36) !important;
}

body .contratos-page-shell .tabela-acoes{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
    min-width:150px;
}

body .contratos-page-shell .tabela-acoes form{
    margin:0;
}

body .contratos-page-shell .tabela-acoes .btn-tabela,
body .contratos-page-shell .tabela-acoes a.btn-tabela,
body .contratos-page-shell .tabela-acoes button.btn-tabela{
    min-height:34px;
    border:0;
    border-radius:999px;
    padding:0 12px;
    font-size:11px;
    font-weight:950;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    white-space:nowrap;
}

body .contratos-page-shell .tabela-acoes .btn-editar{
    background:#3b82f6;
    color:#fff !important;
}

body .contratos-page-shell .tabela-acoes .btn-excluir{
    background:rgba(244,63,94,.18);
    color:#fecdd3;
    border:1px solid rgba(251,113,133,.30);
}

body .contratos-page-shell .tabela-acoes .btn-download{
    background:rgba(16,185,129,.18);
    color:#a7f3d0;
    border:1px solid rgba(52,211,153,.30);
}

body .contrato-regra-lista{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:18px;
}

body .contrato-regra-item{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
    padding:16px;
    border-radius:18px;
    border:1px solid rgba(148, 178, 235, .18);
    background:rgba(255,255,255,.06);
}

body .contrato-regra-item strong{
    color:#ffffff !important;
    font-size:13px;
}

body .contrato-regra-item span{
    color:#b9cae7 !important;
    font-size:12px;
    line-height:1.5;
}

body .contrato-cliente-resultados{
    background:#102a57;
    border:1px solid rgba(147, 178, 235, .26);
    box-shadow:0 20px 40px rgba(0,0,0,.25);
}

body .contrato-cliente-opcao{
    color:#fff;
    border-bottom:1px solid rgba(255,255,255,.08);
}

body .contrato-cliente-opcao:hover{
    background:rgba(59,130,246,.20);
}

body .contrato-cliente-opcao span,
body .contrato-cliente-ajuda{
    color:#9fb5dc !important;
}

@media (max-width:1200px){
    body .contratos-kpi-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr));
    }
}

@media (max-width:900px){
    body .contratos-hero-panel{
        flex-direction:column;
    }
    body .contratos-hero-actions{
        justify-content:flex-start;
        min-width:0;
    }
    body .contratos-kpi-grid,
    body .contratos-page-shell .contratos-form-grid,
    body .contratos-filtro-moderno{
        grid-template-columns:1fr;
    }
    body .contratos-page-shell .contrato-cadastro-header{
        flex-direction:column;
        align-items:flex-start;
    }
    body .contratos-page-shell .btn-abrir-cadastro-contrato,
    body .contratos-hero-btn{
        width:100%;
    }
    body .contratos-page-shell .tabela-acoes{
        justify-content:flex-start;
    }
}

@media (max-width:640px){
    body .contratos-hero-panel,
    body .contratos-page-shell .contratos-admin-card{
        padding:18px;
        border-radius:22px;
    }
    body .contratos-kpi-grid{
        grid-template-columns:1fr;
    }
}

/* CONTRATOS - SIMULADOR EMBUTIDO NA TELA DE CLIENTES */
.contrato-teste-card {
    margin: 0 0 22px 0;
    overflow: hidden !important;
    transition: all 0.25s ease;
}

.contrato-teste-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.contrato-teste-header h3 {
    margin-bottom: 4px;
}

.contrato-teste-header p {
    margin: 0;
    color: #b7c8ef;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 700;
    max-width: 780px;
}

.contrato-teste-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.contrato-teste-corpo {
    margin-top: 18px;
}

.contrato-teste-card.minimizado .contrato-teste-corpo,
.contrato-teste-card.minimizado #btnFecharTesteContratoCliente {
    display: none !important;
}

.contrato-teste-card.aberto .contrato-teste-corpo,
.contrato-teste-card.aberto #btnFecharTesteContratoCliente {
    display: block;
}

.contrato-teste-card.aberto #btnAbrirTesteContratoCliente {
    display: none;
}

.teste-contrato-card-embutido {
    background: rgba(7, 21, 47, 0.34) !important;
    box-shadow: none;
    border-color: rgba(93, 146, 255, 0.18);
}

.iframe-teste-contrato-embutido {
    min-height: 980px;
}

@media(max-width: 900px) {
    .contrato-teste-header {
        align-items: stretch;
        flex-direction: column;
    }

    .contrato-teste-actions {
        justify-content: stretch;
    }

    .contrato-teste-actions .btn-abrir-cadastro-contrato {
        width: 100%;
    }

    .iframe-teste-contrato-embutido {
        min-height: 1280px;
    }
}

/* COMERCIAL - PRODUTOS E SERVIÇOS | V9 PROFISSIONAL */
.comercial-produtos-page {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.comercial-produtos-hero {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 24px;
    padding: 26px;
    border-radius: 26px;
    background:
        radial-gradient(circle at top left, rgba(55, 125, 255, 0.30), transparent 34%),
        linear-gradient(135deg, rgba(4, 22, 55, 0.98), rgba(8, 42, 91, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 20px 50px rgba(0,0,0,0.26);
    overflow: hidden;
    position: relative;
}

.comercial-produtos-hero::after {
    content: "";
    position: absolute;
    right: -80px;
    top: -80px;
    width: 230px;
    height: 230px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
}

.comercial-produtos-hero > * {
    position: relative;
    z-index: 1;
}

.comercial-produtos-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #95c5ff;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 8px;
}

.comercial-produtos-hero h2 {
    margin: 0 0 8px 0;
    color: #ffffff;
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.05;
}

.comercial-produtos-hero p {
    margin: 0;
    max-width: 740px;
    color: #c7d8ff;
    line-height: 1.55;
    font-size: 15px;
}

.comercial-produtos-hero-acoes {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.comercial-produtos-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.comercial-produtos-stat-card {
    padding: 20px;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(13, 38, 79, 0.98), rgba(8, 26, 58, 0.98));
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 14px 34px rgba(0,0,0,0.18);
    min-height: 126px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.comercial-produtos-stat-card span {
    color: #b9c8ef;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.comercial-produtos-stat-card strong {
    color: #ffffff;
    font-size: 34px;
    line-height: 1;
    margin-top: 12px;
}

.comercial-produtos-stat-card small {
    color: #9fb6e8;
    font-size: 12px;
    margin-top: 8px;
}

.comercial-produtos-stat-card.destaque { border-color: rgba(59,130,246,0.42); }
.comercial-produtos-stat-card.sucesso { border-color: rgba(34,197,94,0.42); }
.comercial-produtos-stat-card.info { border-color: rgba(14,165,233,0.42); }
.comercial-produtos-stat-card.alerta { border-color: rgba(245,158,11,0.42); }

.comercial-produto-form-recolhivel {
    border: none;
}

.comercial-produto-form-recolhivel > summary {
    list-style: none;
    cursor: pointer;
}

.comercial-produto-form-recolhivel > summary::-webkit-details-marker {
    display: none;
}

.comercial-produto-form-summary {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
    padding: 19px 22px;
    border-radius: 22px;
    background: linear-gradient(135deg, rgba(14,43,91,0.98), rgba(8,28,62,0.98));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 12px 30px rgba(0,0,0,0.18);
    transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.comercial-produto-form-summary:hover {
    transform: translateY(-1px);
    border-color: rgba(99, 179, 255, 0.42);
}

.comercial-produto-form-summary span,
.comercial-produto-form-summary small {
    display: block;
}

.comercial-produto-form-summary span {
    color: #8fc2ff;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: 11px;
    font-weight: 900;
}

.comercial-produto-form-summary strong {
    display: block;
    color: #ffffff;
    font-size: 20px;
    margin: 3px 0;
}

.comercial-produto-form-summary small {
    color: #b8c8f0;
    line-height: 1.4;
}

.comercial-produto-form-summary b {
    white-space: nowrap;
    border-radius: 999px;
    padding: 10px 14px;
    color: #052352;
    background: #dbeafe;
    font-size: 12px;
}

.comercial-produto-form-recolhivel[open] .comercial-produto-form-summary {
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
}

.comercial-produto-form-card {
    margin-top: 14px;
    padding: 24px;
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(10,32,72,0.98), rgba(7,25,57,0.98));
}

.comercial-produto-form-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.comercial-produto-form-grid.principal {
    grid-template-columns: minmax(0, 2fr) minmax(180px, .55fr);
}

.comercial-produto-form-footer {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-end;
    flex-wrap: wrap;
}

.comercial-produto-status-select {
    min-width: 220px;
}

.comercial-produtos-lista-card {
    padding: 24px;
    border-radius: 26px;
    background:
        linear-gradient(180deg, rgba(8, 29, 65, 0.98), rgba(5, 20, 47, 0.98));
    border: 1px solid rgba(255,255,255,0.10);
}

.comercial-produtos-lista-topo {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: flex-start;
    margin-bottom: 18px;
}

.comercial-produtos-lista-topo h3 {
    color: #ffffff;
    font-size: 24px;
    margin: 0 0 5px 0;
}

.comercial-produtos-lista-topo p {
    color: #b8c7f3;
    margin: 0;
    line-height: 1.45;
}

.comercial-produtos-filtros {
    display: grid;
    grid-template-columns: minmax(260px, 1.6fr) minmax(190px, .55fr) minmax(150px, .35fr) auto;
    gap: 12px;
    margin: 18px 0 18px 0;
}

.comercial-produtos-filtros input,
.comercial-produtos-filtros select {
    width: 100%;
    padding: 14px 16px;
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 15px;
    background: rgba(12, 40, 88, 0.92);
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    outline: none;
}

.comercial-produtos-filtros input::placeholder {
    color: #9eb5f5;
}

.comercial-produtos-lista {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.comercial-produtos-lista-head,
.comercial-produtos-row {
    display: grid;
    grid-template-columns: minmax(260px, 1.8fr) minmax(150px, .75fr) minmax(150px, .8fr) minmax(130px, .55fr) minmax(110px, .45fr) minmax(170px, .65fr);
    gap: 14px;
    align-items: center;
}

.comercial-produtos-lista-head {
    padding: 0 16px 6px 16px;
    color: #89a7e8;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.comercial-produtos-row {
    padding: 16px;
    border-radius: 20px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.comercial-produtos-row:hover {
    transform: translateY(-1px);
    background: rgba(255,255,255,0.065);
    border-color: rgba(107, 176, 255, 0.30);
}

.comercial-produtos-main strong {
    display: block;
    color: #ffffff;
    font-size: 15px;
    line-height: 1.25;
}

.comercial-produtos-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 5px;
}

.comercial-produtos-meta span {
    width: fit-content;
    padding: 4px 8px;
    border-radius: 999px;
    color: #cfe0ff;
    background: rgba(59,130,246,0.16);
    border: 1px solid rgba(59,130,246,0.25);
    font-size: 11px;
    font-weight: 900;
}

.comercial-produtos-meta small,
.comercial-produtos-subinfo {
    display: block;
    color: #a9bae5;
    font-size: 12px;
    line-height: 1.35;
    margin-top: 4px;
}

.produto-categoria-pill,
.produto-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 28px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .03em;
    border: 1px solid transparent;
}

.produto-categoria-servico { background: rgba(14,165,233,0.16); color: #bae6fd; border-color: rgba(14,165,233,0.34); }
.produto-categoria-produto { background: rgba(99,102,241,0.16); color: #d8dcff; border-color: rgba(99,102,241,0.34); }
.produto-categoria-peca { background: rgba(245,158,11,0.16); color: #fdecc8; border-color: rgba(245,158,11,0.34); }
.produto-categoria-deslocamento { background: rgba(34,197,94,0.15); color: #c8f7d8; border-color: rgba(34,197,94,0.32); }
.produto-categoria-hospedagem,
.produto-categoria-refeicao,
.produto-categoria-outro { background: rgba(148,163,184,0.18); color: #e2e8f0; border-color: rgba(148,163,184,0.32); }

.comercial-produtos-aplicacao {
    color: #eaf1ff;
    font-size: 13px;
}

.comercial-produtos-valor strong {
    color: #ffffff;
    font-size: 15px;
}

.comercial-produtos-valor small {
    display: block;
    color: #9fb6e8;
    font-size: 12px;
    margin-top: 4px;
}

.produto-status-ativo {
    background: rgba(34,197,94,0.18);
    color: #bbf7d0;
    border-color: rgba(34,197,94,0.38);
}

.produto-status-inativo {
    background: rgba(239,68,68,0.16);
    color: #fecaca;
    border-color: rgba(239,68,68,0.34);
}

.comercial-produtos-acoes {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.comercial-produtos-acoes form {
    margin: 0;
}

.comercial-produtos-acoes button {
    border: none;
    cursor: pointer;
}

.comercial-produtos-empty {
    padding: 30px 18px;
    border-radius: 18px;
    text-align: center;
    color: #b8c7f3;
    background: rgba(255,255,255,0.045);
    border: 1px dashed rgba(255,255,255,0.16);
    font-weight: 800;
}

@media(max-width: 1180px) {
    .comercial-produtos-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .comercial-produtos-lista-head {
        display: none;
    }

    .comercial-produtos-row {
        grid-template-columns: 1fr 1fr;
    }

    .comercial-produtos-acoes {
        justify-content: flex-start;
    }
}

@media(max-width: 900px) {
    .comercial-produtos-hero {
        flex-direction: column;
    }

    .comercial-produtos-hero-acoes {
        width: 100%;
        justify-content: flex-start;
    }

    .comercial-produtos-filtros,
    .comercial-produto-form-grid,
    .comercial-produto-form-grid.principal {
        grid-template-columns: 1fr;
    }

    .comercial-produto-form-footer {
        align-items: stretch;
    }

    .comercial-produto-status-select,
    .comercial-produto-form-footer .comercial-form-acoes,
    .comercial-produto-form-footer .btn-filtrar,
    .comercial-produto-form-footer .btn-preview {
        width: 100%;
    }
}

@media(max-width: 640px) {
    .comercial-produtos-hero,
    .comercial-produtos-lista-card,
    .comercial-produto-form-card {
        padding: 18px;
        border-radius: 20px;
    }

    .comercial-produtos-stats {
        grid-template-columns: 1fr;
    }

    .comercial-produtos-row {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .comercial-produtos-acoes .btn-tabela,
    .comercial-produtos-acoes form,
    .comercial-produtos-acoes button {
        width: 100%;
        text-align: center;
        justify-content: center;
    }

    .comercial-produto-form-summary {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* =========================================================
   OPERACIONAL / RELATÓRIOS - VISUAL PROFISSIONAL
   ========================================================= */

.relatorios-operacional-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.relatorios-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(58, 126, 255, 0.32), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.relatorios-hero::after {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -80px;
    width: 230px;
    height: 230px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.relatorios-hero-info,
.relatorios-hero-actions {
    position: relative;
    z-index: 1;
}

.relatorios-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    border: 1px solid rgba(255,255,255,0.12);
    color: #9fbfff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.relatorios-hero h2 {
    margin: 14px 0 10px;
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.05;
}

.relatorios-hero p {
    max-width: 680px;
    margin: 0;
    color: #dbe8ff;
    font-size: 15px;
    line-height: 1.65;
}

.relatorios-hero-actions {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    min-width: 300px;
}

.relatorios-primary-action,
.relatorios-secondary-action,
.relatorios-action-card {
    appearance: none;
    border: none;
    font-family: inherit;
    cursor: pointer;
}

.relatorios-primary-action,
.relatorios-secondary-action {
    min-height: 46px;
    padding: 12px 18px;
    border-radius: 15px;
    font-size: 14px;
    font-weight: 900;
    transition: 0.25s ease;
}

.relatorios-primary-action {
    color: #ffffff;
    background: linear-gradient(135deg, #3375FA, #5f9bff);
    box-shadow: 0 12px 26px rgba(51,117,250,0.28);
}

.relatorios-secondary-action {
    color: #dbe8ff;
    background: rgba(255,255,255,0.09);
    border: 1px solid rgba(255,255,255,0.16);
}

.relatorios-primary-action:hover,
.relatorios-secondary-action:hover,
.relatorios-action-card:hover {
    transform: translateY(-2px);
}

.relatorios-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.relatorios-kpi-card {
    min-height: 138px;
    padding: 20px;
    border-radius: 22px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 14px 34px rgba(0,0,0,0.18);
}

.relatorios-kpi-card.destaque {
    background: linear-gradient(135deg, rgba(51,117,250,0.20), rgba(255,255,255,0.045));
    border-color: rgba(83,143,255,0.40);
}

.relatorios-kpi-card.alerta {
    background: linear-gradient(135deg, rgba(245,158,11,0.18), rgba(255,255,255,0.045));
    border-color: rgba(245,158,11,0.34);
}

.relatorios-kpi-card span {
    display: block;
    color: #9bb8ff;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.relatorios-kpi-card strong {
    display: block;
    margin: 10px 0 6px;
    color: #ffffff;
    font-size: 32px;
    line-height: 1;
}

.relatorios-kpi-card small {
    color: #cddcff;
    font-size: 13px;
    line-height: 1.45;
}

.relatorios-action-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.relatorios-action-card {
    text-align: left;
    padding: 22px;
    border-radius: 22px;
    color: #ffffff;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 14px 34px rgba(0,0,0,0.16);
    transition: 0.25s ease;
}

.relatorios-action-card span {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 34px;
    height: 34px;
    margin-bottom: 16px;
    border-radius: 12px;
    background: rgba(51,117,250,0.20);
    border: 1px solid rgba(51,117,250,0.34);
    color: #9fc0ff;
    font-size: 13px;
    font-weight: 900;
}

.relatorios-action-card strong {
    display: block;
    margin-bottom: 8px;
    font-size: 18px;
    color: #ffffff;
}

.relatorios-action-card small {
    display: block;
    color: #cddcff;
    font-size: 13px;
    line-height: 1.55;
}

.relatorios-operacional-page .certificados-box.ativo {
    margin-top: 0;
}

.relatorios-panel-content {
    background:
        linear-gradient(180deg, rgba(12, 35, 82, 0.98), rgba(8, 24, 58, 0.98)) !important;
    border-radius: 26px !important;
    padding: 28px !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    box-shadow: 0 22px 50px rgba(0,0,0,0.24) !important;
}

.relatorios-panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255,255,255,0.09);
}

.relatorios-panel-head span {
    display: inline-flex;
    width: fit-content;
    margin-bottom: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    color: #9bb8ff;
    background: rgba(51,117,250,0.14);
    border: 1px solid rgba(51,117,250,0.25);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.relatorios-panel-head h3 {
    margin: 0 0 6px !important;
    color: #ffffff !important;
    font-size: 24px !important;
}

.relatorios-panel-head p {
    margin: 0;
    color: #cddcff;
    font-size: 14px;
    line-height: 1.55;
}

.relatorios-operacional-page .upload-form {
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 20px;
    padding: 18px;
}

.relatorios-operacional-page .upload-form input,
.relatorios-operacional-page .upload-form select,
.relatorios-operacional-page .upload-form textarea {
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    background: rgba(255,255,255,0.08) !important;
}

.relatorios-operacional-page .dashboard-tabela-scroll,
.relatorios-operacional-page .lista-certificados {
    margin-top: 22px;
    padding: 14px;
    border-radius: 22px;
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.08);
}

.relatorios-operacional-page .dashboard-tabela th {
    color: #a9c5ff;
    background: rgba(51,117,250,0.10);
}

.relatorios-operacional-page .dashboard-tabela td {
    vertical-align: middle;
}

.relatorio-admin-card {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0.038)) !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 24px !important;
    padding: 24px !important;
    box-shadow: 0 16px 36px rgba(0,0,0,0.18);
}

.relatorio-admin-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 4px;
    background: linear-gradient(90deg, #3375FA, rgba(95,155,255,0.2));
}

.relatorio-admin-titulo-linha {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.relatorio-status-chip {
    display: inline-flex !important;
    width: fit-content;
    padding: 8px 11px;
    border-radius: 999px;
    font-size: 11px !important;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.relatorio-status-chip.valor {
    color: #d7fbe8 !important;
    background: rgba(34,197,94,0.18);
    border: 1px solid rgba(34,197,94,0.34);
}

.relatorio-status-chip.neutro {
    color: #dbe8ff !important;
    background: rgba(148,163,184,0.18);
    border: 1px solid rgba(148,163,184,0.28);
}

.relatorio-admin-header h3 {
    font-size: 18px !important;
    line-height: 1.35;
}

.relatorio-admin-meta {
    padding: 14px;
    border-radius: 18px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.relatorio-admin-tabela-scroll {
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(0,0,0,0.08);
}

.relatorio-admin-tabela th {
    color: #a9c5ff !important;
    background: rgba(51,117,250,0.10) !important;
}

.relatorio-admin-footer {
    gap: 16px !important;
}

.relatorio-admin-footer .arquivo-acoes {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.relatorio-admin-footer .arquivo-acoes a,
.relatorios-operacional-page .arquivo-acoes a,
.relatorios-operacional-page .arquivo-acoes button {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

@media(max-width: 1100px) {
    .relatorios-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .relatorios-action-grid {
        grid-template-columns: 1fr;
    }
}

@media(max-width: 768px) {
    .relatorios-hero {
        flex-direction: column;
        padding: 24px;
    }

    .relatorios-hero-actions {
        align-items: stretch;
        justify-content: stretch;
        min-width: 0;
    }

    .relatorios-primary-action,
    .relatorios-secondary-action {
        width: 100%;
    }

    .relatorios-kpi-grid {
        grid-template-columns: 1fr;
    }

    .relatorios-panel-content {
        padding: 20px !important;
    }

    .relatorios-operacional-page .upload-form {
        padding: 14px;
    }

    .relatorio-admin-meta {
        width: 100%;
    }

    .relatorio-admin-footer .arquivo-acoes {
        width: 100%;
        justify-content: stretch;
    }

    .relatorio-admin-footer .arquivo-acoes a {
        flex: 1 1 150px;
    }
}

/* =========================================================
   OPERACIONAL / CERTIFICADOS - VISUAL PROFISSIONAL
   ========================================================= */

.certificados-operacional-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.certificados-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(20,184,166,0.30), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(11, 78, 110, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.certificados-hero::after {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -80px;
    width: 230px;
    height: 230px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.certificados-hero-info,
.certificados-hero-actions {
    position: relative;
    z-index: 1;
}

.certificados-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    border: 1px solid rgba(255,255,255,0.12);
    color: #b8fff2;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.certificados-hero h2 {
    margin: 14px 0 10px;
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.05;
}

.certificados-hero p {
    max-width: 680px;
    margin: 0;
    color: #dffcf8;
    font-size: 15px;
    line-height: 1.65;
}

.certificados-hero-actions {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    min-width: 300px;
}

.certificados-primary-action,
.certificados-secondary-action,
.certificados-action-card {
    appearance: none;
    font-family: inherit;
}

.certificados-primary-action,
.certificados-secondary-action,
.certificados-action-card:not(.certificados-action-info) {
    cursor: pointer;
}

.certificados-primary-action,
.certificados-secondary-action {
    min-height: 46px;
    padding: 12px 18px;
    border-radius: 15px;
    border: none;
    font-size: 14px;
    font-weight: 900;
    transition: 0.25s ease;
}

.certificados-primary-action {
    color: #ffffff;
    background: linear-gradient(135deg, #14b8a6, #3375FA);
    box-shadow: 0 12px 26px rgba(20,184,166,0.25);
}

.certificados-secondary-action {
    color: #dffcf8;
    background: rgba(255,255,255,0.09);
    border: 1px solid rgba(255,255,255,0.16);
}

.certificados-primary-action:hover,
.certificados-secondary-action:hover,
.certificados-action-card:not(.certificados-action-info):hover {
    transform: translateY(-2px);
}

.certificados-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.certificados-kpi-card {
    min-height: 138px;
    padding: 20px;
    border-radius: 22px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 14px 34px rgba(0,0,0,0.18);
}

.certificados-kpi-card.destaque {
    background: linear-gradient(135deg, rgba(20,184,166,0.20), rgba(255,255,255,0.045));
    border-color: rgba(45,212,191,0.38);
}

.certificados-kpi-card.alerta {
    background: linear-gradient(135deg, rgba(51,117,250,0.18), rgba(255,255,255,0.045));
    border-color: rgba(51,117,250,0.34);
}

.certificados-kpi-card span {
    display: block;
    color: #99f6e4;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.certificados-kpi-card strong {
    display: block;
    margin: 10px 0 6px;
    color: #ffffff;
    font-size: 32px;
    line-height: 1;
}

.certificados-kpi-card small {
    color: #d7fbf6;
    font-size: 13px;
    line-height: 1.45;
}

.certificados-action-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.certificados-action-card {
    text-align: left;
    padding: 22px;
    border-radius: 22px;
    color: #ffffff;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 14px 34px rgba(0,0,0,0.16);
    transition: 0.25s ease;
}

.certificados-action-info {
    opacity: 0.92;
}

.certificados-action-card span {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 34px;
    height: 34px;
    margin-bottom: 16px;
    border-radius: 12px;
    background: rgba(20,184,166,0.18);
    border: 1px solid rgba(45,212,191,0.32);
    color: #99f6e4;
    font-size: 13px;
    font-weight: 900;
}

.certificados-action-card strong {
    display: block;
    margin-bottom: 8px;
    font-size: 18px;
    color: #ffffff;
}

.certificados-action-card small {
    display: block;
    color: #d7fbf6;
    font-size: 13px;
    line-height: 1.55;
}

.certificados-operacional-page .certificados-box.ativo {
    margin-top: 0;
}

.certificados-panel-content {
    background:
        linear-gradient(180deg, rgba(8, 49, 78, 0.98), rgba(8, 24, 58, 0.98)) !important;
    border-radius: 26px !important;
    padding: 28px !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    box-shadow: 0 22px 50px rgba(0,0,0,0.24) !important;
}

.certificados-panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255,255,255,0.09);
}

.certificados-panel-head span {
    display: inline-flex;
    width: fit-content;
    margin-bottom: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    color: #99f6e4;
    background: rgba(20,184,166,0.14);
    border: 1px solid rgba(45,212,191,0.25);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.certificados-panel-head h3 {
    margin: 0 0 6px !important;
    color: #ffffff !important;
    font-size: 24px !important;
}

.certificados-panel-head p {
    margin: 0;
    color: #d7fbf6;
    font-size: 14px;
    line-height: 1.55;
}

.certificados-operacional-page .certificados-modern-form,
.certificados-operacional-page .upload-form {
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 20px;
    padding: 18px;
}

.certificados-operacional-page .upload-form input,
.certificados-operacional-page .upload-form select,
.certificados-operacional-page .upload-form textarea {
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    background: rgba(255,255,255,0.08) !important;
}

.certificados-cliente-busca-wrap {
    min-width: min(100%, 420px);
}

.certificados-lista-moderna {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 22px;
    padding: 14px;
    border-radius: 22px;
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.08);
}

.certificado-admin-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    position: relative;
    overflow: hidden;
    padding: 20px;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0.038));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 14px 34px rgba(0,0,0,0.16);
}

.certificado-admin-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: linear-gradient(180deg, #14b8a6, #3375FA);
}

.certificado-admin-main {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    min-width: 0;
}

.certificado-admin-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 16px;
    color: #ffffff;
    background: linear-gradient(135deg, rgba(20,184,166,0.34), rgba(51,117,250,0.28));
    border: 1px solid rgba(255,255,255,0.14);
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 0.08em;
}

.certificado-admin-info {
    min-width: 0;
    width: 100%;
}

.certificado-admin-title-row {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.certificado-admin-title-row strong {
    color: #ffffff;
    font-size: 16px;
    line-height: 1.35;
}

.certificado-status-chip {
    display: inline-flex;
    width: fit-content;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.certificado-status-chip.publicado {
    color: #d7fbe8;
    background: rgba(34,197,94,0.18);
    border: 1px solid rgba(34,197,94,0.34);
}

.certificado-admin-meta-grid {
    display: grid;
    grid-template-columns: 120px 170px minmax(180px, 1fr);
    gap: 10px;
}

.certificado-admin-meta-grid span {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 10px 12px;
    border-radius: 15px;
    color: #e8fffb;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    font-size: 13px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.certificado-admin-meta-grid small {
    color: #99f6e4;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.certificado-admin-acoes {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.certificado-admin-acoes form {
    margin: 0;
}

.certificado-admin-acoes a,
.certificado-admin-acoes button {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

.certificado-admin-empty {
    padding: 22px;
    border-radius: 18px;
    color: #d7fbf6;
    background: rgba(255,255,255,0.045);
    border: 1px dashed rgba(255,255,255,0.16);
}

.certificado-admin-empty strong {
    display: block;
    margin-bottom: 5px;
    color: #ffffff;
}

@media(max-width: 1100px) {
    .certificados-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .certificados-action-grid {
        grid-template-columns: 1fr;
    }

    .certificado-admin-card {
        grid-template-columns: 1fr;
    }

    .certificado-admin-acoes {
        justify-content: flex-start;
    }

    .certificado-admin-meta-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media(max-width: 768px) {
    .certificados-hero {
        flex-direction: column;
        padding: 24px;
    }

    .certificados-hero-actions {
        align-items: stretch;
        justify-content: stretch;
        min-width: 0;
    }

    .certificados-primary-action,
    .certificados-secondary-action {
        width: 100%;
    }

    .certificados-kpi-grid,
    .certificado-admin-meta-grid {
        grid-template-columns: 1fr;
    }

    .certificados-panel-content {
        padding: 20px !important;
    }

    .certificados-operacional-page .upload-form {
        padding: 14px;
    }

    .certificado-admin-main {
        flex-direction: column;
    }

    .certificado-admin-icon {
        width: 44px;
        height: 44px;
    }

    .certificado-admin-acoes {
        width: 100%;
        justify-content: stretch;
    }

    .certificado-admin-acoes a,
    .certificado-admin-acoes button,
    .certificado-admin-acoes form {
        flex: 1 1 130px;
    }

    .certificado-admin-acoes form button {
        width: 100%;
    }
}

/* =========================================================
   OPERACIONAL / NUMERAÇÃO - VISUAL PROFISSIONAL
   ========================================================= */

.numeracao-operacional-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.numeracao-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(58, 126, 255, 0.34), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.numeracao-hero::after {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -80px;
    width: 230px;
    height: 230px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.numeracao-hero-info,
.numeracao-hero-actions {
    position: relative;
    z-index: 1;
}

.numeracao-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.numeracao-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.numeracao-hero p {
    max-width: 720px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.numeracao-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.numeracao-primary-action,
.numeracao-secondary-action {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
}

.numeracao-primary-action {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.numeracao-secondary-action {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.numeracao-primary-action:hover,
.numeracao-secondary-action:hover {
    transform: translateY(-2px);
}

.numeracao-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.numeracao-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
}

.numeracao-kpi-card.destaque {
    background: linear-gradient(135deg, rgba(51,117,250,0.35), rgba(13,34,79,0.92));
}

.numeracao-kpi-card.alerta {
    background: linear-gradient(135deg, rgba(13,148,136,0.26), rgba(13,34,79,0.92));
}

.numeracao-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.numeracao-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.numeracao-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

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

.numeracao-action-card {
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    box-shadow: 0 16px 40px rgba(0,0,0,0.22);
    overflow: hidden;
}

.numeracao-action-card summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 24px;
    min-height: 160px;
    position: relative;
}

.numeracao-action-card summary::-webkit-details-marker {
    display: none;
}

.numeracao-action-card summary::after {
    content: "+";
    position: absolute;
    right: 22px;
    top: 22px;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.10);
    color: #ffffff;
    font-size: 23px;
    font-weight: 900;
}

.numeracao-action-card[open] summary::after {
    content: "−";
}

.numeracao-action-card summary span {
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(51,117,250,0.16);
    color: #aecaFF;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.numeracao-action-card summary strong {
    color: #ffffff;
    font-size: 22px;
    margin-top: 4px;
}

.numeracao-action-card summary small {
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.45;
    max-width: 310px;
}

.numeracao-modern-form {
    margin: 0;
    padding: 0 24px 24px;
}

.numeracao-modern-form label {
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 800;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.numeracao-modern-form input {
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.numeracao-form-note {
    padding: 14px 16px;
    border-radius: 16px;
    background: rgba(255,255,255,0.06);
    border: 1px dashed rgba(255,255,255,0.14);
    color: #c5d6ff;
    font-size: 13px;
    line-height: 1.45;
}

.numeracao-submit-btn {
    border: none;
    border-radius: 15px;
    padding: 14px 18px;
    background: linear-gradient(135deg, #3375FA, #5d92ff);
    color: #ffffff;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 12px 24px rgba(51,117,250,0.24);
    transition: 0.25s ease;
}

.numeracao-submit-btn:hover {
    transform: translateY(-2px);
    filter: brightness(1.05);
}

.numeracao-history-shell {
    padding: 24px;
    border-radius: 26px;
    background: rgba(9, 27, 64, 0.66);
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 16px 42px rgba(0,0,0,0.18);
}

.numeracao-section-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

.numeracao-section-head span {
    display: inline-flex;
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(255,255,255,0.08);
    color: #aecaFF;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 10px;
}

.numeracao-section-head h3 {
    color: #ffffff;
    font-size: 25px;
    margin: 0 0 7px;
}

.numeracao-section-head p {
    color: #b8c7f3;
    font-size: 14px;
    margin: 0;
}

.numeracao-history-grid {
    margin-top: 0;
}

.numeracao-history-card {
    padding: 0;
    overflow: hidden;
}

.numeracao-history-title {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 14px;
    padding: 22px 22px 16px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.numeracao-history-title h3 {
    margin: 8px 0 0;
    color: #ffffff;
    font-size: 20px;
}

.numeracao-history-title > strong {
    min-width: 42px;
    height: 42px;
    padding: 0 12px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.08);
    color: #ffffff;
    font-size: 18px;
}

.numeracao-type-pill {
    display: inline-flex;
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.numeracao-type-pill.dv {
    background: rgba(51,117,250,0.92);
}

.numeracao-type-pill.at {
    background: rgba(124,58,237,0.88);
}

.numeracao-type-pill.lc {
    background: rgba(13,148,136,0.88);
}

.numeracao-history-list {
    padding: 16px;
    max-height: 560px;
    overflow-y: auto;
}

.numeracao-history-list::-webkit-scrollbar {
    width: 8px;
}

.numeracao-history-list::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.04);
    border-radius: 999px;
}

.numeracao-history-list::-webkit-scrollbar-thumb {
    background: rgba(93,146,255,0.55);
    border-radius: 999px;
}

.numeracao-history-item {
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
}

.numeracao-history-item strong {
    font-size: 16px;
    letter-spacing: 0.01em;
}

.numeracao-copy-btn {
    flex-shrink: 0;
    padding: 9px 13px;
    border-radius: 12px;
}

.numeracao-empty-state {
    padding: 22px;
    border-radius: 18px;
    color: #c5d6ff;
    background: rgba(255,255,255,0.05);
    border: 1px dashed rgba(255,255,255,0.14);
    text-align: center;
    font-size: 14px;
}

@media(max-width: 1100px) {
    .numeracao-kpi-grid,
    .numeracao-action-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media(max-width: 768px) {
    .numeracao-hero {
        flex-direction: column;
        padding: 24px;
    }

    .numeracao-hero-actions {
        width: 100%;
        min-width: 0;
    }

    .numeracao-kpi-grid,
    .numeracao-action-grid {
        grid-template-columns: 1fr;
    }

    .numeracao-history-shell {
        padding: 18px;
    }

    .numeracao-section-head {
        flex-direction: column;
    }

    .numeracao-history-list {
        max-height: none;
    }

    .numeracao-copy-btn {
        width: 100%;
    }
}

/* =========================================================
   OPERACIONAL / AGENDA - VISUAL PROFISSIONAL V15
   Escopo fechado para não afetar outras telas nem a home.
   ========================================================= */

.agenda-operacional-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.agenda-hero-panel {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(51,117,250,0.34), transparent 36%),
        linear-gradient(135deg, rgba(8,27,67,0.98), rgba(15,49,111,0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.agenda-hero-panel::after {
    content: "";
    position: absolute;
    right: -75px;
    bottom: -95px;
    width: 260px;
    height: 260px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.agenda-hero-main,
.agenda-hero-actions {
    position: relative;
    z-index: 1;
}

.agenda-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.agenda-hero-main h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.agenda-hero-main p {
    max-width: 760px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.agenda-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 220px;
    justify-content: center;
}

.agenda-hero-btn {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
    transition: 0.25s ease;
    font-family: 'Montserrat', sans-serif;
}

.agenda-hero-btn.secundario {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
    box-shadow: none;
}

.agenda-hero-btn:hover {
    transform: translateY(-2px);
}

.agenda-alerta {
    margin: 0 !important;
}

.agenda-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.agenda-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
}

.agenda-kpi-card.destaque {
    background: linear-gradient(135deg, rgba(51,117,250,0.35), rgba(13,34,79,0.92));
}

.agenda-kpi-card.alerta {
    background: linear-gradient(135deg, rgba(245,158,11,0.22), rgba(13,34,79,0.92));
}

.agenda-kpi-card.sucesso {
    background: linear-gradient(135deg, rgba(16,185,129,0.22), rgba(13,34,79,0.92));
}

.agenda-kpi-card.neutro {
    background: linear-gradient(135deg, rgba(147,197,253,0.18), rgba(13,34,79,0.92));
}

.agenda-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.agenda-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.agenda-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.agenda-action-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(320px, 0.75fr);
    gap: 18px;
    align-items: start;
}

.agenda-modern-panel,
.agenda-resumo-panel,
.agenda-calendar-card,
.agenda-lista-card {
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    box-shadow: 0 16px 40px rgba(0,0,0,0.22);
    overflow: hidden;
}

.agenda-modern-panel summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 24px;
    position: relative;
}

.agenda-modern-panel summary::-webkit-details-marker {
    display: none;
}

.agenda-modern-panel summary::after {
    content: "+";
    flex: 0 0 auto;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.10);
    color: #ffffff;
    font-size: 24px;
    font-weight: 900;
}

.agenda-modern-panel[open] summary::after {
    content: "−";
}

.agenda-modern-panel summary span,
.agenda-resumo-panel > div:first-child span,
.agenda-lista-topo span,
.agenda-calendario-topo-moderno span {
    display: inline-flex;
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(51,117,250,0.16);
    color: #aecaff;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.agenda-modern-panel summary strong,
.agenda-resumo-panel > div:first-child strong,
.agenda-lista-topo h3 {
    display: block;
    color: #ffffff;
    font-size: 22px;
    margin-top: 8px;
}

.agenda-modern-panel summary small {
    display: block;
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.45;
    max-width: 720px;
    margin-top: 6px;
}

.agenda-modern-panel summary b {
    color: #ffffff;
    background: rgba(255,255,255,0.10);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 999px;
    padding: 9px 12px;
    font-size: 12px;
    white-space: nowrap;
}

.agenda-panel-content {
    padding: 0 24px 24px;
}

.agenda-form-moderna {
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 20px;
    padding: 20px !important;
}

.agenda-form-grid-moderna {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.agenda-operacional-page .agenda-form-grid label {
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 900;
    margin-bottom: 8px;
}

.agenda-operacional-page .agenda-form-grid input,
.agenda-operacional-page .agenda-form-grid select,
.agenda-operacional-page .agenda-form-grid textarea {
    background: rgba(255,255,255,0.075);
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.agenda-operacional-page .agenda-form-grid input:focus,
.agenda-operacional-page .agenda-form-grid select:focus,
.agenda-operacional-page .agenda-form-grid textarea:focus {
    border-color: rgba(93,146,255,0.70);
    box-shadow: 0 0 0 3px rgba(51,117,250,0.18);
}

.agenda-form-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 16px;
}

.agenda-btn-principal,
.agenda-btn-secundario,
.agenda-nav-btn,
.agenda-btn-tabela {
    border: none;
    border-radius: 14px;
    min-height: 42px;
    padding: 12px 16px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: 0.2s ease;
    white-space: nowrap;
}

.agenda-btn-principal {
    color: #ffffff;
    background: linear-gradient(135deg, #3375FA, #075fca);
    box-shadow: 0 12px 24px rgba(51,117,250,0.22);
}

.agenda-btn-secundario,
.agenda-nav-btn {
    color: #dbe8ff;
    background: rgba(255,255,255,0.09);
    border: 1px solid rgba(255,255,255,0.12);
}

.agenda-btn-secundario.destaque {
    color: #08204a;
    background: #ffffff;
}

.agenda-btn-principal:hover,
.agenda-btn-secundario:hover,
.agenda-nav-btn:hover,
.agenda-btn-tabela:hover {
    transform: translateY(-1px);
}

.agenda-resumo-panel {
    padding: 24px;
}

.agenda-regional-lista {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.agenda-regional-item {
    padding: 15px;
    border-radius: 17px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.09);
}

.agenda-regional-item b {
    display: block;
    color: #ffffff;
    font-size: 15px;
    margin-bottom: 4px;
}

.agenda-regional-item span {
    color: #aebff0;
    font-size: 13px;
}

.agenda-layout-moderno {
    display: block;
}

.agenda-calendar-card {
    padding: 24px;
}

.agenda-calendario-topo-moderno {
    margin-bottom: 22px;
}

.agenda-calendario-topo-moderno > div {
    text-align: center;
}

.agenda-calendario-topo-moderno h3 {
    color: #ffffff;
    text-transform: lowercase;
    font-size: clamp(23px, 3vw, 32px);
    margin-top: 8px;
}

.agenda-operacional-page .agenda-calendario {
    gap: 10px;
}

.agenda-operacional-page .agenda-dia-semana {
    color: #9fb4ee;
    font-weight: 900;
    font-size: 13px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.agenda-operacional-page .agenda-dia {
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.09);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);
}

.agenda-operacional-page .agenda-dia-hoje {
    background: linear-gradient(135deg, rgba(51,117,250,0.30), rgba(255,255,255,0.05));
    border-color: rgba(93,146,255,0.75);
}

.agenda-operacional-page .agenda-dia-com-evento {
    border-color: rgba(51,117,250,0.36);
}

.agenda-operacional-page .agenda-evento-mini {
    background: rgba(51,117,250,0.16);
    border: 1px solid rgba(51,117,250,0.18);
}

.agenda-lista-card {
    padding: 24px;
}

.agenda-lista-topo {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.agenda-lista-topo h3 {
    margin: 8px 0 4px;
}

.agenda-lista-topo p {
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.45;
    margin: 0;
}

.agenda-lista-badge {
    border-radius: 999px;
    padding: 9px 12px;
    color: #dbe8ff;
    background: rgba(255,255,255,0.09);
    border: 1px solid rgba(255,255,255,0.12);
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.agenda-tabela-scroll {
    border-radius: 20px;
    overflow-x: auto;
}

.agenda-tabela-moderna {
    border-collapse: separate !important;
    border-spacing: 0 10px !important;
    min-width: 980px;
}

.agenda-tabela-moderna thead th {
    color: #9fb4ee !important;
    background: transparent !important;
    border: none !important;
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 0 12px 6px !important;
}

.agenda-tabela-moderna tbody tr {
    background: rgba(255,255,255,0.055) !important;
    box-shadow: 0 10px 26px rgba(0,0,0,0.16);
}

.agenda-tabela-moderna tbody td {
    border: none !important;
    padding: 16px 12px !important;
    color: #f4f7ff;
    vertical-align: middle;
}

.agenda-tabela-moderna tbody td:first-child {
    border-radius: 18px 0 0 18px;
}

.agenda-tabela-moderna tbody td:last-child {
    border-radius: 0 18px 18px 0;
}

.agenda-tabela-moderna td strong {
    display: block;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.35;
}

.agenda-tabela-moderna td small,
.agenda-tecnicos-texto {
    display: block;
    color: #aebff0;
    font-size: 12px;
    line-height: 1.45;
    margin-top: 4px;
}

.agenda-regional-pill,
.agenda-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 8px 12px;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.agenda-regional-pill {
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border: 1px solid rgba(148,163,184,0.35);
    color: #e2e8f0;
    background: rgba(148,163,184,0.16);
}

.agenda-regional-pill.paranagua {
    color: #bfdbfe;
    background: rgba(59,130,246,0.18);
    border-color: rgba(59,130,246,0.42);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
}

.agenda-regional-pill.maringa {
    color: #bbf7d0;
    background: rgba(16,185,129,0.18);
    border-color: rgba(16,185,129,0.42);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
}

.agenda-regional-pill.neutra {
    color: #e2e8f0;
    background: rgba(148,163,184,0.16);
    border-color: rgba(148,163,184,0.35);
}

.agenda-status-pill.atendido {
    color: #bbf7d0;
    background: rgba(34,197,94,0.16);
    border: 1px solid rgba(34,197,94,0.32);
}

.agenda-status-pill.pendente {
    color: #fde68a;
    background: rgba(245,158,11,0.16);
    border: 1px solid rgba(245,158,11,0.32);
}

.agenda-acoes {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.agenda-acoes form {
    margin: 0;
}

.agenda-btn-tabela {
    min-width: 118px;
    min-height: 40px;
    padding: 10px 14px;
    border-radius: 14px;
    border: 1px solid transparent;
    font-size: 12px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
    cursor: pointer;
}

.agenda-btn-tabela:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 24px rgba(0,0,0,0.22);
}

.agenda-btn-tabela.editar {
    color: #ffffff;
    background: linear-gradient(135deg, #4f8cff, #2f6ef6);
    border-color: rgba(147,197,253,0.18);
}

.agenda-btn-tabela.confirmar {
    color: #08204a;
    background: #ffffff;
    border-color: rgba(203,213,225,0.72);
}

.agenda-btn-tabela.excluir {
    color: #ffffff;
    background: linear-gradient(135deg, #8c2432, #b93245);
    border: 1px solid rgba(254,202,202,0.14);
}

.agenda-vazio {
    padding: 20px;
    border-radius: 18px;
    background: rgba(255,255,255,0.045);
    border: 1px dashed rgba(255,255,255,0.14);
}

.agenda-vazio strong {
    color: #ffffff;
    margin-bottom: 4px;
}

.agenda-vazio span {
    color: #b8c7f3;
    font-size: 13px;
}

.agenda-operacional-page .agenda-cliente-resultados {
    background: rgba(7,21,47,0.98);
    border: 1px solid rgba(255,255,255,0.14);
}

.agenda-operacional-page .agenda-tecnicos-box {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.10);
}

.agenda-operacional-page .agenda-tecnico-check {
    background: rgba(16,40,88,0.72);
}

@media(max-width: 1100px) {
    .agenda-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .agenda-action-grid {
        grid-template-columns: 1fr;
    }

    .agenda-hero-panel {
        flex-direction: column;
    }

    .agenda-hero-actions {
        flex-direction: row;
        flex-wrap: wrap;
        min-width: 0;
    }

    .agenda-hero-btn {
        flex: 1 1 190px;
    }
}

@media(max-width: 768px) {
    .agenda-hero-panel {
        padding: 24px;
        border-radius: 22px;
    }

    .agenda-kpi-grid,
    .agenda-form-grid-moderna {
        grid-template-columns: 1fr;
    }

    .agenda-modern-panel summary,
    .agenda-lista-topo,
    .agenda-calendario-topo-moderno {
        flex-direction: column;
        align-items: stretch;
    }

    .agenda-modern-panel summary b,
    .agenda-lista-badge,
    .agenda-nav-btn {
        width: 100%;
        text-align: center;
    }

    .agenda-panel-content,
    .agenda-lista-card,
    .agenda-calendar-card,
    .agenda-resumo-panel {
        padding: 18px;
    }

    .agenda-form-moderna {
        padding: 14px !important;
    }

    .agenda-form-actions,
    .agenda-acoes {
        align-items: stretch;
        justify-content: stretch;
    }

    .agenda-btn-principal,
    .agenda-btn-secundario,
    .agenda-btn-tabela,
    .agenda-acoes form {
        width: 100%;
    }

    .agenda-acoes form button {
        width: 100%;
    }

    .agenda-operacional-page .agenda-calendario {
        gap: 4px !important;
    }

    .agenda-operacional-page .agenda-dia {
        min-height: 50px !important;
        height: 50px !important;
    }
}


.agenda-acoes .agenda-btn-tabela {
    margin: 0 !important;
}

.agenda-acoes form .agenda-btn-tabela {
    width: 100%;
}

/* =========================================================
   OPERACIONAL / VISITAS - VISUAL PROFISSIONAL
   ========================================================= */
.visitas-operacional-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.visitas-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(51, 117, 250, 0.35), transparent 36%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.visitas-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 260px;
    height: 260px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.visitas-hero-info,
.visitas-hero-actions {
    position: relative;
    z-index: 1;
}

.visitas-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.visitas-eyebrow.compacto {
    margin-bottom: 8px;
    background: rgba(51,117,250,0.14);
    color: #b9d1ff;
}

.visitas-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.visitas-hero p {
    max-width: 760px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.visitas-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.visitas-primary-action,
.visitas-secondary-action {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
}

.visitas-primary-action {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.visitas-secondary-action {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.visitas-primary-action:hover,
.visitas-secondary-action:hover {
    transform: translateY(-2px);
}

.visitas-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.visitas-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
}

.visitas-kpi-card.destaque { background: linear-gradient(135deg, rgba(51,117,250,0.35), rgba(13,34,79,0.92)); }
.visitas-kpi-card.sucesso { background: linear-gradient(135deg, rgba(16,185,129,0.24), rgba(13,34,79,0.92)); }
.visitas-kpi-card.alerta { background: linear-gradient(135deg, rgba(245,158,11,0.20), rgba(13,34,79,0.92)); }
.visitas-kpi-card.neutro { background: linear-gradient(135deg, rgba(148,163,184,0.18), rgba(13,34,79,0.92)); }

.visitas-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.visitas-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.visitas-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.visitas-action-card,
.visitas-list-panel {
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    box-shadow: 0 16px 40px rgba(0,0,0,0.22);
    overflow: hidden;
}

.visitas-action-card summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 24px;
    min-height: 138px;
    position: relative;
}

.visitas-action-card summary::-webkit-details-marker { display: none; }

.visitas-action-card summary::after {
    content: "+";
    position: absolute;
    right: 22px;
    top: 22px;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.10);
    color: #ffffff;
    font-size: 23px;
    font-weight: 900;
}

.visitas-action-card[open] summary::after { content: "−"; }

.visitas-action-card summary span {
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(51,117,250,0.16);
    color: #aecaFF;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.visitas-action-card summary strong {
    color: #ffffff;
    font-size: 22px;
    margin-top: 4px;
}

.visitas-action-card summary small {
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.45;
    max-width: 620px;
}

.visitas-panel-content {
    padding: 0 24px 24px;
}

.visitas-modern-form {
    margin: 0;
    padding: 22px;
    border-radius: 22px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.visitas-form-grid label {
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 850;
    letter-spacing: 0.02em;
}

.visitas-form-grid input,
.visitas-form-grid select,
.visitas-form-grid textarea {
    border: 1px solid rgba(255,255,255,0.12) !important;
    background: rgba(255,255,255,0.07) !important;
    color: #ffffff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.visitas-form-grid input::placeholder,
.visitas-form-grid textarea::placeholder {
    color: #91a7dc;
}

.visitas-form-grid select option {
    background: #0d224f;
    color: #ffffff;
}

.visitas-form-actions {
    flex-direction: row;
    align-items: center;
    gap: 12px;
}

.visitas-btn-primary,
.visitas-btn-secondary {
    width: auto;
    min-width: 190px;
}

.visitas-btn-primary {
    background: linear-gradient(135deg, #4f8cff, #2f6ef6) !important;
    color: #ffffff !important;
}

.visitas-btn-secondary {
    background: rgba(255,255,255,0.10) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.14);
}

.visitas-list-panel {
    padding: 24px;
}

.visitas-list-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.visitas-list-header h3 {
    color: #ffffff;
    font-size: 26px;
    margin: 0 0 6px;
}

.visitas-list-header p {
    color: #b8c7f3;
    margin: 0;
    line-height: 1.5;
}

.visitas-periodo-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 13px;
    border-radius: 999px;
    color: #bfdbfe;
    background: rgba(59,130,246,0.15);
    border: 1px solid rgba(59,130,246,0.32);
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.visitas-filtro-form {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) 170px 170px 150px;
    gap: 12px;
    margin-bottom: 20px;
    padding: 16px;
    border-radius: 20px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.visitas-filtro-form input {
    width: 100%;
    min-height: 48px;
    padding: 13px 16px;
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 15px;
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    outline: none;
}

.visitas-filtro-form input::placeholder { color: #91a7dc; }

.visitas-btn-filtrar {
    border: none;
    border-radius: 15px;
    background: #3375FA;
    color: #ffffff;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    transition: 0.22s ease;
}

.visitas-btn-filtrar:hover {
    filter: brightness(1.08);
    transform: translateY(-2px);
}

.visitas-card-lista {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.visita-list-card {
    display: grid;
    grid-template-columns: minmax(300px, 1.3fr) minmax(280px, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 18px;
    border-radius: 22px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.075);
}

.visita-list-main {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.visita-list-icon {
    width: 46px;
    height: 46px;
    min-width: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: rgba(51,117,250,0.16);
    border: 1px solid rgba(51,117,250,0.24);
    font-size: 21px;
}

.visita-list-topline {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 7px;
}

.visita-id-pill,
.visita-data-pill,
.visita-balanca-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.visita-id-pill {
    color: #bfdbfe;
    background: rgba(59,130,246,0.16);
    border: 1px solid rgba(59,130,246,0.30);
}

.visita-data-pill {
    color: #e0e7ff;
    background: rgba(148,163,184,0.14);
    border: 1px solid rgba(148,163,184,0.24);
}

.visita-balanca-pill.sim {
    color: #a7f3d0;
    background: rgba(16,185,129,0.15);
    border: 1px solid rgba(16,185,129,0.30);
}

.visita-balanca-pill.nao {
    color: #fde68a;
    background: rgba(245,158,11,0.15);
    border: 1px solid rgba(245,158,11,0.30);
}

.visita-list-card h4 {
    color: #ffffff;
    font-size: 16px;
    line-height: 1.25;
    margin: 0 0 5px;
}

.visita-list-card p {
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
    margin: 0;
}

.visita-list-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.visita-list-meta span {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 10px 12px;
    border-radius: 15px;
    color: #e8fffb;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    font-size: 13px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.visita-list-meta small {
    color: #99f6e4;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.visita-list-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.visita-list-actions form { margin: 0; }

.visita-action-btn,
.visita-list-actions a.visita-action-btn,
.visita-list-actions button.visita-action-btn {
    min-width: 98px;
    min-height: 40px;
    padding: 10px 14px;
    border: 1px solid transparent;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    transition: 0.2s ease;
    box-shadow: 0 10px 20px rgba(0,0,0,0.14);
}

.visita-action-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 24px rgba(0,0,0,0.20);
}

.visita-action-card-btn {
    background: #f8fafc;
    color: #0f234e;
    border-color: rgba(203,213,225,0.72);
}

.visita-action-edit {
    background: linear-gradient(135deg, #4f8cff, #2f6ef6);
    color: #ffffff;
}

.visita-action-delete {
    background: linear-gradient(135deg, #8c2432, #b93245);
    color: #ffffff;
}

.visitas-empty-state {
    padding: 24px;
    border-radius: 18px;
    color: #d7fbf6;
    background: rgba(255,255,255,0.045);
    border: 1px dashed rgba(255,255,255,0.16);
}

.visitas-empty-state strong {
    display: block;
    margin-bottom: 5px;
    color: #ffffff;
}

@media(max-width: 1180px) {
    .visitas-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .visitas-filtro-form { grid-template-columns: 1fr 1fr; }
    .visita-list-card { grid-template-columns: 1fr; }
    .visita-list-actions { justify-content: flex-start; }
}

@media(max-width: 768px) {
    .visitas-hero {
        flex-direction: column;
        padding: 24px;
    }

    .visitas-hero-actions {
        min-width: 0;
        align-items: stretch;
    }

    .visitas-kpi-grid,
    .visitas-filtro-form,
    .visita-list-meta {
        grid-template-columns: 1fr;
    }

    .visitas-list-header {
        flex-direction: column;
    }

    .visitas-panel-content,
    .visitas-list-panel {
        padding: 20px;
    }

    .visitas-form-actions {
        flex-direction: column;
    }

    .visitas-btn-primary,
    .visitas-btn-secondary,
    .visita-list-actions form,
    .visita-action-btn,
    .visita-list-actions a.visita-action-btn,
    .visita-list-actions button.visita-action-btn {
        width: 100%;
    }

    .visita-list-actions {
        width: 100%;
        justify-content: stretch;
    }
}

/* =========================================================
   OPERACIONAL / VISITAS - CORREÇÃO DO FORMULÁRIO MODERNO
   Escopo exclusivo para Nova/Editar Visita
   ========================================================= */
.visitas-action-card .visitas-panel-content {
    padding: 0 26px 28px !important;
}

.visitas-action-card .visitas-modern-form {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 26px !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at top right, rgba(51,117,250,0.12), transparent 32%),
        rgba(8, 27, 67, 0.72) !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.05), 0 16px 38px rgba(0,0,0,0.18) !important;
}

.visitas-action-card .visitas-form-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 22px !important;
    align-items: start !important;
}

.visitas-action-card .visitas-form-grid > div {
    min-width: 0 !important;
}

.visitas-action-card .visitas-form-grid .visita-form-full {
    grid-column: 1 / -1 !important;
}

.visitas-action-card .visitas-form-grid label {
    display: block !important;
    margin: 0 0 8px !important;
    color: #eaf2ff !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: 0.02em !important;
}

.visitas-action-card .visitas-form-grid input,
.visitas-action-card .visitas-form-grid select,
.visitas-action-card .visitas-form-grid textarea {
    width: 100% !important;
    min-height: 50px !important;
    padding: 14px 16px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(174, 202, 255, 0.18) !important;
    background: rgba(255,255,255,0.075) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-family: 'Montserrat', sans-serif !important;
    line-height: 1.35 !important;
    outline: none !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.05) !important;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}

.visitas-action-card .visitas-form-grid textarea {
    min-height: 130px !important;
    resize: vertical !important;
}

.visitas-action-card .visitas-form-grid input::placeholder,
.visitas-action-card .visitas-form-grid textarea::placeholder {
    color: #96ace5 !important;
    font-weight: 600 !important;
}

.visitas-action-card .visitas-form-grid input:focus,
.visitas-action-card .visitas-form-grid select:focus,
.visitas-action-card .visitas-form-grid textarea:focus {
    border-color: rgba(93,146,255,0.78) !important;
    background: rgba(255,255,255,0.105) !important;
    box-shadow: 0 0 0 4px rgba(51,117,250,0.18), inset 0 1px 0 rgba(255,255,255,0.06) !important;
}

.visitas-action-card .visitas-form-grid input[type="date"] {
    color-scheme: dark !important;
}

.visitas-action-card .visitas-form-grid select {
    cursor: pointer !important;
}

.visitas-action-card .visitas-form-grid select option {
    background: #0d224f !important;
    color: #ffffff !important;
}

.visitas-action-card .visitas-form-actions {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    margin-top: 24px !important;
}

.visitas-action-card .visitas-btn-primary,
.visitas-action-card .visitas-btn-secondary {
    width: auto !important;
    min-width: 190px !important;
    min-height: 52px !important;
    border-radius: 16px !important;
    padding: 0 24px !important;
    font-weight: 900 !important;
}

.visitas-action-card .visitas-btn-primary {
    background: linear-gradient(135deg, #4f8cff, #2f6ef6) !important;
    color: #ffffff !important;
    box-shadow: 0 14px 28px rgba(47,110,246,0.22) !important;
}

.visitas-action-card .visitas-btn-secondary {
    background: rgba(255,255,255,0.10) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.16) !important;
}

@media(max-width: 900px) {
    .visitas-action-card .visitas-panel-content {
        padding: 0 18px 22px !important;
    }

    .visitas-action-card .visitas-modern-form {
        padding: 20px !important;
    }

    .visitas-action-card .visitas-form-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .visitas-action-card .visitas-form-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .visitas-action-card .visitas-btn-primary,
    .visitas-action-card .visitas-btn-secondary {
        width: 100% !important;
    }
}


/* =========================================================
   OPERACIONAL / PENDENTES - VISUAL PROFISSIONAL
   ========================================================= */
.pendentes-operacional-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.pendentes-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(251, 191, 36, 0.26), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.pendentes-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.pendentes-hero-info,
.pendentes-hero-actions {
    position: relative;
    z-index: 1;
}

.pendentes-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.pendentes-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.pendentes-hero p {
    max-width: 740px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.pendentes-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.pendentes-primary-action,
.pendentes-secondary-action {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
}

.pendentes-primary-action {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.pendentes-secondary-action {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.pendentes-primary-action:hover,
.pendentes-secondary-action:hover {
    transform: translateY(-2px);
}

.pendentes-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.pendentes-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
    position: relative;
    overflow: hidden;
}

.pendentes-kpi-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: #60a5fa;
}

.pendentes-kpi-card.alerta::before { background: #f59e0b; }
.pendentes-kpi-card.revisao::before { background: #38bdf8; }
.pendentes-kpi-card.financeiro::before { background: #34d399; }

.pendentes-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.pendentes-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 10px;
}

.pendentes-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.pendentes-filter-card,
.pendentes-list-card {
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    box-shadow: 0 16px 40px rgba(0,0,0,0.22);
    overflow: hidden;
}

.pendentes-filter-card summary {
    list-style: none;
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 24px;
}

.pendentes-filter-card summary::-webkit-details-marker {
    display: none;
}

.pendentes-filter-card summary::after {
    content: "−";
    position: absolute;
    right: 22px;
    top: 22px;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.10);
    color: #ffffff;
    font-size: 24px;
    font-weight: 900;
}

.pendentes-filter-card:not([open]) summary::after {
    content: "+";
}

.pendentes-filter-card summary span {
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(245, 158, 11, 0.16);
    color: #fde68a;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.pendentes-filter-card summary strong {
    color: #ffffff;
    font-size: 22px;
}

.pendentes-filter-card summary small,
.pendentes-list-topo p {
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.45;
}

.pendentes-filter-form {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    padding: 0 24px 24px;
    margin: 0 !important;
}

.pendentes-filter-form label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 800;
}

.pendentes-filter-form input {
    width: 100%;
    min-height: 48px;
    padding: 13px 15px;
    border-radius: 15px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    outline: none;
}

.pendentes-filter-form input:focus {
    border-color: rgba(93,146,255,0.75);
    box-shadow: 0 0 0 3px rgba(51,117,250,0.18);
}

.pendentes-filter-form input::placeholder {
    color: #9eb5f5;
}

.pendentes-filter-button {
    align-self: end;
    min-height: 48px;
    border: none;
    border-radius: 15px;
    background: linear-gradient(135deg, #3375FA, #1f63e9);
    color: #ffffff;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 12px 26px rgba(51,117,250,0.24);
}

.pendentes-list-card {
    padding: 24px;
}

.pendentes-list-topo {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 18px;
    margin-bottom: 18px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.pendentes-list-topo h3 {
    color: #ffffff;
    font-size: 24px;
    margin: 0 0 7px;
}

.pendentes-periodo-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(51,117,250,0.15);
    color: #cfe0ff;
    border: 1px solid rgba(51,117,250,0.32);
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.pendentes-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.pendentes-modern-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 10px;
    min-width: 1120px;
}

.pendentes-modern-table thead th {
    padding: 0 14px 8px;
    color: #9fb4ea;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-align: left;
}

.pendentes-modern-table tbody tr {
    background: rgba(255,255,255,0.045);
    border-radius: 18px;
    transition: 0.2s ease;
}

.pendentes-modern-table tbody tr:hover {
    background: rgba(51,117,250,0.10);
}

.pendentes-modern-table tbody td {
    padding: 16px 14px;
    color: #eaf1ff;
    border-top: 1px solid rgba(255,255,255,0.06);
    border-bottom: 1px solid rgba(255,255,255,0.06);
    vertical-align: middle;
}

.pendentes-modern-table tbody td:first-child {
    border-left: 1px solid rgba(255,255,255,0.06);
    border-radius: 18px 0 0 18px;
}

.pendentes-modern-table tbody td:last-child {
    border-right: 1px solid rgba(255,255,255,0.06);
    border-radius: 0 18px 18px 0;
}

.pendentes-codigo-cell,
.pendentes-cliente-cell,
.pendentes-status-stack {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.pendentes-codigo-cell strong,
.pendentes-cliente-cell strong,
.pendentes-valor {
    color: #ffffff;
}

.pendentes-codigo-cell span,
.pendentes-cliente-cell span {
    color: #aebff0;
    font-size: 12px;
    font-weight: 700;
}

.pendentes-status-pill,
.pendentes-email-pill {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    padding: 7px 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border: 1px solid transparent;
    white-space: nowrap;
}

.pendentes-status-pendente {
    background: rgba(245,158,11,0.16);
    color: #fde68a;
    border-color: rgba(245,158,11,0.34);
}

.pendentes-status-revisao {
    background: rgba(56,189,248,0.15);
    color: #bae6fd;
    border-color: rgba(56,189,248,0.34);
}

.pendentes-status-validado {
    background: rgba(16,185,129,0.16);
    color: #a7f3d0;
    border-color: rgba(16,185,129,0.34);
}

.pendentes-status-outro {
    background: rgba(148,163,184,0.16);
    color: #e2e8f0;
    border-color: rgba(148,163,184,0.34);
}

.pendentes-email-enviado {
    background: rgba(16,185,129,0.12);
    color: #bbf7d0;
}

.pendentes-email-pendente {
    background: rgba(248,113,113,0.12);
    color: #fecaca;
}

.pendentes-mini-actions,
.pendentes-row-actions {
    display: flex;
    align-items: center;
    gap: 9px;
    flex-wrap: wrap;
}

.pendentes-row-actions form {
    margin: 0;
}

.pendentes-file-btn,
.pendentes-action-btn {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    padding: 9px 13px;
    border: 1px solid transparent;
    text-decoration: none;
    cursor: pointer;
    font-size: 13px;
    font-weight: 900;
    transition: 0.2s ease;
}

.pendentes-file-btn {
    color: #ffffff;
    background: rgba(51,117,250,0.22);
    border-color: rgba(51,117,250,0.32);
}

.pendentes-file-btn.secundario {
    color: #dbeafe;
    background: rgba(255,255,255,0.08);
    border-color: rgba(255,255,255,0.12);
}

.pendentes-action-btn.revisar {
    color: #ffffff;
    background: linear-gradient(135deg, #3375FA, #1f63e9);
    box-shadow: 0 10px 20px rgba(51,117,250,0.20);
}

.pendentes-action-btn.excluir {
    color: #ffffff;
    background: linear-gradient(135deg, #8c2432, #b93245);
    box-shadow: 0 10px 20px rgba(185,50,69,0.18);
}

.pendentes-file-btn:hover,
.pendentes-action-btn:hover {
    transform: translateY(-2px);
}

.pendentes-empty {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 24px;
    border-radius: 18px;
    background: rgba(255,255,255,0.045);
    border: 1px dashed rgba(255,255,255,0.14);
    color: #dbeafe;
}

.pendentes-empty strong {
    color: #ffffff;
}

@media(max-width: 1100px) {
    .pendentes-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pendentes-filter-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media(max-width: 768px) {
    .pendentes-hero,
    .pendentes-list-topo {
        flex-direction: column;
    }

    .pendentes-hero-actions {
        width: 100%;
        min-width: 0;
    }

    .pendentes-primary-action,
    .pendentes-secondary-action {
        width: 100%;
    }

    .pendentes-kpi-grid,
    .pendentes-filter-form {
        grid-template-columns: 1fr;
    }

    .pendentes-list-card {
        padding: 18px;
    }
}

/* =========================================================
   FINANCEIRO / FATURAMENTOS - VISUAL PROFISSIONAL
   ========================================================= */
.financeiro-faturamentos-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.financeiro-fat-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(34, 197, 94, 0.24), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(13, 57, 122, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.financeiro-fat-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.financeiro-fat-hero > * {
    position: relative;
    z-index: 1;
}

.financeiro-fat-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.financeiro-fat-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.financeiro-fat-hero p {
    max-width: 760px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.financeiro-fat-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.financeiro-fat-action {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
}

.financeiro-fat-action.primary {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.financeiro-fat-action.secondary {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.financeiro-fat-action:hover {
    transform: translateY(-2px);
}

.financeiro-fat-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.financeiro-fat-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
    overflow: hidden;
    position: relative;
}

.financeiro-fat-kpi-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: #60a5fa;
}

.financeiro-fat-kpi-card.destaque::before { background: #60a5fa; }
.financeiro-fat-kpi-card.alerta::before { background: #f59e0b; }
.financeiro-fat-kpi-card.sucesso::before { background: #34d399; }
.financeiro-fat-kpi-card.neutro::before { background: #93c5fd; }

.financeiro-fat-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.financeiro-fat-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: clamp(22px, 2.1vw, 30px);
    line-height: 1.12;
    margin-bottom: 10px;
}

.financeiro-fat-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.financeiro-fat-card {
    border: 1px solid rgba(255,255,255,0.10) !important;
    border-radius: 24px !important;
    background: rgba(13,34,79,0.90) !important;
    box-shadow: 0 16px 40px rgba(0,0,0,0.22) !important;
    overflow: hidden;
}

.financeiro-fat-card-title {
    align-items: flex-start;
    gap: 16px;
}

.financeiro-fat-card-title h3 {
    color: #ffffff;
    margin-bottom: 6px;
}

.financeiro-fat-card-title p {
    margin: 0;
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.45;
}

.financeiro-fat-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 14px;
    border-radius: 999px;
    background: rgba(51, 117, 250, 0.18);
    color: #bfdbfe;
    border: 1px solid rgba(59, 130, 246, 0.42);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
}

.financeiro-fat-search-form label,
.financeiro-fat-parcelas-row label {
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 900;
}

.financeiro-fat-search-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 210px;
    gap: 14px;
    align-items: end;
    margin-top: 10px;
}

.financeiro-fat-search-row input,
.financeiro-fat-parcelas-row input,
.financeiro-fat-pagamento-card input[type="date"],
.financeiro-fat-pagamento-card input[type="number"],
.financeiro-fat-pagamento-card input[type="text"] {
    width: 100%;
    min-height: 48px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    font-size: 15px;
    font-family: 'Montserrat', sans-serif;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.financeiro-fat-search-row input::placeholder,
.financeiro-fat-pagamento-card input::placeholder {
    color: #9eb5f5;
}

.financeiro-fat-search-row input:focus,
.financeiro-fat-parcelas-row input:focus,
.financeiro-fat-pagamento-card input:focus {
    border-color: rgba(93,146,255,0.74);
    box-shadow: 0 0 0 4px rgba(51,117,250,0.15);
}

.financeiro-fat-btn-primary,
.financeiro-fat-btn-secondary,
.financeiro-fat-btn-select {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    font-weight: 900;
    text-decoration: none;
    border: 1px solid transparent;
    transition: .2s ease;
}

.financeiro-fat-btn-primary:hover,
.financeiro-fat-btn-secondary:hover,
.financeiro-fat-btn-select:hover {
    transform: translateY(-2px);
}

.financeiro-fat-btn-secondary {
    color: #ffffff;
    background: rgba(255,255,255,0.11) !important;
    border-color: rgba(255,255,255,0.14) !important;
}

.financeiro-fat-btn-select {
    padding: 10px 16px;
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 10px 20px rgba(0,0,0,0.18);
}

.financeiro-fat-table tbody tr {
    background: rgba(255,255,255,0.035);
}

.financeiro-fat-table tbody td {
    border-top: 10px solid rgba(7,21,47,0.96);
}

.financeiro-fat-status,
.financeiro-fat-email {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .03em;
    white-space: nowrap;
    border: 1px solid transparent;
}

.financeiro-fat-status small {
    margin-left: 6px;
    opacity: .86;
    font-size: 11px;
}

.financeiro-fat-status-faturado,
.financeiro-fat-email-enviado {
    color: #a7f3d0;
    background: rgba(16,185,129,0.16);
    border-color: rgba(16,185,129,0.34);
}

.financeiro-fat-status-pendente,
.financeiro-fat-email-pendente {
    color: #fde68a;
    background: rgba(245,158,11,0.16);
    border-color: rgba(245,158,11,0.34);
}

.financeiro-fat-valores-grid .mini-card {
    border-radius: 22px;
    background: rgba(13,34,79,0.88);
    border: 1px solid rgba(255,255,255,0.10);
}

.financeiro-fat-parcelas-row {
    display: grid;
    grid-template-columns: minmax(180px, 260px) 190px;
    gap: 14px;
    align-items: end;
    margin-bottom: 20px;
}

.financeiro-fat-parcelas-row label {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.financeiro-fat-pagamentos-card .btn-excluir,
.financeiro-fat-comissoes-card .btn-filtrar,
.financeiro-fat-comissoes-card .btn-preview {
    border-radius: 14px;
    font-weight: 900;
}

@media(max-width: 1100px) {
    .financeiro-fat-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .financeiro-fat-search-row,
    .financeiro-fat-parcelas-row {
        grid-template-columns: 1fr;
    }
}

@media(max-width: 768px) {
    .financeiro-fat-hero {
        flex-direction: column;
        padding: 24px;
    }

    .financeiro-fat-hero-actions {
        min-width: 0;
        width: 100%;
    }

    .financeiro-fat-kpi-grid {
        grid-template-columns: 1fr;
    }

    .financeiro-fat-card-title {
        flex-direction: column;
    }

    .financeiro-fat-btn-primary,
    .financeiro-fat-btn-secondary,
    .financeiro-fat-btn-select,
    .financeiro-fat-action {
        width: 100%;
    }
}


/* FINANCEIRO / COMISSÕES - VISUAL PROFISSIONAL */
.financeiro-comissoes-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.financeiro-com-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(56, 189, 248, 0.26), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.financeiro-com-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.financeiro-com-hero > div {
    position: relative;
    z-index: 1;
}

.financeiro-com-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.financeiro-com-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.financeiro-com-hero p {
    max-width: 740px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.financeiro-com-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.financeiro-com-action {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
}

.financeiro-com-action.primary {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.financeiro-com-action.secondary {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.financeiro-com-action:hover {
    transform: translateY(-2px);
}

.financeiro-com-kpi-grid,
.financeiro-com-fechamento-cards {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.financeiro-com-kpi-card,
.financeiro-com-fechamento-cards .mini-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
}

.financeiro-com-kpi-card.destaque,
.financeiro-com-fechamento-cards .mini-card:nth-child(1) {
    background: linear-gradient(135deg, rgba(245,158,11,0.25), rgba(13,34,79,0.92));
}

.financeiro-com-kpi-card.alerta,
.financeiro-com-fechamento-cards .mini-card:nth-child(2) {
    background: linear-gradient(135deg, rgba(51,117,250,0.32), rgba(13,34,79,0.92));
}

.financeiro-com-kpi-card.sucesso,
.financeiro-com-fechamento-cards .mini-card:nth-child(3) {
    background: linear-gradient(135deg, rgba(16,185,129,0.26), rgba(13,34,79,0.92));
}

.financeiro-com-kpi-card.total,
.financeiro-com-fechamento-cards .mini-card:nth-child(5) {
    background: linear-gradient(135deg, rgba(56,189,248,0.28), rgba(13,34,79,0.92));
}

.financeiro-com-kpi-card span,
.financeiro-com-fechamento-cards .mini-card p {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.financeiro-com-kpi-card strong,
.financeiro-com-kpi-card h3,
.financeiro-com-fechamento-cards .mini-card h3 {
    display: block;
    color: #ffffff;
    font-size: 27px;
    line-height: 1.08;
    margin-bottom: 10px;
}

.financeiro-com-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.financeiro-com-fechamento-cards .mini-card .dash-icon {
    display: inline-flex;
    margin-bottom: 8px;
}

.financeiro-com-card {
    border: 1px solid rgba(255,255,255,0.10) !important;
    border-radius: 26px !important;
    background: rgba(13,34,79,0.92) !important;
    box-shadow: 0 16px 42px rgba(0,0,0,0.24) !important;
    overflow: hidden;
}

.financeiro-com-card .card-title {
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.financeiro-com-card .card-title h3 {
    color: #ffffff;
    font-size: 22px;
}

.financeiro-com-card .painel-subtitulo,
.financeiro-com-card .resumo-competencia-financeiro {
    color: #b8c7f3 !important;
}

.financeiro-com-filtros {
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.financeiro-com-filtros-grid {
    display: grid;
    grid-template-columns: minmax(180px, 260px) minmax(240px, 360px) auto;
    gap: 14px;
    align-items: end;
}

.financeiro-com-filtros label {
    display: block;
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 900;
    margin-bottom: 8px;
}

.financeiro-com-filtros input,
.financeiro-com-filtros select {
    width: 100%;
    min-height: 48px;
    padding: 13px 15px;
    border-radius: 15px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    outline: none;
}

.financeiro-com-filtros select option {
    background: #102858;
    color: #ffffff;
}

.financeiro-com-filtros input:focus,
.financeiro-com-filtros select:focus {
    border-color: rgba(93,146,255,0.75);
    box-shadow: 0 0 0 4px rgba(51,117,250,0.15);
}

.financeiro-comissoes-page .dashboard-tabela {
    border-collapse: separate;
    border-spacing: 0 10px;
}

.financeiro-comissoes-page .dashboard-tabela thead th {
    color: #aebff0;
    background: transparent !important;
    border: none !important;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.financeiro-comissoes-page .dashboard-tabela tbody tr {
    background: rgba(255,255,255,0.045);
    border-radius: 18px;
}

.financeiro-comissoes-page .dashboard-tabela tbody td {
    background: rgba(255,255,255,0.045) !important;
    border-top: 1px solid rgba(255,255,255,0.07);
    border-bottom: 1px solid rgba(255,255,255,0.07);
    color: #dbe6ff;
    padding: 15px 13px;
}

.financeiro-comissoes-page .dashboard-tabela tbody td:first-child {
    border-left: 1px solid rgba(255,255,255,0.07);
    border-radius: 16px 0 0 16px;
}

.financeiro-comissoes-page .dashboard-tabela tbody td:last-child {
    border-right: 1px solid rgba(255,255,255,0.07);
    border-radius: 0 16px 16px 0;
}

.financeiro-comissoes-page .dashboard-tabela td strong {
    color: #ffffff;
}

.financeiro-com-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 7px 12px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border: 1px solid transparent;
    white-space: nowrap;
}

.financeiro-com-pill.origem-sistema {
    background: rgba(59,130,246,0.18);
    color: #bfdbfe;
    border-color: rgba(59,130,246,0.36);
}

.financeiro-com-pill.origem-planilha {
    background: rgba(245,158,11,0.16);
    color: #fde68a;
    border-color: rgba(245,158,11,0.34);
}

.financeiro-com-pill.status-pendente {
    background: rgba(245,158,11,0.16);
    color: #fde68a;
    border-color: rgba(245,158,11,0.34);
}

.financeiro-com-pill.status-aprovada {
    background: rgba(59,130,246,0.18);
    color: #bfdbfe;
    border-color: rgba(59,130,246,0.36);
}

.financeiro-com-pill.status-paga {
    background: rgba(16,185,129,0.18);
    color: #bbf7d0;
    border-color: rgba(16,185,129,0.36);
}

.financeiro-com-pill.status-cancelada {
    background: rgba(239,68,68,0.18);
    color: #fecaca;
    border-color: rgba(239,68,68,0.36);
}

.financeiro-comissoes-page .financeiro-acoes-fechamento {
    padding: 16px;
    border-radius: 20px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.financeiro-comissoes-page .financeiro-acoes-fechamento .btn-filtrar {
    border-radius: 14px;
    min-height: 44px;
    padding: 12px 16px;
    font-weight: 900;
}

@media(max-width: 1100px) {
    .financeiro-com-kpi-grid,
    .financeiro-com-fechamento-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .financeiro-com-filtros-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width: 768px) {
    .financeiro-com-hero {
        flex-direction: column;
        padding: 24px;
    }

    .financeiro-com-hero-actions {
        min-width: 0;
        width: 100%;
    }

    .financeiro-com-kpi-grid,
    .financeiro-com-fechamento-cards,
    .financeiro-com-filtros-grid {
        grid-template-columns: 1fr;
    }

    .financeiro-com-card {
        padding: 18px !important;
    }
}

/* =========================================================
   FINANCEIRO / DESPESAS - VISUAL PROFISSIONAL
   ========================================================= */
.financeiro-despesas-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.financeiro-despesas-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at bottom right, rgba(16, 185, 129, 0.28), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.financeiro-despesas-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 260px;
    height: 260px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.financeiro-despesas-hero-info,
.financeiro-despesas-hero-actions {
    position: relative;
    z-index: 1;
}

.financeiro-despesas-eyebrow,
.financeiro-despesas-section-title span {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.financeiro-despesas-hero h2 {
    color: #ffffff;
    font-size: clamp(30px, 4vw, 44px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.financeiro-despesas-hero p {
    max-width: 760px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.financeiro-despesas-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.financeiro-despesas-primary-action,
.financeiro-despesas-secondary-action,
.financeiro-despesas-btn-primary,
.financeiro-despesas-btn-secondary {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
    font-family: 'Montserrat', sans-serif;
}

.financeiro-despesas-primary-action,
.financeiro-despesas-btn-primary {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.financeiro-despesas-secondary-action,
.financeiro-despesas-btn-secondary {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.financeiro-despesas-primary-action:hover,
.financeiro-despesas-secondary-action:hover,
.financeiro-despesas-btn-primary:hover,
.financeiro-despesas-btn-secondary:hover {
    transform: translateY(-2px);
}

.financeiro-despesas-btn-secondary.desabilitado {
    opacity: .45;
    cursor: not-allowed;
    transform: none !important;
}

.financeiro-despesas-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.financeiro-despesas-kpi-card {
    min-height: 130px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.92);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
    position: relative;
    overflow: hidden;
}

.financeiro-despesas-kpi-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: #93c5fd;
}

.financeiro-despesas-kpi-card.destaque::before { background: #60a5fa; }
.financeiro-despesas-kpi-card.perigo::before { background: #fb7185; }
.financeiro-despesas-kpi-card.alerta::before { background: #f59e0b; }
.financeiro-despesas-kpi-card.sucesso::before { background: #34d399; }

.financeiro-despesas-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.financeiro-despesas-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: clamp(24px, 2.4vw, 31px);
    line-height: 1.1;
    margin-bottom: 10px;
}

.financeiro-despesas-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.financeiro-despesas-saldo-card,
.financeiro-despesas-filtro-card,
.financeiro-despesas-extrato-card {
    padding: 28px;
    border-radius: 26px;
    background: rgba(13,34,79,0.92);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 16px 42px rgba(0,0,0,0.22);
}

.financeiro-despesas-section-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
}

.financeiro-despesas-section-title.compacto {
    margin-bottom: 14px;
}

.financeiro-despesas-section-title span {
    margin-bottom: 8px;
    background: rgba(51,117,250,0.16);
    color: #aecaFF;
}

.financeiro-despesas-section-title h3 {
    color: #ffffff;
    font-size: 24px;
    margin: 0;
    letter-spacing: -0.02em;
}

.financeiro-despesas-periodo-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.13);
    color: #dbeafe;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.financeiro-despesas-saldo-resumo {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.financeiro-despesas-saldo-resumo span {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.09);
    color: #b8c7f3;
    font-size: 13px;
    font-weight: 700;
}

.financeiro-despesas-saldo-resumo strong {
    color: #ffffff;
    font-size: 16px;
}

.financeiro-despesas-saldo-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.financeiro-despesas-saldo-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 118px;
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.10);
    color: #ffffff;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.financeiro-despesas-saldo-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(0,0,0,0.22);
    border-color: rgba(96,165,250,0.38);
}

.financeiro-despesas-saldo-item.saldo-alerta {
    background: rgba(239, 68, 68, 0.13);
    border-color: rgba(248, 113, 113, 0.38);
}

.financeiro-despesas-saldo-info,
.financeiro-despesas-saldo-valor {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.financeiro-despesas-saldo-info strong,
.financeiro-despesas-saldo-valor strong {
    color: #ffffff;
}

.financeiro-despesas-saldo-info span,
.financeiro-despesas-saldo-valor small {
    color: #b8c7f3;
    font-size: 12px;
    font-weight: 700;
}

.financeiro-despesas-saldo-valor {
    text-align: right;
    align-items: flex-end;
}

.financeiro-despesas-filtro-form {
    display: grid;
    grid-template-columns: minmax(220px, 1.5fr) repeat(2, minmax(170px, 1fr)) minmax(220px, auto);
    gap: 14px;
    align-items: end;
}

.financeiro-despesas-filtro-form label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 800;
}

.financeiro-despesas-filtro-form input,
.financeiro-despesas-filtro-form select {
    width: 100%;
    min-height: 50px;
    padding: 13px 15px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    outline: none;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
}

.financeiro-despesas-filtro-form select option {
    background: #102858;
    color: #ffffff;
}

.financeiro-despesas-filtro-form input:focus,
.financeiro-despesas-filtro-form select:focus {
    border-color: rgba(96,165,250,0.72);
    box-shadow: 0 0 0 4px rgba(96,165,250,0.14);
}

.financeiro-despesas-filtro-actions {
    display: flex;
    gap: 10px;
    align-items: stretch;
}

.financeiro-despesas-table-wrap {
    overflow-x: auto;
}

.financeiro-despesas-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 10px;
    min-width: 1050px;
}

.financeiro-despesas-table thead th {
    padding: 0 12px 10px;
    color: #9fb6ee;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-align: left;
}

.financeiro-despesas-table tbody tr {
    background: rgba(255,255,255,0.055);
    box-shadow: 0 10px 24px rgba(0,0,0,0.14);
}

.financeiro-despesas-table tbody tr.linha-deposito {
    background: rgba(16, 185, 129, 0.12);
}

.financeiro-despesas-table tbody tr.linha-requisicao {
    background: rgba(245, 158, 11, 0.11);
}

.financeiro-despesas-table tbody td {
    padding: 15px 12px;
    color: #e9f1ff;
    border-top: 1px solid rgba(255,255,255,0.07);
    border-bottom: 1px solid rgba(255,255,255,0.07);
    vertical-align: middle;
}

.financeiro-despesas-table tbody td:first-child {
    border-left: 1px solid rgba(255,255,255,0.07);
    border-radius: 18px 0 0 18px;
}

.financeiro-despesas-table tbody td:last-child {
    border-right: 1px solid rgba(255,255,255,0.07);
    border-radius: 0 18px 18px 0;
}

.financeiro-despesas-table td strong {
    color: #ffffff;
}

.financeiro-despesas-table td small {
    display: block;
    margin-top: 4px;
    color: #9fb6ee;
    font-size: 12px;
}

.financeiro-despesas-tipo-pill,
.financeiro-despesas-req,
.financeiro-despesas-placa,
.financeiro-despesas-nf-btn,
.financeiro-despesas-sem-nf,
.financeiro-despesas-acao-bloqueada {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
    text-decoration: none;
}

.financeiro-despesas-tipo-pill.tipo-despesa {
    color: #bfdbfe;
    background: rgba(59,130,246,0.18);
    border: 1px solid rgba(59,130,246,0.36);
}

.financeiro-despesas-tipo-pill.tipo-requisicao {
    color: #fde68a;
    background: rgba(245,158,11,0.18);
    border: 1px solid rgba(245,158,11,0.36);
}

.financeiro-despesas-tipo-pill.tipo-deposito {
    color: #a7f3d0;
    background: rgba(16,185,129,0.18);
    border: 1px solid rgba(16,185,129,0.36);
}

.financeiro-despesas-placa {
    color: #dbeafe;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.12);
}

.financeiro-despesas-req.req-sim {
    color: #fde68a;
    background: rgba(245,158,11,0.18);
}

.financeiro-despesas-req.req-nao {
    color: #cbd5e1;
    background: rgba(148,163,184,0.16);
}

.financeiro-despesas-nf-btn {
    color: #08204a;
    background: #ffffff;
    min-width: 42px;
}

.financeiro-despesas-sem-nf,
.financeiro-despesas-acao-bloqueada {
    color: #9fb6ee;
    background: rgba(255,255,255,0.06);
}

.financeiro-despesas-sem-nf.deposito-sem-nf {
    color: #a7f3d0;
}

.financeiro-despesas-obs {
    max-width: 250px;
    color: #cbd7f5 !important;
    line-height: 1.45;
}

.financeiro-despesas-muted {
    color: #8ea4dc;
}

.financeiro-despesas-acoes {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    flex-wrap: wrap;
}

.financeiro-despesas-btn-editar,
.financeiro-despesas-btn-excluir {
    min-height: 38px;
    min-width: 82px;
    padding: 9px 12px;
    border-radius: 13px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform .18s ease, box-shadow .18s ease;
}

.financeiro-despesas-btn-editar {
    color: #ffffff;
    background: linear-gradient(135deg, #4f8cff, #2f6ef6);
}

.financeiro-despesas-btn-excluir {
    color: #ffffff;
    background: linear-gradient(135deg, #8c2432, #b93245);
}

.financeiro-despesas-btn-editar:hover,
.financeiro-despesas-btn-excluir:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 22px rgba(0,0,0,0.22);
}

.financeiro-despesas-empty {
    text-align: center !important;
    padding: 28px !important;
    color: #dbeafe !important;
}

@media(max-width: 1200px) {
    .financeiro-despesas-kpi-grid,
    .financeiro-despesas-saldo-resumo,
    .financeiro-despesas-saldo-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .financeiro-despesas-filtro-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media(max-width: 768px) {
    .financeiro-despesas-hero,
    .financeiro-despesas-section-title {
        flex-direction: column;
    }

    .financeiro-despesas-hero,
    .financeiro-despesas-saldo-card,
    .financeiro-despesas-filtro-card,
    .financeiro-despesas-extrato-card {
        padding: 22px;
        border-radius: 22px;
    }

    .financeiro-despesas-kpi-grid,
    .financeiro-despesas-saldo-resumo,
    .financeiro-despesas-saldo-grid,
    .financeiro-despesas-filtro-form {
        grid-template-columns: 1fr;
    }

    .financeiro-despesas-filtro-actions,
    .financeiro-despesas-hero-actions {
        flex-direction: column;
        min-width: 0;
    }

    .financeiro-despesas-saldo-item {
        align-items: flex-start;
        flex-direction: column;
    }

    .financeiro-despesas-saldo-valor {
        align-items: flex-start;
        text-align: left;
    }
}


/* FINANCEIRO / DESPESAS - SALDOS DOS COLABORADORES V26 */
.financeiro-despesas-saldo-grid {
    align-items: stretch;
}

.financeiro-despesas-saldo-item {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: linear-gradient(135deg, rgba(15, 38, 82, 0.96), rgba(18, 49, 107, 0.88));
}

.financeiro-despesas-saldo-item::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: #60a5fa;
    z-index: -1;
}

.financeiro-despesas-saldo-item::after {
    content: "";
    position: absolute;
    right: -42px;
    top: -52px;
    width: 126px;
    height: 126px;
    border-radius: 999px;
    background: rgba(255,255,255,0.045);
    z-index: -1;
}

.financeiro-despesas-saldo-item.saldo-alerta {
    background: linear-gradient(135deg, rgba(92, 29, 43, 0.95), rgba(30, 47, 96, 0.92));
    border-color: rgba(248, 113, 113, 0.40);
}

.financeiro-despesas-saldo-item.saldo-alerta::before {
    background: linear-gradient(180deg, #fb7185, #ef4444);
}

.financeiro-despesas-saldo-item.saldo-positivo {
    background: linear-gradient(135deg, rgba(22, 72, 132, 0.95), rgba(15, 38, 82, 0.92));
    border-color: rgba(96, 165, 250, 0.34);
}

.financeiro-despesas-saldo-item.saldo-positivo::before {
    background: linear-gradient(180deg, #93c5fd, #3b82f6);
}

.financeiro-despesas-saldo-item.saldo-zerado {
    background: linear-gradient(135deg, rgba(20, 83, 45, 0.86), rgba(15, 38, 82, 0.92));
    border-color: rgba(52, 211, 153, 0.34);
}

.financeiro-despesas-saldo-item.saldo-zerado::before {
    background: linear-gradient(180deg, #86efac, #22c55e);
}

.financeiro-despesas-saldo-item.saldo-negativo {
    background: linear-gradient(135deg, rgba(120, 53, 15, 0.88), rgba(15, 38, 82, 0.92));
    border-color: rgba(251, 191, 36, 0.36);
}

.financeiro-despesas-saldo-item.saldo-negativo::before {
    background: linear-gradient(180deg, #fbbf24, #f59e0b);
}

.financeiro-despesas-saldo-info {
    min-width: 0;
}

.financeiro-despesas-saldo-info strong {
    font-size: 15px;
    line-height: 1.25;
    margin-bottom: 3px;
}

.financeiro-despesas-saldo-info .saldo-metrica {
    width: fit-content;
    max-width: 100%;
    padding: 4px 8px;
    border-radius: 999px;
    font-size: 11px;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.financeiro-despesas-saldo-info .saldo-metrica-deposito {
    color: #bbf7d0;
    background: rgba(34, 197, 94, 0.13);
    border: 1px solid rgba(34, 197, 94, 0.24);
}

.financeiro-despesas-saldo-info .saldo-metrica-despesa {
    color: #fecaca;
    background: rgba(248, 113, 113, 0.12);
    border: 1px solid rgba(248, 113, 113, 0.23);
}

.financeiro-despesas-saldo-valor strong {
    font-size: 20px;
    letter-spacing: -0.02em;
}

.financeiro-despesas-saldo-valor small {
    padding: 5px 9px;
    border-radius: 999px;
    color: #ffffff;
    background: rgba(255,255,255,0.10);
    border: 1px solid rgba(255,255,255,0.12);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.financeiro-despesas-saldo-item.saldo-alerta .financeiro-despesas-saldo-valor small {
    color: #fecaca;
    background: rgba(248, 113, 113, 0.14);
    border-color: rgba(248, 113, 113, 0.28);
}

.financeiro-despesas-saldo-item.saldo-zerado .financeiro-despesas-saldo-valor small {
    color: #bbf7d0;
    background: rgba(34, 197, 94, 0.14);
    border-color: rgba(34, 197, 94, 0.28);
}

.financeiro-despesas-saldo-item.saldo-negativo .financeiro-despesas-saldo-valor small {
    color: #fde68a;
    background: rgba(245, 158, 11, 0.14);
    border-color: rgba(245, 158, 11, 0.28);
}

/* =========================================================
   CADASTROS / CLIENTES - VISUAL PROFISSIONAL
   ========================================================= */
.clientes-admin-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.clientes-admin-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(20,184,166,0.28), transparent 34%),
        linear-gradient(135deg, rgba(8,27,67,0.98), rgba(15,49,111,0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.clientes-admin-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.clientes-admin-hero > div {
    position: relative;
    z-index: 1;
}

.clientes-admin-eyebrow,
.clientes-admin-card-title span {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.clientes-admin-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.clientes-admin-hero p {
    max-width: 760px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.clientes-admin-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.clientes-admin-action,
.clientes-admin-btn {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: 0.25s ease;
    font-family: 'Montserrat', sans-serif;
}

.clientes-admin-action:hover,
.clientes-admin-btn:hover {
    transform: translateY(-2px);
}

.clientes-admin-action.primary,
.clientes-admin-btn-primary {
    color: #ffffff;
    background: linear-gradient(135deg, #3b82f6, #2563eb);
    box-shadow: 0 14px 30px rgba(37,99,235,0.25);
}

.clientes-admin-action.secondary,
.clientes-admin-btn-secondary {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.clientes-admin-btn.small {
    min-height: 38px;
    padding: 10px 15px;
    border-radius: 13px;
    font-size: 13px;
}

.clientes-admin-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.clientes-admin-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
    position: relative;
    overflow: hidden;
}

.clientes-admin-kpi-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 5px;
    background: #60a5fa;
}

.clientes-admin-kpi-card.sucesso::before { background: #34d399; }
.clientes-admin-kpi-card.alerta::before { background: #f59e0b; }
.clientes-admin-kpi-card.neutro::before { background: #93c5fd; }

.clientes-admin-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.clientes-admin-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.clientes-admin-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.clientes-admin-card {
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    box-shadow: 0 16px 40px rgba(0,0,0,0.22);
    padding: 24px;
}

.clientes-admin-card-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.clientes-admin-card-title h3 {
    color: #ffffff;
    font-size: 24px;
    margin: 0;
}

.clientes-admin-card-title p {
    margin: 8px 0 0;
    color: #b8c7f3;
}

.clientes-admin-card-title p strong {
    color: #ffffff;
}

.clientes-admin-card-title > strong,
.clientes-admin-card-title > small {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(59,130,246,0.15);
    color: #bfdbfe;
    border: 1px solid rgba(59,130,246,0.30);
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.clientes-admin-filtros {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto auto;
    gap: 12px;
    align-items: center;
    margin: 0;
}

.clientes-admin-filtros input,
.clientes-admin-form input,
.clientes-admin-form select {
    width: 100%;
    min-height: 48px;
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 15px;
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    padding: 13px 15px;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.clientes-admin-form select option {
    background: #102858;
    color: #ffffff;
}

.clientes-admin-filtros input::placeholder,
.clientes-admin-form input::placeholder {
    color: #9eb5f5;
}

.clientes-admin-filtros input:focus,
.clientes-admin-form input:focus,
.clientes-admin-form select:focus {
    border-color: rgba(96,165,250,0.78);
    box-shadow: 0 0 0 3px rgba(59,130,246,0.16);
}

.clientes-cadastro-card {
    display: none;
}

.clientes-cadastro-card.ativo,
.clientes-edicao-card {
    display: block;
}

.clientes-admin-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin: 0;
}

.clientes-admin-form label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 800;
}

.clientes-admin-form .span-2,
.clientes-admin-form .full {
    grid-column: 1 / -1;
}

.clientes-form-section {
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
}

.clientes-form-section strong {
    display: block;
    color: #ffffff;
    font-size: 15px;
    margin-bottom: 4px;
}

.clientes-form-section small {
    display: block;
    color: #aebff0;
    font-size: 13px;
}

.clientes-form-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 6px;
}

.clientes-admin-lista {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.clientes-admin-item {
    display: grid;
    grid-template-columns: minmax(260px, 1.5fr) minmax(150px, .8fr) minmax(190px, .9fr) auto;
    gap: 16px;
    align-items: center;
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    transition: 0.22s ease;
}

.clientes-admin-item:hover {
    transform: translateY(-2px);
    background: rgba(255,255,255,0.065);
    border-color: rgba(96,165,250,0.24);
}

.clientes-admin-main {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.clientes-admin-avatar {
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #3375FA, #14b8a6);
    color: #ffffff;
    font-size: 22px;
    font-weight: 900;
    text-transform: uppercase;
    box-shadow: 0 14px 24px rgba(0,0,0,0.20);
}

.clientes-admin-identidade {
    min-width: 0;
}

.clientes-admin-identidade strong {
    display: block;
    color: #ffffff;
    font-size: 15px;
    line-height: 1.3;
    margin-bottom: 4px;
    overflow-wrap: anywhere;
}

.clientes-admin-identidade span,
.clientes-admin-identidade small {
    display: block;
    color: #b8c7f3;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
}

.clientes-admin-metas {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.clientes-admin-metas span {
    padding: 10px 12px;
    border-radius: 15px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
}

.clientes-admin-metas small {
    display: block;
    color: #9eb5f5;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 3px;
}

.clientes-admin-metas strong {
    display: block;
    color: #ffffff;
    font-size: 20px;
}

.clientes-admin-status {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.clientes-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 7px 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border: 1px solid transparent;
    white-space: nowrap;
}

.clientes-status-pill.ativo {
    background: rgba(16,185,129,0.16);
    color: #a7f3d0;
    border-color: rgba(16,185,129,0.34);
}

.clientes-status-pill.pendente {
    background: rgba(245,158,11,0.16);
    color: #fde68a;
    border-color: rgba(245,158,11,0.34);
}

.clientes-status-pill.arquivos {
    background: rgba(59,130,246,0.16);
    color: #bfdbfe;
    border-color: rgba(59,130,246,0.34);
}

.clientes-status-pill.neutro {
    background: rgba(148,163,184,0.16);
    color: #e2e8f0;
    border-color: rgba(148,163,184,0.30);
}

.clientes-admin-acoes {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.clientes-admin-empty {
    padding: 24px;
    border-radius: 18px;
    background: rgba(255,255,255,0.045);
    border: 1px dashed rgba(255,255,255,0.16);
}

.clientes-admin-empty strong {
    display: block;
    color: #ffffff;
    margin-bottom: 5px;
}

.clientes-admin-empty span {
    color: #b8c7f3;
}

@media(max-width: 1100px) {
    .clientes-admin-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .clientes-admin-item {
        grid-template-columns: 1fr;
        align-items: flex-start;
    }

    .clientes-admin-acoes {
        justify-content: flex-start;
    }
}

@media(max-width: 768px) {
    .clientes-admin-hero {
        flex-direction: column;
        padding: 24px;
    }

    .clientes-admin-hero-actions {
        min-width: 0;
    }

    .clientes-admin-kpi-grid,
    .clientes-admin-form,
    .clientes-admin-filtros {
        grid-template-columns: 1fr;
    }

    .clientes-admin-card {
        padding: 18px;
    }

    .clientes-admin-card-title {
        flex-direction: column;
    }

    .clientes-form-actions .clientes-admin-btn,
    .clientes-admin-hero-actions .clientes-admin-action {
        width: 100%;
    }

    .clientes-admin-metas {
        grid-template-columns: 1fr 1fr;
        width: 100%;
    }
}

/* =========================================================
   CADASTROS / COLABORADORES - VISUAL PROFISSIONAL
   ========================================================= */
.colaboradores-admin-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.colaboradores-admin-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 26px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at right bottom, rgba(34,197,94,0.22), transparent 34%),
        linear-gradient(135deg, rgba(8,27,67,0.98), rgba(15,49,111,0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.colaboradores-admin-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.colaboradores-admin-hero-info,
.colaboradores-admin-hero-actions {
    position: relative;
    z-index: 1;
}

.colaboradores-admin-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.colaboradores-admin-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.colaboradores-admin-hero p {
    max-width: 760px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.colaboradores-admin-hero-actions {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
    min-width: 220px;
}

.colaboradores-admin-primary-action,
.colaboradores-admin-secondary-action,
.colaboradores-btn-primary,
.colaboradores-btn-secondary,
.colaboradores-btn-edit {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.22s ease;
    font-family: 'Montserrat', sans-serif;
}

.colaboradores-admin-primary-action,
.colaboradores-btn-primary,
.colaboradores-btn-edit {
    color: #ffffff;
    background: linear-gradient(135deg, #3b82f6, #2563eb);
    box-shadow: 0 12px 28px rgba(37,99,235,0.28);
}

.colaboradores-admin-secondary-action,
.colaboradores-btn-secondary {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.colaboradores-admin-primary-action:hover,
.colaboradores-admin-secondary-action:hover,
.colaboradores-btn-primary:hover,
.colaboradores-btn-secondary:hover,
.colaboradores-btn-edit:hover {
    transform: translateY(-2px);
}

.colaboradores-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.colaboradores-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
    position: relative;
    overflow: hidden;
}

.colaboradores-kpi-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 5px;
    height: 100%;
    background: #60a5fa;
}

.colaboradores-kpi-card.sucesso::before { background: #34d399; }
.colaboradores-kpi-card.alerta::before { background: #f59e0b; }
.colaboradores-kpi-card.perigo::before { background: #ef4444; }
.colaboradores-kpi-card.neutro::before { background: #93c5fd; }

.colaboradores-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.colaboradores-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.colaboradores-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.colaboradores-kpi-grid a.colaboradores-kpi-card {
    text-decoration: none;
    transition: 0.22s ease;
}

.colaboradores-kpi-grid a.colaboradores-kpi-card:hover {
    transform: translateY(-3px);
    border-color: rgba(147,197,253,0.42);
}

.colaboradores-kpi-card.perigo strong {
    color: #fecaca;
}

.colaboradores-kpi-card.alerta strong {
    color: #fde68a;
}

.colaboradores-kpi-card.neutro strong {
    color: #dbeafe;
}

.colaboradores-kpi-documentos {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.colaboradores-doc-public-card {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 22px;
    padding: 24px;
}

.colaboradores-doc-public-info {
    flex: 1;
    min-width: 0;
}

.colaboradores-doc-public-info h3 {
    color: #ffffff;
    font-size: 22px;
    margin: 0 0 8px;
}

.colaboradores-doc-public-info p {
    color: #b8c7f3;
    margin: 0 0 16px;
    line-height: 1.5;
    max-width: 760px;
}

.colaboradores-doc-public-link {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
}

.colaboradores-doc-public-link input {
    width: 100%;
    min-height: 48px;
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 15px;
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    padding: 13px 15px;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    outline: none;
}

.colaboradores-doc-public-actions {
    min-width: 240px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
}

.colaboradores-doc-public-actions form {
    margin: 0;
}

.colaboradores-doc-public-actions button,
.colaboradores-doc-public-actions a {
    width: 100%;
}

@media(max-width: 900px) {
    .colaboradores-doc-public-card,
    .colaboradores-doc-public-link {
        grid-template-columns: 1fr;
        flex-direction: column;
    }

    .colaboradores-doc-public-actions {
        min-width: 0;
    }
}

.colaboradores-admin-panel {
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 16px 40px rgba(0,0,0,0.22);
    overflow: hidden;
}

.colaboradores-form-panel summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 24px;
    min-height: 145px;
    position: relative;
}

.colaboradores-form-panel summary::-webkit-details-marker {
    display: none;
}

.colaboradores-form-panel summary::after {
    content: "+";
    position: absolute;
    right: 22px;
    top: 22px;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.10);
    color: #ffffff;
    font-size: 23px;
    font-weight: 900;
}

.colaboradores-form-panel[open] summary::after {
    content: "−";
}

.colaboradores-form-panel summary span,
.colaboradores-lista-badge {
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(51,117,250,0.16);
    color: #aecaFF;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.colaboradores-form-panel summary strong,
.colaboradores-lista-topo h3 {
    color: #ffffff;
    font-size: 22px;
    margin: 0;
}

.colaboradores-form-panel summary small,
.colaboradores-lista-topo p {
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.45;
    max-width: 720px;
}

.colaboradores-panel-content {
    padding: 0 24px 24px;
}

.colaboradores-modern-form,
.colaboradores-filter-form {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 0;
}

.colaboradores-form-section-title {
    grid-column: 1 / -1;
    margin-top: 5px;
    padding: 13px 16px;
    border-radius: 16px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.08);
    color: #dce7ff;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.colaboradores-modern-form label {
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 800;
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0;
}

.colaboradores-modern-form input,
.colaboradores-modern-form select,
.colaboradores-filter-form input,
.colaboradores-filter-form select {
    width: 100%;
    min-height: 48px;
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 15px;
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    padding: 13px 15px;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.colaboradores-modern-form input:focus,
.colaboradores-modern-form select:focus,
.colaboradores-filter-form input:focus,
.colaboradores-filter-form select:focus {
    border-color: rgba(93,146,255,0.85);
    box-shadow: 0 0 0 4px rgba(51,117,250,0.16);
}

.colaboradores-modern-form select option,
.colaboradores-filter-form select option {
    background: #102858;
    color: #ffffff;
}

.colaboradores-modern-form input::placeholder,
.colaboradores-filter-form input::placeholder {
    color: #9fb2e8;
}

.colaboradores-form-actions {
    grid-column: 1 / -1;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 8px;
}

.colaboradores-filter-panel {
    padding: 24px;
}

.colaboradores-lista-topo {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

.colaboradores-filter-form {
    grid-template-columns: 210px 230px minmax(240px, 1fr) auto auto;
    align-items: center;
}

.colaboradores-card-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 0 24px 24px;
}

.colaborador-card-item {
    display: grid;
    grid-template-columns: minmax(260px, 1.2fr) minmax(320px, 1.4fr) minmax(170px, .7fr) auto;
    align-items: center;
    gap: 18px;
    padding: 18px;
    border-radius: 22px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    position: relative;
    overflow: hidden;
}

.colaborador-card-item::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: #34d399;
}

.colaborador-card-item.inativo::before {
    background: #fb7185;
}

.colaborador-card-main {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.colaborador-avatar {
    width: 50px;
    height: 50px;
    min-width: 50px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(59,130,246,0.90), rgba(16,185,129,0.72));
    color: #ffffff;
    font-weight: 900;
    font-size: 20px;
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
}

.colaborador-identidade {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 4px;
}

.colaborador-identidade strong {
    color: #ffffff;
    font-size: 16px;
    line-height: 1.25;
}

.colaborador-identidade span,
.colaborador-identidade small {
    color: #b8c7f3;
    font-size: 13px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.colaborador-meta-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.colaborador-meta-grid span {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 10px 12px;
    border-radius: 15px;
    color: #e8fffb;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    font-size: 13px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.colaborador-meta-grid small {
    color: #99f6e4;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.colaborador-aso-status {
    font-size: 12px;
    font-weight: 900;
}

.colaborador-aso-status.sucesso { color: #86efac; }
.colaborador-aso-status.alerta { color: #fde68a; }
.colaborador-aso-status.perigo { color: #fecaca; }

.colaborador-badges {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.colaborador-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
    border: 1px solid transparent;
}

.colaborador-pill.ativo,
.colaborador-pill.tecnico {
    background: rgba(16,185,129,0.16);
    color: #a7f3d0;
    border-color: rgba(16,185,129,0.32);
}

.colaborador-pill.inativo {
    background: rgba(244,63,94,0.16);
    color: #fecdd3;
    border-color: rgba(244,63,94,0.34);
}

.colaborador-pill.nao-tecnico {
    background: rgba(245,158,11,0.16);
    color: #fde68a;
    border-color: rgba(245,158,11,0.34);
}

.colaborador-pill.documento-vencido {
    background: rgba(239,68,68,0.16);
    color: #fecaca;
    border-color: rgba(239,68,68,0.34);
}

.colaborador-pill.documento-alerta {
    background: rgba(245,158,11,0.16);
    color: #fde68a;
    border-color: rgba(245,158,11,0.34);
}

.colaborador-card-item.documento-critico {
    border-color: rgba(245,158,11,0.22);
    background: linear-gradient(135deg, rgba(255,255,255,0.055), rgba(245,158,11,0.035));
}

.colaborador-card-item.documento-critico::before {
    background: #f59e0b;
}

.colaborador-card-item.documento-critico:has(.colaborador-pill.documento-vencido)::before {
    background: #ef4444;
}

.colaborador-acoes {
    display: flex;
    justify-content: flex-end;
}

.colaboradores-empty-state {
    padding: 24px;
    border-radius: 18px;
    color: #d7fbf6;
    background: rgba(255,255,255,0.045);
    border: 1px dashed rgba(255,255,255,0.16);
}

.colaboradores-empty-state strong {
    display: block;
    color: #ffffff;
    margin-bottom: 5px;
}

.colaboradores-renovacao-panel {
    padding: 24px;
}

.colaboradores-renovacao-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.colaboradores-renovacao-head h3 {
    color: #ffffff;
    font-size: 24px;
    margin: 0 0 8px;
}

.colaboradores-renovacao-head p {
    color: #b8c7f3;
    margin: 0;
    line-height: 1.55;
    max-width: 760px;
}

.colaboradores-renovacao-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 210px;
}

.colaboradores-renovacao-resumo {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.colaboradores-renovacao-resumo span {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.08);
}

.colaboradores-renovacao-resumo strong {
    color: #ffffff;
    font-size: 24px;
    line-height: 1;
}

.colaboradores-renovacao-resumo small {
    color: #aebff0;
    font-weight: 800;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.colaboradores-renovacao-table-wrap {
    overflow: auto;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.08);
}

.colaboradores-renovacao-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 920px;
}

.colaboradores-renovacao-table th,
.colaboradores-renovacao-table td {
    padding: 15px 14px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    vertical-align: middle;
    text-align: left;
}

.colaboradores-renovacao-table th {
    background: rgba(255,255,255,0.055);
    color: #aecaFF;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.colaboradores-renovacao-table td {
    color: #dce7ff;
    font-size: 13px;
}

.colaboradores-renovacao-table td strong {
    display: block;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.35;
}

.colaboradores-renovacao-table td small {
    display: block;
    margin-top: 4px;
    color: #aebff0;
    line-height: 1.35;
}

.colaboradores-renovacao-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 6px 11px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    border: 1px solid transparent;
    white-space: nowrap;
}

.colaboradores-renovacao-status.perigo {
    background: rgba(239,68,68,0.16);
    color: #fecaca;
    border-color: rgba(239,68,68,0.34);
}

.colaboradores-renovacao-status.alerta {
    background: rgba(245,158,11,0.16);
    color: #fde68a;
    border-color: rgba(245,158,11,0.34);
}

.colaboradores-renovacao-status.neutro {
    background: rgba(148,163,184,0.16);
    color: #e2e8f0;
    border-color: rgba(148,163,184,0.28);
}

@media print {
    body * {
        visibility: hidden !important;
    }

    #relatorio-documentos-renovacao,
    #relatorio-documentos-renovacao * {
        visibility: visible !important;
    }

    #relatorio-documentos-renovacao {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        width: 100% !important;
        padding: 18px !important;
        background: #ffffff !important;
        color: #111827 !important;
        box-shadow: none !important;
        border: none !important;
    }

    #relatorio-documentos-renovacao .colaboradores-renovacao-actions {
        display: none !important;
    }

    #relatorio-documentos-renovacao h3,
    #relatorio-documentos-renovacao p,
    #relatorio-documentos-renovacao strong,
    #relatorio-documentos-renovacao small,
    #relatorio-documentos-renovacao td,
    #relatorio-documentos-renovacao th {
        color: #111827 !important;
    }

    .colaboradores-renovacao-table {
        min-width: 0 !important;
    }
}

@media(max-width: 1180px) {
    .colaboradores-kpi-grid,
    .colaboradores-renovacao-resumo {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .colaborador-card-item {
        grid-template-columns: 1fr;
    }

    .colaborador-acoes {
        justify-content: flex-start;
    }
}

@media(max-width: 900px) {
    .colaboradores-admin-hero {
        flex-direction: column;
        padding: 24px;
    }

    .colaboradores-admin-hero-actions {
        min-width: 0;
        align-items: stretch;
    }

    .colaboradores-modern-form,
    .colaboradores-filter-form,
    .colaborador-meta-grid {
        grid-template-columns: 1fr;
    }

    .colaboradores-lista-topo,
    .colaboradores-renovacao-head {
        flex-direction: column;
    }

    .colaboradores-renovacao-actions {
        min-width: 0;
        width: 100%;
    }
}

@media(max-width: 640px) {
    .colaboradores-kpi-grid,
    .colaboradores-renovacao-resumo {
        grid-template-columns: 1fr;
    }

    .colaboradores-panel-content,
    .colaboradores-card-list,
    .colaboradores-filter-panel {
        padding: 18px;
    }

    .colaborador-card-main {
        align-items: flex-start;
    }

    .colaboradores-btn-primary,
    .colaboradores-btn-secondary,
    .colaboradores-btn-edit {
        width: 100%;
    }
}


/* =========================================================
   CADASTROS / VEÍCULOS - VISUAL PROFISSIONAL
   ========================================================= */
.veiculos-admin-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.veiculos-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(59,130,246,0.35), transparent 34%),
        linear-gradient(135deg, rgba(8,27,67,0.98), rgba(15,49,111,0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.veiculos-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.veiculos-hero-info,
.veiculos-hero-actions {
    position: relative;
    z-index: 1;
}

.veiculos-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.veiculos-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.veiculos-hero p {
    max-width: 720px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.veiculos-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.veiculos-primary-action,
.veiculos-secondary-action,
.veiculos-inline-action {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
}

.veiculos-primary-action,
.veiculos-inline-action {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.veiculos-secondary-action {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.veiculos-primary-action:hover,
.veiculos-secondary-action:hover,
.veiculos-inline-action:hover {
    transform: translateY(-2px);
}

.veiculos-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.veiculos-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
}

.veiculos-kpi-card.destaque { background: linear-gradient(135deg, rgba(51,117,250,0.35), rgba(13,34,79,0.92)); }
.veiculos-kpi-card.sucesso { background: linear-gradient(135deg, rgba(16,185,129,0.26), rgba(13,34,79,0.92)); }
.veiculos-kpi-card.alerta { background: linear-gradient(135deg, rgba(245,158,11,0.26), rgba(13,34,79,0.92)); }
.veiculos-kpi-card.neutro { background: linear-gradient(135deg, rgba(148,163,184,0.22), rgba(13,34,79,0.92)); }

.veiculos-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.veiculos-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.veiculos-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.veiculos-alertas-card,
.veiculos-lista-card,
.veiculos-detalhe-card,
.veiculos-form-box {
    border: 1px solid rgba(255,255,255,0.10) !important;
    border-radius: 24px !important;
    background: rgba(13,34,79,0.90) !important;
    box-shadow: 0 16px 40px rgba(0,0,0,0.22) !important;
    overflow: hidden;
}

.veiculos-form-area {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.veiculos-form-content h3 {
    color: #ffffff;
    margin-bottom: 18px;
    font-size: 24px;
}

.veiculos-form,
.veiculos-filtro-form {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px !important;
    padding: 18px !important;
    border-radius: 22px !important;
    background: rgba(255,255,255,0.045) !important;
    border: 1px solid rgba(255,255,255,0.08);
}

.veiculos-form input,
.veiculos-form select,
.veiculos-filtro-form input,
.veiculos-filtro-form select {
    width: 100% !important;
    min-height: 48px;
    padding: 14px 16px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    background: rgba(255,255,255,0.07) !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px !important;
    outline: none;
}

.veiculos-form select option,
.veiculos-filtro-form select option {
    background: #102858;
    color: #ffffff;
}

.veiculos-form input::placeholder,
.veiculos-filtro-form input::placeholder {
    color: #9eb5f5;
}

.veiculos-form input:focus,
.veiculos-form select:focus,
.veiculos-filtro-form input:focus,
.veiculos-filtro-form select:focus {
    border-color: rgba(93,146,255,0.70) !important;
    box-shadow: 0 0 0 3px rgba(51,117,250,0.18);
}

.veiculos-save-btn,
.veiculos-filtro-form .btn-filtrar,
.veiculos-filtro-form .btn-preview {
    min-height: 48px;
    border-radius: 14px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}

.veiculos-tabela tbody tr {
    background: rgba(255,255,255,0.035);
    border-bottom: 10px solid rgba(13,34,79,0.90);
}

.veiculos-tabela tbody td:first-child {
    border-radius: 16px 0 0 16px;
}

.veiculos-tabela tbody td:last-child {
    border-radius: 0 16px 16px 0;
}

.veiculos-status-pill,
.veiculos-manutencao-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 14px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
    border: 1px solid transparent;
}

.veiculos-status-ativo,
.veiculos-manutencao-pill.status-aso-valido {
    background: rgba(16,185,129,0.16);
    color: #a7f3d0;
    border-color: rgba(16,185,129,0.34);
}

.veiculos-status-inativo,
.veiculos-manutencao-pill.status-aso-vencido {
    background: rgba(248,113,113,0.16);
    color: #fecaca;
    border-color: rgba(248,113,113,0.34);
}

.veiculos-manutencao-pill.status-aso-alerta {
    background: rgba(245,158,11,0.16);
    color: #fde68a;
    border-color: rgba(245,158,11,0.34);
}

.veiculos-action-btn,
.veiculos-lista-card .tabela-acoes a.veiculos-action-btn,
.veiculos-alertas-card .tabela-acoes a.veiculos-action-btn {
    min-width: 108px;
    min-height: 40px;
    padding: 10px 14px;
    margin: 0 !important;
    border-radius: 14px;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    transition: transform .18s ease, box-shadow .18s ease;
}

.veiculos-action-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 24px rgba(0,0,0,0.22);
}

.veiculos-action-editar {
    background: linear-gradient(135deg, #4f8cff, #2f6ef6) !important;
    color: #ffffff !important;
}

.veiculos-action-detalhes {
    background: #f8fafc !important;
    color: #0f234e !important;
    border-color: rgba(203,213,225,0.72) !important;
}

.veiculos-detalhe-title {
    align-items: flex-start !important;
    flex-wrap: wrap;
}

.veiculos-detalhe-card .dashboard-grupo-titulo {
    margin-top: 30px;
}

@media(max-width: 1100px) {
    .veiculos-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .veiculos-form,
    .veiculos-filtro-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media(max-width: 768px) {
    .veiculos-hero {
        flex-direction: column;
        padding: 24px;
    }

    .veiculos-hero-actions {
        align-items: stretch;
        min-width: 0;
    }

    .veiculos-primary-action,
    .veiculos-secondary-action,
    .veiculos-inline-action {
        width: 100%;
    }

    .veiculos-kpi-grid,
    .veiculos-form,
    .veiculos-filtro-form {
        grid-template-columns: 1fr;
    }

    .veiculos-action-btn {
        flex: 1 1 110px;
    }
}

/* =========================================================
   CADASTROS / HOLERITES - VISUAL PROFISSIONAL
   ========================================================= */
.holerites-admin-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.holerites-admin-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(58, 126, 255, 0.34), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.holerites-admin-hero::after {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -80px;
    width: 230px;
    height: 230px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.holerites-admin-hero-info,
.holerites-admin-hero-actions {
    position: relative;
    z-index: 1;
}

.holerites-admin-eyebrow,
.holerites-admin-eyebrow-card {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.holerites-admin-eyebrow-card {
    background: rgba(51,117,250,0.16);
    color: #b9ceff;
}

.holerites-admin-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.holerites-admin-hero p {
    max-width: 760px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.holerites-admin-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 220px;
    justify-content: center;
}

.holerites-admin-primary-action,
.holerites-admin-secondary-action,
.holerites-admin-btn-primary,
.holerites-admin-btn-light,
.holerites-admin-btn-download {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.holerites-admin-primary-action,
.holerites-admin-btn-primary {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.holerites-admin-secondary-action {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.holerites-admin-primary-action:hover,
.holerites-admin-secondary-action:hover,
.holerites-admin-btn-primary:hover,
.holerites-admin-btn-light:hover,
.holerites-admin-btn-download:hover {
    transform: translateY(-2px);
}

.holerites-admin-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.holerites-admin-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
}

.holerites-admin-kpi-card.destaque {
    background: linear-gradient(135deg, rgba(51,117,250,0.35), rgba(13,34,79,0.92));
}

.holerites-admin-kpi-card.alerta {
    background: linear-gradient(135deg, rgba(13,148,136,0.26), rgba(13,34,79,0.92));
}

.holerites-admin-kpi-card.neutro {
    background: linear-gradient(135deg, rgba(148,163,184,0.20), rgba(13,34,79,0.92));
}

.holerites-admin-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.holerites-admin-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.holerites-admin-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.holerites-admin-action-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.holerites-admin-panel {
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    box-shadow: 0 16px 40px rgba(0,0,0,0.22);
    overflow: hidden;
}

.holerites-admin-panel summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 24px;
    min-height: 150px;
    position: relative;
}

.holerites-admin-panel summary::-webkit-details-marker {
    display: none;
}

.holerites-admin-panel summary::after {
    content: "+";
    position: absolute;
    right: 22px;
    top: 22px;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.10);
    color: #ffffff;
    font-size: 23px;
    font-weight: 900;
}

.holerites-admin-panel[open] summary::after {
    content: "−";
}

.holerites-admin-panel summary span {
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(51,117,250,0.16);
    color: #aecaFF;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.holerites-admin-panel summary strong {
    color: #ffffff;
    font-size: 22px;
    margin-top: 4px;
}

.holerites-admin-panel summary small {
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.45;
    max-width: 360px;
}

.holerites-admin-panel-content {
    padding: 0 24px 24px;
}

.holerites-admin-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.holerites-admin-form-full {
    grid-column: 1 / -1;
}

.holerites-admin-form label {
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 800;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.holerites-admin-form input {
    width: 100%;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    border-radius: 16px;
    min-height: 48px;
    padding: 13px 15px;
    font-family: 'Montserrat', sans-serif;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.holerites-admin-form input:focus {
    border-color: rgba(93,146,255,0.80);
    box-shadow: 0 0 0 4px rgba(51,117,250,0.12);
}

.holerites-admin-form input::placeholder {
    color: #8ea5dc;
}

.holerites-admin-form-actions {
    display: flex;
    align-items: end;
    gap: 10px;
}

.holerites-admin-list-card {
    padding: 24px;
    border-radius: 26px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 16px 44px rgba(0,0,0,0.24);
}

.holerites-admin-list-topo {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.holerites-admin-list-topo h3 {
    color: #ffffff;
    font-size: 24px;
    margin: 0 0 6px;
}

.holerites-admin-list-topo p {
    color: #b8c7f3;
    margin: 0;
}

.holerites-admin-lista {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.holerites-admin-item {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.holerites-admin-item-icon {
    width: 50px;
    height: 50px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(239,68,68,0.34), rgba(51,117,250,0.22));
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.06em;
}

.holerites-admin-item-title {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.holerites-admin-item-title strong {
    color: #ffffff;
    font-size: 17px;
}

.holerites-admin-referencia-pill {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(37,211,102,0.15);
    color: #a7f3d0;
    border: 1px solid rgba(37,211,102,0.26);
    font-size: 12px;
    font-weight: 900;
}

.holerites-admin-item-meta span {
    display: flex;
    flex-direction: column;
    gap: 3px;
    color: #dce5ff;
    font-size: 13px;
    overflow-wrap: anywhere;
}

.holerites-admin-item-meta small {
    color: #99b7ff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.holerites-admin-acoes {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.holerites-admin-btn-light {
    color: #0f234e;
    background: #f8fafc;
    border: 1px solid rgba(203, 213, 225, 0.72);
    min-height: 40px;
}

.holerites-admin-btn-download {
    color: #ffffff;
    background: linear-gradient(135deg, #3375FA, #215bd6);
    min-height: 40px;
}

.holerites-admin-empty {
    padding: 22px;
    border-radius: 18px;
    color: #d7fbf6;
    background: rgba(255,255,255,0.045);
    border: 1px dashed rgba(255,255,255,0.16);
}

.holerites-admin-empty strong {
    display: block;
    margin-bottom: 5px;
    color: #ffffff;
}

.holerites-admin-empty p {
    color: #b8c7f3;
    margin: 0;
}

@media(max-width: 1100px) {
    .holerites-admin-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .holerites-admin-action-grid,
    .holerites-admin-form {
        grid-template-columns: 1fr;
    }

    .holerites-admin-form-actions {
        align-items: stretch;
    }
}

@media(max-width: 768px) {
    .holerites-admin-hero {
        flex-direction: column;
        padding: 24px;
    }

    .holerites-admin-hero-actions {
        min-width: 0;
        align-items: stretch;
    }

    .holerites-admin-kpi-grid {
        grid-template-columns: 1fr;
    }

    .holerites-admin-item {
        grid-template-columns: 1fr;
        align-items: flex-start;
    }

    .holerites-admin-acoes {
        width: 100%;
        justify-content: stretch;
    }

    .holerites-admin-acoes a {
        flex: 1 1 130px;
    }
}


/* VEÍCULOS - CONFIGURAÇÃO DE TROCA DE ÓLEO */
.veiculos-form-note {
    grid-column: 1 / -1;
    padding: 14px 16px;
    border-radius: 16px;
    background: rgba(51, 117, 250, 0.12);
    border: 1px dashed rgba(147, 197, 253, 0.30);
    color: #dbeafe;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 600;
}

.veiculos-manutencao-config-pill {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    min-width: 112px;
    padding: 8px 12px;
    border-radius: 14px;
    background: rgba(59, 130, 246, 0.15);
    color: #dbeafe;
    border: 1px solid rgba(96, 165, 250, 0.32);
    font-size: 13px;
    font-weight: 900;
    line-height: 1.2;
}

.veiculos-manutencao-config-pill small {
    color: #93c5fd;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.veiculos-mini-manutencao {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.30), rgba(13, 34, 79, 0.92)) !important;
}

.veiculos-alertas-card td small {
    color: #93c5fd;
    font-weight: 800;
}


/* =========================================================
   SISTEMA / LOGS - VISUAL PROFISSIONAL
   ========================================================= */
.logs-sistema-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.logs-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(96, 165, 250, 0.28), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.logs-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -95px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.logs-hero-info,
.logs-hero-actions {
    position: relative;
    z-index: 1;
}

.logs-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.logs-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.logs-hero p {
    max-width: 760px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.logs-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.logs-primary-action,
.logs-secondary-action,
.logs-btn-primary,
.logs-btn-secondary {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
    font-family: 'Montserrat', sans-serif;
}

.logs-primary-action,
.logs-btn-primary {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.logs-secondary-action,
.logs-btn-secondary {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.logs-btn-primary {
    background: linear-gradient(135deg, #ffffff, #dbeafe);
}

.logs-btn-secondary {
    background: rgba(255,255,255,0.08);
}

.logs-primary-action:hover,
.logs-secondary-action:hover,
.logs-btn-primary:hover,
.logs-btn-secondary:hover {
    transform: translateY(-2px);
}

.logs-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.logs-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
}

.logs-kpi-card.destaque { background: linear-gradient(135deg, rgba(51,117,250,0.35), rgba(13,34,79,0.92)); }
.logs-kpi-card.perigo { background: linear-gradient(135deg, rgba(239,68,68,0.26), rgba(13,34,79,0.92)); }
.logs-kpi-card.neutro { background: linear-gradient(135deg, rgba(148,163,184,0.22), rgba(13,34,79,0.92)); }
.logs-kpi-card.alerta { background: linear-gradient(135deg, rgba(245,158,11,0.24), rgba(13,34,79,0.92)); }

.logs-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.logs-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.logs-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.logs-panel {
    padding: 24px;
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 16px 40px rgba(0,0,0,0.22);
}

.logs-panel-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

.logs-panel-title span {
    display: inline-flex;
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(96,165,250,0.14);
    color: #bfdbfe;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.logs-panel-title h3 {
    margin: 0;
    color: #ffffff;
    font-size: 23px;
}

.logs-panel-title small {
    color: #b8c7f3;
    font-weight: 700;
    text-align: right;
    line-height: 1.45;
}

.logs-filter-form {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
    gap: 14px;
    align-items: end;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.logs-filter-form label {
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 800;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.logs-filter-form input,
.logs-filter-form select {
    width: 100%;
    min-height: 48px;
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 15px;
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    padding: 0 14px;
    font-size: 14px;
    font-weight: 700;
    outline: none;
    font-family: 'Montserrat', sans-serif;
}

.logs-filter-form select option {
    background: #0d224f;
    color: #ffffff;
}

.logs-filter-form input[type="date"] {
    color-scheme: dark;
}

.logs-filter-form input:focus,
.logs-filter-form select:focus {
    border-color: rgba(96,165,250,0.75);
    box-shadow: 0 0 0 3px rgba(96,165,250,0.15);
}

.logs-filter-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: nowrap;
}

.logs-table-scroll {
    width: 100%;
    overflow-x: auto;
}

.logs-modern-table {
    width: 100%;
    min-width: 1100px;
    border-collapse: separate;
    border-spacing: 0 10px;
}

.logs-modern-table thead th {
    color: #9fb3e8;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    padding: 0 14px 8px;
    text-align: left;
}

.logs-modern-table tbody tr {
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.09);
    transition: 0.22s ease;
}

.logs-modern-table tbody tr:hover {
    background: rgba(255,255,255,0.085);
    transform: translateY(-1px);
}

.logs-modern-table tbody td {
    padding: 16px 14px;
    color: #eaf1ff;
    font-size: 13px;
    line-height: 1.45;
    border-top: 1px solid rgba(255,255,255,0.07);
    border-bottom: 1px solid rgba(255,255,255,0.07);
    vertical-align: middle;
}

.logs-modern-table tbody td:first-child {
    border-left: 1px solid rgba(255,255,255,0.07);
    border-radius: 16px 0 0 16px;
}

.logs-modern-table tbody td:last-child {
    border-right: 1px solid rgba(255,255,255,0.07);
    border-radius: 0 16px 16px 0;
}

.logs-modern-table td strong {
    display: block;
    color: #ffffff;
    font-size: 14px;
    margin-bottom: 3px;
}

.logs-modern-table td small {
    color: #aebff0;
    font-size: 12px;
    font-weight: 700;
}

.logs-acao-pill,
.logs-modulo-pill,
.logs-ip-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 7px 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
    border: 1px solid transparent;
}

.logs-acao-neutra { background: rgba(148,163,184,0.16); color: #e2e8f0; border-color: rgba(148,163,184,0.32); }
.logs-acao-erro,
.logs-acao-perigo { background: rgba(239,68,68,0.16); color: #fecaca; border-color: rgba(239,68,68,0.34); }
.logs-acao-acesso { background: rgba(96,165,250,0.16); color: #bfdbfe; border-color: rgba(96,165,250,0.34); }
.logs-acao-envio { background: rgba(45,212,191,0.16); color: #99f6e4; border-color: rgba(45,212,191,0.34); }
.logs-acao-operacao { background: rgba(245,158,11,0.16); color: #fde68a; border-color: rgba(245,158,11,0.34); }
.logs-acao-edicao { background: rgba(168,85,247,0.16); color: #e9d5ff; border-color: rgba(168,85,247,0.34); }

.logs-modulo-pill {
    background: rgba(255,255,255,0.08);
    color: #dbeafe;
    border-color: rgba(255,255,255,0.13);
}

.logs-ip-pill {
    background: rgba(15,23,42,0.34);
    color: #cbd5e1;
    border-color: rgba(148,163,184,0.20);
    text-transform: none;
    letter-spacing: 0;
}

.logs-descricao-cell {
    min-width: 340px;
    max-width: 520px;
    color: #dbe6ff !important;
}

.logs-empty {
    text-align: center;
    padding: 34px !important;
}

.logs-empty strong {
    display: block;
    margin-bottom: 6px;
}

.logs-empty span {
    color: #aebff0;
}

@media(max-width: 1200px) {
    .logs-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .logs-filter-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .logs-filter-actions {
        grid-column: 1 / -1;
    }
}

@media(max-width: 768px) {
    .logs-hero {
        flex-direction: column;
        padding: 24px;
    }

    .logs-hero-actions {
        min-width: 0;
        width: 100%;
    }

    .logs-primary-action,
    .logs-secondary-action {
        width: 100%;
    }

    .logs-kpi-grid,
    .logs-filter-form {
        grid-template-columns: 1fr;
    }

    .logs-panel {
        padding: 18px;
    }

    .logs-panel-title {
        flex-direction: column;
    }

    .logs-panel-title small {
        text-align: left;
    }

    .logs-filter-actions {
        flex-direction: column;
        align-items: stretch;
    }
}

/* =========================================================
   SISTEMA / WHATSAPP E AVISOS - VISUAL PROFISSIONAL
   ========================================================= */
.whatsapp-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.whatsapp-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(37, 211, 102, 0.26), transparent 34%),
        linear-gradient(135deg, rgba(6, 34, 84, 0.98), rgba(10, 89, 125, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.whatsapp-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.whatsapp-hero > div {
    position: relative;
    z-index: 1;
}

.whatsapp-eyebrow,
.whatsapp-section-pill {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9fff0;
    border: 1px solid rgba(255,255,255,0.14);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.whatsapp-eyebrow {
    margin-bottom: 14px;
}

.whatsapp-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.whatsapp-hero p {
    max-width: 760px;
    color: #d7f8ef;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.whatsapp-hero-actions {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
    min-width: 210px;
}

.whatsapp-hero-btn {
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
}

.whatsapp-hero-btn.primary {
    color: #062254;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.whatsapp-hero-btn.secondary {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.whatsapp-hero-btn:hover {
    transform: translateY(-2px);
}

.whatsapp-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.whatsapp-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
}

.whatsapp-kpi-card.destaque {
    background: linear-gradient(135deg, rgba(51,117,250,0.32), rgba(13,34,79,0.92));
}

.whatsapp-kpi-card.alerta {
    background: linear-gradient(135deg, rgba(245,158,11,0.25), rgba(13,34,79,0.92));
}

.whatsapp-kpi-card.sucesso {
    background: linear-gradient(135deg, rgba(16,185,129,0.26), rgba(13,34,79,0.92));
}

.whatsapp-kpi-card.perigo {
    background: linear-gradient(135deg, rgba(248,113,113,0.24), rgba(13,34,79,0.92));
}

.whatsapp-kpi-card span {
    display: block;
    color: #b8c9f7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px;
}

.whatsapp-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.whatsapp-kpi-card small {
    display: block;
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

.whatsapp-modern-card,
.whatsapp-modern-form > .dashboard-card,
.whatsapp-template-area > .dashboard-card,
.whatsapp-historico-card {
    border-radius: 24px !important;
    background: rgba(13,34,79,0.92) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    box-shadow: 0 16px 40px rgba(0,0,0,0.22) !important;
    overflow: hidden;
}

.whatsapp-page .card-title {
    gap: 14px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.whatsapp-page .card-title h3 {
    color: #ffffff;
    font-size: 22px;
}

.whatsapp-acao-rapida-texto {
    color: #dbeafe !important;
    line-height: 1.55;
}

.whatsapp-acoes-rapidas {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px !important;
}

.whatsapp-acao-rapida-btn {
    min-height: 118px;
    border-radius: 20px !important;
    background: linear-gradient(135deg, rgba(15,58,129,0.92), rgba(17,83,144,0.72)) !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.18);
    color: #ffffff !important;
}

.whatsapp-acao-rapida-btn small {
    color: #9ee6c4 !important;
}

.whatsapp-acao-rapida-btn.destaque {
    background: linear-gradient(135deg, rgba(37,211,102,0.28), rgba(15,58,129,0.90)) !important;
}

.whatsapp-variaveis-ajuda {
    margin-top: 16px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255,255,255,0.055);
    border: 1px dashed rgba(255,255,255,0.14);
    color: #d7fbf6;
}

.whatsapp-variaveis-ajuda code {
    display: inline-flex;
    margin: 3px;
    padding: 4px 8px;
    border-radius: 999px;
    color: #08204a;
    background: #d9fff0;
    font-size: 12px;
    font-weight: 900;
}

.whatsapp-modern-form,
.whatsapp-template-area {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr) !important;
    gap: 22px !important;
    align-items: start;
}

.whatsapp-page .upload-form {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 20px;
    padding: 18px;
}

.whatsapp-page label {
    color: #dbeafe;
    font-weight: 900;
}

.whatsapp-admin-select,
.whatsapp-admin-form textarea,
.whatsapp-template-form textarea,
.whatsapp-page input[type="text"],
.whatsapp-page input[type="date"] {
    width: 100%;
    border: 1px solid rgba(255,255,255,0.12) !important;
    background: rgba(255,255,255,0.07) !important;
    color: #ffffff !important;
    border-radius: 15px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.whatsapp-admin-select:focus,
.whatsapp-admin-form textarea:focus,
.whatsapp-template-form textarea:focus,
.whatsapp-page input[type="text"]:focus,
.whatsapp-page input[type="date"]:focus {
    border-color: rgba(37,211,102,0.60) !important;
    box-shadow: 0 0 0 4px rgba(37,211,102,0.12) !important;
}

.whatsapp-admin-ajuda {
    color: #aebff0 !important;
    line-height: 1.45;
}

.whatsapp-admin-modelos-rapidos,
.whatsapp-admin-acoes {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.whatsapp-admin-mini-btn,
.whatsapp-admin-chip,
.whatsapp-admin-btn {
    border-radius: 13px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}

.whatsapp-admin-btn,
.whatsapp-page .btn-filtrar {
    background: linear-gradient(135deg, #25D366, #16a34a) !important;
    color: #052e16 !important;
    border: none !important;
    box-shadow: 0 14px 28px rgba(37,211,102,0.16);
}

.whatsapp-page .btn-preview,
.whatsapp-admin-mini-btn.secundario {
    background: rgba(255,255,255,0.08) !important;
    color: #dbeafe !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
}

.whatsapp-admin-destinatarios {
    max-height: 520px;
    padding-right: 5px;
}

.whatsapp-admin-destinatario {
    border-radius: 18px !important;
    background: rgba(255,255,255,0.045) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
}

.whatsapp-admin-destinatario:hover {
    background: rgba(37,211,102,0.10) !important;
    border-color: rgba(37,211,102,0.30) !important;
}

.whatsapp-admin-destinatario strong,
.whatsapp-template-item strong,
.whatsapp-admin-link-item strong {
    color: #ffffff !important;
}

.whatsapp-admin-destinatario span,
.whatsapp-template-item span,
.whatsapp-admin-link-item span {
    color: #cbd5e1 !important;
}

.whatsapp-admin-destinatario small,
.whatsapp-template-item small {
    color: #9ee6c4 !important;
}

.whatsapp-admin-link-item,
.whatsapp-template-item {
    border-radius: 18px !important;
    background: rgba(255,255,255,0.045) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
}

.whatsapp-template-item.inativo {
    opacity: .66;
    filter: grayscale(.25);
}

.whatsapp-historico-card {
    margin-top: 0 !important;
}

.whatsapp-historico-filtros {
    display: grid !important;
    grid-template-columns: 180px 160px 160px minmax(220px, 1fr) auto;
    gap: 14px !important;
    align-items: end;
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    margin-bottom: 20px;
}

.whatsapp-historico-botoes {
    display: flex;
    gap: 10px;
    align-items: center;
}

.whatsapp-historico-card .dashboard-tabela {
    border-collapse: separate;
    border-spacing: 0 10px;
}

.whatsapp-historico-card .dashboard-tabela thead th {
    background: rgba(255,255,255,0.07);
    color: #dbeafe;
    border: none;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.whatsapp-historico-card .dashboard-tabela tbody td {
    background: rgba(255,255,255,0.045);
    border-top: 1px solid rgba(255,255,255,0.07);
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

.whatsapp-historico-card .dashboard-tabela tbody td:first-child {
    border-left: 1px solid rgba(255,255,255,0.07);
    border-radius: 16px 0 0 16px;
}

.whatsapp-historico-card .dashboard-tabela tbody td:last-child {
    border-right: 1px solid rgba(255,255,255,0.07);
    border-radius: 0 16px 16px 0;
}

.whatsapp-status-pill {
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.whatsapp-status-ok {
    background: rgba(16,185,129,.18) !important;
    color: #a7f3d0 !important;
    border: 1px solid rgba(16,185,129,.34) !important;
}

.whatsapp-status-pendente {
    background: rgba(245,158,11,.18) !important;
    color: #fde68a !important;
    border: 1px solid rgba(245,158,11,.34) !important;
}

.whatsapp-status-erro {
    background: rgba(248,113,113,.18) !important;
    color: #fecaca !important;
    border: 1px solid rgba(248,113,113,.34) !important;
}

.whatsapp-status-neutro {
    background: rgba(148,163,184,.18) !important;
    color: #e2e8f0 !important;
    border: 1px solid rgba(148,163,184,.34) !important;
}

.whatsapp-msg-detalhe summary {
    color: #9ee6c4;
    font-weight: 900;
    cursor: pointer;
}

.whatsapp-mensagem-preparada,
.whatsapp-msg-detalhe div {
    margin-top: 10px;
    padding: 12px;
    border-radius: 14px;
    background: rgba(255,255,255,0.06);
    color: #e5f7ff;
    line-height: 1.5;
}

@media(max-width: 1180px) {
    .whatsapp-kpi-grid,
    .whatsapp-acoes-rapidas {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .whatsapp-modern-form,
    .whatsapp-template-area,
    .whatsapp-historico-filtros {
        grid-template-columns: 1fr !important;
    }
}

@media(max-width: 768px) {
    .whatsapp-hero {
        flex-direction: column;
        padding: 24px;
    }

    .whatsapp-hero-actions {
        min-width: 0;
    }

    .whatsapp-hero-btn {
        width: 100%;
    }

    .whatsapp-kpi-grid,
    .whatsapp-acoes-rapidas {
        grid-template-columns: 1fr !important;
    }

    .whatsapp-page .dashboard-card {
        padding: 18px !important;
    }

    .whatsapp-historico-botoes,
    .whatsapp-template-acoes,
    .whatsapp-link-acoes {
        flex-direction: column;
        align-items: stretch;
    }

    .whatsapp-admin-btn,
    .whatsapp-admin-mini-btn,
    .whatsapp-page .btn-filtrar,
    .whatsapp-page .btn-preview {
        width: 100%;
        justify-content: center;
    }
}

/* =========================================================
   COLABORADOR / PAINEL - VISUAL PROFISSIONAL
   ========================================================= */
.colaborador-dashboard-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.colaborador-dashboard-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(58, 126, 255, 0.34), transparent 34%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.colaborador-dashboard-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.colaborador-dashboard-hero-info,
.colaborador-dashboard-hero-actions {
    position: relative;
    z-index: 1;
}

.colaborador-dashboard-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.colaborador-dashboard-hero h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 0 0 12px;
}

.colaborador-dashboard-hero p {
    max-width: 720px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.colaborador-dashboard-hero-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 210px;
    justify-content: center;
}

.colaborador-dashboard-primary-action,
.colaborador-dashboard-secondary-action {
    border: none;
    border-radius: 16px;
    padding: 14px 18px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: 0.25s ease;
}

.colaborador-dashboard-primary-action {
    color: #08204a;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

.colaborador-dashboard-secondary-action {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
}

.colaborador-dashboard-primary-action:hover,
.colaborador-dashboard-secondary-action:hover {
    transform: translateY(-2px);
}

.colaborador-dashboard-kpis {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.colaborador-dashboard-kpis .dashboard-card {
    min-height: 178px;
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 16px 42px rgba(0,0,0,0.23);
}

.colaborador-dashboard-kpis .comissao-card {
    position: relative;
    overflow: hidden;
    text-align: left;
    background: linear-gradient(135deg, rgba(16,185,129,0.20), rgba(13,34,79,0.94));
}

.colaborador-dashboard-kpis .comissao-card::before {
    content: "";
    position: absolute;
    width: 190px;
    height: 190px;
    border-radius: 999px;
    right: -70px;
    top: -80px;
    background: rgba(52,211,153,0.14);
}

.colaborador-dashboard-kpis .dash-icon,
.colaborador-dashboard-kpis h3,
.colaborador-dashboard-kpis p,
.colaborador-dashboard-kpis .comissao-extra {
    position: relative;
    z-index: 1;
}

.colaborador-dashboard-kpis .dash-icon {
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    background: rgba(255,255,255,0.10);
    margin-bottom: 16px;
}

.colaborador-dashboard-kpis .mini-card h3 {
    color: #ffffff;
    font-size: 34px;
    line-height: 1;
    margin-bottom: 10px;
}

.colaborador-dashboard-kpis .mini-card p {
    color: #c9d8ff;
    font-weight: 700;
}

.colaborador-modern-panel {
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 26px;
    background: rgba(13,34,79,0.90);
    box-shadow: 0 18px 44px rgba(0,0,0,0.23);
    overflow: hidden;
}

.colaborador-modern-panel .card-title {
    align-items: center;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    padding-bottom: 18px;
}

.colaborador-modern-panel .card-title h3 {
    color: #ffffff;
    font-size: 22px;
    letter-spacing: -0.02em;
}

.colaborador-comissao-filter {
    display: flex;
    align-items: flex-end;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 22px;
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.colaborador-comissao-filter label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #dbe6ff;
    font-size: 13px;
    font-weight: 900;
}

.colaborador-comissao-filter input[type="month"] {
    width: 260px;
    min-height: 46px;
    padding: 13px 15px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    outline: none;
}

.colaborador-comissao-filter .btn-filtrar {
    min-height: 46px;
    border-radius: 14px;
    margin: 0;
}

.colaborador-modern-panel .dashboard-tabela {
    border-collapse: separate;
    border-spacing: 0 10px;
}

.colaborador-modern-panel .dashboard-tabela thead th {
    background: rgba(255,255,255,0.06);
    color: #9ebcff;
    border: 0;
}

.colaborador-modern-panel .dashboard-tabela tbody tr {
    background: rgba(255,255,255,0.045);
}

.colaborador-modern-panel .dashboard-tabela tbody td {
    border-top: 1px solid rgba(255,255,255,0.07);
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

.colaborador-modern-panel .dashboard-tabela tbody td:first-child {
    border-left: 1px solid rgba(255,255,255,0.07);
    border-radius: 16px 0 0 16px;
}

.colaborador-modern-panel .dashboard-tabela tbody td:last-child {
    border-right: 1px solid rgba(255,255,255,0.07);
    border-radius: 0 16px 16px 0;
}

.colaborador-dashboard-bottom {
    display: grid;
    grid-template-columns: 1fr;
    gap: 22px;
    align-items: start;
}

.colaborador-agenda-card .agenda-list {
    gap: 14px;
}

.colaborador-agenda-card .agenda-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.colaborador-agenda-card .agenda-item-hoje {
    border-color: rgba(93,146,255,0.45);
    background: rgba(51,117,250,0.13);
}

.colaborador-agenda-card .agenda-item strong {
    color: #ffffff;
    font-size: 16px;
}

.colaborador-agenda-card .agenda-item span,
.colaborador-agenda-card .agenda-obs {
    color: #c4d2fb;
}

.colaborador-atalhos-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

.colaborador-atalhos-grid .side-card {
    min-height: 130px;
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 16px 36px rgba(0,0,0,0.20);
    transition: 0.25s ease;
}

.colaborador-atalhos-grid .side-card:hover {
    transform: translateY(-3px);
    border-color: rgba(93,146,255,0.35);
}

.colaborador-atalhos-grid .side-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.09);
}

.colaborador-atalhos-grid .side-card h3 {
    color: #ffffff;
}

.colaborador-atalhos-grid .side-card p {
    color: #c4d2fb;
}

.colaborador-dashboard-page + .holerites-box,
.colaborador-manuais-box {
    margin-top: 26px;
}

.colaborador-modern-panel .holerite-item,
.colaborador-manuais-box .arquivo-item {
    border-radius: 18px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

@media(max-width: 1100px) {
    .colaborador-dashboard-bottom {
        grid-template-columns: 1fr;
    }
}

@media(max-width: 768px) {
    .colaborador-dashboard-hero {
        flex-direction: column;
        padding: 24px;
    }

    .colaborador-dashboard-hero-actions {
        min-width: 0;
        width: 100%;
    }

    .colaborador-dashboard-primary-action,
    .colaborador-dashboard-secondary-action {
        width: 100%;
    }

    .colaborador-dashboard-kpis {
        grid-template-columns: 1fr;
    }

    .colaborador-comissao-filter,
    .colaborador-agenda-card .agenda-item {
        grid-template-columns: 1fr;
    }

    .colaborador-comissao-filter input[type="month"] {
        width: 100%;
    }

    .colaborador-comissao-filter .btn-filtrar {
        width: 100%;
    }
}


/* COLABORADOR / PAINEL - AJUSTES REGIONAIS E ATALHOS */
.colaborador-dashboard-bottom .colaborador-agenda-card {
    width: 100%;
}

.colaborador-atalhos-grid {
    width: 100%;
}

.colaborador-atalhos-grid .side-card {
    padding: 22px;
}

.colaborador-empty-state {
    margin-top: 12px;
    border: 1px dashed rgba(255,255,255,0.14);
    background: rgba(255,255,255,0.045);
    color: #c9d8ff;
}

@media(max-width: 768px) {
    .colaborador-atalhos-grid {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   ÁREA DO CLIENTE - VISUAL PROFISSIONAL
   ========================================================= */
.cliente-area-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.cliente-hero-panel {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(37, 211, 102, 0.20), transparent 35%),
        linear-gradient(135deg, rgba(8, 27, 67, 0.98), rgba(15, 49, 111, 0.94));
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 22px 55px rgba(0,0,0,0.28);
}

.cliente-hero-panel::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 250px;
    height: 250px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    pointer-events: none;
}

.cliente-hero-info,
.cliente-hero-card {
    position: relative;
    z-index: 1;
}

.cliente-eyebrow,
.cliente-doc-tipo,
.cliente-panel-head > div > span,
.cliente-action-card > span,
.cliente-kpi-card > span {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    color: #d9e6ff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cliente-hero-info h2 {
    color: #ffffff;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.06;
    margin: 14px 0 12px;
}

.cliente-hero-info p {
    max-width: 760px;
    color: #c9d8ff;
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
}

.cliente-hero-card {
    min-width: 280px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(255,255,255,0.10);
    border: 1px solid rgba(255,255,255,0.14);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.05);
}

.cliente-hero-card span {
    color: #aecaFF;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.cliente-hero-card strong {
    color: #ffffff;
    font-size: 19px;
    line-height: 1.25;
}

.cliente-hero-card small {
    color: #c8d7ff;
    font-weight: 700;
}

.cliente-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.cliente-kpi-card {
    min-height: 126px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(13,34,79,0.90);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.20);
}

.cliente-kpi-card.destaque {
    background: linear-gradient(135deg, rgba(51,117,250,0.35), rgba(13,34,79,0.92));
}

.cliente-kpi-card.alerta {
    background: linear-gradient(135deg, rgba(13,148,136,0.26), rgba(13,34,79,0.92));
}

.cliente-kpi-card > span {
    margin-bottom: 10px;
    background: rgba(51,117,250,0.16);
    color: #aecaFF;
}

.cliente-kpi-card strong {
    display: block;
    color: #ffffff;
    font-size: 31px;
    line-height: 1;
    margin-bottom: 10px;
}

.cliente-kpi-card small {
    color: #aebff0;
    font-size: 13px;
    line-height: 1.4;
}

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

.cliente-action-card {
    text-align: left;
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 24px;
    background: rgba(13,34,79,0.90);
    box-shadow: 0 16px 40px rgba(0,0,0,0.22);
    padding: 24px;
    min-height: 170px;
    text-decoration: none;
    cursor: pointer;
    transition: transform .22s ease, border-color .22s ease, background .22s ease;
}

.cliente-action-card:hover {
    transform: translateY(-3px);
    border-color: rgba(93,146,255,0.38);
    background: rgba(18,45,101,0.94);
}

.cliente-action-card > span {
    background: rgba(51,117,250,0.16);
    color: #aecaFF;
}

.cliente-action-card strong {
    display: block;
    color: #ffffff;
    font-size: 22px;
    margin: 16px 0 8px;
}

.cliente-action-card small {
    display: block;
    color: #b8c7f3;
    font-size: 14px;
    line-height: 1.45;
}

.cliente-whatsapp-card {
    background: linear-gradient(135deg, rgba(11,113,72,0.98), rgba(37,211,102,0.86));
}

.cliente-whatsapp-card > span {
    background: rgba(255,255,255,0.14);
    color: #e9fff1;
}

.cliente-documentos-box {
    border-radius: 26px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(13,34,79,0.78);
    box-shadow: 0 18px 45px rgba(0,0,0,0.24);
    overflow: hidden;
}

.cliente-documentos-content {
    padding: 26px !important;
}

.cliente-panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255,255,255,0.10);
}

.cliente-panel-head h3 {
    color: #ffffff;
    font-size: 25px;
    margin: 10px 0 6px;
}

.cliente-panel-head p {
    color: #b8c7f3;
    line-height: 1.5;
    margin: 0;
}

.cliente-panel-head > strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 14px;
    border-radius: 999px;
    color: #dbeafe;
    background: rgba(51,117,250,0.16);
    border: 1px solid rgba(51,117,250,0.30);
    white-space: nowrap;
}

.cliente-filtro-documentos {
    padding: 18px;
    margin-bottom: 20px;
    border-radius: 20px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
}

.cliente-filtro-documentos .filtro-linha {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) auto;
    gap: 12px;
    align-items: center;
}

.cliente-filtro-documentos select {
    width: 100%;
    min-height: 48px;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
    color: #ffffff;
    font-weight: 800;
    outline: none;
}

.cliente-filtro-documentos select option {
    color: #07152f;
}

.cliente-btn-filtrar,
.cliente-btn-preview,
.cliente-btn-download {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 16px;
    border-radius: 14px;
    border: 1px solid transparent;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease;
}

.cliente-btn-filtrar,
.cliente-btn-download {
    background: linear-gradient(135deg, #4f8cff, #2f6ef6);
    color: #ffffff;
    box-shadow: 0 10px 20px rgba(47,110,246,0.22);
}

.cliente-btn-preview {
    background: #f8fafc;
    color: #0f234e;
    border-color: rgba(203,213,225,0.70);
}

.cliente-btn-filtrar:hover,
.cliente-btn-preview:hover,
.cliente-btn-download:hover {
    transform: translateY(-2px);
}

.cliente-documentos-lista,
.cliente-relatorios-lista {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.cliente-documento-card,
.cliente-relatorio-card {
    border-radius: 22px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 30px rgba(0,0,0,0.16);
}

.cliente-documento-card {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    padding: 18px;
}

.cliente-documento-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: rgba(239,68,68,0.20);
    border: 1px solid rgba(239,68,68,0.34);
    font-size: 12px;
    font-weight: 900;
}

.cliente-documento-info {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cliente-doc-tipo {
    background: rgba(51,117,250,0.16);
    color: #aecaFF;
    padding: 5px 9px;
    font-size: 11px;
}

.cliente-documento-info strong,
.cliente-relatorio-topo strong {
    color: #ffffff;
    font-size: 17px;
    overflow-wrap: anywhere;
}

.cliente-documento-info small,
.cliente-relatorio-topo small,
.cliente-relatorio-footer span {
    color: #b8c7f3;
    overflow-wrap: anywhere;
}

.cliente-documento-acoes {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.cliente-paginacao-info {
    margin-bottom: 16px;
    padding: 13px 16px;
    border-radius: 16px;
    color: #dbeafe;
    background: rgba(51,117,250,0.12);
    border: 1px solid rgba(51,117,250,0.20);
}

.cliente-relatorio-card {
    padding: 20px;
}

.cliente-relatorio-topo {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255,255,255,0.10);
}

.cliente-relatorio-topo > div:first-child {
    display: flex;
    flex-direction: column;
    gap: 7px;
    min-width: 0;
}

.cliente-relatorio-data {
    white-space: nowrap;
    padding: 9px 12px;
    border-radius: 999px;
    color: #dbeafe;
    background: rgba(51,117,250,0.14);
    border: 1px solid rgba(51,117,250,0.26);
    font-size: 13px;
    font-weight: 900;
}

.cliente-relatorio-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 16px 0;
}

.cliente-relatorio-meta span,
.cliente-balanca-card,
.cliente-empty-inline {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 12px 14px;
    border-radius: 16px;
    color: #ffffff;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
    overflow-wrap: anywhere;
}

.cliente-relatorio-meta small,
.cliente-balanca-card span {
    color: #aecaFF;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.cliente-balancas-wrap {
    margin-top: 12px;
}

.cliente-balancas-wrap > strong {
    display: block;
    color: #ffffff;
    margin-bottom: 10px;
}

.cliente-balancas-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.cliente-balanca-card small {
    color: #dbeafe;
    line-height: 1.4;
}

.cliente-relatorio-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid rgba(255,255,255,0.10);
}

.cliente-paginacao {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 18px;
}

.cliente-empty-state {
    padding: 22px;
    border-radius: 18px;
    color: #d7fbf6;
    background: rgba(255,255,255,0.045);
    border: 1px dashed rgba(255,255,255,0.16);
}

.cliente-empty-state strong {
    display: block;
    margin-bottom: 5px;
    color: #ffffff;
}

@media(max-width: 1100px) {
    .cliente-kpi-grid,
    .cliente-action-grid,
    .cliente-balancas-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cliente-relatorio-meta {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media(max-width: 768px) {
    .cliente-hero-panel,
    .cliente-panel-head,
    .cliente-relatorio-topo,
    .cliente-relatorio-footer {
        flex-direction: column;
    }

    .cliente-hero-card {
        min-width: 0;
        width: 100%;
    }

    .cliente-kpi-grid,
    .cliente-action-grid,
    .cliente-relatorio-meta,
    .cliente-balancas-grid,
    .cliente-filtro-documentos .filtro-linha {
        grid-template-columns: 1fr;
    }

    .cliente-documento-card {
        grid-template-columns: 1fr;
    }

    .cliente-documento-acoes,
    .cliente-btn-filtrar,
    .cliente-btn-preview,
    .cliente-btn-download {
        width: 100%;
    }
}

/* ÁREA DO CLIENTE - CARD DO RELATÓRIO TÉCNICO REFINADO */
.cliente-relatorio-card-pro {
    position: relative;
    overflow: hidden;
    padding: 0 !important;
    border-radius: 26px !important;
    background:
        radial-gradient(circle at top right, rgba(51,117,250,0.22), transparent 34%),
        linear-gradient(135deg, rgba(13,34,79,0.96), rgba(10,28,65,0.92)) !important;
    border: 1px solid rgba(147,197,253,0.16) !important;
    box-shadow: 0 20px 44px rgba(0,0,0,0.24) !important;
}

.cliente-relatorio-card-pro::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 5px;
    background: linear-gradient(180deg, #60a5fa, #22c55e);
}

.cliente-relatorio-topo-pro {
    padding: 22px 24px 18px;
    border-bottom: 1px solid rgba(255,255,255,0.10) !important;
}

.cliente-relatorio-identidade {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
}

.cliente-relatorio-icon {
    width: 58px;
    height: 58px;
    min-width: 58px;
    border-radius: 19px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: linear-gradient(135deg, #3375FA, #1254c7);
    border: 1px solid rgba(255,255,255,0.18);
    box-shadow: 0 14px 30px rgba(51,117,250,0.24);
    font-size: 16px;
    font-weight: 950;
    letter-spacing: 0.04em;
}

.cliente-relatorio-titulo-wrap {
    display: flex;
    flex-direction: column;
    gap: 7px;
    min-width: 0;
}

.cliente-doc-tipo-pro {
    width: fit-content;
    border-radius: 999px;
    border: 1px solid rgba(147,197,253,0.22);
    background: rgba(51,117,250,0.18) !important;
    color: #bfdbfe !important;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap strong {
    color: #ffffff;
    font-size: clamp(19px, 2vw, 25px);
    line-height: 1.1;
}

.cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap small {
    color: #c8d7ff;
    font-weight: 650;
    line-height: 1.4;
}

.cliente-relatorio-status-wrap {
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    gap: 9px;
    white-space: nowrap;
}

.cliente-relatorio-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 31px;
    padding: 7px 12px;
    border-radius: 999px;
    color: #a7f3d0;
    background: rgba(16,185,129,0.16);
    border: 1px solid rgba(16,185,129,0.34);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.cliente-relatorio-meta-pro {
    padding: 18px 24px 0;
    margin: 0 !important;
}

.cliente-relatorio-meta-pro span {
    min-height: 76px;
    justify-content: center;
    background: rgba(255,255,255,0.055) !important;
    border-color: rgba(255,255,255,0.11) !important;
}

.cliente-relatorio-meta-pro .cliente-relatorio-valor {
    background: rgba(16,185,129,0.12) !important;
    border-color: rgba(16,185,129,0.24) !important;
    color: #dcfce7 !important;
    font-size: 17px;
    font-weight: 900;
}

.cliente-balancas-wrap-pro {
    margin: 18px 24px 0 !important;
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.09);
}

.cliente-balancas-titulo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 13px;
}

.cliente-balancas-titulo strong {
    color: #ffffff;
    font-size: 16px;
}

.cliente-balancas-titulo span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 10px;
    border-radius: 999px;
    color: #bfdbfe;
    background: rgba(51,117,250,0.14);
    border: 1px solid rgba(51,117,250,0.24);
    font-size: 12px;
    font-weight: 900;
}

.cliente-balancas-grid-pro {
    gap: 12px !important;
}

.cliente-balanca-card-pro {
    position: relative;
    gap: 8px !important;
    padding: 15px !important;
    background: rgba(8,25,59,0.72) !important;
    border-color: rgba(147,197,253,0.12) !important;
}

.cliente-balanca-card-pro span {
    color: #bfdbfe !important;
    font-size: 12px !important;
}

.cliente-balanca-card-pro small {
    display: flex;
    flex-direction: column;
    gap: 2px;
    color: #ffffff !important;
    font-weight: 750;
}

.cliente-balanca-card-pro small b {
    color: #93c5fd;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.cliente-empty-inline-pro {
    padding: 16px !important;
    background: rgba(245,158,11,0.10) !important;
    border-color: rgba(245,158,11,0.22) !important;
    color: #fde68a !important;
}

.cliente-relatorio-footer-pro {
    margin: 18px 24px 0 !important;
    padding: 17px 0 22px !important;
}

.cliente-relatorio-arquivo {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.cliente-relatorio-arquivo small {
    color: #93c5fd;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.cliente-relatorio-arquivo span {
    color: #dbeafe !important;
    font-size: 13px;
    overflow-wrap: anywhere;
}

.cliente-documento-acoes-pro a {
    min-width: 122px;
    min-height: 42px;
}

@media(max-width: 900px) {
    .cliente-relatorio-topo-pro,
    .cliente-relatorio-footer-pro,
    .cliente-balancas-titulo {
        align-items: flex-start;
        flex-direction: column;
    }

    .cliente-relatorio-status-wrap {
        align-items: flex-start;
        width: 100%;
    }
}

@media(max-width: 768px) {
    .cliente-relatorio-topo-pro {
        padding: 20px;
    }

    .cliente-relatorio-identidade {
        align-items: flex-start;
    }

    .cliente-relatorio-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        border-radius: 16px;
    }

    .cliente-relatorio-meta-pro {
        padding: 16px 20px 0;
    }

    .cliente-balancas-wrap-pro,
    .cliente-relatorio-footer-pro {
        margin-left: 20px !important;
        margin-right: 20px !important;
    }

    .cliente-documento-acoes-pro,
    .cliente-documento-acoes-pro a {
        width: 100%;
    }
}

/* ÁREA DO CLIENTE - RELATÓRIO TÉCNICO COMPACTO V39 */
.cliente-relatorio-card-pro {
    border-radius: 20px !important;
    padding: 16px !important;
    background: linear-gradient(135deg, rgba(13,34,79,0.94), rgba(8,25,59,0.90)) !important;
    border: 1px solid rgba(147,197,253,0.13) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.18) !important;
}

.cliente-relatorio-card-pro::before {
    width: 4px !important;
    border-radius: 999px !important;
    top: 14px !important;
    bottom: 14px !important;
    left: 0 !important;
}

.cliente-relatorio-topo-pro {
    padding: 0 0 12px !important;
    gap: 12px !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}

.cliente-relatorio-identidade {
    gap: 12px !important;
}

.cliente-relatorio-icon {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    border-radius: 14px !important;
    font-size: 13px !important;
    box-shadow: none !important;
}

.cliente-relatorio-titulo-wrap {
    gap: 4px !important;
}

.cliente-doc-tipo-pro {
    padding: 4px 8px !important;
    font-size: 10px !important;
}

.cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap strong {
    font-size: 18px !important;
}

.cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap small {
    font-size: 12px !important;
    line-height: 1.3 !important;
}

.cliente-relatorio-status-wrap {
    gap: 6px !important;
}

.cliente-relatorio-status {
    min-height: 26px !important;
    padding: 5px 9px !important;
    font-size: 10px !important;
}

.cliente-relatorio-card-pro .cliente-relatorio-data {
    padding: 6px 10px !important;
    font-size: 12px !important;
}

.cliente-relatorio-meta-pro {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding: 12px 0 0 !important;
    margin: 0 !important;
}

.cliente-relatorio-meta-pro span {
    min-height: 56px !important;
    padding: 9px 10px !important;
    border-radius: 13px !important;
    justify-content: center !important;
    font-size: 12px !important;
}

.cliente-relatorio-meta-pro small {
    font-size: 9px !important;
    margin-bottom: 1px !important;
}

.cliente-relatorio-meta-pro .cliente-relatorio-valor {
    font-size: 14px !important;
}

.cliente-balancas-wrap-pro {
    margin: 12px 0 0 !important;
    padding: 12px !important;
    border-radius: 15px !important;
}

.cliente-balancas-titulo {
    margin-bottom: 9px !important;
}

.cliente-balancas-titulo strong {
    font-size: 13px !important;
}

.cliente-balancas-titulo span {
    padding: 4px 8px !important;
    font-size: 10px !important;
}

.cliente-balancas-grid-pro {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

.cliente-balanca-card-pro {
    padding: 10px !important;
    border-radius: 13px !important;
    gap: 5px !important;
}

.cliente-balanca-card-pro span {
    font-size: 10px !important;
}

.cliente-balanca-card-pro small {
    font-size: 11px !important;
    gap: 1px !important;
}

.cliente-balanca-card-pro small b {
    font-size: 9px !important;
}

.cliente-relatorio-footer-pro {
    margin: 12px 0 0 !important;
    padding: 12px 0 0 !important;
}

.cliente-relatorio-arquivo small {
    font-size: 9px !important;
}

.cliente-relatorio-arquivo span {
    font-size: 12px !important;
}

.cliente-documento-acoes-pro a {
    min-width: 104px !important;
    min-height: 36px !important;
    padding: 9px 12px !important;
    font-size: 12px !important;
    border-radius: 12px !important;
}

@media(max-width: 900px) {
    .cliente-relatorio-topo-pro {
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        align-items: start !important;
    }

    .cliente-relatorio-footer-pro {
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        align-items: center !important;
    }

    .cliente-balancas-titulo {
        flex-direction: row !important;
        align-items: center !important;
    }

    .cliente-relatorio-status-wrap {
        align-items: flex-end !important;
        width: auto !important;
    }
}

@media(max-width: 768px) {
    .cliente-relatorios-lista {
        gap: 12px !important;
    }

    .cliente-relatorio-card-pro {
        padding: 14px !important;
        border-radius: 18px !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .cliente-relatorio-topo-pro {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        padding: 0 0 11px !important;
    }

    .cliente-relatorio-identidade {
        display: grid !important;
        grid-template-columns: 40px minmax(0, 1fr) !important;
        align-items: start !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .cliente-relatorio-icon {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        border-radius: 13px !important;
    }

    .cliente-relatorio-titulo-wrap {
        min-width: 0 !important;
        width: 100% !important;
    }

    .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap strong {
        font-size: 17px !important;
        overflow-wrap: anywhere !important;
    }

    .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap small {
        font-size: 11px !important;
        overflow-wrap: anywhere !important;
    }

    .cliente-relatorio-status-wrap {
        width: 100% !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    .cliente-relatorio-meta-pro {
        grid-template-columns: 1fr !important;
        gap: 7px !important;
        padding-top: 10px !important;
    }

    .cliente-relatorio-meta-pro span {
        min-height: auto !important;
        padding: 9px 10px !important;
    }

    .cliente-balancas-wrap-pro {
        margin: 10px 0 0 !important;
        padding: 10px !important;
    }

    .cliente-balancas-titulo {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px !important;
    }

    .cliente-balancas-grid-pro {
        grid-template-columns: 1fr !important;
        gap: 7px !important;
    }

    .cliente-balanca-card-pro {
        padding: 9px 10px !important;
    }

    .cliente-relatorio-footer-pro {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin: 10px 0 0 !important;
        padding-top: 10px !important;
    }

    .cliente-relatorio-arquivo {
        display: none !important;
    }

    .cliente-documento-acoes-pro {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .cliente-documento-acoes-pro a,
    .cliente-btn-preview,
    .cliente-btn-download {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 38px !important;
        padding: 9px 10px !important;
        font-size: 12px !important;
    }
}

/* ÁREA DO CLIENTE - RELATÓRIO TÉCNICO DESKTOP REFINADO V40
   Mantém o mobile da V39 e melhora apenas desktop/tablet largo. */
@media(min-width: 769px) {
    .cliente-relatorio-card-pro {
        padding: 0 !important;
        border-radius: 24px !important;
        background:
            radial-gradient(circle at top right, rgba(51,117,250,0.16), transparent 32%),
            linear-gradient(135deg, rgba(13,34,79,0.96), rgba(8,25,59,0.92)) !important;
        border: 1px solid rgba(147,197,253,0.16) !important;
        box-shadow: 0 18px 42px rgba(0,0,0,0.22) !important;
    }

    .cliente-relatorio-card-pro::before {
        width: 5px !important;
        top: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        border-radius: 0 !important;
        background: linear-gradient(180deg, #60a5fa, #22c55e) !important;
    }

    .cliente-relatorio-topo-pro {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 18px !important;
        padding: 20px 24px 17px !important;
        border-bottom: 1px solid rgba(255,255,255,0.10) !important;
    }

    .cliente-relatorio-identidade {
        display: flex !important;
        align-items: center !important;
        gap: 15px !important;
    }

    .cliente-relatorio-icon {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        border-radius: 17px !important;
        font-size: 15px !important;
        box-shadow: 0 12px 26px rgba(51,117,250,0.20) !important;
    }

    .cliente-relatorio-titulo-wrap {
        gap: 6px !important;
    }

    .cliente-doc-tipo-pro {
        padding: 5px 10px !important;
        font-size: 10px !important;
    }

    .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap strong {
        font-size: 22px !important;
        line-height: 1.12 !important;
    }

    .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap small {
        font-size: 13px !important;
        line-height: 1.35 !important;
        color: #c8d7ff !important;
    }

    .cliente-relatorio-status-wrap {
        align-items: flex-end !important;
        gap: 7px !important;
    }

    .cliente-relatorio-status {
        min-height: 29px !important;
        padding: 6px 11px !important;
        font-size: 10px !important;
    }

    .cliente-relatorio-card-pro .cliente-relatorio-data {
        padding: 7px 11px !important;
        font-size: 12px !important;
        border-radius: 12px !important;
    }

    .cliente-relatorio-meta-pro {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 11px !important;
        padding: 16px 24px 0 !important;
        margin: 0 !important;
    }

    .cliente-relatorio-meta-pro span {
        min-height: 66px !important;
        padding: 12px 14px !important;
        border-radius: 16px !important;
        background: rgba(255,255,255,0.055) !important;
        border: 1px solid rgba(255,255,255,0.10) !important;
        font-size: 13px !important;
    }

    .cliente-relatorio-meta-pro small {
        font-size: 10px !important;
        margin-bottom: 3px !important;
    }

    .cliente-relatorio-meta-pro .cliente-relatorio-valor {
        font-size: 15px !important;
    }

    .cliente-balancas-wrap-pro {
        margin: 15px 24px 0 !important;
        padding: 15px !important;
        border-radius: 18px !important;
        background: rgba(255,255,255,0.035) !important;
        border: 1px solid rgba(255,255,255,0.09) !important;
    }

    .cliente-balancas-titulo {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        margin-bottom: 11px !important;
    }

    .cliente-balancas-titulo strong {
        font-size: 15px !important;
    }

    .cliente-balancas-titulo span {
        padding: 5px 10px !important;
        font-size: 11px !important;
    }

    .cliente-balancas-grid-pro {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .cliente-balanca-card-pro {
        padding: 12px !important;
        border-radius: 15px !important;
        gap: 6px !important;
    }

    .cliente-balanca-card-pro span {
        font-size: 11px !important;
    }

    .cliente-balanca-card-pro small {
        font-size: 12px !important;
        gap: 2px !important;
    }

    .cliente-balanca-card-pro small b {
        font-size: 9px !important;
    }

    .cliente-relatorio-footer-pro {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 18px !important;
        margin: 15px 24px 0 !important;
        padding: 15px 0 20px !important;
        border-top: 1px solid rgba(255,255,255,0.08) !important;
    }

    .cliente-relatorio-arquivo {
        display: flex !important;
    }

    .cliente-relatorio-arquivo small {
        font-size: 10px !important;
    }

    .cliente-relatorio-arquivo span {
        font-size: 12px !important;
        color: #dbeafe !important;
    }

    .cliente-documento-acoes-pro {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 10px !important;
        width: auto !important;
    }

    .cliente-documento-acoes-pro a {
        min-width: 112px !important;
        min-height: 39px !important;
        padding: 10px 14px !important;
        font-size: 12px !important;
        border-radius: 13px !important;
    }
}

/* ÁREA DO CLIENTE - AJUSTE FINAL CARD RELATÓRIO TÉCNICO V41
   Corrige alinhamento interno no desktop e mobile sem alterar o restante da tela. */
body .cliente-relatorio-card-pro {
    overflow: hidden !important;
}

body .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap,
body .cliente-relatorio-card-pro .cliente-relatorio-arquivo,
body .cliente-relatorio-card-pro .cliente-balanca-card-pro {
    min-width: 0 !important;
}

@media(min-width: 769px) {
    body .cliente-relatorio-card-pro .cliente-relatorio-topo-pro {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 150px !important;
        align-items: start !important;
        justify-content: stretch !important;
        gap: 18px !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-identidade {
        display: grid !important;
        grid-template-columns: 56px minmax(0, 1fr) !important;
        align-items: center !important;
        justify-items: start !important;
        justify-content: start !important;
        gap: 15px !important;
        width: 100% !important;
        min-width: 0 !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-icon {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: start !important;
        margin: 0 !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        text-align: left !important;
        width: 100% !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap strong,
    body .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap small {
        text-align: left !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
    }

    body .cliente-relatorio-card-pro .cliente-doc-tipo-pro {
        align-self: flex-start !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-status-wrap {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        justify-content: flex-start !important;
        justify-self: end !important;
        align-self: start !important;
        width: 150px !important;
        min-width: 150px !important;
        margin: 0 !important;
        text-align: right !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-status,
    body .cliente-relatorio-card-pro .cliente-relatorio-data {
        width: fit-content !important;
        max-width: 100% !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-meta-pro {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        align-items: stretch !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-meta-pro span {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        text-align: left !important;
        min-width: 0 !important;
        overflow-wrap: anywhere !important;
    }

    body .cliente-relatorio-card-pro .cliente-balancas-wrap-pro {
        display: block !important;
    }

    body .cliente-relatorio-card-pro .cliente-balancas-titulo {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
        width: 100% !important;
    }

    body .cliente-relatorio-card-pro .cliente-balancas-grid-pro {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        align-items: stretch !important;
        justify-items: stretch !important;
        width: 100% !important;
    }

    body .cliente-relatorio-card-pro .cliente-balanca-card-pro {
        width: 100% !important;
        max-width: 100% !important;
        text-align: left !important;
        align-items: flex-start !important;
    }

    body .cliente-relatorio-card-pro .cliente-balanca-card-pro span,
    body .cliente-relatorio-card-pro .cliente-balanca-card-pro small {
        text-align: left !important;
        width: 100% !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-footer-pro {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        justify-content: stretch !important;
        gap: 18px !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-arquivo {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-arquivo span {
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body .cliente-relatorio-card-pro .cliente-documento-acoes-pro {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-end !important;
        width: auto !important;
        min-width: 236px !important;
    }
}

@media(max-width: 768px) {
    body .cliente-relatorio-card-pro .cliente-relatorio-topo-pro {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-identidade {
        display: grid !important;
        grid-template-columns: 42px minmax(0, 1fr) !important;
        align-items: center !important;
        justify-items: start !important;
        gap: 10px !important;
        width: 100% !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-icon {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: start !important;
        margin: 0 !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        width: 100% !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-doc-tipo-pro,
    body .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap strong,
    body .cliente-relatorio-card-pro .cliente-relatorio-titulo-wrap small {
        align-self: flex-start !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-status-wrap {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-status,
    body .cliente-relatorio-card-pro .cliente-relatorio-data {
        width: fit-content !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }

    body .cliente-relatorio-card-pro .cliente-relatorio-meta-pro span {
        align-items: flex-start !important;
        text-align: left !important;
        overflow-wrap: anywhere !important;
    }

    body .cliente-relatorio-card-pro .cliente-balancas-titulo {
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
    }

    body .cliente-relatorio-card-pro .cliente-balanca-card-pro {
        align-items: flex-start !important;
        text-align: left !important;
    }

    body .cliente-relatorio-card-pro .cliente-documento-acoes-pro {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        width: 100% !important;
    }
}


/* =========================================================
   SISTEMA - LEMBRETES DO APP
   Padrão visual integrado ao painel BJ Paraná
   ========================================================= */

.lembretes-app-page{
    width:100%;
    max-width:1200px;
    margin:0 auto;
    padding:18px 0 40px;
    display:flex;
    flex-direction:column;
    gap:22px;
}

.lembretes-app-hero{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    padding:28px 30px;
    border-radius:28px;
    background:
        radial-gradient(circle at top left, rgba(80, 135, 255, .30), transparent 36%),
        linear-gradient(135deg, rgba(9, 40, 96, .98), rgba(12, 67, 160, .94));
    border:1px solid rgba(139, 173, 255, .24);
    color:#fff;
    box-shadow:0 22px 60px rgba(0, 0, 0, .24);
    overflow:hidden;
    position:relative;
}

.lembretes-app-hero:before{
    content:"";
    position:absolute;
    inset:-80px auto auto -80px;
    width:220px;
    height:220px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    filter:blur(2px);
}

.lembretes-app-hero > *{
    position:relative;
    z-index:1;
}

.lembretes-app-kicker{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(255,255,255,.13);
    border:1px solid rgba(255,255,255,.20);
    color:#ffffff;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.07em;
    margin-bottom:10px;
}

.lembretes-app-hero h2{
    margin:0;
    color:#fff;
    font-size:30px;
    line-height:1.08;
    font-weight:900;
}

.lembretes-app-hero p{
    margin:9px 0 0;
    color:#dbe7ff;
    max-width:800px;
    font-weight:700;
    font-size:14px;
    line-height:1.35;
}

.lembretes-app-hero-acoes{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.lembretes-app-btn{
    min-height:42px;
    border:0;
    border-radius:14px;
    padding:0 16px;
    font-weight:900;
    cursor:pointer;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    font-size:13px;
    line-height:1;
    white-space:nowrap;
    transition:transform .16s ease, box-shadow .16s ease, background .16s ease;
}

.lembretes-app-btn:hover{
    transform:translateY(-1px);
    text-decoration:none;
}

.lembretes-app-btn.primary{
    background:linear-gradient(135deg, #ffffff, #e9f1ff);
    color:#07306f;
    box-shadow:0 12px 28px rgba(0,0,0,.18);
}

.lembretes-app-btn.soft{
    background:rgba(53, 113, 247, .10);
    color:#0c3f91;
    border:1px solid rgba(53, 113, 247, .18);
}

.lembretes-app-btn.blue{
    background:linear-gradient(135deg,#3375fa,#1d4ed8);
    color:#fff;
    box-shadow:0 12px 28px rgba(37,99,235,.22);
}

.lembretes-app-btn.red{
    background:#fff1f2;
    color:#b91c1c;
    border:1px solid #fecdd3;
}

.lembretes-app-alert{
    padding:14px 17px;
    border-radius:18px;
    font-weight:850;
    border:1px solid transparent;
}

.lembretes-app-alert.sucesso{
    background:rgba(16,185,129,.12);
    color:#a7f3d0;
    border-color:rgba(16,185,129,.25);
}

.lembretes-app-alert.erro{
    background:rgba(239,68,68,.14);
    color:#fecaca;
    border-color:rgba(239,68,68,.28);
}

.lembretes-app-stats{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
}

.lembretes-app-stat{
    border-radius:22px;
    background:rgba(15, 39, 91, .94);
    border:1px solid rgba(139, 173, 255, .20);
    padding:20px;
    box-shadow:0 16px 38px rgba(0, 0, 0, .18);
    min-height:112px;
}

.lembretes-app-stat span{
    display:block;
    color:#9fb5db;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.lembretes-app-stat strong{
    display:block;
    color:#6ea3ff;
    font-size:32px;
    margin-top:7px;
    line-height:1;
}

.lembretes-app-stat small{
    display:block;
    color:#b8c7e7;
    margin-top:7px;
    font-weight:750;
}

.lembretes-app-form-details{
    border:1px solid rgba(139, 173, 255, .20);
    border-radius:24px;
    background:rgba(15, 39, 91, .94);
    box-shadow:0 16px 38px rgba(0,0,0,.18);
    overflow:hidden;
}

.lembretes-app-form-details summary{
    list-style:none;
    cursor:pointer;
    padding:18px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    background:rgba(11, 34, 80, .92);
}

.lembretes-app-form-details summary::-webkit-details-marker{
    display:none;
}

.lembretes-app-summary-title strong{
    display:block;
    color:#fff;
    font-size:17px;
    font-weight:900;
}

.lembretes-app-summary-title span{
    display:block;
    color:#b8c7e7;
    margin-top:4px;
    font-size:13px;
    font-weight:750;
}

.lembretes-app-summary-pill{
    background:linear-gradient(135deg,#3375fa,#1d4ed8);
    color:#fff;
    border-radius:999px;
    padding:9px 14px;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

.lembretes-app-form-body{
    padding:22px;
    border-top:1px solid rgba(139,173,255,.16);
}

.lembretes-app-grid{
    display:grid;
    grid-template-columns:1fr 170px 170px;
    gap:14px;
}

.lembretes-app-field{
    display:flex;
    flex-direction:column;
    gap:8px;
    color:#dbe7ff;
    font-size:13px;
    font-weight:900;
}

.lembretes-app-field input,
.lembretes-app-field select,
.lembretes-app-field textarea{
    width:100%;
    border:1px solid rgba(139, 173, 255, .28);
    border-radius:15px;
    min-height:46px;
    padding:12px 14px;
    background:rgba(8, 29, 70, .92);
    color:#fff;
    font-size:14px;
    outline:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

.lembretes-app-field input:focus,
.lembretes-app-field select:focus,
.lembretes-app-field textarea:focus{
    border-color:#6ea3ff;
    box-shadow:0 0 0 3px rgba(78, 132, 255, .18);
}

.lembretes-app-field textarea{
    min-height:96px;
    resize:vertical;
}

.lembretes-app-dias{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:8px;
    margin-top:9px;
}

.lembretes-app-dia{
    border:1px solid rgba(139, 173, 255, .24);
    background:rgba(8, 29, 70, .74);
    border-radius:15px;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    color:#dbe7ff;
    font-size:12px;
    gap:6px;
}

.lembretes-app-dia input{
    width:auto;
    accent-color:#3375fa;
}

.lembretes-app-actions{
    display:flex;
    align-items:center;
    gap:9px;
    flex-wrap:wrap;
    margin-top:16px;
}

.lembretes-app-list-card{
    background:rgba(15, 39, 91, .94);
    border:1px solid rgba(139, 173, 255, .20);
    border-radius:24px;
    box-shadow:0 16px 38px rgba(0,0,0,.18);
    overflow:hidden;
}

.lembretes-app-list-top{
    padding:22px 24px;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    border-bottom:1px solid rgba(139, 173, 255, .16);
    background:rgba(11, 34, 80, .78);
}

.lembretes-app-list-top h3{
    margin:0;
    color:#fff;
    font-size:20px;
    font-weight:900;
}

.lembretes-app-list-top p{
    margin:6px 0 0;
    color:#b8c7e7;
    font-weight:750;
}

.lembretes-app-table-wrap{
    overflow:auto;
}

.lembretes-app-table{
    width:100%;
    border-collapse:collapse;
}

.lembretes-app-table th,
.lembretes-app-table td{
    padding:15px 15px;
    border-bottom:1px solid rgba(139, 173, 255, .12);
    text-align:left;
    vertical-align:top;
    font-size:13px;
}

.lembretes-app-table th{
    background:rgba(8, 29, 70, .65);
    color:#7facff;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.05em;
    font-weight:900;
}

.lembretes-app-table td{
    color:#dbe7ff;
}

.lembretes-app-table td strong{
    color:#fff;
    font-weight:900;
}

.lembretes-app-table td small{
    display:block;
    color:#b8c7e7;
    margin-top:4px;
    font-weight:700;
    line-height:1.25;
}

.lembretes-app-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
}

.lembretes-app-badge.on{
    background:rgba(16,185,129,.16);
    color:#a7f3d0;
    border:1px solid rgba(16,185,129,.30);
}

.lembretes-app-badge.off{
    background:rgba(239,68,68,.14);
    color:#fecaca;
    border:1px solid rgba(239,68,68,.30);
}

.lembretes-app-badge.tipo{
    background:rgba(53, 113, 247, .16);
    color:#bfdbfe;
    border:1px solid rgba(53, 113, 247, .30);
}

@media(max-width:900px){
    .lembretes-app-page{
        padding:12px 0 30px;
    }

    .lembretes-app-hero,
    .lembretes-app-list-top{
        flex-direction:column;
        align-items:stretch;
    }

    .lembretes-app-stats,
    .lembretes-app-grid{
        grid-template-columns:1fr;
    }

    .lembretes-app-dias{
        grid-template-columns:repeat(2,1fr);
    }

    .lembretes-app-form-details summary{
        align-items:flex-start;
        flex-direction:column;
    }

    .lembretes-app-table{
        min-width:820px;
    }
}


/* =========================================================
   SISTEMA - LOGS DO APP / DISPOSITIVOS
   ========================================================= */
.app-logs-page{width:100%;max-width:1200px;margin:0 auto;padding:18px 0 40px;display:flex;flex-direction:column;gap:22px}.app-logs-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:28px 30px;border-radius:28px;background:radial-gradient(circle at top left,rgba(80,135,255,.30),transparent 36%),linear-gradient(135deg,rgba(9,40,96,.98),rgba(12,67,160,.94));border:1px solid rgba(139,173,255,.24);color:#fff;box-shadow:0 22px 60px rgba(0,0,0,.24);overflow:hidden;position:relative}.app-logs-kicker{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.20);color:#fff;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin-bottom:10px}.app-logs-hero h2{margin:0;color:#fff;font-size:30px;line-height:1.08;font-weight:900}.app-logs-hero p{margin:9px 0 0;color:#dbe7ff;max-width:800px;font-weight:700;font-size:14px;line-height:1.35}.app-logs-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.app-logs-stat{border-radius:22px;background:rgba(15,39,91,.94);border:1px solid rgba(139,173,255,.20);padding:20px;box-shadow:0 16px 38px rgba(0,0,0,.18);min-height:112px}.app-logs-stat span{display:block;color:#9fb5db;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.app-logs-stat strong{display:block;color:#6ea3ff;font-size:32px;margin-top:7px;line-height:1}.app-logs-stat small{display:block;color:#b8c7e7;margin-top:7px;font-weight:750}.app-logs-card{background:rgba(15,39,91,.94);border:1px solid rgba(139,173,255,.20);border-radius:24px;box-shadow:0 16px 38px rgba(0,0,0,.18);overflow:hidden}.app-logs-card-top{padding:22px 24px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(139,173,255,.16);background:rgba(11,34,80,.78)}.app-logs-card-top h3{margin:0;color:#fff;font-size:20px;font-weight:900}.app-logs-card-top p{margin:6px 0 0;color:#b8c7e7;font-weight:750}.app-logs-table-wrap{overflow:auto}.app-logs-table{width:100%;border-collapse:collapse}.app-logs-table th,.app-logs-table td{padding:14px 15px;border-bottom:1px solid rgba(139,173,255,.12);text-align:left;vertical-align:top;font-size:13px}.app-logs-table th{background:rgba(8,29,70,.65);color:#7facff;font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:900}.app-logs-table td{color:#dbe7ff}.app-logs-table td strong{display:block;color:#fff;font-weight:900}.app-logs-table td small{display:block;color:#b8c7e7;margin-top:4px;font-weight:700;line-height:1.25}.app-logs-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap}.app-logs-badge.ok{background:rgba(16,185,129,.16);color:#a7f3d0;border:1px solid rgba(16,185,129,.30)}.app-logs-badge.warn{background:rgba(245,158,11,.16);color:#fde68a;border:1px solid rgba(245,158,11,.30)}.app-logs-badge.info{background:rgba(53,113,247,.16);color:#bfdbfe;border:1px solid rgba(53,113,247,.30)}.app-logs-filtros{display:grid;grid-template-columns:1.3fr 1fr 1fr .8fr .8fr .8fr auto;gap:12px;padding:18px 20px;border-bottom:1px solid rgba(139,173,255,.14);background:rgba(8,29,70,.40)}.app-logs-filtros label{display:flex;flex-direction:column;gap:6px;color:#dbe7ff;font-size:12px;font-weight:900}.app-logs-filtros input,.app-logs-filtros select{border:1px solid rgba(139,173,255,.28);border-radius:14px;min-height:42px;padding:10px 12px;background:rgba(8,29,70,.92);color:#fff;outline:none}.app-logs-btn{align-self:end;min-height:42px;border:0;border-radius:14px;padding:0 18px;background:linear-gradient(135deg,#3375fa,#1d4ed8);color:#fff;font-weight:900;cursor:pointer}@media(max-width:1050px){.app-logs-stats,.app-logs-filtros{grid-template-columns:1fr}.app-logs-table{min-width:980px}.app-logs-hero{flex-direction:column;align-items:stretch}}


/* PUSH FIREBASE DO APP */
.app-logs-alert{
    margin:16px 0;
    padding:14px 16px;
    border-radius:16px;
    font-weight:800;
}
.app-logs-alert.sucesso{
    background:rgba(16,185,129,.12);
    color:#a7f3d0;
    border:1px solid rgba(16,185,129,.28);
}
.app-logs-alert.erro{
    background:rgba(239,68,68,.14);
    color:#fecaca;
    border:1px solid rgba(239,68,68,.30);
}
.app-push-page textarea{
    width:100%;
    min-height:90px;
    border-radius:14px;
    padding:12px;
    border:1px solid rgba(139,173,255,.28);
    background:rgba(8,29,70,.92);
    color:#fff;
    resize:vertical;
}


/* SISTEMA / PUSH FIREBASE - MODELOS RÁPIDOS */
.app-push-template-box {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(220px, 1.2fr) minmax(220px, 1fr) minmax(180px, 0.8fr);
    gap: 14px;
    align-items: end;
    padding: 16px;
    border-radius: 20px;
    background: rgba(59,130,246,0.10);
    border: 1px solid rgba(96,165,250,0.22);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
}

.app-push-template-box > div {
    display: flex;
    flex-direction: column;
    gap: 4px;
    color: #ffffff;
}

.app-push-template-box strong {
    font-size: 15px;
    font-weight: 900;
}

.app-push-template-box small {
    color: #b8c8ee;
    font-size: 12px;
    line-height: 1.35;
}

@media(max-width: 900px) {
    .app-push-template-box {
        grid-template-columns: 1fr;
    }
}


/* DOCUMENTOS DOS COLABORADORES */
.colaboradores-documentos-box{
    margin-top:28px;
    padding:24px;
    border-radius:26px;
    background:linear-gradient(180deg, rgba(12,38,86,.98), rgba(8,29,70,.98));
    border:1px solid rgba(139,173,255,.18);
    box-shadow:0 18px 45px rgba(4,18,45,.24);
    color:#fff;
}

.colaboradores-documentos-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:18px;
}

.colaboradores-documentos-head h3{
    margin:4px 0 6px;
    font-size:22px;
    color:#ffffff;
}

.colaboradores-documentos-head p{
    margin:0;
    color:#b8c7e7;
    line-height:1.5;
}

.colaboradores-link-publico{
    display:grid;
    gap:8px;
    padding:16px;
    margin-bottom:18px;
    border-radius:18px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(139,173,255,.16);
}

.colaboradores-link-publico small{
    color:#dbe7ff;
    font-weight:700;
}

.colaboradores-link-publico input{
    width:100%;
    border:1px solid rgba(139,173,255,.28);
    border-radius:14px;
    padding:13px 14px;
    background:rgba(8,29,70,.92);
    color:#fff;
    font-weight:700;
}

.colaboradores-doc-alerta{
    padding:14px 16px;
    margin-bottom:18px;
    border-radius:16px;
    background:rgba(245,158,11,.12);
    border:1px solid rgba(245,158,11,.28);
    color:#fde68a;
    font-weight:700;
}

.colaboradores-doc-form{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:14px;
    padding:18px;
    border-radius:20px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(139,173,255,.14);
    margin-bottom:20px;
}

.colaboradores-doc-form label{
    color:#dbe7ff;
    font-size:13px;
    font-weight:900;
    display:grid;
    gap:7px;
}

.colaboradores-doc-form input,
.colaboradores-doc-form select,
.colaboradores-doc-form textarea{
    width:100%;
    border:1px solid rgba(139,173,255,.28);
    border-radius:15px;
    min-height:46px;
    padding:12px 14px;
    background:rgba(8,29,70,.92);
    color:#fff;
    font-size:14px;
    outline:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

.colaboradores-doc-form input:focus,
.colaboradores-doc-form select:focus,
.colaboradores-doc-form textarea:focus{
    border-color:#6ea3ff;
    box-shadow:0 0 0 3px rgba(78,132,255,.18);
}

.colaboradores-doc-form textarea{
    min-height:96px;
    resize:vertical;
}

.colaboradores-doc-observacao,
.colaboradores-doc-form .colaboradores-form-actions{
    grid-column:1 / -1;
}

.colaboradores-doc-lista{
    display:grid;
    gap:12px;
}

.colaborador-doc-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:16px;
    padding:16px 18px;
    border-radius:18px;
    background:rgba(8,29,70,.84);
    color:#fff;
    border:1px solid rgba(139,173,255,.16);
    box-shadow:0 12px 24px rgba(0,0,0,.16);
}

.colaborador-doc-main{min-width:0;}

.colaborador-doc-card strong{
    display:block;
    font-size:18px;
    line-height:1.25;
    color:#ffffff;
}

.colaborador-doc-tipo{
    display:block;
    margin-top:5px;
    color:#7facff !important;
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.colaborador-doc-card small{
    display:block;
    margin-top:8px;
    color:#b8c7e7;
    line-height:1.5;
}

.colaborador-doc-separador{
    display:inline;
    margin:0 8px;
    color:#8da5d6;
}

.colaborador-doc-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}

.colaborador-doc-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
    border:1px solid transparent;
}

.colaborador-doc-pill.sucesso{background:rgba(59,130,246,.16);color:#bfdbfe;border-color:rgba(59,130,246,.30);}
.colaborador-doc-pill.alerta{background:rgba(245,158,11,.14);color:#fde68a;border-color:rgba(245,158,11,.30);}
.colaborador-doc-pill.perigo{background:rgba(239,68,68,.14);color:#fecaca;border-color:rgba(239,68,68,.30);}
.colaborador-doc-pill.neutro{background:rgba(148,163,184,.16);color:#e2e8f0;border-color:rgba(148,163,184,.24);}
.colaborador-doc-pill.cliente{background:rgba(37,99,235,.18);color:#dbeafe;border-color:rgba(59,130,246,.30);}
.colaborador-doc-pill.interno{background:rgba(255,255,255,.08);color:#dbe7ff;border-color:rgba(255,255,255,.12);}

.colaboradores-btn-danger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:9px 13px;
    border-radius:12px;
    background:rgba(239,68,68,.14);
    border:1px solid rgba(239,68,68,.26);
    color:#fecaca !important;
    font-weight:900;
    text-decoration:none;
}

.colaborador-doc-status.sucesso{color:#bfdbfe;}
.colaborador-doc-status.alerta{color:#fde68a;}
.colaborador-doc-status.perigo{color:#fecaca;}
.colaborador-doc-status.neutro{color:#dbe7ff;}

.documentos-colaboradores-publico{
    position:relative;
    margin:0;
    min-height:100vh;
    background:
        radial-gradient(circle at top left, rgba(55,110,255,.20), transparent 32%),
        radial-gradient(circle at top right, rgba(28,84,189,.22), transparent 30%),
        linear-gradient(180deg, #071a38 0%, #0b285a 38%, #0a214b 100%);
    font-family:'Montserrat', Arial, Helvetica, sans-serif;
    color:#eaf1ff;
}

.documentos-colaboradores-publico::before{
    content:'';
    position:fixed;
    inset:0;
    pointer-events:none;
    background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
}

.docs-public-page{
    position:relative;
    z-index:1;
    width:min(1180px, calc(100% - 32px));
    margin:0 auto;
    padding:28px 0 52px;
}

.docs-public-hero{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    padding:28px 30px;
    border-radius:28px;
    background:linear-gradient(135deg, rgba(20,61,142,.60), rgba(10,42,99,.86));
    border:1px solid rgba(139,173,255,.18);
    box-shadow:0 18px 45px rgba(4,18,45,.26);
    backdrop-filter:blur(6px);
    color:#fff;
}

.docs-public-hero span{
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:12px;
    color:#c7dbff;
    font-weight:900;
}

.docs-public-hero h1{
    margin:8px 0 10px;
    font-size:clamp(28px, 4vw, 42px);
    line-height:1.08;
    color:#fff;
}

.docs-public-hero p{
    max-width:760px;
    margin:0;
    color:#e5edff;
    line-height:1.55;
}

.docs-public-brand{
    min-width:200px;
    padding:16px 18px;
    border-radius:20px;
    background:rgba(255,255,255,.06);
    text-align:center;
    border:1px solid rgba(139,173,255,.18);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}

.docs-public-brand strong,
.docs-public-brand small{display:block;}
.docs-public-brand strong{font-size:22px;color:#fff;}
.docs-public-brand small{color:#dbe7ff; margin-top:4px;}

.docs-public-kpis{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:14px;
    margin:18px 0;
}

.docs-public-kpis article{
    padding:18px 20px;
    border-radius:22px;
    background:linear-gradient(180deg, rgba(16,47,103,.92), rgba(8,29,70,.92));
    box-shadow:0 14px 30px rgba(4,18,45,.18);
    border:1px solid rgba(139,173,255,.14);
}

.docs-public-kpis span{
    display:block;
    color:#c6d5ef;
    font-weight:800;
    font-size:13px;
}

.docs-public-kpis strong{
    display:block;
    margin-top:6px;
    font-size:30px;
    color:#ffffff;
}

.docs-public-kpis article.alerta strong{color:#fde68a;}
.docs-public-kpis article.vencido strong{color:#fecaca;}

.docs-public-nota{
    margin-bottom:18px;
    padding:16px 18px;
    border-radius:20px;
    background:linear-gradient(180deg, rgba(16,47,103,.92), rgba(8,29,70,.92));
    border:1px solid rgba(139,173,255,.14);
    color:#dbe7ff;
    line-height:1.5;
    box-shadow:0 10px 24px rgba(4,18,45,.16);
}

.docs-public-nota strong{color:#ffffff;}

.docs-public-lista{
    display:grid;
    gap:14px;
}

.docs-public-colaborador-card{
    border-radius:24px;
    background:linear-gradient(180deg, rgba(16,47,103,.92), rgba(8,29,70,.92));
    border:1px solid rgba(139,173,255,.14);
    box-shadow:0 14px 30px rgba(4,18,45,.18);
    overflow:hidden;
}

.docs-public-colaborador-summary{
    list-style:none;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:18px 20px;
    cursor:pointer;
}

.docs-public-colaborador-summary::-webkit-details-marker{display:none;}

.docs-public-colaborador-summary-main{
    display:flex;
    align-items:center;
    gap:14px;
    min-width:0;
}

.docs-public-avatar{
    width:52px;
    height:52px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg, #3b82f6, #1d4ed8);
    color:#fff;
    font-weight:900;
    font-size:21px;
    flex:0 0 52px;
    box-shadow:0 10px 20px rgba(37,99,235,.24);
}

.docs-public-colaborador-card h2{
    margin:0;
    font-size:20px;
    color:#ffffff;
}

.docs-public-colaborador-card p{
    margin:4px 0 0;
    color:#c6d5ef;
    line-height:1.4;
}

.docs-public-colaborador-summary-side{
    display:flex;
    align-items:center;
    gap:12px;
}

.docs-public-colaborador-badges{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.docs-public-summary-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
    border:1px solid transparent;
}

.docs-public-summary-pill.total{background:rgba(59,130,246,.16);color:#dbeafe;border-color:rgba(59,130,246,.30);}
.docs-public-summary-pill.sucesso{background:rgba(16,185,129,.16);color:#bbf7d0;border-color:rgba(16,185,129,.28);}
.docs-public-summary-pill.alerta{background:rgba(245,158,11,.14);color:#fde68a;border-color:rgba(245,158,11,.30);}
.docs-public-summary-pill.vencido{background:rgba(239,68,68,.14);color:#fecaca;border-color:rgba(239,68,68,.30);}
.docs-public-summary-pill.neutro{background:rgba(148,163,184,.16);color:#e2e8f0;border-color:rgba(148,163,184,.24);}

.docs-public-summary-arrow{
    width:12px;
    height:12px;
    border-right:2px solid #8bb3ff;
    border-bottom:2px solid #8bb3ff;
    transform:rotate(45deg);
    transition:.2s ease;
    margin-right:4px;
}

.docs-public-colaborador-card[open] .docs-public-summary-arrow{
    transform:rotate(225deg);
    margin-top:6px;
}

.docs-public-colaborador-body{
    padding:0 20px 20px;
    border-top:1px solid rgba(139,173,255,.12);
}

.docs-public-doc-list{
    display:grid;
    gap:12px;
    padding-top:16px;
}

.docs-public-doc-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
    align-items:center;
    padding:16px;
    border-radius:18px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(139,173,255,.14);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}

.docs-public-doc-row.alerta{border-color:rgba(245,158,11,.30); background:rgba(245,158,11,.08);}
.docs-public-doc-row.vencido{border-color:rgba(239,68,68,.30); background:rgba(239,68,68,.08);}
.docs-public-doc-row.sem-validade{border-color:rgba(148,163,184,.18); background:rgba(148,163,184,.08);}

.docs-public-doc-row-main{min-width:0;}

.docs-public-doc-tipo{
    display:block;
    color:#8bb3ff;
    text-transform:uppercase;
    letter-spacing:.07em;
    font-size:11px;
    font-weight:900;
}

.docs-public-doc-row strong{
    display:block;
    margin-top:5px;
    font-size:17px;
    line-height:1.35;
    color:#ffffff;
}

.docs-public-doc-meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px 18px;
    margin-top:8px;
}

.docs-public-doc-row small{
    color:#dbe7ff;
    line-height:1.45;
}

.docs-public-doc-row-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}

.docs-public-doc-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
}

.docs-public-doc-status.valido{background:rgba(16,185,129,.16);color:#bbf7d0;}
.docs-public-doc-status.alerta{background:rgba(245,158,11,.14);color:#fde68a;}
.docs-public-doc-status.vencido{background:rgba(239,68,68,.14);color:#fecaca;}
.docs-public-doc-status.sem-validade{background:rgba(148,163,184,.16);color:#e2e8f0;}

.docs-public-doc-row-actions a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:10px 14px;
    border-radius:12px;
    background:linear-gradient(135deg, #3b82f6, #2563eb);
    color:#fff;
    text-decoration:none;
    font-weight:900;
    font-size:13px;
    box-shadow:0 10px 20px rgba(37,99,235,.20);
}

.docs-public-empty,
.docs-public-error{
    padding:28px;
    border-radius:24px;
    background:linear-gradient(180deg, rgba(16,47,103,.94), rgba(8,29,70,.94));
    box-shadow:0 14px 35px rgba(4,18,45,.18);
    border:1px solid rgba(139,173,255,.14);
    color:#fff;
}

.docs-public-empty span,
.docs-public-error p{
    display:block;
    margin-top:8px;
    color:#c6d5ef;
}

.docs-public-error{
    position:relative;
    z-index:1;
    width:min(560px, calc(100% - 32px));
    margin:80px auto;
}

@media (max-width: 980px){
    .colaboradores-documentos-head,
    .docs-public-hero,
    .docs-public-colaborador-summary,
    .docs-public-doc-row{
        flex-direction:column;
        align-items:stretch;
    }

    .colaboradores-doc-form,
    .docs-public-kpis{
        grid-template-columns:1fr;
    }

    .colaborador-doc-card,
    .docs-public-doc-row{
        grid-template-columns:1fr;
        align-items:stretch;
    }

    .colaborador-doc-actions,
    .docs-public-doc-row-actions,
    .docs-public-colaborador-badges{
        justify-content:flex-start;
    }

    .docs-public-colaborador-summary-side{
        justify-content:space-between;
        width:100%;
        flex-wrap:wrap;
    }
}

@media (max-width: 640px){
    .docs-public-page{
        width:min(100%, calc(100% - 22px));
        padding:18px 0 36px;
    }

    .docs-public-hero,
    .docs-public-kpis article,
    .docs-public-nota,
    .docs-public-colaborador-summary,
    .docs-public-colaborador-body,
    .colaboradores-documentos-box{
        padding-left:16px;
        padding-right:16px;
    }

    .docs-public-hero{padding-top:20px;padding-bottom:20px;}
    .docs-public-colaborador-body{padding-bottom:16px;}

    .colaborador-doc-separador{display:none;}
    .colaborador-doc-card small{display:grid;gap:2px;}
    .docs-public-doc-meta{display:grid;gap:4px;}
    .docs-public-kpis strong{font-size:24px;}
}


/* CORREÇÃO BOTÕES - FINANCEIRO / FATURAMENTOS
   Mantém os botões da coluna Ação empilhados e padronizados, sem sofrer interferência de CSS de outros módulos. */
.financeiro-fat-col-actions{
    width:150px;
    min-width:150px;
    text-align:center;
    vertical-align:middle !important;
}

.financeiro-fat-actions-stack{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:center;
    gap:8px;
    width:120px;
    margin:0 auto;
}

.financeiro-fat-actions-form{
    display:block;
    margin:0;
    padding:0;
    width:100%;
}

.financeiro-fat-btn-action{
    width:100%;
    min-height:42px;
    padding:10px 12px;
    border-radius:14px;
    border:1px solid transparent;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-family:'Montserrat', Arial, sans-serif;
    font-size:13px;
    font-weight:900;
    line-height:1.15;
    text-decoration:none !important;
    cursor:pointer;
    white-space:normal;
    appearance:none;
    -webkit-appearance:none;
    transition:.2s ease;
}

.financeiro-fat-btn-select.financeiro-fat-btn-action{
    color:#08204a !important;
    background:#ffffff !important;
    border-color:rgba(255,255,255,.42) !important;
    box-shadow:0 10px 20px rgba(0,0,0,.18);
}

.financeiro-fat-btn-review{
    color:#fde68a !important;
    background:rgba(245,158,11,.14) !important;
    border-color:rgba(245,158,11,.32) !important;
    box-shadow:none !important;
}

.financeiro-fat-btn-action:hover{
    transform:translateY(-1px);
}

@media(max-width:768px){
    .financeiro-fat-col-actions{
        width:auto;
        min-width:0;
    }

    .financeiro-fat-actions-stack{
        width:100%;
        max-width:260px;
        margin:0;
    }
}


/* INDICADOR DE TEMPO DA SESSÃO */
.sessao-tempo-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:8px 12px;
    border-radius:999px;
    background:rgba(59,130,246,.14);
    color:#dbeafe;
    border:1px solid rgba(96,165,250,.28);
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.sessao-tempo-badge.alerta{
    background:rgba(245,158,11,.14);
    color:#fde68a;
    border-color:rgba(245,158,11,.30);
}

.sessao-tempo-badge.perigo,
.sessao-tempo-badge.expirada{
    background:rgba(239,68,68,.14);
    color:#fecaca;
    border-color:rgba(239,68,68,.30);
}

.sessao-tempo-badge.sem-expirar{
    background:rgba(16,185,129,.14);
    color:#bbf7d0;
    border-color:rgba(16,185,129,.30);
}

@media(max-width: 900px){
    .sessao-tempo-badge{
        width:100%;
        justify-content:flex-start;
    }
}


/* =========================================================
   AJUSTE FINAL - COMERCIAL / LEADS DENTRO DO PADRÃO DO SITE
   Mantém a largura padrão e reorganiza componentes internos
   para não cortar botões, filtros, cards ou tabela.
   ========================================================= */
.leads-page-shell{
    width:100% !important;
    max-width:1200px !important;
    margin:0 auto !important;
    display:grid !important;
    gap:22px !important;
    overflow:visible !important;
    box-sizing:border-box !important;
}

.leads-page-shell *,
.leads-page-shell *::before,
.leads-page-shell *::after{
    box-sizing:border-box !important;
}

.leads-hero-card,
.leads-kpi-grid,
.leads-form-details,
.leads-modern-filter,
.leads-modern-list-card,
.leads-lista-card{
    width:100% !important;
    max-width:100% !important;
}

.leads-hero-card{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) auto !important;
    align-items:center !important;
    overflow:visible !important;
}

.leads-hero-card > div:first-child{
    min-width:0 !important;
}

.leads-hero-card p{
    max-width:100% !important;
}

.leads-hero-actions{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:flex-end !important;
    align-items:center !important;
    max-width:360px !important;
    min-width:0 !important;
}

.leads-hero-btn{
    flex:0 1 auto !important;
    max-width:100% !important;
}

.leads-kpi-grid{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
}

.leads-kpi-card{
    min-width:0 !important;
}

.leads-modern-filter{
    overflow:visible !important;
}

.leads-modern-filter .leads-filtros{
    width:100% !important;
    max-width:100% !important;
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:14px !important;
    align-items:end !important;
}

.leads-modern-filter .leads-filtros > *,
.leads-modern-filter .leads-filtros input,
.leads-modern-filter .leads-filtros select,
.leads-modern-filter .leads-filtros button,
.leads-modern-filter .leads-filtros a{
    min-width:0 !important;
    max-width:100% !important;
}

.leads-modern-filter .leads-filtros .btn-filtrar,
.leads-modern-filter .leads-filtros button[type="submit"]{
    width:100% !important;
}

.leads-modern-list-card{
    overflow:hidden !important;
}

.leads-modern-list-card .dashboard-tabela-scroll,
.leads-lista-card .dashboard-tabela-scroll,
.leads-tabela-wrapper{
    width:100% !important;
    max-width:100% !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    -webkit-overflow-scrolling:touch !important;
}

.leads-modern-table{
    width:100% !important;
    min-width:1040px !important;
    table-layout:auto !important;
}

.leads-lista-card .leads-action-grid{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(96px, 1fr)) !important;
    gap:8px !important;
    min-width:204px !important;
    max-width:224px !important;
}

.leads-lista-card .leads-action-grid .btn-tabela,
.leads-lista-card .btn-tabela,
.leads-lista-card .btn-visualizar,
.leads-lista-card .btn-editar,
.leads-lista-card .btn-download,
.leads-lista-card .btn-preview,
.leads-lista-card .btn-excluir{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    white-space:normal !important;
}

.leads-pagination-bar{
    width:100% !important;
    max-width:100% !important;
}

@media(max-width:1280px){
    .leads-page-shell{
        max-width:1120px !important;
    }

    .leads-modern-filter .leads-filtros{
        grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    }
}

@media(max-width:1100px){
    .leads-hero-card{
        grid-template-columns:1fr !important;
    }

    .leads-hero-actions{
        justify-content:flex-start !important;
        max-width:100% !important;
    }

    .leads-kpi-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    }

    .leads-modern-filter .leads-filtros{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    }
}

@media(max-width:760px){
    .leads-page-shell{
        max-width:100% !important;
    }

    .leads-kpi-grid,
    .leads-modern-filter .leads-filtros{
        grid-template-columns:1fr !important;
    }

    .leads-hero-actions,
    .leads-hero-btn,
    .leads-modern-filter .leads-filtros .btn-filtrar,
    .leads-modern-filter .leads-filtros button[type="submit"]{
        width:100% !important;
    }
}

/* AJUSTE PONTUAL - COMERCIAL / LEADS - LISTA DE LEADS CADASTRADOS */
.leads-modern-table{
    width:100% !important;
    min-width:1020px !important;
    table-layout:fixed !important;
}

.leads-modern-table th:nth-child(1),
.leads-modern-table td:nth-child(1){width:150px !important;}

.leads-modern-table th:nth-child(2),
.leads-modern-table td:nth-child(2){width:140px !important;}

.leads-modern-table th:nth-child(3),
.leads-modern-table td:nth-child(3){width:110px !important;}

.leads-modern-table th:nth-child(4),
.leads-modern-table td:nth-child(4){width:245px !important;}

.leads-modern-table th:nth-child(5),
.leads-modern-table td:nth-child(5){width:135px !important;}

.leads-modern-table th:nth-child(6),
.leads-modern-table td:nth-child(6){width:130px !important;}

.leads-modern-table th:nth-child(7),
.leads-modern-table td:nth-child(7){width:200px !important;}

.lead-subject-cell strong{
    font-size:13px !important;
    line-height:1.25 !important;
    overflow-wrap:anywhere;
}

.lead-subject-cell small{
    font-size:11px !important;
}

.leads-lista-card .leads-action-grid{
    grid-template-columns:repeat(2, 94px) !important;
    min-width:196px !important;
    gap:7px !important;
}

.leads-lista-card .leads-action-grid .btn-tabela,
.leads-lista-card .btn-tabela,
.leads-lista-card .btn-visualizar,
.leads-lista-card .btn-editar,
.leads-lista-card .btn-download,
.leads-lista-card .btn-preview,
.leads-lista-card .btn-excluir{
    width:94px !important;
    min-width:94px !important;
    max-width:94px !important;
    padding-left:6px !important;
    padding-right:6px !important;
    font-size:11px !important;
}

.lead-status-pill.lead-status-em-atendimento{
    padding-left:9px !important;
    padding-right:9px !important;
}


/* COMERCIAL / LEADS - corrigir quebra da coluna Assunto / Região */
.leads-modern-table th:nth-child(4),
.leads-modern-table td:nth-child(4){
    width: 245px !important;
    max-width: 245px !important;
}

.leads-modern-table td:nth-child(4),
.leads-modern-table td:nth-child(4) .lead-subject-cell,
.leads-modern-table td:nth-child(4) .lead-subject-cell strong,
.leads-modern-table td:nth-child(4) .lead-subject-cell small{
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

.leads-modern-table td:nth-child(4) .lead-subject-cell strong{
    display: block !important;
    line-height: 1.28 !important;
}


/* DASHBOARD ADMIN 2026 - REESTRUTURADO */
.admin-dash2026{width:min(1200px, calc(100% - 48px));margin:0 auto 56px;display:grid;gap:22px;}
.admin-dash2026 *{box-sizing:border-box;}
.admin-dash2026 a{text-decoration:none;}
.admin-dash2026-hero,.admin-dash2026-card,.admin-dash2026-atalhos{border:1px solid rgba(139,173,255,.16);background:linear-gradient(180deg, rgba(17,49,111,.94), rgba(9,31,72,.94));border-radius:26px;box-shadow:0 18px 45px rgba(0,0,0,.20);color:#fff;}
.admin-dash2026-hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:center;padding:30px;overflow:hidden;position:relative;}
.admin-dash2026-hero::after{content:'';position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-120px;background:rgba(59,130,246,.20);pointer-events:none;}
.admin-dash2026-hero>*{position:relative;z-index:1;}
.admin-dash2026-eyebrow{display:block;color:#9fc5ff;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:900;margin-bottom:8px;}
.admin-dash2026-hero h2,.admin-dash2026-card h3,.admin-dash2026-atalhos h3{margin:0;color:#fff;font-weight:900;}
.admin-dash2026-hero h2{font-size:clamp(30px,4vw,48px);line-height:1.05;}
.admin-dash2026-hero p{margin:14px 0 0;max-width:760px;color:#dbe7ff;line-height:1.6;font-weight:650;}
.admin-dash2026-periodo{display:grid;gap:10px;background:rgba(255,255,255,.06);border:1px solid rgba(139,173,255,.18);border-radius:20px;padding:18px;}
.admin-dash2026-periodo label{color:#dbe7ff;font-weight:900;font-size:13px;}
.admin-dash2026-periodo input{width:100%;border:1px solid rgba(139,173,255,.28);border-radius:14px;min-height:46px;padding:12px 14px;background:rgba(8,29,70,.92);color:#fff;outline:none;font-weight:800;}
.admin-dash2026-periodo button{border:none;border-radius:14px;min-height:46px;padding:12px 16px;color:#fff;font-weight:900;background:linear-gradient(135deg,#3b82f6,#2563eb);cursor:pointer;}
.admin-dash2026-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.admin-dash2026-kpi{min-height:155px;display:flex;flex-direction:column;justify-content:space-between;padding:20px;border-radius:24px;color:#fff;border:1px solid rgba(139,173,255,.16);background:linear-gradient(180deg, rgba(17,49,111,.94), rgba(9,31,72,.94));box-shadow:0 16px 34px rgba(0,0,0,.16);position:relative;overflow:hidden;}
.admin-dash2026-kpi::after{content:'';position:absolute;width:120px;height:120px;border-radius:50%;right:-42px;top:-42px;opacity:.23;background:#3b82f6;}
.admin-dash2026-kpi.comercial::after{background:#10b981;}.admin-dash2026-kpi.operacao::after{background:#f59e0b;}.admin-dash2026-kpi.documentos::after{background:#ef4444;}
.admin-dash2026-kpi span{color:#9fc5ff;text-transform:uppercase;letter-spacing:.09em;font-size:12px;font-weight:900;position:relative;z-index:1;}.admin-dash2026-kpi strong{font-size:28px;color:#fff;line-height:1.1;position:relative;z-index:1;}.admin-dash2026-kpi small{color:#dbe7ff;font-weight:750;line-height:1.35;position:relative;z-index:1;}
.admin-dash2026-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:18px;}
.admin-dash2026-card,.admin-dash2026-atalhos{padding:24px;}
.admin-dash2026-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;}.admin-dash2026-card-head h3{font-size:22px;}.admin-dash2026-card-head small{color:#b8c7e7;font-weight:800;}
.admin-dash2026-card-head>a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 13px;border-radius:999px;background:rgba(59,130,246,.18);border:1px solid rgba(59,130,246,.30);color:#dbeafe;font-weight:900;font-size:12px;white-space:nowrap;}
.admin-dash2026-prioridades-lista{display:grid;gap:12px;}.admin-dash2026-prioridade{display:grid;grid-template-columns:44px minmax(0,1fr);gap:13px;align-items:center;padding:15px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(139,173,255,.14);color:#fff;}
.admin-dash2026-prioridade em{width:38px;height:38px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:900;color:#fff;background:rgba(59,130,246,.25);}.admin-dash2026-prioridade strong{display:block;color:#fff;font-size:15px;}.admin-dash2026-prioridade span{display:block;color:#c6d5ef;margin-top:4px;font-size:13px;font-weight:700;line-height:1.35;}.admin-dash2026-prioridade.warn em{background:rgba(245,158,11,.24);color:#fde68a;}.admin-dash2026-prioridade.danger em{background:rgba(239,68,68,.20);color:#fecaca;}.admin-dash2026-prioridade.info em{background:rgba(59,130,246,.24);color:#bfdbfe;}.admin-dash2026-prioridade.ok em{background:rgba(16,185,129,.18);color:#bbf7d0;}
.admin-dash2026-metricas-2,.admin-dash2026-financeiro-grid,.admin-dash2026-doc-grid,.admin-dash2026-app-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.admin-dash2026-metricas-2 a,.admin-dash2026-financeiro-grid div,.admin-dash2026-doc-grid a,.admin-dash2026-app-grid a,.admin-dash2026-operacao-lista a{padding:15px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(139,173,255,.14);color:#fff;}
.admin-dash2026-metricas-2 small,.admin-dash2026-financeiro-grid small,.admin-dash2026-doc-grid small,.admin-dash2026-app-grid small{display:block;color:#b8c7e7;font-weight:800;font-size:12px;}.admin-dash2026-metricas-2 strong,.admin-dash2026-financeiro-grid strong,.admin-dash2026-doc-grid strong,.admin-dash2026-app-grid strong,.admin-dash2026-operacao-lista strong{display:block;color:#fff;font-size:24px;margin-top:6px;}.admin-dash2026-metricas-2 span{display:block;color:#dbe7ff;margin-top:4px;font-size:12px;font-weight:750;}.admin-dash2026-financeiro-grid .positivo strong{color:#86efac;}.admin-dash2026-financeiro-grid .negativo strong{color:#fecaca;}.admin-dash2026-card p{color:#dbe7ff;font-weight:750;line-height:1.45;margin:12px 0 0;}
.admin-dash2026-pipeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;}.admin-dash2026-pipeline div{padding:12px;border-radius:16px;background:rgba(59,130,246,.10);border:1px solid rgba(59,130,246,.16);}.admin-dash2026-pipeline span{display:block;color:#b8c7e7;font-size:11px;font-weight:900;}.admin-dash2026-pipeline strong{display:block;color:#fff;font-size:21px;margin-top:4px;}
.admin-dash2026-links-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px;}.admin-dash2026-links-row a{padding:9px 12px;border-radius:999px;background:rgba(59,130,246,.18);border:1px solid rgba(59,130,246,.28);color:#dbeafe;font-weight:900;font-size:12px;}
.admin-dash2026-progress{height:12px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:16px;}.admin-dash2026-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#10b981,#3b82f6);}
.admin-dash2026-operacao-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}.admin-dash2026-operacao-lista span{display:block;color:#c6d5ef;margin-top:4px;font-size:12px;font-weight:800;}
.admin-dash2026-atalhos-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}.admin-dash2026-atalhos-grid a{padding:16px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(139,173,255,.14);color:#fff;min-height:118px;display:flex;flex-direction:column;justify-content:space-between;}.admin-dash2026-atalhos-grid span{font-size:16px;font-weight:900;color:#9fc5ff;}.admin-dash2026-atalhos-grid strong{color:#fff;font-size:15px;}.admin-dash2026-atalhos-grid small{color:#c6d5ef;font-weight:800;line-height:1.35;}
.admin-dash2026-aniversarios-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}.admin-dash2026-aniversarios-grid a{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;padding:14px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(139,173,255,.14);color:#fff;}.admin-dash2026-aniversarios-grid a>span{grid-row:1/3;width:44px;height:44px;border-radius:14px;background:rgba(59,130,246,.24);display:flex;align-items:center;justify-content:center;font-weight:900;color:#bfdbfe;}.admin-dash2026-aniversarios-grid strong{color:#fff;}.admin-dash2026-aniversarios-grid small{color:#c6d5ef;font-weight:750;}
@media(max-width:1100px){.admin-dash2026{width:min(100%, calc(100% - 28px));}.admin-dash2026-hero{grid-template-columns:1fr;}.admin-dash2026-overview{grid-template-columns:repeat(2,minmax(0,1fr));}.admin-dash2026-grid{grid-template-columns:1fr;}.admin-dash2026-atalhos-grid,.admin-dash2026-aniversarios-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.admin-dash2026-overview,.admin-dash2026-metricas-2,.admin-dash2026-financeiro-grid,.admin-dash2026-doc-grid,.admin-dash2026-app-grid,.admin-dash2026-operacao-lista,.admin-dash2026-pipeline,.admin-dash2026-atalhos-grid,.admin-dash2026-aniversarios-grid{grid-template-columns:1fr;}.admin-dash2026-hero,.admin-dash2026-card,.admin-dash2026-atalhos{padding:18px;}.admin-dash2026-card-head{flex-direction:column;align-items:flex-start;}}


/* COMERCIAL / LEADS - corrigir quebra da coluna Contato */
.leads-modern-table th:nth-child(2),
.leads-modern-table td:nth-child(2){
    width: 140px !important;
    max-width: 140px !important;
}

.leads-modern-table td:nth-child(2),
.leads-modern-table td:nth-child(2) .lead-contact-cell,
.leads-modern-table td:nth-child(2) .lead-contact-cell strong,
.leads-modern-table td:nth-child(2) .lead-contact-cell small{
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

.leads-modern-table td:nth-child(2) .lead-contact-cell strong,
.leads-modern-table td:nth-child(2) .lead-contact-cell small{
    display: block !important;
    line-height: 1.28 !important;
}

/* BALANÇAS DOS CLIENTES - CADASTRO */
.balancas-admin-page .clientes-admin-form select {
    width: 100%;
    min-height: 48px;
    border-radius: 14px;
    border: 1px solid rgba(148,163,184,0.26);
    background: rgba(255,255,255,0.92);
    padding: 0 14px;
    color: #102858;
    font-weight: 700;
    outline: none;
}

.clientes-admin-alert {
    border-radius: 18px;
    padding: 14px 18px;
    margin: 16px 0;
    font-weight: 800;
    box-shadow: 0 14px 30px rgba(15,40,88,0.10);
}

.clientes-admin-alert.sucesso {
    color: #065f46;
    background: rgba(209,250,229,0.96);
    border: 1px solid rgba(16,185,129,0.28);
}

.clientes-admin-alert.alerta {
    color: #92400e;
    background: rgba(254,243,199,0.96);
    border: 1px solid rgba(245,158,11,0.30);
}

/* CADASTRO / BALANÇAS - BUSCAS COM CARD DE CLIENTE */
.balancas-busca-form {
    align-items: flex-start;
}

.balancas-busca-form .balancas-autocomplete-wrap {
    flex: 1 1 520px;
    min-width: min(100%, 360px);
}

.balancas-autocomplete-input {
    min-height: 48px;
}

.balancas-autocomplete-resultados .agenda-cliente-opcao strong {
    line-height: 1.2;
}

.balancas-cliente-card-preview {
    margin-top: 10px;
    padding: 13px 15px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(51,117,250,0.16), rgba(14,165,163,0.13));
    border: 1px solid rgba(147,197,253,0.26);
    display: flex;
    flex-direction: column;
    gap: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
}

.balancas-cliente-card-preview strong {
    color: #ffffff;
    font-size: 14px;
    font-weight: 900;
}

.balancas-cliente-card-preview span {
    color: #b9d4ff;
    font-size: 13px;
    font-weight: 700;
}

.balancas-cliente-card-preview small {
    color: #dce5ff;
    font-size: 12px;
    line-height: 1.35;
}

.balancas-cliente-campo {
    grid-column: 1 / -1;
}

.balancas-cliente-campo .agenda-cliente-busca-wrap {
    width: 100%;
}

@media(max-width: 768px) {
    .balancas-busca-form .balancas-autocomplete-wrap {
        min-width: 100%;
        flex-basis: 100%;
    }

    .balancas-busca-form .clientes-admin-btn {
        width: 100%;
    }
}

/* SISTEMA / LOGS DO APP - UPLOAD DE APK */
.app-version-upload-card{border-color:rgba(80,135,255,.32);box-shadow:0 18px 44px rgba(0,0,0,.22)}
.app-version-upload-form{display:grid;grid-template-columns:1.1fr 1fr;gap:14px;padding:20px;background:rgba(8,29,70,.34)}
.app-version-upload-form label{display:flex;flex-direction:column;gap:7px;color:#dbe7ff;font-size:12px;font-weight:900}
.app-version-upload-form input[type="text"],.app-version-upload-form input[type="file"],.app-version-upload-form textarea{width:100%;border:1px solid rgba(139,173,255,.28);border-radius:14px;min-height:44px;padding:10px 12px;background:rgba(8,29,70,.92);color:#fff;outline:none;font-weight:800}
.app-version-upload-form textarea{resize:vertical;line-height:1.35;font-weight:750}.app-version-upload-form small{color:#9fb5db;font-size:11px;font-weight:750;line-height:1.25}.app-version-upload-wide,.app-version-upload-options{grid-column:1/-1}.app-version-upload-options{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:4px 0}.app-version-check{flex-direction:row!important;align-items:center!important;gap:9px!important;min-height:36px;padding:8px 12px;border:1px solid rgba(139,173,255,.22);border-radius:999px;background:rgba(255,255,255,.05)}.app-version-check input{width:16px;height:16px;accent-color:#3375fa}.app-version-upload-btn{justify-self:start;align-self:center}@media(max-width:900px){.app-version-upload-form{grid-template-columns:1fr}.app-version-upload-btn{width:100%;justify-self:stretch}}

/* Localizações GPS - clientes/balanças */
.localizacoes-admin-page{
    display:flex;
    flex-direction:column;
    gap:24px;
}

.localizacoes-admin-page .localizacoes-hero{
    background:
        radial-gradient(circle at top right, rgba(20,184,166,0.22), transparent 36%),
        linear-gradient(135deg, rgba(8,27,67,0.98), rgba(15,49,111,0.94));
}

.localizacoes-admin-page .localizacoes-hero .clientes-admin-eyebrow,
.localizacoes-admin-page .localizacoes-hero p{
    color:#c9d8ff;
}

.localizacoes-kpis{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}

.localizacoes-kpis>div{
    min-height:126px;
    padding:22px;
    border-radius:22px;
    background:rgba(13,34,79,0.90);
    border:1px solid rgba(255,255,255,0.10);
    box-shadow:0 12px 34px rgba(0,0,0,0.20);
    position:relative;
    overflow:hidden;
}

.localizacoes-kpis>div::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:5px;
    background:#60a5fa;
}

.localizacoes-kpis>div:nth-child(2)::before{background:#34d399;}
.localizacoes-kpis>div:nth-child(3)::before{background:#f59e0b;}

.localizacoes-kpis span{
    display:block;
    font-size:12px;
    font-weight:900;
    color:#bfdbfe;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.localizacoes-kpis strong{
    display:block;
    font-size:34px;
    color:#ffffff;
    margin-top:8px;
    line-height:1;
}

.localizacoes-kpis small{
    display:block;
    color:#aebff0;
    font-weight:700;
    margin-top:8px;
}

.localizacoes-busca-form{
    grid-template-columns:minmax(320px,1fr) minmax(190px,auto) auto auto;
    align-items:start;
}

.localizacoes-autocomplete-wrap{
    min-width:0;
}

.localizacoes-busca-form .clientes-admin-select,
.clientes-admin-filtros select.clientes-admin-select{
    width:100%;
    min-height:48px;
    border:1px solid rgba(255,255,255,0.12);
    border-radius:15px;
    background:rgba(255,255,255,0.07);
    color:#ffffff;
    padding:13px 15px;
    font-size:14px;
    font-family:'Montserrat',sans-serif;
    font-weight:800;
    outline:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
}

.localizacoes-busca-form .clientes-admin-select option{
    background:#102858;
    color:#ffffff;
}

.localizacoes-autocomplete-resultados.ativo{
    display:flex;
}

.localizacoes-lista{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(340px,1fr));
    gap:16px;
}

.localizacao-card{
    background:rgba(13,34,79,0.90);
    border:1px solid rgba(255,255,255,0.10);
    border-radius:24px;
    padding:18px;
    box-shadow:0 16px 40px rgba(0,0,0,0.22);
    position:relative;
    overflow:hidden;
    transition:.22s ease;
}

.localizacao-card::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:5px;
    background:#34d399;
}

.localizacao-card.inativo{
    opacity:.72;
    filter:grayscale(.2);
}

.localizacao-card.inativo::before{
    background:#94a3b8;
}

.localizacao-card:hover{
    transform:translateY(-2px);
    background:rgba(16,44,96,0.92);
    border-color:rgba(96,165,250,0.24);
}

.localizacao-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
}

.localizacao-card h3{
    margin:8px 0 5px;
    color:#ffffff;
    font-size:18px;
    line-height:1.22;
}

.localizacao-card p{
    margin:0;
    color:#b8c7f3;
    font-size:13px;
    font-weight:700;
    line-height:1.35;
}

.localizacao-status{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:6px 11px;
    background:rgba(52,211,153,.14);
    color:#bbf7d0;
    border:1px solid rgba(52,211,153,.28);
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.localizacao-card.inativo .localizacao-status{
    background:rgba(148,163,184,.14);
    color:#d7e2f2;
    border-color:rgba(148,163,184,.26);
}

.localizacao-map-pin{
    width:42px;
    height:42px;
    min-width:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    background:rgba(255,255,255,.08);
    color:#bfdbfe;
    text-decoration:none;
    font-size:25px;
    font-weight:900;
    border:1px solid rgba(255,255,255,.10);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
    transition:.2s ease;
}

.localizacao-map-pin:hover{
    background:linear-gradient(135deg,#3b82f6,#2563eb);
    color:#ffffff;
    transform:translateY(-2px);
}

.localizacao-meta-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:16px;
}

.localizacao-meta-grid div{
    background:rgba(255,255,255,0.055);
    border:1px solid rgba(255,255,255,0.08);
    border-radius:16px;
    padding:12px;
    min-height:68px;
}

.localizacao-meta-grid small{
    display:block;
    color:#9eb5f5;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.05em;
    margin-bottom:5px;
}

.localizacao-meta-grid strong{
    display:block;
    color:#ffffff;
    font-size:13px;
    line-height:1.3;
    word-break:break-word;
}

.localizacao-desc{
    margin-top:12px;
    background:rgba(245,158,11,.12);
    border:1px solid rgba(245,158,11,.22);
    color:#fde68a;
    border-radius:16px;
    padding:11px 12px;
    font-size:13px;
    font-weight:800;
}

.localizacao-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    border-top:1px solid rgba(255,255,255,0.08);
    margin-top:16px;
    padding-top:14px;
}

.localizacao-footer>span{
    color:#aebff0;
    font-size:12px;
    font-weight:700;
    line-height:1.4;
}

.localizacao-actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.localizacao-actions form{
    margin:0;
}

.clientes-admin-btn-danger{
    background:rgba(248,113,113,.14)!important;
    color:#fecaca!important;
    border:1px solid rgba(248,113,113,.28)!important;
}

.localizacoes-edit-card{
    margin-top:0;
}

.localizacoes-edit-info{
    background:rgba(255,255,255,0.055);
    border:1px solid rgba(255,255,255,0.08);
    border-radius:18px;
    padding:14px;
    margin-bottom:14px;
}

.localizacoes-edit-info strong{
    display:block;
    color:#ffffff;
    font-size:17px;
}

.localizacoes-edit-info span{
    display:block;
    color:#b8c7f3;
    margin-top:4px;
    font-weight:700;
}

.localizacoes-edit-form{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr;
    gap:12px;
    align-items:end;
}

.localizacoes-edit-form label{
    display:flex;
    flex-direction:column;
    gap:8px;
    color:#dbe6ff;
    font-size:13px;
    font-weight:800;
}

.localizacoes-edit-form input{
    width:100%;
    min-height:48px;
    border:1px solid rgba(255,255,255,0.12);
    border-radius:15px;
    background:rgba(255,255,255,0.07);
    color:#ffffff;
    padding:13px 15px;
    font-size:14px;
    font-family:'Montserrat',sans-serif;
    outline:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
}

.localizacoes-edit-form input:focus{
    border-color:rgba(96,165,250,0.78);
    box-shadow:0 0 0 3px rgba(59,130,246,0.16);
}

.localizacoes-form-actions{
    grid-column:1/-1;
    display:flex;
    gap:10px;
    justify-content:flex-end;
    flex-wrap:wrap;
}

.localizacoes-empty{
    padding:26px;
    display:flex;
    flex-direction:column;
    gap:6px;
    color:#b8c7f3;
}

.localizacoes-empty strong{
    color:#ffffff;
    font-size:18px;
}

@media(max-width:980px){
    .localizacoes-busca-form{
        grid-template-columns:1fr;
    }
}

@media(max-width:820px){
    .localizacoes-kpis{
        grid-template-columns:1fr;
    }
    .localizacoes-lista{
        grid-template-columns:1fr;
    }
    .localizacao-meta-grid{
        grid-template-columns:1fr;
    }
    .localizacao-footer{
        align-items:flex-start;
        flex-direction:column;
    }
    .localizacao-actions{
        justify-content:flex-start;
    }
    .localizacoes-edit-form{
        grid-template-columns:1fr;
    }
    .localizacoes-form-actions{
        justify-content:flex-start;
    }
}

