:root{
  --bg:#eef3f8;--surface:#fff;--surface2:#f4f8fb;--text:#183247;--muted:#718499;
  --line:#dce6ee;--brand:#0f608c;--brand2:#287cad;--brand3:#6bb0d0;
  --green:#2f8c68;--red:#d45050;--shadow:0 14px 34px rgba(31,70,103,.10);--radius:20px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,rgba(40,124,173,.07),transparent 35rem),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
button,input{font:inherit}.app{width:min(1720px,calc(100% - 28px));margin:14px auto 42px}.hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:166px;padding:28px 30px;border-radius:26px;color:#fff;background:linear-gradient(125deg,#0b3556 0%,#0f628c 58%,#2382a6 100%);box-shadow:0 20px 44px rgba(10,52,83,.2)}
.hero:before{content:"";position:absolute;width:430px;height:430px;right:-120px;top:-270px;border-radius:50%;background:rgba(255,255,255,.07)}.hero:after{content:"";position:absolute;width:270px;height:270px;right:300px;bottom:-230px;border-radius:50%;border:44px solid rgba(255,255,255,.05)}.hero-copy,.hero-side{position:relative;z-index:1}.hero h1{margin:4px 0 8px;font-size:clamp(28px,3vw,42px);letter-spacing:.01em}.hero p{margin:0;color:rgba(255,255,255,.78)}.eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}.hero-eyebrow{color:rgba(255,255,255,.66)}.hero-side{min-width:min(460px,44vw)}.hero-topline{display:flex;justify-content:flex-end;gap:9px;margin-bottom:10px}.status-pill,.theme-toggle{border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.10);color:#fff;padding:9px 13px;backdrop-filter:blur(8px)}.theme-toggle{display:flex;gap:7px;align-items:center}.source-card{display:grid;grid-template-columns:1fr 1px 1.1fr;gap:16px;align-items:center;padding:14px 16px;border:1px solid rgba(255,255,255,.16);border-radius:17px;background:rgba(5,35,57,.20);backdrop-filter:blur(10px)}.source-card span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.58)}.source-card strong{display:block;margin-top:4px;font-size:12px}.divider{width:1px;height:42px;background:rgba(255,255,255,.18)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.filter-card{margin-top:16px;padding:18px}.section-head,.chart-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.section-head{margin-bottom:14px}.section-head h2,.chart-head h2{margin:3px 0 0;font-size:17px}.ghost-btn{border:1px solid var(--line);border-radius:11px;background:var(--surface2);color:var(--text);padding:9px 13px}.filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.field>span{display:block;margin-bottom:7px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.field input,.select-trigger{width:100%;min-height:46px;border:1px solid var(--line);border-radius:13px;background:var(--surface2);color:var(--text);outline:0}.field input{padding:0 12px}.field input:focus,.select-trigger:focus{border-color:#72a9c7;box-shadow:0 0 0 4px rgba(40,124,173,.10)}
.custom-select{position:relative}.select-trigger{display:flex;align-items:center;justify-content:space-between;padding:0 11px 0 13px;text-align:left}.select-trigger svg{width:17px;height:17px;fill:none;stroke:var(--muted);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:.18s}.select-trigger[aria-expanded="true"] svg{transform:rotate(180deg);stroke:var(--brand)}.select-menu{display:none;position:absolute;z-index:30;top:calc(100% + 7px);left:0;right:0;min-width:260px;max-height:360px;padding:8px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:0 18px 44px rgba(26,58,85,.18)}.select-menu.wide-menu{min-width:430px;left:auto}.custom-select.open .select-menu{display:block}.select-menu-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 5px 8px}.select-menu-head strong{font-size:12px}.clear-selection{border:0;background:transparent;color:var(--brand);font-size:11px;font-weight:750}.select-options{overflow:auto;max-height:290px}.select-option{display:flex;gap:9px;align-items:flex-start;width:100%;border:0;border-radius:10px;background:transparent;color:var(--text);padding:9px;text-align:left;font-size:12px}.select-option:hover{background:var(--surface2)}.select-option .check{display:grid;place-items:center;flex:0 0 18px;width:18px;height:18px;border:1px solid var(--line);border-radius:5px;background:var(--surface2);font-size:11px;color:#fff}.select-option.selected .check{background:var(--brand);border-color:var(--brand)}
.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}.kpi{padding:17px 18px}.kpi>span{display:block;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.kpi strong{display:block;margin-top:6px;font-size:28px}.kpi small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.kpi-wide strong{font-size:16px;line-height:1.3}
.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.chart-card{padding:18px;min-height:380px}.chart-card.full{grid-column:1/-1}.chart-head{margin-bottom:14px}.chart{overflow:auto}.empty{padding:50px 15px;text-align:center;color:var(--muted)}.monthly-bars{display:flex;align-items:flex-end;gap:16px;height:280px;padding:18px 8px 0}.month-group{flex:1;min-width:74px;display:flex;height:100%;flex-direction:column;justify-content:flex-end;text-align:center}.month-value{font-size:11px;font-weight:800;margin-bottom:6px}.month-bar{width:66%;margin:0 auto;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,var(--brand3),var(--brand));min-height:2px}.month-label{margin-top:8px;color:var(--muted);font-size:10px;font-weight:700}.bars-chart{max-height:430px}.bar-row{display:grid;grid-template-columns:minmax(170px,1.25fr) minmax(180px,3fr) 42px;gap:10px;align-items:center;margin:8px 0}.bar-label{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{height:18px;border-radius:999px;background:var(--surface2);overflow:hidden}.bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--brand2))}.bar-value{text-align:right;font-size:11px;font-weight:800}
.type-wrap{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:center;padding:26px 12px}.donut{position:relative;width:190px;height:190px;margin:auto;border-radius:50%;background:conic-gradient(var(--green) 0 var(--vol),var(--red) var(--vol) 100%)}.donut:after{content:"";position:absolute;inset:36px;border-radius:50%;background:var(--surface)}.donut-center{position:absolute;z-index:2;inset:0;display:grid;place-content:center;text-align:center}.donut-center strong{font-size:28px}.donut-center span{font-size:10px;color:var(--muted)}.type-legend{display:grid;gap:12px}.type-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.type-label{display:flex;align-items:center;gap:9px}.dot{width:10px;height:10px;border-radius:50%}.dot.vol{background:var(--green)}.dot.emp{background:var(--red)}.type-item strong{font-size:20px}
.table-card{margin-top:16px;overflow:hidden}.table-head{padding:18px;margin:0;border-bottom:1px solid var(--line)}.table-tools{display:flex;align-items:center;gap:14px}.search-box{position:relative;min-width:330px}.search-box>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--muted)}.search-box input{width:100%;min-height:42px;padding:0 12px 0 38px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);color:var(--text);outline:0}.table-tools>strong{font-size:12px;white-space:nowrap}.table-scroll{overflow:auto;max-height:64vh}table{width:100%;min-width:1060px;border-collapse:collapse}th{position:sticky;top:0;z-index:3;padding:11px 13px;text-align:left;background:var(--surface2);border-bottom:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}td{padding:10px 13px;border-bottom:1px solid var(--line);font-size:12px}tbody tr:hover td{background:rgba(40,124,173,.045)}.tag{display:inline-flex;min-width:82px;justify-content:center;padding:5px 8px;border-radius:999px;border:1px solid var(--line);background:var(--surface2);font-size:9px;font-weight:800}.table-foot{padding:10px 18px;background:var(--surface2);color:var(--muted);font-size:10px}
html[data-theme="dark"]{--bg:#071420;--surface:#0b1c2b;--surface2:#102638;--text:#dce9f4;--muted:#8fa6ba;--line:#1c3a50;--brand:#4a9ac4;--brand2:#59acd6;--brand3:#8bc4de;--shadow:0 16px 36px rgba(0,0,0,.23)}html[data-theme="dark"] body{background:radial-gradient(circle at top right,rgba(40,124,173,.12),transparent 35rem),var(--bg)}html[data-theme="dark"] .select-menu{box-shadow:0 18px 44px rgba(0,0,0,.35)}
@media(max-width:1150px){.hero{align-items:flex-start;flex-direction:column}.hero-side{width:100%;min-width:0}.hero-topline{justify-content:flex-start}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-wide{grid-column:1/-1}.charts-grid{grid-template-columns:1fr}.chart-card.full{grid-column:auto}.select-menu.wide-menu{left:0;right:auto;min-width:min(430px,88vw)}}
@media(max-width:700px){.app{width:calc(100% - 16px);margin-top:8px}.hero{padding:20px;border-radius:20px}.source-card{grid-template-columns:1fr}.divider{display:none}.filter-grid,.kpis{grid-template-columns:1fr}.kpi-wide{grid-column:auto}.type-wrap{grid-template-columns:1fr}.table-head{align-items:flex-start;flex-direction:column}.table-tools{width:100%;align-items:flex-start;flex-direction:column}.search-box{width:100%;min-width:0}.bar-row{grid-template-columns:minmax(135px,1.25fr) minmax(130px,2fr) 36px}}

/* =========================================================
   REFINO VISUAL — DELTA DESLIGAMENTOS
   Somente apresentação. Não altera filtros, API ou cálculos.
   ========================================================= */

:root{
  --bg:#edf3f7;
  --surface:#ffffff;
  --surface2:#f5f8fb;
  --line:#d9e4ec;
  --text:#173247;
  --muted:#718397;
  --brand:#0f638f;
  --brand2:#2e88b5;
  --brand3:#76bddb;
  --green:#2d8b68;
  --red:#d45b5b;
  --shadow:0 9px 24px rgba(31,70,103,.085);
  --shadow-hover:0 13px 30px rgba(31,70,103,.11);
}

body{
  background:
    radial-gradient(circle at 92% 4%,rgba(43,136,181,.07),transparent 31rem),
    linear-gradient(180deg,#f4f8fb 0,var(--bg) 34rem);
}

.app{width:min(1620px,calc(100% - 28px));margin:14px auto 42px}
.card{border-radius:18px;box-shadow:var(--shadow)}

.hero{min-height:150px;padding:24px 28px;border-radius:22px}
.hero h1{font-size:clamp(27px,2.65vw,38px)}
.hero-side{min-width:min(430px,43vw)}

.filter-card{margin-top:14px;padding:17px 18px 18px}
.filter-grid{gap:10px}
.field input,.select-trigger{min-height:43px;border-radius:11px}

.kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:14px}
.kpi{position:relative;overflow:hidden;min-height:112px;padding:16px 17px 14px;display:flex;flex-direction:column;justify-content:center;border-radius:17px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.kpi:hover{transform:translateY(-1px);box-shadow:var(--shadow-hover)}
.kpi::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--brand2)}
.kpi:nth-child(1)::before{background:#2e88b5}.kpi:nth-child(2)::before{background:var(--green)}.kpi:nth-child(3)::before{background:var(--red)}.kpi:nth-child(4)::before{background:#7488a3}.kpi:nth-child(5)::before{background:#d39a31}
.kpi:nth-child(1),.kpi:nth-child(2),.kpi:nth-child(3),.kpi:nth-child(4){grid-column:span 1}
.kpi-wide{grid-column:span 2}
.kpi>span{font-size:9.5px;letter-spacing:.085em}
.kpi strong{margin-top:7px;font-size:29px;line-height:1;letter-spacing:-.025em}
.kpi small{margin-top:7px;font-size:10.5px}
.kpi-wide strong{font-size:15.5px;line-height:1.28;letter-spacing:0;max-width:95%}

.charts-grid{gap:16px;margin-top:14px}
.chart-card{min-height:0;padding:18px 19px 19px}
.chart-head{margin-bottom:9px}.chart-head h2{font-size:17px}
.chart{scrollbar-width:thin;scrollbar-color:#9db3c3 transparent}
.chart::-webkit-scrollbar{width:7px;height:7px}.chart::-webkit-scrollbar-thumb{background:#9db3c3;border-radius:999px}.chart::-webkit-scrollbar-track{background:transparent}

.monthly-chart{min-height:258px}
.monthly-bars{height:258px;gap:22px;padding:16px 18px 0;border-bottom:1px solid var(--line);background:linear-gradient(to bottom,transparent 24%,rgba(113,132,153,.09) 24.4%,transparent 24.8%,transparent 49%,rgba(113,132,153,.09) 49.4%,transparent 49.8%,transparent 74%,rgba(113,132,153,.09) 74.4%,transparent 74.8%)}
.month-group{min-width:64px}.month-value{margin-bottom:5px;font-size:10.5px;color:var(--text)}
.month-bar{width:min(48px,62%);border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#68b0d0 0%,#2f8ab7 42%,#12658f 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.month-label{margin-top:7px;font-size:10px}

.bars-chart{max-height:445px;padding:3px 7px 3px 0}
.bar-row{grid-template-columns:minmax(215px,1.35fr) minmax(210px,2.8fr) 34px;gap:12px;margin:9px 0;min-height:24px}
.bar-label{font-size:10.5px;line-height:1.22;white-space:normal;overflow:visible;text-overflow:clip;color:#425d72}
.bar-track{height:11px;border-radius:999px;background:#edf3f7;overflow:hidden}
.bar-fill{border-radius:999px;background:linear-gradient(90deg,#12658f,#2f8ab7)}
.bar-value{font-size:10.5px;color:var(--text)}

.type-chart{min-height:220px}.type-wrap{grid-template-columns:180px 1fr;gap:24px;padding:14px 12px 6px;max-width:760px;margin:0 auto}.donut{width:154px;height:154px}.donut:after{inset:30px}.donut-center strong{font-size:25px}.type-legend{gap:9px}.type-item{padding:13px 14px}.type-item strong{font-size:18px}

.table-card{margin-top:14px}.table-head{padding:16px 18px}.table-scroll{max-height:58vh}th{padding:10px 12px}td{padding:9px 12px;font-size:11.5px}

html[data-theme="dark"]{--bg:#071522;--surface:#0c1d2c;--surface2:#112739;--line:#1d3b50;--text:#dce9f4;--muted:#90a6ba;--shadow:0 10px 26px rgba(0,0,0,.22);--shadow-hover:0 14px 34px rgba(0,0,0,.28)}
html[data-theme="dark"] body{background:radial-gradient(circle at 92% 4%,rgba(47,138,183,.10),transparent 31rem),linear-gradient(180deg,#081827 0,var(--bg) 34rem)}
html[data-theme="dark"] .bar-label{color:#c6d6e3}html[data-theme="dark"] .bar-track{background:#132a3c}
html[data-theme="dark"] .monthly-bars{background:linear-gradient(to bottom,transparent 24%,rgba(144,166,186,.08) 24.4%,transparent 24.8%,transparent 49%,rgba(144,166,186,.08) 49.4%,transparent 49.8%,transparent 74%,rgba(144,166,186,.08) 74.4%,transparent 74.8%)}

@media(max-width:1280px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-wide{grid-column:span 4}}
@media(max-width:1150px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-wide{grid-column:1/-1}.bar-row{grid-template-columns:minmax(185px,1.25fr) minmax(180px,2.4fr) 34px}}
@media(max-width:700px){.kpis{grid-template-columns:1fr}.kpi-wide{grid-column:auto}.monthly-bars{gap:12px;padding-left:6px;padding-right:6px}.month-group{min-width:54px}.bar-row{grid-template-columns:minmax(130px,1.3fr) minmax(120px,2fr) 30px;gap:8px}.bar-label{font-size:10px}}
