/* Ajustes deste sistema. Só tokens do padrão (var(--…)); nada de cor solta. */
.aa .tbl-proj th{white-space:normal;min-width:84px;vertical-align:bottom}
.aa .tbl-proj th.grp{text-align:center;background:var(--card);color:var(--ink);border-bottom:2px solid var(--ink)}
.aa .tbl-proj td:first-child,.aa .tbl-proj th:first-child{position:sticky;left:0;background:var(--card);z-index:1}
.aa .tbl-proj thead th:first-child{background:var(--soft)}
.aa .tbl-proj .unid{font-family:'Barlow Semi Condensed',sans-serif;font-weight:700;font-size:16px}
.aa .tbl-proj .um{display:block;font-size:12px;color:var(--muted)}
.aa .tbl-proj tr.tot td{font-weight:700;border-top:2px solid var(--ink)}
.aa tr.linha-erro td{background:var(--er-bg);color:var(--er-tx)}
.aa .col-nova{background:var(--opton)}
.aa .ok-tx{color:var(--ok-tx);font-weight:700}
.aa .er-tx{color:var(--er-tx);font-weight:700}
.aa .card-head h2{display:flex;align-items:center;gap:8px}
.aa .tbl-regras td select,.aa .tbl-regras td input{width:100%;min-width:130px;min-height:36px;padding:0 8px;border:1px solid var(--fieldline);border-radius:var(--r-sm);background:var(--card);color:var(--ink)}
.aa .tbl-regras tr.pend td{background:var(--al-bg)}
.aa .nota{font-size:13px;color:var(--muted);margin:0}
.aa .pastas{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.aa code{font-size:13px;background:var(--soft);border:1px solid var(--line2);border-radius:6px;padding:1px 6px}
.aa .tour ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px}
.aa .zap{width:100%;min-height:200px;padding:12px;border:1px solid var(--fieldline);border-radius:var(--r);background:var(--soft);color:var(--ink);font:13px/1.5 ui-monospace,Consolas,monospace}
.aa .tbl-proj tr.subtot td{background:var(--soft);font-weight:600}
.aa .filters .muted{align-self:center}
/* Mês e data da coleta no topo (administração) */
.aa .filtros-topo{display:flex;flex-wrap:wrap;gap:10px;align-items:center;min-width:0}
.aa .filtros-topo:empty{display:none}
.aa .filtros-topo .field{flex-direction:row;align-items:center;gap:8px;color:var(--muted)}
.aa .filtros-topo .field select,.aa .filtros-topo .field input{min-height:40px;font-size:14px;color:var(--ink)}
.aa .filtros-topo #fCorteManual{width:124px}
@media (max-width:640px){
  .aa .filtros-topo{order:3;width:100%}
  .aa .filtros-topo .field{flex:1 1 140px;flex-direction:column;align-items:stretch;gap:4px}
}
/* calendário da data da coleta (topo) */
.aa .data-coleta .btn-data{min-height:40px;gap:8px;font-variant-numeric:tabular-nums}
.aa .cal{left:0;right:auto;width:292px;padding:12px;gap:10px;text-transform:none;letter-spacing:0}
.aa .cal-topo{display:flex;align-items:center;justify-content:space-between;gap:8px}
.aa .cal-topo b{font-size:15px;color:var(--ink)}
.aa .cal-dias{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
.aa .cal-dias small{font-size:11px;color:var(--muted);padding:4px 0}
.aa .cal-dias button{min-height:36px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink);cursor:pointer;font-variant-numeric:tabular-nums}
.aa .cal-dias button:hover:not(:disabled){background:var(--soft)}
.aa .cal-dias button.hoje{box-shadow:inset 0 0 0 1px var(--acento)}
.aa .cal-dias button.on{background:var(--btn);color:#fff;font-weight:700}
.aa .cal-dias button:disabled{color:var(--muted);opacity:.45;cursor:not-allowed}
@media (max-width:640px){.aa .data-coleta .btn-data{width:100%;justify-content:flex-start}}
.aa .cal-dica{margin:0;font-size:12px;color:var(--muted)}
.aa .cal-dica b{color:var(--ink)}
.aa .cal-dias button.faixa{background:var(--opton);color:var(--ink)}
/* login (sempre escuro, como no padrão) */
.aa .login-msg{margin:0;font-size:13px;font-weight:600;color:var(--acento)}
.aa .login-msg.info{font-weight:400;color:var(--sidetxt)}
.aa .login-msg:empty{display:none}
/* leitura em andamento */
.aa .girando{width:28px;height:28px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--acento);animation:aa-gira .9s linear infinite}
@keyframes aa-gira{to{transform:rotate(360deg)}}
/* menus das colunas da tabela (ordenar, filtrar, ocultar), como no Excel */
.aa .tab-barra{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px}
.aa .pop-col,.aa .pop-colunas{text-transform:none;letter-spacing:0;font-weight:400;text-align:left;white-space:normal;color:var(--ink);max-height:min(420px,70vh);overflow-y:auto;z-index:60}
.aa .pop-colunas{right:0;left:auto;min-width:260px}
.aa .pop-col .chk,.aa .pop-colunas .chk{padding:2px 10px;min-height:32px}
.aa .pop-grupo{display:block;padding:8px 10px 2px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.aa .tbl-proj th .th-in{justify-content:flex-end}
.aa .tbl-proj th:first-child .th-in{justify-content:flex-start}
/* ajuste de largura das colunas (arrastar a borda do cabeçalho) e tabela compacta */
.aa .tbl-proj th{position:relative}
.aa .tbl-proj th:first-child{position:sticky}
.aa .th-larg{position:absolute;top:0;right:-4px;bottom:0;width:8px;cursor:col-resize;z-index:2}
.aa .th-larg:hover,.aa th.ajustando .th-larg{background:var(--acento);opacity:.5}
.aa .tbl-proj.compacta th,.aa .tbl-proj.compacta td{padding:6px 7px;font-size:12px}
.aa .tbl-proj.compacta th{min-width:56px;letter-spacing:.02em}
.aa .tbl-proj.compacta .unid{font-size:13px}
.aa .tbl-proj.compacta th{font-size:10.5px;letter-spacing:0;min-width:0;line-height:1.25}
.aa .tbl-proj.compacta .th-in{gap:3px}
.aa .tbl-proj.compacta .th-menu{height:18px;min-width:16px;padding:0 2px;font-size:10px}
.aa .tbl-proj.compacta td{font-size:12px;padding:6px 6px}
.aa .tbl-proj.compacta .chip{padding:2px 7px;font-size:11px}
/* menus de coluna e "Colunas": caixinha pequena à esquerda, nome ao lado (o padrão estica campos dentro de .pop) */
.aa .pop .chk{justify-content:flex-start;gap:10px;font-size:13px;color:var(--ink);text-align:left;white-space:normal}
.aa .pop .chk input{width:16px;height:16px;min-height:0;padding:0;margin:0;flex:none;border:0;background:none;accent-color:var(--acento)}
.aa .pop-colunas{width:280px}
/* título do quadro: ações à direita (Colunas ▾) */
.aa .card-acoes{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px;font-size:13px}
/* publicar para a diretoria: ícone do topo em destaque (ação principal da administração) */
.aa .icone.icone-publicar{background:var(--btn);border-color:var(--btn);color:#fff}
.aa .icone.icone-publicar:hover{background:var(--btnhover)}
/* faixa de vigência das regras (Regras e metas) */
.aa .vigencia{align-items:center;flex-wrap:wrap}
.aa .vig-lista{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
