body{

margin:0;
font-family:Arial, Helvetica, sans-serif;
background:#f5f6f8;

}

.financeiro-categoria-despesa-topo{

display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
margin-bottom:12px;

}

.financeiro-categoria-despesa-topo label{

margin:0;

}

.financeiro-categorias-despesa{

display:grid;
gap:14px;
padding:14px;
border:1px solid rgba(10, 79, 138, 0.12);
border-radius:18px;
background:linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(239, 247, 255, 0.92));

}

.financeiro-categorias-despesa-form{

display:grid;
grid-template-columns:minmax(0, 1fr) auto auto;
gap:10px;
align-items:center;

}

.financeiro-categorias-despesa-lista{

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

}

.financeiro-categoria-item{

display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
padding:12px 14px;
border-radius:16px;
border:1px solid rgba(10, 79, 138, 0.12);
background:#ffffff;
box-shadow:0 10px 22px rgba(10, 79, 138, 0.08);

}

.financeiro-categoria-item strong{

font-size:0.96rem;
color:#0f3f6f;

}

.financeiro-categoria-acoes{

display:flex;
align-items:center;
gap:8px;

}

.financeiro-categorias-vazio{

margin:0;
padding:10px 12px;
border-radius:14px;
background:rgba(10, 79, 138, 0.06);
color:#4f6781;

}

@media (max-width: 900px){

.financeiro-categorias-despesa-form{

grid-template-columns:1fr;

}

.financeiro-categoria-item{

flex-direction:column;
align-items:flex-start;

}

}

.hidden{

display:none !important;

}

/* HEADER */

.header{

height:70px;
background:#2f6fab;
color:white;

display:flex;
align-items:center;
justify-content:space-between;

padding:0 30px;

}

.header-esquerda{

display:flex;
align-items:center;
gap:15px;

}

.logo{

font-weight:bold;
font-size:18px;

}

.usuario{

font-size:16px;

}

/* BOTAO MENU */

.menu-btn{

background:none;
border:none;
font-size:22px;
color:white;
cursor:pointer;

}

/* MENU LATERAL */

.menu-lateral{

position:fixed;
left:-230px;
top:70px;

width:230px;
height:100%;

background:#2f6fab;
color:white;

padding:20px;

transition:0.3s;

}

.menu-lateral.ativo{

left:0;

}

.menu-lateral a{

display:block;
color:white;
text-decoration:none;
margin-bottom:12px;

}

/* CONTEUDO */

.conteudo{

padding:40px;

}

/* TITULO */

.titulo{

font-size:32px;
margin-bottom:20px;

}

/* BUSCA */

.busca{

margin-bottom:20px;

}

.busca input{

width:350px;
padding:10px;

border-radius:6px;
border:1px solid #ccc;

}

/* BOTAO */

.botao{

background:#2f6fab;
color:white;

border:none;

padding:10px 16px;

border-radius:6px;

cursor:pointer;

}

.botao:hover{

background:#255a8c;

}

/* TABELA */

table{

border-collapse:collapse;
margin-top:20px;
width:700px;

}

th{

background:#2f6fab;
color:white;
padding:10px;
text-align:left;

}

td{

padding:10px;
border-bottom:1px solid #ddd;

}

/* MODAL */

.modal{

position:fixed;
top:0;
left:0;

width:100%;
height:100%;

background:rgba(0,0,0,0.5);

display:none;
align-items:center;
justify-content:center;
padding:24px 16px;
overflow:auto;
box-sizing:border-box;
justify-content:center;

}

.modal-conteudo{

background:white;
padding:30px;
border-radius:10px;
width:350px;

}

.modal input{

width:100%;
padding:10px;
margin-bottom:10px;

border-radius:6px;
border:1px solid #ccc;

}

/* BARRA DE AÇÕES */

.barra-acoes{

display:flex;
align-items:center;
gap:20px;

margin-bottom:25px;

}

/* CAMPO BUSCA */

.campo-busca{

width:420px;

padding:12px;

border-radius:25px;

border:2px solid #3c7f3c;

font-size:14px;

}

/* AÇÕES */

.acoes{

display:flex;
gap:10px;

}

/* BOTÕES REDONDOS */

.acao-btn{

width:45px;
height:45px;

border-radius:50%;

border:none;

background:#2f6fab;

color:white;

font-size:20px;

cursor:pointer;

}

.acao-btn:hover{

background:#214f7a;

}

/* PAGINA MODELO */

:root{

--cor-primaria:#2f6fab;
--cor-primaria-escura:#214f7a;
--cor-destaque:#3c9a7a;
--cor-fundo:#f3f7fb;
--cor-superficie:#ffffff;
--cor-texto:#18324a;
--cor-texto-suave:#648097;
--cor-borda:#d9e5ef;
--cor-alerta:#fff1dd;

}

.pagina-base{

padding:32px;
color:var(--cor-texto);

}

.topo-pagina{

display:flex;
justify-content:space-between;
align-items:flex-start;
gap:24px;
margin-bottom:28px;
flex-wrap:wrap;

}

.etiqueta-pagina{

display:inline-flex;
align-items:center;
gap:8px;
padding:8px 14px;
border-radius:999px;
background:#e4eef8;
color:var(--cor-primaria);
font-size:13px;
font-weight:bold;
letter-spacing:0.04em;
text-transform:uppercase;
margin-bottom:14px;

}

.topo-pagina h1{

margin:0 0 10px;
font-size:34px;

}

.topo-pagina p{

margin:0;
max-width:640px;
font-size:15px;
line-height:1.6;
color:var(--cor-texto-suave);

}

.topo-acoes{

display:flex;
gap:12px;
flex-wrap:wrap;

}

.botao-secundario{

background:var(--cor-superficie);
color:var(--cor-primaria);
border:1px solid var(--cor-borda);
padding:12px 16px;
border-radius:12px;
cursor:pointer;
font-weight:bold;

}

