
:root{
--pine:#0c5b50;--pine-forte:#0a4b42;--ink:#0d2f2a;--ink-deep:#082722;--mint:#c7f36a;
--ground:#fdfcf9;--surface:#fdfcf9;--surface-2:#f2f1e9;--sidebar:#082722;
--texto:#0d2f2a;--texto-2:#5d6f6a;--texto-3:#8b9a95;--texto-side:#93aaa4;
--fio:rgba(13,47,42,.12);--fio-suave:rgba(13,47,42,.06);--fio-side:rgba(255,255,255,.09);
--erro:#a03c32;--erro-bg:#fbebe9;--atencao:#7a5410;--atencao-bg:#fbf1e0;--ok:#0c5b50;--ok-bg:rgba(12,91,80,.09);--info:#41618f;--info-bg:rgba(65,97,143,.11);
--acao-bg:#082722;--acao-txt:#ffffff;--r-g:12px;--r-m:9px;--r-p:6px;
--display:"Manrope","Segoe UI",system-ui,sans-serif;--corpo:"DM Sans","Segoe UI",system-ui,sans-serif;--mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
}
.escuro{--ground:#08201c;--surface:#08201c;--surface-2:#0f2c27;--sidebar:#05130f;--texto:#e4ede8;--texto-2:#93aaa3;--texto-3:#6d8781;--fio:rgba(255,255,255,.12);--fio-suave:rgba(255,255,255,.06);--pine:#7fd4bf;--pine-forte:#9ce3d0;--erro:#e79080;--erro-bg:rgba(160,60,50,.18);--atencao:#e0b463;--atencao-bg:rgba(122,84,16,.22);--ok:#8fd9b6;--ok-bg:rgba(143,217,182,.13);--info:#9db6dd;--info-bg:rgba(65,97,143,.24);--acao-bg:#c7f36a;--acao-txt:#06231f;}
*{box-sizing:border-box;}
body{margin:0;}
a{color:var(--pine);text-decoration:none;}
a:hover{color:var(--pine-forte);}
.app{display:grid;grid-template-columns:236px 1fr;background:var(--ground);color:var(--texto);font:400 16.5px/1.62 var(--corpo);-webkit-font-smoothing:antialiased;}
.lateral{background:var(--sidebar);display:flex;flex-direction:column;padding:22px 12px 18px;border-right:1px solid var(--fio-side);}
.marca{display:block;color:#fff;font:800 17px var(--display);letter-spacing:-.5px;padding:0 10px;}
.marca i{color:#c7f36a;font-style:normal;}
.marca span{display:block;margin-top:5px;font:700 9px var(--display);letter-spacing:1.6px;text-transform:uppercase;color:var(--mint);opacity:.85;}
.menu{display:flex;flex-direction:column;gap:1px;margin-top:26px;}
.menu a{position:relative;color:var(--texto-side);padding:9px 12px 9px 14px;border-radius:var(--r-p);font:600 13.5px var(--display);letter-spacing:-.1px;}
.menu a:hover{color:#d8e6e1;background:rgba(255,255,255,.04);}
.menu a.on{color:#fff;background:rgba(199,243,106,.07);}
.menu a.on::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:17px;border-radius:2px;background:var(--mint);}
.lateral-pe{margin-top:auto;padding:16px 12px 0;border-top:1px solid var(--fio-side);display:flex;flex-direction:column;gap:7px;}
.lateral-pe b{font:700 9px var(--display);letter-spacing:1.4px;text-transform:uppercase;color:var(--texto-3);}
.lateral-pe a{color:var(--texto-side);font:600 11.5px var(--display);letter-spacing:.2px;}
.lateral-pe a:hover{color:var(--mint);}
.quem{margin-top:10px;font-size:11.5px;line-height:1.5;color:var(--texto-side);}
.quem i{font-style:normal;display:block;margin-top:3px;color:var(--mint);text-transform:uppercase;font:700 9px var(--display);letter-spacing:1.1px;opacity:.8;}
.trabalho{min-width:0;display:flex;flex-direction:column;}
.cabecalho{display:flex;align-items:center;gap:16px;padding:22px 40px;border-bottom:1px solid var(--fio);}
.cabecalho h1{margin:0;font:800 24px var(--display);letter-spacing:-.7px;}
.cabecalho-acoes{margin-left:auto;display:flex;gap:8px;}
.conteudo{padding:8px 40px 40px;min-width:0;}
.rotulo{font:700 13px var(--display);letter-spacing:1.4px;text-transform:uppercase;color:var(--texto-2);margin:0 0 20px;}
.kpis{display:flex;flex-wrap:wrap;border-top:1px solid var(--fio);border-bottom:1px solid var(--fio);}
.kpi{flex:1 1 0;min-width:132px;border-left:1px solid var(--fio-suave);padding:20px 24px 22px;}
.kpi:first-child{border-left:0;padding-left:0;}
.kpi span{display:block;font:700 9.5px var(--display);letter-spacing:1.3px;text-transform:uppercase;color:var(--texto-3);}
.kpi strong{display:block;margin-top:7px;font:800 34px/1 var(--display);letter-spacing:-1.6px;font-variant-numeric:tabular-nums;}
.kpi em{font-style:normal;display:block;margin-top:6px;font-size:12.5px;color:var(--texto-3);}
.tabela{width:100%;border-collapse:collapse;font-size:15px;}
.tabela th{text-align:left;padding:0 14px 11px;border-bottom:1px solid var(--fio);font:700 10px var(--display);letter-spacing:1.2px;text-transform:uppercase;color:var(--texto-3);white-space:nowrap;}
.tabela td{padding:13px 14px;border-bottom:1px solid var(--fio-suave);vertical-align:middle;}
.tabela th:first-child,.tabela td:first-child{padding-left:0;}
.tabela tbody tr:hover{background:var(--surface-2);}
.num{font-variant-numeric:tabular-nums;text-align:right;}
.marca-status{display:inline-block;padding:3px 9px;border-radius:99px;font:700 10px var(--display);letter-spacing:.7px;text-transform:uppercase;white-space:nowrap;}
.s-ok{background:var(--ok-bg);color:var(--ok);}
.s-neutro{background:var(--fio-suave);color:var(--texto-2);}
.s-atencao{background:var(--atencao-bg);color:var(--atencao);}
.s-info{background:var(--info-bg);color:var(--info);}
.s-erro{background:var(--erro-bg);color:var(--erro);}
.botao{display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:var(--r-m);border:1px solid var(--fio);background:var(--surface);color:var(--texto);font:700 14px var(--display);letter-spacing:-.1px;white-space:nowrap;cursor:pointer;}
.botao:hover{border-color:var(--pine);color:var(--pine);}
.botao-primario{background:var(--acao-bg);border-color:var(--acao-bg);color:var(--acao-txt);}
.botao-primario:hover{color:var(--acao-txt);}
.botao-mini{padding:5px 10px;font-size:11.5px;border-radius:var(--r-p);}
.campo{width:100%;padding:9px 12px;border:1px solid var(--fio);border-radius:var(--r-m);background:var(--surface);color:var(--texto);font:400 15.5px/1.5 var(--corpo);}
.campo-mini{padding:7px 10px;font-size:14px;}
.rot{display:block;margin-bottom:6px;font:700 12.5px var(--display);letter-spacing:.5px;text-transform:uppercase;color:var(--texto-2);}
.aviso{padding:3px 0 3px 15px;border-left:2px solid currentColor;font-size:15px;line-height:1.55;}
.a-atencao{color:var(--atencao);}
.a-ok{color:var(--ok);}
.a-erro{color:var(--erro);}
.a-info{color:var(--info);}
.secao{border-top:1px solid var(--fio);padding:30px 0 4px;}
.nota{color:var(--texto-2);font-size:15px;margin:8px 0;}
.mono{font:500 12.5px var(--mono);}
.medidor{height:6px;border-radius:99px;background:var(--fio-suave);overflow:hidden;}
.medidor i{display:block;height:100%;border-radius:99px;background:var(--pine);}
.regra{display:flex;gap:9px;align-items:center;padding:12px 0;border-top:1px solid var(--fio-suave);}
.no{border:1px solid var(--fio);border-radius:var(--r-m);background:var(--surface);padding:12px 14px;box-shadow:0 1px 2px rgba(8,39,34,.04);}
.no b{display:block;font:700 13.5px var(--display);letter-spacing:-.2px;}
.no span{display:block;margin-top:3px;font-size:12.5px;color:var(--texto-2);}
.linha{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid var(--fio-suave);font-size:14.5px;}
.chave{display:inline-block;padding:2px 8px;border-radius:var(--r-p);background:var(--surface-2);font:500 12.5px var(--mono);}

@media (prefers-color-scheme: dark){:root{--ground:#08201c;--surface:#08201c;--surface-2:#0f2c27;--sidebar:#05130f;--texto:#e4ede8;--texto-2:#93aaa3;--texto-3:#6d8781;--fio:rgba(255,255,255,.12);--fio-suave:rgba(255,255,255,.06);--pine:#7fd4bf;--pine-forte:#9ce3d0;--erro:#e79080;--erro-bg:rgba(160,60,50,.18);--atencao:#e0b463;--atencao-bg:rgba(122,84,16,.22);--ok:#8fd9b6;--ok-bg:rgba(143,217,182,.13);--info:#9db6dd;--info-bg:rgba(65,97,143,.24);--acao-bg:#c7f36a;--acao-txt:#06231f;}}
@media (max-width: 1100px){
  .app{grid-template-columns:1fr;}
  .lateral{position:static;height:auto;}
  .menu{flex-direction:row;flex-wrap:wrap;}
  .cabecalho,.conteudo{padding-left:22px;padding-right:22px;}
}
.fonte{display:inline-flex;align-items:center;gap:5px;font:700 9px var(--display);letter-spacing:1.1px;text-transform:uppercase;white-space:nowrap;}
.fonte::before{content:"";width:5px;height:5px;border-radius:99px;background:currentColor;flex:0 0 auto;}
.f-real{color:var(--ok);}
.f-parcial{color:var(--info);}
.f-sem{color:var(--texto-3);}
.kpi .fonte{margin-top:6px;}
.etiqueta-id{display:inline-block;font:500 11px var(--mono);color:var(--texto-3);background:var(--fio-suave);border-radius:4px;padding:1px 5px;letter-spacing:.2px;vertical-align:middle;}
a:hover .etiqueta-id{color:var(--pine);}
