/* Identidade visual Sistema Autentis — padrão da tela de login (oliva + creme + vidro) */
:root{
  --oliva:#575A45; --oliva-escuro:#494B3E; --oliva-profundo:#1A1C14; --oliva-medio:#61644E;
  --creme:#EFE6C8; --creme-dim:#D6D1BC; --sage:#A8AA8F;
  --vidro:rgba(255,255,255,.10); --vidro-forte:rgba(255,255,255,.16); --borda:rgba(239,230,200,.28);
  --ok:#8DDE9A; --ok-bg:rgba(76,175,80,.16); --erro:#FFB3A6; --erro-bg:rgba(214,69,45,.18);
  /* Cores oficiais dos grupos (planilha) */
  --verde:#00B800; --azul:#2D2DFF; --amarelo:#FFF905; --laranja:#FFAB2F; --vermelho:#FF2929; --roxo:#AE37FF;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Outfit','Segoe UI',system-ui,sans-serif;color:var(--creme);font-weight:300;min-height:100vh;
  background:radial-gradient(1200px 600px at 70% -10%, #6A6D55 0%, var(--oliva) 45%, #4C4E3C 100%) fixed}
strong,b,th,label,button{font-weight:500}
h1{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:600;font-size:clamp(26px,4vw,34px);margin:8px 0 4px;color:var(--creme)}
h2{font-size:13px;margin:26px 0 10px;text-transform:uppercase;letter-spacing:2px;color:var(--creme-dim);font-weight:500}
.sub{color:var(--creme-dim);font-size:14px;margin:0 0 18px}
a{color:var(--creme)}
/* Barra superior (vidro) */
.topo{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:20px;padding:12px 24px;flex-wrap:wrap;
  background:rgba(73,75,62,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(239,230,200,.15);color:var(--creme)}
.topo .marca{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:20px;color:var(--creme)}
.topo .marca strong{font-weight:600}
.topo .links{display:flex;gap:2px;flex-wrap:wrap}
.topo a{color:var(--creme-dim);text-decoration:none;padding:6px 11px;border-radius:20px;font-size:11.5px;text-transform:uppercase;letter-spacing:1.5px;transition:.25s}
.topo a:hover{color:var(--creme);background:rgba(239,230,200,.12)}
.topo .sair{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:13px}
.topo .sair span{color:var(--creme-dim)}
.topo .sair button{background:var(--oliva-escuro);color:var(--creme);border:1px solid var(--borda);border-radius:20px;padding:6px 16px;cursor:pointer;font-size:11px;letter-spacing:1px;text-transform:uppercase;transition:.25s}
.topo .sair button:hover{background:#3f4136}
.menu-btn{display:none;background:none;border:1px solid var(--borda);color:var(--creme);border-radius:8px;padding:4px 10px;font-size:18px;cursor:pointer;margin-left:auto}
.conteudo{max-width:1080px;margin:26px auto;padding:0 20px}
/* Cartões (vidro fosco) */
.cartao{background:var(--vidro);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border:1px solid var(--borda);border-radius:20px;padding:20px 22px;margin-bottom:18px;overflow-x:auto;
  box-shadow:0 14px 40px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.10);transition:box-shadow .25s}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.kpi{background:var(--vidro);backdrop-filter:blur(14px);border:1px solid var(--borda);border-radius:18px;padding:16px 18px;
  box-shadow:0 10px 30px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.10);transition:transform .25s}
.kpi:hover{transform:translateY(-2px)}
.kpi .rotulo{font-size:10.5px;color:var(--creme-dim);text-transform:uppercase;letter-spacing:1.5px}
.kpi .valor{font-size:24px;font-weight:400;margin-top:5px;color:var(--creme)}
/* KPI com a cor do grupo */
.kpi.kverde{background:linear-gradient(135deg,rgba(0,184,0,.85),rgba(0,140,0,.85));border-color:transparent}
.kpi.kazul{background:linear-gradient(135deg,rgba(45,45,255,.82),rgba(27,27,190,.82));border-color:transparent}
.kpi.kamarelo{background:linear-gradient(135deg,rgba(255,249,5,.88),rgba(214,206,0,.88));border-color:transparent}
.kpi.kamarelo .rotulo,.kpi.kamarelo .valor{color:#3b3b00}
.kpi.klaranja{background:linear-gradient(135deg,rgba(255,171,47,.9),rgba(226,138,16,.9));border-color:transparent}
.kpi.klaranja .rotulo,.kpi.klaranja .valor{color:#4a2c00}
.kpi.kvermelho{background:linear-gradient(135deg,rgba(255,41,41,.85),rgba(200,25,25,.85));border-color:transparent}
.kpi.kroxo{background:linear-gradient(135deg,rgba(174,55,255,.85),rgba(120,20,190,.85));border-color:transparent}
.kpi.kverde .rotulo,.kpi.kazul .rotulo,.kpi.kvermelho .rotulo,.kpi.kroxo .rotulo{color:rgba(255,255,255,.85)}
.kpi.kverde .valor,.kpi.kazul .valor,.kpi.kvermelho .valor,.kpi.kroxo .valor{color:#fff}
.kpi.destaque{background:var(--oliva-profundo);border:2px solid var(--creme);box-shadow:0 0 0 4px rgba(239,230,200,.15),0 14px 40px rgba(0,0,0,.35)}
.kpi.destaque .valor{color:var(--creme);font-weight:600}
/* Tabelas */
table{width:100%;border-collapse:collapse;font-size:14px;color:var(--creme)}
th,td{padding:8px 9px;border-bottom:1px solid rgba(239,230,200,.16);text-align:left;vertical-align:middle}
th{background:transparent;font-size:10.5px;text-transform:uppercase;letter-spacing:1.2px;color:var(--creme-dim);font-weight:500}
td.num,th.num{text-align:right}
tfoot th{font-size:14px;font-weight:700;color:var(--creme);border-top:2px solid var(--borda)}
/* Formulários (pílulas) */
input,select,textarea{width:100%;padding:11px 16px;border:1px solid var(--borda);border-radius:999px;font:inherit;font-weight:300;
  background:rgba(255,255,255,.07);color:var(--creme);min-height:44px;transition:.2s}
select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23EFE6C8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
select option{background:var(--oliva);color:var(--creme)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--creme);background:rgba(255,255,255,.13);box-shadow:0 0 0 3px rgba(239,230,200,.15)}
input[readonly]{color:var(--creme-dim);cursor:default}
input::placeholder,textarea::placeholder{color:rgba(239,230,200,.45)}
textarea{min-height:70px;border-radius:18px}
label{display:block;font-size:12.5px;font-weight:500;margin:12px 0 5px;color:var(--creme-dim)}
button,.botao{background:var(--oliva-profundo);color:var(--creme);border:1px solid var(--borda);border-radius:30px;padding:12px 24px;font:inherit;font-size:12.5px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-block;min-height:44px;transition:.25s}
button:hover,.botao:hover{background:#2b2d22;transform:translateY(-1px)}
.botao.sec,button.sec{background:transparent;color:var(--creme);border:1px solid var(--borda)}
.botao.sec:hover,button.sec:hover{background:rgba(239,230,200,.12)}
.botao.peq,button.peq{padding:7px 14px;font-size:11px;letter-spacing:1px;min-height:36px}
/* Alertas e selos */
.alerta{padding:12px 16px;border-radius:14px;margin-bottom:16px;font-size:14px;backdrop-filter:blur(10px)}
.alerta.ok{background:var(--ok-bg);color:var(--ok);border:1px solid rgba(141,222,154,.4)}
.alerta.erro{background:var(--erro-bg);color:var(--erro);border:1px solid rgba(255,179,166,.4)}
.alerta.aviso{background:rgba(255,171,47,.15);color:#FFD9A6;border:1px solid rgba(255,171,47,.4)}
.selo{display:inline-block;border-radius:20px;padding:3px 12px;font-size:10.5px;font-weight:500;letter-spacing:1px}
.selo.enviado{background:rgba(255,249,5,.18);color:#F0E68C}
.selo.aceito{background:var(--ok-bg);color:var(--ok)}
/* Grupos de despesas — cabeçalho com a COR REAL da planilha */
.grupo-cab{display:flex;align-items:center;gap:12px;border-radius:16px 16px 0 0;padding:13px 18px;color:#fff;margin:24px 0 0}
.grupo-cab .titulo{font-weight:600;font-size:14px;letter-spacing:.5px}
.grupo-cab .titulo small{display:block;font-weight:300;font-size:11.5px;opacity:.9}
.grupo-cab.verde{background:linear-gradient(100deg,var(--verde),#009a00)}
.grupo-cab.azul{background:linear-gradient(100deg,var(--azul),#1b1bd6)}
.grupo-cab.amarelo{background:linear-gradient(100deg,var(--amarelo),#e3dd00);color:#3b3b00}
.grupo-cab.laranja{background:linear-gradient(100deg,var(--laranja),#f29612);color:#4a2c00}
.grupo-cab.vermelho{background:linear-gradient(100deg,var(--vermelho),#d81f1f)}
.grupo-cab.roxo{background:linear-gradient(100deg,var(--roxo),#8a1fd6)}
.grupo-cab + .cartao{border-radius:0 0 20px 20px;margin-top:0;border-top:0}
.grupo-total{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:15px;
  padding:12px 4px 2px;border-top:2px solid var(--borda);margin-top:10px}
/* Botão de instruções "?" */
.ajuda-btn{margin-left:auto;flex:none;width:32px;height:32px;border-radius:50%;border:1.5px solid currentColor;
  background:rgba(255,255,255,.16);color:inherit;font-weight:600;font-size:15px;cursor:pointer;padding:0;min-height:32px;transition:.2s}
.ajuda-btn:hover{background:rgba(255,255,255,.32);transform:scale(1.08)}
.ajuda-btn.solto{color:var(--creme);margin-left:8px;vertical-align:middle}
/* Modal / bottom-sheet de instruções */
.modal-fundo{position:fixed;inset:0;background:rgba(26,28,20,.6);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;z-index:100;padding:20px}
.modal-fundo.aberto{display:flex}
.modal{max-width:600px;width:100%;border-radius:22px;padding:26px 28px;background:rgba(87,90,69,.95);backdrop-filter:blur(20px);
  border:1px solid var(--borda);box-shadow:0 30px 80px rgba(0,0,0,.5);animation:pop .25s ease;max-height:80vh;overflow-y:auto}
@keyframes pop{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
.modal h3{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:22px;margin:0 0 12px;color:var(--creme)}
.modal p{font-size:14px;font-weight:300;line-height:1.7;color:var(--creme-dim);white-space:pre-line}
.modal .fechar{margin-top:18px;width:100%}
.rm-linha{background:none;border:0;color:var(--erro);cursor:pointer;font-size:15px;padding:2px 8px;border-radius:8px;min-height:32px}
.rm-linha:hover{background:var(--erro-bg)}
/* Entrada (login/cadastro) */
body.escuro{background:radial-gradient(1200px 600px at 50% -10%, #6A6D55 0%, var(--oliva) 45%, #43452F 100%) fixed}
body.escuro .conteudo{max-width:100%;margin:0;padding:0}
.entrada{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px}
.entrada-marca{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:600;font-size:38px;color:var(--creme);text-align:center;line-height:1.1}
.entrada-sub{font-size:10px;letter-spacing:3px;color:var(--sage);text-transform:uppercase;text-align:center;margin:10px 0 26px}
.entrada .cartao{width:100%;max-width:400px;padding:28px 30px;background:var(--vidro-forte);
  box-shadow:0 0 60px rgba(239,230,200,.12),0 24px 60px rgba(0,0,0,.35)}
.entrada .sub a{color:var(--creme);font-weight:500}
.centro{max-width:460px;margin:60px auto}
/* Documentos (contratos continuam em papel branco para leitura/impressão) */
.doc-abas{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.doc-abas button{background:rgba(239,230,200,.14);color:var(--creme-dim);padding:7px 14px;font-size:11px;letter-spacing:.8px;border-radius:20px;border:0;min-height:34px}
.doc-abas button.ativa{background:var(--creme);color:var(--oliva-profundo)}
.doc-corpo{background:#fff;border:1px solid var(--borda);border-radius:14px;padding:36px 46px;max-height:520px;overflow-y:auto;line-height:1.6;font-size:14.5px;font-family:Georgia,'Times New Roman',serif;color:#222}
.doc-corpo h1,.doc-corpo h2,.doc-corpo h3{font-size:15px;font-family:Georgia,serif;font-style:normal;text-transform:none;letter-spacing:0;color:#222}
.pendente{background:#F3ECD9;color:#8A6D2F;padding:0 4px;border-radius:4px;font-weight:500}
.caixa-aceite{background:var(--vidro-forte);border:1px solid var(--borda);border-radius:18px;padding:22px}
.mono{font-family:ui-monospace,Consolas,monospace;font-size:12px;word-break:break-all}
.duas{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
/* Passo a passo */
.wizard{background:var(--vidro-forte)}
.wizard-passos{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:12.5px}
.wizard-passo{display:inline-flex;align-items:center;gap:6px;color:var(--creme-dim)}
.wizard-passo .bolinha{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:rgba(239,230,200,.22);color:var(--creme);font-size:11px;font-weight:500}
.wizard-passo.atual{color:var(--creme);font-weight:500}
.wizard-passo.atual .bolinha{background:var(--creme);color:var(--oliva-profundo)}
.wizard-passo.feito{color:var(--ok)}
.wizard-passo.feito .bolinha{background:var(--ok);color:var(--oliva-profundo)}
.wizard-tra{color:rgba(239,230,200,.35)}
.wizard-acoes{margin-top:14px;display:flex;gap:8px;flex-wrap:wrap}
/* Assinatura carimbada (documentos em papel) */
.carimbo-assinatura{margin:28px auto 10px;max-width:440px;text-align:center;page-break-inside:avoid;color:#222}
.assin-nome{font-family:'Great Vibes',cursive;font-size:38px;color:#1A1C14;line-height:1.1;min-height:46px;transform:rotate(-2deg)}
.assin-linha{border-bottom:1.5px solid #656854;margin:2px 20px 6px}
.assin-meta{font-size:10.5px;color:#656854;line-height:1.5;font-weight:400}
.assin-selo{display:inline-block;border:1.5px solid #4A4C3E;border-radius:20px;color:#4A4C3E;font-size:9.5px;font-weight:500;letter-spacing:1px;padding:3px 10px;margin-top:4px;text-transform:uppercase}
.assin-preview{background:#fff;border:1px dashed var(--sage);border-radius:14px;padding:14px;text-align:center;margin-top:8px;color:#222}
/* Celular */
@media(max-width:760px){
  .menu-btn{display:block}
  .topo{gap:10px}
  .topo .links{display:none;width:100%;flex-direction:column;order:3}
  .topo .links.aberto{display:flex}
  .topo a{padding:12px;border-radius:12px}
  .topo .sair{margin-left:0}
  .duas{grid-template-columns:1fr}
  .doc-corpo{padding:20px 16px;font-size:14px}
  .conteudo{margin:16px auto;padding:0 14px}
  .caixa-aceite{padding:16px}
  button,.botao{width:auto}
  .modal-fundo{align-items:flex-end;padding:0}
  .modal{border-radius:22px 22px 0 0;max-width:100%;max-height:85vh}
  .cartao{padding:16px}
}
/* Impressão */
@media print{
  .topo,.nao-imprimir,.doc-abas,button{display:none!important}
  .doc-corpo{max-height:none;overflow:visible;border:0;padding:0}
  .doc-print{display:block!important;page-break-after:always}
  body{background:#fff;color:#222}
  .conteudo{max-width:100%;margin:0}
  .carimbo-assinatura{display:block!important}
}
.doc-print{display:none}

/* ===== Tela de login (layout do design aprovado) ===== */
.lg-pagina{min-height:100vh;display:flex;flex-direction:column;padding:34px 24px 0}
.lg-topo{text-align:center}
.lg-logo{width:190px;height:auto;filter:drop-shadow(0 6px 14px rgba(0,0,0,.35));animation:lgentrar .7s ease both}
.lg-marca{font-size:15px;letter-spacing:5px;color:var(--creme-dim);margin-top:2px}
.lg-marca strong{color:var(--creme);font-weight:600}
.lg-meio{flex:1;display:flex;align-items:center;justify-content:center;gap:60px;max-width:1080px;margin:0 auto;width:100%;padding:34px 0}
.lg-chamada{max-width:400px}
.lg-titulo{font-family:'Cormorant Garamond',Georgia,serif;font-style:normal;font-weight:700;font-size:clamp(30px,4vw,44px);line-height:1.15;color:var(--creme);margin:0 0 18px}
.lg-texto{color:var(--creme-dim);font-size:16.5px;font-weight:300;line-height:1.65;margin:0}
.lg-cartao{width:100%;max-width:430px;border-radius:26px;padding:36px 38px;
  background:rgba(255,255,255,.10);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid rgba(239,230,200,.25);
  box-shadow:0 0 70px rgba(239,230,200,.16),0 26px 60px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.14)}
.lg-login{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:700;font-size:34px;letter-spacing:2px;color:var(--creme);margin:0 0 22px;text-transform:none}
.lg-campo{position:relative;margin-bottom:18px}
.lg-campo input{padding-right:52px;font-size:16px;min-height:52px;border-radius:14px;border-width:1.5px}
.lg-campo svg{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:22px;height:22px;color:var(--creme);opacity:.85;pointer-events:none}
.lg-acao{text-align:center;margin:24px 0 16px}
.lg-botao{min-width:150px;font-size:14px;letter-spacing:2px;border-radius:14px;padding:13px 34px;
  background:linear-gradient(180deg,#565948,#3f4136);box-shadow:0 6px 16px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.12)}
.lg-links{display:flex;justify-content:center;gap:34px;font-size:15.5px;color:var(--creme)}
.lg-links a{color:var(--creme);text-decoration:none}
.lg-links a:hover{text-decoration:underline}
.lg-lembrar{display:flex;align-items:center;gap:8px;font-weight:300;font-size:15.5px;color:var(--creme);margin:0}
.lg-lembrar input{width:16px;height:16px;min-height:0;accent-color:var(--creme)}
.lg-cadastro{text-align:center;color:var(--creme-dim);font-size:13px;margin:18px 0 0}
.lg-cadastro a{color:var(--creme);font-weight:500}
.lg-rodape{display:flex;justify-content:center;gap:56px;flex-wrap:wrap;padding:18px 10px 26px;border-top:1px solid rgba(239,230,200,.18);color:var(--creme)}
.lg-rodape span{display:flex;align-items:center;gap:10px;font-size:14.5px}
.lg-rodape i{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1.4px solid rgba(239,230,200,.55)}
.lg-rodape svg{width:18px;height:18px}
@media(max-width:860px){
  .lg-meio{flex-direction:column;gap:28px;padding:22px 0}
  .lg-chamada{text-align:center;order:2}
  .lg-cartao{order:1;padding:28px 24px}
  .lg-rodape{gap:18px}
  .lg-rodape span{font-size:12.5px}
  .lg-rodape i{width:28px;height:28px}
}


/* ===== Logo na barra e efeitos de navegação (aero) ===== */
.marca-logo{display:flex;align-items:center;padding:2px 0}
.marca-logo img{height:34px;width:auto;filter:drop-shadow(0 2px 5px rgba(0,0,0,.3));transition:transform .25s}
.marca-logo:hover img{transform:scale(1.06)}
@keyframes lgentrar{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
@keyframes subir{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.conteudo > *{animation:subir .45s ease both}
.conteudo > *:nth-child(2){animation-delay:.05s}
.conteudo > *:nth-child(3){animation-delay:.1s}
.conteudo > *:nth-child(4){animation-delay:.15s}
.conteudo > *:nth-child(5){animation-delay:.2s}
.conteudo > *:nth-child(n+6){animation-delay:.25s}
.grade .kpi{animation:subir .5s ease both}
.grade .kpi:nth-child(2){animation-delay:.06s}.grade .kpi:nth-child(3){animation-delay:.12s}
.grade .kpi:nth-child(4){animation-delay:.18s}.grade .kpi:nth-child(5){animation-delay:.24s}
.grade .kpi:nth-child(n+6){animation-delay:.3s}
.topo a{position:relative}
.topo a::after{content:'';position:absolute;left:12px;right:12px;bottom:2px;height:2px;border-radius:2px;background:var(--creme);transform:scaleX(0);transition:transform .25s ease}
.topo a:hover::after{transform:scaleX(1)}
button:active,.botao:active{transform:translateY(1px) scale(.98)}
.cartao,.kpi,input,select,button,.botao{will-change:transform}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){
  .conteudo > *, .grade .kpi, .lg-logo{animation:none}
  html{scroll-behavior:auto}
}

/* ===== Agenda / Calendário ===== */
.ag-topo-pagina{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.ag-ferramentas{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ag-ferramentas select,.ag-ferramentas input{min-height:38px;padding:7px 14px}
.ag-ferramentas .ativa{background:var(--laranja);color:#4a2c00;border-color:transparent}
.ag-layout{display:grid;grid-template-columns:280px 1fr;gap:16px;align-items:start}
.ag-lateral{position:sticky;top:74px}
body.ag-cheia .topo,body.ag-cheia .ag-lateral{display:none}
body.ag-cheia .ag-layout{grid-template-columns:1fr}
.cal-cab{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.cal-grade{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
.cal-dia-sem{font-size:10px;color:var(--creme-dim);padding:4px 0}
.cal-dia{background:transparent;border:0;border-radius:8px;color:var(--creme);padding:6px 0;min-height:30px;font-size:12.5px;cursor:pointer}
.cal-dia:hover{background:rgba(239,230,200,.15);transform:none}
.cal-dia.sel{background:var(--creme);color:var(--oliva-profundo);font-weight:600}
.ag-cat summary{cursor:pointer;font-size:12.5px;letter-spacing:1px;text-transform:uppercase;color:var(--creme-dim);padding:8px 0;display:flex;align-items:center;gap:8px}
.ag-cor{width:12px;height:12px;border-radius:4px;display:inline-block}
.ag-prof-item{display:flex;align-items:center;gap:8px;font-size:14px;padding:5px 0 5px 20px;margin:0;color:var(--creme);font-weight:300}
.ag-prof-item input{width:15px;height:15px;min-height:0;accent-color:var(--creme)}
.ag-servico-item{font-size:13.5px;padding:4px 0;display:flex;justify-content:space-between;gap:8px}
.ag-form-mini{display:flex;gap:6px;margin-top:8px}
.ag-form-mini input{min-height:38px;padding:7px 12px;font-size:13px}
.ag-principal{padding:0;overflow:hidden}
.ag-grade-cab{display:grid;border-bottom:1px solid var(--borda);background:rgba(0,0,0,.12)}
.ag-prof-cab{display:flex;align-items:center;gap:8px;padding:10px 12px;color:#fff;font-size:13px;font-weight:500;border-left:1px solid rgba(255,255,255,.15)}
.ag-avatar{width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.25);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;overflow:hidden;flex:none}
.ag-avatar img{width:100%;height:100%;object-fit:cover}
.ag-grade-rolagem{max-height:70vh;overflow-y:auto}
.ag-grade{display:grid}
.ag-hcol{position:relative;border-right:1px solid var(--borda)}
.ag-hora{font-size:10.5px;color:var(--creme-dim);padding:2px 6px;border-bottom:1px dashed rgba(239,230,200,.12);display:flex;align-items:flex-start}
.ag-coluna{position:relative;border-right:1px solid rgba(239,230,200,.10)}
.ag-celula{position:absolute;left:0;right:0;border-bottom:1px dashed rgba(239,230,200,.10);cursor:pointer;transition:background .15s}
.ag-celula:hover{background:rgba(239,230,200,.10)}
body.ag-modo-bloqueio .ag-celula:hover{background:rgba(255,171,47,.25)}
.ag-bloco{position:absolute;left:3px;right:3px;border-radius:10px;color:#fff;padding:4px 8px;font-size:11.5px;line-height:1.3;overflow:hidden;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.3);transition:transform .15s, box-shadow .15s;z-index:2}
.ag-bloco:hover{transform:scale(1.02);box-shadow:0 8px 20px rgba(0,0,0,.4);z-index:3}
.ag-bloco strong{display:block;font-size:12px}
.ag-bloco span{opacity:.9}
.ag-tag{display:inline-block;border-radius:8px;padding:0 6px;font-size:9.5px;font-style:normal;margin-top:2px;color:#fff}
.ag-bloqueio{position:absolute;left:3px;right:3px;border-radius:10px;background:repeating-linear-gradient(45deg,rgba(120,120,120,.5),rgba(120,120,120,.5) 8px,rgba(90,90,90,.5) 8px,rgba(90,90,90,.5) 16px);color:#eee;font-size:11px;padding:4px 8px;z-index:1}
.ag-x{position:absolute;top:2px;right:4px;background:none;border:0;color:#fff;cursor:pointer;font-size:11px;padding:2px;min-height:0}
.ag-linha-cliente{display:flex;gap:8px}
.ag-form-cliente{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:8px;background:rgba(255,255,255,.06);border:1px solid var(--borda);border-radius:14px;padding:10px 14px 14px}
.ag-cliente-cartao{background:rgba(255,255,255,.08);border:1px solid var(--borda);border-radius:14px;padding:10px 14px;margin-bottom:10px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.ag-cliente-cartao span{color:var(--creme-dim);font-size:13px}
.ag-itens-cab,.ag-item{display:grid;grid-template-columns:1.4fr 1.2fr 70px 100px 90px 90px 34px;gap:6px;align-items:center}
.ag-itens-cab{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--creme-dim);margin-bottom:4px}
.ag-item{margin-bottom:6px}
.ag-item input,.ag-item select{min-height:40px;padding:6px 10px;font-size:13px}
.ag-rodape-modal{display:flex;justify-content:space-between;align-items:center;margin:10px 0;flex-wrap:wrap;gap:10px}
.ag-total{font-size:15px}
.ag-abas{display:flex;gap:6px;margin-bottom:14px}
.ag-abas .ativa{background:var(--creme);color:var(--oliva-profundo)}
.ag-status{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.ag-status button{background:var(--c);border-color:transparent;color:#fff;padding:8px 14px;font-size:11px;opacity:.55;min-height:36px}
.ag-status button.ativa{opacity:1;box-shadow:0 0 0 2px var(--creme)}
.ag-etiquetas{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.ag-et{background:var(--c);border-color:transparent;color:#fff;padding:6px 10px;font-size:11px;opacity:.6;min-height:32px;border-radius:16px}
.ag-et.ativa{opacity:1;box-shadow:0 0 0 2px var(--creme)}
.ag-et span{margin-left:6px;opacity:.8}
@media(max-width:900px){
  .ag-layout{grid-template-columns:1fr}
  .ag-lateral{position:static;order:2}
  .ag-grade-rolagem{max-height:60vh}
  .ag-itens-cab{display:none}
  .ag-item{grid-template-columns:1fr 1fr;grid-auto-rows:auto}
  .ag-form-cliente{grid-template-columns:1fr 1fr}
}

/* Agenda — melhorias */
.ag-form-servico input,.ag-form-servico select{min-height:40px;padding:7px 12px;font-size:13px}
.ag-servico-item{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 0;border-bottom:1px dashed rgba(239,230,200,.14);font-size:13.5px}
.ag-aniver{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;border-radius:12px;margin-bottom:6px;background:rgba(255,255,255,.06);font-size:13px}
.ag-aniver.hoje{background:rgba(255,171,47,.2);border:1px solid rgba(255,171,47,.4)}
.ag-lembrete{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 4px;border-bottom:1px solid rgba(239,230,200,.14);font-size:14px}
.ag-alerta-falta{display:block;width:100%;background:rgba(255,171,47,.18);border:1px solid rgba(255,171,47,.45);color:#FFD9A6;border-radius:10px;padding:6px 10px;font-size:12.5px}
.ag-celula.ag-solta{background:rgba(141,222,154,.25)!important;outline:2px dashed var(--ok);outline-offset:-2px}
.ag-bloco[draggable=true]{cursor:grab}
.ag-bloco[draggable=true]:active{cursor:grabbing}
#ical-url{font-family:ui-monospace,monospace}

/* Agenda: jornada e comanda */
.ag-fora{position:absolute;left:0;right:0;background:repeating-linear-gradient(45deg,rgba(0,0,0,.16),rgba(0,0,0,.16) 6px,rgba(0,0,0,.08) 6px,rgba(0,0,0,.08) 12px);pointer-events:none;z-index:0}
.ag-zap-grupo{display:flex;gap:6px;flex-wrap:wrap}
.ag-zap{background:#1FA855!important;border-color:transparent!important}

/* ===== Hub de entrada (3 botões) ===== */
.hub{min-height:calc(100vh - 140px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px 0}
.hub-logo{width:150px;height:auto;margin-bottom:6px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.35))}
.hub-ola{margin:6px 0 30px}
.hub-botoes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;width:100%;max-width:920px}
.hub-botao{display:flex;flex-direction:column;align-items:center;gap:10px;text-decoration:none;color:var(--creme);
  background:var(--vidro-forte);backdrop-filter:blur(16px);border:1px solid var(--borda);border-radius:24px;padding:34px 24px;
  box-shadow:0 14px 40px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.12);transition:transform .25s, box-shadow .25s, border-color .25s}
.hub-botao:hover{transform:translateY(-6px);border-color:var(--creme);box-shadow:0 0 50px rgba(239,230,200,.18),0 22px 55px rgba(0,0,0,.35)}
.hub-icone{font-size:44px;line-height:1}
.hub-botao strong{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:24px;font-weight:600}
.hub-botao small{color:var(--creme-dim);font-size:12.5px;line-height:1.55;font-weight:300}
@media(max-width:760px){.hub-botoes{grid-template-columns:1fr}.hub{min-height:auto;padding:10px 0 30px}}

/* Nome do salão na barra, no estilo da marca */
.marca-nome{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:600;font-size:19px;color:var(--creme);
  border-left:1px solid rgba(239,230,200,.3);padding-left:16px;margin-left:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px}
.link-inicio{border:1px solid var(--borda);border-radius:20px}
@media(max-width:760px){.marca-nome{font-size:16px;max-width:150px}}

/* Barra superior em duas linhas: identidade + usuário em cima, menu embaixo */
.topo{flex-direction:column;align-items:stretch;gap:8px;padding:10px 24px}
.topo-linha{display:flex;align-items:center;gap:14px;width:100%}
.topo-linha .sair{margin-left:auto}
.topo .links{margin-left:0;padding-top:2px;border-top:1px solid rgba(239,230,200,.12)}
@media(max-width:760px){
  .topo{padding:10px 14px}
  .topo-linha{flex-wrap:wrap}
  .menu-btn{margin-left:0;width:100%;text-align:left}
}
