:root{--bg:#F3F6FA;--pn:#FFFFFF;--bd:#D9E2EE;--tx:#0F1B2D;--tx2:#566883;--ac:#0A8F96;--acf:#FFFFFF;--cr:#CF3A2E;--crb:#FCE3E0;--at:#B26E00;--atb:#FBEBC8;--in:#2468CF;--inb:#DEEAFF;--ok:#12935A;--okb:#D5F1E3;--ncb:#E6ECF4}
:root[data-theme="dark"]{--bg:#0E141C;--pn:#151D28;--bd:#243142;--tx:#E6EDF5;--tx2:#9AABC0;--ac:#35B7BE;--acf:#06262A;--cr:#FF8A80;--crb:#3A1B1A;--at:#F2B441;--atb:#3A2C0F;--in:#7FB0FF;--inb:#14284A;--ok:#4FD39B;--okb:#0F3326;--ncb:#202B3A;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tx);font:14px/1.5 Inter,"Segoe UI",system-ui,sans-serif}
h1,h2{font-family:"Space Grotesk","Segoe UI",system-ui,sans-serif;font-weight:600;margin:0}
h1{font-size:26px;margin-bottom:18px}h2{font-size:17px;margin-bottom:10px}
.topo{display:flex;align-items:center;gap:16px;flex-wrap:wrap;min-height:64px;background:var(--pn);border-bottom:1px solid var(--bd);padding:8px 22px}
.marca{display:flex;align-items:center;gap:10px;font:600 19px "Space Grotesk","Segoe UI",sans-serif}
.menu{display:flex;gap:4px;flex-wrap:wrap;flex-grow:1}
.menu a{color:var(--tx2);text-decoration:none;padding:20px 10px;border-bottom:2px solid transparent}
.menu a:hover{color:var(--tx)}.menu a.on{color:var(--ac);font-weight:600;border-bottom-color:var(--ac)}
.topo-dir{display:flex;align-items:center;gap:12px}
.empresa{font-size:13px;color:var(--tx2);border:1px solid var(--bd);border-radius:10px;padding:6px 12px}
.tema{background:transparent;border:1px solid var(--bd);border-radius:10px;padding:7px 9px;cursor:pointer;color:var(--tx2)}
.tema svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
:root:not([data-theme="dark"]) .lua,:root[data-theme="dark"] .sol{display:none}
.conteudo{max-width:1200px;margin:0 auto;padding:26px max(16px,env(safe-area-inset-left,0px)) 40px}
.cartao{background:var(--pn);border:1px solid var(--bd);border-radius:14px;padding:20px;margin-bottom:18px}
.cartao.estreito{max-width:380px;margin:40px auto;display:flex;flex-direction:column;gap:12px}
.cartao.destaque{border-color:var(--ac)}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-bottom:18px}
.grade2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
.kpi{margin:0}.rot{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--tx2);font-weight:500}
.num{font:600 32px "Space Grotesk","Segoe UI",sans-serif;margin-top:6px}.num.cr{color:var(--cr)}
.linha{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:11px 2px;border-bottom:1px solid var(--bd)}
.linha:last-child{border-bottom:0}.linha.cab{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--tx2);font-weight:600}
.linha>*{min-width:0}.nome{font-weight:600;flex-grow:1}
.sub{font-size:12.5px;color:var(--tx2)}.vazio{color:var(--tx2);margin:6px 0}
.mono{font-family:"JetBrains Mono",Consolas,monospace;font-size:13px;word-break:break-all;background:var(--ncb);border-radius:8px;padding:8px 10px;margin:6px 0}
.pill{font-size:11.5px;font-weight:600;padding:3px 10px;border-radius:99px;white-space:nowrap}
.pill.cr{background:var(--crb);color:var(--cr)}.pill.at{background:var(--atb);color:var(--at)}.pill.in{background:var(--inb);color:var(--in)}.pill.ok{background:var(--okb);color:var(--ok)}.pill.nc{background:var(--ncb);color:var(--tx2)}
.btn{border:0;border-radius:9px;padding:9px 16px;font:600 13px Inter,"Segoe UI",sans-serif;cursor:pointer;white-space:nowrap}
a.btn{text-decoration:none;display:inline-block}
.bp{background:var(--ac);color:var(--acf)}.bg{background:transparent;color:var(--tx);border:1px solid var(--bd)}.bd{background:var(--crb);color:var(--cr)}
input{background:var(--bg);color:var(--tx);border:1px solid var(--bd);border-radius:9px;padding:9px 12px;font:inherit;min-width:0}
label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--tx2)}
.erro{color:var(--cr);margin:0}
:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
@media (max-width:640px){.topo{padding:8px 16px}.menu a{padding:10px 8px}}
