/* Mirante — design system compartilhado da suíte TOTVS */
:root{
  --bg:#0d1117; --panel:#161b22; --panel2:#1c232e; --line:#283041; --txt:#e6edf3;
  --muted:#8b96a5; --ac:#4f8cff; --ok:#3fb950; --danger:#f0623a; --warn:#d6a323;
}
/* skin pERPetuar Sistemas — navy + dourado + ciano */
html[data-skin="perpetuar"]{
  --bg:#0a1a2e; --panel:#112742; --panel2:#16314f; --line:#23436b;
  --txt:#eaf2fb; --muted:#8da6c4; --ac:#f0b429;
}
html[data-skin="perpetuar"] .topnav{background:rgba(10,26,46,.92)}
.brandsmall{font-weight:600;letter-spacing:.12em;font-size:11px;color:var(--muted);text-transform:uppercase;margin-left:2px}
.topnav select.skinsel{background:var(--bg);color:var(--muted);border:1px solid var(--line);border-radius:7px;padding:7px 10px;font-size:12px;cursor:pointer}
@media print{.skinsel{display:none!important}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--txt);
  font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:1060px;margin:0 auto;padding:36px 24px 64px}

/* top nav */
.topnav{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;
  padding:13px 24px;background:rgba(13,17,23,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.topnav .brand{font-weight:700;color:#fff;text-decoration:none;letter-spacing:-.01em;font-size:16px}
.topnav .brand span{color:var(--ac)}
.topnav .crumb{color:var(--muted);font-size:14px}
.topnav .sp{margin-left:auto}
.topnav a.act{color:var(--muted);text-decoration:none;font-size:13px;border:1px solid var(--line);
  padding:7px 12px;border-radius:7px}
.topnav a.act:hover{color:var(--txt);border-color:var(--muted)}

/* header */
header.page{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:28px}
.tag{display:inline-block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ac);
  border:1px solid var(--line);border-radius:999px;padding:4px 10px;margin-bottom:14px}
.tag.urgent{color:var(--danger);border-color:#52281f;background:#1c1310}
h1{font-size:24px;font-weight:600;margin:0;letter-spacing:-.01em}
.sub{color:var(--muted);font-size:14px;margin-top:6px;max-width:680px}
h2{font-size:15px;font-weight:600;margin:0 0 6px;text-transform:uppercase;letter-spacing:.06em}
.hint{color:var(--muted);font-size:12px;margin:0 0 16px}
section{margin-bottom:40px}

/* insight banner */
.insight{background:linear-gradient(180deg,#161b22,#12161d);border:1px solid var(--line);
  border-left:3px solid var(--ac);border-radius:10px;padding:16px 18px;margin-bottom:28px}
.insight.urgent{border-left-color:var(--danger)}
.insight .ititle{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ac);margin-bottom:6px}
.insight.urgent .ititle{color:var(--danger)}
.insight .itext{font-size:14px;line-height:1.55;color:var(--txt)}
.insight b{color:#fff;font-weight:600}

/* KPIs */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:36px}
.kpi{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px}
.kpi .lbl{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.kpi .val{font-size:24px;font-weight:600;margin-top:8px;letter-spacing:-.02em}
.kpi .ksub{font-size:11px;color:var(--muted);margin-top:4px}
.kpi.ok .val{color:var(--ok)} .kpi.danger .val{color:var(--danger)} .kpi.warn .val{color:var(--warn)}

/* tables */
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{padding:12px 14px;text-align:right;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
th{color:var(--muted);font-weight:500;text-transform:uppercase;font-size:11px;letter-spacing:.05em}
th:first-child,td:first-child{text-align:left}
.pos{color:var(--ok)} .neg{color:var(--danger)} .neu{color:var(--muted)}

/* badges */
.badge{display:inline-block;font-size:11px;padding:3px 9px;border-radius:999px;border:1px solid var(--line)}
.badge.ok{color:var(--ok);border-color:#1c3a25;background:#0f1c14}
.badge.warn{color:var(--warn);border-color:#3a3115;background:#1b1809}
.badge.bad{color:var(--danger);border-color:#52281f;background:#1c1310}

/* horizontal bars */
.bar-row{display:flex;align-items:center;gap:14px;margin:8px 0}
.bar-row .name{width:230px;font-size:14px;flex:none}
.bar-track{flex:1;background:#0a0e14;border-radius:6px;height:24px;overflow:hidden}
.bar-fill{height:100%;border-radius:6px;min-width:2px;transition:width .6s ease;
  background:linear-gradient(90deg,var(--danger),#ff8a5b)}
.bar-fill.ok{background:linear-gradient(90deg,#2c8f43,var(--ok))}
.bar-row .v{width:120px;text-align:right;color:var(--muted);font-size:14px;flex:none;font-variant-numeric:tabular-nums}

/* button + footer */
.btn{flex:none;background:var(--ac);color:#fff;border:0;border-radius:8px;padding:10px 16px;
  font-size:13px;font-weight:600;cursor:pointer;transition:filter .15s;text-decoration:none;display:inline-block}
.btn:hover{filter:brightness(1.1)}
.hrow{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
footer{color:var(--muted);font-size:12px;border-top:1px solid var(--line);padding-top:18px;margin-top:8px}
.print-only{display:none}

@media print{
  @page{margin:14mm}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body{background:#fff;color:#0d1117}
  .topnav,.btn,.hint{display:none!important}
  .wrap{max-width:none;padding:0}
  .print-only{display:block;color:#555;font-size:12px;margin-top:10px}
  .kpi{background:#fff;border-color:#d0d7de}.kpi .val{color:#0d1117}
  .kpi.ok .val{color:#1a7f37}.kpi.danger .val{color:#b3401f}.kpi.warn .val{color:#9a7611}
  .insight{background:#fff!important;border-color:#d0d7de}.insight .itext,.insight b{color:#0d1117}
  h1,h2{color:#0d1117}
  .bar-track{background:#eef1f4}
  th,td{border-color:#e1e4e8}th{color:#555}
  .pos{color:#1a7f37!important}.neg{color:#b3401f!important}
  section,tr{break-inside:avoid}
}