.botao-destaque{

background:linear-gradient(135deg, var(--cor-primaria), #4f8fca);
color:white;
border:none;
padding:12px 18px;
border-radius:12px;
cursor:pointer;
font-weight:bold;
box-shadow:0 12px 24px rgba(47, 111, 171, 0.18);

}

.grade-resumo{

display:grid;
grid-template-columns:repeat(auto-fit, minmax(190px, 1fr));
gap:18px;
margin-bottom:24px;

}

.card-resumo{

background:var(--cor-superficie);
border:1px solid var(--cor-borda);
border-radius:20px;
padding:20px;
box-shadow:0 14px 30px rgba(24, 50, 74, 0.06);

}

.card-resumo span{

display:block;
font-size:13px;
color:var(--cor-texto-suave);
margin-bottom:10px;

}

.card-resumo strong{

display:block;
font-size:28px;
margin-bottom:8px;

}

.card-resumo small{

color:var(--cor-destaque);
font-weight:bold;

}

.layout-base{

display:grid;
grid-template-columns:minmax(0, 1.7fr) minmax(280px, 0.9fr);
gap:24px;
align-items:start;

}

.painel-principal,
.painel-lateral{

background:var(--cor-superficie);
border:1px solid var(--cor-borda);
border-radius:24px;
padding:24px;
box-shadow:0 14px 30px rgba(24, 50, 74, 0.06);

}

.filtros-base{

display:grid;
grid-template-columns:minmax(220px, 1.5fr) repeat(2, minmax(150px, 1fr)) auto;
gap:12px;
margin-bottom:20px;

}

.campo-base,
.select-base{

width:100%;
padding:13px 14px;
border-radius:14px;
border:1px solid var(--cor-borda);
background:#fbfdff;
font-size:14px;
color:var(--cor-texto);
box-sizing:border-box;

}

.campo-base:focus,
.select-base:focus{

outline:none;
border-color:#7eaed8;
box-shadow:0 0 0 4px rgba(47, 111, 171, 0.12);

}

.cabecalho-secao{

display:flex;
justify-content:space-between;
align-items:center;
gap:12px;
margin-bottom:18px;
flex-wrap:wrap;

}

.cabecalho-secao h2,
.painel-lateral h2{

margin:0;
font-size:22px;

}

.cabecalho-secao p,
.painel-lateral p{

margin:6px 0 0;
color:var(--cor-texto-suave);
font-size:14px;

}

.status-tag{

display:inline-flex;
align-items:center;
padding:8px 12px;
border-radius:999px;
background:#e7f7f1;
color:#20745a;
font-size:13px;
font-weight:bold;

}

.status-compra-ok{

background:#e7f7f1;
color:#20745a;

}

.status-compra-alerta{

background:#fff4e7;
color:#9b5a14;

}

.status-compra-erro{

background:#fde4e4;
color:#9d2d2d;

}

.tabela-base{

width:100%;
margin-top:0;
border-collapse:separate;
border-spacing:0;
overflow:hidden;

}

.tabela-base th{

background:#eef5fb;
color:var(--cor-texto);
font-size:13px;
text-transform:uppercase;
letter-spacing:0.04em;
padding:14px 16px;

}

.tabela-base td{

padding:16px;
border-bottom:1px solid #edf2f7;
vertical-align:middle;

}

.tabela-base tr:last-child td{

border-bottom:none;

}

.pet-cell{

display:flex;
align-items:center;
gap:12px;

}

.pet-avatar{

width:42px;
height:42px;
border-radius:14px;
display:flex;
align-items:center;
justify-content:center;
background:#e8f1fa;
font-size:20px;

}

.pet-nome{

font-weight:bold;
margin-bottom:4px;

}

.texto-suave{

color:var(--cor-texto-suave);
font-size:13px;

}

.tag-servico{

display:inline-flex;
align-items:center;
padding:7px 10px;
border-radius:999px;
background:#fff4e7;
color:#9b5a14;
font-size:12px;
font-weight:bold;

}

.valor-base{

font-weight:bold;

}

.lista-lateral{

display:grid;
gap:12px;
margin-top:18px;

}

.item-lateral{

padding:16px;
border-radius:18px;
background:#f8fbfe;
border:1px solid #e6eef5;

}

.item-lateral strong{

display:block;
margin-bottom:6px;

}

.alerta-base{

margin-top:18px;
padding:16px;
border-radius:18px;
background:var(--cor-alerta);
border:1px solid #f3d7a9;
color:#7a5420;
font-size:14px;
line-height:1.5;

}

@media (max-width: 980px){

.layout-base{

grid-template-columns:1fr;

}

.filtros-base{

grid-template-columns:1fr 1fr;

}

}

@media (max-width: 640px){

.pagina-base{

padding:20px;

}

.topo-pagina h1{

font-size:28px;

}

.filtros-base{

grid-template-columns:1fr;

}

.topo-acoes{

width:100%;

}

.topo-acoes button{

flex:1;

}

}

/* CLIENTES */

.clientes-shell{

min-height:100vh;
background:white;

}

.clientes-topo{

display:grid;
grid-template-columns:auto 1fr auto;
align-items:center;
gap:20px;
padding:14px 24px 14px 28px;
border-bottom:1px solid #e7eef3;
background:rgba(255,255,255,0.94);
backdrop-filter:blur(10px);
position:sticky;
top:0;
z-index:25;
box-shadow:0 8px 20px rgba(17,58,83,0.04);

}

.clientes-topo-esquerda,
.clientes-topo-direita{

display:flex;
align-items:center;
gap:18px;

}

.logo-circular,
.usuario-foto{

width:94px;
height:94px;
border-radius:50%;
background:#246d92;
border:2px solid #13394d;
color:white;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
font-weight:bold;
line-height:1.1;

}

.logo-circular{

font-size:16px;

}

.logo-circular-imagem{

background-color:#ffffff;
background-position:center;
background-repeat:no-repeat;
background-size:cover;
color:transparent;
overflow:hidden;

}

.logo-circular-padrao{

background-color:#ffffff;
background-position:center;
background-repeat:no-repeat;
background-size:cover;
color:transparent;
overflow:hidden;

}

.usuario-foto{

font-size:12px;
padding:8px;
box-sizing:border-box;

}

.usuario-foto-imagem{

background-color:#ffffff;
background-position:center;
background-repeat:no-repeat;
background-size:cover;
color:transparent;
overflow:hidden;

}

.usuario-foto-padrao{

background-color:#ffffff;
background-position:center;
background-repeat:no-repeat;
background-size:cover;
color:transparent;
overflow:hidden;

}

.menu-topo-botao{

display:flex;
align-items:center;
gap:18px;
border:1px solid #dfe8ee;
background:#f8fbfd;
font-size:18px;
cursor:pointer;
color:#111;
padding:10px 14px;
border-radius:16px;
transition:background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;

}

.menu-topo-botao:hover{

background:#eef5f9;
transform:translateY(-1px);
box-shadow:0 8px 18px rgba(36,109,146,0.08);

}

.menu-topo-botao.ativo{

background:linear-gradient(180deg, #246d92 0%, #1d5876 100%);
border-color:#1d5876;
color:#ffffff;
box-shadow:0 12px 24px rgba(29,88,118,0.18);

}

.menu-topo-botao.ativo .menu-topo-icone i{

background:#ffffff;

}

.menu-topo-icone{

display:grid;
gap:6px;

}

.menu-topo-icone i{

display:block;
width:28px;
height:2px;
background:#246d92;

}

.clientes-topo-titulo{

text-align:center;
font-size:22px;
letter-spacing:0.03em;

}

.usuario-info-card{

display:flex;
flex-direction:column;
gap:4px;
padding:10px 14px;
background:linear-gradient(180deg, #2c739a 0%, #1d5c7f 100%);
border:1px solid #1a4a64;
color:white;
min-width:194px;
font-size:15px;
box-shadow:0 12px 22px rgba(20,69,94,0.12);

}

.usuario-info-card strong{

font-size:15px;

}

.usuario-acoes-topo{

display:flex;
flex-direction:column;
gap:10px;
margin-left:10px;

}

.botao-topo-atalho{

border:2px solid #13394d;
background:#ffffff;
color:#13394d;
border-radius:14px;
min-width:58px;
height:44px;
padding:0 14px;
font-size:16px;
font-weight:700;
cursor:pointer;
transition:transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;

}

.botao-topo-atalho:hover{

transform:translateY(-1px);
box-shadow:0 12px 24px rgba(19,57,77,0.12);

}

.botao-topo-atalho.sair{

background:#13394d;
color:#ffffff;
font-size:14px;

}

.menu-cliente-lateral{

position:fixed;
top:0;
left:0;
bottom:0;
width:84px;
padding:126px 12px 18px;
display:flex;
flex-direction:column;
gap:6px;
background:#ffffff;
border-right:1px solid #e4edf3;
box-shadow:10px 0 22px rgba(17,58,83,0.05);
z-index:20;
border-radius:0 18px 18px 0;
backdrop-filter:none;
overflow-x:hidden;
overflow-y:auto;
opacity:0.02;
transform:translateX(calc(-100% + 14px));
transition:width 0.26s ease, padding 0.26s ease, box-shadow 0.26s ease, transform 0.28s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.24s ease, background 0.24s ease;

}

.menu-cliente-lateral:hover{

width:84px;
padding:126px 12px 18px;
background:#ffffff;
border-right:1px solid #dce7ef;
border-radius:0 20px 20px 0;
backdrop-filter:blur(12px);
box-shadow:14px 0 28px rgba(17,58,83,0.08);
transform:none;
opacity:1;
overflow-y:auto;
overflow-x:hidden;

}

.menu-cliente-lateral.ativo{

width:226px;
padding:126px 12px 18px;
background:#ffffff;
border-right:1px solid #dce7ef;
border-radius:0 20px 20px 0;
backdrop-filter:blur(12px);
box-shadow:18px 0 34px rgba(17,58,83,0.1);
transform:none;
opacity:1;
overflow-y:auto;
overflow-x:hidden;

}

.menu-cliente-lateral:hover::-webkit-scrollbar,
.menu-cliente-lateral.ativo::-webkit-scrollbar{

width:6px;

}

.menu-cliente-lateral:hover::-webkit-scrollbar-thumb,
.menu-cliente-lateral.ativo::-webkit-scrollbar-thumb{

background:#d2dde6;
border-radius:999px;

}

.menu-cliente-lateral::-webkit-scrollbar{

width:6px;

}

.menu-cliente-lateral a{

color:#18324a;
text-decoration:none;
font-weight:bold;
transition:color 0.18s ease, transform 0.18s ease;

}

.menu-link-principal{

display:flex;
align-items:center;
gap:10px;
padding:8px 10px;
color:#18324a;
text-decoration:none;
font-weight:bold;
border-radius:14px;
position:relative;
overflow:hidden;
width:100%;
box-sizing:border-box;
transition:background 0.22s ease, color 0.22s ease, transform 0.22s ease;

}

.menu-cliente-lateral:not(.ativo) .menu-link-principal,
.menu-cliente-lateral:not(.ativo) .menu-grupo summary{

padding:4px 8px;
justify-content:center;
align-items:center;
background:transparent;
box-shadow:none;
width:100%;
box-sizing:border-box;
gap:0;

}

.menu-cliente-lateral:not(.ativo) .menu-link-principal{

min-height:54px;

}

.menu-cliente-lateral:not(.ativo) .menu-link-principal.ativo{

padding:4px 8px;
background:transparent;
box-shadow:none;

}

.menu-cliente-lateral:not(.ativo) .menu-link-principal.ativo::before{

display:none;

}

.menu-link-principal:hover,
.menu-subitens a:hover{

background:#f4f8fb;
color:#18324a;
transform:none;
box-shadow:none;

}

.menu-link-principal.ativo,
.menu-subitens a.ativo{

color:#246d92;
font-weight:bold;

}

.menu-link-principal.ativo{

position:relative;
padding-left:24px;
background:#eef5ff;
box-shadow:0 10px 18px rgba(79,131,255,0.14);

}

.menu-link-principal.ativo::before{

content:"";
position:absolute;
left:0;
top:6px;
bottom:6px;
width:4px;
border-radius:0 6px 6px 0;
background:#ef4f3d;

}

.menu-icone{

width:30px;
min-width:30px;
height:30px;
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:8px;
background:#f3f7fa;
border:1px solid #e5edf2;
box-shadow:none;
color:#8398a7;
font-size:14px;
font-weight:700;
letter-spacing:0.02em;
line-height:1;
overflow:visible;
transition:background 0.22s ease, color 0.22s ease, border-color 0.22s ease, transform 0.22s ease;

}

.menu-icone svg{

width:18px;
height:18px;
display:block;

}

.menu-cliente-lateral:not(.ativo) .menu-icone{

width:46px;
min-width:46px;
height:46px;
border-radius:10px;
box-shadow:none;
font-size:16px;
line-height:1;
margin:0 auto;
background:rgba(243,247,250,0.72);
border-color:rgba(229,237,242,0.72);

}

.menu-cliente-lateral:not(.ativo) .menu-icone svg{

width:20px;
height:20px;

}

.menu-link-principal:hover .menu-icone,
.menu-subitens a:hover .menu-icone,
.menu-grupo summary:hover .menu-icone{

background:#eaf2f7;
box-shadow:none;
transform:none;

}

.menu-link-principal.ativo .menu-icone,
.menu-subitens a.ativo .menu-icone{

background:#4f83ff;
color:#ffffff;
border-color:#4f83ff;
box-shadow:0 10px 20px rgba(79,131,255,0.22);

}

.menu-texto{

white-space:nowrap;
opacity:0;
transform:translateX(-6px);
transition:opacity 0.16s ease, transform 0.16s ease;
pointer-events:none;
font-size:13px;
letter-spacing:0.01em;
color:#4a6475;

}

.menu-cliente-lateral.ativo .menu-texto{

opacity:1;
transform:translateX(0);
pointer-events:auto;

}

.menu-cliente-lateral:not(.ativo) .menu-texto{

display:none;

}

.menu-grupo{

border-top:1px solid #eef3f6;
padding-top:8px;

}

.menu-cliente-lateral:not(.ativo) .menu-grupo{

display:none;

}

.menu-grupo:first-of-type{

border-top:none;
padding-top:0;

}

.menu-grupo summary{

list-style:none;
cursor:pointer;
font-weight:bold;
color:#18324a;
padding:7px 10px;
display:flex;
align-items:center;
justify-content:space-between;
border-radius:14px;
transition:background 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
overflow:hidden;

}

.menu-grupo summary:hover{

background:#f4f8fb;
box-shadow:none;
transform:none;

}

.menu-cliente-lateral:not(.ativo) .menu-grupo summary:hover{

background:transparent;
box-shadow:none;
transform:none;

}

.menu-cliente-lateral:not(.ativo) .menu-grupo summary{

width:100%;
box-sizing:border-box;

}

.menu-grupo summary::-webkit-details-marker{

display:none;

}

.menu-grupo summary::after{

content:"+";
font-size:14px;
color:#91a4b2;
opacity:0;
transition:opacity 0.16s ease;

}

.menu-cliente-lateral.ativo .menu-grupo summary::after{

opacity:1;

}

.menu-grupo[open] summary::after{

content:"-";

}

.menu-subitens{

display:grid;
gap:6px;
padding:6px 0 2px 8px;

}

.menu-cliente-lateral:not(.ativo) .menu-subitens{

display:none;

}

.menu-subitens a{

display:flex;
align-items:center;
gap:10px;
font-weight:normal;
color:#577084;
padding:7px 8px;
border-radius:12px;
position:relative;
overflow:hidden;

}

.menu-subitens a.ativo{

padding-left:10px;
border-left:2px solid #246d92;
background:#eef5ff;
box-shadow:none;

}

.clientes-pagina{

padding:24px 48px 48px 42px;
max-width:1280px;
margin:0 auto;

}

.clientes-cabecalho-modulo{

display:flex;
align-items:flex-start;
justify-content:space-between;
gap:24px;
margin-bottom:28px;
padding-top:10px;

}

.clientes-cabecalho-modulo h1{

margin:32px 0 0;
font-size:24px;
font-weight:800;
letter-spacing:0.03em;
color:#103a5a;

}

.modulo-subtitulo{

margin:8px 0 0;
color:#577084;
font-size:14px;
line-height:1.5;

}

.relatorio-filtros-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:12px;
width:100%;

}

.relatorio-grafico-lista{

display:flex;
flex-direction:column;
gap:14px;

}

.relatorio-grafico-linha{

display:flex;
flex-direction:column;
gap:8px;

}

.relatorio-grafico-topo{

display:flex;
justify-content:space-between;
gap:12px;
align-items:center;
font-size:14px;
color:#496887;

}

.relatorio-grafico-topo strong{

color:#123a5f;
font-size:14px;

}

.relatorio-grafico-trilha{

height:12px;
border-radius:999px;
background:#edf4fb;
overflow:hidden;

}

.relatorio-grafico-barra{

height:100%;
border-radius:999px;
background:linear-gradient(90deg,#1f5b8f,#5b95c7);

}

.relatorio-grafico-barra.entrada{

background:linear-gradient(90deg,#1f8f6e,#6bc7aa);

}

.relatorio-grafico-barra.saida{

background:linear-gradient(90deg,#c85b4a,#ef9c8f);

}

.relatorio-grafico-barra.atencao{

background:linear-gradient(90deg,#c28a20,#efd38c);

}

.clientes-ferramentas{

display:flex;
align-items:flex-start;
gap:20px;
flex-wrap:wrap;

}

.clientes-busca-wrap{

position:relative;
display:flex;
align-items:center;
margin-top:18px;

}

.clientes-busca{

width:470px;
max-width:100%;
padding:14px 22px 14px 60px;
border-radius:30px;
border:2px solid #57b137;
font-size:16px;
background:#ffffff;
box-shadow:0 10px 24px rgba(30, 89, 118, 0.06);

}

.clientes-busca:focus{

outline:none;
box-shadow:0 0 0 4px rgba(87, 177, 55, 0.12);

}

.clientes-busca-icone{

position:absolute;
left:18px;
width:22px;
height:22px;
border:4px solid #111;
border-radius:50%;

}

.clientes-busca-icone::after{

content:"";
position:absolute;
width:14px;
height:4px;
background:#111;
border-radius:999px;
right:-10px;
bottom:-6px;
transform:rotate(45deg);

}

.clientes-acoes-rapidas{

display:flex;
align-items:flex-start;
gap:14px;

}

.clientes-acoes-planilha{

display:flex;
align-items:center;
gap:10px;
flex-wrap:wrap;

}

.acao-circular{

width:48px;
height:48px;
border-radius:50%;
border:2px solid #13394d;
background:#246d92;
color:white;
font-size:26px;
line-height:1;
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;
font-weight:bold;
box-shadow:0 10px 22px rgba(19,57,77,0.14);

}

.acao-circular:nth-child(2){

background:#2a7f6f;
border-color:#195247;

}

.acao-circular:nth-child(3){

background:#d9822b;
border-color:#8f5117;

}

.clientes-conteudo{

max-width:1020px;

}

.clientes-tabela-card{

overflow-x:auto;
border-radius:22px;
background:#f4f8fb;
border:1px solid #dce7f0;
box-shadow:0 14px 28px rgba(18, 57, 77, 0.08);

}

.cliente-linha{

cursor:pointer;
transition:transform 0.18s ease, box-shadow 0.18s ease;

}

.cliente-linha:hover td{

background:#cfd9e3;

}

.cliente-linha.ativa td{

background:#c6d8e8;

}

.clientes-filtros-tabela{

display:flex;
gap:12px;
flex-wrap:wrap;
margin-bottom:16px;
align-items:center;

}

.filtro-tabela-select{

min-width:180px;
padding:10px 12px;
border-radius:12px;
border:1px solid #cdd9e3;
background:#fbfdff;
font:inherit;

}

.filtro-tabela-select:focus{

outline:none;
border-color:#7eaed8;
box-shadow:0 0 0 4px rgba(47, 111, 171, 0.12);

}

.clientes-tabela{

width:100%;
max-width:830px;
border-collapse:separate;
border-spacing:0;
font-size:18px;

}

.clientes-tabela th{

background:#246d92;
color:white;
padding:14px 14px;
font-size:17px;
text-align:left;
border-right:2px solid rgba(255,255,255,0.7);
letter-spacing:0.01em;

}

.cabecalho-ordenavel{

background:transparent;
border:none;
color:white;
font:inherit;
font-weight:bold;
padding:0;
cursor:pointer;
display:inline-flex;
align-items:center;
gap:8px;
transition:opacity 0.2s ease, transform 0.2s ease;

}

.cabecalho-ordenavel:hover{

opacity:0.92;

}

.cabecalho-ordenavel.ativo{

transform:translateY(-1px);

}

.indicador-ordenacao{

display:inline-flex;
align-items:center;
justify-content:center;
min-width:14px;
font-size:13px;
font-weight:bold;
line-height:1;

}

.clientes-tabela th:last-child{

border-right:none;

}

.clientes-tabela td{

padding:12px 14px;
background:#d5dbe1;
border-bottom:2px solid white;
border-right:2px solid white;
vertical-align:top;

}

.clientes-tabela td:last-child{

border-right:none;

}

.cliente-pet-principal{

font-weight:bold;
color:#18324a;

}

.cliente-pet-contagem{

display:block;
margin-top:4px;
color:#577084;
font-size:12px;

}

.acoes-tabela{

display:flex;
gap:8px;
flex-wrap:wrap;

}

.botao-tabela{

border:none;
border-radius:10px;
padding:7px 10px;
font-size:12px;
font-weight:bold;
cursor:pointer;

}

.botao-tabela.editar{

background:#dceefd;
color:#1f6287;

}

.botao-tabela.detalhes{

background:#e6f7ef;
color:#1f7a58;

}

.botao-tabela.excluir{

background:#fde4e4;
color:#9d2d2d;

}

.clientes-vazio{

text-align:center;
padding:24px;
background:#eef3f7 !important;
color:#577084;

}

.clientes-paginacao{

display:flex;
justify-content:space-between;
align-items:center;
gap:12px;
flex-wrap:wrap;
margin:18px 0 22px;

}

.clientes-paginacao-info{

color:#577084;
font-size:14px;
font-weight:bold;

}

.clientes-paginacao-acoes{

display:flex;
gap:10px;
flex-wrap:wrap;

}

.botao-secundario[disabled]{

opacity:0.55;
cursor:not-allowed;

}

.clientes-resumo-rapido{

padding:22px;
border-radius:24px;
border:1px solid #d9e5ef;
background:linear-gradient(180deg, #fbfdff 0%, #f4f8fc 100%);
box-shadow:0 14px 30px rgba(24, 50, 74, 0.06);

}

.clientes-resumo-topo{

display:flex;
justify-content:space-between;
align-items:flex-start;
gap:16px;
margin-bottom:18px;
flex-wrap:wrap;

}

.clientes-resumo-topo h2{

margin:0 0 6px;
font-size:22px;
color:#18324a;

}

.clientes-resumo-topo p{

margin:0;
color:#577084;

}

.clientes-resumo-conteudo{

display:grid;
gap:18px;

}

.clientes-aniversarios-wrap{

display:flex;
flex-wrap:wrap;
gap:10px;

}

.detalhes-aniversarios-wrap{

margin-bottom:18px;

}

.clientes-resumo-grid{

display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:16px;

}

.clientes-resumo-card{

transition:transform 0.18s ease, box-shadow 0.18s ease;

}

.clientes-resumo-card:hover{

transform:translateY(-2px);
box-shadow:0 16px 30px rgba(19,57,77,0.08);

}

.clientes-resumo-card:not(.financeiro-resumo-clicavel):not(.clientes-resumo-pet-card-clicavel),
.agenda-creche-resumo-card,
.agenda-card-item,
.agenda-creche-card,
.detalhes-card,
.historico-pet-card,
.pet-temporario-card,
.pets-resumo-card,
.ajuda-publica-card,
.universidade-curso-card,
.universidade-aula-card,
.universidade-suporte-card,
.financeiro-painel-card{

cursor:pointer;

}

.pacote-card-resumido{

padding:18px;

}

.pacote-card-topo{

width:100%;
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:16px;
background:transparent;
border:0;
padding:0;
text-align:left;
cursor:pointer;

}

.pacote-card-topo p{

margin:6px 0 0;

}

.pacote-card-toggle{

display:inline-flex;
align-items:center;
justify-content:center;
padding:8px 12px;
border-radius:999px;
background:#eef5fb;
color:#1c5b84;
font-weight:700;
font-size:0.88rem;
white-space:nowrap;

}

.pacote-card-resumido.ativo .pacote-card-toggle{

background:#dff1e6;
color:#19704e;

}

.botao-secundario,
.botao-destaque,
.botao-tabela,
.acao-circular{

transition:transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;

}

.botao-secundario:hover,
.botao-destaque:hover,
.botao-tabela:hover,
.acao-circular:hover{

transform:translateY(-1px);
box-shadow:0 12px 24px rgba(19,57,77,0.12);
filter:saturate(1.02);

}

@media (max-width: 980px){

.clientes-topo{
grid-template-columns:1fr;
justify-items:center;
text-align:center;
}

.clientes-topo-esquerda,
.clientes-topo-direita{
flex-wrap:wrap;
justify-content:center;
}

.usuario-acoes-topo{
flex-direction:row;
margin-left:0;
}

.clientes-cabecalho-modulo{
flex-direction:column;
}

.clientes-pagina{
padding:20px 20px 40px;
}

.clientes-busca{
width:100%;
}

}

padding:18px;
border-radius:18px;
background:white;
border:1px solid #dce7f0;

}

.clientes-resumo-card span{

display:block;
margin-bottom:8px;
color:#246d92;
font-size:13px;
font-weight:bold;
text-transform:uppercase;

}

.clientes-resumo-card strong{

display:block;
margin-bottom:8px;
font-size:22px;
color:#18324a;

}

.clientes-resumo-card p{

margin:6px 0 0;
color:#577084;

}

.compra-card-topo{

display:flex;
justify-content:space-between;
align-items:center;
gap:12px;
flex-wrap:wrap;
margin-bottom:8px;

}

.compra-acoes-card{

justify-content:flex-start;
border-top:none;
padding-top:10px;
margin-top:8px;

}

.clientes-resumo-subtopo{

display:flex;
justify-content:space-between;
align-items:center;
gap:12px;
flex-wrap:wrap;

}

.clientes-resumo-subtopo strong{

font-size:18px;
color:#18324a;

}

.clientes-resumo-pets{

display:grid;
gap:14px;

}

.clientes-resumo-pet-card{

display:flex;
align-items:center;
gap:14px;
padding:14px 16px;
border-radius:18px;
background:white;
border:1px solid #dce7f0;

}

.clientes-resumo-pet-card-clicavel{

cursor:pointer;
transition:transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;

}

.clientes-resumo-pet-card-clicavel:hover,
.clientes-resumo-pet-card-clicavel:focus-visible{

transform:translateY(-1px);
border-color:#9dc7ea;
box-shadow:0 12px 24px rgba(22, 76, 118, 0.10);
outline:none;

}

.clientes-resumo-pet-foto{

width:72px;
height:72px;
border-radius:16px;
object-fit:cover;
border:1px solid #d4e1eb;
background:#eef4f9;
display:flex;
align-items:center;
justify-content:center;
font-size:12px;
color:#648097;
text-align:center;
padding:6px;
box-sizing:border-box;

}

.clientes-resumo-pet-card strong{

display:block;
margin-bottom:6px;
color:#18324a;

}

.clientes-resumo-pet-card p{

margin:4px 0 0;
color:#577084;

}

.clientes-resumo-vazio{

padding:18px;
border-radius:16px;
background:linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
border:1px dashed #c7d7e5;
color:#577084;
text-align:center;
font-weight:600;

}

.fornecedor-historico-lista{

display:grid;
gap:12px;
margin-top:12px;

}

.fornecedor-historico-item{

padding:14px;
border-radius:14px;
background:#f8fbfe;
border:1px solid #dbe7f0;

}

.fornecedor-historico-item strong{

display:block;
margin-bottom:6px;
color:#18324a;

}

.fornecedor-historico-item p{

margin:4px 0 0;
color:#577084;
font-size:14px;

}

.pacote-cronograma-lista{

display:grid;
gap:16px;

}

.pacote-cronograma-item{

border:1px solid rgba(26, 91, 132, 0.14);
border-radius:20px;
padding:18px;
background:linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
box-shadow:0 14px 32px rgba(21, 57, 88, 0.06);

}

.pacote-cronograma-topo{

display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
margin-bottom:14px;

}

.pacote-cronograma-topo strong{

color:#123f63;
font-size:1rem;

}

.pacote-cronograma-topo span{

font-size:0.88rem;
color:#5e7690;
background:#edf5fb;
border-radius:999px;
padding:6px 10px;

}

.pacote-checkbox-pagamento{

display:flex;
align-items:center;
gap:10px;
min-height:46px;
padding:10px 12px;
border-radius:14px;
border:1px solid rgba(27, 95, 142, 0.14);
background:#f7fbff;
color:#234b69;

}

.pacote-checkbox-pagamento input{

width:18px;
height:18px;
accent-color:#2d72d2;

}

.pacote-checkbox-pagamento span{

font-size:0.92rem;
font-weight:600;

}

.pacote-checkbox-pagamento.desabilitado{

opacity:.72;
background:#f3f6f9;

}

.pacote-dias-semana-grid{

display:grid;
grid-template-columns:repeat(auto-fit, minmax(86px, 1fr));
gap:10px;
margin-top:6px;

}

.pacote-dias-semana-grid label{

display:flex;
align-items:center;
justify-content:space-between;
gap:8px;
min-height:46px;
padding:12px 16px;
border-radius:14px;
border:1px solid rgba(27, 95, 142, 0.14);
background:linear-gradient(180deg, #ffffff 0%, #f5faff 100%);
color:#234b69;
font-size:.92rem;
font-weight:600;
cursor:pointer;
user-select:none;
box-shadow:0 10px 24px rgba(21, 57, 88, 0.05);

}

.pacote-dias-semana-grid input{

width:18px;
height:18px;
accent-color:#2d72d2;
flex:0 0 auto;

}

.pacote-dias-semana-grid label:has(input:checked){

border-color:#8cbcff;
background:linear-gradient(180deg, #eef5ff 0%, #dfeeff 100%);
color:#16496f;
box-shadow:0 12px 28px rgba(45, 114, 210, 0.16);

}

.agenda-creche-lista{

display:grid;
grid-template-columns:1fr;
gap:14px;

}

.agenda-creche-card{

padding:18px;
border-radius:20px;
border:1px solid rgba(36, 116, 75, 0.16);
background:linear-gradient(180deg, #ffffff 0%, #f4fbf7 100%);
box-shadow:0 14px 30px rgba(21, 57, 88, 0.06);

}

.agenda-creche-card.creche-permanencia{

border-color:#bfe1cc;
background:linear-gradient(180deg, #ffffff 0%, #f1faf5 100%);

}

.agenda-creche-card.creche-checkin{

border-color:#f1d08f;
background:linear-gradient(180deg, #ffffff 0%, #fff8ea 100%);

}

.agenda-creche-card.creche-finalizado{

border-color:#b7d8c5;
background:linear-gradient(180deg, #ffffff 0%, #edf8f1 100%);
opacity:0.96;

}

.agenda-creche-card .agenda-card-topo{

padding-bottom:10px;
border-bottom:1px solid #deece3;

}

.agenda-creche-card p{

margin:0;
color:#466478;
line-height:1.5;

}

.agenda-creche-periodo{

background:#e7f6ed;
color:#24744b;
border-color:#bfe1cc;
font-weight:700;

}

.agenda-creche-card.creche-checkin .agenda-creche-periodo{

background:#fff3db;
color:#986019;
border-color:#f1d08f;

}

.agenda-creche-card.creche-finalizado .agenda-creche-periodo{

background:#e7f7ef;
color:#1f6a48;
border-color:#b7d8c5;

}

.modal-cliente-conteudo,
.modal-cliente-cadastro,
.modal-pet-cadastro{

width:min(1100px, calc(100vw - 40px));
max-width:1100px;
max-height:90vh;
overflow:auto;
box-sizing:border-box;

}

.modal-cliente-cadastro{

padding-bottom:20px;
overflow:auto;

}

.campo-aviso{

font-size:12px;
line-height:1.45;

}

.campo-aviso-oculto{

display:none;

}

.campo-aviso-erro{

display:block;
color:#b54040;

}

.input-duplicado{

border-color:#d47070 !important;
box-shadow:0 0 0 4px rgba(212, 112, 112, 0.14) !important;

}

.modal-detalhes-cliente{

width:min(1000px, calc(100vw - 40px));
max-width:1000px;
max-height:88vh;
overflow:auto;

}

.modal-topo-acoes{

display:flex;
align-items:center;
gap:12px;

}

.modal-fechar-x{

width:38px;
height:38px;
border-radius:999px;
border:1px solid #c4d5e4;
background:#f5f9fc;
color:#103a5a;
font-size:18px;
font-weight:700;
cursor:pointer;
transition:background 0.2s ease, transform 0.2s ease;

}

.modal-fechar-x:hover{

background:#e7f0f7;
transform:translateY(-1px);

}

.detalhes-cliente-conteudo{

display:grid;
gap:22px;

}

.detalhes-abas{

display:flex;
gap:10px;
flex-wrap:wrap;

}

.detalhes-aba{

padding:10px 16px;
border-radius:999px;
border:1px solid #c8d8e5;
background:#f5f9fc;
color:#246d92;
font-weight:bold;
cursor:pointer;

}

.detalhes-aba.ativo{

background:#246d92;
color:white;
border-color:#246d92;

}

.detalhes-aba-painel{

display:none;

}

.detalhes-aba-painel.ativo{

display:block;

}

.detalhes-cliente-topo{

display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:16px;

}

.detalhes-card,
.detalhes-bloco,
.historico-pet-card{

background:#f8fbfe;
border:1px solid #dbe7f0;
border-radius:20px;
padding:20px;

}

.detalhes-card span,
.detalhes-bloco h3,
.historico-pet-card h4{

display:block;
margin:0 0 8px;
color:#246d92;

}

.pet-detalhe-card{

display:grid;
gap:14px;

}

.pet-detalhe-topo{

display:flex;
justify-content:space-between;
align-items:flex-start;
gap:16px;
flex-wrap:wrap;

}

.pet-detalhe-topo p{

margin:4px 0 0;
color:#577084;

}

.pet-alertas-rapidos{

display:flex;
gap:8px;
flex-wrap:wrap;
justify-content:flex-end;

}

.pet-alerta-chip,
.pet-status-chip{

display:inline-flex;
align-items:center;
padding:7px 10px;
border-radius:999px;
font-size:12px;
font-weight:bold;

}

.pet-alerta-chip{

background:#fff4e7;
color:#9b5a14;

}

.pet-alerta-chip.neutro{

background:#eaf3fb;
color:#246d92;

}

.pet-status-chip.status-ok{

background:#e7f7f1;
color:#20745a;

}

.pet-status-chip.status-alerta{

background:#fff4e7;
color:#9b5a14;

}

.pet-status-chip.status-vencido{

background:#fde4e4;
color:#9d2d2d;

}

.pet-status-chip.status-info{

background:#eaf3fb;
color:#246d92;

}

.pet-registro-topo{

display:flex;
justify-content:space-between;
align-items:center;
gap:12px;
flex-wrap:wrap;
margin-bottom:8px;

}

.pet-comportamento-resumo{

display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:10px 16px;
padding:14px;
border-radius:16px;
background:white;
border:1px solid #dbe7f0;

}

.pet-comportamento-linha{

color:#577084;
font-size:14px;

}

.pet-comportamento-linha strong{

color:#18324a;

}

.detalhes-card strong{

display:block;
font-size:22px;
margin-bottom:8px;

}

.detalhes-card p,
.detalhe-pet-card p,
.historico-item p{

margin:6px 0 0;
color:#577084;

}

.detalhes-pets-grid,
.detalhes-historico-lista{

display:grid;
gap:14px;

}

.detalhe-pet-card{

display:flex;
align-items:center;
gap:14px;
padding:14px;
border-radius:16px;
background:white;
border:1px solid #dbe7f0;

}

.detalhe-pet-foto{

width:72px;
height:72px;
object-fit:cover;
border-radius:16px;
border:1px solid #d4e1eb;
background:#eef4f9;
display:flex;
align-items:center;
justify-content:center;
font-size:12px;
color:#648097;
text-align:center;
padding:6px;
box-sizing:border-box;

}

.historico-item{

padding:14px 0;
border-top:1px solid #e5edf4;

}

.historico-formulario{

display:grid;
gap:10px;
margin-bottom:16px;
padding:14px;
border-radius:16px;
background:white;
border:1px solid #dbe7f0;

}

.historico-filtros{

display:flex;
gap:10px;
flex-wrap:wrap;
margin-bottom:16px;

}

.historico-filtro-btn{

padding:8px 12px;
border-radius:999px;
border:1px solid #c8d8e5;
background:#f5f9fc;
color:#246d92;
font-weight:bold;
cursor:pointer;

}

.historico-filtro-btn.ativo{

background:#246d92;
color:white;
border-color:#246d92;

}

.historico-formulario select,
.historico-formulario input,
.historico-formulario textarea{

width:100%;
padding:12px 14px;
border-radius:12px;
border:1px solid #cdd9e3;
font:inherit;
box-sizing:border-box;
background:#fbfdff;

}

.pacote-contrato-card{

display:grid;
gap:12px;
padding:16px;
border:1px solid #d7e4ef;
border-radius:18px;
background:#f8fbfe;
margin-top:14px;

}

.pacote-itens-lista{

display:grid;
gap:8px;

}

.pacote-item-linha{

display:flex;
justify-content:space-between;
gap:12px;
padding:10px 12px;
border-radius:12px;
background:#ffffff;
border:1px solid #e0ebf4;
font-size:14px;
color:#28485f;

}

.pacote-item-linha strong{

color:#103a5a;

}

.pacote-consumo-formulario{

grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
align-items:end;

}

.pacote-cronograma-mes{

display:grid;
gap:10px;
padding:14px;
border-radius:16px;
background:#eef6fb;
border:1px solid #d8e6f0;

}

.pacote-cronograma-mes > strong{

color:#103a5a;

}

.pacote-cronograma-lista{

display:grid;
gap:8px;

}

.pacote-cronograma-linha{

display:flex;
justify-content:space-between;
align-items:flex-start;
gap:14px;
padding:10px 12px;
border-radius:12px;
background:#ffffff;
border:1px solid #dce8f1;

}

.pacote-cronograma-linha p{

margin:4px 0 0;
color:#577084;
font-size:13px;

}

.pacote-cronograma-vazio{

padding:12px 14px;
border-radius:14px;
background:#f8fbfe;
border:1px dashed #c8d9e7;
color:#577084;

}

.agenda-conteudo{

display:grid;
gap:24px;

}

.agenda-duas-colunas{

display:grid;
grid-template-columns:minmax(0, 1.7fr) minmax(320px, 0.95fr);
gap:24px;
align-items:start;

}

.agenda-topo-painel,
.agenda-grade-card,
.agenda-modal-bloco{

background:#ffffff;
border:1px solid #d9e7f1;
border-radius:24px;
padding:24px;
box-shadow:0 18px 40px rgba(16, 58, 90, 0.08);

}

.agenda-navegacao{

display:flex;
justify-content:space-between;
align-items:center;
gap:16px;
flex-wrap:wrap;
margin-bottom:18px;

}

.agenda-data-central{

display:flex;
align-items:center;
gap:14px;
flex-wrap:wrap;

}

.agenda-data-central strong{

font-size:22px;
color:#103a5a;
text-transform:capitalize;

}

.agenda-data-central input{

border:1px solid #c9d9e6;
border-radius:14px;
padding:12px 14px;
font-size:15px;

}

.agenda-faixa-semana{

display:grid;
grid-template-columns:repeat(auto-fit, minmax(90px, 1fr));
gap:12px;

}

.agenda-modo-toggle{

display:flex;
gap:10px;
margin-bottom:18px;
flex-wrap:wrap;

}

.agenda-dia-semana{

border:1px solid #d4e2ee;
border-radius:18px;
background:#f7fbfe;
padding:14px 12px;
display:grid;
gap:4px;
color:#28485f;
cursor:pointer;
transition:all 0.2s ease;

}

.agenda-dia-semana strong{

font-size:20px;
color:#103a5a;

}

.agenda-dia-semana.ativo,
.agenda-dia-semana:hover{

background:#103a5a;
border-color:#103a5a;
color:#f4f9fd;

}

.agenda-dia-semana.ativo strong,
.agenda-dia-semana:hover strong{

color:#ffffff;

}

.agenda-resumo-grid{

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

}

.agenda-filtros-card{

padding:20px 22px;
border-radius:24px;
border:1px solid #d8e5ef;
background:linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
box-shadow:0 12px 30px rgba(16, 58, 90, 0.08);

}

.agenda-filtros-grid{

display:grid;
grid-template-columns:minmax(220px, 320px);
gap:16px;

}

.agenda-semana-grid{

display:grid;
grid-template-columns:repeat(7, minmax(180px, 1fr));
gap:14px;
overflow:auto;

}

.agenda-semana-coluna{

display:grid;
gap:12px;
min-width:180px;
padding:16px;
border-radius:20px;
border:1px solid #d8e5ef;
background:#f9fbfe;

}

.agenda-semana-coluna.ativo{

border-color:#103a5a;
background:#f1f7fb;

}

.agenda-semana-topo{

display:flex;
justify-content:space-between;
align-items:center;
gap:8px;
color:#103a5a;
font-weight:700;
text-transform:capitalize;

}

.agenda-semana-lista{

display:grid;
gap:10px;

}

.agenda-semana-lista.drag-over{

outline:2px dashed #2f7fb2;
outline-offset:6px;
border-radius:18px;

}

.agenda-semana-item{

display:grid;
gap:6px;
padding:12px;
border-radius:16px;
background:#ffffff;
border:1px solid #dbe7f1;

}

.agenda-semana-item.arrastavel{

cursor:grab;

}

.agenda-semana-item strong{

color:#103a5a;
font-size:14px;

}

.agenda-semana-item p{

margin:0;
font-size:13px;
color:#5d7a90;

}

.agenda-profissional-label{

display:inline-flex;
align-items:center;
justify-content:center;
width:max-content;
padding:5px 10px;
border-radius:999px;
background:#e6f1fa;
color:#1d648f;
font-size:12px;
font-weight:700;

}

.agenda-semana-vazio{

padding:16px 12px;
border-radius:16px;
border:1px dashed #cad9e6;
color:#7b92a4;
background:#ffffff;
font-size:14px;

}

.agenda-mes-grid{

display:grid;
gap:14px;

}

.agenda-mes-cabecalho,
.agenda-mes-corpo{

display:grid;
grid-template-columns:repeat(7, minmax(0, 1fr));
gap:12px;

}

.agenda-mes-cabecalho-item{

padding:12px 10px;
border-radius:14px;
background:#eef4fa;
border:1px solid #d7e4ef;
color:#36566c;
font-size:12px;
font-weight:800;
letter-spacing:0.04em;
text-transform:uppercase;
text-align:center;

}

.agenda-mes-dia{

display:grid;
gap:12px;
min-height:148px;
padding:14px;
border-radius:20px;
border:1px solid #d8e5ef;
background:linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
box-shadow:0 12px 26px rgba(16, 58, 90, 0.06);
text-align:left;
cursor:pointer;
transition:transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;

}

.agenda-mes-dia:hover{

transform:translateY(-2px);
box-shadow:0 18px 34px rgba(16, 58, 90, 0.1);
border-color:#9fc1d8;

}

.agenda-mes-dia.ativo{

border-color:#103a5a;
box-shadow:0 18px 36px rgba(16, 58, 90, 0.14);

}

.agenda-mes-dia.fora-mes{

opacity:0.65;
background:#f7f9fb;

}

.agenda-mes-dia-topo{

display:flex;
align-items:center;
justify-content:space-between;
gap:10px;

}

.agenda-mes-dia-topo strong{

font-size:20px;
color:#103a5a;

}

.agenda-mes-dia-topo span{

font-size:11px;
font-weight:800;
letter-spacing:0.04em;
text-transform:uppercase;
color:#5b788d;

}

.agenda-mes-dia-corpo{

display:grid;
gap:8px;
align-content:start;

}

.agenda-mes-tag{

display:inline-flex;
align-items:center;
padding:6px 10px;
border-radius:999px;
font-size:12px;
font-weight:700;
line-height:1.35;
background:#edf4fa;
color:#31536b;
width:max-content;
max-width:100%;

}

.agenda-mes-tag.neutro{

background:#eef2f6;
color:#617788;

}

.agenda-mes-dia p{

margin:0;
align-self:end;
color:#5d7a90;
font-size:13px;

}

.agenda-grade-topo,
.agenda-bloco-topo{

display:flex;
justify-content:space-between;
align-items:flex-start;
gap:12px;
margin-bottom:18px;
flex-wrap:wrap;

}

.agenda-grade-topo h2,
.agenda-bloco-topo h3{

margin:0;
color:#103a5a;

}

.agenda-grade-topo p,
.agenda-bloco-topo p{

margin:4px 0 0;
color:#5d7a90;

}

.agenda-grade-horarios{

display:grid;
gap:14px;

}

.agenda-grade-principal-card{

min-width:0;

}

.agenda-creche-painel{

position:sticky;
top:130px;
align-self:start;
min-width:0;
background:linear-gradient(180deg, #ffffff 0%, #f6fbf8 100%);
border-color:#d7e9de;

}

.agenda-creche-resumo{

display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:12px;
margin-bottom:16px;

}

.agenda-creche-resumo-card{

padding:14px 16px;
border-radius:18px;
border:1px solid #dbe9e0;
background:linear-gradient(180deg, #ffffff 0%, #f1faf5 100%);
box-shadow:inset 0 1px 0 rgba(255,255,255,0.85);

}

.agenda-creche-resumo-card span{

display:block;
font-size:12px;
font-weight:700;
letter-spacing:0.04em;
text-transform:uppercase;
color:#628170;
margin-bottom:8px;

}

.agenda-creche-resumo-card strong{

display:block;
font-size:24px;
color:#184e34;
margin-bottom:6px;

}

.agenda-creche-resumo-card p{

margin:0;
color:#587366;
line-height:1.45;

}

.agenda-linha-horario{

display:grid;
grid-template-columns:96px 1fr;
gap:16px;
align-items:start;

}

.agenda-hora-label{

padding:14px;
border-radius:16px;
background:#eff6fb;
color:#103a5a;
font-weight:700;
text-align:center;
border:1px solid #d6e4ef;

}

.agenda-hora-conteudo{

display:grid;
gap:12px;
min-height:72px;

}

.agenda-hora-conteudo.drag-over{

outline:2px dashed #2f7fb2;
outline-offset:6px;
border-radius:18px;

}

.agenda-slot-vazio{

display:flex;
justify-content:space-between;
align-items:center;
gap:12px;
border:1px dashed #c9d9e6;
border-radius:18px;
padding:18px;
color:#7690a3;
background:#fbfdff;
flex-wrap:wrap;

}

.agenda-slot-ocupado{

display:flex;
justify-content:space-between;
align-items:center;
gap:12px;
padding:16px 18px;
border-radius:18px;
background:#eef4f9;
border:1px dashed #bfd0dd;
color:#38566b;
flex-wrap:wrap;

}

.agenda-slot-ocupado strong{

color:#103a5a;

}

.agenda-card-item{

display:grid;
gap:10px;
padding:16px 18px;
border-radius:20px;
border:1px solid #d7e5ef;
background:linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
box-shadow:0 12px 28px rgba(16, 58, 90, 0.08);
min-height:calc(92px * var(--agenda-span, 1));

}

.agenda-card-item.arrastavel{

cursor:grab;

}

.agenda-card-item.arrastavel:active{

cursor:grabbing;

}

.agenda-card-item.especial{

border-color:#f0b37e;
background:linear-gradient(180deg, #fff9f4 0%, #fff3e7 100%);

}

.agenda-card-topo{

display:flex;
justify-content:space-between;
align-items:flex-start;
gap:12px;
flex-wrap:wrap;

}

.agenda-card-topo strong{

color:#103a5a;
font-size:18px;

}

.agenda-card-topo p{

margin:4px 0 0;
color:#5d7a90;

}

.agenda-card-meta{

display:flex;
gap:10px;
flex-wrap:wrap;

}

.agenda-tipo-chip,
.agenda-duracao-chip{

display:inline-flex;
align-items:center;
padding:6px 10px;
border-radius:999px;
font-size:12px;
font-weight:700;

}

.agenda-duracao-chip{

background:#edf4fa;
color:#31536b;

}

.agenda-profissional-chip{

background:#e6f1fa;
color:#1d648f;

}

.financeiro-grid{

display:grid;
grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
gap:24px;

}

.financeiro-hero{

display:grid;
grid-template-columns:minmax(0, 1.4fr) minmax(320px, 0.9fr);
gap:24px;
margin-bottom:24px;

}

.financeiro-kpis{

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

}

.financeiro-kpi-card{

display:grid;
gap:10px;
padding:22px;
border-radius:24px;
border:1px solid #d8e5ef;
background:linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
box-shadow:0 16px 34px rgba(16, 58, 90, 0.08);

}

.financeiro-kpi-clicavel,
.financeiro-resumo-clicavel{

cursor:pointer;
transition:transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;

}

.financeiro-kpi-clicavel:hover,
.financeiro-resumo-clicavel:hover{

transform:translateY(-2px);
box-shadow:0 18px 36px rgba(16, 58, 90, 0.12);
border-color:#8eb8d3;

}

.financeiro-kpi-clicavel:focus-visible,
.financeiro-resumo-clicavel:focus-visible{

outline:none;
box-shadow:0 0 0 4px rgba(47, 111, 171, 0.14), 0 18px 36px rgba(16, 58, 90, 0.12);
border-color:#6f9fc2;

}

.financeiro-kpi-card span{

font-size:12px;
font-weight:800;
letter-spacing:0.08em;
text-transform:uppercase;

}

.financeiro-kpi-card strong{

font-size:30px;
color:#103a5a;

}

.financeiro-kpi-card p{

margin:0;
color:#5d7a90;

}

.financeiro-kpi-card.destaque-saldo{

background:linear-gradient(135deg, #103a5a 0%, #1f6287 100%);
border-color:#103a5a;
color:#ffffff;

}

.financeiro-kpi-card.destaque-saldo strong,
.financeiro-kpi-card.destaque-saldo p,
.financeiro-kpi-card.destaque-saldo span{

color:#ffffff;

}

.financeiro-kpi-card.destaque-entrada{

background:linear-gradient(180deg, #eefaf3 0%, #e3f5ea 100%);
border-color:#bfe1cb;

}

.financeiro-kpi-card.destaque-saida{

background:linear-gradient(180deg, #fff4ee 0%, #ffe7da 100%);
border-color:#f1c5a8;

}

.financeiro-kpi-card.destaque-alerta{

background:linear-gradient(180deg, #fffaf1 0%, #fff1d9 100%);
border-color:#efd394;

}

.financeiro-kpi-card.destaque-neutro{

background:linear-gradient(180deg, #f5f9fd 0%, #edf4fb 100%);

}

.financeiro-painel-lateral{

display:grid;
gap:18px;

}

.financeiro-painel-card{

padding:20px 22px;
border-radius:24px;
border:1px solid #d8e5ef;
background:#ffffff;
box-shadow:0 16px 34px rgba(16, 58, 90, 0.08);

}

.modal-card-detalhe{

position:fixed;
inset:0;
z-index:1400;
display:flex;
align-items:center;
justify-content:center;
padding:24px;
background:rgba(11, 32, 46, 0.4);
backdrop-filter:blur(3px);

}

.modal-card-detalhe.hidden{

display:none;

}

.modal-card-detalhe-janela{

width:min(760px, 100%);
max-height:min(86vh, 920px);
display:flex;
flex-direction:column;
border-radius:28px;
border:1px solid #d9e5ef;
background:linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
box-shadow:0 28px 60px rgba(16, 58, 90, 0.18);
overflow:hidden;

}

.modal-card-detalhe-topo{

position:sticky;
top:0;
z-index:2;
display:flex;
align-items:center;
justify-content:space-between;
gap:16px;
padding:22px 24px 18px;
border-bottom:1px solid #e3edf5;
background:rgba(255,255,255,0.95);
backdrop-filter:blur(8px);

}

.modal-card-detalhe-topo span{

display:block;
font-size:12px;
font-weight:800;
letter-spacing:0.08em;
text-transform:uppercase;
color:#5c7a90;

}

.modal-card-detalhe-topo strong{

display:block;
margin-top:6px;
font-size:28px;
color:#103a5a;

}

.modal-card-detalhe-fechar{

width:46px;
height:46px;
border-radius:999px;
border:1px solid #d9e5ef;
background:#f5f9fd;
color:#1d5c85;
font-size:26px;
line-height:1;
cursor:pointer;

}

.modal-card-detalhe-fechar:hover{

background:#eaf2f9;

}

.modal-card-detalhe-conteudo{

padding:24px;
overflow:auto;

}

.card-detalhe-clone{

margin:0 !important;
transform:none !important;
box-shadow:none !important;
cursor:default !important;

}

.card-detalhe-clone .modal-cliente-acoes,
.card-detalhe-clone .compra-acoes-card{

display:none !important;

}

.financeiro-atalhos-grid{

display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:12px;

}

.financeiro-atalho-card{

text-align:left;
display:grid;
gap:6px;
padding:16px;
border-radius:18px;
border:1px solid #d8e5ef;
background:linear-gradient(180deg, #f8fbfe 0%, #f0f6fb 100%);
cursor:pointer;
color:#103a5a;
transition:transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;

}

.financeiro-atalho-card:hover{

transform:translateY(-2px);
box-shadow:0 16px 34px rgba(16, 58, 90, 0.12);
border-color:#8eb8d3;

}

.financeiro-atalho-card span{

font-size:11px;
font-weight:800;
letter-spacing:0.08em;
text-transform:uppercase;
color:#4f7ea0;

}

.financeiro-atalho-card strong{

font-size:18px;

}

.financeiro-atalho-card p{

margin:0;
color:#5d7a90;
font-size:13px;

}

.financeiro-alertas-lista,
.financeiro-formas-lista,
.financeiro-linha-tempo{

display:grid;
gap:12px;

}

.financeiro-alerta-item,
.financeiro-forma-item,
.financeiro-timeline-item{

padding:14px 16px;
border-radius:16px;
border:1px solid #dbe7f1;
background:#f8fbfe;

}

.financeiro-alerta-item strong,
.financeiro-timeline-item strong{

display:block;
margin-bottom:6px;
color:#103a5a;

}

.financeiro-alerta-item p,
.financeiro-timeline-item p{

margin:0;
color:#5d7a90;

}

.financeiro-alerta-item.critico{

background:#fff0ef;
border-color:#f0b1ac;

}

.financeiro-alerta-item.atencao{

background:#fff8e9;
border-color:#efd394;

}

.financeiro-alerta-item.ok{

background:#edf8f1;
border-color:#bfe1cb;

}

.financeiro-forma-item{

display:flex;
justify-content:space-between;
align-items:center;
gap:12px;

}

.financeiro-forma-item span{

color:#5d7a90;
font-weight:700;

}

.financeiro-forma-item strong{

color:#103a5a;

}

.financeiro-navegacao-interna{

display:flex;
gap:12px;
flex-wrap:wrap;
margin:0 0 24px;

}

.financeiro-nav-chip{

padding:10px 14px;
border-radius:999px;
border:1px solid #cfe0ec;
background:#ffffff;
color:#103a5a;
font-weight:700;
cursor:pointer;

}

.financeiro-nav-chip:hover{

background:#eef5fb;

}

.financeiro-resumo-faixa{

margin-bottom:24px;

}

.financeiro-secao-destaque{

margin-top:24px;
scroll-margin-top:24px;

}

.financeiro-resumo-detalhe{

margin-bottom:16px;
padding:16px 18px;
border-radius:18px;
border:1px solid #d6e5f0;
background:linear-gradient(180deg, #f8fbfe 0%, #eef5fb 100%);
box-shadow:inset 0 1px 0 rgba(255,255,255,0.8);

}

.financeiro-resumo-detalhe strong{

display:block;
margin-bottom:6px;
color:#103a5a;
font-size:18px;

}

.financeiro-resumo-detalhe p{

margin:0 0 6px;
color:#45667e;

}

.financeiro-resumo-detalhe span{

color:#246d92;
font-size:13px;
font-weight:700;

}

.modal-financeiro-detalhe{

  width:min(1100px, calc(100vw - 40px));
  max-width:1100px;
  max-height:calc(100vh - 48px);
  overflow:hidden;
  margin:auto;
  display:flex;
  flex-direction:column;

  }

.financeiro-modal-conteudo{

  display:grid;
  gap:18px;
  overflow:auto;
  padding-right:6px;

  }

.modal-financeiro-detalhe .modal-cadastro-topo{

  position:sticky;
  top:0;
  z-index:2;
  background:#ffffff;
  padding-top:4px;

  }

.financeiro-modal-lista{

display:grid;
gap:14px;

}

.financeiro-modal-resumo-grid{

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

}

.financeiro-link-apoio{

display:inline-flex;
align-items:center;
gap:8px;
padding:10px 14px;
border-radius:999px;
background:#eef5fb;
color:#1d648f;
text-decoration:none;
font-weight:700;

}

.financeiro-link-apoio:hover{

background:#e3eef8;

}

.financeiro-listas-grid{

display:grid;
grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
gap:24px;

}

.financeiro-bloco-titulo{

margin:0 0 14px;
color:#103a5a;
font-size:18px;

}

.financeiro-timeline-item.entrada{

border-left:4px solid #2e8c60;

}

.financeiro-timeline-item.saida{

border-left:4px solid #d37b4d;

}

.pdv-grid{

display:grid;
grid-template-columns:minmax(0, 1.2fr) minmax(320px, 0.8fr);
gap:24px;
align-items:start;

}

.pdv-grid .clientes-resumo-rapido{

min-height:100%;

}

.pdv-produto-card{

border:1px solid #d7e5ef;
background:linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
box-shadow:0 12px 28px rgba(16, 58, 90, 0.08);

}

.pdv-produto-card strong{

font-size:20px;

}

.pdv-total-barra{

margin-top:20px;
padding:18px 20px;
border-radius:22px;
background:#103a5a;
color:#ffffff;
display:flex;
justify-content:space-between;
align-items:center;
gap:20px;
flex-wrap:wrap;

}

.pdv-total-barra > div{

min-width:120px;

}

.pdv-total-barra span{

display:block;
opacity:0.75;
font-size:13px;
margin-bottom:4px;

}

.pdv-total-barra strong{

font-size:28px;

}

.dashboard-atalhos-grid{

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

}

.dashboard-atalho-card{

display:grid;
gap:8px;
padding:20px 22px;
border-radius:24px;
border:1px solid #d8e5ef;
background:linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
box-shadow:0 12px 28px rgba(16, 58, 90, 0.08);
text-decoration:none;
transition:transform 0.2s ease, box-shadow 0.2s ease;

}

.dashboard-atalho-card:hover{

transform:translateY(-2px);
box-shadow:0 16px 34px rgba(16, 58, 90, 0.12);

}

.dashboard-atalho-card span{

font-size:12px;
font-weight:700;
letter-spacing:0.08em;
text-transform:uppercase;
color:#4f7ea0;

}

.dashboard-atalho-card strong{

font-size:22px;
color:#103a5a;

}

.dashboard-atalho-card p{

margin:0;
color:#5d7a90;

}

.login-body{

min-height:100vh;
margin:0;
background:linear-gradient(135deg, #f6fbff 0%, #e9f2f9 45%, #fef5ea 100%);

}

.login-layout{

min-height:100vh;
display:flex;
align-items:center;
justify-content:center;
padding:32px;

}

.login-card{

  width:min(100%, 560px);
  padding:34px;
border-radius:30px;
background:rgba(255,255,255,0.94);
border:1px solid rgba(216, 229, 239, 0.9);
  box-shadow:0 24px 60px rgba(16, 58, 90, 0.16);
  backdrop-filter:blur(10px);

  }

.login-senha-wrap{

  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:10px;
  align-items:center;

  }

.login-senha-wrap .botao-secundario{

  min-width:92px;

  }

.login-link-acao{

  align-self:flex-start;
  margin-top:4px;
  padding:0;
  border:0;
  background:transparent;
  color:#1f6d96;
  font:inherit;
  font-size:.92rem;
  font-weight:700;
  cursor:pointer;

  }

.login-link-acao:hover{

  color:#103f5e;
  text-decoration:underline;

  }

.config-senha-acoes{

  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  margin-top:8px;

  }

.config-checkbox-inline{

  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#2e536b;
  font-size:.92rem;
  font-weight:600;

  }

.login-brand{

display:flex;
align-items:center;
gap:18px;
margin-bottom:28px;

}

.login-brand h1{

margin:0;
color:#103a5a;
font-size:34px;

}

.login-brand p{

margin:6px 0 0;
color:#5d7a90;

}

.config-logo-preview-area{

display:flex;
align-items:center;
gap:18px;
margin-top:18px;

}

.config-logo-preview{

flex-shrink:0;

}

.campo-apoio-texto{

display:block;
margin-top:8px;
color:#5d7a90;
font-size:13px;

}

.permissoes-grid{

display:grid;
grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
gap:10px;
margin-top:12px;

}

.permissao-item{

display:flex;
align-items:center;
gap:10px;
padding:12px 14px;
background:#f3f8fb;
border:1px solid #d7e5ee;
border-radius:14px;
color:#18324a;
font-weight:600;

}

.permissao-item input{

width:18px;
height:18px;
accent-color:#246d92;

}

.agenda-tipo-chip.tipo-banho,
.agenda-card-item.tipo-banho{

border-color:#8fc7e8;

}

.agenda-tipo-chip.tipo-banho{

background:#e7f5fd;
color:#17648d;

}

.agenda-tipo-chip.tipo-tosa,
.agenda-card-item.tipo-tosa{

border-color:#f1b88d;

}

.agenda-tipo-chip.tipo-tosa{

background:#fff0e5;
color:#a45926;

}

.agenda-tipo-chip.tipo-hotel,
.agenda-card-item.tipo-hotel{

border-color:#c8a8ef;

}

.agenda-tipo-chip.tipo-hotel{

background:#f3ebfd;
color:#7043ad;

}

.agenda-tipo-chip.tipo-creche,
.agenda-card-item.tipo-creche{

border-color:#91d0b2;

}

.agenda-tipo-chip.tipo-creche{

background:#e8f8ef;
color:#24744b;

}

.agenda-tipo-chip.tipo-consulta,
.agenda-card-item.tipo-consulta{

border-color:#f0d27b;

}

.agenda-slot-ocupado.tipo-banho{

background:#edf8fe;
border-color:#8fc7e8;

}

.agenda-slot-ocupado.tipo-tosa{

background:#fff3ea;
border-color:#f1b88d;

}

.agenda-slot-ocupado.tipo-hotel{

background:#f5eefc;
border-color:#c8a8ef;

}

.agenda-slot-ocupado.tipo-creche{

background:#edf9f2;
border-color:#91d0b2;

}

.agenda-slot-ocupado.tipo-consulta{

background:#fff8e7;
border-color:#f0d27b;

}

.agenda-tipo-chip.tipo-consulta{

background:#fff8df;
color:#9c7612;

}

.agenda-tipo-chip.tipo-outro{

background:#eef3f8;
color:#4f677a;

}

.agenda-aviso-especial{

padding:16px 18px;
border-radius:18px;
border:1px solid #f0b37e;
background:#fff5e8;
color:#8a5524;
margin-bottom:20px;

}

.agenda-aviso-especial p{

margin:6px 0 0;

}

.agenda-formulario-linha{

grid-template-columns:minmax(240px, 1fr) auto;

}

.agenda-servicos-lista{

display:flex;
flex-wrap:wrap;
gap:10px;

}

.agenda-servico-tag{

display:flex;
align-items:center;
gap:10px;
padding:10px 14px;
border-radius:999px;
background:#eef5fb;
border:1px solid #d4e3ef;
color:#103a5a;

}

.agenda-servico-tag button{

width:26px;
height:26px;
border:none;
border-radius:999px;
background:#103a5a;
color:#ffffff;
cursor:pointer;

}

.agenda-checkbox-linha{

display:flex;
align-items:center;
gap:10px;
font-weight:600;
color:#103a5a;

}

.agenda-total-card{

margin-top:16px;
padding:18px 20px;
border-radius:20px;
background:#103a5a;
color:#ffffff;
display:grid;
gap:6px;

}

.agenda-total-card span{

opacity:0.8;

}

.agenda-total-card strong{

font-size:30px;

}

.historico-item:first-of-type{

border-top:none;
padding-top:0;

}

.historico-item span{

display:inline-block;
margin-bottom:6px;
padding:4px 8px;
border-radius:999px;
background:#eaf3fb;
color:#246d92;
font-size:12px;
font-weight:bold;

}

.historico-item strong{

display:block;

}

.historico-item-foto{

margin-top:10px;
width:100%;
max-width:240px;
border-radius:16px;
border:1px solid #d7e2eb;
display:block;

}

@media (max-width: 640px){

.pet-comportamento-resumo{

grid-template-columns:1fr;

}

}

.galeria-pet-grid,
.galeria-fotos-lista{

display:grid;
gap:14px;

}

.galeria-foto-card{

margin:0;
display:grid;
gap:8px;
padding:14px;
border-radius:16px;
background:white;
border:1px solid #dbe7f0;

}

.galeria-foto-card img{

width:100%;
max-width:280px;
border-radius:16px;
border:1px solid #d7e2eb;

}

.galeria-foto-card figcaption{

display:grid;
gap:4px;
color:#577084;

}

.modal-cadastro-topo{

display:flex;
justify-content:space-between;
align-items:flex-start;
gap:16px;
margin-bottom:22px;
flex-wrap:wrap;
padding-bottom:12px;
border-bottom:1px solid #e3edf4;

}

.modal-cadastro-topo h2{

margin:0 0 8px;
font-size:24px;
color:#103a5a;

}

.modal-cadastro-topo p{

margin:0;
color:#577084;
line-height:1.45;

}

.cadastro-id-badge{

padding:8px 14px;
border-radius:999px;
background:#e4eef8;
color:#246d92;
font-weight:bold;
font-size:13px;

}

.cadastro-abas{

display:flex;
gap:10px;
margin-bottom:24px;
position:sticky;
top:0;
background:linear-gradient(180deg, white 0%, white 72%, rgba(255,255,255,0.94) 100%);
padding:4px 0 14px;
z-index:1;
border-bottom:1px solid #e2ebf2;

}

.cadastro-aba{

min-width:140px;
padding:14px 18px;
border-radius:18px 18px 0 0;
border:1px solid transparent;
border-bottom:none;
background:transparent;
color:#6b879b;
font-weight:bold;
cursor:pointer;
font-size:14px;
letter-spacing:0.01em;
transition:0.2s ease;

}

.cadastro-aba.ativo{

background:linear-gradient(180deg, #246d92 0%, #1d5876 100%);
color:white;
border-color:#1d5876;
box-shadow:0 14px 24px rgba(36, 109, 146, 0.18);

}

.cadastro-aba:hover{

background:#eef5fb;
color:#246d92;

}

.cadastro-aba.ativo:hover{

background:linear-gradient(180deg, #246d92 0%, #1d5876 100%);
color:white;

}

.cadastro-painel{

display:none;
padding:2px 2px 8px;

}

.cadastro-painel.ativo{

display:block;

}

.cadastro-grid{

display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:16px;

}

.campo-form{

display:flex;
flex-direction:column;
gap:8px;

}

.campo-form label{

font-size:14px;
font-weight:bold;
color:#18324a;
letter-spacing:0.01em;

}

.ajuda-campo{

font-size:12px;
color:#648097;

}

.preview-foto-pet{

margin-top:10px;
display:flex;
align-items:center;
gap:12px;
padding:10px 12px;
border:1px solid #d9e5ef;
border-radius:14px;
background:#f8fbfe;

}

.preview-foto-pet.hidden{

display:none;

}

.preview-foto-pet img{

width:64px;
height:64px;
object-fit:cover;
border-radius:12px;
border:1px solid #cdd9e3;

}

.preview-foto-pet span{

font-size:13px;
color:#577084;

}

.campo-form input,
.campo-form select,
.campo-form textarea{

width:100%;
padding:12px 14px;
border-radius:12px;
border:1px solid #cdd9e3;
font:inherit;
box-sizing:border-box;
background:#fbfdff;
transition:border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;

}

.campo-form textarea{

resize:vertical;

}

.campo-form input:focus,
.campo-form select:focus,
.campo-form textarea:focus{

outline:none;
border-color:#7eaed8;
box-shadow:0 0 0 4px rgba(47, 111, 171, 0.12);
background:#ffffff;

}

.campo-amplo{

grid-column:1 / -1;

}

.campo-botao-extra{

align-self:end;

}

.contatos-extras{

display:grid;
gap:12px;

}

.contato-extra-item{

display:grid;
grid-template-columns:1fr;

}

.pets-resumo-card{

margin-top:24px;
padding:20px;
border-radius:20px;
border:1px solid #d9e5ef;
background:linear-gradient(180deg, #f8fbfe 0%, #f2f8fc 100%);
box-shadow:inset 0 1px 0 rgba(255,255,255,0.75);

}

.pets-resumo-topo{

display:flex;
justify-content:space-between;
align-items:flex-start;
gap:16px;
margin-bottom:16px;
flex-wrap:wrap;

}

.pets-resumo-topo h3{

margin:0 0 6px;

}

.pets-resumo-topo p{

margin:0;
color:#577084;

}

.lista-pets-temporarios{

display:grid;
gap:12px;

}

.pet-temporario-card{

display:flex;
justify-content:space-between;
align-items:center;
gap:12px;
padding:14px 16px;
border-radius:16px;
background:white;
border:1px solid #dce7f0;
flex-wrap:wrap;

}

.pet-temporario-info{

display:flex;
align-items:center;
gap:12px;

}

.pet-temporario-thumb{

width:56px;
height:56px;
border-radius:14px;
object-fit:cover;
border:1px solid #d8e3eb;
background:#eef4f9;
display:flex;
align-items:center;
justify-content:center;
font-size:11px;
color:#648097;
text-align:center;
padding:6px;
box-sizing:border-box;

}

.produto-resumo-topo{

display:flex;
align-items:flex-start;
gap:12px;

}

.produto-resumo-topo strong{

display:block;

}

.produto-resumo-topo p{

margin:4px 0 0;

}

.pet-sem-foto{

font-weight:bold;

}

.pet-temporario-card strong,
.pet-temporario-card span{

display:block;

}

.pet-temporario-vazio{

padding:16px;
border-radius:16px;
background:white;
border:1px dashed #c7d7e5;
color:#577084;

}

.modal-cliente-acoes{

display:flex;
justify-content:flex-end;
gap:12px;
margin-top:18px;
flex-wrap:wrap;
padding-top:18px;
border-top:1px solid #e4edf4;

}

@media print{

.clientes-topo,
.clientes-cabecalho-modulo,
.menu-cliente-lateral{

display:none !important;

}

/* LIMPEZA FINAL DO TOPO */

body .clientes-topo .clientes-topo-esquerda > .logo-circular{
  display:none !important;
}

body .clientes-topo .clientes-topo-esquerda{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
}

body .clientes-topo .menu-topo-botao{
  display:inline-flex !important;
}

/* MERLINPET TOPO OVERRIDE FINAL */

html body .clientes-topo-titulo{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  text-align:center !important;
  width:100% !important;
  min-width:0 !important;
  padding:0 18px !important;
}

html body .topo-sistema-marca-central{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:360px !important;
  min-width:360px !important;
  max-width:360px !important;
  padding:4px 10px !important;
  border-radius:20px !important;
  overflow:hidden !important;
  background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(235,247,255,0.95)) !important;
  border:1px solid rgba(0,87,168,0.10) !important;
  box-shadow:0 14px 24px rgba(12,62,110,0.09) !important;
}

html body .topo-sistema-logo-central{
  display:block !important;
  width:300px !important;
  min-width:300px !important;
  max-width:300px !important;
  height:30px !important;
  min-height:30px !important;
  max-height:30px !important;
  object-fit:cover !important;
  object-position:center 46% !important;
  flex:none !important;
  filter:none !important;
}

@media (max-width: 900px){
  html body .topo-sistema-marca-central{
    width:260px !important;
    min-width:260px !important;
    max-width:260px !important;
    padding:4px 8px !important;
  }

  html body .topo-sistema-logo-central{
    width:220px !important;
    min-width:220px !important;
    max-width:220px !important;
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
  }
}

/* MERLINPET TOPO FINAL DEFINITIVO */

body .clientes-topo .menu-topo-botao{

display:none !important;

}

body .clientes-topo-titulo{

display:flex !important;
align-items:center !important;
justify-content:center !important;
min-width:0 !important;
width:100% !important;
padding:0 18px !important;

}

body .topo-sistema-marca-central{

display:inline-flex !important;
align-items:center !important;
justify-content:center !important;
width:min(100%, 360px) !important;
min-width:300px !important;
max-width:360px !important;
padding:4px 12px !important;
background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(235,247,255,0.95)) !important;
border:1px solid rgba(0,87,168,0.10) !important;
border-radius:22px !important;
box-shadow:0 16px 30px rgba(12,62,110,0.10) !important;
overflow:hidden !important;

}

body .topo-sistema-logo-central{

width:300px !important;
height:36px !important;
min-width:300px !important;
max-width:300px !important;
min-height:36px !important;
max-height:36px !important;
object-fit:cover !important;
object-position:center 46% !important;
display:block !important;
flex:none !important;
filter:none !important;

}

@media (max-width: 1100px){

body .clientes-topo-titulo{

padding:0 12px !important;

}

.landing-contato-card,
.landing-fechamento-card,
.landing-rodape{
background:linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(245, 250, 255, 0.94));
border:1px solid rgba(10, 79, 138, 0.1);
box-shadow:0 16px 34px rgba(10, 79, 138, 0.07);
border-radius:22px;
}

.landing-contato-card{
padding:28px;
}

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

.landing-contato-item{
padding:22px 20px;
border-radius:18px;
background:linear-gradient(180deg, rgba(250, 252, 255, 0.98), rgba(243, 249, 255, 0.95));
border:1px solid rgba(10, 79, 138, 0.08);
display:grid;
gap:10px;
}

.landing-contato-item span{
font-size:0.84rem;
letter-spacing:0.08em;
text-transform:uppercase;
color:#5d7895;
font-weight:700;
}

.landing-contato-item strong{
font-size:1.12rem;
line-height:1.2;
color:#10385f;
}

.landing-contato-item p{
margin:0;
color:#56708a;
}

.landing-link-inline{
color:#0b4c90;
font-weight:700;
text-decoration:none;
}

.landing-link-inline:hover{
text-decoration:underline;
}

.landing-rodape{
width:min(100% - 40px, 1180px);
margin:0 auto 40px;
padding:24px 28px;
}

.landing-rodape-interno{
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:22px;
}

.landing-rodape-interno strong{
display:block;
margin-bottom:8px;
font-size:0.98rem;
color:#10385f;
}

.landing-rodape-interno p{
margin:0;
color:#5b748e;
line-height:1.55;
}

.landing-whatsapp-flutuante{
position:fixed;
right:22px;
bottom:22px;
z-index:50;
display:inline-flex;
align-items:center;
justify-content:center;
min-width:144px;
padding:14px 18px;
border-radius:999px;
background:linear-gradient(135deg, #27c25a, #119c45);
color:#fff;
text-decoration:none;
font-weight:800;
letter-spacing:0.02em;
box-shadow:0 18px 36px rgba(17, 156, 69, 0.28);
}

.landing-whatsapp-flutuante:hover{
transform:translateY(-1px);
box-shadow:0 22px 42px rgba(17, 156, 69, 0.34);
}

@media (max-width: 900px){

.landing-contato-grid,
.landing-rodape-interno{
grid-template-columns:1fr;
}

.landing-whatsapp-flutuante{
right:14px;
left:14px;
bottom:14px;
min-width:0;
}

}

.financeiro-alerta-clicavel{
cursor:pointer;
transition:transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.financeiro-alerta-clicavel:hover,
.financeiro-alerta-clicavel:focus-visible{
transform:translateY(-1px);
box-shadow:0 14px 28px rgba(11, 76, 144, 0.12);
border-color:rgba(11, 76, 144, 0.28);
outline:none;
}

/* MODAL DE DESPESA */

#modalDespesaFinanceira{

align-items:flex-start !important;
justify-content:center !important;
padding:8px 12px 12px !important;
overflow:auto !important;

}

#modalDespesaFinanceira .modal-conteudo{

width:min(960px, calc(100vw - 24px)) !important;
max-width:960px !important;
max-height:calc(100vh - 16px) !important;
margin:0 auto !important;
overflow:auto !important;
display:flex !important;
flex-direction:column !important;
border-radius:24px !important;
padding:18px 18px 16px !important;
box-sizing:border-box !important;

}

#modalDespesaFinanceira .modal-cadastro-topo{

position:sticky !important;
top:0 !important;
z-index:3 !important;
background:#ffffff !important;
padding-top:2px !important;
padding-bottom:10px !important;

}

#modalDespesaFinanceira .cadastro-grid{

gap:12px !important;

}

#modalDespesaFinanceira .campo-form textarea{

min-height:88px !important;

}

#modalDespesaFinanceira .modal-cliente-acoes{

position:sticky !important;
bottom:0 !important;
z-index:3 !important;
background:linear-gradient(180deg, rgba(255,255,255,0.85), #ffffff 42%) !important;
padding-top:12px !important;
margin-top:12px !important;

}

@media (max-width: 900px){

#modalDespesaFinanceira{

padding:6px !important;

}

#modalDespesaFinanceira .modal-conteudo{

width:min(100%, calc(100vw - 12px)) !important;
max-height:calc(100vh - 12px) !important;
padding:16px 14px 14px !important;

}

}

/* LANDING DIRECAO FINAL */

.landing-hero{

position:relative;
align-items:center;
gap:40px;

}

.landing-hero::before{

content:"";
position:absolute;
top:-10px;
right:10px;
width:min(36vw, 380px);
height:min(36vw, 380px);
background:radial-gradient(circle, rgba(16, 116, 184, 0.18), transparent 68%);
filter:blur(10px);
opacity:0.85;
pointer-events:none;

}

.landing-hero h1{

max-width:820px;
font-size:clamp(2.6rem, 5vw, 4.8rem);
line-height:0.95;
letter-spacing:-0.055em;
text-wrap:balance;
color:#093b66;

}

.landing-hero p{

max-width:760px;
font-size:1.08rem;
line-height:1.65;

}

.landing-hero-destaque{

display:grid;
gap:6px;
max-width:770px;
padding:16px 18px;
border-radius:18px;
background:
linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(244, 250, 255, 0.82)),
radial-gradient(circle at right center, rgba(108, 198, 62, 0.12), transparent 34%);
border:1px solid rgba(12, 86, 145, 0.11);
box-shadow:0 14px 28px rgba(10, 79, 138, 0.06);
backdrop-filter:blur(12px);

}

.landing-hero-destaque strong{

color:#0f4e84;
font-size:0.9rem;
letter-spacing:0.05em;
text-transform:uppercase;

}

.landing-hero-destaque span{

color:#4e6d89;
line-height:1.6;

}

.landing-botao-hero{

padding:16px 24px;
font-size:1rem;
box-shadow:0 18px 34px rgba(16, 116, 184, 0.22);

}

.landing-plano-resumo{

background:linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(246, 251, 255, 0.72));
border:1px solid rgba(10, 79, 138, 0.08);
box-shadow:0 18px 36px rgba(10, 79, 138, 0.06);
border-radius:22px;
padding:16px;
backdrop-filter:blur(12px);

}

.landing-plano-resumo article{

background:rgba(255, 255, 255, 0.9);
border:1px solid rgba(12, 86, 145, 0.08);

}

.landing-plano-tag{

display:inline-flex;
align-items:center;
justify-content:center;
max-width:max-content;
padding:7px 12px;
border-radius:999px;
background:rgba(10, 79, 138, 0.07);
border:1px solid rgba(10, 79, 138, 0.09);
color:#0f5f9e;
font-size:0.78rem;
font-weight:700;
letter-spacing:0.02em;

}

.landing-plano-card{

background:
linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 250, 255, 0.96)),
radial-gradient(circle at top right, rgba(16, 116, 184, 0.1), transparent 34%);
border:1px solid rgba(12, 86, 145, 0.1);
box-shadow:0 20px 42px rgba(10, 79, 138, 0.08);
gap:14px;

}

.landing-plano-card::before{

content:"";
position:absolute;
top:0;
left:0;
right:0;
height:4px;
background:linear-gradient(90deg, #0f5f9e, #6cc63e);
opacity:0.82;

}

.landing-plano-card h3{

margin:0;
font-size:1.22rem;

}

.landing-plano-card strong{

display:flex;
align-items:flex-end;
gap:6px;
margin:0;
font-size:3rem;
letter-spacing:-0.05em;
line-height:0.95;

}

.landing-plano-card strong span{

font-size:0.34em;
padding-bottom:7px;
opacity:0.78;

}

.landing-plano-card p{

margin:0;
min-height:56px;

}

.landing-plano-card ul{

margin:0;
padding-left:18px;
display:grid;
gap:8px;

}

.landing-plano-card li::marker{

color:#1a72ba;

}

.landing-plano-card.destaque{

background:
linear-gradient(180deg, rgba(10, 67, 116, 0.99), rgba(7, 44, 79, 0.99)),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.22), transparent 34%);
border-color:rgba(156, 216, 255, 0.14);
box-shadow:0 28px 52px rgba(8, 44, 81, 0.24);
transform:translateY(-4px);

}

.landing-plano-card.destaque::before{

background:linear-gradient(90deg, rgba(255, 255, 255, 0.45), #84de54, rgba(255, 255, 255, 0.2));

}

.landing-plano-card.destaque .landing-plano-tag{

background:rgba(255, 255, 255, 0.12);
border-color:rgba(255, 255, 255, 0.14);
color:#e5f7ff;

}

.landing-plano-selo{

display:inline-flex;
align-items:center;
gap:8px;
white-space:nowrap;
max-width:max-content;
margin:0 0 2px 0;
box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.1);

}

.landing-plano-acoes{

margin-top:auto;
padding-top:8px;

}

.landing-plano-anual{

display:block;
color:#4c6680;
font-weight:800;
letter-spacing:0.02em;

}

.landing-plano-acoes .landing-botao-principal{

width:100%;
justify-content:center;

}

.landing-pacotes-destaque{

position:relative;
overflow:hidden;
padding:34px;
border-radius:28px;
background:
linear-gradient(180deg, rgba(8, 47, 84, 0.99), rgba(6, 31, 60, 0.99)),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.24), transparent 30%),
radial-gradient(circle at left center, rgba(89, 167, 255, 0.12), transparent 26%);
border:1px solid rgba(149, 211, 255, 0.14);
box-shadow:0 28px 62px rgba(7, 39, 71, 0.28);

}

.landing-pacotes-destaque::before{

content:"";
position:absolute;
inset:0;
background:
linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px),
linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px);
background-size:22px 22px;
mask-image:linear-gradient(180deg, rgba(255, 255, 255, 0.5), transparent 86%);
pointer-events:none;

}

.landing-pacotes-destaque::after{

content:"";
position:absolute;
right:-40px;
bottom:-60px;
width:220px;
height:220px;
border-radius:50%;
background:radial-gradient(circle, rgba(108, 198, 62, 0.18), transparent 70%);
pointer-events:none;

}

.landing-pacotes-texto,
.landing-pacotes-grid,
.landing-fechamento-card .landing-secao-topo,
.landing-fechamento-pontos,
.landing-fechamento-card .landing-hero-acoes{

position:relative;
z-index:1;

}

.landing-pacotes-texto .landing-hero-faixas span{

background:rgba(255, 255, 255, 0.08);
border-color:rgba(195, 226, 255, 0.12);
color:#e8f4ff;

}

.landing-fechamento-card{

padding:32px;
border-radius:30px;
background:
linear-gradient(180deg, rgba(7, 44, 79, 0.99), rgba(5, 28, 54, 0.99)),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.22), transparent 28%);
border:1px solid rgba(160, 217, 255, 0.14);
box-shadow:0 28px 60px rgba(7, 39, 71, 0.28);
display:grid;
gap:22px;
overflow:hidden;
position:relative;

}

.landing-fechamento-card::before{

content:"";
position:absolute;
inset:0;
background:
linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px);
background-size:24px 24px;
mask-image:linear-gradient(180deg, rgba(255, 255, 255, 0.45), transparent 86%);
pointer-events:none;

}

.landing-fechamento-card .landing-badge-claro{

background:rgba(255, 255, 255, 0.08);
border-color:rgba(255, 255, 255, 0.1);
color:#d8ebff;

}

.landing-fechamento-card .landing-secao-topo h2{

color:#ffffff;
max-width:780px;

}

.landing-fechamento-card .landing-secao-topo p{

color:#d2e4f6;
max-width:760px;

}

.landing-fechamento-pontos{

display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:14px;

}

.landing-fechamento-pontos article{

padding:18px;
border-radius:18px;
background:rgba(255, 255, 255, 0.08);
backdrop-filter:blur(8px);
border:1px solid rgba(196, 226, 255, 0.12);
display:grid;
gap:8px;

}

.landing-fechamento-pontos strong{

color:#ffffff;
font-size:1rem;

}

.landing-fechamento-pontos span{

color:#d8e8f7;
line-height:1.55;

}

.landing-fechamento-card .landing-botao-secundario{

border-color:rgba(190, 224, 255, 0.2);
color:#e8f4ff;
background:rgba(255, 255, 255, 0.04);

}

@media (max-width: 1100px){

.landing-hero::before{

width:240px;
height:240px;
opacity:0.55;

}

.landing-plano-card p{

min-height:auto;

}

.landing-fechamento-pontos{

grid-template-columns:1fr;

}

.landing-pacotes-destaque{

padding:26px;

}

}

/* LANDING TECH REFINEMENT */

.landing-secao{

position:relative;

}

.landing-secao-topo{

max-width:820px;

}

.landing-secao-topo p{

max-width:760px;

}

.landing-hero{

align-items:center;

}

.landing-hero-conteudo{

gap:18px;

}

.landing-hero::before{

content:"";
position:absolute;
top:20px;
right:0;
width:min(34vw, 360px);
height:min(34vw, 360px);
background:radial-gradient(circle, rgba(16, 116, 184, 0.16), transparent 68%);
filter:blur(8px);
pointer-events:none;
opacity:0.9;

}

.landing-hero p{

max-width:760px;
font-size:1.08rem;

}

.landing-hero-destaque{

display:grid;
gap:6px;
max-width:760px;
padding:16px 18px;
border-radius:18px;
background:
linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(244, 250, 255, 0.8)),
radial-gradient(circle at right center, rgba(108, 198, 62, 0.12), transparent 34%);
border:1px solid rgba(12, 86, 145, 0.11);
box-shadow:0 14px 28px rgba(10, 79, 138, 0.06);
backdrop-filter:blur(12px);

}

.landing-hero-destaque strong{

color:#0f3f6f;
font-size:0.92rem;
letter-spacing:0.04em;
text-transform:uppercase;

}

.landing-hero-destaque span{

color:#4e6d89;
line-height:1.6;

}

.landing-mini-kpis article{

background:
linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 249, 255, 0.95)),
radial-gradient(circle at top right, rgba(16, 116, 184, 0.08), transparent 38%);
border-color:rgba(12, 86, 145, 0.12);

}

.landing-hero-card{

position:relative;
overflow:hidden;
isolation:isolate;
padding:26px;

}

.landing-hero-card::before{

content:"";
position:absolute;
inset:0;
background:
linear-gradient(135deg, rgba(16, 116, 184, 0.09), transparent 34%),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.14), transparent 28%);
pointer-events:none;
z-index:-1;

}

.landing-hero-card-topo{

align-items:flex-start;
gap:12px;

}

.landing-hero-card-topo strong{

font-size:1.28rem;

}

.landing-hero-modulos span,
.landing-hero-faixas span{

background:rgba(255, 255, 255, 0.82);
backdrop-filter:blur(10px);
border-radius:999px;

}

.landing-modulo-card,
.landing-publico-card,
.landing-faq-card{

position:relative;
overflow:hidden;

}

.landing-modulo-card::before,
.landing-publico-card::before,
.landing-faq-card::before{

content:"";
position:absolute;
top:0;
left:0;
right:0;
height:1px;
background:linear-gradient(90deg, rgba(16, 116, 184, 0), rgba(16, 116, 184, 0.32), rgba(108, 198, 62, 0.22), rgba(16, 116, 184, 0));

}

.landing-plano-resumo{

background:linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(246, 251, 255, 0.72));
border:1px solid rgba(10, 79, 138, 0.08);
box-shadow:0 18px 36px rgba(10, 79, 138, 0.06);
border-radius:22px;
padding:16px;
backdrop-filter:blur(12px);

}

.landing-plano-resumo article{

background:rgba(255, 255, 255, 0.88);
border:1px solid rgba(12, 86, 145, 0.08);

}

.landing-planos-grid{

align-items:stretch;

}

.landing-plano-card{

background:
linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 250, 255, 0.96)),
radial-gradient(circle at top right, rgba(16, 116, 184, 0.1), transparent 34%);
border:1px solid rgba(12, 86, 145, 0.1);
box-shadow:0 20px 42px rgba(10, 79, 138, 0.08);
gap:14px;

}

