:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#111827;background:#f4f6f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}.shell{min-height:100vh;display:grid;grid-template-columns:238px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:#12355b;color:#fff;padding:24px 16px;display:flex;flex-direction:column;z-index:5}.side-brand,.brand-lockup{display:flex;align-items:center;gap:11px}.side-brand>span,.brand-lockup>span{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#fff;color:#12355b;font-size:22px;font-weight:900}.side-brand b,.side-brand small,.brand-lockup b,.brand-lockup small{display:block}.side-brand small{color:#afc2d8}.subtitle{margin:28px 10px 10px;text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:#86a4c4}.sidebar nav{display:grid;gap:3px;overflow:auto}.sidebar nav button{border:0;background:transparent;color:#c5d2df;padding:9px 11px;border-radius:7px;display:flex;align-items:center;gap:10px;text-align:left;font-size:13px}.sidebar nav button:hover,.sidebar nav button.active{background:#fff;color:#12355b;font-weight:650}.user-card{margin-top:auto;border-top:1px solid #315577;padding:17px 4px 0;display:grid;grid-template-columns:34px 1fr 28px;gap:9px;align-items:center}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#2563eb;font-weight:800}.user-card b,.user-card small{display:block;font-size:11px}.user-card small{color:#a9bfd3;margin-top:3px}.user-card button{border:0;background:transparent;color:#c8d5e3}.workspace{grid-column:2;min-width:0}.topbar{position:sticky;top:0;height:82px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;padding:14px 30px;z-index:4}.topbar h1{font-size:20px;margin:0}.top-meta{display:flex;align-items:center;gap:10px;color:#6b7280;font-size:11px;margin-top:7px}.top-meta i{width:3px;height:3px;background:#9ca3af;border-radius:50%}.top-actions{display:flex;gap:10px;align-items:center}.global-search{border:1px solid #dfe3e8;background:#f8fafc;border-radius:7px;padding:8px 10px;display:flex;align-items:center;gap:7px}.global-search input{border:0;background:transparent;outline:0;width:180px;font-size:12px}.primary{border:0;background:#2563eb;color:#fff;border-radius:7px;padding:9px 14px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:650}.primary:disabled{opacity:.55}.wide{width:100%;padding:12px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.content{padding:24px 30px 34px}.stats{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:12px;margin-bottom:18px}.stats.six{grid-template-columns:repeat(6,1fr)}.stats.seven{grid-template-columns:repeat(7,1fr)}.stat{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:14px;display:flex;gap:11px;align-items:center;min-width:0}.stat-icon{width:34px;height:34px;border-radius:7px;background:#eaf1ff;color:#2563eb;display:grid;place-items:center;flex:0 0 auto}.stat-icon svg{width:17px}.stat.orange .stat-icon{background:#fff0e5;color:#f97316}.stat.red .stat-icon{background:#feecec;color:#dc2626}.stat.green .stat-icon{background:#e9f8ee;color:#16a34a}.stat.yellow .stat-icon{background:#fff9db;color:#a88000}.stat.gray .stat-icon{background:#f1f2f4;color:#6b7280}.stat small,.stat strong{display:block}.stat small{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.stat strong{font-size:21px;margin-top:2px}.stat p{font-size:10px;color:#6b7280;margin:2px 0}.panel,.table-wrap,.page-intro,.person-header,.history-meta,.export-page,.criteria section,.criteria article{background:#fff;border:1px solid #e5e7eb;border-radius:9px}.panel{padding:17px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.panel-head h2{font-size:14px;margin:0}.muted{font-size:11px;color:#9ca3af}.dashboard-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:14px}.dashboard-grid>.panel:last-child{grid-column:1/-1}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.portfolio-card{border:1px solid #e6e9ee;border-left:3px solid #2563eb;border-radius:7px;padding:12px}.portfolio-card span,.portfolio-card strong,.portfolio-card small{display:block}.portfolio-card span{font-size:11px;color:#6b7280}.portfolio-card strong{font-size:20px;margin:3px 0}.portfolio-card small{font-size:9px;color:#9ca3af}.compact-list>div,.setting-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #edf0f3;padding:9px 0;font-size:12px}.compact-list>div:last-child{border:0}.compact-list small,.compact-list b{display:block}.compact-list small{font-size:10px;color:#9ca3af;margin-top:3px}.source-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#9ca3af;margin-right:7px}.source-dot.Atualizado,.source-dot.Monitorado{background:#16a34a}.source-dot.Erro{background:#dc2626}.status{display:inline-block;border-radius:99px;padding:4px 8px;background:#eef1f5;color:#4b5563;font-size:10px;white-space:nowrap}.s-forte,.s-monitorado{background:#fff0dd;color:#b45309}.s-muito-forte,.s-erro{background:#fee2e2;color:#b91c1c}.s-baixo,.s-atualizado,.s-postgresql,.s-admin{background:#dcfce7;color:#15803d}.s-medio,.s-sem-alteracao,.s-analyst{background:#fef9c3;color:#8a6a00}.disclaimer{margin-top:16px;border:1px solid #d9e4f2;background:#edf4fb;color:#365777;border-radius:8px;padding:12px 14px;display:flex;gap:10px;align-items:center;font-size:11px}.disclaimer svg{width:17px;flex:0 0 auto}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{background:#f8fafc;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-size:9px;text-align:left;white-space:nowrap}th,td{padding:10px 11px;border-bottom:1px solid #edf0f3}tbody tr{cursor:pointer}tbody tr:hover{background:#f8fbff}td b,td small{display:block}td small{font-size:9px;color:#8a93a1;margin-top:3px;max-width:260px}.score{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#12355b;color:#fff}.filterbar{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:11px;display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.filterbar input,.filterbar select,.form-grid input,.form-grid select,.setting-field input{border:1px solid #dfe3e8;border-radius:6px;padding:8px 9px;background:#fff;font-size:11px;min-width:115px}.filter-search{display:flex;align-items:center;border:1px solid #dfe3e8;border-radius:6px;padding-left:8px;min-width:240px}.filter-search input{border:0;outline:0;width:100%}.page-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:11px;color:#6b7280}.export-buttons{display:flex;gap:6px}.export-buttons button,.icon-button{border:1px solid #d8dee7;background:#fff;border-radius:6px;padding:7px 10px;display:flex;gap:6px;align-items:center;color:#12355b;font-size:11px}.positive{color:#16a34a}.negative{color:#dc2626}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.chart-box{height:250px}.chart-box.tall{height:330px}.page-intro{padding:17px;margin-bottom:12px}.page-intro h2,.page-intro p{margin:0}.page-intro h2{font-size:15px}.page-intro p{font-size:11px;color:#6b7280;margin-top:5px}.error-cell{max-width:260px;color:#b91c1c}.person-header{padding:20px;display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.person-header small{font-size:9px;color:#2563eb;font-weight:800;letter-spacing:.12em}.person-header h2{margin:6px 0 3px}.person-header p{margin:0;color:#6b7280;font-size:12px}.person-score{text-align:right}.person-score span,.person-score strong{display:block}.person-score span{font-size:10px;color:#6b7280}.person-score strong{font-size:31px}.history-meta{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:14px}.history-meta>div{padding:14px;border-right:1px solid #e5e7eb}.history-meta>div:last-child{border:0}.history-meta small,.history-meta b{display:block}.history-meta small{font-size:9px;color:#6b7280;text-transform:uppercase}.history-meta b{font-size:11px;margin-top:5px}.export-page{text-align:center;padding:50px 30px}.export-page>svg{color:#2563eb}.export-page h2{margin:12px 0 5px}.export-page p{color:#6b7280;font-size:12px}.export-page .export-buttons{justify-content:center;margin:20px}.criteria{display:grid;gap:11px}.criteria section{padding:21px}.criteria section h2{margin:0 0 7px}.criteria section p,.criteria article p{color:#6b7280;font-size:12px;line-height:1.65;margin:0}.criteria article{padding:18px;display:flex;gap:15px}.criteria article>span{font-size:18px;color:#2563eb;font-weight:800}.criteria article h3{font-size:13px;margin:0 0 5px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.settings-grid>.panel:nth-child(3){grid-column:1/-1}.setting-field{display:grid;gap:5px;font-size:11px;margin:13px 0}.form-grid{display:grid;gap:9px}.success,.error{border-radius:7px;padding:10px 12px;font-size:12px}.success{background:#dcfce7;color:#15803d}.error{background:#fee2e2;color:#b91c1c;margin-bottom:12px}.empty{padding:80px;text-align:center;color:#6b7280}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:#12355b}.login-brand{padding:50px 8vw;color:#fff;display:flex;flex-direction:column}.brand-lockup>span{background:#fff}.brand-lockup b{font-size:18px}.brand-lockup small{color:#b6c9dc}.login-copy{margin:auto 0;max-width:540px}.login-copy>small{letter-spacing:.18em;color:#9fb8d1;font-size:10px;font-weight:800}.login-copy h1{font-size:45px;line-height:1.1;margin:15px 0}.login-copy p{color:#c8d6e4;line-height:1.65}.login-rule{display:flex;gap:10px;align-items:center;color:#adc2d6;font-size:11px}.login-panel{background:#f4f6f8;display:grid;place-items:center;padding:30px}.login-panel form{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:34px;width:min(400px,100%)}.login-title h2,.login-title p{margin:0}.login-title p{color:#6b7280;font-size:12px;margin-top:6px}.login-panel label{display:grid;gap:6px;font-size:11px;font-weight:650;margin:19px 0}.login-panel input{border:1px solid #d8dee7;border-radius:7px;padding:11px}.login-help{display:block;color:#9ca3af;line-height:1.5;margin-top:16px;text-align:center}@media(max-width:1200px){.stats.six,.stats.seven,.stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.shell{grid-template-columns:72px 1fr}.sidebar{width:72px;padding:18px 10px}.side-brand div,.subtitle,.sidebar nav button{font-size:0}.sidebar nav button{justify-content:center}.user-card{display:none}.workspace{grid-column:2}.top-meta,.global-search{display:none}.dashboard-grid,.two-col,.settings-grid,.login-shell{grid-template-columns:1fr}.login-brand{display:none}}@media(max-width:650px){.topbar{padding:12px 16px}.content{padding:16px}.stats,.stats.six,.stats.seven,.history-meta{grid-template-columns:1fr 1fr}.portfolio-grid{grid-template-columns:1fr}.primary{font-size:0}.primary svg{margin:0}}.intelligence-list{display:grid;gap:8px}.intelligence-list>div{display:flex;align-items:flex-start;gap:9px;border-bottom:1px solid #edf0f3;padding:8px 0;font-size:11px;line-height:1.45}.intelligence-list svg{color:#2563eb;flex:0 0 auto}.agent-hero{background:#12355b;color:#fff;border-radius:10px;padding:22px;display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.agent-kicker{display:flex;align-items:center;gap:7px;color:#9fc0df;font-size:9px;letter-spacing:.13em;font-weight:800}.agent-hero h2{font-size:21px;margin:7px 0 5px}.agent-hero p{margin:0;color:#c3d2e0;font-size:11px}.agent-actions{display:flex;gap:8px}.secondary{border:1px solid #7896b3;background:transparent;color:#fff;border-radius:7px;padding:9px 13px;font-size:11px}.agent-stats{grid-template-columns:repeat(4,1fr)}.agent-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:14px;margin-bottom:14px}.table-wrap.embedded{border:0;border-radius:0}.agent-grid .panel{min-width:0}.empty-line{color:#9ca3af;font-size:11px}.agent-stats+.page-toolbar{background:#fff;border:1px solid #e5e7eb;padding:10px 12px;border-radius:8px}.s-critica{background:#7f1d1d;color:#fff}.s-alta{background:#fee2e2;color:#b91c1c}.s-media{background:#ffedd5;color:#c2410c}.s-concluido{background:#dcfce7;color:#15803d}.s-executando{background:#dbeafe;color:#1d4ed8}@media(max-width:1200px){.agent-stats{grid-template-columns:repeat(4,1fr)}}@media(max-width:900px){.agent-grid{grid-template-columns:1fr}.agent-hero{align-items:flex-start;gap:16px;flex-direction:column}}@media(max-width:650px){.agent-stats{grid-template-columns:1fr 1fr}}.pm-research{margin-bottom:22px}.pm-research-head{background:#12355b;color:#fff;border-radius:10px;padding:20px;display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.pm-research-head h2{margin:7px 0 4px;font-size:22px}.pm-research-head p{margin:0;color:#c3d2e0;font-size:11px}.pm-research-head .export-buttons button{border-color:#6f8dab;background:#fff}.pm-official-stats{margin-bottom:14px}.pm-research .notice{margin-top:14px;margin-bottom:0}@media(max-width:800px){.pm-research-head{align-items:flex-start;flex-direction:column;gap:14px}}.municipal-page{margin-bottom:22px}.municipal-head{background:#0f3d35}.municipal-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.municipal-actions select{border:1px solid #6d928a;background:#fff;border-radius:7px;padding:8px 10px;color:#12355b;font-size:12px;min-width:230px}.municipal-note{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:14px}.municipal-note b,.municipal-note span{display:block}.municipal-note span{font-size:11px;line-height:1.45}.municipal-note a{color:inherit;font-weight:800;white-space:nowrap}.municipality-table td:nth-child(2){min-width:210px}.municipality-table td:nth-child(4){min-width:160px}.municipality-table td:nth-child(5){min-width:190px}.notice{border:1px solid #d9e4f2;background:#edf4fb;color:#365777;border-radius:8px;padding:12px 14px;display:flex;gap:10px;align-items:center;font-size:11px;margin-top:14px}.notice strong{white-space:nowrap}@media(max-width:800px){.municipal-actions,.municipal-note{align-items:flex-start;flex-direction:column}}
