/* ============================================================================
   PKJ · A BARRA LATERAL DO PORTAL — peca unica, escopada em #pkjShell.
   Escopada de proposito: varios sistemas do grupo ja usam .side, .nav e .app
   para coisas deles. Nada aqui vaza para a pagina que hospeda.
   ============================================================================ */
#pkjShell{
  --pkj-panel:#ffffff; --pkj-panel2:#f7f8fa;
  --pkj-line:rgba(15,23,32,.14); --pkj-line2:rgba(15,23,32,.24);
  --pkj-ink:#1b2129; --pkj-soft:#57616e; --pkj-dim:#7b8593;
  --pkj-accent:#7d2528; --pkj-accent2:#9a3a3e;
  --pkj-sans:'Inter',system-ui,sans-serif; --pkj-disp:'Space Grotesk',var(--pkj-sans);
  --c-administrador:#A6484C;--c-financeiro:#c0392f;--c-rh:#d76b98;--c-prumo:#b07fd9;--c-transportes:#4f86d6;
  --c-quitanda:#9bb04a;--c-avaliacao:#7da7d9;--c-tarefas:#2ab0a6;--c-whatsapp:#25d366;--c-assinador:#e08a4a;
  --c-caderneta:#46c281;--c-jornada:#cf7d9e;--c-agenterh:#c2564f;--c-life:#cf6a43;--c-erp:#732326;
  --c-licitacao:#b5813f;--c-frota:#6f8fb5;--c-gestaofrota:#7f2429;--c-processos:#8a6fb5;--c-possocomprar:#1B7A43;
  --c-possocomprar_mesa:#A66A00;--c-contagem:#2c5f4a;--c-estoque:#9a6a2f;--c-ponto:#cf7d9e;
  display:grid; grid-template-columns:262px minmax(0,1fr); min-height:100vh;
}
#pkjShell .side{position:sticky;top:0;height:100vh;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:18px 13px;background:var(--pkj-panel);border-right:1px solid var(--pkj-line);font-family:var(--pkj-sans);font-size:14px;color:var(--pkj-ink);width:auto;min-width:0;transform:none;box-shadow:none;z-index:auto}
#pkjShell .side *{box-sizing:border-box}
#pkjShell .side a{text-decoration:none;color:inherit}
#pkjShell .brand{display:flex;align-items:center;gap:11px;padding:6px 8px 14px;background:none;border:0}
#pkjShell .brand .lg{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-family:var(--pkj-disp);font-weight:700;font-size:13px;color:#fff;background:linear-gradient(145deg,#9A3A3E,#732326);box-shadow:0 6px 18px rgba(115,35,38,.22)}
#pkjShell .brand .lg img{width:26px;height:26px;object-fit:contain;display:block}
#pkjShell .brand .nm{font-family:var(--pkj-disp);font-weight:700;font-size:15px;color:var(--pkj-ink);line-height:1.05}
#pkjShell .brand .sb{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--pkj-dim);margin-top:3px}
#pkjShell .nav{display:flex;align-items:center;gap:11px;padding:8.5px 11px;border-radius:10px;color:var(--pkj-soft);font-weight:500;font-size:13.5px;cursor:pointer;transition:.16s;position:relative;background:none;border:0;width:auto;text-align:left}
#pkjShell .nav svg{width:18px;height:18px;flex:0 0 18px}
#pkjShell .nav:hover{background:var(--pkj-panel2);color:var(--pkj-ink)}
#pkjShell .nav.on{background:linear-gradient(90deg,rgba(115,35,38,.10),rgba(115,35,38,.03));color:var(--pkj-accent);font-weight:600}
#pkjShell .nav.on svg{color:var(--pkj-accent)}
#pkjShell .nav.on::before{content:"";position:absolute;left:-13px;top:50%;transform:translateY(-50%);width:3px;height:20px;border-radius:0 3px 3px 0;background:var(--pkj-accent)}
#pkjShell .nav .dot{width:7px;height:7px;border-radius:50%;margin-left:auto;background:var(--mc)}
#pkjShell .navgrp{display:flex;flex-direction:column;margin-top:1px}
#pkjShell .navhd{display:flex;align-items:center;width:100%;background:none;border:0;cursor:pointer;font-family:var(--pkj-sans);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--pkj-dim);font-weight:700;padding:13px 10px 6px;transition:.16s}
#pkjShell .navhd:hover{color:var(--pkj-soft)}
#pkjShell .navhd .chev{width:13px;height:13px;margin-left:auto;transition:transform .18s;opacity:.55}
#pkjShell .navgrp.collapsed .navhd .chev{transform:rotate(-90deg)}
#pkjShell .navgrp.collapsed .navitems{display:none}
#pkjShell .navitems{display:flex;flex-direction:column;gap:2px}
#pkjShell .side .grow{flex:1}
#pkjShell .me{position:relative;display:flex;align-items:center;gap:11px;padding:10px;border-radius:13px;border:1px solid var(--pkj-line);background:var(--pkj-panel);margin-top:8px}
#pkjShell .me .av{position:relative;width:38px;height:38px;border-radius:11px;flex:0 0 38px;background:linear-gradient(145deg,#9A3A3E,#732326);display:grid;place-items:center;font-weight:700;color:#fff;font-size:14px;cursor:pointer}
#pkjShell .me .av .on{position:absolute;right:-2px;bottom:-2px;width:11px;height:11px;border-radius:50%;background:#2E7A58;border:2px solid var(--pkj-panel)}
#pkjShell .me .me-link{display:block;flex-direction:column;align-items:flex-start;gap:0;min-width:0;width:100%;background:none;border:0;padding:0;cursor:pointer;text-align:left;font:inherit;color:inherit}
#pkjShell .me .nm{font-weight:600;font-size:13px;color:var(--pkj-ink);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pkjShell .me .rl{font-size:11px;color:var(--pkj-soft);margin-top:2px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pkjShell .me .em{font-size:10px;color:var(--pkj-dim);margin-top:1px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pkjShell .me .out{margin-left:auto;color:var(--pkj-dim)}
#pkjShell .me .out svg{width:17px;height:17px}
#pkjShell .me .out:hover{color:var(--pkj-accent)}
#pkjShell .me:hover{border-color:var(--pkj-accent2)}
#pkjShell .me-link:hover .nm{color:var(--pkj-accent)}
#pkjShell .me-menu{position:absolute;left:8px;right:8px;bottom:calc(100% + 8px);background:var(--pkj-panel);border:1px solid var(--pkj-line);border-radius:12px;padding:6px;box-shadow:0 18px 40px rgba(15,23,32,.14);display:none;z-index:60}
#pkjShell .me-menu.on{display:block}
#pkjShell .me-menu a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;color:var(--pkj-soft);font-size:13px}
#pkjShell .me-menu a:hover{background:var(--pkj-panel2);color:var(--pkj-ink)}
#pkjShell .me-menu a svg{width:16px;height:16px;flex:0 0 16px}
#pkjShell .me-menu a b{display:block;font-weight:600;font-size:13px;color:var(--pkj-ink)}
#pkjShell .me-menu a small{display:block;font-size:10.5px;color:var(--pkj-dim);margin-top:1px}
#pkjShell .me-menu a.sai{border-top:1px solid var(--pkj-line);margin-top:4px;padding-top:10px;border-radius:0 0 9px 9px}
#pkjShell .sidemini{margin-top:6px;display:flex;align-items:center;justify-content:center;gap:8px;padding:7px;border-radius:9px;border:1px solid var(--pkj-line);background:none;color:var(--pkj-dim);cursor:pointer;font-family:var(--pkj-sans);font-size:11px}
#pkjShell .sidemini:hover{color:var(--pkj-accent);border-color:var(--pkj-accent2)}
#pkjShell .navback,#pkjShell .mob{display:none}