.landing-plano-tag{

display:inline-flex;
align-items:center;
justify-content:center;
max-width:max-content;
padding:7px 12px;
border-radius:999px;
background:rgba(10, 79, 138, 0.07);
border:1px solid rgba(10, 79, 138, 0.09);
color:#0f5f9e;
font-size:0.78rem;
font-weight:700;
letter-spacing:0.02em;

}

.landing-plano-card::before{

content:"";
position:absolute;
top:0;
left:0;
right:0;
height:4px;
background:linear-gradient(90deg, #0f5f9e, #6cc63e);
opacity:0.82;

}

.landing-plano-card h3{

margin:0;
padding-right:0;
font-size:1.22rem;

}

.landing-plano-card strong{

display:flex;
align-items:flex-end;
gap:6px;
font-size:3rem;
letter-spacing:-0.05em;
margin:0;

}

.landing-plano-card strong span{

font-size:0.34em;
padding-bottom:7px;
opacity:0.78;

}

.landing-plano-card p{

margin:0;
min-height:56px;

}

.landing-plano-card ul{

margin:0;
padding-left:18px;
display:grid;
gap:8px;

}

.landing-plano-card li::marker{

color:#1a72ba;

}

.landing-plano-card.destaque{

background:
linear-gradient(180deg, rgba(10, 67, 116, 0.99), rgba(7, 44, 79, 0.99)),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.22), transparent 34%);
border-color:rgba(156, 216, 255, 0.14);
box-shadow:0 28px 52px rgba(8, 44, 81, 0.24);

}

