.stripe{height:3px;background:var(--stripe)}
.app{display:grid;grid-template-columns:var(--nav) minmax(0,1fr);min-height:calc(100vh - 3px)}
.nav{background:var(--card);border-right:1px solid var(--line);padding:16px 14px;display:flex;flex-direction:column;gap:14px;position:sticky;top:0;height:calc(100vh - 3px)}
.brand{display:flex;flex-direction:column;gap:4px;color:var(--brand-text);font-weight:700}
.brand img{height:28px;width:auto;max-width:100%}
.brand small{display:block;font-weight:400;color:var(--muted);font-size:12px}
body[data-emp="art"] .brand img{display:none}
body[data-emp="meno"] #brand-name{display:none}
.seg{display:flex;flex-direction:column;gap:4px}
.seg button{border:0;background:none;text-align:left;padding:8px 10px;border-radius:8px;color:var(--muted);font-weight:600;cursor:pointer;min-height:32px}
.seg button.ativa{background:var(--pri-soft);color:var(--brand-text)}
.menu{display:flex;flex-direction:column;gap:2px}
.menu a,.menu button.linknav{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:8px;text-decoration:none;color:var(--ink);font-weight:600;border:0;background:none;text-align:left;cursor:pointer;min-height:32px;width:100%}
.menu a.ativa,.menu button.linknav.ativa{background:var(--pri-soft);color:var(--brand-text)}
.menu .n{background:var(--warn);color:#fff;border-radius:999px;min-width:22px;text-align:center;font-size:12px;padding:1px 6px}
.nav-foot{margin-top:auto;display:flex;flex-direction:column;gap:6px}
.nav-foot button{text-align:left}
#menu-ferramentas{display:flex;flex-direction:column;gap:4px;padding:4px 0 8px}
body[data-emp="meno"] #menu-ferramentas{display:none}
.conteudo{padding:20px 28px 48px;min-width:0}
.topo{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.topo h1{margin:0;font-size:20px;font-weight:600;flex:1}
.aba-painel{display:none}
.aba-painel.ativa{display:block}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal .cab{text-align:center;font-size:12px;color:var(--muted);font-weight:600;padding:6px 0}
.cal button.dia{border:0;background:transparent;border-radius:8px;min-height:36px;cursor:pointer;color:var(--ink);font-weight:600}
.cal button.dia:hover{background:var(--pri-soft)}
.cal button.dia .ponto{display:block;width:6px;height:6px;border-radius:50%;margin:2px auto 0;background:transparent}
.cal button.dia.pend .ponto{background:var(--warn)}
.cal button.dia.ok .ponto{background:var(--ok)}
.cal button.dia.fora{color:var(--muted)}
.cal-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.filtros{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:8px}
.periodo{display:flex;align-items:center;gap:6px;margin:0;color:var(--muted);font-size:13px}
.passo-art{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.acoes-repasse{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.lista-acoes{margin:0;padding:0;list-style:none}
.lista-acoes li{padding:8px 0;border-bottom:1px solid var(--line-2)}
#nav-abrir{display:none}
@media (max-width:1024px){
  .app{grid-template-columns:1fr}
  .nav{position:fixed;z-index:25;transform:translateX(-105%);width:var(--nav);height:100vh}
  body.nav-aberta .nav{transform:none}
  #nav-abrir{display:inline-flex}
  .conteudo{padding:16px}
}
@media (max-width:600px){
  .passo-art{grid-template-columns:1fr}
}