/* menu superior do sistema (a navegacao que era lateral) */
/* lateral recolhida — a escolha fica no navegador de cada pessoa */
body.side-mini #pkjShell{grid-template-columns:68px minmax(0,1fr)}
body.side-mini #pkjShell .side{padding:18px 9px;align-items:center}
body.side-mini #pkjShell .brand>div:last-child,
body.side-mini #pkjShell .nav>*:not(svg),
body.side-mini #pkjShell .navhd span,
body.side-mini #pkjShell .navhd .chev,
body.side-mini #pkjShell .me>*:not(.av),
body.side-mini #pkjShell .sidemini span{display:none}
body.side-mini #pkjShell .nav{justify-content:center;padding:9px}
body.side-mini #pkjShell .navgrp.collapsed .navitems{display:flex}
body.side-mini #pkjShell .navhd{padding:10px 0 4px;justify-content:center}
body.side-mini #pkjShell .me{justify-content:center;padding:8px}

/* a lateral do sistema hospedeiro, quando ele tinha uma, sai de cena */
#pkjShell [data-pkj-oculto]{display:none!important}

@media(max-width:820px){
  #pkjShell{grid-template-columns:1fr}
  #pkjShell .side{position:fixed;left:0;top:0;z-index:50;width:262px;transform:translateX(-110%);transition:.25s;box-shadow:0 0 60px rgba(15,23,32,.28)}
  #pkjShell .side.open{transform:none}
  #pkjShell .side.open+.navback{display:block;position:fixed;inset:0;z-index:49;border:0;background:rgba(15,23,32,.45);cursor:pointer}
  #pkjShell .mob{display:grid}
  body.portal-nav-open{overflow:hidden}
  body.side-mini #pkjShell{grid-template-columns:1fr}
}