.landing-plano-card.destaque::before{

background:linear-gradient(90deg, rgba(255, 255, 255, 0.45), #84de54, rgba(255, 255, 255, 0.2));

}

.landing-plano-card.destaque .landing-plano-tag{

background:rgba(255, 255, 255, 0.12);
border-color:rgba(255, 255, 255, 0.14);
color:#e5f7ff;

}

.landing-plano-selo{

display:inline-flex;
align-items:center;
gap:8px;
white-space:nowrap;
max-width:max-content;
margin:0 0 2px 0;
box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.1);

}

.landing-plano-acoes{

margin-top:auto;
padding-top:8px;

}

.landing-plano-acoes .landing-botao-principal{

width:100%;
justify-content:center;

}

.landing-demo-frame{

border-radius:24px;
overflow:hidden;
box-shadow:0 26px 56px rgba(10, 79, 138, 0.14);
border:1px solid rgba(12, 86, 145, 0.12);

}

.landing-demo-fallback{

background:
linear-gradient(180deg, rgba(8, 36, 66, 0.98), rgba(10, 49, 88, 0.98)),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.16), transparent 30%);

}

.landing-demo-ui{

border:1px solid rgba(173, 216, 255, 0.1);
background:rgba(255, 255, 255, 0.04);
box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.05);

}

.landing-comparativo-card{

background:
linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 251, 255, 0.93)),
radial-gradient(circle at top right, rgba(16, 116, 184, 0.08), transparent 30%);
border-radius:24px;

}

.landing-comparativo-linha{

min-height:64px;

}

.landing-prova-card{

background:
linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(242, 248, 255, 0.95)),
radial-gradient(circle at top right, rgba(16, 116, 184, 0.09), transparent 30%);

}

.landing-pacotes-destaque{

position:relative;
overflow:hidden;
padding:34px;
border-radius:28px;
background:
linear-gradient(180deg, rgba(8, 47, 84, 0.99), rgba(6, 31, 60, 0.99)),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.24), transparent 30%),
radial-gradient(circle at left center, rgba(89, 167, 255, 0.12), transparent 26%);
border:1px solid rgba(149, 211, 255, 0.14);
box-shadow:0 28px 62px rgba(7, 39, 71, 0.28);

}

.landing-pacotes-destaque::before{

content:"";
position:absolute;
inset:0;
background:
linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px),
linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px);
background-size:22px 22px;
mask-image:linear-gradient(180deg, rgba(255, 255, 255, 0.5), transparent 86%);
pointer-events:none;

}

.landing-pacotes-destaque::after{

content:"";
position:absolute;
right:-40px;
bottom:-60px;
width:220px;
height:220px;
border-radius:50%;
background:radial-gradient(circle, rgba(108, 198, 62, 0.18), transparent 70%);
pointer-events:none;

}

.landing-pacotes-texto{

position:relative;
z-index:1;
gap:16px;

}

.landing-pacotes-texto h2{

max-width:520px;

}

.landing-pacotes-texto .landing-hero-faixas span{

background:rgba(255, 255, 255, 0.08);
border-color:rgba(195, 226, 255, 0.12);
color:#e8f4ff;

}

.landing-pacotes-grid{

position:relative;
z-index:1;

}

.landing-pacotes-grid article{

background:rgba(255, 255, 255, 0.08);
backdrop-filter:blur(10px);
border:1px solid rgba(182, 222, 255, 0.12);
box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.05);

}

.landing-pacotes-grid strong{

display:block;
line-height:1.2;

}

.landing-secao-final{

padding-top:10px;

}

@media (max-width: 1100px){

.landing-hero::before{

width:240px;
height:240px;
opacity:0.55;

}

.landing-plano-card p{

min-height:auto;

}

.landing-pacotes-destaque{

padding:26px;

}

}

body .topo-sistema-marca-central{

width:min(100%, 300px) !important;
min-width:260px !important;

}

}

@media (max-width: 900px){

body .topo-sistema-marca-central{

width:min(100%, 248px) !important;
min-width:220px !important;
padding:4px 10px !important;

}

body .topo-sistema-logo-central{

width:220px !important;
height:28px !important;
min-width:220px !important;
max-width:220px !important;
min-height:28px !important;
max-height:28px !important;

}

}

/* MERLINPET TOPO COM LOGO CENTRAL */

.clientes-topo .menu-topo-botao{

display:none;

}

.clientes-topo-titulo{

display:flex;
align-items:center;
justify-content:center;
min-width:0;
width:100%;
padding:0 18px;

}

.topo-sistema-marca-central{

display:inline-flex;
align-items:center;
justify-content:center;
width:min(100%, 360px);
min-width:300px;
padding:10px 16px;
background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(235,247,255,0.95));
border:1px solid rgba(0,87,168,0.10);
border-radius:22px;
box-shadow:0 16px 30px rgba(12,62,110,0.10);

}

.topo-sistema-logo-central{

width:300px !important;
height:50px !important;
min-width:300px !important;
max-width:300px !important;
min-height:50px !important;
max-height:50px !important;
object-fit:contain;
filter:drop-shadow(0 8px 16px rgba(12,62,110,0.14));
display:block;
flex:none;

}

.clientes-topo-direita{

gap:10px;
padding:8px 10px;
background:linear-gradient(135deg, rgba(255,255,255,0.96), rgba(240,248,255,0.93));
border:1px solid rgba(0,87,168,0.08);
border-radius:22px;
box-shadow:0 14px 26px rgba(12,62,110,0.08);

}

.usuario-foto{

width:50px;
height:50px;
border-radius:16px;
box-shadow:0 8px 16px rgba(12,62,110,0.10);

}

.usuario-info-card{

min-width:148px;
padding:8px 10px;
border-radius:16px;
box-shadow:none;

}

.usuario-info-card strong{

font-size:12px;
letter-spacing:0.03em;

}

.usuario-info-card span{

font-size:12px;
line-height:1.25;

}

.usuario-acoes-topo{

gap:8px;

}

.botao-topo-atalho{

height:36px;
min-width:36px;
padding:0 12px;
border-radius:12px;
font-size:0.84rem;

}

.logo-circular-menu{

display:flex;
align-items:center;
justify-content:center;
cursor:pointer;
background:linear-gradient(135deg, rgba(0,87,168,0.98), rgba(8,52,95,0.96)) !important;
border:1px solid rgba(0,87,168,0.18);
box-shadow:0 16px 30px rgba(12,62,110,0.20);
transition:transform 0.2s ease, box-shadow 0.2s ease;

}

.logo-circular-menu:hover,
.logo-circular-menu:focus-visible{

transform:translateY(-1px);
box-shadow:0 20px 34px rgba(12,62,110,0.24);

}

.logo-menu-icone{

display:flex;
flex-direction:column;
gap:5px;

}

.logo-menu-icone i{

display:block;
width:24px;
height:2px;
border-radius:999px;
background:#ffffff;

}

.clientes-faixa-sistema{

position:relative;
padding-left:0;

}

.clientes-faixa-sistema-logo{

display:none !important;

}

@media (max-width: 1100px){

.clientes-topo-titulo{

padding:0 12px;

}

.topo-sistema-marca-central{

width:min(100%, 300px);
min-width:260px;

}

}

@media (max-width: 900px){

.topo-sistema-logo-central{

width:220px !important;
height:40px !important;
min-width:220px !important;
max-width:220px !important;
min-height:40px !important;
max-height:40px !important;

}

.topo-sistema-marca-central{

width:min(100%, 248px);
min-width:220px;
padding:8px 12px;

}

.clientes-topo-direita{

padding:6px 8px;
gap:8px;

}

.usuario-info-card{

min-width:128px;
padding:7px 9px;

}

.clientes-faixa-sistema{

padding-left:0;

}

.clientes-faixa-sistema-logo{

position:relative;
left:auto;
top:auto;
transform:none;
width:46px;
height:46px;
margin-bottom:6px;

}

}

/* MERLINPET REVISAO GERAL FINAL */

/* MERLINPET TOPO COM LOGO CENTRAL */

.clientes-topo .menu-topo-botao{

display:none;

}

.clientes-topo-titulo{

display:flex;
align-items:center;
justify-content:center;
min-width:0;
width:100%;
padding:0 18px;

}

.topo-sistema-marca-central{

display:inline-flex;
align-items:center;
justify-content:center;
width:min(100%, 360px);
min-width:300px;
padding:6px 12px;
background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(235,247,255,0.95));
border:1px solid rgba(0,87,168,0.10);
border-radius:22px;
box-shadow:0 16px 30px rgba(12,62,110,0.10);
overflow:hidden;

}

.topo-sistema-logo-central{

width:300px !important;
height:44px !important;
min-width:300px !important;
max-width:300px !important;
min-height:44px !important;
max-height:44px !important;
object-fit:cover;
object-position:center 46%;
filter:drop-shadow(0 6px 12px rgba(12,62,110,0.12));
display:block;
flex:none;

}

.clientes-topo-direita{

gap:10px;
padding:8px 10px;
background:linear-gradient(135deg, rgba(255,255,255,0.96), rgba(240,248,255,0.93));
border:1px solid rgba(0,87,168,0.08);
border-radius:22px;
box-shadow:0 14px 26px rgba(12,62,110,0.08);

}

.usuario-foto{

width:50px;
height:50px;
border-radius:16px;
box-shadow:0 8px 16px rgba(12,62,110,0.10);

}

.usuario-info-card{

min-width:148px;
padding:8px 10px;
border-radius:16px;
box-shadow:none;

}

.usuario-info-card strong{

font-size:12px;
letter-spacing:0.03em;

}

.usuario-info-card span{

font-size:12px;
line-height:1.25;

}

.usuario-acoes-topo{

gap:8px;

}

.botao-topo-atalho{

height:36px;
min-width:36px;
padding:0 12px;
border-radius:12px;
font-size:0.84rem;

}

.logo-circular-menu{

display:flex;
align-items:center;
justify-content:center;
cursor:pointer;
background:linear-gradient(135deg, rgba(0,87,168,0.98), rgba(8,52,95,0.96)) !important;
border:1px solid rgba(0,87,168,0.18);
box-shadow:0 16px 30px rgba(12,62,110,0.20);
transition:transform 0.2s ease, box-shadow 0.2s ease;

}

.logo-circular-menu:hover,
.logo-circular-menu:focus-visible{

transform:translateY(-1px);
box-shadow:0 20px 34px rgba(12,62,110,0.24);

}

.logo-menu-icone{

display:flex;
flex-direction:column;
gap:5px;

}

.logo-menu-icone i{

display:block;
width:24px;
height:2px;
border-radius:999px;
background:#ffffff;

}

.clientes-faixa-sistema{

position:relative;
padding-left:70px;

}

.clientes-faixa-sistema-logo{

position:absolute;
left:0;
top:50%;
transform:translateY(-50%);
width:56px;
height:56px;
object-fit:contain;
filter:drop-shadow(0 8px 16px rgba(12,62,110,0.14));

}

@media (max-width: 1100px){

.clientes-topo-titulo{

padding:0 12px;

}

.topo-sistema-marca-central{

width:min(100%, 300px);
min-width:260px;

}

}

@media (max-width: 900px){

.topo-sistema-logo-central{

width:220px !important;
height:34px !important;
min-width:220px !important;
max-width:220px !important;
min-height:34px !important;
max-height:34px !important;

}

.topo-sistema-marca-central{

width:min(100%, 248px);
min-width:220px;
padding:6px 10px;

}

.clientes-topo-direita{

padding:6px 8px;
gap:8px;

}

.usuario-info-card{

min-width:128px;
padding:7px 9px;

}

.clientes-faixa-sistema{

padding-left:0;

}

.clientes-faixa-sistema-logo{

position:relative;
left:auto;
top:auto;
transform:none;
width:46px;
height:46px;
margin-bottom:6px;

}

}

.botao-secundario,
.botao-destaque,
.botao-tabela,
.acao-circular,
.botao-topo-atalho{

border-radius:14px;
font-weight:700;
letter-spacing:0.01em;

}

.botao-secundario,
.botao-destaque{

min-height:40px;
padding:9px 14px;

}

.botao-tabela{

min-height:34px;
padding:7px 11px;
font-size:0.82rem;

}

.acao-circular{

width:42px;
height:42px;
border-radius:14px;
box-shadow:0 10px 22px rgba(12,62,110,0.12);

}

.filtro-tabela-select,
.campo-form input,
.campo-form select,
.campo-form textarea,
.historico-formulario input,
.historico-formulario select,
.historico-formulario textarea{

border-radius:16px;
background:rgba(255,255,255,0.96);
border:1px solid rgba(0,87,168,0.10);
box-shadow:0 8px 18px rgba(12,62,110,0.04);

}

.campo-form input,
.campo-form select,
.historico-formulario input,
.historico-formulario select{

min-height:44px;

}

.campo-form textarea,
.historico-formulario textarea{

min-height:108px;

}

.campo-form label{

font-size:0.92rem;
font-weight:700;
color:var(--cor-primaria-escura);

}

.cadastro-grid{

gap:16px;

}

.historico-formulario{

gap:14px;

}

.modal-conteudo,
.modal-financeiro-painel,
.modal-card-detalhe-janela,
.modal-cliente-cadastro,
.modal-pet-cadastro,
.modal-detalhes-cliente{

border-radius:26px;
background:linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,251,255,0.97));
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 28px 60px rgba(12,62,110,0.18);

}

.modal-cadastro-topo{

padding-bottom:14px;
margin-bottom:16px;
border-bottom:1px solid rgba(0,87,168,0.08);

}

.modal-cadastro-topo h2{

font-size:1.42rem;
line-height:1.2;

}

.modal-cadastro-topo p{

font-size:0.93rem;
color:var(--cor-texto-suave);

}

.modal-fechar-x,
.modal-card-detalhe-fechar{

width:40px;
height:40px;
border-radius:14px;
box-shadow:none;

}

.detalhes-abas{

padding:6px;
background:rgba(0,87,168,0.05);
border-radius:18px;
gap:8px;

}

.detalhes-aba{

min-height:38px;
padding:8px 14px;
border-radius:13px;
font-size:0.88rem;
font-weight:700;

}

.clientes-resumo-vazio{

padding:16px 18px;
border-radius:18px;
background:rgba(255,255,255,0.88);
border:1px dashed rgba(0,87,168,0.14);
color:var(--cor-texto-suave);

}

.compra-acoes-card,
.modal-cliente-acoes{

gap:10px;

}

.compra-acoes-card > *,
.modal-cliente-acoes > *{

flex-wrap:wrap;

}

@media (max-width: 900px){

.modal-conteudo,
.modal-financeiro-painel,
.modal-card-detalhe-janela,
.modal-cliente-cadastro,
.modal-pet-cadastro,
.modal-detalhes-cliente{

border-radius:20px;

}

/* MERLINPET DESTAQUE DE MARCA */

.clientes-topo-titulo{

min-width:min(520px, 100%);

}

.topo-sistema-marca{

display:inline-flex;
align-items:center;
justify-content:center;
gap:14px;
padding:10px 16px;
background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(234,246,255,0.95));
border:1px solid rgba(0,87,168,0.12);
border-radius:24px;
box-shadow:0 16px 32px rgba(12,62,110,0.10);

}

.topo-sistema-logo{

width:78px;
height:78px;
object-fit:contain;
filter:drop-shadow(0 10px 20px rgba(12,62,110,0.18));
flex:0 0 auto;

}

.topo-sistema-textos{

display:flex;
flex-direction:column;
align-items:flex-start;
gap:4px;
min-width:0;

}

.topo-sistema-nome{

font-size:32px;
font-weight:900;
letter-spacing:0.03em;
text-shadow:0 8px 18px rgba(12,62,110,0.10);

}

.topo-sistema-subtitulo{

font-size:12px;
font-weight:700;
letter-spacing:0.08em;
text-transform:uppercase;
color:#2b6489;

}

.clientes-faixa-sistema{

position:relative;
padding-left:70px;

}

.clientes-faixa-sistema-logo{

position:absolute;
left:0;
top:50%;
transform:translateY(-50%);
width:56px;
height:56px;
object-fit:contain;
filter:drop-shadow(0 8px 16px rgba(12,62,110,0.14));

}

.clientes-faixa-sistema strong{

font-size:16px;

}

.clientes-faixa-sistema span{

font-size:12px;

}

@media (max-width: 1100px){

.topo-sistema-marca{

justify-content:flex-start;

}

}

@media (max-width: 900px){

.clientes-topo-titulo{

min-width:0;
width:100%;

}

.topo-sistema-marca{

width:100%;
padding:10px 14px;
gap:12px;

}

.topo-sistema-logo{

width:64px;
height:64px;

}

.topo-sistema-nome{

font-size:24px;

}

.topo-sistema-subtitulo{

font-size:11px;

}

.clientes-faixa-sistema{

padding-left:0;

}

.clientes-faixa-sistema-logo{

position:relative;
left:auto;
top:auto;
transform:none;
width:48px;
height:48px;
margin-bottom:6px;

}

}

.detalhes-abas{

overflow:auto;

}

}

/* MERLINPET POLIMENTO POR MODULO */

.agenda-topo-painel,
.agenda-grade-card,
.agenda-filtros-card,
.clientes-tabela-card,
.clientes-resumo-rapido,
.financeiro-painel-card,
.financeiro-kpi-card,
.financeiro-atalho-card{

border-radius:24px;

}

.agenda-topo-painel,
.agenda-filtros-card,
.agenda-grade-card,
.clientes-tabela-card,
.clientes-resumo-rapido,
.financeiro-painel-card{

box-shadow:0 16px 34px rgba(12,62,110,0.07);

}

.agenda-conteudo{

gap:18px;

}

.agenda-topo-painel{

padding:18px 20px;

}

.agenda-navegacao{

gap:14px;

}

.agenda-data-central{

gap:10px;

}

.agenda-data-central strong{

font-size:1.12rem;

}

.agenda-data-central input{

min-height:42px;
padding:10px 12px;

}

.agenda-modo-toggle{

gap:8px;

}

.agenda-dia-semana{

min-height:74px;
padding:12px 10px;
border-radius:18px;

}

.agenda-filtros-card{

padding:18px 20px;

}

.agenda-filtros-grid{

gap:14px;

}

.agenda-resumo-grid{

gap:14px;

}

.agenda-grade-topo,
.agenda-bloco-topo{

padding-bottom:12px;
margin-bottom:14px;

}

.agenda-grade-topo h2,
.agenda-bloco-topo h3{

font-size:1.15rem;

}

.agenda-grade-topo p,
.agenda-bloco-topo p{

font-size:0.93rem;

}

.agenda-duas-colunas{

gap:16px;
align-items:start;

}

.agenda-grade-principal-card{

padding:18px;

}

.agenda-creche-painel{

padding:18px;
position:sticky;
top:158px;

}

.agenda-creche-resumo{

gap:10px;
margin-bottom:14px;

}

.agenda-creche-resumo-card{

min-height:auto;
padding:14px 15px;

}

.agenda-creche-resumo-card span{

font-size:0.72rem;

}

.agenda-creche-resumo-card strong{

font-size:1.35rem;

}

.agenda-linha-horario{

grid-template-columns:96px minmax(0, 1fr);
gap:12px;
margin-bottom:12px;

}

.agenda-hora-label{

min-height:58px;
padding:10px 12px;
font-size:1rem;
border-radius:18px;

}

.agenda-hora-conteudo{

min-height:76px;
padding:10px;
border-radius:20px;

}

.agenda-slot-vazio,
.agenda-slot-ocupado{

min-height:76px;
padding:14px 16px;
border-radius:18px;

}

.agenda-slot-vazio span,
.agenda-slot-ocupado span{

font-size:0.92rem;

}

.agenda-card-item{

padding:14px 16px;
border-radius:18px;
min-height:calc(82px * var(--agenda-span, 1));

}

.agenda-card-topo{

gap:10px;
margin-bottom:8px;

}

.agenda-card-topo strong{

font-size:1.08rem;

}

.agenda-card-topo p{

font-size:0.92rem;

}

.agenda-card-meta{

gap:8px;
margin-bottom:10px;

}

.agenda-tipo-chip,
.agenda-duracao-chip,
.agenda-profissional-chip{

min-height:26px;
padding:5px 10px;
border-radius:999px;
font-size:0.76rem;
font-weight:700;

}

.agenda-creche-card{

padding:14px 16px;
border-radius:18px;

}

.agenda-creche-card p{

font-size:0.92rem;

}

.agenda-mes-grid{

gap:12px;

}

.agenda-mes-dia{

min-height:150px;
padding:12px;
border-radius:18px;

}

.agenda-semana-coluna{

border-radius:20px;

}

.agenda-semana-topo{

padding:12px 14px;

}

.agenda-semana-lista{

padding:12px;
gap:10px;

}

.agenda-semana-item{

padding:12px 13px;
border-radius:16px;

}

.clientes-pagina{

gap:18px;

}

.clientes-cabecalho-modulo{

padding:18px 20px;

}

.clientes-cabecalho-modulo h1{

font-size:1.9rem;

}

.clientes-ferramentas{

gap:12px;

}

.clientes-busca-wrap{

max-width:420px;

}

.clientes-busca{

min-height:44px;
padding:11px 16px 11px 44px;
font-size:0.96rem;

}

.clientes-acoes-rapidas,
.clientes-acoes-planilha{

gap:10px;

}

.clientes-conteudo{

gap:18px;

}

.clientes-tabela-card{

padding:14px 16px;

}

.clientes-filtros-tabela{

gap:12px;
padding:14px 16px;
border-radius:20px;

}

.clientes-filtros-tabela input,
.clientes-filtros-tabela select{

min-height:42px;
padding:10px 12px;

}

.clientes-tabela th,
.clientes-tabela td{

padding:12px 14px;

}

.clientes-tabela th{

font-size:0.77rem;
letter-spacing:0.08em;

}

.clientes-tabela td{

font-size:0.95rem;

}

.clientes-resumo-rapido{

padding:18px 20px;

}

.clientes-resumo-topo{

margin-bottom:12px;

}

.clientes-resumo-topo h2{

font-size:1.28rem;

}

.clientes-resumo-topo p{

font-size:0.93rem;

}

.clientes-resumo-grid{

gap:12px;

}

.clientes-resumo-card{

min-height:132px;
padding:16px 18px;

}

.clientes-resumo-card strong{

font-size:1.65rem;

}

.clientes-resumo-pets{

gap:12px;

}

.clientes-resumo-pet-card{

padding:14px 16px;
border-radius:20px;

}

.clientes-resumo-pet-foto{

width:72px;
height:72px;

}

.clientes-resumo-pet-card strong{

font-size:1.05rem;

}

.clientes-resumo-pet-card p{

font-size:0.93rem;

}

.detalhes-cliente-topo{

gap:14px;
padding-bottom:12px;

}

.detalhes-cliente-conteudo{

gap:18px;

}

.clientes-paginacao{

padding-top:8px;

}

.financeiro-grid{

gap:18px;

}

.financeiro-hero{

gap:16px;

}

.financeiro-kpis{

gap:14px;

}

.financeiro-kpi-card{

padding:16px 18px;
min-height:134px;

}

.financeiro-kpi-card span{

font-size:0.72rem;
letter-spacing:0.08em;

}

.financeiro-kpi-card strong{

font-size:1.9rem;

}

.financeiro-kpi-card p{

font-size:0.94rem;

}

.financeiro-painel-lateral{

gap:14px;

}

.financeiro-painel-card{

padding:18px 20px;

}

.financeiro-atalhos-grid{

gap:12px;

}

.financeiro-atalho-card{

min-height:112px;
padding:16px;

}

.financeiro-atalho-card span{

width:38px;
height:38px;
font-size:1rem;

}

