/* DFP Central — mesmo design system do site principal */
:root{--primario:#0064e0;--primario-claro:#3b8ef5;--tinta:#0b1220;--carvao:#3a4453;--pedra:#6b7787;
--linha:#e3e8ef;--superficie:#f6f8fb;--fundo:#fff;--verde:#1f9d55;--ambar:#b7791f;--roxo:#6b46c1;
--azul:#2b6cb0;--vermelho:#c53030;--sombra:0 1px 2px rgba(11,18,32,.06),0 8px 24px rgba(11,18,32,.06);
--r:20px;--pilula:100px;--e:24px;
--fonte:"Optimistic VF","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--fundo);color:var(--tinta);font-family:var(--fonte);line-height:1.6}
a{color:var(--primario)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--primario-claro);outline-offset:2px;border-radius:6px}
.pular{position:absolute;left:-9999px}
.pular:focus{left:16px;top:16px;background:#fff;padding:10px 14px;border:2px solid var(--primario);z-index:99}
.limite{max-width:1120px;margin:0 auto;padding:0 var(--e)}
.topo{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--linha)}
.topo .limite{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px var(--e)}
.marca{display:inline-flex;align-items:center;gap:10px;font-weight:650;text-decoration:none;color:var(--tinta)}
.marca-sinal{width:22px;height:22px;border-radius:7px;background:linear-gradient(135deg,var(--primario),#7c3aed)}
.topo nav{display:flex;gap:4px;flex-wrap:wrap}
.topo nav a{text-decoration:none;color:var(--carvao);font-size:15px;padding:8px 12px;border-radius:var(--pilula)}
.topo nav a:hover{background:var(--superficie);color:var(--tinta)}
.topo nav a[aria-current=page]{color:var(--primario);background:#eaf3ff;font-weight:600}
.heroi{position:relative;color:#eef3fb;background:radial-gradient(900px 460px at 12% -10%,#1b3a6b 0%,transparent 60%),radial-gradient(760px 380px at 88% 0%,#3b1d6b 0%,transparent 55%),linear-gradient(180deg,#0b1220,#0d1830)}
.heroi .limite{padding:64px var(--e) 72px}
.olho{text-transform:uppercase;letter-spacing:.12em;font-size:11.5px;font-weight:600;color:var(--pedra);margin:0 0 14px}
.heroi .olho{color:#8fb3e8}
h1{font-size:clamp(28px,4vw,46px);line-height:1.1;margin:0 0 16px;font-weight:600;letter-spacing:-.02em}
.heroi h1{color:#fff}
.lead{font-size:clamp(16px,1.9vw,19px);color:var(--carvao);max-width:70ch}
.heroi .lead{color:#c7d5ec}
.cabecalho{background:linear-gradient(180deg,#0b1220,#12203a);color:#eef3fb;padding:52px 0 44px;margin-bottom:26px}
.cabecalho h1{color:#fff}.cabecalho .lead{color:#c7d5ec}.cabecalho .olho{color:#8fb3e8}
.cabecalho a{color:#c7d5ec}
.titulo{font-size:clamp(20px,2.4vw,26px);font-weight:600;margin:44px 0 14px;letter-spacing:-.01em}
main{padding-bottom:64px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.kpi{background:#fff;border:1px solid var(--linha);border-radius:var(--r);padding:18px;box-shadow:var(--sombra)}
.kpi-n{font-size:clamp(24px,3vw,34px);font-weight:650;margin:0;letter-spacing:-.02em;background:linear-gradient(120deg,var(--primario),#7c3aed);-webkit-background-clip:text;background-clip:text;color:transparent}
.kpi-r{font-size:13px;color:var(--pedra);margin:4px 0 0}
.tabela-caixa{overflow-x:auto;border:1px solid var(--linha);border-radius:16px;margin:12px 0 8px;background:#fff}
.tabela{width:100%;border-collapse:collapse;font-size:14px}
.tabela th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--pedra);padding:12px 16px;border-bottom:1px solid var(--linha);background:var(--superficie)}
.tabela td{padding:12px 16px;border-bottom:1px solid var(--linha);vertical-align:top;color:var(--carvao)}
.tabela tr:last-child td{border-bottom:0}
.tabela a{text-decoration:none;font-weight:550;color:var(--tinta)}
.tabela a:hover{color:var(--primario);text-decoration:underline}
code{font-size:12.5px;background:var(--superficie);padding:2px 6px;border-radius:6px;color:var(--carvao)}
.selo{display:inline-block;font-size:11.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:var(--pilula);padding:4px 11px;border:1px solid transparent}
.selo.verde{color:#12673a;background:#e6f6ec;border-color:#bfe6cd}
.selo.azul{color:#1c4e80;background:#e8f1fb;border-color:#c5dbf2}
.selo.ambar{color:#8a5a10;background:#fdf3df;border-color:#f3ddb4}
.selo.roxo{color:#4b2f96;background:#f0ebfd;border-color:#d8ccf7}
.selo.vermelho{color:#8a1f1f;background:#fdeaea;border-color:#f5c6c6}
.selo.cinza{color:var(--carvao);background:var(--superficie);border-color:var(--linha)}
.filtros{display:flex;gap:10px;align-items:end;flex-wrap:wrap;background:var(--superficie);border:1px solid var(--linha);border-radius:16px;padding:14px;margin:0 0 14px}
.filtros label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--pedra)}
.filtros .busca{flex:1;min-width:220px}
.filtros input,.filtros select{font:inherit;font-size:14px;padding:9px 11px;border:1px solid #ced0d4;border-radius:10px;background:#fff}
.btn{display:inline-block;padding:10px 20px;border-radius:var(--pilula);background:var(--primario);color:#fff;text-decoration:none;font-weight:600;font-size:14px;border:1px solid transparent;cursor:pointer}
.btn:hover{background:#0457cb}
.btn.fantasma{border-color:var(--linha);color:var(--tinta);background:#fff}
.modulos{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}
.modulos li{background:#fff;border:1px solid var(--linha);border-radius:12px;padding:12px 14px;display:flex;justify-content:space-between;gap:10px;font-size:14px}
.modulos a{text-decoration:none;color:var(--tinta);font-weight:550}
.modo{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--pedra)}
.cartao{background:#fff;border:1px solid var(--linha);border-radius:var(--r);padding:22px;box-shadow:var(--sombra)}
.nota{font-size:13.5px;color:var(--pedra);margin-top:18px}
.vazio{color:var(--pedra);font-size:14px;background:var(--superficie);border:1px dashed var(--linha);border-radius:14px;padding:18px;margin:12px 0}
.rodape{margin-top:40px;background:#0b1220;color:#93a6c2;padding:28px 0;font-size:13px}
.rodape p{margin:4px 0}
@media(max-width:640px){:root{--e:16px}.heroi .limite{padding:44px var(--e) 52px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
