/* Agenda Renuve: verde-sálvia clínico, leitura rápida na recepção */
[hidden]{display:none!important}
:root{
  --bg:#f4f6f4; --card:#ffffff; --fg:#1d2522; --muted:#5f6c66; --line:#dbe2de;
  --accent:#2f6f5e; --accent-fg:#ffffff; --accent-soft:#e1efe9;
  --ok:#2f7a4a; --ok-soft:#e2f2e7; --warn:#a85d16; --warn-soft:#f8ead9; --bad:#b03636; --bad-soft:#f6e0e0;
  --info:#3d5fa8; --info-soft:#e3e9f7; --off:#8b9690; --off-soft:#eceeed;
  --sans:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --radius:10px;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#121715; --card:#1a211e; --fg:#e5ebe8; --muted:#9aa7a1; --line:#2c3632;
  --accent:#78c2a9; --accent-fg:#0d1512; --accent-soft:#1e3a31;
  --ok:#7fcf9a; --ok-soft:#1d3426; --warn:#e3a066; --warn-soft:#3a2a1b; --bad:#ec8a8a; --bad-soft:#3d2222;
  --info:#93adf0; --info-soft:#1f2a45; --off:#7d8883; --off-soft:#232a27; color-scheme:dark}}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.5 var(--sans)}
a{color:var(--accent)}
h1{font-size:22px;margin:0 0 12px} h2{font-size:17px;margin:20px 0 8px} h3{font-size:15px;margin:0 0 8px}
main{max-width:1240px;margin:0 auto;padding:20px 16px 60px}
main.centro{min-height:80vh;display:grid;place-items:center}
.suave{color:var(--muted)} .pequeno{font-size:13px} .vazio{color:var(--muted);font-size:13px}
.topo{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:10px 16px;background:var(--card);border-bottom:1px solid var(--line)}
.marca{font-weight:700;text-decoration:none;color:var(--fg)} .marca span{color:var(--accent);font-weight:500}
.topo nav{display:flex;flex-wrap:wrap;gap:4px 14px;flex:1} .topo nav a{text-decoration:none;color:var(--fg)} .topo nav a:hover{color:var(--accent)}
.sair{display:flex;align-items:center;gap:10px}.quem{color:var(--muted);font-size:13px}
.cartao{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:10px;min-width:0}
.estreito{width:min(100%,380px)} .medio{max-width:760px;margin:0 auto}
label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}
label.check{flex-direction:row;align-items:center}
input,select,textarea{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-width:0}
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
input[type=checkbox]{width:18px;height:18px}
.curto{width:90px}
button,.botao{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:8px;padding:8px 14px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.primario,button.primario{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}
.fraco{color:var(--muted)}
button.link{border:0;background:none;color:var(--accent);padding:2px 4px}
.aviso{padding:10px 12px;border-radius:8px;margin:0} .aviso.erro{background:var(--bad-soft);color:var(--bad)} .aviso.ok{background:var(--ok-soft);color:var(--fg)}
fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:10px;margin:0}
legend{font-weight:600;padding:0 6px}
.duas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px}
.duas-colunas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:16px;align-items:start}
.acoes{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.barra{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:16px} .barra h1{margin:0;flex:1}
.navdia{display:flex;gap:6px;align-items:center} .inline{display:inline}
.filtros{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.destaque{font-size:17px} .destaque strong{font-size:26px;color:var(--accent)}
.colunas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px;align-items:start}
.coluna{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px;display:flex;flex-direction:column;gap:8px;min-width:0}
.coluna h2{margin:0;font-size:15px} .coluna header p{margin:2px 0 0}
.item{display:grid;grid-template-columns:1fr auto;gap:0 8px;padding:8px 10px;border-radius:8px;text-decoration:none;color:var(--fg);border-left:4px solid var(--accent);background:var(--accent-soft)}
.item .hora{font-weight:600;font-variant-numeric:tabular-nums} .item .nome{grid-column:1/-1;overflow-wrap:anywhere} .item .tipo{grid-column:1/-1;font-size:12px;color:var(--muted)}
.item .selo{grid-row:1;grid-column:2;font-size:11px}
.adicionar{font-size:13px;text-decoration:none;padding:4px 2px}
.st-confirmado{border-color:var(--info);background:var(--info-soft)} .st-atendido{border-color:var(--ok);background:var(--ok-soft)}
.st-faltou{border-color:var(--warn);background:var(--warn-soft)} .st-cancelado{border-color:var(--off);background:var(--off-soft);color:var(--muted)}
.item.st-cancelado .nome{text-decoration:line-through}
.selo{font-size:12px;padding:2px 8px;border-radius:999px;background:var(--accent-soft)}
.selo-grande{align-self:flex-start;margin:0;font-size:13px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--accent-soft);border-left:0}
.botoes-status{display:flex;flex-wrap:wrap;gap:8px}
.dados{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;margin:0} .dados dt{color:var(--muted)} .dados dd{margin:0;overflow-wrap:anywhere}
.historico{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;font-size:13px}
.tabela{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}
table{border-collapse:collapse;width:100%} th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
th{font-size:12px;color:var(--muted);font-weight:600} .num{text-align:right;font-variant-numeric:tabular-nums}
.editavel input,.editavel select{padding:6px 8px}
.grade-cartoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px}
.horarios td{padding:3px 4px;border:0;font-size:13px} .horarios input{padding:4px 6px}
.sugestoes{list-style:none;margin:-6px 0 0;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--card);max-height:240px;overflow:auto}
.sugestoes li button{width:100%;justify-content:flex-start;border:0;text-align:left}
.sugestoes li button:hover{background:var(--accent-soft)}
.escolhido{margin:0;padding:8px 10px;border-radius:8px;background:var(--accent-soft);display:flex;justify-content:space-between;gap:8px}
code{font-size:14px;background:var(--off-soft);padding:2px 6px;border-radius:4px}
.retornos{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.retorno{display:grid;grid-template-columns:90px minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:center}
.retorno .rotulo{font-size:13px;color:var(--muted)}
.retorno .aviso-linha{grid-column:2/-1;font-size:12px;color:var(--bad)}
@media (max-width:560px){.retorno{grid-template-columns:1fr 1fr}.retorno .rotulo{grid-column:1/-1}}
.serie{display:flex;flex-direction:column;gap:4px;font-size:13px;margin:0;padding:0;list-style:none}
.serie li.atual{font-weight:600}
.item .sessao{font-size:11px;color:var(--muted);grid-column:1/-1}
/* dashboard */
:root{--c1:#2f6f5e;--c2:#c2703d;--c3:#5b6ee1;--c4:#b8577e;--c5:#3f8f9e;--muted-bar:#c9d4cf}
@media (prefers-color-scheme:dark){:root{--c1:#78c2a9;--c2:#e09a66;--c3:#93a3f2;--c4:#e08aad;--c5:#7cc3cf;--muted-bar:#3f5149}}
.dash{display:flex;flex-direction:column;gap:16px}
.dash .barra{margin-bottom:0}
.filtros-dash{flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:12px 16px}
.segmentos{display:flex;flex-wrap:wrap;gap:4px;border:1px solid var(--line);border-radius:999px;padding:3px;align-self:center}
.segmentos label{flex-direction:row;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;color:var(--fg);cursor:pointer;font-size:14px}
.segmentos input{position:absolute;opacity:0;pointer-events:none}
.segmentos label:has(input:checked){background:var(--accent);color:var(--accent-fg)}
.segmentos label:has(input:focus-visible){outline:2px solid var(--accent)}
.destaque-periodo{margin:0;font-size:15px;color:var(--muted)}
.dash .aviso{background:var(--warn-soft);color:var(--fg)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:12px}
.kpi{gap:4px}.kpi strong{font-size:28px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.15}
.grade-dash{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:12px;align-items:start}
.dash h2{margin:0}
.barras{display:flex;flex-direction:column;gap:8px}
.barra-linha{display:grid;grid-template-columns:minmax(6rem,12rem) minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13px}
.barra-linha .nome{overflow-wrap:anywhere}
.trilho{display:flex;height:14px;border-radius:4px;overflow:hidden;background:var(--off-soft)}
.trilho .seg{height:100%}
.barra-linha .valor{font-variant-numeric:tabular-nums;white-space:nowrap}
.grafico{min-height:200px}
.barra-svg{fill:var(--c1)} .barra-svg:hover{opacity:.8}
.rot-svg{fill:var(--muted);font-size:11px;text-anchor:middle;font-family:var(--sans)}
/* filtro de período (atalhos + calendário) */
:root{--laranja:#e57e33;--laranja-hover:#d06c22;--laranja-fg:#ffffff}
@media (prefers-color-scheme:dark){:root{--laranja:#f08a3e;--laranja-hover:#ff9a50;--laranja-fg:#1a0f05}}
.filtro-periodo{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px}
.atalhos{display:flex;flex-wrap:wrap;gap:4px}
.chip{border:0;background:none;color:var(--muted);font-size:15px;font-weight:500;padding:8px 14px;border-radius:9px}
.chip:hover{color:var(--fg);background:var(--off-soft)}
.chip.ativo{background:var(--laranja);color:var(--laranja-fg)}
.separador{width:1px;height:28px;background:var(--line)}
.calendario{position:relative}
.botao-periodo{display:inline-flex;align-items:center;gap:10px;border:0;background:var(--laranja);color:var(--laranja-fg);font-size:15px;font-weight:600;padding:9px 16px;border-radius:9px}
.botao-periodo:hover{background:var(--laranja-hover)}
.botao-periodo.inativo{background:var(--off-soft);color:var(--fg)}
.pop-periodo{position:absolute;z-index:20;top:calc(100% + 8px);left:0;width:min(330px,calc(100vw - 32px));background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:14px;display:flex;flex-direction:column;gap:12px}
.pop-ano{display:flex;align-items:center;gap:8px}.pop-ano strong{flex:0 0 auto;min-width:3.5em;text-align:center}.pop-ano #d-ano-todo{margin-left:auto}
.grade-meses{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.grade-meses button{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:7px 4px;font-size:14px;text-transform:capitalize}
.grade-meses button:hover{border-color:var(--laranja)}
.grade-meses button.ativo{background:var(--laranja);color:var(--laranja-fg);border-color:var(--laranja)}
.grade-meses button:disabled{opacity:.4;cursor:default}
.pop-custom{border-top:1px solid var(--line);padding-top:10px;display:flex;flex-direction:column;gap:6px}
.pop-datas{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.pop-datas label{flex:1 1 110px}
.base-data{flex-direction:row;align-items:center;gap:6px;font-size:14px}
.base-data select{padding:6px 8px}
@media (max-width:640px){.separador{display:none}.pop-periodo{left:auto;right:0}}
/* menu lateral */
.topo{display:none}
.layout{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}
.lateral{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:18px;padding:20px 12px;background:var(--card);border-right:1px solid var(--line);overflow-y:auto}
.lateral>.marca{padding:0 10px;font-size:17px}
.menu{display:flex;flex-direction:column;gap:2px;flex:1}
.menu-grupo{margin:14px 10px 4px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.menu-grupo:first-child{margin-top:0}
.menu-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:var(--fg);text-decoration:none;font-size:15px}
.menu-item svg{flex:0 0 auto;color:var(--muted)}
.menu-item:hover{background:var(--off-soft)}
.menu-item.ativo{background:var(--accent-soft);color:var(--accent);font-weight:600}
.menu-item.ativo svg{color:var(--accent)}
.menu-rodape{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 10px 0;border-top:1px solid var(--line);font-size:13px}
.menu-rodape .quem{color:var(--muted);line-height:1.35}.menu-rodape .quem strong{color:var(--fg);font-weight:600}
.layout>main{max-width:1240px;width:100%;margin:0 auto}
.topo-movel{display:none}
.fundo-menu{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:39}
@media (max-width:860px){
  .layout{grid-template-columns:minmax(0,1fr)}
  .topo-movel{display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:30;padding:10px 14px;background:var(--card);border-bottom:1px solid var(--line)}
  .botao-menu{border:0;background:none;padding:6px;color:var(--fg)}
  .lateral{position:fixed;left:0;top:0;z-index:40;width:min(270px,82vw);transform:translateX(-100%);transition:transform .2s ease}
  .lateral.aberto{transform:none}
}
@media (prefers-reduced-motion:reduce){.lateral{transition:none}}