.financeiro-atalho-card strong{

font-size:1rem;

}

.financeiro-atalho-card p{

font-size:0.9rem;

}

.financeiro-alertas-lista,
.financeiro-formas-lista,
.financeiro-linha-tempo{

gap:10px;

}

.financeiro-alerta-item,
.financeiro-forma-item,
.financeiro-timeline-item{

padding:13px 15px;
border-radius:16px;

}

.financeiro-alerta-item strong,
.financeiro-timeline-item strong{

font-size:1rem;

}

.financeiro-alerta-item p,
.financeiro-timeline-item p{

font-size:0.92rem;

}

.financeiro-forma-item span{

font-size:0.87rem;

}

.financeiro-forma-item strong{

font-size:1rem;

}

.financeiro-navegacao-interna{

gap:8px;

}

.financeiro-nav-chip{

min-height:34px;
padding:7px 12px;
font-size:0.83rem;

}

.financeiro-resumo-faixa{

gap:12px;

}

.financeiro-resumo-detalhe{

padding:14px 16px;
border-radius:18px;

}

.financeiro-modal-conteudo,
.modal-financeiro-painel{

max-width:min(960px, calc(100vw - 40px));
border-radius:24px;

}

.financeiro-modal-lista{

gap:12px;

}

@media (max-width: 1200px){

.agenda-duas-colunas{

grid-template-columns:minmax(0, 1fr);

}

.agenda-creche-painel{

position:relative;
top:auto;

}

}

@media (max-width: 900px){

.agenda-linha-horario{

grid-template-columns:1fr;

}

/* MERLINPET DASHBOARD EXECUTIVO */

.clientes-conteudo > .financeiro-hero:first-child{

align-items:start;

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-kpis{

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

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-kpi-card{

min-height:148px;

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-kpi-card strong{

font-size:2.15rem;

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-kpi-card p{

font-size:0.95rem;

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-kpi-card span{

font-size:0.74rem;

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-painel-card{

min-height:100%;

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-atalho-card{

min-height:118px;

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-atalho-card strong{

font-size:1.04rem;

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-atalho-card p{

font-size:0.9rem;
line-height:1.45;

}

.clientes-conteudo > .financeiro-hero:first-child .financeiro-alerta-item{

padding:14px 16px;

}

.financeiro-resumo-faixa .clientes-resumo-card{

background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,250,255,0.95));
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 14px 28px rgba(12,62,110,0.07);

}

.financeiro-resumo-faixa .clientes-resumo-card:nth-child(2){

background:linear-gradient(180deg, rgba(245,252,247,0.98), rgba(235,247,239,0.95));

}

.financeiro-resumo-faixa .clientes-resumo-card:nth-child(3){

background:linear-gradient(180deg, rgba(255,248,238,0.98), rgba(249,239,222,0.95));

}

.financeiro-resumo-faixa .clientes-resumo-card strong{

font-size:1.82rem;

}

.financeiro-listas-grid{

gap:18px;

}

.financeiro-listas-grid .clientes-resumo-rapido{

position:relative;
overflow:hidden;

}

.financeiro-listas-grid .clientes-resumo-rapido::before{

content:"";
position:absolute;
left:0;
top:0;
bottom:0;
width:5px;
background:linear-gradient(180deg, var(--cor-primaria), var(--cor-secundaria));
opacity:0.82;

}

.financeiro-listas-grid .clientes-resumo-conteudo{

position:relative;
z-index:1;

}

.financeiro-listas-grid .clientes-resumo-vazio{

padding:14px 16px;
border-radius:16px;
background:rgba(255,255,255,0.86);
border:1px dashed rgba(0,87,168,0.12);

}

.dashboard-item,
.dashboard-linha,
.dashboard-alerta-item,
.dashboard-aniversario-item{

background:rgba(255,255,255,0.88);
border:1px solid rgba(0,87,168,0.08);
border-radius:18px;
padding:14px 16px;
box-shadow:0 8px 18px rgba(12,62,110,0.05);

}

.dashboard-item strong,
.dashboard-linha strong,
.dashboard-alerta-item strong,
.dashboard-aniversario-item strong{

font-size:1rem;
line-height:1.35;

}

.dashboard-item p,
.dashboard-linha p,
.dashboard-alerta-item p,
.dashboard-aniversario-item p{

font-size:0.92rem;
line-height:1.45;

}

.dashboard-aniversario-item{

display:flex;
align-items:flex-start;
justify-content:space-between;
gap:12px;

}

.dashboard-aniversario-item .botao-secundario,
.dashboard-aniversario-item .botao-primario,
.dashboard-item .botao-secundario,
.dashboard-item .botao-primario{

min-height:34px;
padding:7px 11px;
border-radius:12px;
font-size:0.82rem;

}

@media (max-width: 900px){

.clientes-conteudo > .financeiro-hero:first-child .financeiro-kpi-card strong{

font-size:1.78rem;

}

.financeiro-resumo-faixa .clientes-resumo-card strong{

font-size:1.56rem;

}

}

/* MERLINPET FINANCEIRO EXECUTIVO */

.financeiro-hero{

align-items:start;

}

.financeiro-kpis{

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

}

.financeiro-kpi-card{

position:relative;
overflow:hidden;
background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,250,255,0.94));
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 16px 32px rgba(12,62,110,0.08);

}

.financeiro-kpi-card::before{

content:"";
position:absolute;
inset:0 auto 0 0;
width:6px;
background:linear-gradient(180deg, var(--cor-primaria), var(--cor-secundaria));
opacity:0.9;

}

.financeiro-kpi-card.destaque-saldo{

background:linear-gradient(180deg, rgba(240,251,243,0.98), rgba(228,245,234,0.96));

}

.financeiro-kpi-card.destaque-entrada{

background:linear-gradient(180deg, rgba(236,247,255,0.98), rgba(226,241,252,0.96));

}

.financeiro-kpi-card.destaque-saida{

background:linear-gradient(180deg, rgba(255,244,240,0.98), rgba(252,233,226,0.96));

}

.financeiro-kpi-card.destaque-alerta{

background:linear-gradient(180deg, rgba(255,248,235,0.98), rgba(251,240,214,0.96));

}

.financeiro-kpi-card.destaque-neutro{

background:linear-gradient(180deg, rgba(248,250,252,0.98), rgba(239,244,248,0.96));

}

.financeiro-kpi-clicavel:hover,
.financeiro-resumo-clicavel:hover{

transform:translateY(-2px);
box-shadow:0 18px 34px rgba(12,62,110,0.11);

}

.financeiro-painel-card{

background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,251,255,0.95));
border:1px solid rgba(0,87,168,0.08);

}

.financeiro-painel-card .clientes-resumo-topo{

display:flex;
align-items:flex-start;
justify-content:space-between;
gap:14px;

}

.financeiro-painel-card .clientes-resumo-topo::after{

content:"";
flex:0 0 48px;
height:10px;
margin-top:10px;
border-radius:999px;
background:linear-gradient(90deg, rgba(0,87,168,0.72), rgba(141,198,63,0.72));

}

.financeiro-atalhos-grid{

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

}

.financeiro-atalho-card{

position:relative;
overflow:hidden;
background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(243,248,252,0.95));
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 14px 28px rgba(12,62,110,0.07);

}

.financeiro-atalho-card::after{

content:"";
position:absolute;
left:16px;
right:16px;
bottom:0;
height:3px;
border-radius:999px 999px 0 0;
background:linear-gradient(90deg, rgba(0,87,168,0.58), rgba(141,198,63,0.58));

}

.financeiro-atalho-card:hover{

transform:translateY(-2px);
box-shadow:0 18px 30px rgba(12,62,110,0.10);

}

.financeiro-atalho-card span{

background:linear-gradient(180deg, rgba(0,87,168,0.12), rgba(141,198,63,0.12));
color:var(--cor-primaria-escura);
box-shadow:inset 0 1px 0 rgba(255,255,255,0.75);

}

.financeiro-alerta-item,
.financeiro-forma-item,
.financeiro-timeline-item{

background:rgba(255,255,255,0.88);
border:1px solid rgba(0,87,168,0.07);
box-shadow:0 8px 18px rgba(12,62,110,0.05);

}

.financeiro-alerta-item.critico{

border-color:rgba(220,82,82,0.24);
background:linear-gradient(180deg, rgba(255,243,243,0.98), rgba(252,234,234,0.94));

}

.financeiro-alerta-item.atencao{

border-color:rgba(215,155,50,0.24);
background:linear-gradient(180deg, rgba(255,249,237,0.98), rgba(251,240,213,0.94));

}

.financeiro-alerta-item.ok{

border-color:rgba(55,149,92,0.24);
background:linear-gradient(180deg, rgba(242,252,245,0.98), rgba(229,245,234,0.94));

}

.financeiro-timeline-item.entrada{

border-left:4px solid rgba(0,87,168,0.55);

}

.financeiro-timeline-item.saida{

border-left:4px solid rgba(214,108,73,0.55);

}

.financeiro-forma-item{

display:flex;
align-items:center;
justify-content:space-between;
gap:12px;

}

.financeiro-forma-item strong{

white-space:nowrap;

}

.financeiro-navegacao-interna{

padding:6px;
background:rgba(0,87,168,0.05);
border-radius:18px;

}

.financeiro-nav-chip{

border-radius:13px;

}

.financeiro-nav-chip.ativo,
.financeiro-nav-chip:hover{

box-shadow:0 8px 18px rgba(12,62,110,0.10);

}

.financeiro-resumo-faixa{

align-items:stretch;

}

.financeiro-resumo-detalhe{

background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,250,255,0.95));
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 10px 22px rgba(12,62,110,0.06);

}

.financeiro-modal-conteudo,
.modal-financeiro-painel{

background:linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,251,255,0.97));
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 26px 54px rgba(12,62,110,0.16);

}

.modal-financeiro-detalhe .modal-cadastro-topo{

position:sticky;
top:0;
z-index:2;
background:linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,251,255,0.97));
border-bottom:1px solid rgba(0,87,168,0.08);

}

.financeiro-modal-lista{

padding-right:4px;

}

.financeiro-modal-lista > *{

background:rgba(255,255,255,0.9);
border:1px solid rgba(0,87,168,0.08);
border-radius:18px;
padding:14px 16px;

}

@media (max-width: 900px){

.financeiro-painel-card .clientes-resumo-topo{

display:block;

}

.financeiro-painel-card .clientes-resumo-topo::after{

display:none;

}

.financeiro-atalhos-grid{

grid-template-columns:repeat(2, minmax(0, 1fr));

}

}

/* MERLINPET CLIENTES REFINADO */

.clientes-cabecalho-modulo{

background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(240,248,255,0.95));
border:1px solid rgba(0,87,168,0.08);

}

.clientes-ferramentas{

align-items:center;

}

.clientes-busca-wrap{

background:rgba(255,255,255,0.92);
border:1px solid rgba(0,87,168,0.08);
border-radius:18px;
box-shadow:0 10px 24px rgba(12,62,110,0.05);

}

.clientes-busca{

background:transparent;
border-color:transparent;
box-shadow:none;

}

.clientes-busca:focus{

border-color:transparent;
box-shadow:none;

}

.clientes-filtros-tabela{

background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(246,251,255,0.95));
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 12px 26px rgba(12,62,110,0.06);

}

.clientes-tabela-card{

background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,251,254,0.95));
border:1px solid rgba(0,87,168,0.08);

}

.clientes-tabela thead tr{

background:rgba(0,87,168,0.04);

}

.clientes-tabela tbody tr{

transition:background 0.2s ease, transform 0.2s ease;

}

.clientes-tabela tbody tr:hover{

background:rgba(0,87,168,0.04);

}

.clientes-tabela td{

vertical-align:middle;

}

.clientes-resumo-rapido{

background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,251,255,0.95));
border:1px solid rgba(0,87,168,0.08);

}

.clientes-resumo-topo{

display:flex;
align-items:flex-start;
justify-content:space-between;
gap:14px;

}

.clientes-resumo-topo::after{

content:"";
flex:0 0 52px;
height:10px;
margin-top:10px;
border-radius:999px;
background:linear-gradient(90deg, rgba(0,87,168,0.72), rgba(141,198,63,0.72));

}

.clientes-resumo-grid .clientes-resumo-card{

position:relative;
overflow:hidden;
background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,250,255,0.94));

}

.clientes-resumo-grid .clientes-resumo-card::before{

content:"";
position:absolute;
inset:0 auto 0 0;
width:5px;
background:linear-gradient(180deg, var(--cor-primaria), var(--cor-secundaria));
opacity:0.84;

}

.clientes-resumo-subtopo{

padding:12px 14px;
background:rgba(255,255,255,0.88);
border:1px solid rgba(0,87,168,0.08);
border-radius:18px;

}

.clientes-aniversarios-wrap{

padding:10px 12px;
border-radius:16px;
background:rgba(141,198,63,0.10);
border:1px solid rgba(141,198,63,0.18);

}

.clientes-resumo-pets{

display:grid;
grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
gap:14px;

}

.clientes-resumo-pet-card{

display:grid;
grid-template-columns:72px minmax(0, 1fr);
gap:14px;
align-items:center;
background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,250,253,0.95));
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 12px 28px rgba(12,62,110,0.06);

}

.clientes-resumo-pet-card-clicavel:hover,
.clientes-resumo-pet-card-clicavel:focus-visible{

transform:translateY(-2px);
box-shadow:0 16px 30px rgba(12,62,110,0.10);

}

.clientes-resumo-pet-foto{

border:2px solid rgba(0,87,168,0.10);
box-shadow:0 8px 18px rgba(12,62,110,0.08);

}

.clientes-resumo-pet-card strong{

display:block;
margin-bottom:2px;

}

.clientes-resumo-pet-card p{

line-height:1.4;

}

.modal-detalhes-cliente{

background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,251,255,0.96));

}

.detalhes-cliente-topo{

background:linear-gradient(135deg, rgba(255,255,255,0.96), rgba(241,249,244,0.94));
border:1px solid rgba(0,87,168,0.08);
border-radius:22px;
padding:18px;

}

.detalhes-cliente-conteudo{

padding-top:4px;

}

.detalhes-cliente-conteudo .clientes-resumo-rapido{

padding:16px 18px;

}

.detalhes-cliente-conteudo .clientes-resumo-topo::after{

flex-basis:42px;

}

.clientes-paginacao{

align-items:center;
padding:10px 0 2px;

}

.clientes-paginacao-acoes button{

min-height:36px;
padding:8px 12px;
border-radius:12px;

}

@media (max-width: 900px){

.clientes-resumo-topo{

display:block;

}

.clientes-resumo-topo::after{

display:none;

}

.clientes-resumo-pets{

grid-template-columns:1fr;

}

.clientes-resumo-pet-card{

grid-template-columns:64px minmax(0, 1fr);

}

.detalhes-cliente-topo{

padding:16px;

}

}

/* MERLINPET AGENDA OPERACIONAL */

.agenda-topo-painel{

background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(235,247,255,0.94));
border:1px solid rgba(0,87,168,0.10);

}

.agenda-navegacao > .botao-secundario{

min-height:40px;
padding:9px 14px;
border-radius:14px;

}

.agenda-data-central{

padding:8px 14px;
background:rgba(255,255,255,0.82);
border:1px solid rgba(0,87,168,0.08);
border-radius:18px;

}

.agenda-modo-toggle{

padding:6px;
background:rgba(0,87,168,0.06);
border-radius:18px;

}

.agenda-modo-toggle .detalhes-aba{

min-width:88px;
border-radius:14px;

}

.agenda-faixa-semana{

padding-top:2px;

}

.agenda-filtros-card{

background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(244,251,247,0.94));
border:1px solid rgba(141,198,63,0.16);

}

.agenda-resumo-grid .clientes-resumo-card{

position:relative;
overflow:hidden;

}

.agenda-resumo-grid .clientes-resumo-card::before{

content:"";
position:absolute;
inset:0 auto 0 0;
width:5px;
background:linear-gradient(180deg, var(--cor-primaria), var(--cor-secundaria));
opacity:0.85;

}

.agenda-grade-principal-card{

background:
linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,251,255,0.96)),
repeating-linear-gradient(
180deg,
rgba(0,87,168,0.02) 0,
rgba(0,87,168,0.02) 76px,
rgba(0,87,168,0.04) 76px,
rgba(0,87,168,0.04) 77px
);
border:1px solid rgba(0,87,168,0.08);

}

.agenda-creche-painel{

background:linear-gradient(180deg, rgba(244,251,247,0.98), rgba(233,247,238,0.95));
border:1px solid rgba(141,198,63,0.22);

}

.agenda-grade-topo{

display:flex;
align-items:flex-start;
justify-content:space-between;
gap:12px;

}

.agenda-grade-topo::after{

content:"";
flex:0 0 64px;
height:10px;
margin-top:10px;
border-radius:999px;
background:linear-gradient(90deg, rgba(0,87,168,0.72), rgba(141,198,63,0.72));

}

.agenda-linha-horario{

align-items:stretch;

}

.agenda-hora-label{

background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(233,243,251,0.95));
border:1px solid rgba(0,87,168,0.10);
box-shadow:inset 0 1px 0 rgba(255,255,255,0.85);

}

.agenda-hora-conteudo{

background:rgba(255,255,255,0.66);
border:1px dashed rgba(0,87,168,0.10);

}

.agenda-slot-vazio{

background:linear-gradient(135deg, rgba(255,255,255,0.92), rgba(247,250,253,0.92));
border:1px dashed rgba(0,87,168,0.14);

}

.agenda-slot-vazio .botao-secundario{

min-height:36px;
padding:8px 12px;
border-radius:12px;

}

.agenda-card-item{

box-shadow:0 12px 24px rgba(12,62,110,0.08);
border-width:1px;

}

.agenda-card-item::after{

content:"";
display:block;
height:1px;
margin-top:12px;
background:linear-gradient(90deg, rgba(0,87,168,0.10), rgba(141,198,63,0.02));

}

.agenda-card-topo strong{

line-height:1.2;

}

.agenda-card-topo p{

line-height:1.35;

}

.agenda-card-meta{

flex-wrap:wrap;

}

.agenda-card-item .botao-secundario,
.agenda-card-item .botao-sucesso,
.agenda-card-item .botao-perigo{

min-height:34px;
padding:7px 11px;
border-radius:12px;
font-size:0.82rem;

}

.agenda-creche-resumo{

grid-template-columns:repeat(2, minmax(0, 1fr));

}

.agenda-creche-resumo-card{

background:rgba(255,255,255,0.82);
border:1px solid rgba(141,198,63,0.16);
box-shadow:none;

}

.agenda-creche-card{

background:rgba(255,255,255,0.88);
border-width:1px;
box-shadow:0 10px 22px rgba(56, 111, 77, 0.08);

}

.agenda-creche-card .agenda-card-meta{

margin-bottom:8px;

}

.agenda-creche-periodo{

background:rgba(141,198,63,0.12);
color:#447a1a;

}

.agenda-semana-coluna{

background:rgba(255,255,255,0.94);
border:1px solid rgba(0,87,168,0.08);
overflow:hidden;

}

.agenda-semana-topo{

background:linear-gradient(180deg, rgba(245,250,255,0.96), rgba(255,255,255,0.94));
border-bottom:1px solid rgba(0,87,168,0.08);

}

.agenda-semana-item{

background:rgba(255,255,255,0.92);
border:1px solid rgba(0,87,168,0.08);

}

.agenda-mes-grid{

background:rgba(255,255,255,0.82);
padding:12px;
border-radius:20px;
border:1px solid rgba(0,87,168,0.08);

}

.agenda-mes-cabecalho-item{

font-size:0.8rem;
letter-spacing:0.08em;
color:var(--cor-texto-suave);

}

.agenda-mes-dia{

background:linear-gradient(180deg, rgba(255,255,255,0.96), rgba(246,250,253,0.92));

}

.agenda-mes-dia-topo strong{

font-size:1.02rem;

}

.agenda-mes-tag{

border-radius:999px;
padding:4px 8px;
font-size:0.72rem;

}

@media (max-width: 1200px){

.agenda-creche-resumo{

grid-template-columns:repeat(3, minmax(0, 1fr));

}

}

@media (max-width: 900px){

.agenda-grade-topo{

display:block;

}

.agenda-grade-topo::after{

display:none;

}

.agenda-modo-toggle{

width:100%;
overflow:auto;

}

.agenda-modo-toggle .detalhes-aba{

min-width:76px;

}

.agenda-creche-resumo{

grid-template-columns:1fr;

}

}

.agenda-hora-label{

width:100%;

}

.clientes-cabecalho-modulo h1{

font-size:1.56rem;

}

.financeiro-kpi-card strong{

font-size:1.62rem;

}

}

/* MERLINPET AJUSTES POR MODULO */

.agenda-linha-horario{

gap:12px;
margin-bottom:12px;

}

