/* data-ui 0.1.0 · tokens + chrome (docs/CONTRACT.md §4) */
data-views,data-facets,data-value,data-kpi,data-sparkline,.data-ui{--dv-bg: var(--data-bg, var(--background, #ffffff));--dv-fg: var(--data-fg, var(--foreground, #18181b));--dv-muted: var(--data-muted, var(--muted-foreground, #71717a));--dv-subtle: var(--data-subtle, var(--muted, #f4f4f5));--dv-border: var(--data-border, var(--border, #e4e4e7));--dv-rule: var(--data-rule, var(--border, #ececef));--dv-hover: var(--data-hover, var(--accent, #f4f4f5));--dv-accent: var(--data-accent, var(--primary, #2563eb));--dv-on-accent: var(--data-on-accent, var(--primary-foreground, #ffffff));--dv-warn: var(--data-warn, var(--destructive, #b45309));--dv-good: var(--data-good, var(--dv-muted));--dv-bad: var(--data-bad, var(--dv-muted));--dv-radius: var(--data-radius, var(--radius, 6px));--dv-font: var(--data-font, var(--font-sans, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif));--dv-mono: var(--data-mono, var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace));--dv-row: var(--data-row, 30px);--dv-height: var(--data-height, 70vh);--dv-series-1: var(--data-series-1, var(--chart-1, #2a78d6));--dv-series-2: var(--data-series-2, var(--chart-2, #eb6834));--dv-series-3: var(--data-series-3, var(--chart-3, #1baf7a));--dv-series-4: var(--data-series-4, var(--chart-4, #eda100));--dv-series-5: var(--data-series-5, var(--chart-5, #e87ba4));--dv-series-6: var(--data-series-6, #008300);--dv-series-7: var(--data-series-7, #6250d6);--dv-series-8: var(--data-series-8, #e34948);--dv-basis-measured: var(--data-basis-measured, var(--dv-fg));--dv-basis-datasheet: var(--data-basis-datasheet, var(--dv-muted));--dv-basis-seller: var(--data-basis-seller, var(--dv-muted));--dv-basis-derived: var(--data-basis-derived, var(--dv-muted));--dv-basis-estimate: var(--data-basis-estimate, var(--dv-muted));--dv-basis-assumed: var(--data-basis-assumed, var(--dv-muted));--dv-basis-chosen: var(--data-basis-chosen, var(--dv-muted));--dv-basis-sampled: var(--data-basis-sampled, var(--dv-muted));--dv-basis-stand-in: var(--data-basis-stand-in, var(--dv-muted));--dv-basis-claimed: var(--data-basis-claimed, var(--dv-muted));--dv-accent-bg: color-mix(in srgb, var(--dv-accent) 12%, var(--dv-bg));--dv-group: color-mix(in srgb, var(--dv-subtle) 55%, var(--dv-bg))}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) :is(data-views,data-facets,data-value,data-kpi,data-sparkline,.data-ui):not([theme=light]){color-scheme:dark;--dv-bg: var(--data-bg, var(--background, #111113));--dv-fg: var(--data-fg, var(--foreground, #ececef));--dv-muted: var(--data-muted, var(--muted-foreground, #9a9aa3));--dv-subtle: var(--data-subtle, var(--muted, #1c1c20));--dv-border: var(--data-border, var(--border, #2c2c31));--dv-rule: var(--data-rule, var(--border, #222226));--dv-hover: var(--data-hover, var(--accent, #1d1d22));--dv-accent: var(--data-accent, var(--primary, #7aa7f2));--dv-on-accent: var(--data-on-accent, var(--primary-foreground, #0b1220));--dv-warn: var(--data-warn, var(--destructive, #f0a070));--dv-series-1: var(--data-series-1, var(--chart-1, #3987e5));--dv-series-2: var(--data-series-2, var(--chart-2, #d95926));--dv-series-3: var(--data-series-3, var(--chart-3, #199e70));--dv-series-4: var(--data-series-4, var(--chart-4, #c98500));--dv-series-5: var(--data-series-5, var(--chart-5, #d55181));--dv-series-6: var(--data-series-6, #008300);--dv-series-7: var(--data-series-7, #9085e9);--dv-series-8: var(--data-series-8, #e66767)}}:root[data-theme=dark] :is(data-views,data-facets,data-value,data-kpi,data-sparkline,.data-ui):not([theme=light]),:is(data-views,data-facets,data-value,data-kpi,data-sparkline,.data-ui)[theme=dark]{color-scheme:dark;--dv-bg: var(--data-bg, var(--background, #111113));--dv-fg: var(--data-fg, var(--foreground, #ececef));--dv-muted: var(--data-muted, var(--muted-foreground, #9a9aa3));--dv-subtle: var(--data-subtle, var(--muted, #1c1c20));--dv-border: var(--data-border, var(--border, #2c2c31));--dv-rule: var(--data-rule, var(--border, #222226));--dv-hover: var(--data-hover, var(--accent, #1d1d22));--dv-accent: var(--data-accent, var(--primary, #7aa7f2));--dv-on-accent: var(--data-on-accent, var(--primary-foreground, #0b1220));--dv-warn: var(--data-warn, var(--destructive, #f0a070));--dv-series-1: var(--data-series-1, var(--chart-1, #3987e5));--dv-series-2: var(--data-series-2, var(--chart-2, #d95926));--dv-series-3: var(--data-series-3, var(--chart-3, #199e70));--dv-series-4: var(--data-series-4, var(--chart-4, #c98500));--dv-series-5: var(--data-series-5, var(--chart-5, #d55181));--dv-series-6: var(--data-series-6, #008300);--dv-series-7: var(--data-series-7, #9085e9);--dv-series-8: var(--data-series-8, #e66767)}data-views{display:flex;flex-direction:column;position:relative;min-height:0;height:var(--dv-height);background:var(--dv-bg);color:var(--dv-fg);font:13px/1.35 var(--dv-font);border:1px solid var(--dv-border);border-radius:var(--dv-radius)}data-views[toolbar=none] .dv-head{display:none}data-views *,data-facets *,data-value *{box-sizing:border-box}.dv-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}data-views:not(.dv)>*{max-width:100%;overflow:auto}.dv-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:6px 8px 0;border-bottom:1px solid var(--dv-border)}.dv-tabs{display:flex;gap:2px;overflow-x:auto;flex:1 1 auto;min-width:0;scrollbar-width:none}.dv-tab{font:inherit;color:var(--dv-muted);background:none;border:0;border-bottom:2px solid transparent;padding:6px 8px 7px;white-space:nowrap;cursor:pointer}.dv-tab:hover{color:var(--dv-fg)}.dv-tab.dv-on{color:var(--dv-fg);border-bottom-color:var(--dv-fg);font-weight:600}.dv-tab-type{color:var(--dv-muted);font-weight:400;font-size:11px;margin-left:4px}.dv-mine{color:var(--dv-accent);margin-left:3px}.dv-tools{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding-bottom:6px}data-views[toolbar=compact] .dv-tools>.dv-btn:not(.dv-more){display:none}.dv-btn{font:inherit;font-size:12.5px;color:var(--dv-muted);background:none;border:1px solid transparent;border-radius:var(--dv-radius);padding:3px 8px;cursor:pointer;white-space:nowrap}.dv-btn:hover{background:var(--dv-hover);color:var(--dv-fg)}.dv-btn:focus-visible,.dv-tab:focus-visible,data-views tr:focus-visible,data-views th:focus-visible,data-facets :focus-visible{outline:2px solid var(--dv-accent);outline-offset:-2px}.dv-btn.dv-set{color:var(--dv-fg);font-weight:600}.dv-btn.dv-on{background:var(--dv-subtle);color:var(--dv-fg);border-color:var(--dv-border)}.dv-btn.dv-primary{background:var(--dv-accent);color:var(--dv-on-accent)}.dv-btn.dv-primary:hover{filter:brightness(1.08)}.dv-btn[disabled]{opacity:.45;cursor:default}.dv-dirty{display:inline-flex;gap:4px}.dv-dirty[hidden]{display:none}.dv-search input{font:inherit;font-size:12.5px;width:150px;padding:3px 8px;border:1px solid var(--dv-border);border-radius:var(--dv-radius);background:var(--dv-bg);color:var(--dv-fg)}.dv-status{padding:4px 10px;color:var(--dv-muted);font-size:12px;border-bottom:1px solid var(--dv-border);min-height:25px}.dv-notice{padding:6px 10px;font-size:12px;color:var(--dv-fg);background:var(--dv-subtle);border-bottom:1px solid var(--dv-border)}.dv-notice[hidden]{display:none}.dv-link{font:inherit;color:var(--dv-accent);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.dv-err{color:var(--dv-warn)}.dv-stage{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;position:relative}.dv-view{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.dv-loading{padding:16px;color:var(--dv-muted)}.dv-none{color:var(--dv-muted);opacity:.6}.dv-u,.dv-range{color:var(--dv-muted);font-size:.92em}.dv-basis{display:inline-block;margin-left:4px;min-width:1em;font-size:10px;line-height:1;vertical-align:1px;color:var(--dv-muted)}.dv-basis-measured{color:var(--dv-basis-measured)}.dv-basis-datasheet{color:var(--dv-basis-datasheet)}.dv-basis-seller{color:var(--dv-basis-seller)}.dv-basis-derived{color:var(--dv-basis-derived)}.dv-basis-estimate{color:var(--dv-basis-estimate)}.dv-basis-assumed{color:var(--dv-basis-assumed)}.dv-basis-chosen{color:var(--dv-basis-chosen)}.dv-basis-sampled{color:var(--dv-basis-sampled)}.dv-basis-stand-in{color:var(--dv-basis-stand-in)}.dv-basis-claimed{color:var(--dv-basis-claimed);font-style:italic}.dv-badge{display:inline-block;padding:0 7px;border-radius:999px;font-size:11.5px;line-height:18px;font-weight:500;background:color-mix(in srgb,var(--dv-badge, var(--dv-series-1)) 14%,var(--dv-bg));color:color-mix(in srgb,var(--dv-badge, var(--dv-series-1)) 72%,var(--dv-fg))}.dv-h1{--dv-badge: var(--dv-series-1)}.dv-h2{--dv-badge: var(--dv-series-2)}.dv-h3{--dv-badge: var(--dv-series-3)}.dv-h4{--dv-badge: var(--dv-series-4)}.dv-h5{--dv-badge: var(--dv-series-5)}.dv-h6{--dv-badge: var(--dv-series-6)}.dv-h7{--dv-badge: var(--dv-series-7)}.dv-h8{--dv-badge: var(--dv-series-8)}.dv-h0{--dv-badge: var(--dv-muted)}data-value{font-variant-numeric:tabular-nums}.dv-pop{position:absolute;z-index:20;width:min(380px,calc(100% - 16px));max-height:min(70vh,560px);overflow:auto;background:var(--dv-bg);color:var(--dv-fg);border:1px solid var(--dv-border);border-radius:calc(var(--dv-radius) + 2px);box-shadow:0 8px 28px #00000029;padding:10px 12px}.dv-pop h4{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--dv-muted)}.dv-pop h5{margin:12px 0 4px;font-size:11.5px;font-weight:600;color:var(--dv-muted)}.dv-pop label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:6px 0}.dv-pop label.dv-dir{justify-content:flex-end;margin-top:-2px}.dv-pop select,.dv-pop input:not([type=checkbox]):not([type=range]){font:inherit;font-size:12.5px;padding:3px 6px;border:1px solid var(--dv-border);border-radius:var(--dv-radius);background:var(--dv-bg);color:var(--dv-fg);min-width:0}.dv-pop .dv-rule{display:flex;gap:6px;align-items:center;margin:6px 0}.dv-pop .dv-rule select:first-child,.dv-pop .dv-rule input{flex:1 1 auto}.dv-pop code{flex:1 1 auto;font:12px var(--dv-mono);background:var(--dv-subtle);padding:3px 6px;border-radius:4px;overflow-wrap:anywhere}.dv-hint{color:var(--dv-muted);font-size:12px;margin:6px 0}.dv-seg{display:flex;gap:4px;margin:6px 0;flex-wrap:wrap}.dv-x{padding:2px 6px}.dv-props{list-style:none;margin:0;padding:0}.dv-prop{display:flex;align-items:center;gap:6px;padding:2px 0;border-radius:4px}.dv-prop label{flex:1 1 auto;justify-content:flex-start;margin:0;gap:6px}.dv-prop.dv-over{box-shadow:inset 0 2px 0 var(--dv-accent)}.dv-grip{color:var(--dv-muted);cursor:grab;font-size:11px;letter-spacing:-2px}.dv-prop[draggable=false] .dv-grip{visibility:hidden}.dv-yaml{font:12px/1.45 var(--dv-mono);background:var(--dv-subtle);padding:8px 10px;border-radius:6px;white-space:pre;overflow:auto;margin:0 0 8px;max-height:320px}.dv-peek{position:absolute;z-index:10;top:0;right:0;bottom:0;width:min(540px,100%);background:var(--dv-bg);border-left:1px solid var(--dv-border);box-shadow:-8px 0 24px #0000001a;overflow:auto;padding:0 14px 16px}.dv-peek header{position:sticky;top:0;background:var(--dv-bg);display:flex;align-items:center;gap:10px;padding:12px 0 8px;border-bottom:1px solid var(--dv-border);z-index:1}.dv-peek h2{font-size:15px;margin:0;flex:1 1 auto}.dv-peek h3{font-size:12px;font-weight:600;color:var(--dv-muted);margin:16px 0 6px}.dv-peeklink{color:var(--dv-accent);font-size:12.5px;white-space:nowrap}.dv-fields{width:100%;border-collapse:collapse;margin-top:8px}.dv-fields th,.dv-fields td{text-align:left;vertical-align:top;padding:4px 0;border-bottom:1px solid var(--dv-rule);font-size:12.5px}.dv-fields th{color:var(--dv-muted);font-weight:400;width:42%;padding-right:10px}.dv-fields tr.dv-active td,.dv-fields tr.dv-active th{background:var(--dv-accent-bg)}.dv-peektable{overflow-x:auto}.dv-peektable table{border-collapse:collapse;width:100%;font-size:12px}.dv-peektable th,.dv-peektable td{text-align:left;vertical-align:top;padding:4px 6px;border-bottom:1px solid var(--dv-rule)}.dv-peektable th{color:var(--dv-muted);font-weight:500;position:sticky;top:0;background:var(--dv-bg)}.dv-peektable td.dv-num{text-align:right;font-variant-numeric:tabular-nums}.dv-entries{list-style:none;margin:0;padding:0}.dv-entry{border-bottom:1px solid var(--dv-rule);padding:7px 6px;font-size:12.5px;border-radius:4px}.dv-entry.dv-active{background:var(--dv-accent-bg)}.dv-entry-line{display:flex;flex-wrap:wrap;gap:2px 12px}.dv-entry-kind{font-weight:600;min-width:64px}.dv-entry p{margin:3px 0 0;color:var(--dv-muted)}.dv-entry-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.03em;margin-right:4px}.dv-entry a,.dv-peek a{color:var(--dv-accent)}data-facets{display:block;color:var(--dv-fg);font:13px/1.35 var(--dv-font);background:var(--dv-bg);min-width:0}.df-box>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 2px;font-weight:600;font-size:13px}.df-box>summary::-webkit-details-marker{display:none}.df-box>summary .df-n{font-weight:400;color:var(--dv-muted);font-size:12px}.df-clear{font-size:12px}.df-group{border-top:1px solid var(--dv-rule);padding:8px 2px 10px;min-width:0}.df-group h4{margin:0 0 6px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:6px}.df-group h4 .dv-link{font-weight:400;font-size:11.5px;margin-left:auto}.df-fold{font:inherit;font-weight:600;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-align:left;min-width:0}.df-fold:before{content:"";display:inline-block;width:0;height:0;margin:0 6px 1px 1px;border:4px solid transparent;border-left:5px solid var(--dv-muted);border-right:0;vertical-align:middle}.df-fold[aria-expanded=true]:before{transform:rotate(90deg)}.df-fold .dv-u{color:var(--dv-muted);font-weight:400}.df-info{font:inherit;font-size:12px;line-height:1;color:var(--dv-muted);background:none;border:0;padding:1px 2px;cursor:pointer;border-radius:4px}.df-info:hover,.df-info[aria-expanded=true]{color:var(--dv-accent)}.df-help{margin:0 0 8px;font-size:12px;color:var(--dv-muted);background:var(--dv-subtle);border-radius:var(--dv-radius);padding:6px 8px}.df-warn{margin:0 0 6px;font-size:11.5px;color:var(--dv-warn)}.df-none{font-size:12px;color:var(--dv-muted);border-top:1px solid var(--dv-rule);padding:8px 2px;margin:0}.df-find,.df-search,.df-dropdown,.df-listbox{width:100%;font:inherit;font-size:12px;padding:3px 7px;margin:0 0 6px;border:1px solid var(--dv-border);border-radius:var(--dv-radius);background:var(--dv-bg);color:var(--dv-fg)}.df-search{margin:0;padding:5px 8px}.df-listbox{padding:2px}.df-listbox option{padding:2px 4px;border-radius:3px}.df-listbox option:checked{background:color-mix(in srgb,var(--dv-accent) 22%,var(--dv-bg));color:var(--dv-fg)}.df-values{list-style:none;margin:0;padding:0}.df-values li{display:flex;align-items:center;gap:2px}.df-values li label{display:flex;align-items:center;gap:7px;padding:2px 0;cursor:pointer;font-size:12.5px;flex:1 1 auto;min-width:0}.df-values li label:hover{color:var(--dv-fg);background:var(--dv-hover);border-radius:4px}.df-values .df-label,.df-tiles .df-label,.df-tree .df-label,.df-switch .df-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.df-count{color:var(--dv-muted);font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:400}.df-zero{opacity:.45}.df-values input,.df-seg input{accent-color:var(--dv-accent);margin:0}.df-ex{font:inherit;font-size:12px;line-height:1;color:var(--dv-muted);background:none;border:0;border-radius:4px;padding:2px 4px;cursor:pointer;opacity:.55}.df-values li:hover .df-ex,.df-ex:focus-visible,.df-ex[aria-pressed=true]{opacity:1}.df-ex:hover{color:var(--dv-warn);background:var(--dv-hover)}.df-excluded .df-label{text-decoration:line-through;color:var(--dv-warn)}.df-more{font-size:12px;margin-top:4px}.df-range{display:flex;align-items:center;gap:6px}.df-range input,.df-range select{width:0;flex:1 1 0;min-width:0;font:inherit;font-size:12px;padding:3px 6px;border:1px solid var(--dv-border);border-radius:var(--dv-radius);background:var(--dv-bg);color:var(--dv-fg)}.df-range span{color:var(--dv-muted)}.df-dates{margin-top:6px}.df-dates input{padding:2px 4px}.df-span{color:var(--dv-muted);font-size:11.5px;margin-top:4px}.df-custom{border-top:1px solid var(--dv-rule);padding:8px 2px;font-size:12px;color:var(--dv-muted)}.df-switch{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:12.5px}.df-switch input{position:absolute;opacity:0;width:1px;height:1px}.df-track{flex:0 0 auto;width:28px;height:16px;border-radius:999px;background:var(--dv-border);position:relative;transition:background .15s}.df-track:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--dv-bg);transition:transform .15s}.df-switch input:checked+.df-track{background:var(--dv-accent)}.df-switch input:checked+.df-track:after{transform:translate(12px)}.df-switch input:focus-visible+.df-track{outline:2px solid var(--dv-accent);outline-offset:2px}.df-seg{display:inline-flex;gap:10px;font-size:11.5px;color:var(--dv-muted);margin:0 0 6px}.df-seg label{display:inline-flex;align-items:center;gap:4px;cursor:pointer}.df-slider{padding:2px 0 0}.df-hist{display:block;width:100%;height:34px}.df-bar-all{fill:var(--dv-border);opacity:.55}.df-bar{fill:var(--dv-muted);opacity:.45}.df-bar.df-in{fill:var(--dv-accent);opacity:1}.df-rail{position:relative;height:18px}.df-rail:before{content:"";position:absolute;left:0;right:0;top:8px;height:3px;border-radius:2px;background:var(--dv-border)}.df-fill{position:absolute;top:8px;height:3px;left:var(--lo);right:calc(100% - var(--hi));background:var(--dv-accent);border-radius:2px}.df-rail input[type=range]{position:absolute;inset:0;width:100%;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none;height:18px}.df-rail input[type=range]::-webkit-slider-runnable-track{background:none;height:18px}.df-rail input[type=range]::-moz-range-track{background:none}.df-rail input[type=range]::-webkit-slider-thumb{pointer-events:auto;-webkit-appearance:none;width:16px;height:16px;margin-top:1px;border-radius:50%;background:var(--dv-bg);border:2px solid var(--dv-accent);cursor:grab}.df-rail input[type=range]::-moz-range-thumb{pointer-events:auto;width:12px;height:12px;border-radius:50%;background:var(--dv-bg);border:2px solid var(--dv-accent);cursor:grab}.df-rail input[type=range]:focus-visible{outline:none}.df-rail input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px color-mix(in srgb,var(--dv-accent) 35%,transparent)}.df-ends{display:flex;justify-content:space-between;gap:6px;font-size:11.5px;font-variant-numeric:tabular-nums}.df-ends span{color:var(--dv-muted)}.df-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}.df-chip{font:inherit;font-size:12px;color:var(--dv-fg);background:var(--dv-bg);border:1px solid var(--dv-border);border-radius:999px;padding:2px 9px;cursor:pointer;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.df-chip:hover{background:var(--dv-hover)}.df-chip[aria-pressed=true],.df-chip.df-on{background:color-mix(in srgb,var(--dv-accent) 14%,var(--dv-bg));border-color:var(--dv-accent)}.df-chip .dv-u{color:var(--dv-muted)}.df-current+.df-clear{display:inline-block;margin-top:6px}.df-rate{font:inherit;font-size:12.5px;color:var(--dv-fg);background:none;border:0;border-radius:4px;padding:2px 4px;width:100%;display:flex;align-items:center;gap:6px;cursor:pointer;text-align:left}.df-rate:hover{background:var(--dv-hover)}.df-rate[aria-pressed=true]{font-weight:600;background:color-mix(in srgb,var(--dv-accent) 12%,var(--dv-bg))}.df-rate .df-count{margin-left:auto}.df-stars{color:var(--dv-series-4);letter-spacing:1px}.df-tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--df-cols, 1),minmax(0,1fr));gap:4px}.df-tile{font:inherit;font-size:12px;color:var(--dv-fg);background:var(--dv-bg);border:1px solid var(--dv-border);border-radius:var(--dv-radius);padding:4px;width:100%;height:100%;cursor:pointer;display:flex;align-items:center;gap:6px;min-width:0;text-align:left}.df-tile:hover{background:var(--dv-hover)}.df-tile[aria-pressed=true]{border-color:var(--dv-accent);background:color-mix(in srgb,var(--dv-accent) 12%,var(--dv-bg));box-shadow:inset 0 0 0 1px var(--dv-accent)}.df-tiles-chips{display:flex;flex-wrap:wrap}.df-tiles-chips .df-tile{border-radius:999px;padding:2px 9px;width:auto}.df-tiles-grid .df-tile{justify-content:center;padding:3px 2px;font-variant-numeric:tabular-nums;text-align:center}.df-tiles-grid .df-label{text-align:center}.df-tiles-gallery .df-tile,.df-tiles-swatch .df-tile{flex-direction:column;justify-content:flex-start;text-align:center;padding:6px 4px 4px;gap:3px}.df-tiles-gallery .df-label,.df-tiles-swatch .df-label{width:100%;text-align:center;line-height:1.2;white-space:normal;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.df-tiles-swatch .df-label{font-size:10.5px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal}.df-tiles-gallery .df-count,.df-tiles-swatch .df-count{font-size:10.5px}.df-tile-img{display:block;width:100%;height:44px;object-fit:contain;flex:0 0 auto}.df-tiles-swatch .df-tile-img{width:34px;height:34px;border-radius:6px}.df-mono{display:grid;place-items:center;font-weight:700;font-size:12px;letter-spacing:.02em;border-radius:6px;width:34px;height:34px;margin:0 auto;background:color-mix(in srgb,var(--dv-badge, var(--dv-series-1)) 16%,var(--dv-bg));color:color-mix(in srgb,var(--dv-badge, var(--dv-series-1)) 75%,var(--dv-fg))}.df-tiles-gallery .df-mono{width:44px;height:44px}.df-color{border:1px solid var(--dv-border)}.df-tiles-picture-list{gap:1px}.df-tiles-picture-list .df-tile{border-color:transparent;padding:2px 4px}.df-tiles-picture-list .df-tile[aria-pressed=true]{border-color:var(--dv-accent)}.df-pic{flex:0 0 auto;width:34px;height:24px;object-fit:contain}.df-tiles-picture-list .df-mono{width:24px;height:24px;font-size:10px;margin:0}.df-ink{display:block;background:currentColor;-webkit-mask:var(--df-src) center / contain no-repeat;mask:var(--df-src) center / contain no-repeat}.df-diagram{display:block;width:100%;height:86px;margin:0 0 8px;color:var(--dv-fg)}img.df-diagram{object-fit:contain}.df-tree{list-style:none;margin:0;padding:0}.df-tree .df-tree{padding-left:14px}.df-node{font:inherit;font-size:12.5px;color:var(--dv-fg);background:none;border:0;border-radius:4px;padding:2px 4px 2px 0;width:100%;display:flex;align-items:center;gap:4px;cursor:pointer;text-align:left}.df-node:hover{background:var(--dv-hover)}.df-node[aria-pressed=true]>.df-label{font-weight:600}.df-caret{width:12px;flex:0 0 auto;color:var(--dv-muted);font-size:10px}@media(max-width:700px){.dv-head{padding:4px 6px 0}.dv-tools{width:100%}.dv-search input{width:110px}.dv-peek{width:100%;box-shadow:none}}.dv-form input[type=text],.dv-form input[type=number],.dv-form input[type=date],.dv-form select,.dv-form textarea{font:inherit;font-size:12.5px;width:100%;min-width:0;padding:3px 7px;color:var(--dv-fg);background:var(--dv-bg);border:1px solid var(--dv-border);border-radius:var(--dv-radius)}.dv-form textarea{resize:vertical;line-height:1.4}.dv-form input:focus-visible,.dv-form select:focus-visible,.dv-form textarea:focus-visible{outline:2px solid var(--dv-accent);outline-offset:-1px}.dv-form input:invalid{border-color:var(--dv-warn)}.dv-form input[type=checkbox]{accent-color:var(--dv-accent);margin:3px 0}.dv-form-num{display:flex;align-items:center;gap:6px}.dv-form-num input{flex:1 1 auto;font-variant-numeric:tabular-nums}.dv-form-num .dv-u{flex:0 0 auto}.dv-form-why{color:var(--dv-muted);font-size:11.5px}.dv-form td{padding-top:3px;padding-bottom:3px}.dv-form tr.dv-changed th{color:var(--dv-fg);font-weight:600}.dv-form-bar{position:sticky;bottom:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0 4px;background:var(--dv-bg);border-top:1px solid var(--dv-border);margin-top:12px}.dv-form-msg{margin:0;font-size:12.5px;color:var(--dv-muted)}.dv-form-msg.dv-refused{color:var(--dv-warn)}.dv-form-range{color:var(--dv-muted);font-size:11px;margin-top:2px}.dv-intro{padding:10px 12px 6px;border-bottom:1px solid var(--dv-border);display:flex;flex-direction:column;gap:6px;flex:0 0 auto}data-views.dv-has-intro:not([frame=page]):not([frame=bleed]){height:auto}data-views.dv-has-intro:not([frame=page]):not([frame=bleed])>.dv-stage{flex:0 0 auto;height:max(280px,calc(var(--dv-height) - 90px))}.dv-intro-cards,.dv-intro-cards .dv-kpi-wrap{padding:0}.dv-intro-cards .dv-kpi-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.dv-intro-cards data-kpi .dv-kpi-card{padding:8px 10px;min-height:0}.dv-intro-cards data-kpi .dv-kpi-num{font-size:20px}.dv-intro-cards data-kpi .dv-kpi-spark,.dv-intro-cards data-kpi .dv-kpi-history{max-height:22px}.dv-intro-text{color:var(--dv-fg);font-size:13.5px;line-height:1.5;max-width:110ch}.dv-intro-text p{margin:0 0 4px}.dv-intro-text p:last-child{margin-bottom:0}.dv-intro-text h2,.dv-intro-text h3{font-size:15px;margin:0 0 4px}.dv-intro-kpi[hidden],.dv-intro[hidden]{display:none}.dv-md{white-space:normal}.dv-md :is(h2,h3,h4){margin:10px 0 4px;font-size:1.05em}.dv-md pre{background:var(--dv-subtle);padding:6px 8px;border-radius:4px;overflow:auto;white-space:pre;font-size:12px}.dv-md code{font-family:var(--dv-mono);font-size:.92em}.dv-md table{border-collapse:collapse;font-size:12.5px;margin:6px 0}.dv-md th,.dv-md td{border-bottom:1px solid var(--dv-rule);padding:3px 6px;text-align:left;vertical-align:top;white-space:normal}.dv-md ul,.dv-md ol{padding-left:20px;margin:4px 0}.dv-rollup-dims{list-style:none;padding:0;margin:4px 0 8px;columns:2}.dv-rollup-dims li{break-inside:avoid;padding:2px 0}.dv-rolled-note{color:var(--dv-accent)}.dv-splitter{position:absolute;z-index:11;top:0;left:0;width:8px;cursor:col-resize;touch-action:none;outline:none}.dv-splitter[hidden]{display:none}.dv-splitter:after{content:"";position:absolute;top:0;bottom:0;left:3.5px;width:1px;background:var(--dv-border, var(--data-border, var(--border, #e4e4e7)));transition:background .12s,width .12s,left .12s}.dv-splitter:hover:after,.dv-splitter:focus-visible:after,.dv-splitter.dv-splitter-drag:after{left:2.5px;width:3px;background:var(--dv-accent, var(--data-accent, var(--primary, #2563eb)))}html.dv-splitting,html.dv-splitting *{cursor:col-resize!important;user-select:none!important}@media(prefers-reduced-motion:reduce){.dv-splitter:after{transition:none}}@media(min-width:701px){.dv-peek.dv-sized{width:min(var(--data-panel-width),100%)}data-facets.dv-sized{width:var(--data-panel-width);flex:none}}data-views{--dv-sticky-top: var(--data-sticky-top, 0px);--dv-bleed: var(--data-bleed, 0px);--dv-zebra: color-mix(in srgb, var(--dv-subtle) 65%, var(--dv-bg))}data-views:is([frame=flush],[frame=tabs],[frame=sheet],[frame=page],[frame=bleed]){border:0;border-radius:0}data-views:is([frame=flush],[frame=tabs],[frame=page])>.dv-head{padding-left:0;padding-right:0}data-views:is([frame=flush],[frame=tabs],[frame=page]) .dv-tab:first-child{padding-left:0}data-views:is([frame=flush],[frame=tabs],[frame=page])>.dv-status{padding-left:0;padding-right:0}data-views:is([frame=flush],[frame=tabs],[frame=page]) .dv-table :is(th,td):first-child{padding-left:0}data-views:not([frame=boxed]):is([frame]) :is(.dv-scroll,.dv-cards-scroll,.dv-list-scroll){scrollbar-width:thin}data-views[frame=flush]>.dv-status{border-bottom:0}data-views[frame=flush] .dv-table thead th,data-views[frame=flush] .dv-table thead th:first-child{background:var(--dv-bg)}data-views[frame=tabs]>.dv-head{flex-direction:column;align-items:stretch;gap:0;border-bottom:0;padding-top:0}data-views[frame=tabs] .dv-tabs{flex:none;gap:14px;border-bottom:1px solid var(--dv-border)}data-views[frame=tabs] .dv-tab{font-size:14px;padding:8px 2px 10px;margin-bottom:-1px}data-views[frame=tabs] .dv-tab.dv-on{border-bottom-color:var(--dv-accent)}data-views[frame=tabs] .dv-tab-type{display:none}data-views[frame=tabs] .dv-tools{padding:10px 0 6px}data-views[frame=tabs]>.dv-status{border-bottom:0;padding-bottom:6px}data-views[frame=tabs] .dv-table thead th,data-views[frame=tabs] .dv-table thead th:first-child{background:var(--dv-bg)}data-views:is([frame=tabs],[frame=bleed]) .dv-table td{border-bottom-color:transparent}data-views:is([frame=tabs],[frame=bleed]) .dv-table :where(tbody[data-p="0"]>tr.dv-row:nth-child(2n of[data-i]),tbody[data-p="1"]>tr.dv-row:nth-child(odd of[data-i]))>td{background:var(--dv-zebra)}data-views:is([frame=tabs],[frame=bleed]) .dv-table .dv-row:hover td{background:var(--dv-hover)}data-views:is([frame=tabs],[frame=bleed]) .dv-table .dv-row.dv-active td{background:var(--dv-accent-bg)}data-views:is([frame=tabs],[frame=bleed]) .dv-cards-card{border-color:transparent;background:transparent}data-views:is([frame=tabs],[frame=bleed]) .dv-cards-img{border-bottom:0;border-radius:calc(var(--dv-radius) + 2px)}data-views:is([frame=tabs],[frame=bleed]) .dv-cards-card:hover{border-color:transparent;background:var(--dv-hover)}data-views:is([frame=tabs],[frame=bleed]) .dv-cards-card.dv-active{border-color:var(--dv-accent)}data-views[frame=sheet]>.dv-head{background:var(--dv-subtle);border-bottom:0;padding:6px 8px 0;border-radius:calc(var(--dv-radius) + 2px) calc(var(--dv-radius) + 2px) 0 0}data-views[frame=sheet] .dv-tab{border-bottom:0;border-radius:var(--dv-radius);padding:4px 10px;margin:0 0 6px}data-views[frame=sheet] .dv-tab.dv-on{background:var(--dv-bg);font-weight:600}data-views[frame=sheet] .dv-tools .dv-btn:hover{background:var(--dv-bg)}data-views[frame=sheet] .dv-search input{border-color:transparent}data-views[frame=sheet]>.dv-status{background:var(--dv-subtle);border-bottom:0}data-views[frame=sheet] .dv-table thead th{border-bottom-color:transparent}data-views[frame=sheet] .dv-table :is(th,td):first-child{border-right-color:transparent}data-views[frame=sheet] .dv-cards-scroll{background:var(--dv-subtle);border-radius:0 0 calc(var(--dv-radius) + 2px) calc(var(--dv-radius) + 2px)}data-views[frame=sheet] .dv-cards-card{border-color:transparent}data-views[frame=sheet] .dv-cards-img{border-bottom-color:transparent}data-views[frame=sheet] .dv-cards-head{border-bottom-color:transparent}data-views[frame=sheet] .dv-view-chart .dv-chart-bar{border-bottom-color:transparent;background:var(--dv-subtle)}data-views[data-scroll=page]{height:auto}data-views[data-scroll=page]>.dv-head{position:sticky;top:calc(var(--dv-sticky-top) - var(--dv-pad-top, 0px));z-index:6;background:var(--dv-bg)}data-views[data-scroll=page]>.dv-status{position:sticky;top:calc(var(--dv-sticky-top) - var(--dv-pad-top, 0px) + var(--dv-head-h, 0px));z-index:6;background:var(--dv-bg)}data-views[data-scroll=page] :is(.dv-scroll,.dv-cards-scroll,.dv-list-scroll){flex:none;overflow-y:hidden}data-views[data-scroll=page] :is(.dv-cards-scroll,.dv-list-scroll){overflow-x:hidden}data-views[data-scroll=page][data-fill]>.dv-stage{flex:none;height:calc(var(--dv-port-h, 70vh) - var(--dv-band-h, 0px) - var(--dv-sticky-top));min-height:320px}data-views[data-scroll=page] .dv-scroll{overflow-x:auto;scrollbar-width:none;view-timeline:--dv-rows block;view-timeline-inset:calc(var(--dv-sticky-top) + var(--dv-band-h, 0px)) 0px}data-views[data-scroll=page] .dv-scroll::-webkit-scrollbar{display:none}data-views[data-scroll=page] .dv-table thead{position:relative;z-index:3}@supports (animation-timeline: view()){data-views[data-scroll=page] .dv-table thead{animation:dv-pin linear both;animation-timeline:--dv-rows;animation-range:exit-crossing 0% exit-crossing calc(100% - var(--dv-thead-h, 0px))}}@keyframes dv-pin{0%{transform:translateY(0)}to{transform:translateY(calc(var(--dv-rows-h, 0px) - var(--dv-thead-h, 0px)))}}.dv-hbar{position:sticky;bottom:0;z-index:4;overflow-x:auto;overflow-y:hidden;background:var(--dv-bg)}.dv-hbar[hidden]{display:none}.dv-hbar>div{height:1px}data-views[data-scroll=page]>.dv-peek{position:fixed;top:calc(var(--dv-port-top, 0px) + var(--dv-sticky-top));bottom:var(--dv-port-bottom, 0px);right:var(--dv-port-right, 0px);z-index:30}data-views[data-scroll=page]>.dv-peek+.dv-splitter{position:fixed;z-index:31}data-views[frame=page]>.dv-status{border-bottom-color:var(--dv-border)}data-views[frame=bleed]{margin-left:calc(-1 * var(--dv-bleed));margin-right:calc(-1 * var(--dv-bleed))}data-views[frame=bleed]>.dv-head{background:var(--dv-subtle);border-bottom:0;padding-left:var(--dv-bleed);padding-right:var(--dv-bleed)}data-views[frame=bleed] .dv-tab:first-child{padding-left:0}data-views[frame=bleed]>.dv-status{background:var(--dv-subtle);padding-left:var(--dv-bleed);padding-right:var(--dv-bleed)}data-views[frame=bleed] .dv-table thead th,data-views[frame=bleed] .dv-table thead th:first-child{background:var(--dv-bg)}data-views[frame=bleed] .dv-table :is(th,td):first-child{padding-left:var(--dv-bleed);border-right-color:transparent}data-views[frame=bleed] .dv-table :is(th,td):last-child{padding-right:var(--dv-bleed)}data-views[frame=bleed] .dv-view-chart .dv-chart-bar{padding-left:var(--dv-bleed);padding-right:var(--dv-bleed)}data-views :is(tr.dv-row,.dv-cards-card){touch-action:manipulation}.dv-stage a.dv-open-link,.dv-peek h2 a.dv-open-link{color:inherit;text-decoration:none}.dv-stage a.dv-open-link:hover,.dv-peek h2 a.dv-open-link:hover,data-views[data-open=link] :is(tr.dv-row,.dv-cards-card):hover a.dv-open-link{text-decoration:underline;text-underline-offset:2px}data-views[data-open=link] .dv-cards-card{cursor:pointer}.dv-open-check{margin:0 7px 0 0;vertical-align:-2px;accent-color:var(--dv-accent);cursor:pointer}.dv-cards-card .dv-open-check{position:absolute;top:8px;left:8px;z-index:1;width:16px;height:16px;margin:0}data-views .dv-row.dv-open-sel td,data-views .dv-row.dv-open-sel td:first-child{background:var(--dv-accent-bg)}data-views .dv-row.dv-open-sel td:first-child{box-shadow:inset 3px 0 0 var(--dv-accent)}.dv-cards-card.dv-open-sel{border-color:var(--dv-accent);box-shadow:0 0 0 1px var(--dv-accent)}.dv-open-selected .dv-link{margin-left:4px}.dv-open-rec header{gap:12px}.dv-open-thumb{flex:0 0 auto;width:56px;height:56px;object-fit:contain;background:var(--dv-subtle);border:1px solid var(--dv-border);border-radius:var(--dv-radius)}.dv-open-nophoto{background:repeating-linear-gradient(135deg,var(--dv-subtle) 0 6px,var(--dv-bg) 6px 12px)}.dv-open-titles{flex:1 1 auto;min-width:0}.dv-open-titles h2{margin:0;line-height:1.25;overflow-wrap:anywhere}.dv-open-sub{margin:2px 0 0;color:var(--dv-muted);font-size:12.5px}.dv-open-back{display:none;flex:0 0 auto;color:var(--dv-fg);border-color:var(--dv-border)}.dv-open-trail ol{display:flex;flex-wrap:wrap;align-items:center;gap:0 4px;margin:0 0 3px;padding:0;list-style:none;font-size:12px;line-height:18px;color:var(--dv-muted);min-width:0}.dv-open-trail li{min-width:0;max-width:100%;display:flex}.dv-open-trail li>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:22ch}.dv-open-trail li:last-child>*{max-width:100%}.dv-open-crumb{font:inherit;color:inherit;background:none;border:0;border-radius:4px;padding:0 3px;margin:0 -3px;cursor:pointer}.dv-open-crumb:hover{color:var(--dv-fg);background:var(--dv-hover)}.dv-open-crumb:focus-visible{outline:2px solid var(--dv-accent);outline-offset:0}.dv-open-trail [aria-current]{color:var(--dv-fg)}.dv-open-sep{flex:0 0 auto}a.dv-open-expand{flex:0 0 auto;color:var(--dv-fg);text-decoration:none;border-color:var(--dv-border);font-size:15px;line-height:1}a.dv-open-rel{color:var(--dv-accent);text-decoration:none}.dv-open-chip:has(.dv-open-rel){max-width:100%}.dv-open-chip dd:has(.dv-open-rel){white-space:normal}a.dv-open-rel:hover{text-decoration:underline;text-underline-offset:2px}.dv-open-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid var(--dv-rule)}.dv-open-nav{display:inline-flex;align-items:center;gap:2px;color:var(--dv-muted);font-size:12.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.dv-open-nav .dv-btn{font-size:15px;line-height:1;padding:2px 8px}.dv-open-pos{padding:0 2px}a.dv-open-page{color:var(--dv-accent);text-decoration:none;border-color:var(--dv-border)}a.dv-open-page:hover{text-decoration:underline;text-underline-offset:2px}.dv-open-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0}.dv-open-chip{border:1px solid var(--dv-border);border-radius:var(--dv-radius);padding:3px 8px;background:var(--dv-bg);min-width:0}.dv-open-chip dt{font-size:10.5px;color:var(--dv-muted);white-space:nowrap}.dv-open-chip dd{margin:0;font-weight:600;font-size:12.5px;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--dv-fg)}.dv-open-tabs{display:flex;gap:2px;margin:12px 0 0;border-bottom:1px solid var(--dv-border)}.dv-open-tab{font:inherit;font-size:12.5px;color:var(--dv-muted);background:none;border:0;border-bottom:2px solid transparent;padding:5px 8px 6px;cursor:pointer}.dv-open-tab:hover{color:var(--dv-fg)}.dv-open-tab.dv-on{color:var(--dv-fg);border-bottom-color:var(--dv-fg);font-weight:600}.dv-open-tab:focus-visible{outline:2px solid var(--dv-accent);outline-offset:-2px}.dv-open-panel[hidden]{display:none}.dv-open-sources{list-style:none;margin:8px 0 0;padding:0}.dv-open-sources li{padding:6px 0;border-bottom:1px solid var(--dv-rule);font-size:12.5px}.dv-open-srcfield{display:inline-block;min-width:110px;color:var(--dv-muted)}.dv-open-prov{color:var(--dv-muted);font-size:11.5px;margin-top:1px}.dv-peek:focus-visible{outline:2px solid var(--dv-accent);outline-offset:-2px}data-views.dv-split .dv-stage{margin-right:var(--dv-open-pane, 540px)}data-views.dv-split>.dv-peek{top:var(--dv-open-top, 0);box-shadow:none;border-radius:0 0 var(--dv-radius) 0}data-views.dv-split[data-scroll=page]>.dv-peek{top:var(--dv-open-top, 0px)}data-views.dv-full>.dv-peek,data-views.dv-full[data-scroll]>.dv-peek{position:fixed;inset:0;z-index:1000;width:100%;max-width:none;border:0;border-radius:0;box-shadow:none;padding:0 14px 24px}data-views.dv-full>.dv-peek .dv-open-back{display:inline-block}data-views.dv-full>.dv-peek .dv-close{display:none}data-views.dv-full>.dv-splitter{display:none}data-views[data-open=expand] .dv-scroll{container-type:inline-size}data-views .dv-row.dv-open-on td,data-views .dv-row.dv-open-on td:first-child{background:var(--dv-subtle);border-bottom-color:transparent}.dv-table tr.dv-open-band>td,.dv-table tr.dv-open-band>td:first-child{height:auto;padding:0;white-space:normal;overflow:visible;position:static;background:var(--dv-subtle);border-right:0;border-bottom:1px solid var(--dv-border);cursor:default}.dv-open-bandin{position:sticky;left:0;width:100cqw;display:flex;gap:16px;padding:10px 14px 14px;color:var(--dv-fg)}.dv-open-bandphoto{flex:0 0 auto;width:132px;height:132px;object-fit:contain;background:var(--dv-bg);border:1px solid var(--dv-border);border-radius:var(--dv-radius)}.dv-open-bandmain{flex:1 1 auto;min-width:0}.dv-open-bandtop{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.dv-open-bandtop b{font-size:14px}.dv-open-bandtop .dv-open-page{margin-left:auto}.dv-open-bandin .dv-open-chips{margin-top:6px}.dv-open-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:0 18px;margin:10px 0 0}.dv-open-grid>div,.dv-open-list>div{display:flex;justify-content:space-between;gap:8px;min-width:0;border-bottom:1px solid var(--dv-rule);font-size:12px;line-height:21px}.dv-open-grid dt,.dv-open-list dt{color:var(--dv-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dv-open-grid dd,.dv-open-list dd{margin:0;color:var(--dv-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right;font-variant-numeric:tabular-nums}.dv-cards-card.dv-open-on{border-color:var(--dv-accent)}.dv-open-more{margin-top:6px;border-top:1px solid var(--dv-rule);padding-top:4px;cursor:default}.dv-open-list{margin:0}.dv-open-list>div{line-height:18px;height:19px}.dv-open-more .dv-open-page{display:inline-block;margin-top:6px}.dv-open-more .dv-badge{line-height:15px}@media(max-width:640px){.dv-open-bandin{flex-direction:column;gap:8px}.dv-open-bandphoto{width:96px;height:96px}}
