/* Design System Ugarit — compartilhado entre todas as páginas */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}

:root{
  --bg:      #07090f;
  --surf:    #0d1017;
  --surf2:   #111620;
  --border:  #1a2030;
  --border2: #232d42;
  --txt:     #dde4f0;
  --txt2:    #6e7e9c;
  --txt3:    #404e66;
  --accent:  #00e5a0;
  --a2:      rgba(0,229,160,.1);
  --a3:      rgba(0,229,160,.05);
  --red:     #ff3f3f;
  --r2:      rgba(255,63,63,.1);
  --ylw:     #f5a200;
  --y2:      rgba(245,162,0,.1);
  --fd:      'Bricolage Grotesque',sans-serif;
  --fb:      'Inter',sans-serif;
  --r:       4px;
}

body{background:var(--bg);color:var(--txt);font-family:var(--fb);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}

/* Layout */
.layout{display:grid;grid-template-columns:220px 1fr;min-height:100vh}
@media(max-width:768px){.layout{grid-template-columns:1fr}}

/* Sidebar */
.sidebar{background:var(--surf);border-right:1px solid var(--border);padding:24px 0;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}
@media(max-width:768px){.sidebar{display:none}}
.logo{padding:0 20px 24px;border-bottom:1px solid var(--border);margin-bottom:16px}
.logo-t{font-family:var(--fd);font-size:17px;font-weight:800;letter-spacing:-.02em}
.logo-t span{color:var(--accent)}
.logo-s{font-size:11px;color:var(--txt3);margin-top:2px}
.nav-item{display:flex;align-items:center;gap:10px;padding:9px 20px;color:var(--txt2);text-decoration:none;font-size:13px;font-weight:500;border-left:2px solid transparent;transition:all .15s}
.nav-item:hover{color:var(--txt);background:var(--surf2)}
.nav-item.ativo{color:var(--accent);border-left-color:var(--accent);background:var(--a3)}
.nav-item svg{width:16px;height:16px;flex-shrink:0}
.nav-sep{height:1px;background:var(--border);margin:12px 20px}
.nav-label{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--txt3);padding:0 20px;margin:8px 0 4px}

/* Conteúdo */
.conteudo{padding:32px;overflow-x:hidden}
@media(max-width:768px){.conteudo{padding:20px}}

/* Cabeçalho de página */
.pg-head{margin-bottom:32px}
.pg-eye{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--txt3);margin-bottom:6px}
.pg-titulo{font-family:var(--fd);font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.03em;line-height:1.1}
.pg-sub{font-size:13px;color:var(--txt2);margin-top:6px}

/* Cards de métrica */
.metricas{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-bottom:28px}
.metrica{background:var(--surf);padding:20px 18px}
.metrica-v{font-family:var(--fd);font-size:clamp(1.4rem,2.5vw,2rem);font-weight:800;letter-spacing:-.04em;line-height:1;margin-bottom:5px}
.metrica-v--a{color:var(--accent)}
.metrica-v--r{color:var(--red)}
.metrica-v--y{color:var(--ylw)}
.metrica-l{font-size:12px;color:var(--txt3);line-height:1.4}

/* Tabelas */
.tabela-wrap{border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
table{width:100%;border-collapse:collapse}
thead th{background:var(--surf2);padding:11px 16px;text-align:left;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--txt3);border-bottom:1px solid var(--border)}
tbody tr{border-bottom:1px solid var(--border)}
tbody tr:last-child{border-bottom:none}
tbody tr:hover{background:var(--surf2)}
td{padding:12px 16px;font-size:13px;vertical-align:middle}

/* Badges de status */
.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:100px}
.badge--verde{background:var(--a2);color:var(--accent)}
.badge--vermelho{background:var(--r2);color:var(--red)}
.badge--amarelo{background:var(--y2);color:var(--ylw)}
.badge--cinza{background:var(--surf2);color:var(--txt3);border:1px solid var(--border)}
.badge::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}

/* Botões */
.btn{display:inline-flex;align-items:center;gap:7px;font-family:var(--fb);font-size:13px;font-weight:600;padding:9px 18px;border-radius:var(--r);cursor:pointer;border:none;text-decoration:none;transition:opacity .15s,transform .15s;white-space:nowrap}
.btn:hover{opacity:.85}
.btn:active{transform:scale(.97)}
.btn--p{background:var(--accent);color:var(--bg)}
.btn--s{background:transparent;color:var(--txt);border:1px solid var(--border)}
.btn--r{background:var(--r2);color:var(--red);border:1px solid var(--red)}
.btn svg{width:14px;height:14px}

/* Formulários */
.campo{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.campo label{font-size:12px;font-weight:600;color:var(--txt2)}
.campo input,.campo select,.campo textarea{background:var(--surf);border:1px solid var(--border);border-radius:var(--r);color:var(--txt);padding:9px 12px;font-size:13px;font-family:var(--fb);outline:none;transition:border-color .15s}
.campo input:focus,.campo select:focus,.campo textarea:focus{border-color:var(--accent)}
.campo textarea{resize:vertical;min-height:80px}

/* Modal */
.modal-overlay{position:fixed;inset:0;background:rgba(7,9,15,.85);z-index:100;display:none;align-items:center;justify-content:center;padding:20px}
.modal-overlay.aberto{display:flex}
.modal{background:var(--surf);border:1px solid var(--border);border-radius:var(--r);padding:32px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}
.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.modal-titulo{font-family:var(--fd);font-size:1.1rem;font-weight:700;letter-spacing:-.02em}
.modal-fechar{background:none;border:none;color:var(--txt3);cursor:pointer;font-size:18px;line-height:1}
.modal-fechar:hover{color:var(--txt)}
.modal-acoes{display:flex;gap:10px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}

/* Utilitários */
.flex{display:flex}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}
.items-center{align-items:center}.justify-between{justify-content:space-between}
.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.mb-32{margin-bottom:32px}
.txt2{color:var(--txt2)}.txt3{color:var(--txt3)}
.fw-700{font-weight:700}
.w-full{width:100%}
.empty{text-align:center;padding:48px;color:var(--txt3);font-size:13px}

/* Scrollbar */
::-webkit-scrollbar{width:3px;height:3px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}