.agenda-hora-label{

min-width:86px;
padding:14px 10px;
font-size:15px;
font-weight:800;
border-radius:16px;
background:linear-gradient(180deg,#ffffff 0%,#edf6fd 100%);
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 10px 18px rgba(8,52,95,0.05);

}

.agenda-hora-conteudo{

padding:12px;
border-radius:18px;
background:rgba(255,255,255,0.92);
border:1px dashed rgba(0,87,168,0.14);

}

.agenda-card-item{

padding:14px 16px;
gap:10px;
min-height:unset;
box-shadow:0 12px 22px rgba(8,52,95,0.06);
border-radius:18px;

}

.agenda-card-item strong,
.agenda-creche-card strong{

font-size:18px;

}

.agenda-card-item p,
.agenda-creche-card p,
.agenda-slot-vazio span,
.agenda-slot-ocupado span{

font-size:13px;
line-height:1.45;

}

.agenda-card-meta{

gap:8px;
margin:2px 0;

}

.agenda-tipo-chip,
.agenda-duracao-chip,
.agenda-profissional-chip{

padding:7px 10px;
font-size:11px;
border-radius:999px;

}

.agenda-slot-vazio,
.agenda-slot-ocupado{

min-height:74px;
border-radius:16px;

}

.agenda-creche-card{

padding:14px 16px;
box-shadow:0 12px 22px rgba(8,52,95,0.06);

}

.clientes-resumo-topo{

margin-bottom:14px;

}

.clientes-resumo-topo h2{

font-size:20px;

}

.clientes-resumo-topo p{

font-size:13px;
line-height:1.45;

}

.clientes-resumo-pet-card{

padding:14px 16px;
gap:14px;
border-radius:18px;
box-shadow:0 10px 20px rgba(8,52,95,0.05);

}

.clientes-resumo-pet-foto{

width:74px;
height:74px;
border-radius:18px;

}

.clientes-resumo-pet-card strong{

font-size:17px;

}

.clientes-tabela-card{

border-radius:22px;
padding:12px;
box-shadow:0 14px 28px rgba(8,52,95,0.05);

}

.clientes-tabela{

font-size:13px;

}

.clientes-tabela th{

font-size:12px;
letter-spacing:0.03em;
text-transform:uppercase;
color:#55738f;
background:#f4f9fd;

}

.clientes-tabela th,
.clientes-tabela td{

padding:10px 10px;

}

.clientes-tabela td{

line-height:1.4;

}

.detalhes-cliente-topo{

gap:14px;

}

.detalhes-cliente-conteudo{

gap:18px;

}

.financeiro-hero{

gap:16px;

}

.financeiro-kpi-card{

padding:16px;
border-radius:20px;
box-shadow:0 14px 24px rgba(8,52,95,0.06);

}

.financeiro-kpi-card span{

font-size:11px;
letter-spacing:0.08em;

}

.financeiro-kpi-card strong{

font-size:30px;
line-height:1.1;

}

.financeiro-kpi-card p{

font-size:13px;
line-height:1.45;

}

.financeiro-atalho-card{

padding:14px;
border-radius:18px;

}

.financeiro-atalho-card strong{

font-size:16px;

}

.financeiro-atalho-card p{

font-size:12px;
line-height:1.4;

}

.financeiro-alerta-item,
.financeiro-forma-item,
.financeiro-timeline-item{

padding:14px 16px;
border-radius:18px;

}

.financeiro-alerta-item strong,
.financeiro-timeline-item strong{

font-size:15px;

}

.financeiro-alerta-item p,
.financeiro-timeline-item p{

font-size:13px;
line-height:1.45;

}

.financeiro-nav-chip{

padding:8px 12px;
font-size:12px;
border-radius:999px;

}

.financeiro-modal-conteudo,
.modal-financeiro-painel{

padding:18px;
border-radius:22px;

}

.financeiro-modal-lista{

gap:12px;

}

.pdv-produto-card{

padding:14px;
border-radius:18px;

}

.pdv-total-barra{

padding:16px 18px;
border-radius:22px;

}

@media (max-width: 1100px){

.agenda-hora-label{

min-width:72px;
font-size:14px;

}

.financeiro-kpi-card strong{

font-size:24px;

}

}

/* MERLINPET POLIMENTO FINAL */

.login-body{

background:
radial-gradient(circle at top left, rgba(141,214,63,0.16) 0%, transparent 26%),
radial-gradient(circle at top right, rgba(0,87,168,0.16) 0%, transparent 28%),
linear-gradient(180deg,#eef7ff 0%,#f6fbff 36%,#f8fbfd 100%);

}

.login-layout{

padding:28px;

}

.login-card{

width:min(100%, 680px);
padding:28px;
border-radius:30px;
background:rgba(255,255,255,0.96);

}

.login-hero-strip{

display:flex;
flex-direction:column;
gap:8px;
margin-bottom:22px;
padding:16px 18px;
border-radius:22px;
background:linear-gradient(135deg,#0c4f90 0%,#08345f 62%,#0f5f2b 100%);
box-shadow:0 18px 34px rgba(8,52,95,0.14);
color:#ffffff;

}

.login-hero-strip strong{

font-size:17px;
line-height:1.35;

}

.login-hero-strip p{

margin:0;
font-size:13px;
color:rgba(255,255,255,0.82);

}

.login-hero-badge{

align-self:flex-start;
padding:6px 10px;
border-radius:999px;
background:rgba(255,255,255,0.14);
font-size:11px;
font-weight:800;
letter-spacing:0.08em;

}

.login-brand{

margin-bottom:22px;
gap:16px;

}

.login-brand .logo-circular{

width:92px;
height:92px;
border-radius:28px;

}

.login-brand h1{

font-size:40px;
letter-spacing:0.02em;

}

.login-brand p{

font-size:14px;

}

.login-card .campo-form label{

font-size:13px;
margin-bottom:8px;

}

.login-card .campo-form input,
.login-card .campo-form select,
.login-card .campo-form textarea{

padding:12px 14px;
font-size:15px;

}

.login-senha-wrap .botao-secundario{

min-width:88px;
height:46px;

}

.clientes-resumo-card,
.clientes-resumo-rapido,
.fornecedor-historico-item,
.pacote-cronograma-item,
.agenda-card-item,
.agenda-creche-card{

border-radius:18px;

}

.clientes-resumo-card{

padding:16px;

}

.clientes-resumo-card strong{

font-size:17px;

}

.clientes-resumo-card p,
.fornecedor-historico-item p,
.clientes-resumo-vazio{

font-size:13px;
line-height:1.45;

}

.clientes-resumo-rapido{

padding:16px;

}

.clientes-resumo-topo h2{

font-size:21px;

}

.clientes-topo{

padding:8px 18px 8px 18px;

}

.clientes-faixa-marca{

padding:8px 18px 0 96px;

}

.clientes-pagina{

padding:20px 20px 28px 96px;

}

.clientes-tabela{

font-size:14px;

}

.clientes-tabela th,
.clientes-tabela td{

padding:11px 10px;

}

.filtro-tabela-select,
.clientes-filtros-tabela input,
.clientes-filtros-tabela select{

min-height:44px;
font-size:14px;

}

.modal-conteudo,
.modal-financeiro-painel,
.modal-card-detalhe-janela{

border-radius:24px;

}

@media (max-width: 900px){

.login-card{

width:min(100%, 100%);
padding:22px;

}

.login-brand{

align-items:flex-start;
flex-direction:column;

}

.login-brand .logo-circular{

width:84px;
height:84px;

}

.clientes-faixa-marca{

padding:8px 16px 0 16px;

}

.clientes-pagina{

padding:18px 16px 24px 86px;

}

}

.clientes-pagina{

padding:0;

}

.clientes-tabela{

max-width:none;

}

}

@media (max-width: 900px){

.clientes-topo{

grid-template-columns:1fr;
justify-items:center;

}

.clientes-topo-esquerda,
.clientes-topo-direita{

justify-content:center;
flex-wrap:wrap;

}

.clientes-cabecalho-modulo{

flex-direction:column;

}

.clientes-pagina{

padding:20px 20px 36px;

}

.clientes-busca{

width:100%;

}

.cadastro-abas{

position:static;
flex-wrap:wrap;
padding-bottom:10px;

}

.cadastro-grid{

grid-template-columns:1fr;

}

.detalhes-cliente-topo{

grid-template-columns:1fr;

}

.agenda-linha-horario{

grid-template-columns:1fr;

}

.agenda-duas-colunas{

grid-template-columns:1fr;

}

.agenda-creche-painel{

position:static;

}

.agenda-creche-resumo{

grid-template-columns:1fr;

}

}

@media (max-width: 640px){

.clientes-ferramentas{

width:100%;

}

.clientes-busca-wrap{

width:100%;

}

.clientes-acoes-rapidas{

width:100%;
justify-content:flex-end;

}

.clientes-acoes-planilha{

width:100%;
justify-content:flex-start;

}

.universidade-lista-cursos,
.universidade-aulas-lista{

display:grid;
gap:16px;

}

.universidade-curso-card,
.universidade-aula-card,
.universidade-suporte-card,
.universidade-resumo-descricao{

padding:18px 20px;
border-radius:20px;
border:1px solid #d7e4ef;
background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
box-shadow:0 18px 40px rgba(16,65,93,.08);

}

.universidade-curso-card{

display:flex;
justify-content:space-between;
gap:18px;
cursor:pointer;
transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;

}

.universidade-curso-card:hover{

transform:translateY(-2px);
box-shadow:0 22px 44px rgba(16,65,93,.12);

}

.universidade-curso-card.ativo{

border-color:#2e78a2;
box-shadow:0 20px 44px rgba(23,94,132,.18);

}

.universidade-curso-card strong,
.universidade-aula-card strong,
.universidade-suporte-card strong,
.universidade-resumo-descricao strong{

display:block;
font-size:1rem;
color:#103f5e;

}

.universidade-curso-card p,
.universidade-aula-card p,
.universidade-suporte-card p,
.universidade-resumo-descricao p{

margin:8px 0 0;
color:#47657a;
line-height:1.55;

}

.universidade-curso-card span{

  display:inline-block;
  margin-top:10px;
  font-size:.86rem;
  font-weight:700;
  color:#2b6f97;

  }

.universidade-badges-linha{

  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;

  }

.universidade-badge{

  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.02em;
  border:1px solid transparent;

  }

.universidade-badge-icone{

  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  margin-right:6px;
  font-size:.85rem;
  line-height:1;

  }

.universidade-badge.perfil-admin{

  background:#e8f3ff;
  border-color:#c6dbff;
  color:#1d5f97;

  }

.universidade-badge.perfil-atendente{

  background:#e8fbf1;
  border-color:#c3edd4;
  color:#18714e;

  }

.universidade-badge.perfil-banho{

  background:#fff2e6;
  border-color:#ffd7b3;
  color:#a85a1e;

  }

.universidade-badge.perfil-geral,
.universidade-badge.universidade-badge-categoria{

  background:#eef5fb;
  border-color:#d6e6f3;
  color:#245775;

  }

.universidade-resumo-descricao.perfil-admin{

  border-color:#c6dbff;
  background:linear-gradient(180deg, #f8fbff 0%, #eef6ff 100%);

  }

.universidade-resumo-descricao.perfil-atendente{

  border-color:#c3edd4;
  background:linear-gradient(180deg, #f8fffb 0%, #edf9f2 100%);

  }

.universidade-resumo-descricao.perfil-banho{

  border-color:#ffd7b3;
  background:linear-gradient(180deg, #fffaf5 0%, #fff2e7 100%);

  }

.universidade-curso-acoes,
.universidade-aula-acoes{

display:flex;
align-items:flex-start;
gap:10px;
flex-wrap:wrap;

}

.universidade-aula-topo{

display:flex;
justify-content:space-between;
gap:18px;
align-items:flex-start;
margin-bottom:12px;

}

.universidade-suporte-card{

display:grid;
gap:10px;

}

.universidade-links-apoio{

display:flex;
flex-wrap:wrap;
gap:10px;
margin-top:12px;

}

.universidade-anexos{

  margin-top:14px;
  padding:12px 14px;
  border-radius:14px;
background:#f3f8fc;
border:1px solid #d6e4ef;

}

.ajuda-publica-body{
  margin:0;
  min-height:100vh;
  background:linear-gradient(180deg, #f4f8fc 0%, #eef4f9 100%);
  font-family:"Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  color:#12384b;
}

.ajuda-publica-shell{
  max-width:1180px;
  margin:0 auto;
  padding:36px 20px 48px;
}

.ajuda-publica-hero{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:flex-start;
  padding:28px 30px;
  border-radius:28px;
  background:linear-gradient(135deg, #0f4468 0%, #1f6d96 100%);
  color:#fff;
  box-shadow:0 30px 50px rgba(12,63,96,.22);
}

.ajuda-publica-kicker{
  display:inline-block;
  margin-bottom:8px;
  letter-spacing:.14em;
  font-size:.75rem;
  font-weight:700;
  opacity:.82;
}

.ajuda-publica-hero h1{
  margin:0;
  font-size:2.2rem;
}

.ajuda-publica-hero p{
  margin:12px 0 0;
  max-width:720px;
  line-height:1.7;
  color:rgba(255,255,255,.88);
}

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

.ajuda-publica-painel{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  margin-top:22px;
}

.ajuda-publica-card,
.ajuda-publica-curso,
.ajuda-publica-aula{
  background:#fff;
  border:1px solid #d7e4ef;
  border-radius:22px;
  box-shadow:0 18px 36px rgba(16,65,93,.08);
}

.ajuda-publica-card{
  padding:18px 20px;
}

.ajuda-publica-card span{
  display:block;
  font-size:.9rem;
  color:#59798d;
}

.ajuda-publica-card strong{
  display:block;
  margin-top:8px;
  font-size:1.7rem;
  color:#103f5e;
}

.ajuda-publica-card p{
  margin:10px 0 0;
  color:#47657a;
}

.ajuda-publica-filtros{
  display:flex;
  gap:12px;
  align-items:center;
  margin-top:24px;
}

.ajuda-publica-filtros .clientes-busca{
  flex:1;
}

.ajuda-publica-lista{
  display:grid;
  gap:18px;
  margin-top:24px;
}

.ajuda-publica-curso{
  padding:22px;
}

.ajuda-publica-curso.perfil-admin{
  border-color:#c6dbff;
  background:linear-gradient(180deg, #ffffff 0%, #f4f9ff 100%);
}

.ajuda-publica-curso.perfil-atendente{
  border-color:#c3edd4;
  background:linear-gradient(180deg, #ffffff 0%, #f5fcf8 100%);
}

.ajuda-publica-curso.perfil-banho{
  border-color:#ffd7b3;
  background:linear-gradient(180deg, #ffffff 0%, #fff7f0 100%);
}

.ajuda-publica-curso-topo{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
}

.ajuda-publica-curso-topo h2{
  margin:0;
  color:#103f5e;
}

.ajuda-publica-curso-topo p{
  margin:10px 0 0;
  color:#47657a;
  line-height:1.6;
}

.ajuda-publica-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ajuda-publica-tag{
    padding:8px 12px;
    border-radius:999px;
    background:#eef5fb;
    border:1px solid #d6e6f3;
    color:#245775;
    font-size:.84rem;
    font-weight:600;
  }

.ajuda-publica-tag.perfil-admin{
  background:#e8f3ff;
  border-color:#c6dbff;
  color:#1d5f97;
}

.ajuda-publica-tag.perfil-atendente{
  background:#e8fbf1;
  border-color:#c3edd4;
  color:#18714e;
}

.ajuda-publica-tag.perfil-banho{
  background:#fff2e6;
  border-color:#ffd7b3;
  color:#a85a1e;
}

.ajuda-publica-tag-icone{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  margin-right:6px;
  font-size:.85rem;
  line-height:1;
}

.ajuda-publica-aulas{
  display:grid;
  gap:14px;
  margin-top:18px;
}

.ajuda-publica-aula{
  padding:18px;
}

.ajuda-publica-aula-topo{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}

.ajuda-publica-aula-topo span{
  color:#658397;
  font-size:.9rem;
}

.ajuda-publica-aula p{
  margin:12px 0 0;
  color:#47657a;
  line-height:1.65;
}

@media (max-width: 860px){
  .ajuda-publica-hero,
  .ajuda-publica-curso-topo,
  .ajuda-publica-aula-topo,
  .ajuda-publica-filtros{
    flex-direction:column;
    align-items:stretch;
  }

  .ajuda-publica-painel{
    grid-template-columns:1fr;
  }
}

.clientes-paginacao{

align-items:flex-start;

}

.clientes-resumo-grid{

grid-template-columns:1fr;

}

.clientes-resumo-pet-card{

align-items:flex-start;

}

.clientes-tabela{

font-size:15px;

}

.clientes-tabela th{

font-size:15px;

}

.agenda-formulario-linha{

grid-template-columns:1fr;

}

}

@media (max-width: 1024px){

.financeiro-hero{

grid-template-columns:1fr;

}

}

@media (max-width: 640px){

.financeiro-atalhos-grid{

grid-template-columns:1fr;

}

}

/* MERLINPET BRANDING */

:root{

--cor-primaria:#0057a8;
--cor-primaria-escura:#08345f;
--cor-destaque:#8dd63f;
--cor-destaque-escura:#5ea920;
--cor-fundo:#f4f8fb;
--cor-superficie:#ffffff;
--cor-texto:#153b63;
--cor-texto-suave:#617b97;
--cor-borda:#d7e4ef;
--cor-alerta:#f5fbe8;

}

body{

background:linear-gradient(180deg,#f6fbff 0%,#f4f8fb 18%,#f7fafc 100%);
color:var(--cor-texto);

}

.clientes-shell{

background:transparent;

}

.clientes-topo{

grid-template-columns:auto 1fr auto;
gap:16px;
padding:10px 20px 10px 22px;
background:rgba(255,255,255,0.96);
border-bottom:1px solid rgba(0,87,168,0.08);
box-shadow:0 10px 24px rgba(8,52,95,0.06);

}

.clientes-topo-esquerda,
.clientes-topo-direita{

gap:12px;

}

.logo-circular{

width:76px;
height:76px;
border-radius:24px;
border:1px solid rgba(0,87,168,0.08);
background-color:#ffffff;
background-size:contain;
background-position:center;
background-repeat:no-repeat;
box-shadow:0 10px 22px rgba(0,87,168,0.08);

}

.usuario-foto{

width:58px;
height:58px;
border:1px solid rgba(0,87,168,0.08);
box-shadow:0 10px 20px rgba(8,52,95,0.08);

}

.clientes-topo-titulo{

display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:2px;
text-align:center;

}

.topo-sistema-nome{

font-size:28px;
font-weight:800;
letter-spacing:0.04em;
color:var(--cor-primaria-escura);
line-height:1;

}

.topo-sistema-subtitulo{

font-size:12px;
font-weight:600;
letter-spacing:0.03em;
color:var(--cor-texto-suave);

}

.usuario-info-card{

padding:10px 12px;
min-width:168px;
font-size:13px;
border-radius:18px;
background:linear-gradient(135deg,#0f4c8a 0%,#0a3967 100%);
border:1px solid rgba(0,87,168,0.12);
box-shadow:0 14px 28px rgba(8,52,95,0.14);

}

.usuario-info-card strong{

font-size:13px;

}

.menu-topo-botao{

gap:12px;
padding:8px 12px;
border-radius:14px;
font-size:15px;
color:var(--cor-primaria-escura);
background:#f8fbff;
border:1px solid rgba(0,87,168,0.1);

}

.menu-topo-icone i{

width:22px;
background:var(--cor-primaria);

}

.botao-topo-atalho{

border:1px solid rgba(0,87,168,0.14);
color:var(--cor-primaria-escura);
height:40px;
border-radius:12px;
box-shadow:0 10px 20px rgba(8,52,95,0.08);

}

.botao-topo-atalho.sair{

background:var(--cor-primaria-escura);
border-color:var(--cor-primaria-escura);

}

.clientes-faixa-marca{

padding:10px 22px 0 104px;

}

.clientes-faixa-marca-conteudo{

display:flex;
justify-content:space-between;
align-items:center;
gap:18px;
background:linear-gradient(135deg,rgba(255,255,255,0.96) 0%,rgba(244,251,255,0.96) 100%);
border:1px solid rgba(0,87,168,0.08);
border-radius:18px;
padding:10px 14px;
box-shadow:0 12px 24px rgba(8,52,95,0.05);

}

.clientes-faixa-petshop{

display:flex;
align-items:center;
gap:12px;
min-width:0;

}

.clientes-faixa-logo{

width:58px;
height:58px;
border-radius:16px;
background:#eaf4fc;
border:1px solid rgba(0,87,168,0.08);
background-position:center;
background-repeat:no-repeat;
background-size:cover;
flex-shrink:0;

}

.clientes-faixa-logo.sem-logo{

background-image:linear-gradient(135deg,rgba(141,214,63,0.18) 0%,rgba(0,87,168,0.16) 100%);
position:relative;

}

.clientes-faixa-logo.sem-logo::after{

content:"PET";
position:absolute;
inset:0;
display:flex;
align-items:center;
justify-content:center;
font-size:14px;
font-weight:800;
color:var(--cor-primaria-escura);

}

.clientes-faixa-textos,
.clientes-faixa-sistema{

display:flex;
flex-direction:column;
gap:3px;
min-width:0;

}

.clientes-faixa-textos strong,
.clientes-faixa-sistema strong{

font-size:14px;
color:var(--cor-primaria-escura);

}

.clientes-faixa-textos span,
.clientes-faixa-sistema span{

font-size:12px;
color:var(--cor-texto-suave);

}

.clientes-faixa-suporte{

display:inline-flex;
align-items:center;
justify-content:center;
margin-top:6px;
width:42px;
height:42px;
padding:0;
border:none;
border-radius:999px;
background:transparent;
color:#ffffff;
cursor:pointer;
box-shadow:none;
transition:transform 0.2s ease, filter 0.2s ease;

}

.clientes-faixa-suporte:hover{

transform:translateY(-1px);
filter:drop-shadow(0 8px 14px rgba(16, 209, 69, 0.22));

}

.clientes-faixa-suporte-icone{

display:inline-flex;
align-items:center;
justify-content:center;
width:40px;
height:40px;
line-height:1;

}

.clientes-faixa-suporte-icone svg{

width:40px;
height:40px;
display:block;

}

.clientes-pagina{

padding:24px 24px 32px 104px;

}

.clientes-cabecalho-modulo{

margin-bottom:20px;
gap:18px;

}

.clientes-cabecalho-modulo h1{

font-size:28px;
letter-spacing:0.02em;

}

.modulo-subtitulo{

font-size:13px;

}

.clientes-resumo-rapido{

border-radius:22px;
padding:18px;
box-shadow:0 14px 28px rgba(8,52,95,0.06);
border:1px solid rgba(0,87,168,0.06);

}

.clientes-resumo-card{

border-radius:20px;
padding:18px;
min-height:unset;
box-shadow:0 14px 26px rgba(8,52,95,0.06);
border:1px solid rgba(0,87,168,0.06);

}

.clientes-resumo-card span{

font-size:12px;

}

.clientes-resumo-card strong{

font-size:18px;

}

.clientes-resumo-card p{

font-size:13px;

}

.clientes-topo,
.clientes-faixa-marca,
.clientes-cabecalho-modulo,
.clientes-resumo-card,
.clientes-resumo-rapido{

print-color-adjust:exact;
-webkit-print-color-adjust:exact;

}

.login-card{

max-width:780px;
border-radius:28px;
box-shadow:0 24px 46px rgba(8,52,95,0.12);
border:1px solid rgba(0,87,168,0.08);

}

.login-brand{

gap:18px;

}

.login-brand h1{

font-size:36px;
color:var(--cor-primaria-escura);

}

.login-brand p{

font-size:14px;
color:var(--cor-texto-suave);

}

@media (max-width: 1100px){

.clientes-topo{

grid-template-columns:1fr;
justify-items:start;

}

.clientes-topo-titulo{

align-items:flex-start;
text-align:left;

}

.clientes-faixa-marca{

padding:10px 18px 0 18px;

}

.clientes-faixa-marca-conteudo{

flex-direction:column;
align-items:flex-start;

}

.clientes-pagina{

padding:20px 18px 28px 92px;

}

}

@media print{

.clientes-topo{

position:static !important;
box-shadow:none;

}

.menu-cliente-lateral,
.menu-topo-botao,
.usuario-acoes-topo{

display:none !important;

}

.clientes-faixa-marca{

padding:6px 0 12px 0;

}

.clientes-pagina{

padding:12px 0 0 0 !important;

}

}

.landing-body{

background:
radial-gradient(circle at top left, rgba(108, 198, 62, 0.16), transparent 28%),
radial-gradient(circle at top right, rgba(10, 79, 138, 0.14), transparent 34%),
linear-gradient(180deg, #f7fbff 0%, #eef6ff 50%, #f9fcff 100%);
color:#163b63;

}

.landing-topo{

position:sticky;
top:0;
z-index:20;
background:rgba(255, 255, 255, 0.9);
backdrop-filter:blur(12px);
border-bottom:1px solid rgba(10, 79, 138, 0.08);

}

.landing-topo-interno{

width:min(1180px, calc(100% - 40px));
margin:0 auto;
display:grid;
grid-template-columns:auto 1fr auto;
align-items:center;
gap:18px;
padding:16px 0;

}

.landing-logo{

width:240px;
height:44px;
object-fit:contain;
display:block;

}

.landing-nav{

display:flex;
align-items:center;
justify-content:center;
gap:22px;

}

.landing-nav a{

color:#23527f;
text-decoration:none;
font-weight:700;
font-size:0.98rem;

}

.landing-topo-acoes,
.landing-hero-acoes{

display:flex;
align-items:center;
gap:12px;
flex-wrap:wrap;

}

.landing-botao-principal,
.landing-botao-secundario{

display:inline-flex;
align-items:center;
justify-content:center;
text-decoration:none;
font-weight:800;
border-radius:999px;
padding:13px 20px;
transition:transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;

}

.landing-botao-principal{

background:linear-gradient(135deg, #0f4f8a, #0f6eb1);
color:#ffffff;
box-shadow:0 14px 30px rgba(10, 79, 138, 0.22);

}

.landing-botao-secundario{

background:#ffffff;
color:#0f4f8a;
border:1px solid rgba(10, 79, 138, 0.16);
box-shadow:0 10px 24px rgba(10, 79, 138, 0.08);

}

.landing-botao-principal:hover,
.landing-botao-secundario:hover{

transform:translateY(-2px);

}

.landing-pagina{

width:min(1180px, calc(100% - 40px));
margin:0 auto;
padding:36px 0 80px;

}

.landing-hero{

display:grid;
grid-template-columns:minmax(0, 1.2fr) minmax(340px, 0.8fr);
gap:28px;
align-items:stretch;
padding:28px 0 36px;

}

.landing-badge,
.landing-badge-claro,
.landing-plano-selo{

display:inline-flex;
align-items:center;
justify-content:center;
border-radius:999px;
font-weight:800;
letter-spacing:0.02em;

}

.landing-badge{

padding:8px 14px;
background:rgba(108, 198, 62, 0.18);
color:#2b7a0c;
margin-bottom:14px;

}

.landing-badge-claro{

padding:7px 12px;
background:rgba(10, 79, 138, 0.08);
color:#0f4f8a;
margin-bottom:10px;

}

.landing-hero h1,
.landing-secao-topo h2{

margin:0;
font-size:clamp(2rem, 4vw, 3.35rem);
line-height:1.05;
color:#0f3f6f;

}

.landing-hero p,
.landing-secao-topo p,
.landing-hero-lista p,
.landing-modulo-card p,
.landing-plano-card p,
.landing-teste-lista p{

margin:0;
color:#507091;
line-height:1.6;
font-size:1rem;

}

.landing-hero-conteudo{

display:grid;
align-content:center;
gap:18px;

}

.landing-mini-kpis{

display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:14px;
margin-top:6px;

}

.landing-hero-faixas{

display:flex;
flex-wrap:wrap;
gap:10px;

}

.landing-hero-faixas span{

padding:9px 12px;
border-radius:999px;
background:rgba(108, 198, 62, 0.14);
color:#2e780f;
font-weight:800;
font-size:0.9rem;

}

.landing-mini-kpis article,
.landing-hero-card,
.landing-modulo-card,
.landing-plano-card,
.landing-teste-card{

background:rgba(255, 255, 255, 0.92);
border:1px solid rgba(10, 79, 138, 0.09);
box-shadow:0 18px 40px rgba(10, 79, 138, 0.08);

}

.landing-mini-kpis article{

padding:16px 18px;
border-radius:22px;
display:grid;
gap:6px;

}

.landing-mini-kpis strong{

font-size:1.1rem;
color:#0f4f8a;

}

.landing-mini-kpis span{

color:#5b7592;
font-size:0.92rem;

}

.landing-hero-card{

padding:24px;
border-radius:30px;
display:grid;
gap:18px;
background:
linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(239, 247, 255, 0.96)),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.14), transparent 34%);

}

.landing-hero-card-topo span{

display:block;
color:#4c6d8d;
font-size:0.9rem;
font-weight:700;
margin-bottom:4px;

}

.landing-hero-card-topo strong{

font-size:1.25rem;
color:#0f3f6f;

}

.landing-hero-modulos{

display:flex;
flex-wrap:wrap;
gap:10px;

}

.landing-hero-modulos span{

padding:9px 12px;
border-radius:999px;
background:rgba(10, 79, 138, 0.08);
color:#0f4f8a;
font-weight:700;
font-size:0.92rem;

}

.landing-hero-lista{

display:grid;
gap:10px;

}

.landing-secao{

padding:34px 0;

}

.landing-secao-clara{

padding:42px 0;

}

.landing-secao-topo{

display:grid;
gap:10px;
max-width:760px;
margin-bottom:22px;

}

.landing-modulos-grid{

display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:18px;

}

.landing-beneficios-grid{

display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:16px;
margin-bottom:18px;

}

.landing-beneficio-card{

padding:20px 22px;
border-radius:24px;
background:linear-gradient(180deg, rgba(13, 78, 136, 0.96), rgba(9, 58, 104, 0.96));
box-shadow:0 16px 34px rgba(10, 79, 138, 0.16);
display:grid;
gap:8px;

}

.landing-beneficio-card strong{

font-size:1.08rem;
color:#ffffff;

}

.landing-beneficio-card p{

color:rgba(255, 255, 255, 0.82);

}

.landing-modulo-card{

padding:22px;
border-radius:24px;
display:grid;
gap:10px;

}

.landing-modulo-card h3,
.landing-plano-card h3{

margin:0;
font-size:1.18rem;
color:#0f3f6f;

}

.landing-planos-grid{

display:grid;
grid-template-columns:repeat(5, minmax(0, 1fr));
gap:16px;
align-items:stretch;

}

.landing-plano-resumo{

display:grid;
grid-template-columns:repeat(4, minmax(0, 1fr));
gap:14px;
margin-bottom:18px;

}

.landing-plano-resumo article{

padding:16px 18px;
border-radius:20px;
background:rgba(255, 255, 255, 0.92);
border:1px solid rgba(10, 79, 138, 0.09);
box-shadow:0 14px 28px rgba(10, 79, 138, 0.08);
display:grid;
gap:6px;

}

.landing-plano-resumo strong{

color:#0f4f8a;
font-size:1rem;

}

.landing-plano-resumo span{

color:#5a7592;
font-size:0.93rem;

}

.landing-plano-card{

position:relative;
padding:22px 18px;
border-radius:26px;
display:grid;
gap:14px;

}

.landing-plano-card strong{

font-size:2rem;
line-height:1;
color:#0f4f8a;

}

.landing-plano-card strong span{

font-size:0.95rem;
font-weight:700;
color:#5c7694;

}

.landing-plano-card ul{

margin:0;
padding-left:18px;
display:grid;
gap:8px;
color:#4f6f8e;

}

.landing-plano-acoes{

margin-top:auto;
padding-top:6px;

}

.landing-plano-acoes .landing-botao-principal{

width:100%;

}

.landing-demo-grid{

display:grid;
grid-template-columns:minmax(0, 1.15fr) minmax(300px, 0.85fr);
gap:20px;
align-items:stretch;

}

.landing-demo-frame{

padding:18px;
border-radius:22px;
background:linear-gradient(180deg, rgba(8, 43, 77, 0.98), rgba(5, 28, 52, 0.98));
border:1px solid rgba(12, 86, 142, 0.3);
box-shadow:0 24px 48px rgba(8, 44, 81, 0.2);

}

.landing-demo-video,
.landing-demo-fallback{

width:100%;
border-radius:16px;

}

.landing-demo-fallback{

padding:22px;
background:
radial-gradient(circle at top right, rgba(108, 198, 62, 0.16), transparent 28%),
linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.03));
display:grid;
gap:18px;
color:#dcecff;

}

.landing-demo-ui{

padding:18px;
border-radius:18px;
background:rgba(255, 255, 255, 0.06);
border:1px solid rgba(145, 191, 232, 0.12);
display:grid;
gap:14px;

}

.landing-demo-ui-topo{

display:flex;
gap:10px;
flex-wrap:wrap;

}

.landing-demo-pill{

padding:8px 12px;
border-radius:999px;
background:rgba(108, 198, 62, 0.18);
color:#dfffcf;
font-size:0.86rem;
font-weight:800;

}

.landing-demo-pill.azul{

background:rgba(120, 191, 255, 0.14);
color:#dceeff;

}

.landing-demo-ui-linhas{

display:grid;
gap:10px;

}

.landing-demo-linha{

display:grid;
grid-template-columns:80px 1fr auto;
gap:12px;
align-items:center;
padding:12px 14px;
border-radius:14px;
background:rgba(255, 255, 255, 0.05);
border:1px solid rgba(145, 191, 232, 0.08);

}

.landing-demo-linha.destaque{

background:rgba(16, 116, 184, 0.18);

}

.landing-demo-linha strong,
.landing-demo-ui-paineis strong{

color:#ffffff;

}

.landing-demo-linha span,
.landing-demo-linha em,
.landing-demo-fallback p,
.landing-demo-ui-paineis span{

color:#d1e4f6;
font-style:normal;
margin:0;

}

.landing-demo-ui-paineis{

display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:10px;

}

.landing-demo-ui-paineis article{

padding:14px 16px;
border-radius:14px;
background:rgba(255, 255, 255, 0.05);
border:1px solid rgba(145, 191, 232, 0.08);
display:grid;
gap:6px;

}

.landing-demo-texto{

display:grid;
gap:16px;

}

.landing-pacotes-destaque{

padding:28px;
border-radius:22px;
background:
linear-gradient(180deg, rgba(10, 63, 108, 0.98), rgba(7, 39, 71, 0.98)),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.22), transparent 28%);
border:1px solid rgba(122, 196, 255, 0.12);
box-shadow:0 22px 46px rgba(8, 44, 81, 0.22);
display:grid;
grid-template-columns:minmax(0, 1fr) minmax(360px, 0.95fr);
gap:22px;

}

.landing-pacotes-texto{

display:grid;
align-content:start;
gap:14px;

}

.landing-pacotes-texto h2,
.landing-pacotes-texto p{

margin:0;

}

.landing-pacotes-texto h2{

font-size:clamp(2rem, 3.7vw, 3rem);
line-height:1.02;
letter-spacing:-0.03em;
color:#ffffff;

}

.landing-pacotes-texto p{

color:#d7e8f8;
line-height:1.65;

}

.landing-pacotes-grid{

display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:14px;

}

.landing-pacotes-grid article{

padding:18px;
border-radius:18px;
background:rgba(255, 255, 255, 0.07);
border:1px solid rgba(185, 219, 248, 0.1);
display:grid;
gap:8px;

}

.landing-pacotes-grid strong{

color:#ffffff;
font-size:1rem;

}

.landing-pacotes-grid p{

margin:0;
color:#d2e6f8;
line-height:1.55;

}

.landing-plano-card.destaque{

background:linear-gradient(180deg, #114f8a, #0f3f6f);
color:#ffffff;
transform:translateY(-6px);

}

.landing-plano-card.destaque h3,
.landing-plano-card.destaque strong,
.landing-plano-card.destaque strong span,
.landing-plano-card.destaque p,
.landing-plano-card.destaque ul{

color:#ffffff;

}

.landing-plano-selo{

position:absolute;
top:14px;
right:14px;
padding:7px 10px;
background:rgba(108, 198, 62, 0.22);
color:#d9ffd0;
font-size:0.78rem;

}

.landing-teste-card{

padding:28px;
border-radius:30px;
display:grid;
grid-template-columns:minmax(0, 1fr) minmax(320px, 0.9fr);
gap:24px;
align-items:start;
background:
linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(243, 251, 255, 0.95)),
radial-gradient(circle at bottom right, rgba(108, 198, 62, 0.16), transparent 34%);

}

.landing-teste-lista{

display:grid;
gap:10px;

}

.landing-secao-final{

padding-bottom:20px;

}

.landing-comparativo-card,
.landing-publico-card,
.landing-faq-card{

background:rgba(255, 255, 255, 0.94);
border:1px solid rgba(10, 79, 138, 0.09);
box-shadow:0 18px 40px rgba(10, 79, 138, 0.08);

}

.landing-comparativo-card{

border-radius:28px;
overflow:hidden;

}

.landing-comparativo-linha{

display:grid;
grid-template-columns:1.6fr repeat(4, minmax(0, 1fr));
gap:12px;
padding:16px 22px;
align-items:center;
border-bottom:1px solid rgba(10, 79, 138, 0.08);
color:#547290;

}

.landing-comparativo-linha.cabecalho{

background:linear-gradient(180deg, rgba(10, 79, 138, 0.98), rgba(15, 63, 111, 0.98));
color:#ffffff;
font-weight:800;

}

.landing-comparativo-linha span:first-child{

font-weight:700;
color:inherit;

}

.landing-publico-grid,
.landing-faq-grid{

display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:18px;

}

.landing-publico-card,
.landing-faq-card{

padding:24px;
border-radius:26px;
display:grid;
gap:12px;

}

.landing-publico-card h3,
.landing-faq-card h3{

margin:0;
color:#0f3f6f;
font-size:1.16rem;

}

.landing-publico-card ul{

margin:0;
padding-left:18px;
display:grid;
gap:8px;
color:#55718d;

}

.landing-publico-card.alerta{

background:linear-gradient(180deg, rgba(255, 248, 240, 0.98), rgba(255, 251, 245, 0.98));

}

.landing-faq-card p{

margin:0;
color:#597390;

}

.apresentacao-pagina{

width:min(1100px, calc(100% - 40px));
margin:0 auto;
padding:34px 0 70px;
display:grid;
gap:24px;

}

.apresentacao-topo,
.apresentacao-hero,
.apresentacao-bloco{

background:rgba(255, 255, 255, 0.95);
border:1px solid rgba(10, 79, 138, 0.09);
box-shadow:0 18px 40px rgba(10, 79, 138, 0.08);
border-radius:28px;
padding:24px 28px;

}

.apresentacao-topo{

display:flex;
align-items:center;
justify-content:space-between;
gap:18px;

}

.apresentacao-logo{

width:320px;
height:58px;
object-fit:contain;

}

.apresentacao-acoes{

display:flex;
gap:12px;
flex-wrap:wrap;

}

.apresentacao-hero{

display:grid;
gap:14px;

}

.apresentacao-hero h1{

margin:0;
font-size:clamp(2rem, 3.8vw, 3rem);
line-height:1.08;
color:#0f3f6f;

}

.apresentacao-hero p{

margin:0;
color:#587390;
font-size:1.04rem;
line-height:1.6;

}

@media print{

.landing-topo,
.apresentacao-acoes{

display:none !important;

}

.apresentacao-pagina{

width:100%;
padding:0;

}

.apresentacao-topo,
.apresentacao-hero,
.apresentacao-bloco{

box-shadow:none;
border:1px solid rgba(10, 79, 138, 0.12);

}

}

.landing-prova-card{

padding:28px;
border-radius:30px;
background:linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(239, 247, 255, 0.96));
border:1px solid rgba(10, 79, 138, 0.09);
box-shadow:0 18px 40px rgba(10, 79, 138, 0.08);
display:grid;
gap:20px;

}

.landing-prova-grid{

display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:16px;

}

.landing-prova-grid article{

padding:18px 20px;
border-radius:22px;
background:#ffffff;
border:1px solid rgba(10, 79, 138, 0.08);
display:grid;
gap:8px;

}

.landing-prova-grid strong{

color:#0f3f6f;
font-size:1.02rem;

}

.landing-prova-grid p{

color:#5a7592;
margin:0;

}

@media (max-width: 1100px){

.landing-planos-grid{

grid-template-columns:repeat(2, minmax(0, 1fr));

}

.assinatura-pagina{

width:min(900px, calc(100% - 32px));
margin:0 auto;
padding:42px 0 72px;

}

.assinatura-card{

padding:30px;
border-radius:22px;
background:linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(245, 250, 255, 0.95));
border:1px solid rgba(10, 79, 138, 0.1);
box-shadow:0 18px 38px rgba(10, 79, 138, 0.08);

}

.assinatura-topo{

display:flex;
align-items:center;
justify-content:space-between;
gap:18px;
margin-bottom:18px;

}

.assinatura-titulo{

margin:0;
font-size:clamp(1.9rem, 3.6vw, 2.8rem);
line-height:1.05;
color:#0f3f6f;

}

@media (max-width: 760px){

.assinatura-topo{

flex-direction:column;
align-items:flex-start;

}

.assinatura-card{

padding:22px;

}

}

.landing-modulos-grid,
.landing-teste-card,
.landing-hero{

grid-template-columns:1fr;

}

}

@media (max-width: 760px){

.landing-topo-interno{

grid-template-columns:1fr;
justify-items:center;

}

.landing-nav{

flex-wrap:wrap;
gap:14px;

}

.landing-pagina{

width:min(100% - 24px, 1180px);
padding-top:20px;

}

.landing-mini-kpis,
.landing-planos-grid,
.landing-modulos-grid,
.landing-beneficios-grid,
.landing-prova-grid,
.landing-plano-resumo,
.landing-publico-grid,
.landing-faq-grid{

grid-template-columns:1fr;

}

.landing-comparativo-linha{

grid-template-columns:1fr;

}

.landing-logo{

width:270px;
height:50px;

}

}

/* LANDING OVERRIDES FINAIS */

.landing-body{

background:
linear-gradient(180deg, rgba(7, 38, 68, 0.04), rgba(7, 38, 68, 0.02)),
linear-gradient(90deg, rgba(9, 71, 122, 0.05) 1px, transparent 1px),
linear-gradient(rgba(9, 71, 122, 0.05) 1px, transparent 1px),
radial-gradient(circle at top left, rgba(108, 198, 62, 0.1), transparent 22%),
radial-gradient(circle at top right, rgba(10, 79, 138, 0.14), transparent 28%),
linear-gradient(180deg, #f7fbff 0%, #eef5fb 54%, #f8fbff 100%);
background-size:auto, 32px 32px, 32px 32px, auto, auto, auto;

}

.landing-topo{

background:rgba(247, 251, 255, 0.82);
backdrop-filter:blur(18px);
border-bottom:1px solid rgba(10, 79, 138, 0.1);
box-shadow:0 10px 24px rgba(10, 79, 138, 0.05);

}

.landing-pagina{

padding-top:48px;
padding-bottom:96px;

}

.landing-hero{

gap:34px;
padding:24px 0 42px;

}

.landing-hero h1,
.landing-secao-topo h2{

font-size:clamp(2rem, 4vw, 3.2rem);
line-height:1.02;
letter-spacing:-0.03em;

}

.landing-badge{

background:linear-gradient(135deg, rgba(108, 198, 62, 0.16), rgba(16, 116, 184, 0.08));
border:1px solid rgba(10, 79, 138, 0.1);

}

.landing-badge-claro{

background:rgba(10, 79, 138, 0.06);
border:1px solid rgba(10, 79, 138, 0.08);

}

.landing-mini-kpis article,
.landing-hero-card,
.landing-modulo-card,
.landing-plano-card,
.landing-teste-card,
.landing-comparativo-card,
.landing-publico-card,
.landing-faq-card,
.landing-prova-card,
.apresentacao-topo,
.apresentacao-hero,
.apresentacao-bloco{

background:linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 250, 255, 0.94));
border:1px solid rgba(10, 79, 138, 0.1);
box-shadow:0 16px 34px rgba(10, 79, 138, 0.07);
border-radius:20px;

}

.landing-mini-kpis article,
.landing-plano-resumo article,
.landing-prova-grid article{

border-radius:16px;

}

.landing-hero-card{

background:
linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(242, 248, 255, 0.96)),
radial-gradient(circle at top right, rgba(16, 116, 184, 0.12), transparent 32%);

}

.landing-hero-modulos span,
.landing-hero-faixas span{

border:1px solid rgba(10, 79, 138, 0.08);

}

.landing-planos-grid{

gap:18px;

}

.landing-plano-card{

min-height:285px;
padding:24px 20px 22px;
align-content:start;
border-radius:18px;
overflow:hidden;
position:relative;

}

.landing-plano-card h3{

font-size:1.12rem;
line-height:1.1;

}

.landing-plano-card strong{

line-height:0.95;

}

.landing-plano-card.destaque{

background:
linear-gradient(180deg, rgba(12, 67, 115, 0.98), rgba(8, 44, 81, 0.98)),
radial-gradient(circle at top right, rgba(108, 198, 62, 0.18), transparent 30%);
transform:translateY(-4px);
box-shadow:0 22px 44px rgba(8, 44, 81, 0.22);

}

.landing-plano-selo{

position:static;
justify-self:flex-start;
margin:0 0 4px 0;
padding:8px 12px;
background:rgba(108, 198, 62, 0.18);
border:1px solid rgba(203, 255, 193, 0.2);
font-size:0.78rem;
line-height:1;

}

.landing-comparativo-linha.cabecalho{

background:linear-gradient(180deg, rgba(11, 66, 114, 0.98), rgba(9, 49, 88, 0.98));

}

.landing-publico-card.alerta{

background:linear-gradient(180deg, rgba(255, 248, 240, 0.98), rgba(255, 252, 247, 0.98));

}

@media (max-width: 1100px){

.landing-plano-card{

min-height:auto;

}

/* LANDING PUBLICACAO PROFISSIONAL */

.landing-topo{
background:rgba(248, 251, 255, 0.92);
backdrop-filter:blur(20px);
border-bottom:1px solid rgba(10, 79, 138, 0.08);
box-shadow:0 16px 34px rgba(10, 79, 138, 0.05);
}

.landing-hero{
padding:22px 0 48px;
}

.landing-hero h1{
font-size:clamp(2.4rem, 4.8vw, 4.25rem);
line-height:0.98;
letter-spacing:-0.045em;
max-width:880px;
}

.landing-hero p{
max-width:720px;
font-size:1.08rem;
line-height:1.72;
color:#4f6983;
}

.landing-hero-card,
.landing-contato-card,
.landing-fechamento-card{
position:relative;
overflow:hidden;
}

.landing-hero-card::before,
.landing-contato-card::before,
.landing-fechamento-card::before{
content:"";
position:absolute;
top:0;
left:0;
right:0;
height:1px;
background:linear-gradient(90deg, rgba(10, 79, 138, 0.22), rgba(108, 198, 62, 0.24), rgba(10, 79, 138, 0));
pointer-events:none;
}

.landing-hero-trust{
display:flex;
flex-wrap:wrap;
gap:10px;
margin:18px 0 4px;
}

.landing-hero-trust span{
padding:10px 14px;
border-radius:999px;
border:1px solid rgba(10, 79, 138, 0.08);
background:rgba(255, 255, 255, 0.8);
font-size:0.88rem;
font-weight:700;
color:#31506c;
}

.landing-hero-card{
background:
linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(243, 248, 255, 0.97)),
radial-gradient(circle at top right, rgba(16, 116, 184, 0.12), transparent 30%);
}

.landing-hero-painel{
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:14px;
margin-top:18px;
}

.landing-hero-painel article{
padding:16px 16px 18px;
border-radius:16px;
background:linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(239, 246, 254, 0.94));
border:1px solid rgba(10, 79, 138, 0.08);
display:grid;
gap:6px;
}

.landing-hero-painel span{
font-size:0.82rem;
font-weight:800;
letter-spacing:0.08em;
text-transform:uppercase;
color:#66829e;
}

.landing-hero-painel strong{
font-size:1rem;
line-height:1.15;
color:#0f385f;
}

.landing-hero-painel p{
margin:0;
font-size:0.92rem;
line-height:1.55;
color:#56718c;
}

.landing-contato-card{
padding:28px;
}

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

.landing-contato-item{
padding:22px 20px;
border-radius:18px;
background:linear-gradient(180deg, rgba(250, 252, 255, 0.98), rgba(243, 249, 255, 0.95));
border:1px solid rgba(10, 79, 138, 0.08);
display:grid;
gap:10px;
}

.landing-contato-item span{
font-size:0.84rem;
letter-spacing:0.08em;
text-transform:uppercase;
color:#5d7895;
font-weight:700;
}

.landing-contato-item strong{
font-size:1.12rem;
line-height:1.2;
color:#10385f;
}

.landing-contato-item p{
margin:0;
color:#56708a;
}

.landing-link-inline{
color:#0b4c90;
font-weight:700;
text-decoration:none;
}

.landing-link-inline:hover{
text-decoration:underline;
}

.landing-rodape{
width:min(100% - 40px, 1180px);
margin:0 auto 40px;
padding:24px 28px;
}

.landing-rodape-interno{
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:22px;
}

.landing-rodape-interno strong{
display:block;
margin-bottom:8px;
font-size:0.98rem;
color:#10385f;
}

.landing-rodape-interno p{
margin:0;
color:#5b748e;
line-height:1.55;
}

.landing-whatsapp-flutuante{
position:fixed;
right:22px;
bottom:22px;
z-index:50;
display:flex;
align-items:center;
gap:12px;
min-width:248px;
padding:14px 18px 14px 14px;
border-radius:22px;
background:linear-gradient(135deg, rgba(15, 23, 42, 0.96), rgba(10, 79, 138, 0.94));
color:#fff;
text-decoration:none;
box-shadow:0 18px 40px rgba(10, 35, 60, 0.24);
border:1px solid rgba(255, 255, 255, 0.08);
}

.landing-whatsapp-flutuante:hover{
transform:translateY(-1px);
box-shadow:0 24px 44px rgba(10, 35, 60, 0.28);
}

.landing-whatsapp-icone{
width:46px;
height:46px;
border-radius:14px;
display:inline-flex;
align-items:center;
justify-content:center;
background:linear-gradient(135deg, #2bd265, #17a24c);
font-weight:900;
font-size:1.12rem;
box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.24);
flex:0 0 auto;
}

.landing-whatsapp-texto{
display:grid;
gap:2px;
min-width:0;
}

.landing-whatsapp-texto strong{
font-size:0.95rem;
line-height:1.1;
letter-spacing:-0.01em;
}

.landing-whatsapp-texto small{
font-size:0.78rem;
line-height:1.35;
color:rgba(232, 240, 250, 0.82);
}

@media (max-width: 900px){
.landing-contato-grid,
.landing-rodape-interno,
.landing-hero-painel{
grid-template-columns:1fr;
}

.landing-whatsapp-flutuante{
right:14px;
left:14px;
bottom:14px;
min-width:0;
}
}

/* LANDING MERLINPET - DIRECAO MAIS PROFISSIONAL */

.landing-topo{
background:#ffffff;
backdrop-filter:none;
border-bottom:1px solid rgba(15, 56, 95, 0.08);
box-shadow:none;
}

.landing-topo-interno{
min-height:92px;
align-items:center;
column-gap:28px;
}

.landing-logo{
width:238px;
height:42px;
object-fit:contain;
}

.landing-nav{
gap:34px;
}

.landing-nav a{
font-size:0.98rem;
font-weight:600;
color:#6a7f94;
position:relative;
}

.landing-nav a:hover{
color:#144a79;
}

.landing-nav a::after{
content:"";
position:absolute;
left:0;
right:0;
bottom:-10px;
height:2px;
border-radius:999px;
background:#3b94d9;
transform:scaleX(0);
transform-origin:center;
transition:transform 0.18s ease;
}

.landing-nav a:hover::after{
transform:scaleX(1);
}

.landing-topo-acoes{
gap:14px;
}

.landing-botao-principal{
border-radius:999px;
padding:16px 30px;
background:#3b94d9;
border-color:#3b94d9;
box-shadow:none;
}

.landing-botao-principal:hover{
background:#2d86cd;
border-color:#2d86cd;
transform:none;
}

.landing-botao-secundario{
border-radius:999px;
padding:15px 24px;
background:#ffffff;
border:1px solid rgba(15, 56, 95, 0.12);
color:#4b637d;
}

.landing-botao-hero{
padding:18px 34px;
font-size:1.02rem;
font-weight:800;
}

.landing-hero{
grid-template-columns:1.05fr 0.95fr;
align-items:stretch;
padding:34px 0 56px;
gap:40px;
}

.landing-hero-conteudo{
justify-content:center;
padding:22px 0 10px;
}

.landing-badge{
align-self:flex-start;
background:#eef5fb;
border:1px solid rgba(15, 56, 95, 0.08);
color:#587791;
font-size:0.84rem;
}

.landing-hero h1{
font-size:clamp(3.1rem, 5vw, 4.8rem);
line-height:1.02;
letter-spacing:-0.05em;
max-width:780px;
font-weight:300;
color:#5c6f82;
}

.landing-hero h1 strong,
.landing-hero h1 .destaque{
color:#1f7fd0;
font-weight:600;
}

.landing-hero p{
max-width:610px;
font-size:1.02rem;
line-height:1.7;
color:#5f748a;
}

.landing-hero-destaque{
background:#f6faff;
border:1px solid rgba(15, 56, 95, 0.08);
box-shadow:none;
}

.landing-hero-trust{
margin-top:16px;
}

.landing-hero-trust span{
background:#ffffff;
color:#526d86;
border:1px solid rgba(15, 56, 95, 0.08);
font-size:0.84rem;
}

.landing-mini-kpis{
margin-top:12px;
}

.landing-mini-kpis article{
background:#ffffff;
border:1px solid rgba(15, 56, 95, 0.08);
box-shadow:none;
}

.landing-mini-kpis strong{
font-size:1.35rem;
color:#123d68;
}

.landing-hero-faixas{
display:none;
}

.landing-hero-card{
padding:18px;
border-radius:34px;
background:
linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,250,254,0.95)),
radial-gradient(circle at top right, rgba(59,148,217,0.12), transparent 36%);
border:1px solid rgba(15, 56, 95, 0.08);
box-shadow:0 28px 52px rgba(18, 61, 104, 0.09);
}

