/* Gerencial — layout */
body.g{background:#f3f4f9}
.g-shell{display:grid;grid-template-columns:264px 1fr;min-height:100vh}
.g-side{background:linear-gradient(180deg,#0b1020 0%,#111936 100%);color:#cbd5e1;padding:1.1rem .9rem;position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column;gap:1rem}
.g-brand{display:flex;gap:.7rem;align-items:center;padding:.3rem .5rem 1rem;border-bottom:1px solid rgba(255,255,255,.08)}
.g-logo{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#6366f1,#22d3ee);display:grid;place-items:center;color:#fff;font-weight:800;box-shadow:0 8px 24px -8px #6366f1}
.g-brand b{color:#fff;font-size:1.05rem;letter-spacing:-.02em;display:block;line-height:1.1}.g-brand span{font-size:.72rem;color:#94a3b8}
.g-nav{display:flex;flex-direction:column;gap:2px}
.g-nav h6{margin:.9rem .6rem .3rem;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#64748b}
.g-nav a{display:flex;align-items:center;gap:.7rem;padding:.55rem .7rem;border-radius:10px;color:#cbd5e1;font-weight:600;font-size:.88rem;text-decoration:none}
.g-nav a:hover{background:rgba(255,255,255,.06);color:#fff}
.g-nav a.on{background:linear-gradient(90deg,rgba(99,102,241,.28),rgba(99,102,241,.08));color:#fff;box-shadow:inset 2px 0 0 #818cf8}
.g-nav .n{margin-left:auto;background:#6366f1;color:#fff;border-radius:999px;font-size:.68rem;padding:.05rem .45rem}
.g-side .who{margin-top:auto;padding:.8rem;border-radius:12px;background:rgba(255,255,255,.05);font-size:.82rem}
.g-side .who b{color:#fff;display:block}
.g-main{min-width:0}
.g-top{position:sticky;top:0;z-index:30;background:rgba(243,244,249,.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:.7rem 1.6rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.g-tabs{display:flex;background:#e8eaf3;border-radius:999px;padding:3px}
.g-tabs a{padding:.4rem 1rem;border-radius:999px;font-weight:700;font-size:.84rem;color:var(--muted);text-decoration:none}
.g-tabs a.on{background:#fff;color:var(--ink);box-shadow:var(--sh-1)}
.g-emp{font-weight:700;display:flex;gap:.5rem;align-items:center}
.g-actions{margin-left:auto;display:flex;gap:.5rem;flex-wrap:wrap}
.g-page{padding:1.6rem;max-width:1280px}
.g-title{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin-bottom:1.3rem}
.g-title h1{margin:0;font-size:1.6rem}.g-title p{margin:.2rem 0 0;color:var(--muted)}
.g-burger{display:none}
@media(max-width:980px){
  .g-shell{grid-template-columns:1fr}
  .g-side{position:fixed;left:0;top:0;bottom:0;width:272px;z-index:60;transform:translateX(-100%);transition:transform .25s}
  .g-side.on{transform:none;box-shadow:var(--sh-3)}
  .g-burger{display:inline-flex}.g-top{padding:.6rem 1rem}.g-page{padding:1rem}
  .g-actions .btn span{display:none}
}
/* métricas */
.kpi{padding:1.1rem 1.2rem;border-radius:var(--r);background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1);position:relative;overflow:hidden}
.kpi small{color:var(--muted);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}
.kpi b{display:block;font-size:1.75rem;letter-spacing:-.03em;margin:.2rem 0}.kpi span{font-size:.8rem;color:var(--muted)}
.kpi:after{content:"";position:absolute;right:-20px;top:-20px;width:90px;height:90px;border-radius:50%;background:var(--pri-50)}
.bar{height:10px;border-radius:99px;background:#eef0f7;overflow:hidden}.bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--pri),var(--sec))}
.login-wrap{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:#fff}
.login-hero{background:radial-gradient(1000px 500px at 20% 10%,#6366f1 0%,transparent 60%),radial-gradient(800px 500px at 90% 90%,#0ea5e9 0%,transparent 55%),#0b1020;color:#fff;padding:3rem;display:flex;flex-direction:column;justify-content:space-between}
.login-hero h1{font-size:2.4rem;max-width:14ch}.login-hero p{color:#c7d2fe;max-width:42ch}
.login-form{display:grid;place-items:center;padding:2rem}.login-form form{width:100%;max-width:380px}
@media(max-width:860px){.login-wrap{grid-template-columns:1fr}.login-hero{display:none}}
.tabs-in{display:flex;gap:.25rem;border-bottom:1px solid var(--line);margin-bottom:1.2rem;overflow:auto}
.tabs-in a{padding:.6rem 1rem;font-weight:700;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;text-decoration:none;font-size:.9rem}
.tabs-in a.on{color:var(--pri);border-color:var(--pri)}
.chk{display:flex;gap:.6rem;padding:.65rem .8rem;border-radius:10px;font-size:.88rem;align-items:flex-start}
.chk.erro{background:var(--err-bg);color:#9f1239}.chk.aviso{background:var(--warn-bg);color:#92400e}
