.comparison-dashboard{--comparison-bg: var(--color-surface-raised);--comparison-surface: var(--color-surface);--comparison-surface-2: var(--color-surface-raised);--comparison-text: var(--color-text);--comparison-muted: var(--color-text-muted);--comparison-line: var(--color-border);--comparison-brand: var(--color-primary);--comparison-brand-soft: var(--fill-selected);--comparison-success: var(--color-success);--comparison-success-soft: var(--fill-success);--comparison-warning: var(--color-warning);--comparison-warning-soft: var(--fill-warning);--comparison-danger: var(--color-danger);--comparison-danger-soft: var(--fill-danger);--comparison-blue: var(--color-info);--comparison-blue-soft: var(--fill-info);color:var(--comparison-text);max-width:1600px;margin:0 auto;padding:26px clamp(18px,4vw,56px) 56px}.comparison-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.comparison-header h1{margin:4px 0;font-size:clamp(27px,4vw,42px);line-height:1.12;letter-spacing:-.04em}.comparison-header p{margin:0;color:var(--comparison-muted);font-size:15px}.comparison-eyebrow{color:var(--comparison-brand);font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.comparison-live{display:flex;align-items:center;gap:10px;padding:9px 10px 9px 14px;border:1px solid var(--comparison-line);border-radius:14px;background:var(--comparison-surface);box-shadow:var(--shadow-app-lg)}.comparison-live div{display:grid}.comparison-live strong{font-size:12px}.comparison-live small{color:var(--comparison-muted);font-size:10px}.comparison-live button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--comparison-line);border-radius:10px;background:var(--comparison-surface-2);cursor:pointer}.comparison-live-dot{width:8px;height:8px;border-radius:50%;background:var(--comparison-success);box-shadow:0 0 0 5px var(--comparison-success-soft)}.comparison-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;padding:12px;border:1px solid var(--comparison-line);border-radius:15px;background:var(--comparison-surface);box-shadow:var(--shadow-app-lg)}.comparison-periods{display:flex;gap:4px;padding:4px;border-radius:10px;background:var(--comparison-surface-2)}.comparison-periods button{padding:7px 12px;border:0;border-radius:8px;color:var(--comparison-muted);background:transparent;font-weight:800;cursor:pointer}.comparison-periods button.active{color:var(--comparison-brand);background:var(--comparison-surface);box-shadow:var(--shadow-app-sm)}.comparison-toolbar select,.comparison-search{min-height:39px;border:1px solid var(--comparison-line);border-radius:10px;color:var(--comparison-text);background:var(--comparison-surface)}.comparison-toolbar select{padding:0 11px}.comparison-search{display:flex;flex:1;min-width:230px;align-items:center;gap:8px;padding:0 11px}.comparison-search input{flex:1;min-width:0;border:0;outline:0;color:inherit;background:transparent}.comparison-cards{display:grid;grid-template-columns:repeat(6,minmax(145px,1fr));gap:13px}.comparison-metric{position:relative;min-height:140px;padding:17px;overflow:hidden;border:1px solid var(--comparison-line);border-radius:18px;background:var(--comparison-surface);box-shadow:var(--shadow-app-lg)}.comparison-metric:after{content:"";position:absolute;right:-18px;bottom:-26px;width:90px;height:90px;border-radius:50%;background:var(--metric-soft, var(--comparison-blue-soft))}.comparison-metric-icon{display:grid;padding:0;border:0;cursor:pointer;place-items:center;width:30px;height:30px;margin-bottom:12px;border-radius:9px;color:var(--metric-color, var(--comparison-blue));background:var(--metric-soft, var(--comparison-blue-soft))}.comparison-metric-icon svg{width:17px}.comparison-metric-icon:hover,.comparison-metric-icon:focus-visible{box-shadow:0 0 0 3px var(--metric-soft, var(--comparison-blue-soft))}.comparison-metric>span{color:var(--comparison-muted);font-size:12px;font-weight:750}.comparison-metric>strong{display:block;margin-top:10px;font-size:29px;line-height:1;letter-spacing:-.04em}.comparison-metric>small{display:block;margin-top:9px;color:var(--metric-color, var(--comparison-muted))}.metric-success{--metric-color: var(--comparison-success);--metric-soft: var(--comparison-success-soft)}.metric-warning{--metric-color: var(--comparison-warning);--metric-soft: var(--comparison-warning-soft)}.metric-danger{--metric-color: var(--comparison-danger);--metric-soft: var(--comparison-danger-soft)}.metric-info{--metric-color: var(--comparison-blue);--metric-soft: var(--comparison-blue-soft)}.comparison-performance{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:12px;padding:19px;border:1px solid var(--comparison-line);border-radius:18px;background:var(--comparison-surface);box-shadow:var(--shadow-app-lg)}.comparison-performance>header{grid-column:1 / -1}.comparison-performance>div{padding:14px;border-radius:14px;background:var(--comparison-surface-2)}.comparison-performance span{display:block;color:var(--comparison-muted);font-size:11px;font-weight:700}.comparison-performance strong{display:block;margin-top:5px;font-size:20px;letter-spacing:-.03em}.comparison-performance small{display:block;margin-top:3px}.comparison-panel{margin-top:16px;overflow:hidden;border:1px solid var(--comparison-line);border-radius:18px;background:var(--comparison-surface);box-shadow:var(--shadow-app-lg)}.comparison-panel-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--comparison-line)}.comparison-panel-heading h2{margin:0;font-size:19px}.comparison-panel-heading p{margin:2px 0 0;color:var(--comparison-muted);font-size:12px}.comparison-table-wrap{overflow-x:auto}.comparison-table-wrap table{width:100%;min-width:900px;border-collapse:collapse}.comparison-table-wrap th,.comparison-table-wrap td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--comparison-line)}.comparison-table-wrap th{color:var(--comparison-muted);background:var(--comparison-surface-2);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.comparison-table-wrap td{font-size:12px}.comparison-table-wrap tbody tr{cursor:pointer;transition:background .15s ease}.comparison-table-wrap tbody tr:hover,.comparison-table-wrap tbody tr:focus{outline:none;background:var(--comparison-surface-2)}.comparison-table-wrap td:first-child strong,.comparison-table-wrap td:first-child small{display:block;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comparison-table-wrap td:first-child small{margin-top:3px;color:var(--comparison-muted)}.comparison-status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:850}.comparison-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-success{color:var(--comparison-success);background:var(--comparison-success-soft)}.status-divergence,.status-technical_error{color:var(--comparison-danger);background:var(--comparison-danger-soft)}.status-rounding_divergence{color:var(--comparison-warning);background:var(--comparison-warning-soft)}.status-received,.status-queued,.status-processing{color:var(--comparison-blue);background:var(--comparison-blue-soft)}.delta-faster{color:var(--comparison-success);font-weight:800}.delta-slower{color:var(--comparison-danger);font-weight:800}.comparison-media{grid-column:1 / -1}.percentil-rotulo{display:flex;align-items:center;gap:6px}.percentil-ajuda{display:inline-grid;place-items:center;padding:0;border:0;border-radius:50%;background:none;color:var(--comparison-muted);cursor:pointer}.percentil-ajuda:hover,.percentil-ajuda:focus-visible{color:var(--comparison-brand)}.comparison-dashboard .percentil-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:20px;background:var(--scrim)}.percentil-dialog{width:min(520px,100%);max-height:80vh;overflow-y:auto;padding:22px;border:1px solid var(--comparison-line);border-radius:14px;background:var(--comparison-surface);box-shadow:var(--shadow-app-lg)}.percentil-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.percentil-dialog h3{display:flex;align-items:center;gap:8px;margin:0;font-size:15px;color:var(--comparison-brand)}.percentil-dialog header button{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--comparison-line);border-radius:9px;background:var(--comparison-surface);color:inherit;cursor:pointer}.percentil-dialog p{margin:12px 0 0;font-size:13px;line-height:1.6}.percentil-intro{color:var(--comparison-muted)}.percentil-nota{padding:10px 12px;border-left:3px solid var(--comparison-brand);border-radius:0 8px 8px 0;background:var(--comparison-surface-2);color:var(--comparison-muted);font-size:12px}.comparison-empty{padding:30px!important;color:var(--comparison-muted);text-align:center!important}.comparison-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;color:var(--comparison-muted);font-size:11px}.comparison-pagination button{padding:7px 11px;border:1px solid var(--comparison-line);border-radius:9px;background:var(--comparison-surface);cursor:pointer}.comparison-pagination button:disabled{opacity:.45;cursor:not-allowed}.comparison-error{margin:12px 0;padding:12px 14px;border-left:4px solid var(--comparison-danger);border-radius:10px;color:var(--comparison-danger);background:var(--comparison-danger-soft)}.comparison-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--scrim)}.comparison-drawer{position:absolute;right:0;top:0;width:min(720px,94vw);height:100%;overflow:auto;padding:24px;color:var(--comparison-text);background:var(--comparison-surface);box-shadow:-24px 0 70px hsl(var(--t-text) / .18)}.comparison-drawer>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.comparison-drawer header span{color:var(--comparison-brand);font-size:11px;font-weight:900;text-transform:uppercase}.comparison-drawer header h2{margin:4px 0 0;overflow-wrap:anywhere}.comparison-drawer header button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--comparison-line);border-radius:11px;background:var(--comparison-surface);cursor:pointer}.comparison-drawer section h3{margin:0 0 12px}.difference-list{display:grid;gap:10px}.difference-list article{display:grid;gap:10px;padding:12px;border:1px solid var(--comparison-line);border-radius:11px}.difference-list article>header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px}.difference-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.difference-values>div{min-width:0}.difference-list code{min-width:0;overflow-wrap:anywhere}.comparison-dashboard{--code-fg: 165 55% 83%;--code-bg: 194 42% 9%}.difference-list pre,.comparison-json pre{overflow:auto;padding:12px;border-radius:10px;color:hsl(var(--code-fg));background:hsl(var(--code-bg));font:11px/1.6 ui-monospace,monospace}.comparison-json{margin-top:13px;border:1px solid var(--comparison-line);border-radius:12px}.comparison-json summary{padding:12px 14px;cursor:pointer;font-weight:750}.comparison-content-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,.75fr);gap:16px;margin-top:16px}.comparison-evolution{padding:19px;border:1px solid var(--comparison-line);border-radius:18px;background:var(--comparison-surface);box-shadow:var(--shadow-app-lg)}.comparison-evolution>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.comparison-evolution h2,.comparison-performance h2{margin:0;font-size:19px}.comparison-evolution p,.comparison-performance header p{margin:2px 0 0;color:var(--comparison-muted);font-size:12px}.comparison-legend{display:flex;flex-wrap:wrap;gap:12px;color:var(--comparison-muted);font-size:11px}.comparison-legend span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:50%;background:currentColor}.legend-success{color:var(--comparison-success)}.legend-danger{color:var(--comparison-danger)}.legend-warning{color:var(--comparison-warning)}.comparison-chart{height:220px;margin-top:17px;border-bottom:1px solid var(--comparison-line);background:repeating-linear-gradient(to bottom,transparent 0 54px,var(--comparison-line) 55px)}.comparison-chart svg{width:100%;height:210px;overflow:visible}.comparison-chart path{fill:none;stroke-width:3;vector-effect:non-scaling-stroke}.chart-success{stroke:var(--comparison-success)}.chart-danger{stroke:var(--comparison-danger);stroke-dasharray:6 5}.chart-warning{stroke:var(--comparison-warning)}.comparison-axis{display:flex;justify-content:space-between;margin-top:8px;color:var(--comparison-muted);font-size:10px}.comparison-chart-empty{display:grid;place-items:center;min-height:220px;color:var(--comparison-muted)}.comparison-json-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 12px 12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.is-spinning{animation:comparison-spin .8s linear infinite}@keyframes comparison-spin{to{transform:rotate(360deg)}}@media (max-width: 1180px){.comparison-cards,.comparison-performance{grid-template-columns:repeat(3,1fr)}}@media (max-width: 760px){.comparison-content-grid{grid-template-columns:1fr}.comparison-header{align-items:flex-start;flex-direction:column}.comparison-cards,.comparison-performance{grid-template-columns:repeat(2,1fr)}.comparison-json-grid,.difference-values{grid-template-columns:1fr}}@media (max-width: 480px){.comparison-cards,.comparison-performance{grid-template-columns:1fr}.comparison-live div{display:none}}:root{color-scheme:light;--fb-primary: 221 83% 53%;--fb-bg: 210 40% 98%;--fb-surface: 0 0% 100%;--fb-surface-overlay: 0 0% 100%;--fb-border: 213 27% 91%;--fb-text: 222 47% 11%;--fb-text-muted: 215 16% 47%;--fb-danger: 0 72% 51%;--fb-success: 142 69% 31%;--fb-warning: 32 95% 36%;--fb-info: 221 83% 53%;--fbv-shadow-sm: 0 1px 3px hsl(222 47% 11% / .08);--fbv-shadow-md: 0 8px 32px hsl(222 47% 11% / .18);--fbv-shadow-lg: 0 20px 60px hsl(222 47% 11% / .2);--fbv-font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--scrim: hsl(0 0% 0% / .45);--scrim-aninhado: hsl(0 0% 0% / .28)}html.dark{color-scheme:dark;--fb-primary: 217 91% 60%;--fb-bg: 220 32% 9%;--fb-surface: 220 24% 13%;--fb-surface-overlay: 220 21% 21%;--fb-border: 220 20% 24%;--fb-text: 220 22% 90%;--fb-text-muted: 220 18% 62%;--fb-danger: 0 72% 65%;--fb-success: 142 52% 55%;--fb-warning: 35 90% 60%;--fb-info: 217 91% 70%;--fbv-shadow-sm: 0 1px 3px hsl(0 0% 0% / .4);--fbv-shadow-md: 0 8px 32px hsl(0 0% 0% / .5);--fbv-shadow-lg: 0 20px 60px hsl(0 0% 0% / .6);--scrim: hsl(0 0% 0% / .65);--scrim-aninhado: hsl(0 0% 0% / .34)}:root{--t-primary: var(--primary, var(--fb-primary));--t-bg: var(--background, var(--fb-bg));--t-surface: var(--surface, var(--surface-elevated, var(--fb-surface)));--t-surface-overlay: var(--surface-overlay, var(--surface, var(--fb-surface-overlay)));--t-border: var(--border, var(--fb-border));--t-text: var(--ink-default, var(--foreground, var(--fb-text)));--t-text-strong: var(--ink-strong, var(--foreground, var(--fb-text)));--t-text-muted: var(--ink-muted, var(--fb-text-muted));--t-danger: var(--danger, var(--fb-danger));--t-success: var(--success, var(--fb-success));--t-warning: var(--warning, var(--fb-warning));--t-info: var(--info, var(--primary, var(--fb-info)));--t-focus: var(--focus-ring, var(--primary, var(--fb-primary)));--t-on-primary: var(--primary-foreground, var(--fb-on-primary, 0 0% 100%));--t-on-danger: var(--danger-foreground, var(--fb-on-danger, 0 0% 100%));--t-on-success: var(--success-foreground, var(--fb-on-success, 0 0% 100%));--t-on-warning: var(--warning-foreground, var(--fb-on-warning, 0 0% 100%));--t-on-info: var(--info-foreground, var(--fb-on-info, 0 0% 100%))}:root{--color-primary: hsl(var(--t-primary));--color-surface: hsl(var(--t-surface));--color-surface-raised: hsl(var(--t-bg));--color-surface-overlay: hsl(var(--t-surface-overlay));--color-border: hsl(var(--t-border));--color-text: hsl(var(--t-text));--color-text-strong: hsl(var(--t-text-strong));--color-text-muted: hsl(var(--t-text-muted));--color-danger: hsl(var(--t-danger));--color-success: hsl(var(--t-success));--color-warning: hsl(var(--t-warning));--color-info: hsl(var(--t-info));--border-strong: hsl(var(--t-border));--fill-subtle: hsl(var(--t-text) / .05);--fill-hover: hsl(var(--t-text) / .08);--fill-selected: hsl(var(--t-primary) / .12);--fill-danger: hsl(var(--t-danger) / .14);--fill-success: hsl(var(--t-success) / .14);--fill-warning: hsl(var(--t-warning) / .14);--fill-info: hsl(var(--t-info) / .14);--stroke-danger: hsl(var(--t-danger) / .35);--stroke-success: hsl(var(--t-success) / .35);--stroke-warning: hsl(var(--t-warning) / .35);--stroke-info: hsl(var(--t-info) / .35);--ink-danger: hsl(var(--t-text));--ink-success: hsl(var(--t-text));--ink-warning: hsl(var(--t-text));--ink-info: hsl(var(--t-text));--shadow: var(--shadow-sm, var(--fbv-shadow-sm));--shadow-app-sm: var(--shadow-sm, var(--fbv-shadow-sm));--shadow-app-md: var(--shadow-md, var(--fbv-shadow-md));--shadow-app-lg: var(--shadow-lg, var(--fbv-shadow-lg));--focus-ring-color: hsl(var(--t-focus));--on-primary: hsl(var(--t-on-primary));--on-danger: hsl(var(--t-on-danger));--on-success: hsl(var(--t-on-success));--on-warning: hsl(var(--t-on-warning));--on-info: hsl(var(--t-on-info));--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--ds-radius: var(--radius, var(--radius-md));--sidebar-width: 240px;--ds-primary: var(--color-primary);--ds-surface: var(--color-surface);--ds-border: var(--color-border);--bg: var(--color-surface-raised);--text: var(--color-text);--text-muted: var(--color-text-muted);--primary-solid: hsl(var(--t-primary));--primary-solid-hover: hsl(var(--t-primary));--color-primary-hover: var(--primary-solid-hover);--primary-dark: var(--primary-solid-hover)}html.dark{--primary-solid: hsl(var(--t-primary))}@supports (color: color-mix(in srgb,red,blue)){:root{--border-strong: color-mix(in srgb, hsl(var(--t-border)) 72%, hsl(var(--t-text)));--primary-solid: color-mix(in srgb, hsl(var(--t-primary)) 88%, #000);--primary-solid-hover: color-mix(in srgb, hsl(var(--t-primary)) 74%, #000)}html.dark{--primary-solid: hsl(var(--t-primary));--primary-solid-hover: color-mix(in srgb, hsl(var(--t-primary)) 84%, #fff)}:root{--ink-danger: color-mix(in srgb, hsl(var(--t-danger)) 75%, #000);--ink-success: color-mix(in srgb, hsl(var(--t-success)) 75%, #000);--ink-warning: color-mix(in srgb, hsl(var(--t-warning)) 75%, #000);--ink-info: color-mix(in srgb, hsl(var(--t-info)) 75%, #000)}html.dark{--ink-danger: color-mix(in srgb, hsl(var(--t-danger)) 85%, #fff);--ink-success: color-mix(in srgb, hsl(var(--t-success)) 85%, #fff);--ink-warning: color-mix(in srgb, hsl(var(--t-warning)) 85%, #fff);--ink-info: color-mix(in srgb, hsl(var(--t-info)) 85%, #fff)}}:root{--cat-icms: 224 76% 48%;--cat-ipi: 263 70% 50%;--cat-pis: 193 82% 31%;--cat-iss: 163 94% 24%;--cat-rt: 26 90% 37%;--cat-novo: 142 76% 30%;--cat-melhoria: 221 83% 53%;--cat-fix: 32 95% 36%;--cat-breaking: 0 72% 51%;--cat-major: 262 83% 58%}html.dark{--cat-icms: 224 76% 74%;--cat-ipi: 263 70% 74%;--cat-pis: 193 82% 66%;--cat-iss: 163 94% 66%;--cat-rt: 26 90% 66%;--cat-novo: 142 76% 66%;--cat-melhoria: 221 83% 74%;--cat-fix: 32 95% 70%;--cat-breaking: 0 72% 74%;--cat-major: 262 83% 74%}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family, var(--fbv-font));background:var(--color-surface-raised);color:var(--color-text);font-size:14px;line-height:1.5}.min-h-screen{min-height:100vh}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.p-6{padding:24px}.max-w-md{max-width:28rem}.text-center{text-align:center}.space-y-3>*+*{margin-top:12px}.inline-block{display:inline-block}.mt-2{margin-top:8px}.px-3{padding-left:12px;padding-right:12px}.rounded{border-radius:var(--radius-sm)}.text-xl{font-size:20px}.text-sm{font-size:14px}.text-xs{font-size:12px}.font-semibold{font-weight:600}.tracking-tight{letter-spacing:-.01em}.bg-background{background:var(--color-surface-raised)}.text-foreground{color:var(--color-text)}.text-muted-foreground{color:var(--color-text-muted)}.bg-primary{background:var(--primary-solid)}.text-primary-foreground{color:var(--on-primary)}.py-1\.5{padding-top:6px;padding-bottom:6px}.hover\:opacity-90:hover{opacity:.9}[aria-labelledby=spoke-sdk-expired-title]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;background:hsl(var(--t-bg) / .88);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[aria-labelledby=spoke-sdk-expired-title]>div{display:flex;width:100%;max-width:384px;flex-direction:column;align-items:center;gap:16px;padding:28px 32px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-overlay);box-shadow:var(--shadow-app-lg);text-align:center}[aria-labelledby=spoke-sdk-expired-title] svg{color:var(--color-text-muted);animation:sdk-session-spin 1s linear infinite}#spoke-sdk-expired-title{margin-bottom:6px;font-size:16px;font-weight:600}#spoke-sdk-expired-title+p{color:var(--color-text-muted);font-size:14px}@keyframes sdk-session-spin{to{transform:rotate(360deg)}}.page{padding:4px 0 32px}.page-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:20px}.page-title{font-size:22px;font-weight:600;margin:0;color:var(--text)}.page-subtitle{font-size:13px;color:var(--text-muted);margin-top:2px}.page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.text-muted{color:var(--text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 18px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.btn-primary{background:var(--primary-solid);color:var(--on-primary)}.btn-primary:hover:not(:disabled){background:var(--primary-solid-hover)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{background:var(--ds-surface);color:var(--text);border:1px solid var(--ds-border)}.btn-secondary:hover:not(:disabled){background:var(--fill-hover);border-color:var(--ds-primary)}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.btn-danger{background:hsl(var(--t-danger));color:var(--on-danger)}.btn-danger:hover:not(:disabled){background:hsl(var(--t-danger) / .85)}.btn-warning{background:var(--fill-warning);color:hsl(var(--t-warning));border:1px solid var(--stroke-warning)}.btn-warning:hover:not(:disabled){background:hsl(var(--t-warning) / .22)}.btn-sm{padding:6px 12px;font-size:12px}.btn-link{background:none;border:none;color:var(--ds-primary);font-size:13px;font-weight:500;cursor:pointer;padding:0}.btn-link:hover{text-decoration:underline}.badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.badge-success{background:var(--fill-success);color:hsl(var(--t-success))}.badge-danger{background:var(--fill-danger);color:hsl(var(--t-danger))}.badge-warning{background:var(--fill-warning);color:hsl(var(--t-warning))}.badge-info{background:var(--fill-info);color:hsl(var(--t-info))}.badge-default{background:var(--fill-subtle);color:var(--text-muted)}.badge-processing{background:var(--fill-info);color:hsl(var(--t-info));animation:badge-pulse 1.4s ease-in-out infinite}.form-group{display:flex;flex-direction:column;gap:5px}.form-label{font-size:13px;font-weight:500;color:var(--text)}.form-control{width:100%;padding:8px 10px;border:1px solid var(--ds-border);border-radius:6px;font-size:13px;background:var(--ds-surface);color:var(--text);outline:none;transition:border-color .15s}.form-control:focus{border-color:var(--focus-ring-color)}.form-control:disabled{background:var(--fill-hover);opacity:.7;cursor:not-allowed}.form-row{display:flex;gap:14px;flex-wrap:wrap}.form-row .form-group{flex:1;min-width:140px}.form-section{padding:18px;background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius)}.form-section-title{font-size:13px;font-weight:700;margin-bottom:14px}.field-hint{font-size:12px;color:var(--text-muted);line-height:1.5}.table-wrapper{border:1px solid var(--ds-border);border-radius:var(--ds-radius);overflow:hidden;box-shadow:var(--shadow);background:var(--ds-surface)}.table-wrapper.ds-grid-attached{border-top-left-radius:0;border-top-right-radius:0;overflow-x:auto}.ds-table{width:100%;border-collapse:collapse;font-size:13px;background:var(--ds-surface)}.ds-table th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--fill-subtle);padding:10px 14px;border-bottom:1px solid var(--ds-border);text-align:left;white-space:nowrap}.ds-table td{padding:11px 14px;border-bottom:1px solid var(--ds-border);vertical-align:middle;color:var(--text)}.ds-table tbody tr{transition:background .1s}.ds-table tbody tr:hover td{background:var(--fill-hover)}.ds-table tbody tr:last-child td{border-bottom:none}.ds-th-center{text-align:center!important}.ds-td-center{text-align:center}.ds-check-col{width:42px;text-align:center}.ds-checkbox{width:16px;height:16px;accent-color:var(--ds-primary);cursor:pointer;vertical-align:middle}.ds-row-selected td{background:var(--fill-selected)!important}.ds-kpi-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.ds-kpi-card{display:flex;flex-direction:column;gap:2px;background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);padding:11px 16px;min-width:110px;box-shadow:var(--shadow)}.ds-kpi-clickable{cursor:pointer;transition:border-color .15s,box-shadow .15s}.ds-kpi-clickable:hover{border-color:var(--ds-primary);box-shadow:0 0 0 2px hsl(var(--t-primary) / .1)}.ds-kpi-card--ativo{border-color:var(--ds-primary);box-shadow:0 0 0 2px hsl(var(--t-primary) / .18);background-color:var(--ds-surface);background-image:linear-gradient(hsl(var(--t-primary) / .04) 0,hsl(var(--t-primary) / .04) 0)}.ds-kpi-value{font-size:20px;font-weight:700;color:var(--text);line-height:1.1}.ds-kpi-label{font-size:11px;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.03em}.ds-kpi-success .ds-kpi-value{color:hsl(var(--t-success))}.ds-kpi-warn .ds-kpi-value{color:hsl(var(--t-warning))}.ds-kpi-error .ds-kpi-value{color:hsl(var(--t-danger))}.ds-kpi-info .ds-kpi-value{color:hsl(var(--t-info))}.ds-filter-bar{display:flex;flex-direction:column;gap:12px;margin-bottom:14px;padding:12px 14px;background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius)}.ds-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ds-filter-row--split{justify-content:space-between}.ds-filter-acoes{display:flex;align-items:center;gap:8px;margin-left:auto}.ds-search{flex:1 1 240px;min-width:200px}.ds-filter-bar .form-control{border-color:var(--border-strong)}.ds-filter-bar .form-control:focus{border-color:var(--focus-ring-color)}.ds-period-group{display:flex;gap:3px;flex-shrink:0}.ds-period-btn{padding:5px 12px;font-size:12px;border:1px solid var(--ds-border);border-radius:20px;background:none;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.ds-period-btn:hover{background:var(--fill-hover);color:var(--text)}.ds-period-btn.active{background:var(--primary-solid);color:var(--on-primary);border-color:var(--primary-solid)}.ds-chip-group{display:flex;gap:4px;flex-wrap:wrap}.ds-chip{padding:4px 10px;font-size:11px;border:1px solid var(--ds-border);border-radius:14px;background:none;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.ds-chip:hover{background:var(--fill-hover);color:var(--text)}.ds-chip.active{background:var(--fill-selected);color:var(--ds-primary);border-color:var(--ds-primary);font-weight:600}.ds-fchips-bar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.ds-fchip{display:inline-flex;align-items:center;gap:5px;padding:3px 6px 3px 10px;font-size:12px;border:1px solid var(--ds-primary);border-radius:14px;background:var(--fill-selected);color:var(--ds-primary);font-weight:500}.ds-fchip button{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;border-radius:50%;background:none;color:var(--ds-primary);cursor:pointer;padding:0}.ds-fchip button:hover{background:var(--ds-primary);color:var(--on-primary)}.ds-row-actions{display:flex;align-items:center;gap:4px;justify-content:center}.ds-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:5px;border:1px solid transparent;cursor:pointer;background:none;transition:background .12s,border-color .12s,color .12s;flex-shrink:0;line-height:1}.ds-icon-btn-default{color:var(--text-muted)}.ds-icon-btn-default:hover:not(:disabled),.ds-icon-btn-default:focus-visible{background:var(--fill-hover);color:var(--text);border-color:var(--border-strong)}.ds-icon-btn-primary{color:var(--ds-primary)}.ds-icon-btn-primary:hover:not(:disabled),.ds-icon-btn-primary:focus-visible{background:var(--fill-selected);border-color:var(--ds-primary)}.ds-icon-btn-danger{color:hsl(var(--t-danger))}.ds-icon-btn-danger:hover:not(:disabled),.ds-icon-btn-danger:focus-visible{background:var(--fill-danger);border-color:hsl(var(--t-danger))}.ds-icon-btn:disabled{opacity:.4;cursor:not-allowed}.ds-sort-header{display:inline-flex;align-items:center;gap:5px;background:none;border:none;padding:0;cursor:pointer;font:inherit;font-weight:600;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);transition:color .12s}.ds-sort-header:hover{color:var(--text)}.ds-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:8px 14px;background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);box-shadow:var(--shadow)}.ds-pag-esq{display:flex;align-items:center;gap:10px}.ds-pag-size{height:30px;border:1px solid var(--ds-border);border-radius:6px;background:var(--ds-surface);padding:0 8px;font-size:12px;color:var(--text);cursor:pointer}.ds-pag-info{font-size:12px;color:var(--text-muted)}.ds-pag-nav{display:flex;align-items:center;gap:2px}.ds-pag-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:6px;background:none;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s}.ds-pag-btn:hover:not(:disabled){background:var(--fill-hover);color:var(--text)}.ds-pag-btn:disabled{opacity:.35;cursor:not-allowed}.ds-pag-pagina{font-size:12px;color:var(--text-muted);padding:0 8px;-webkit-user-select:none;user-select:none}.ds-empty{padding:48px 24px;text-align:center;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:6px}.ds-empty-icon{color:var(--text-muted);margin-bottom:6px;opacity:.7}.ds-empty-title{font-weight:600;color:var(--text)}.ds-empty-desc{font-size:12px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-panel{background:var(--color-surface-overlay);border-radius:12px;box-shadow:var(--shadow-app-lg);width:560px;max-width:calc(100vw - 32px);max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--ds-border)}.modal-title{font-size:16px;font-weight:600;color:var(--text);margin-bottom:2px}.modal-subtitle{font-size:13px;color:var(--text-muted)}.modal-close{background:none;border:none;font-size:18px;color:var(--text-muted);cursor:pointer;padding:2px 8px;border-radius:4px;line-height:1}.modal-close:hover{background:var(--fill-hover);color:var(--text)}.modal-body{flex:1;overflow-y:auto;padding:16px 24px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 24px;border-top:1px solid var(--ds-border)}.ds-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);z-index:1000}.ds-drawer{position:fixed;top:0;right:0;width:460px;max-width:100vw;height:100vh;background:var(--color-surface-overlay);box-shadow:var(--shadow-app-lg);z-index:1001;display:flex;flex-direction:column;overflow:hidden;animation:ds-drawer-in .22s ease-out}.ds-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 24px 14px;border-bottom:1px solid var(--ds-border);flex-shrink:0}.ds-drawer-body{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:16px}.ds-drawer-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;border-top:1px solid var(--ds-border);background:var(--ds-surface);flex-shrink:0}.ds-filtros-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ds-filter-campos{display:flex;align-items:center;gap:14px;flex-wrap:wrap;min-width:0}.ds-campo-inline{display:flex;align-items:center;gap:6px}.ds-campo-inline .form-label{white-space:nowrap;margin:0}.ds-campo-inline .form-control{width:auto;min-width:110px}.ds-campo-inline--busca{flex:1 1 260px;min-width:220px}.ds-campo-inline--busca .ds-busca{flex:1}.ds-campo-inline--largo .form-control{min-width:200px}.ds-busca{position:relative;display:flex;align-items:center}.ds-busca-icone{position:absolute;left:10px;color:var(--text-muted);pointer-events:none}.ds-busca-input{width:100%;padding-left:32px}.ds-grid-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-bottom:1px solid var(--ds-border);background:var(--fill-subtle)}.ds-grid-toolbar-info{display:flex;align-items:center;gap:12px;min-width:0}.ds-grid-toolbar-acoes{display:flex;align-items:center;gap:8px;flex-shrink:0}.ds-grid-total{font-size:13px;color:var(--text-muted)}.ds-grid-sep{width:1px;height:16px;background:var(--ds-border);flex-shrink:0}.table-wrapper>.ds-pagination{margin-top:0;border:none;border-top:1px solid var(--ds-border);border-radius:0;box-shadow:none;background:var(--fill-subtle)}@keyframes badge-pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes ds-drawer-in{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}@media (max-width: 640px){.ds-filtros-grid{grid-template-columns:1fr}.ds-drawer{width:100vw}}.badge-categoria{display:inline-block;border-radius:var(--radius-sm);font-weight:700;letter-spacing:.02em;white-space:nowrap;background:hsl(var(--cat-atual) / .16);color:hsl(var(--cat-atual))}@supports (color: color-mix(in srgb,red,blue)){.badge-categoria{color:color-mix(in srgb,hsl(var(--cat-atual)) 80%,#000)}html.dark .badge-categoria{color:hsl(var(--cat-atual))}}