.landing-hero-card::before{
display:none;
}

.landing-hero-visual{
display:grid;
gap:18px;
min-height:100%;
}

.landing-hero-visual-imagem{
position:relative;
min-height:290px;
border-radius:26px;
overflow:hidden;
background:
linear-gradient(135deg, rgba(10, 79, 138, 0.08), rgba(59, 148, 217, 0.14)),
radial-gradient(circle at top left, rgba(108, 198, 62, 0.22), transparent 28%),
linear-gradient(180deg, #f7fbff 0%, #eef5fb 100%);
display:flex;
align-items:center;
justify-content:center;
padding:22px;
border:1px solid rgba(15, 56, 95, 0.08);
}

.landing-hero-visual-imagem img{
max-width:90%;
max-height:240px;
object-fit:contain;
filter:drop-shadow(0 18px 28px rgba(15, 56, 95, 0.12));
}

.landing-hero-visual-selo{
position:absolute;
left:18px;
bottom:18px;
max-width:260px;
padding:14px 16px;
border-radius:18px;
background:rgba(255, 255, 255, 0.92);
border:1px solid rgba(15, 56, 95, 0.08);
box-shadow:0 16px 28px rgba(18, 61, 104, 0.08);
display:grid;
gap:6px;
}

.landing-hero-visual-selo span{
font-size:0.76rem;
letter-spacing:0.08em;
text-transform:uppercase;
font-weight:800;
color:#6b8398;
}

.landing-hero-visual-selo strong{
font-size:1rem;
line-height:1.25;
color:#133e68;
}

.landing-hero-visual-grid{
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:14px;
}

.landing-hero-visual-card{
padding:18px;
border-radius:22px;
background:#ffffff;
border:1px solid rgba(15, 56, 95, 0.08);
display:grid;
gap:8px;
box-shadow:0 12px 24px rgba(18, 61, 104, 0.05);
}

.landing-hero-visual-card.grande{
grid-column:1 / -1;
padding:22px;
background:linear-gradient(180deg, rgba(245,250,255,0.98), rgba(255,255,255,0.98));
}

.landing-hero-visual-card.linha{
grid-column:1 / -1;
}

.landing-hero-visual-card span{
font-size:0.8rem;
letter-spacing:0.08em;
text-transform:uppercase;
font-weight:800;
color:#7890a5;
}

.landing-hero-visual-card strong{
font-size:1.4rem;
line-height:1.08;
color:#143f69;
}

.landing-hero-visual-card p{
margin:0;
font-size:0.92rem;
line-height:1.55;
color:#5d748c;
}

.landing-hero-visual-rodape{
padding:0 4px 4px;
}

.landing-hero-visual-rodape p{
margin:0;
font-size:0.92rem;
line-height:1.6;
color:#70869a;
}

.landing-planos-grid{
gap:22px;
}

.landing-plano-card{
border-radius:24px;
padding:28px 22px 24px;
box-shadow:0 18px 36px rgba(15, 56, 95, 0.06);
}

.landing-plano-card h3{
font-size:1.2rem;
}

.landing-plano-card p{
color:#5d748c;
line-height:1.65;
}

.landing-plano-card ul{
display:grid;
gap:8px;
padding-left:18px;
}

.landing-plano-card li{
color:#4d6781;
line-height:1.5;
}

.landing-plano-card.destaque{
transform:translateY(-8px);
box-shadow:0 26px 48px rgba(15, 56, 95, 0.18);
}

.landing-whatsapp-flutuante{
width:72px;
height:72px;
min-width:72px;
padding:0;
border-radius:999px;
right:20px;
bottom:20px;
justify-content:center;
background:#22c55e;
border:none;
box-shadow:0 16px 36px rgba(34, 197, 94, 0.28);
}

.landing-whatsapp-flutuante:hover{
transform:translateY(-1px) scale(1.02);
box-shadow:0 20px 42px rgba(34, 197, 94, 0.32);
}

.landing-whatsapp-icone{
width:72px;
height:72px;
border-radius:999px;
background:transparent;
box-shadow:none;
font-size:1.45rem;
}

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

@media (max-width: 760px){
.landing-topo-interno{
grid-template-columns:1fr;
justify-items:center;
gap:14px;
}

.landing-nav{
justify-content:center;
flex-wrap:wrap;
gap:18px;
}

.landing-whatsapp-flutuante{
width:64px;
height:64px;
min-width:64px;
right:14px;
left:auto;
bottom:14px;
}

.landing-whatsapp-icone{
width:64px;
height:64px;
font-size:1.3rem;
}
}

.landing-demo-grid{

grid-template-columns:1fr;

}

.landing-pacotes-destaque,
.landing-pacotes-grid{

grid-template-columns:1fr;

}

}

/* WHATSAPP FLUTUANTE - AJUSTE FINAL */
.landing-whatsapp-flutuante {
display: inline-flex !important;
align-items: center;
justify-content: center;
position: fixed;
right: 20px;
bottom: 20px;
left: auto;
top: auto;
width: 72px;
height: 72px;
min-width: 72px;
padding: 0 20px 0 0;
border-radius: 999px;
background: #22c55e;
border: none;
box-shadow: 0 16px 36px rgba(34, 197, 94, 0.28);
z-index: 9999;
opacity: 1;
visibility: visible;
overflow: hidden;
transition: width 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease, background 0.22s ease;
animation: landingWhatsappPulse 2.8s ease-in-out infinite;
}

.landing-whatsapp-flutuante:hover {
transform: translateY(-1px) scale(1.02);
box-shadow: 0 20px 42px rgba(34, 197, 94, 0.32);
}

.landing-whatsapp-flutuante span {
display: inline-flex !important;
}

.landing-whatsapp-icone {
display: inline-flex !important;
align-items: center;
justify-content: center;
width: 72px;
height: 72px;
border-radius: 999px;
background: transparent;
box-shadow: none;
font-size: 1.45rem;
font-weight: 900;
color: #ffffff;
flex: 0 0 72px;
}

.landing-whatsapp-icone svg {
width: 34px;
height: 34px;
display: block;
}

.landing-whatsapp-texto {
display: inline-flex;
align-items: center;
justify-content: flex-start;
white-space: nowrap;
max-width: 0;
opacity: 0;
overflow: hidden;
color: #ffffff;
font-size: 0.98rem;
font-weight: 800;
letter-spacing: 0.01em;
transition: max-width 0.22s ease, opacity 0.22s ease, margin-left 0.22s ease;
}

.landing-whatsapp-flutuante.expandido {
width: 214px;
justify-content: flex-start;
padding-right: 22px;
animation: none;
}

.landing-whatsapp-flutuante.expandido .landing-whatsapp-texto {
max-width: 140px;
opacity: 1;
margin-left: 2px;
}

@keyframes landingWhatsappPulse {
0% {
box-shadow: 0 16px 36px rgba(34, 197, 94, 0.24), 0 0 0 0 rgba(34, 197, 94, 0.26);
}
70% {
box-shadow: 0 18px 40px rgba(34, 197, 94, 0.26), 0 0 0 14px rgba(34, 197, 94, 0);
}
100% {
box-shadow: 0 16px 36px rgba(34, 197, 94, 0.24), 0 0 0 0 rgba(34, 197, 94, 0);
}
}

@media (max-width: 760px) {
.landing-whatsapp-flutuante {
width: 64px;
height: 64px;
min-width: 64px;
right: 14px;
bottom: 14px;
padding-right: 18px;
}

.landing-whatsapp-icone {
width: 64px;
height: 64px;
font-size: 1.3rem;
flex-basis: 64px;
}

.landing-whatsapp-icone svg {
width: 30px;
height: 30px;
}

.landing-whatsapp-flutuante.expandido {
width: 188px;
}

.landing-whatsapp-flutuante.expandido .landing-whatsapp-texto {
max-width: 110px;
font-size: 0.92rem;
}
}

.landing-topo-acoes {
gap: 0.85rem;
}

.landing-nav a {
font-size: 0.98rem;
font-weight: 600;
letter-spacing: 0.01em;
color: #3f607d;
}

.landing-nav a:hover {
color: #0d4d88;
}

.landing-botao-login {
background: rgba(255, 255, 255, 0.98) !important;
border: 1px solid rgba(13, 77, 136, 0.12) !important;
color: #0d4d88 !important;
box-shadow: 0 10px 24px rgba(10, 51, 94, 0.08) !important;
}

.landing-botao-destaque {
padding-left: 1.9rem !important;
padding-right: 1.9rem !important;
border-radius: 999px !important;
background: linear-gradient(135deg, #338cda, #1d67af) !important;
box-shadow: 0 16px 30px rgba(29, 103, 175, 0.24) !important;
}

.landing-subpagina-hero {
padding-top: 4.2rem;
padding-bottom: 2.6rem;
}

.landing-subpagina-hero h1 {
max-width: 860px;
margin: 0 auto;
font-size: clamp(2.5rem, 5vw, 4.2rem);
line-height: 1.05;
letter-spacing: -0.04em;
font-weight: 300;
color: #29445d;
}

.landing-subpagina-hero p {
max-width: 820px;
margin-left: auto;
margin-right: auto;
}

/* HERO DIREITO - VOLTA PARA BLOCO SIMPLES */
.landing-hero-card {
padding: 28px !important;
display: grid !important;
gap: 18px !important;
background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(244, 249, 255, 0.97)) !important;
border: 1px solid rgba(15, 56, 95, 0.08) !important;
box-shadow: 0 18px 36px rgba(15, 56, 95, 0.08) !important;
}

.landing-hero-card::before {
display: none !important;
}

.landing-hero-visual-card.grande {
grid-column: auto !important;
padding: 0 !important;
background: transparent !important;
border: none !important;
box-shadow: none !important;
display: grid !important;
gap: 6px !important;
}

.landing-hero-visual-card.grande span {
display: none !important;
}

.landing-hero-visual-card.grande strong {
font-size: 1.15rem !important;
line-height: 1.25 !important;
color: #103a61 !important;
}

.landing-hero-visual-card.grande p {
margin: 0 !important;
font-size: 1rem !important;
line-height: 1.55 !important;
color: #4f6b84 !important;
}

.landing-hero-visual-rodape {
padding: 0 !important;
margin-top: auto !important;
}

.landing-hero-visual-rodape p {
margin: 0 !important;
font-size: 0.98rem !important;
line-height: 1.7 !important;
color: #5f7b95 !important;
}

.landing-hero-modulos-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
margin-top: 14px;
}

.landing-hero-modulo {
position: relative;
display: grid;
gap: 8px;
padding: 16px 16px 14px;
border-radius: 18px;
background: linear-gradient(180deg, #ffffff, #f4f9ff);
border: 1px solid rgba(15, 56, 95, 0.08);
box-shadow: 0 10px 22px rgba(15, 56, 95, 0.05);
transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
cursor: default;
align-items: center;
justify-items: center;
text-align: center;
}

.landing-hero-modulo:hover,
.landing-hero-modulo:focus-visible {
transform: translateY(-2px);
border-color: rgba(15, 86, 152, 0.2);
box-shadow: 0 16px 28px rgba(15, 56, 95, 0.1);
outline: none;
}

.landing-hero-modulo span {
display: block;
color: #103a61;
font-size: 1rem;
font-weight: 800;
line-height: 1.2;
opacity: 1 !important;
visibility: visible !important;
text-indent: 0 !important;
position: static !important;
background: none !important;
}

.landing-hero-visual-card.grande .landing-hero-modulo span {
display: block !important;
color: #103a61 !important;
opacity: 1 !important;
visibility: visible !important;
font-size: 1rem !important;
font-weight: 800 !important;
letter-spacing: normal !important;
text-transform: none !important;
text-align: center !important;
}

.landing-hero-modulo small {
display: block;
margin: 0;
color: #64809a;
font-size: 0.92rem;
line-height: 1.55;
opacity: 0;
max-height: 0;
overflow: hidden;
transition: opacity 0.18s ease, max-height 0.18s ease;
visibility: visible !important;
text-indent: 0 !important;
position: static !important;
background: none !important;
}

.landing-hero-visual-card.grande .landing-hero-modulo small {
display: block !important;
color: #64809a !important;
visibility: visible !important;
letter-spacing: normal !important;
text-transform: none !important;
font-weight: 500 !important;
}

.landing-hero-modulo:hover small,
.landing-hero-modulo:focus-visible small {
opacity: 1;
max-height: 80px;
}

@media (max-width: 760px) {
.landing-hero-modulos-grid {
grid-template-columns: 1fr;
}

.landing-depoimentos-grid {
grid-template-columns: 1fr;
}
}

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

.landing-depoimento-card {
padding: 24px;
border-radius: 26px;
background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 249, 255, 0.95));
border: 1px solid rgba(10, 79, 138, 0.09);
box-shadow: 0 16px 34px rgba(10, 79, 138, 0.07);
display: grid;
gap: 16px;
}

.landing-depoimento-topo {
display: grid;
grid-template-columns: auto 1fr;
align-items: center;
gap: 14px;
}

.landing-depoimento-foto {
width: 56px;
height: 56px;
border-radius: 999px;
display: inline-flex;
align-items: center;
justify-content: center;
background: linear-gradient(135deg, #2f86d2, #95da66);
color: #ffffff;
font-size: 1rem;
font-weight: 800;
box-shadow: 0 10px 22px rgba(29, 103, 175, 0.18);
}

.landing-depoimento-topo strong {
display: block;
margin: 0;
color: #103a61;
font-size: 1.06rem;
}

.landing-depoimento-topo span {
display: block;
margin-top: 4px;
color: #6a8298;
font-size: 0.92rem;
line-height: 1.45;
}

.landing-depoimento-card p {
margin: 0;
color: #55718d;
font-size: 0.98rem;
line-height: 1.7;
}

/* LOGIN MAIS LIMPO, SEM CARD FECHADO */
.login-layout {
align-items: flex-start !important;
padding-top: 72px !important;
padding-bottom: 48px !important;
}

.login-card {
width: min(100%, 760px) !important;
padding: 22px 0 0 !important;
border: none !important;
border-radius: 0 !important;
background: transparent !important;
box-shadow: none !important;
backdrop-filter: none !important;
}

.login-hero-strip {
padding: 0 0 18px !important;
border-radius: 0 !important;
background: transparent !important;
box-shadow: none !important;
color: #123d63 !important;
}

.login-hero-strip strong {
color: #123d63 !important;
font-size: 1.1rem !important;
}

.login-hero-strip p {
color: #607b93 !important;
font-size: 0.98rem !important;
}

.login-hero-badge {
padding: 0 !important;
border-radius: 0 !important;
background: transparent !important;
color: #5a7892 !important;
font-size: 0.82rem !important;
letter-spacing: 0.1em !important;
}

.login-brand {
margin-bottom: 24px !important;
padding: 22px 26px !important;
border-radius: 24px !important;
background: rgba(255, 255, 255, 0.78) !important;
border: 1px solid rgba(15, 56, 95, 0.08) !important;
box-shadow: 0 16px 34px rgba(8, 52, 95, 0.08) !important;
}

.login-brand h1 {
font-size: 2.6rem !important;
letter-spacing: -0.03em !important;
}

.login-brand p {
font-size: 1rem !important;
}

.login-card .cadastro-grid,
.login-card .modal-cliente-acoes,
.login-card #loginMensagem,
.login-card #loginTrocaSenhaCard {
padding-left: 26px !important;
padding-right: 26px !important;
}

.login-card #loginMensagem,
.login-card #loginTrocaSenhaCard {
background: rgba(255, 255, 255, 0.78) !important;
border: 1px solid rgba(15, 56, 95, 0.08) !important;
box-shadow: 0 16px 34px rgba(8, 52, 95, 0.07) !important;
border-radius: 22px !important;
}

@media (max-width: 760px) {
.login-layout {
padding-top: 34px !important;
}

.login-brand,
.login-card .cadastro-grid,
.login-card .modal-cliente-acoes,
.login-card #loginMensagem,
.login-card #loginTrocaSenhaCard {
padding-left: 0 !important;
padding-right: 0 !important;
}

.login-brand {
background: transparent !important;
border: none !important;
box-shadow: none !important;
padding-top: 0 !important;
padding-bottom: 0 !important;
}
}

/* TOPO LANDING - REFINO FINAL */
.landing-topo {
background: rgba(255, 255, 255, 0.96) !important;
border-bottom: 1px solid rgba(13, 77, 136, 0.08) !important;
backdrop-filter: blur(12px);
}

.landing-topo-interno {
max-width: 1260px;
min-height: 86px;
padding: 1rem 2.2rem;
gap: 2rem;
}

.landing-logo {
max-height: 66px !important;
width: auto;
}

.landing-nav {
gap: 2rem !important;
align-items: center;
}

.landing-nav a {
position: relative;
font-size: 0.98rem !important;
font-weight: 600 !important;
letter-spacing: 0.01em;
color: #47637f !important;
transition: color 0.18s ease;
}

.landing-nav a::after {
content: "";
position: absolute;
left: 0;
right: 0;
bottom: -10px;
height: 2px;
border-radius: 999px;
background: linear-gradient(90deg, #8ed63e, #1d67af);
transform: scaleX(0);
transform-origin: center;
transition: transform 0.18s ease;
}

.landing-nav a:hover {
color: #0d4d88 !important;
}

.landing-nav a:hover::after {
transform: scaleX(1);
}

.landing-topo-acoes {
gap: 0.7rem !important;
}

.landing-botao-login {
min-height: auto;
padding: 0.35rem 0.4rem !important;
border-radius: 0 !important;
background: transparent !important;
border: none !important;
box-shadow: none !important;
font-size: 0.98rem !important;
font-weight: 600 !important;
color: #47637f !important;
}

.landing-botao-destaque {
min-height: 48px;
padding: 0.82rem 1.45rem !important;
border-radius: 999px !important;
font-size: 0.95rem !important;
font-weight: 800 !important;
letter-spacing: 0.01em;
box-shadow: 0 12px 24px rgba(29, 103, 175, 0.18) !important;
}

.landing-botao-login:hover {
color: #0d4d88 !important;
transform: none !important;
}

@media (max-width: 980px) {
.landing-topo-interno {
padding: 0.95rem 1.25rem;
gap: 1rem;
}

.landing-nav {
gap: 1.2rem !important;
flex-wrap: wrap;
justify-content: center;
}
}

@media (max-width: 760px) {
.landing-topo-interno {
min-height: auto;
padding: 0.9rem 1rem;
}

.landing-logo {
max-height: 58px !important;
}

.landing-nav a::after {
bottom: -6px;
}

.landing-botao-login,
.landing-botao-destaque {
width: auto;
justify-content: center;
}
}

/* LOGO TOPO - AJUSTE FINAL */
.landing-topo .landing-logo,
.landing-topo-interno .landing-logo,
.landing-logo-link .landing-logo {
height: 74px !important;
max-height: 74px !important;
width: auto !important;
object-fit: contain !important;
display: block !important;
}

@media (max-width: 760px) {
.landing-topo .landing-logo,
.landing-topo-interno .landing-logo,
.landing-logo-link .landing-logo {
height: 62px !important;
max-height: 62px !important;
}
}

/* RODAPE INSTITUCIONAL */
.landing-rodape {
width: min(100% - 40px, 1220px) !important;
margin: 0 auto 40px !important;
padding: 34px 38px 22px !important;
background: #ffffff !important;
border: none !important;
border-radius: 28px !important;
box-shadow: 0 16px 34px rgba(10, 79, 138, 0.07) !important;
}

.landing-rodape-interno {
display: grid !important;
grid-template-columns: 1.1fr 1fr 1.15fr 0.95fr;
gap: 34px !important;
align-items: start;
}

.landing-rodape-coluna {
display: grid;
gap: 10px;
align-content: start;
}

.landing-rodape-coluna strong {
display: block;
margin-bottom: 6px !important;
color: #2e465f !important;
font-size: 1.1rem !important;
font-weight: 400 !important;
}

.landing-rodape-coluna a {
color: #3d8ce2;
font-size: 0.98rem;
line-height: 1.5;
text-decoration: none;
}

.landing-rodape-coluna a:hover {
color: #0d4d88;
text-decoration: underline;
}

.landing-rodape-coluna-lateral {
gap: 16px;
}

.landing-rodape-redes {
display: flex;
gap: 8px;
flex-wrap: wrap;
}

.landing-rede {
width: 46px;
height: 46px;
display: inline-flex;
align-items: center;
justify-content: center;
color: #ffffff;
text-decoration: none;
}

.landing-rede svg {
width: 22px;
height: 22px;
display: block;
}

.landing-rede-instagram {
background: #2b2b2b;
}

.landing-rede-facebook {
background: #4a67a8;
}

.landing-rede-youtube {
background: #ea2f2f;
}

.landing-rodape-subtitulo {
margin-top: 10px !important;
}

.landing-rodape-parcerias {
display: grid;
gap: 10px;
}

.landing-rodape-parcerias span {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 58px;
padding: 0.9rem 1rem;
border-radius: 12px;
border: 1px solid rgba(13, 77, 136, 0.12);
background: linear-gradient(180deg, #ffffff, #f5f9fd);
color: #4f6b84;
font-size: 0.96rem;
font-weight: 700;
}

.landing-rodape-final {
margin-top: 42px;
padding-top: 14px;
text-align: center;
color: #607b93;
font-size: 0.98rem;
line-height: 1.55;
}

.landing-rodape-final p {
margin: 0;
}

@media (max-width: 760px) {
.landing-rodape {
padding: 24px 20px 18px !important;
}

.landing-rodape-interno {
grid-template-columns: 1fr !important;
gap: 24px !important;
}

.landing-rodape-final {
margin-top: 24px;
font-size: 0.92rem;
}
}

/* CONVERSAO COMERCIAL LANDING */
.landing-conversao-rapida {
width: min(1180px, calc(100% - 32px));
margin: -24px auto 34px;
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 16px;
position: relative;
z-index: 2;
}

.landing-conversao-rapida article {
min-height: 168px;
padding: 22px;
border-radius: 24px;
background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(247, 252, 255, 0.9));
border: 1px solid rgba(13, 77, 136, 0.1);
box-shadow: 0 18px 40px rgba(10, 79, 138, 0.08);
display: grid;
gap: 10px;
align-content: start;
}

.landing-conversao-rapida span {
width: 48px;
height: 48px;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 16px;
background: #eaf7e6;
color: #4b9d32;
font-weight: 900;
}

.landing-conversao-rapida strong {
color: #0b365c;
font-size: 1.12rem;
}

.landing-conversao-rapida p {
margin: 0;
color: #58728a;
line-height: 1.55;
}

.landing-precos-hero .landing-hero-acoes {
justify-content: center;
margin-top: 22px;
}

.landing-planos-grid-comercial {
grid-template-columns: repeat(5, minmax(220px, 1fr));
overflow-x: auto;
padding-bottom: 10px;
}

.landing-plano-ideal {
margin-top: 6px;
padding: 12px 14px;
border-radius: 16px;
background: rgba(232, 246, 251, 0.78);
color: #355f82;
font-size: 0.9rem;
font-weight: 700;
line-height: 1.45;
}

.landing-plano-card.destaque .landing-plano-ideal {
background: rgba(255, 255, 255, 0.14);
color: #ffffff;
}

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

.landing-addon-card {
min-height: 220px;
padding: 24px;
border-radius: 24px;
background:
linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(247, 252, 255, 0.92));
border: 1px solid rgba(13, 77, 136, 0.1);
box-shadow: 0 16px 34px rgba(10, 79, 138, 0.08);
display: grid;
gap: 12px;
align-content: start;
}

.landing-addon-card span {
width: fit-content;
padding: 0.42rem 0.74rem;
border-radius: 999px;
background: #eaf7e6;
color: #4b9d32;
font-size: 0.78rem;
font-weight: 900;
text-transform: uppercase;
letter-spacing: 0.08em;
}

.landing-addon-card h3 {
margin: 0;
color: #0b365c;
font-size: 1.24rem;
}

.landing-addon-card strong {
color: #0d62a6;
font-size: 1.55rem;
line-height: 1;
}

.landing-addon-card p {
margin: 0;
color: #5d748c;
line-height: 1.6;
}

.landing-addon-card.futuro {
background:
linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(240, 247, 252, 0.82));
border-style: dashed;
}

.landing-addon-card.futuro span {
background: #e8f3fb;
color: #0d62a6;
}

.landing-carrinho-nota {
margin-top: 18px;
padding: 20px 22px;
border-radius: 22px;
background: linear-gradient(90deg, rgba(10, 79, 138, 0.08), rgba(132, 222, 84, 0.13));
border: 1px solid rgba(13, 77, 136, 0.1);
display: grid;
gap: 6px;
}

.landing-carrinho-nota strong {
color: #0b365c;
}

.landing-carrinho-nota p {
margin: 0;
color: #5d748c;
line-height: 1.55;
}

.landing-precos-cta {
display: grid;
grid-template-columns: 1.2fr auto;
align-items: center;
gap: 28px;
padding: 34px;
border-radius: 30px;
background:
linear-gradient(135deg, rgba(10, 79, 138, 0.96), rgba(12, 59, 104, 0.98)),
radial-gradient(circle at top right, rgba(132, 222, 84, 0.32), transparent 36%);
color: #ffffff;
box-shadow: 0 24px 48px rgba(10, 79, 138, 0.2);
}

.landing-precos-cta .landing-badge-claro {
background: rgba(255, 255, 255, 0.16);
color: #ffffff;
}

.landing-precos-cta h2 {
margin: 12px 0;
font-size: clamp(1.8rem, 3vw, 2.7rem);
line-height: 1.1;
letter-spacing: -0.04em;
}

.landing-precos-cta p {
margin: 0;
color: rgba(255, 255, 255, 0.82);
line-height: 1.7;
}

.landing-precos-cta .landing-botao-secundario {
background: #ffffff !important;
}

.assinatura-beneficios {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 14px;
margin: 24px 0;
}

.assinatura-beneficios article {
padding: 18px;
border-radius: 20px;
background: linear-gradient(180deg, #f7fbff, #ffffff);
border: 1px solid rgba(13, 77, 136, 0.1);
display: grid;
gap: 8px;
}

.assinatura-beneficios strong {
color: #0b365c;
font-size: 1rem;
}

.assinatura-beneficios span,
.assinatura-nota {
color: #5d748c;
font-size: 0.94rem;
line-height: 1.55;
}

.assinatura-nota {
margin: 14px 0 0;
}

.assinatura-extras {
margin: 26px 0 20px;
padding: 22px;
border-radius: 24px;
background: linear-gradient(180deg, #f7fbff, #ffffff);
border: 1px solid rgba(13, 77, 136, 0.1);
display: grid;
gap: 18px;
}

.assinatura-extras h2 {
margin: 10px 0 6px;
color: #0b365c;
font-size: 1.4rem;
}

.assinatura-extras p {
margin: 0;
color: #5d748c;
line-height: 1.55;
}

.assinatura-extras-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
}

.assinatura-extras-grid label {
min-height: 54px;
padding: 14px 16px;
border-radius: 16px;
background: #ffffff;
border: 1px solid rgba(13, 77, 136, 0.12);
color: #0b365c;
font-weight: 800;
display: flex;
align-items: center;
gap: 10px;
}

.assinatura-extras-grid input {
width: 18px;
height: 18px;
accent-color: #68b842;
}

@media (max-width: 980px) {
.landing-conversao-rapida,
.assinatura-beneficios {
grid-template-columns: 1fr;
}

.landing-precos-cta {
grid-template-columns: 1fr;
}

.landing-addons-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

@media (max-width: 760px) {
.landing-conversao-rapida {
margin-top: 0;
}

.landing-planos-grid-comercial {
grid-template-columns: 1fr;
overflow-x: visible;
}

.landing-addons-grid {
grid-template-columns: 1fr;
}

.assinatura-extras-grid {
grid-template-columns: 1fr;
}

.landing-precos-cta {
padding: 24px;
}
}

/* LEADS COMERCIAIS */
.leads-comerciais-lista {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 18px;
}

.lead-comercial-card {
padding: 22px;
border-radius: 24px;
background: linear-gradient(180deg, #ffffff, #f7fbff);
border: 1px solid rgba(13, 77, 136, 0.1);
box-shadow: 0 16px 34px rgba(10, 79, 138, 0.08);
display: grid;
gap: 16px;
}

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

.assinatura-comercial-card {
padding: 22px;
border-radius: 24px;
background: linear-gradient(180deg, #ffffff, #f8fcff);
border: 1px solid rgba(13, 77, 136, 0.1);
box-shadow: 0 16px 34px rgba(10, 79, 138, 0.08);
display: grid;
gap: 16px;
}

.modal-assinatura-comercial {
width: min(980px, calc(100vw - 32px));
max-width: 980px;
max-height: calc(100vh - 32px);
overflow: auto;
}

.assinatura-pagamentos {
padding: 14px;
border-radius: 18px;
background: #f2f8fc;
border: 1px solid rgba(13, 77, 136, 0.08);
}

.assinatura-pagamentos strong {
display: block;
margin-bottom: 8px;
color: #0b365c;
}

.assinatura-pagamentos ul {
margin: 0;
padding-left: 18px;
color: #526e87;
line-height: 1.55;
}

.assinatura-historico-pagamentos {
display: grid;
gap: 12px;
margin-top: 16px;
}

.assinatura-historico-item {
padding: 16px;
border-radius: 18px;
background: #ffffff;
border: 1px solid rgba(13, 77, 136, 0.1);
box-shadow: 0 10px 24px rgba(10, 79, 138, 0.06);
display: grid;
gap: 8px;
}

.assinatura-historico-item div {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
flex-wrap: wrap;
}

.assinatura-historico-item strong {
color: #0b365c;
font-size: 1.05rem;
}

.assinatura-historico-item span,
.assinatura-historico-item p {
margin: 0;
color: #526e87;
line-height: 1.5;
}

.assinaturas-acoes-hoje-lista {
display: grid;
gap: 12px;
}

.assinatura-acao-card {
padding: 18px;
border-radius: 20px;
background: linear-gradient(180deg, #ffffff, #f8fcff);
border: 1px solid rgba(13, 77, 136, 0.1);
box-shadow: 0 12px 28px rgba(10, 79, 138, 0.07);
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap;
}

.assinatura-acao-card span {
display: inline-flex;
width: fit-content;
padding: 0.34rem 0.62rem;
border-radius: 999px;
background: #e8f3fb;
color: #0d62a6;
font-size: 0.74rem;
font-weight: 900;
text-transform: uppercase;
letter-spacing: 0.06em;
}

.assinatura-acao-card strong {
display: block;
margin-top: 8px;
color: #0b365c;
font-size: 1.08rem;
}

.assinatura-acao-card p {
margin: 6px 0 0;
color: #526e87;
line-height: 1.5;
}

.assinatura-acao-vencida span {
background: #f7e8e8;
color: #a23b3b;
}

.assinatura-acao-hoje span {
background: #fff6e8;
color: #b46600;
}

.assinatura-acao-7dias span {
background: #eaf7e6;
color: #438a2f;
}

.assinatura-acao-sem_pagamento span {
background: #eef5fb;
color: #0d62a6;
}

.lead-comercial-topo {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 14px;
}

.lead-comercial-topo strong {
display: block;
color: #0b365c;
font-size: 1.16rem;
}

.lead-comercial-topo span:not(.lead-status) {
display: block;
margin-top: 4px;
color: #5d748c;
line-height: 1.45;
}

.lead-status {
padding: 0.42rem 0.7rem;
border-radius: 999px;
font-size: 0.78rem;
font-weight: 900;
white-space: nowrap;
background: #eef5fb;
color: #0d62a6;
}

.lead-status-novo {
background: #fff6e8;
color: #b46600;
}

.lead-status-em_contato {
background: #e8f3fb;
color: #0d62a6;
}

.lead-status-teste_liberado {
background: #eaf7e6;
color: #438a2f;
}

.lead-status-fechado {
background: #e7f8f0;
color: #157a4f;
}

.lead-status-perdido {
background: #f7e8e8;
color: #a23b3b;
}

.lead-status-ativa {
background: #e7f8f0;
color: #157a4f;
}

.lead-status-atrasada {
background: #fff6e8;
color: #b46600;
}

.lead-status-cancelada {
background: #f7e8e8;
color: #a23b3b;
}

.lead-status-ativo,
.lead-status-a_vencer,
.lead-status-teste,
.lead-status-vencido,
.lead-status-suspenso,
.lead-status-cancelado {
text-transform: uppercase;
}

.lead-status-ativo {
background: #e7f8f0;
color: #157a4f;
}

.lead-status-a_vencer,
.lead-status-teste {
background: #fff6e8;
color: #b46600;
}

.lead-status-vencido,
.lead-status-suspenso,
.lead-status-cancelado {
background: #f7e8e8;
color: #a23b3b;
}

.aviso-acesso-plano {
margin: 10px 22px 0 104px;
padding: 12px 16px;
border: 1px solid #f1c978;
border-radius: 18px;
background: linear-gradient(135deg, #fff8e8, #fffdf7);
color: #774b00;
display: flex;
gap: 10px;
align-items: flex-start;
box-shadow: 0 10px 24px rgba(119, 75, 0, 0.08);
}

.aviso-acesso-plano strong {
color: #9a5b00;
letter-spacing: 0.04em;
text-transform: uppercase;
}

@media (max-width: 760px) {
.aviso-acesso-plano {
margin: 10px 16px 0 16px;
flex-direction: column;
}
}

.lead-comercial-info {
display: grid;
gap: 6px;
}

.lead-comercial-info p,
.lead-comercial-mensagem {
margin: 0;
color: #526e87;
line-height: 1.55;
}

.lead-comercial-info b {
color: #0b365c;
}

.lead-comercial-observacao {
display: grid;
gap: 8px;
}

.lead-comercial-observacao span {
font-size: 0.82rem;
font-weight: 900;
color: #0b365c;
}

.lead-comercial-observacao textarea {
width: 100%;
min-height: 84px;
padding: 12px 14px;
border-radius: 16px;
border: 1px solid rgba(13, 77, 136, 0.14);
background: #ffffff;
color: #163d5f;
font: inherit;
resize: vertical;
}

.lead-comercial-extras {
display: flex;
flex-wrap: wrap;
gap: 8px;
}

.lead-comercial-extras span,
.lead-comercial-extras em {
padding: 0.44rem 0.66rem;
border-radius: 999px;
background: #eef7ec;
color: #4b8f35;
font-size: 0.82rem;
font-style: normal;
font-weight: 800;
}

.lead-comercial-extras em {
background: #eef5fb;
color: #6a8298;
}

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

.lead-comercial-acoes select {
min-height: 46px;
padding: 0.72rem 0.9rem;
border-radius: 14px;
border: 1px solid rgba(13, 77, 136, 0.14);
background: #ffffff;
color: #0b365c;
font-weight: 800;
}

.leads-teste-prioridade-lista {
display: grid;
gap: 12px;
}

.lead-teste-prioridade {
padding: 18px;
border-radius: 20px;
background: linear-gradient(180deg, #ffffff, #f8fcff);
border: 1px solid rgba(13, 77, 136, 0.1);
box-shadow: 0 12px 28px rgba(10, 79, 138, 0.07);
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap;
}

.lead-teste-prioridade span {
display: inline-flex;
width: fit-content;
padding: 0.34rem 0.62rem;
border-radius: 999px;
background: #e8f3fb;
color: #0d62a6;
font-size: 0.74rem;
font-weight: 900;
text-transform: uppercase;
letter-spacing: 0.06em;
}

.lead-teste-prioridade strong {
display: block;
margin-top: 8px;
color: #0b365c;
font-size: 1.08rem;
}

.lead-teste-prioridade p {
margin: 6px 0 0;
color: #526e87;
line-height: 1.5;
}

.lead-teste-vencido span {
background: #f7e8e8;
color: #a23b3b;
}

.lead-teste-hoje span {
background: #fff6e8;
color: #b46600;
}

.lead-teste-proximo span {
background: #eaf7e6;
color: #438a2f;
}

.lead-teste-sem_data span {
background: #eef5fb;
color: #0d62a6;
}

.financeiro-comercial-planos,
.financeiro-comercial-prioridades,
.financeiro-comercial-pagamentos,
.financeiro-comercial-agenda {
display: grid;
gap: 12px;
}

.financeiro-comercial-plano,
.financeiro-comercial-prioridade,
.financeiro-comercial-pagamento,
.financeiro-comercial-recebimento {
padding: 16px;
border-radius: 18px;
background: linear-gradient(180deg, #ffffff, #f8fcff);
border: 1px solid rgba(13, 77, 136, 0.1);
box-shadow: 0 10px 24px rgba(10, 79, 138, 0.06);
display: flex;
align-items: center;
justify-content: space-between;
gap: 14px;
flex-wrap: wrap;
}

.financeiro-comercial-plano strong,
.financeiro-comercial-prioridade strong,
.financeiro-comercial-pagamento strong,
.financeiro-comercial-recebimento strong {
display: block;
color: #0b365c;
font-size: 1.05rem;
}

.financeiro-comercial-plano p,
.financeiro-comercial-prioridade p,
.financeiro-comercial-pagamento p,
.financeiro-comercial-recebimento p {
margin: 5px 0 0;
color: #526e87;
line-height: 1.5;
}

.financeiro-comercial-plano span,
.financeiro-comercial-pagamento span {
color: #0b4f8a;
font-weight: 900;
font-size: 1.08rem;
}

.financeiro-comercial-pagamento small {
display: block;
margin-top: 4px;
color: #6a8298;
font-weight: 800;
text-align: right;
}

.financeiro-comercial-prioridade > div:first-child > span,
.financeiro-comercial-recebimento > div:first-child > span {
display: inline-flex;
width: fit-content;
padding: 0.34rem 0.62rem;
border-radius: 999px;
background: #e8f3fb;
color: #0d62a6;
font-size: 0.74rem;
font-weight: 900;
text-transform: uppercase;
letter-spacing: 0.06em;
}

.financeiro-comercial-vencida > div:first-child > span {
background: #f7e8e8;
color: #a23b3b;
}

.financeiro-comercial-hoje > div:first-child > span,
.financeiro-comercial-pendente > div:first-child > span {
background: #fff6e8;
color: #b46600;
}

.financeiro-comercial-7dias > div:first-child > span {
background: #eaf7e6;
color: #438a2f;
}

.planos-comerciais-lista {
display: grid;
gap: 16px;
}

.plano-comercial-card {
padding: 18px;
border-radius: 22px;
background: linear-gradient(180deg, #ffffff, #f8fcff);
border: 1px solid rgba(13, 77, 136, 0.1);
box-shadow: 0 12px 28px rgba(10, 79, 138, 0.07);
display: grid;
gap: 14px;
}

.planos-comerciais-acoes-rapidas {
align-items: center;
justify-content: flex-end;
gap: 10px;
}

.planos-comerciais-barra-salvar {
position: sticky;
bottom: 18px;
z-index: 5;
display: flex;
align-items: center;
justify-content: space-between;
gap: 14px;
margin-top: 18px;
padding: 12px 14px;
border: 1px solid rgba(13, 77, 136, 0.14);
border-radius: 18px;
background: rgba(255, 255, 255, 0.94);
box-shadow: 0 16px 36px rgba(13, 77, 136, 0.16);
backdrop-filter: blur(10px);
}

.planos-comerciais-barra-salvar span {
font-weight: 800;
color: var(--azul-profundo);
}

.checklist-publicacao-lista {
display: grid;
gap: 12px;
}

.checklist-publicacao-item {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 16px;
border-radius: 18px;
border: 1px solid rgba(13, 77, 136, 0.12);
background: #fff;
box-shadow: 0 12px 28px rgba(13, 77, 136, 0.08);
}

.checklist-publicacao-item span {
display: block;
font-size: 0.82rem;
font-weight: 900;
letter-spacing: 0.06em;
text-transform: uppercase;
color: var(--texto-secundario);
}

.checklist-publicacao-item strong {
display: block;
margin-top: 4px;
color: var(--azul-profundo);
}

.checklist-publicacao-item p {
margin: 6px 0 0;
color: var(--texto-secundario);
}

.checklist-publicacao-item.ok {
border-color: rgba(60, 170, 77, 0.24);
background: linear-gradient(135deg, #ffffff, #f2fff5);
}

.checklist-publicacao-item.pendente {
border-color: rgba(214, 134, 35, 0.24);
background: linear-gradient(135deg, #ffffff, #fff8ed);
}

.checklist-manual {
padding: 10px 14px;
border-radius: 999px;
background: rgba(13, 77, 136, 0.08);
color: var(--azul-profundo) !important;
white-space: nowrap;
}

.campo-check {
display: flex;
align-items: center;
gap: 10px;
min-height: 52px;
padding: 12px 14px;
border-radius: 16px;
background: #f8fbfd;
border: 1px solid rgba(13, 77, 136, 0.12);
color: #0b365c;
font-weight: 850;
}

.campo-check input {
width: 18px;
height: 18px;
accent-color: #68b842;
}

@media (max-width: 900px) {
.leads-comerciais-lista,
.assinaturas-comerciais-lista,
.assinaturas-acoes-hoje-lista,
.leads-teste-prioridade-lista {
grid-template-columns: 1fr;
}
}

/* CARRINHO COMERCIAL */
.carrinho-extras-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 16px;
}

.carrinho-extra-card {
min-height: 210px;
padding: 20px;
border-radius: 22px;
background: linear-gradient(180deg, #ffffff, #f7fbff);
border: 1px solid rgba(13, 77, 136, 0.12);
box-shadow: 0 14px 30px rgba(10, 79, 138, 0.07);
display: grid;
gap: 10px;
align-content: start;
cursor: pointer;
position: relative;
transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

/* LANCAMENTO COMERCIAL */
.lancamento-checklist,
.lancamento-roteiro,
.lancamento-mensagens,
.lancamento-sequencia {
display: grid;
gap: 12px;
}

.lancamento-check-item,
.lancamento-roteiro-item,
.lancamento-mensagem-card {
padding: 16px;
border-radius: 18px;
background: linear-gradient(180deg, #ffffff, #f8fcff);
border: 1px solid rgba(13, 77, 136, 0.12);
box-shadow: 0 10px 24px rgba(10, 79, 138, 0.06);
}

.lancamento-check-item {
display: grid;
grid-template-columns: auto 1fr;
gap: 8px 12px;
align-items: start;
cursor: pointer;
}

.lancamento-check-item input {
width: 20px;
height: 20px;
accent-color: #68b842;
grid-row: span 3;
margin-top: 3px;
}

.lancamento-check-item span,
.lancamento-roteiro-item span {
display: inline-flex;
width: fit-content;
padding: 0.32rem 0.62rem;
border-radius: 999px;
background: #e8f3fb;
color: #0d62a6;
font-size: 0.74rem;
font-weight: 900;
text-transform: uppercase;
letter-spacing: 0.06em;
}

.lancamento-check-item strong,
.lancamento-roteiro-item strong,
.lancamento-mensagem-card strong {
color: #0b365c;
font-size: 1.04rem;
}

.lancamento-check-item p,
.lancamento-roteiro-item p,
.lancamento-mensagem-card p {
margin: 0;
color: #526e87;
line-height: 1.55;
}

.lancamento-check-item.feito {
border-color: rgba(104, 184, 66, 0.42);
background: linear-gradient(180deg, #ffffff, #f4fbf1);
}

.lancamento-check-item.feito span {
background: #eaf7e6;
color: #438a2f;
}

.lancamento-roteiro-item,
.lancamento-mensagem-card {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 14px;
}

.lancamento-roteiro-item > div,
.lancamento-mensagem-card > div {
display: grid;
gap: 6px;
}

.carrinho-extra-card:hover {
transform: translateY(-2px);
box-shadow: 0 20px 38px rgba(10, 79, 138, 0.11);
}

.carrinho-extra-card input {
position: absolute;
top: 18px;
right: 18px;
width: 20px;
height: 20px;
accent-color: #68b842;
}

.carrinho-extra-card:has(input:checked) {
border-color: rgba(104, 184, 66, 0.58);
box-shadow: 0 22px 42px rgba(104, 184, 66, 0.14);
}

.carrinho-extra-card span {
width: fit-content;
padding: 0.38rem 0.65rem;
border-radius: 999px;
background: #eaf7e6;
color: #4b8f35;
font-size: 0.76rem;
font-weight: 900;
text-transform: uppercase;
letter-spacing: 0.08em;
}

.carrinho-extra-card.futuro span {
background: #e8f3fb;
color: #0d62a6;
}

.carrinho-extra-card strong {
color: #0b365c;
font-size: 1.12rem;
padding-right: 34px;
}

.carrinho-extra-card em {
color: #0d62a6;
font-style: normal;
font-size: 1.26rem;
font-weight: 900;
}

.carrinho-extra-card p {
margin: 0;
color: #5d748c;
line-height: 1.55;
font-size: 0.94rem;
}

.carrinho-mensagem {
width: 100%;
min-height: 280px;
padding: 18px;
border-radius: 20px;
border: 1px solid rgba(13, 77, 136, 0.14);
background: #f8fbfd;
color: #163d5f;
font-size: 0.96rem;
line-height: 1.6;
resize: vertical;
}

@media (max-width: 1100px) {
.carrinho-extras-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

@media (max-width: 760px) {
.carrinho-extras-grid {
grid-template-columns: 1fr;
}
}
