@svgrid/grid 3.0.2 → 3.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/dist/GridMenus.svelte +44 -2
- package/dist/SvChartMenu.svelte +69 -0
- package/dist/SvChartMenu.svelte.d.ts +11 -0
- package/dist/SvChartPanes.svelte +113 -0
- package/dist/SvChartPanes.svelte.d.ts +20 -0
- package/dist/SvGrid.controller.svelte.d.ts +110 -39
- package/dist/SvGrid.controller.svelte.js +655 -200
- package/dist/SvGrid.css +105 -2
- package/dist/SvGrid.svelte +386 -514
- package/dist/SvGrid.types.d.ts +210 -9
- package/dist/SvGridCellEditor.svelte +17 -0
- package/dist/SvGridChart.svelte +2257 -329
- package/dist/SvGridChart.svelte.d.ts +6 -106
- package/dist/SvGridChart.types.d.ts +338 -0
- package/dist/SvGridChart.types.js +1 -0
- package/dist/SvGridChartBuilder.svelte +323 -0
- package/dist/SvGridChartBuilder.svelte.d.ts +34 -0
- package/dist/SvGridChartPanel.svelte +221 -275
- package/dist/SvGridChartPickers.svelte +417 -0
- package/dist/SvGridChartPickers.svelte.d.ts +70 -0
- package/dist/SvGridChartView.svelte +13 -14
- package/dist/SvModal.svelte +7 -1
- package/dist/SvModal.svelte.d.ts +5 -0
- package/dist/ai.d.ts +40 -8
- package/dist/ai.js +135 -24
- package/dist/aria.d.ts +11 -0
- package/dist/build-api.js +108 -22
- package/dist/cdn/GridMenus-7kbpnnBW.js +635 -0
- package/dist/cdn/GridMenus-BL7ZgQvU.js +636 -0
- package/dist/cdn/SvChartMenu-Bl6PBbkT.js +58 -0
- package/dist/cdn/SvChartMenu-FBSMINA6.js +59 -0
- package/dist/cdn/{SvDateRangeInput-DMLKmGEc.js → SvDateRangeInput-BeU_TkbQ.js} +15 -14
- package/dist/cdn/{SvDateRangeInput-CaOuMs8O.js → SvDateRangeInput-yX8vzleW.js} +38 -37
- package/dist/cdn/{SvDateTimePicker-sonaH0oh.js → SvDateTimePicker-DQwt4UAs.js} +139 -180
- package/dist/cdn/SvDateTimePicker-vNU6bZ-q.js +775 -0
- package/dist/cdn/{SvGridCellEditor-CjEJMJKc.js → SvGridCellEditor-B1p-vCK5.js} +188 -178
- package/dist/cdn/{SvGridCellEditor-BWnTi2N7.js → SvGridCellEditor-D_0q4xAu.js} +98 -88
- package/dist/cdn/SvGridChart-C3EWAZaM.js +3574 -0
- package/dist/cdn/SvGridChart-DzLkSwCH.js +3572 -0
- package/dist/cdn/SvGridChartBuilder-BE2T1ykB.js +783 -0
- package/dist/cdn/SvGridChartBuilder-CfII62sZ.js +784 -0
- package/dist/cdn/SvGridChartPanel-CCX5_Wgd.js +675 -0
- package/dist/cdn/SvGridChartPanel-xf4sWVTo.js +699 -0
- package/dist/cdn/SvGridChartView-CfuXmY5I.js +48 -0
- package/dist/cdn/SvGridChartView-DYwabQWj.js +47 -0
- package/dist/cdn/SvMenuList-CLN8OuIK.js +452 -0
- package/dist/cdn/SvMenuList-DkGhNKjf.js +451 -0
- package/dist/cdn/SvModal-BAE-pjZX.js +396 -0
- package/dist/cdn/SvModal-CIZWCcad.js +397 -0
- package/dist/cdn/chart-Dz7SqMXH.js +4341 -0
- package/dist/cdn/chart-export-BXqueeWJ.js +135 -0
- package/dist/cdn/chart-export-pdf-DONFUnNY.js +110 -0
- package/dist/cdn/chart-panel-messages-CUbf2R4i.js +1052 -0
- package/dist/cdn/chart-panel-messages-CmNrMdsr.js +1053 -0
- package/dist/cdn/chart-summary-BJW_tg_X.js +138 -0
- package/dist/cdn/chart-trend-CaN9mDEV.js +50 -0
- package/dist/cdn/chart-validate-HcOVFAfJ.js +188 -0
- package/dist/cdn/{column-resize-DsfNXMom.js → column-resize-DpmOLfRp.js} +3 -3
- package/dist/cdn/{date-format-BnnHlqGw.js → date-format-CtquV-p3.js} +583 -603
- package/dist/cdn/{date-format-BNii4zeD.js → date-format-D6KFzU_W.js} +347 -367
- package/dist/cdn/dismissable-DAHetSNk.js +44 -0
- package/dist/cdn/editor-contract-LXgQJAgd.js +22 -0
- package/dist/cdn/focus-trap-BBOQYBma.js +65 -0
- package/dist/cdn/{row-resize-BRcimkUT.js → row-resize-niQCp040.js} +44 -36
- package/dist/cdn/{src-DNbz94Ct.js → src-BKhZ6eXd.js} +10227 -9787
- package/dist/cdn/{src-BJ2opd0j.js → src-V1uu8iE9.js} +6568 -6128
- package/dist/cdn/svgrid.js +26 -15
- package/dist/cdn/svgrid.svelte-external.js +26 -15
- package/dist/chart-axes.d.ts +53 -0
- package/dist/chart-axes.js +351 -0
- package/dist/chart-cartesian.d.ts +88 -0
- package/dist/chart-cartesian.js +1862 -0
- package/dist/chart-decimate.d.ts +51 -0
- package/dist/chart-decimate.js +199 -0
- package/dist/chart-export-pdf.d.ts +47 -0
- package/dist/chart-export-pdf.js +187 -0
- package/dist/chart-export.d.ts +2 -1
- package/dist/chart-export.js +18 -3
- package/dist/chart-financial.d.ts +91 -0
- package/dist/chart-financial.js +175 -0
- package/dist/chart-flow.d.ts +10 -0
- package/dist/chart-flow.js +298 -0
- package/dist/chart-format.d.ts +18 -0
- package/dist/chart-format.js +65 -0
- package/dist/chart-grid.d.ts +8 -0
- package/dist/chart-grid.js +190 -0
- package/dist/chart-hierarchy.d.ts +17 -0
- package/dist/chart-hierarchy.js +146 -0
- package/dist/chart-indicators.d.ts +115 -0
- package/dist/chart-indicators.js +389 -0
- package/dist/chart-messages.d.ts +95 -0
- package/dist/chart-messages.js +92 -0
- package/dist/chart-motion.d.ts +16 -0
- package/dist/chart-motion.js +141 -0
- package/dist/chart-panel-messages.d.ts +265 -0
- package/dist/chart-panel-messages.js +285 -0
- package/dist/chart-pivot.d.ts +87 -0
- package/dist/chart-pivot.js +156 -0
- package/dist/chart-polar.d.ts +25 -0
- package/dist/chart-polar.js +700 -0
- package/dist/chart-samples.d.ts +16 -0
- package/dist/chart-samples.js +153 -0
- package/dist/chart-scale.d.ts +113 -0
- package/dist/chart-scale.js +405 -0
- package/dist/chart-stats.d.ts +111 -0
- package/dist/chart-stats.js +419 -0
- package/dist/chart-stream.d.ts +45 -0
- package/dist/chart-stream.js +91 -0
- package/dist/chart-summary.d.ts +27 -0
- package/dist/chart-summary.js +205 -0
- package/dist/chart-sync.svelte.d.ts +32 -0
- package/dist/chart-sync.svelte.js +23 -0
- package/dist/chart-table.d.ts +35 -0
- package/dist/chart-table.js +165 -0
- package/dist/chart-trend.d.ts +19 -0
- package/dist/chart-trend.js +61 -0
- package/dist/chart-types.d.ts +1456 -0
- package/dist/chart-types.js +6 -0
- package/dist/chart-validate.d.ts +43 -0
- package/dist/chart-validate.js +272 -0
- package/dist/chart-zoom.d.ts +40 -0
- package/dist/chart-zoom.js +145 -0
- package/dist/chart.d.ts +186 -865
- package/dist/chart.js +460 -2204
- package/dist/clipboard.d.ts +1 -0
- package/dist/clipboard.js +137 -18
- package/dist/column-resize.d.ts +3 -0
- package/dist/column-resize.js +4 -1
- package/dist/columns.js +3 -0
- package/dist/command-context.d.ts +19 -0
- package/dist/command-context.js +116 -0
- package/dist/core.d.ts +7 -0
- package/dist/createPopoverSelect.svelte.d.ts +2 -2
- package/dist/editing.d.ts +2 -8
- package/dist/editing.js +262 -33
- package/dist/fill-patterns.d.ts +0 -5
- package/dist/fill-patterns.js +56 -2
- package/dist/grid-messages.d.ts +10 -3
- package/dist/grid-messages.js +5 -0
- package/dist/history.d.ts +83 -0
- package/dist/history.js +133 -0
- package/dist/index.d.ts +24 -6
- package/dist/index.js +20 -2
- package/dist/keyboard-handlers.js +88 -31
- package/dist/keyboard.d.ts +55 -0
- package/dist/keyboard.js +132 -0
- package/dist/menus.d.ts +3 -1
- package/dist/menus.js +7 -2
- package/dist/merges.d.ts +97 -0
- package/dist/merges.js +147 -0
- package/dist/row-resize.d.ts +3 -0
- package/dist/row-resize.js +14 -0
- package/dist/scroll-sync.d.ts +1 -0
- package/dist/scroll-sync.js +24 -0
- package/dist/selection.d.ts +16 -0
- package/dist/selection.js +108 -16
- package/dist/shortcut-registry.d.ts +145 -0
- package/dist/shortcut-registry.js +44 -0
- package/dist/svgrid-wrapper.types.d.ts +213 -22
- package/dist/virtualization/virtualizer.js +38 -17
- package/package.json +6 -1
- package/src/GridMenus.svelte +44 -2
- package/src/SvChartMenu.svelte +69 -0
- package/src/SvChartPanes.svelte +113 -0
- package/src/SvChartPanes.test.ts +66 -0
- package/src/SvGrid.controller.svelte.ts +629 -172
- package/src/SvGrid.css +105 -2
- package/src/SvGrid.svelte +386 -514
- package/src/SvGrid.types.ts +188 -8
- package/src/SvGridCellEditor.svelte +17 -0
- package/src/SvGridChart.svelte +2257 -329
- package/src/SvGridChart.test.ts +1419 -1
- package/src/SvGridChart.types.ts +336 -0
- package/src/SvGridChartBuilder.svelte +323 -0
- package/src/SvGridChartPanel.svelte +221 -275
- package/src/SvGridChartPickers.svelte +417 -0
- package/src/SvGridChartView.svelte +13 -14
- package/src/SvModal.svelte +7 -1
- package/src/SvModal.test.ts +9 -0
- package/src/ai.test.ts +57 -2
- package/src/ai.ts +166 -22
- package/src/aria.d.ts +11 -0
- package/src/build-api.coverage.test.ts +184 -0
- package/src/build-api.ts +107 -18
- package/src/chart-axes.test.ts +573 -0
- package/src/chart-axes.ts +342 -0
- package/src/chart-cartesian.ts +1863 -0
- package/src/chart-decimate.test.ts +249 -0
- package/src/chart-decimate.ts +186 -0
- package/src/chart-export-pdf.test.ts +91 -0
- package/src/chart-export-pdf.ts +207 -0
- package/src/chart-export.test.ts +14 -0
- package/src/chart-export.ts +13 -3
- package/src/chart-financial.ts +208 -0
- package/src/chart-flow.ts +286 -0
- package/src/chart-format.ts +67 -0
- package/src/chart-grid.ts +179 -0
- package/src/chart-hierarchy.ts +135 -0
- package/src/chart-indicators.test.ts +443 -0
- package/src/chart-indicators.ts +384 -0
- package/src/chart-messages.test.ts +21 -0
- package/src/chart-messages.ts +184 -0
- package/src/chart-motion.test.ts +71 -0
- package/src/chart-motion.ts +148 -0
- package/src/chart-panel-messages.test.ts +29 -0
- package/src/chart-panel-messages.ts +550 -0
- package/src/chart-pivot.test.ts +54 -0
- package/src/chart-pivot.ts +225 -0
- package/src/chart-polar.ts +674 -0
- package/src/chart-samples.ts +106 -0
- package/src/chart-scale.ts +394 -0
- package/src/chart-series-types.test.ts +714 -0
- package/src/chart-stats.ts +409 -0
- package/src/chart-stream.test.ts +75 -0
- package/src/chart-stream.ts +114 -0
- package/src/chart-summary.test.ts +90 -0
- package/src/chart-summary.ts +197 -0
- package/src/chart-sync.svelte.ts +41 -0
- package/src/chart-table.test.ts +76 -0
- package/src/chart-table.ts +178 -0
- package/src/chart-trend.ts +47 -0
- package/src/chart-types.ts +1309 -0
- package/src/chart-validate.test.ts +100 -0
- package/src/chart-validate.ts +247 -0
- package/src/chart-zoom.test.ts +137 -0
- package/src/chart-zoom.ts +124 -0
- package/src/chart.coverage.test.ts +81 -0
- package/src/chart.test.ts +56 -3
- package/src/chart.ts +557 -2784
- package/src/clipboard.test.ts +151 -0
- package/src/clipboard.ts +145 -16
- package/src/column-resize.ts +7 -1
- package/src/columns.ts +2 -0
- package/src/command-context.test.ts +200 -0
- package/src/command-context.ts +137 -0
- package/src/core.ts +7 -0
- package/src/editing.test.ts +281 -3
- package/src/editing.ts +256 -38
- package/src/fill-patterns.test.ts +35 -0
- package/src/fill-patterns.ts +56 -2
- package/src/grid-messages.ts +16 -3
- package/src/history.test.ts +196 -0
- package/src/history.ts +162 -0
- package/src/icon-seam.test.ts +3 -2
- package/src/index.ts +150 -2
- package/src/keyboard-handlers.coverage.test.ts +126 -6
- package/src/keyboard-handlers.ts +91 -30
- package/src/keyboard-shortcuts.seam.test.ts +200 -0
- package/src/keyboard.test.ts +124 -1
- package/src/keyboard.ts +142 -0
- package/src/menus.test.ts +26 -0
- package/src/menus.ts +10 -3
- package/src/merges.test.ts +112 -0
- package/src/merges.ts +168 -0
- package/src/pivot.grid.test.ts +40 -5
- package/src/row-resize.test.ts +44 -0
- package/src/row-resize.ts +17 -0
- package/src/scroll-sync.test.ts +42 -1
- package/src/scroll-sync.ts +25 -0
- package/src/selection.multi-range.test.ts +34 -0
- package/src/selection.test.ts +30 -2
- package/src/selection.ts +111 -19
- package/src/shortcut-registry.test.ts +97 -0
- package/src/shortcut-registry.ts +181 -0
- package/src/svgrid-wrapper.types.ts +184 -13
- package/src/svgrid.behavior.test.ts +135 -0
- package/src/svgrid.charting.test.ts +513 -3
- package/src/svgrid.context-menu.test.ts +31 -0
- package/src/svgrid.new-features.wrapper.test.ts +10 -3
- package/src/virtualization/virtualizer.ts +39 -17
- package/dist/cdn/GridMenus-DyFA-QxA.js +0 -602
- package/dist/cdn/GridMenus-M2XP9t0_.js +0 -603
- package/dist/cdn/SvDateTimePicker-CCbDZNZB.js +0 -816
- package/dist/cdn/SvGridChart-DAb9RbRs.js +0 -1480
- package/dist/cdn/SvGridChart-Yl-IXZFO.js +0 -1481
- package/dist/cdn/SvGridChartPanel-DayQpDsR.js +0 -834
- package/dist/cdn/SvGridChartPanel-aqf8n-vJ.js +0 -810
- package/dist/cdn/SvGridChartView-CxfakxR0.js +0 -56
- package/dist/cdn/SvGridChartView-Dm_YEx9L.js +0 -55
- package/dist/cdn/chart-CKJRCPOk.js +0 -1652
|
@@ -1,17 +1,28 @@
|
|
|
1
1
|
import { i as ee, t as te } from "./cell-formatting-C2Hf5gqd.js";
|
|
2
|
-
import { $ as
|
|
3
|
-
import { c as
|
|
4
|
-
import { a as
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { t as
|
|
8
|
-
import {
|
|
9
|
-
import { t as
|
|
10
|
-
import {
|
|
11
|
-
import { t as
|
|
12
|
-
import { a as
|
|
13
|
-
import { t as
|
|
14
|
-
import { t as
|
|
15
|
-
export { Mr as ALL_FILTER_OPERATORS, qe as COUNTRIES, et as COUNTRY_BY_CODE, Us as DEFAULT_PALETTE, je as FOCUSABLE_SELECTOR, Lt as FlexRender, yi as GRID_ICON_GLYPHS, zr as GRID_ICON_NAMES, _s as PANEL_THEME_VARS, mt as PHONE_NATIONAL_LENGTHS, Ln as RANGE_OPERATOR_IDS, ja as SET_OPERATOR_IDS, Qn as STRENGTH_LABELS, La as SvAccordion, pr as SvAlert, Xa as SvAnchor, Cr as SvAspectRatio, de as SvAutoComplete, ya as SvAvatar, br as SvAvatarGroup, xi as SvBadge, ka as SvBlockquote, Se as SvBreadcrumb, Fi as SvButton, xn as SvButtonGroup, Zo as SvCalendar, Dr as SvCard, En as SvCarousel, Q as SvChart, Q as SvGridChart, $ as SvChartPanel, $ as SvGridChartPanel, Di as SvCheckBox, or as SvChip, Ct as SvCircularProgress, _i as SvCode, zt as SvCollapsible, qi as SvColorInput, qt as SvComboBox, ne as SvCommand, K as SvContextMenu, Ke as SvCountryInput, Ds as SvDateRangeInput, Es as SvDateTimePicker, mi as SvDivider, ca as SvDockLayout, tt as SvDockManager, w as SvDrawer, cn as SvDropDownList, Hn as SvDurationInput, Ea as SvEmptyState, Yo as SvField, u as SvFileUpload, Ie as SvForm, at as SvGauge, ni as SvGrid, vs as SvGridDropdown, Qe as SvGridSelect, b as SvGroup, Fr as SvGroupCell, ce as SvHoverCard, Lr as SvKbd, Ar as SvList, Y as SvListBox, D as SvLoadingOverlay, Fn as SvMark, Sn as SvMaskedInput, an as SvMenu, ke as SvMenuList, Wt as SvMenubar, Ba as SvModal, io as SvMultiSelect, d as SvNavPane, kn as SvNumberInput, nr as SvOtpInput, yn as SvPagination, hn as SvPasswordInput, Te as SvPhoneInput, Zt as SvPopconfirm, R as SvPopover, to as SvProgress, _a as SvRadioGroup, vr as SvRating, Gn as SvRepeatButton, P as SvResult, gt as SvRichCell, Wr as SvRichText, hi as SvRowGroupPanel, Jr as SvScrollArea, ri as SvSegmented, Mt as SvSimpleGrid, Ui as SvSkeleton, ii as SvSlider, Kn as SvSparkline, it as SvSpinner, Nt as SvSplitter, Ia as SvStack, da as SvStat, Wi as SvStepper, na as SvSwitchButton, O as SvTabs, en as SvTagsInput, Ua as SvText, yt as SvTextArea, e as SvTextInput, Ts as SvTimePicker, Ii as SvTimeline, Yn as SvTitle, Vr as SvToaster, qr as SvToggleButton, Ut as SvTooltip, fn as SvTour, F as SvTree, H as SvTreeSelect, zi as SvVisuallyHidden, Qa as VALUELESS_OPERATOR_IDS, Go as addDays, ds as addMonths, ht as addPaneToMain, Vo as addYears, vt as agendaGroups, gi as aiChart, Ir as aiClassify, kr as aiExport, Pn as aiFilter, Oa as aiFindAnomalies, Ya as aiSmartFill, Jn as aiSummarize, G as allManagerIds, xe as allManagerPaneIds, rr as allPaneIds, hs as anchoredRect, q as announce, ir as applyExcelFilter, $e as applyGroupAggregate, A as applyMask, Ai as applyRowPredicate, ba as attachAutoSavedView, He as autoHideLeaf, kt as autoHidePaneToSide, so as autoHideWindow, j as autoUpdate, ki as avatarColorHue, ia as avatarInitials, zs as boxStats, ve as branchValues, _ as bringToFront, qn as broadcastChannelTransport, Dn as buildAutoGroupColumns, Vs as buildChart, Is as buildLinePath, S as buildSparkline, Qs as chartCsvExportable, ks as chartScales, Ys as chartSpecToCsv, qs as chartToPngBlob, Zs as chartToSvgString, Ao as clampDate, Pr as clearToasts, me as closeWindow, bo as coerceExportDate, pt as columnFilteringFeature, U as columnGroupingFeature, tc as columnResize, fi as compileExcelFilter, _r as computeColumnGroupMeta, An as computeColumnStat, Hs as computeOverlay, ct as computePosition, bt as contrastText, ho as copyTextToClipboard, Bt as createAccordion, Ot as createAutocomplete, mn as createButtonGroup, Wo as createCalendar, Tt as createCarousel, Rn as createCheckbox, Va as createCollaboration, C as createColorInput, ci as createColumnVirtualizer, un as createCombobox, V as createCommand, ye as createCoreRowModel, ei as createCountryInput, ws as createDateTimePicker, xs as createDismissableLayer, Yt as createDropdownList, Be as createExpandedRowModel, ti as createFileUpload, Dt as createFilteredRowModel, Ki as createFocusTrap, Zr as createForm, ua as createGauge, $r as createGrid, ai as createGridState, ao as createGroupedRowModel, At as createHyperFormulaSheet, oe as createListbox, L as createMaskedInput, oo as createMenu, sr as createNamedViews, l as createNumberInput, Kt as createOverlay, h as createPaginatedRowModel, p as createPagination, Ka as createPasswordInput, Ht as createPhoneInput, g as createPopoverSelect, o as createRadioGroup, Nr as createRating, Ja as createServerDataSource, Or as createServerGroupModel, ar as createSlider, tn as createSortedRowModel, x as createSplitter, ro as createStepper, X as createSvGrid, X as createTable, c as createSvGridState, Me as createSvelteVirtualizer, Ma as createSwitch, Br as createTabs, Ve as createTagsInput, bs as createTimePicker, $a as createToggle, ue as createTooltip, pi as createTree, fe as createTreeRowModel, De as createTypeaheadBuffer, la as createVirtualizer, ie as daysForView, m as debounce, us as decadeRange, Xt as dedupeManagerNodeIds, Oo as defaultEditorProps, Ae as defaultGridMessages, Uo as describeRecurrence, Ha as disableAiCharting, zn as dismissToast, ys as dismissableDepth, di as dockGroup, Ca as dockInto, ur as dockLeafToEdge, rn as dockManagerClosePane, r as dockManagerResizeGroup, jr as dockNormalize, wr as dockPane, dn as dockPaneOnto, se as dockPaneToEmptyMain, Xn as dockSetActive, Wa as dockSetSizes, Bi as dockTabs, Fe as dockWindowOnto, vo as downloadBlobFile, $s as downloadChartCsv, Js as downloadChartPng, Xs as downloadChartSvg, fo as downloadTextFile, No as editorAria, Po as editorErrorId, Fo as editorHintId, qo as emptySelection, jt as enableAiCharting, nn as enabledIndices, mr as eventsOnDay, ls as expandRecurrence, js as exponentialMovingAverage, Je as fileMatchesAccept, Jt as filterFns, ft as filterGridRows, wn as filterOptions, Xi as findLeafById, ze as findNodePath, vi as findTabsWithPane, W as flagEmoji, ln as flattenTreeData, Et as flattenVisible, Oe as floatPane, Ls as formatChartValue, ss as formatDate, Mi as formatDuration, t as formatNeedsStats, te as formatNumericWithConfig, go as formatValueForExport, yr as formatsNeedingStats, Ye as fromICS, M as fromZonedLocal, _e as fuzzyMatch, Re as fuzzyScore, y as getAIProvider, Ce as getAdvancedFilterEngine, Xe as getBoardView, wo as getCellEditor, a as getChartView, E as getExportProvider, we as getFocusable, fa as getGridCellA11yProps, Si as getGridCellDomId, Zi as getGridHeaderA11yProps, Hr as getGridRootA11yProps, Bn as getGridRowA11yProps, Wn as getKeyboardIntent, Pi as getNextActiveCell, le as getPivotEngine, no as getSchedulerView, ge as getSelectionBarView, _n as groupOptions, Fa as hasAIProvider, bn as hasAdvancedFilterEngine, ut as hasBoardView, Eo as hasCellEditor, Xr as hasChartView, pa as hasConflict, jn as hasGroups, Gt as hasPivotEngine, f as hasSchedulerView, Le as hasSelectionBarView, ga as hiddenLeavesForCollapse, ma as htmlToText, Ei as inferCellDataType, _t as insertGroupFooters, T as instantFromWallClock, os as isDisabledDay, Ge as isEmptyValue, Ko as isImportant, st as isMaskComplete, Jo as isMultiSelectMode, ui as isOtpComplete, es as isOutOfRange, Zn as isRangeOperator, cs as isRestricted, Ho as isSameDay, is as isSelected, Ga as isSetOperator, xt as isTypeaheadKey, Pt as isValuelessOperator, Mo as isoWeek, wa as joinInTokens, Ci as layoutDayEvents, va as lerpColor, Ws as linearTrend, xr as localStorageViews, Tn as locatePane, sn as lockScroll, fs as matchesRecurrence, Li as memoryViews, Rt as mockAIProvider, jo as monthMatrix, Qi as monthWeekSegments, Rr as movePane, Ta as moveTreeNode, vn as moveWindow, Ur as navigateAnchor, Bo as nextEditorId, n as nextTypeaheadIndex, Ms as niceLogScale, Ns as niceScale, rs as normalizeCalendarValue, aa as normalizeEditorOptions, dr as normalizeForFilter, za as normalizeHex, nt as normalizeTimeZone, Cs as onScrollOutside, Bs as ordinalDateTicks, Sa as otpCells, Vn as overlapCount, ji as overlapsBands, re as paginateGroupedRows, $t as paginationRange, ns as parseDate, sa as parseDuration, er as parseEditorValue, si as parsePlacement, Ss as parseTimeValue, Ft as passwordStrength, Na as pauseToast, be as phoneDigitsValid, Rs as pickContrastText, Mn as pinAutoHidden, gs as popIn, ms as portalToBody, yo as projectGridRows, ts as rangeDays, oa as rangeForView, pn as registerAdvancedFilterEngine, B as registerBoardView, hr as registerBuiltinEditors, Co as registerCellEditor, We as registerChartView, rt as registerExportProvider, on as registerPivotEngine, Qt as registerSchedulerView, wt as registerSelectionBarView, So as registeredCellEditorTypes, In as removeLeaf, Aa as removePane, Vt as renderComponent, wi as renderMarkdown, I as renderSnippet, Za as reorderPane, St as reorderTab, gr as resizeWindow, Oi as resolveCellFormat, ta as resolveColumnTypes, ee as resolveDatePattern, To as resolveEditorProps, tr as resolveEvents, Gi as resolveGridMessages, ps as resolveMessages, eo as resumeToast, ra as rgba, Kr as rowDropZone, ae as rowExpandingFeature, Ne as rowPaginationFeature, ec as rowResize, Ji as rowSelectionFeature, Ee as rowSortingFeature, Fs as rowsToBoxSpec, Ps as rowsToChartSpec, Os as rowsToDirectSpec, lt as rruleToRule, z as ruleToRRule, Ze as rules, dt as runRules, Gs as sampleGradient, $i as sanitizeHtml, lr as sanitizeOtp, J as scrollLockDepth, s as scrollToIndex, Xo as selectDate, co as serializeDelimited, po as serializeHtml, xo as serializeJson, lo as serializeMarkdown, uo as serializeXml, Nn as serverGroupNav, Da as serverGroupRows, N as setAIProvider, ha as setAutoHideSize, Ti as setManagerActive, ea as setWindowMinimized, Ks as simpleMovingAverage, As as sliceChartWindow, Ro as snapMinute, Cn as sortFns, fr as sortTreeNodes, v as spansToMerges, Tr as splitInTokens, Pa as spreadsheetLayout, $o as startOfDay, ko as startOfMonth, Qo as startOfWeek, k as subscribeGrid, ot as subscribeSvGrid, Gr as surfaceOfTabs, gn as tableFeatures, li as timelineAxis, xa as timelineGeom, cr as timelineRows, Io as toDate, _o as toExcelNumFmt, On as toGroupArray, he as toICS, Pe as toSelectedArray, Yi as toSelectedSet, Ra as toSparklineValues, Z as toZonedLocal, $n as toast, qa as toastStore, Un as toggleMaximizeLeaf, Ni as toggleWindowMaximized, as as tokenizeMask, Vi as trailingInToken, Er as treeCheckState, Hi as treeContains, bi as treeDescendantIds, oi as unmask, Do as unregisterCellEditor, It as updateToast, mo as valueForExcel, Qr as virtualRange, Lo as weekdayOrder, zo as withTime, Sr as withinWorking, Ri as workingIntervals, pe as wrapMove, i as zoneAbbr, Yr as zoneOffsetMs, Ue as zoneParts };
|
|
2
|
+
import { $ as e, $a as ne, $i as re, $n as t, $r as n, $t as r, A as i, Aa as a, Ai as o, An as s, Ao as c, Ar as l, At as u, B as d, Ba as f, Bi as p, Bn as m, Bo as h, Br as g, Bt as _, C as v, Ca as y, Ci as b, Cn as x, Co as S, Cr as C, Ct as w, D as T, Da as E, Di as D, Dn as O, Do as k, Dr as A, Dt as j, E as M, Ea as N, Ei as P, En as F, Eo as I, Er as L, Et as R, F as z, Fa as B, Fi as V, Fn as H, Fo as U, Fr as W, Ft as G, G as K, Ga as q, Gi as J, Gn as Y, Go as X, Gr as ie, Gt as ae, H as oe, Ha as se, Hi as ce, Hn as le, Ho as ue, Hr as de, Ht as fe, I as pe, Ia as me, Ii as he, In as ge, Io as _e, Ir as ve, It as ye, J as be, Ja as xe, Ji as Se, Jn as Ce, Jo as we, Jr as Te, Jt as Ee, K as De, Ka as Oe, Ki as ke, Kn as Ae, Ko as je, Kr as Me, Kt as Ne, L as Pe, La as Fe, Li as Ie, Ln as Le, Lo as Re, Lr as ze, Lt as Be, M as Ve, Ma as He, Mi as Ue, Mn as We, Mo as Ge, Mr as Ke, Mt as qe, N as Je, Na as Ye, Ni as Xe, Nn as Ze, No as Qe, Nr as $e, Nt as et, O as tt, Oa as nt, Oi as rt, On as it, Oo as at, Or as ot, Ot as st, P as ct, Pa as lt, Pi as ut, Pn as dt, Po as ft, Pr as pt, Pt as mt, Q as ht, Qa as gt, Qi as _t, Qn as vt, Qo as yt, Qr as bt, Qt as xt, R as St, Ra as Ct, Ri as wt, Rn as Tt, Ro as Et, Rr as Dt, Rt as Ot, S as kt, Sa as At, Si as jt, Sn as Mt, So as Nt, Sr as Pt, St as Ft, T as It, Ta as Lt, Ti as Rt, Tn as zt, To as Bt, Tr as Vt, Tt as Ht, U as Ut, Ua as Wt, Ui as Gt, Un as Kt, Uo as qt, Ur as Jt, Ut as Yt, V as Xt, Va as Zt, Vi as Qt, Vn as $t, Vo as en, Vr as tn, Vt as nn, W as rn, Wa as an, Wi as on, Wn as sn, Wo as cn, Wr as ln, Wt as un, X as dn, Xa as fn, Xi as pn, Xn as mn, Xo as hn, Xr as gn, Xt as _n, Y as vn, Ya as yn, Yi as bn, Yn as xn, Yo as Sn, Yr as Cn, Yt as wn, Z as Tn, Za as En, Zi as Dn, Zn as On, Zo as kn, Zr as An, Zt as jn, _ as Mn, _a as Nn, _i as Pn, _n as Fn, _o as In, _r as Ln, _t as Rn, a as zn, aa as Bn, ai as Vn, an as Hn, ao as Un, ar as Wn, at as Gn, b as Kn, ba as qn, bi as Jn, bn as Yn, bo as Xn, br as Zn, bt as Qn, c as $n, ca as er, ci as tr, cn as nr, co as rr, cr as ir, ct as ar, d as or, da as sr, di as cr, dn as lr, do as ur, dr, dt as fr, ea as pr, ei as mr, en as hr, eo as gr, er as _r, et as vr, f as yr, fa as br, fi as xr, fn as Sr, fo as Cr, fr as wr, ft as Tr, g as Er, ga as Dr, gi as Or, gn as kr, go as Ar, gr as jr, gt as Mr, h as Nr, ha as Pr, hi as Fr, hn as Ir, ho as Lr, hr as Rr, ht as zr, i as Br, ia as Vr, ii as Hr, in as Ur, io as Wr, ir as Gr, it as Kr, j as qr, ja as Jr, ji as Yr, jn as Xr, jo as Zr, jr as Qr, jt as $r, k as ei, ka as ti, ki as ni, kn as ri, ko as ii, kr as ai, kt as oi, l as si, la as ci, li, ln as ui, lo as di, lr as fi, lt as pi, m as mi, ma as hi, mi as gi, mn as _i, mo as vi, mr as yi, mt as bi, n as xi, na as Si, ni as Ci, nn as wi, no as Ti, nr as Ei, nt as Di, o as Oi, oa as ki, oi as Ai, on as ji, oo as Mi, or as Ni, ot as Pi, p as Fi, pa as Ii, pi as Li, pn as Ri, po as zi, pr as Bi, pt as Vi, q as Hi, qa as Ui, qi as Wi, qn as Gi, qo as Ki, qr as qi, qt as Ji, r as Yi, ra as Xi, ri as Zi, rn as Qi, ro as $i, rr as ea, rt as ta, s as na, sa as ra, si as ia, sn as aa, so as oa, sr as sa, st as ca, t as la, ta as ua, ti as da, tn as Z, to as fa, tr as pa, tt as ma, u as ha, ua as ga, ui as _a, un as va, uo as ya, ur as ba, ut as xa, v as Sa, va as Ca, vi as wa, vn as Ta, vo as Ea, vr as Da, vt as Oa, w as ka, wa as Aa, wi as ja, wn as Ma, wo as Na, wr as Pa, wt as Fa, x as Ia, xa as La, xi as Ra, xn as za, xo as Ba, xr as Va, xt as Ha, y as Ua, ya as Wa, yi as Ga, yn as Ka, yo as qa, yr as Ja, yt as Ya, z as Xa, za as Za, zi as Qa, zn as $a, zo as eo, zr as to, zt as no } from "./src-BKhZ6eXd.js";
|
|
3
|
+
import { c as ro, d as io, f as ao, i as oo, l as so, m as co, n as lo, o as uo, p as fo, r as po, s as mo, t as ho, u as go } from "./export-format-CUDLy2yn.js";
|
|
4
|
+
import { a as _o, i as vo, n as yo, o as bo, r as xo, s as So, t as Co } from "./editor-registry-BhgE3S84.js";
|
|
5
|
+
import { a as wo, i as To, n as Eo, r as Do, t as Oo } from "./editor-contract-LXgQJAgd.js";
|
|
6
|
+
import { a as ko, n as Ao, o as jo, r as Mo, s as No, t as Po } from "./chart-validate-HcOVFAfJ.js";
|
|
7
|
+
import { i as Fo, n as Io, t as Lo } from "./chart-trend-CaN9mDEV.js";
|
|
8
|
+
import { t as Ro } from "./chart-summary-BJW_tg_X.js";
|
|
9
|
+
import { A as zo, C as Bo, D as Vo, E as Ho, M as Uo, N as Wo, O as Go, P as Ko, S as qo, T as Jo, _ as Yo, a as Xo, b as Zo, c as Qo, d as $o, f as es, g as ts, h as ns, i as rs, j as is, k as as, l as os, m as ss, n as cs, o as ls, p as us, r as ds, s as fs, t as ps, u as ms, v as hs, w as gs, x as _s, y as vs } from "./date-format-CtquV-p3.js";
|
|
10
|
+
import { i as ys, n as bs, r as xs, t as Ss } from "./popover-P-9P2YYn.js";
|
|
11
|
+
import { t as Cs } from "./SvGridDropdown-D0VdjeR8.js";
|
|
12
|
+
import { a as ws, i as Ts, o as Es, r as Ds, t as Os } from "./SvDateTimePicker-vNU6bZ-q.js";
|
|
13
|
+
import { n as ks, r as As, t as js } from "./dismissable-DAHetSNk.js";
|
|
14
|
+
import { t as Ms } from "./SvDateRangeInput-BeU_TkbQ.js";
|
|
15
|
+
import { n as Ns, r as Ps, t as Fs } from "./focus-trap-BBOQYBma.js";
|
|
16
|
+
import { a as Is, i as Ls, n as Rs, o as zs, r as Bs, t as Vs } from "./SvModal-CIZWCcad.js";
|
|
17
|
+
import { a as Hs, c as Us, d as Ws, f as Gs, i as Ks, l as qs, m as Js, n as Ys, o as Xs, p as Zs, r as Qs, s as $s, t as ec } from "./SvMenuList-CLN8OuIK.js";
|
|
18
|
+
import { $ as tc, A as nc, B as rc, C as ic, D as ac, E as oc, F as sc, G as cc, H as lc, I as uc, J as dc, K as fc, L as pc, M as mc, N as hc, O as gc, P as _c, Q as vc, R as yc, S as bc, T as xc, U as Sc, V as Cc, W as wc, X as Tc, Z as Ec, _ as Dc, _t as Oc, at as kc, b as Ac, bt as jc, c as Mc, ct as Nc, d as Pc, dt as Fc, et as Ic, f as Lc, ft as Rc, g as zc, h as Bc, i as Vc, it as Hc, j as Uc, k as Wc, l as Gc, lt as Kc, m as qc, mt as Jc, n as Yc, nt as Xc, o as Zc, ot as Qc, p as $c, pt as el, q as tl, r as nl, rt as rl, s as il, st as al, t as ol, tt as sl, u as cl, ut as ll, v as ul, vt as dl, w as fl, x as pl, xt as ml, y as hl, yt as gl, z as _l } from "./chart-Dz7SqMXH.js";
|
|
19
|
+
import { a as vl, c as yl, d as bl, f as xl, i as Sl, l as Cl, n as wl, o as Tl, p as El, r as Dl, s as Ol, t as Q, u as kl } from "./SvGridChart-C3EWAZaM.js";
|
|
20
|
+
import { a as Al, i as jl, n as Ml, o as Nl, r as Pl, s as Fl, t as Il } from "./chart-export-BXqueeWJ.js";
|
|
21
|
+
import { r as Ll, t as $ } from "./SvGridChartPanel-CCX5_Wgd.js";
|
|
22
|
+
import { n as Rl, r as zl, t as Bl } from "./chart-panel-messages-CmNrMdsr.js";
|
|
23
|
+
import { a as Vl, i as Hl, n as Ul, t as Wl } from "./chart-export-pdf-DONFUnNY.js";
|
|
24
|
+
import { t as Gl } from "./row-resize-niQCp040.js";
|
|
25
|
+
import { t as Kl } from "./column-resize-DpmOLfRp.js";
|
|
26
|
+
export { $i as ALL_FILTER_OPERATORS, ol as CHART_RESPONSIVE_PRESETS, Po as CHART_TYPES, A as COUNTRIES, ot as COUNTRY_BY_CODE, Jc as DEFAULT_PALETTE, Fs as FOCUSABLE_SELECTOR, T as FlexRender, fa as GRID_ICON_GLYPHS, Ti as GRID_ICON_NAMES, Ao as KNOWN_SERIES_KEYS, Mo as KNOWN_SPEC_KEYS, Ss as PANEL_THEME_VARS, dc as PER_CATEGORY_SERIES_KEYS, ai as PHONE_NATIONAL_LENGTHS, Wr as RANGE_OPERATOR_IDS, Un as SET_OPERATOR_IDS, Rr as STRENGTH_LABELS, za as SvAccordion, Tr as SvAlert, Vn as SvAnchor, bt as SvAspectRatio, Tt as SvAutoComplete, Di as SvAvatar, ma as SvAvatarGroup, zr as SvBadge, Hr as SvBlockquote, vn as SvBreadcrumb, Ei as SvButton, ni as SvButtonGroup, rs as SvCalendar, Vi as SvCard, ht as SvCarousel, Q as SvChart, Q as SvGridChart, $ as SvChartPanel, $ as SvGridChartPanel, Ll as SvChartPanes, vt as SvCheckBox, pi as SvChip, d as SvCircularProgress, mr as SvCode, cr as SvCollapsible, Kt as SvColorInput, $a as SvComboBox, vr as SvCommand, Hi as SvContextMenu, it as SvCountryInput, Ms as SvDateRangeInput, Os as SvDateTimePicker, xa as SvDivider, Ur as SvDockLayout, u as SvDockManager, Fa as SvDrawer, m as SvDropDownList, ie as SvDurationInput, fr as SvEmptyState, ts as SvField, j as SvFileUpload, Xa as SvForm, Ma as SvGauge, ga as SvGrid, Cs as SvGridDropdown, ri as SvGridSelect, li as SvGroup, Mn as SvGroupCell, rn as SvHoverCard, da as SvKbd, Ci as SvList, $t as SvListBox, Li as SvLoadingOverlay, Zi as SvMark, Y as SvMaskedInput, De as SvMenu, ec as SvMenuList, K as SvMenubar, Vs as SvModal, H as SvMultiSelect, oe as SvNavPane, Gi as SvNumberInput, Te as SvOtpInput, dn as SvPagination, Ae as SvPasswordInput, sn as SvPhoneInput, Ut as SvPopconfirm, R as SvPopover, Xt as SvProgress, On as SvRadioGroup, mn as SvRating, pa as SvRepeatButton, xr as SvResult, e as SvRichCell, ln as SvRichText, Er as SvRowGroupPanel, Gn as SvScrollArea, Fr as SvSegmented, tr as SvSimpleGrid, bi as SvSkeleton, zt as SvSlider, Pi as SvSparkline, gi as SvSpinner, Ka as SvSplitter, _a as SvStack, ar as SvStat, be as SvStepper, t as SvSwitchButton, Rs as SvTabs, Le as SvTagsInput, ia as SvText, Ce as SvTextArea, xn as SvTextInput, Ts as SvTimePicker, ca as SvTimeline, Ai as SvTitle, Mr as SvToaster, _r as SvToggleButton, Ht as SvTooltip, Tn as SvTour, x as SvTree, Xr as SvTreeSelect, n as SvVisuallyHidden, Mi as VALUELESS_OPERATOR_IDS, Zo as addDays, _s as addMonths, $r as addPaneToMain, qo as addYears, Ue as agendaGroups, Se as aiChart, bn as aiClassify, pn as aiExplainChart, Dn as aiExport, _t as aiFilter, re as aiFindAnomalies, pr as aiSmartFill, ua as aiSummarize, qe as allManagerIds, et as allManagerPaneIds, Hn as allPaneIds, bs as anchoredRect, N as announce, or as appendPoints, Yc as applyChartFormat, yn as applyExcelFilter, at as applyGroupAggregate, Pt as applyMask, Oi as applyRowPredicate, xc as arcPath, sc as atr, yr as attachAutoSavedView, mt as autoHideLeaf, G as autoHidePaneToSide, ye as autoHideWindow, Ys as autoUpdate, ta as avatarColorHue, Kr as avatarInitials, sl as binValues, uc as bollingerBands, Xc as boxStats, We as branchValues, Be as bringToFront, kt as broadcastChannelTransport, rl as bucketStart, Ye as buildAutoGroupColumns, nl as buildChart, Wl as buildChartPdf, ti as buildFillPattern, oc as buildLinePath, ya as buildMergeIndex, Ea as buildSparkline, Il as chartCsvExportable, wl as chartMessage, Bl as chartPanelMessage, Ic as chartScales, Ml as chartSpecToCsv, ha as chartSpecToTable, Vc as chartStyleVars, Ro as chartSummary, Ul as chartToPdfBlob, Pl as chartToPngBlob, jl as chartToSvgString, Bo as clampDate, Zt as clearGridShortcuts, Rn as clearToasts, no as closeWindow, ho as coerceExportDate, ii as columnFilteringFeature, c as columnGroupingFeature, Kl as columnResize, fn as compileExcelFilter, me as computeColumnGroupMeta, je as computeColumnStat, pc as computeOverlay, yc as computeOverlayFit, Qs as computePosition, Ki as contrastText, lo as copyTextToClipboard, Mt as createAccordion, $e as createAutocomplete, o as createButtonGroup, Xo as createCalendar, ja as createCarousel, wr as createCheckbox, v as createCollaboration, Da as createColorInput, si as createColumnVirtualizer, ve as createCombobox, Ra as createCommand, Zr as createCoreRowModel, L as createCountryInput, Ds as createDateTimePicker, js as createDismissableLayer, W as createDropdownList, Ge as createExpandedRowModel, st as createFileUpload, Qe as createFilteredRowModel, Ns as createFocusTrap, Pn as createForm, ea as createGauge, I as createGrid, Na as createGridState, ft as createGroupedRowModel, ka as createHyperFormulaSheet, ze as createListbox, Va as createMaskedInput, Hs as createMenu, Fi as createNamedViews, Vt as createNumberInput, Ls as createOverlay, U as createPaginatedRowModel, P as createPagination, jr as createPasswordInput, Zn as createPhoneInput, pt as createPopoverSelect, Or as createRadioGroup, dr as createRating, Ia as createServerDataSource, Sa as createServerGroupModel, Gr as createSlider, _e as createSortedRowModel, Yn as createSplitter, Rt as createStepper, k as createSvGrid, k as createTable, Bt as createSvGridState, le as createSvelteVirtualizer, Bi as createSwitch, Bs as createTabs, Ke as createTagsInput, ws as createTimePicker, yi as createToggle, rt as createTooltip, Wn as createTree, Re as createTreeRowModel, Us as createTypeaheadBuffer, xe as createVirtualizer, Xe as daysForView, ge as debounce, gs as decadeRange, Tc as decimateSpec, _ as dedupeManagerNodeIds, Dl as defaultChartMessages, Rl as defaultChartPanelMessages, Co as defaultEditorProps, E as defaultGridMessages, Yo as describeRecurrence, Si as disableAiCharting, Oa as dismissToast, ks as dismissableDepth, ji as dockGroup, aa as dockInto, nr as dockLeafToEdge, Ot as dockManagerClosePane, _n as dockManagerResizeGroup, Ri as dockNormalize, ui as dockPane, nn as dockPaneOnto, fe as dockPaneToEmptyMain, Fn as dockSetActive, Ta as dockSetSizes, va as dockTabs, Yt as dockWindowOnto, po as downloadBlobFile, Al as downloadChartCsv, Hl as downloadChartPdf, Nl as downloadChartPng, Fl as downloadChartSvg, oo as downloadTextFile, ic as drillTree, Oo as editorAria, Eo as editorErrorId, Do as editorHintId, $o as emptySelection, Xi as enableAiCharting, Xs as enabledIndices, ur as endOf, ut as eventsOnDay, Cr as expandRectToMerges, hs as expandRecurrence, Hc as exponentialFit, kc as exponentialMovingAverage, oi as fileMatchesAccept, Et as filterFns, s as filterGridRows, qs as filterOptions, un as findLeafById, Ze as findNodePath, lr as findTabsWithPane, l as flagEmoji, eo as flattenTreeData, dt as flattenVisible, ae as floatPane, Fo as formatChartValue, ps as formatDate, Me as formatDuration, we as formatNeedsStats, te as formatNumericWithConfig, uo as formatValueForExport, Sn as formatsNeedingStats, z as fromICS, tt as fromZonedLocal, jt as fuzzyMatch, b as fuzzyScore, Vr as getAIProvider, a as getAdvancedFilterEngine, hi as getBoardView, yo as getCellEditor, sr as getChartView, an as getEntryStep, er as getExportProvider, Ps as getFocusable, la as getGridCellA11yProps, xi as getGridCellDomId, Yi as getGridHeaderA11yProps, Br as getGridRootA11yProps, zn as getGridRowA11yProps, q as getKeyboardIntent, Oe as getNextActiveCell, y as getPivotEngine, qn as getSchedulerView, Nn as getSelectionBarView, Ws as groupOptions, nc as guessOhlcColumns, Bn as hasAIProvider, Jr as hasAdvancedFilterEngine, Pr as hasBoardView, xo as hasCellEditor, br as hasChartView, V as hasConflict, se as hasGridShortcuts, Gs as hasGroups, Aa as hasPivotEngine, La as hasSchedulerView, Ca as hasSelectionBarView, Uc as heikinAshi, Fe as hiddenLeavesForCollapse, tn as htmlToText, _l as indicatorPane, Ct as inferCellDataType, lt as insertGroupFooters, ei as instantFromWallClock, vl as interpolateGeometry, zi as isCovered, fs as isDisabledDay, wa as isEmptyValue, Qo as isImportant, C as isMaskComplete, es as isMultiSelectMode, Cn as isOtpComplete, os as isOutOfRange, oa as isRangeOperator, ms as isRestricted, Jo as isSameDay, us as isSelected, rr as isSetOperator, Zs as isTypeaheadKey, di as isValuelessOperator, Ho as isoWeek, En as joinInTokens, ac as layoutDataLabels, he as layoutDayEvents, hn as lerpColor, Qc as linearFit, Lo as linearTrend, mi as localStorageViews, Ne as locatePane, Is as lockScroll, al as logarithmicFit, Ec as lttb, rc as macd, gc as markerPath, Zc as matchResponsiveRules, vs as matchesRecurrence, Nr as memoryViews, vi as mergeAt, Lr as mergeDrawAt, vc as minMaxIndices, ki as mockAIProvider, Vo as monthMatrix, Ie as monthWeekSegments, Sr as movePane, Ni as moveTreeNode, Ji as moveWindow, wt as navigateAnchor, ko as nearestChartKey, Cl as nearestIndexByTime, To as nextEditorId, Js as nextTypeaheadIndex, Oc as niceLogScale, dl as niceScale, ls as normalizeCalendarValue, na as normalizeEditorOptions, gt as normalizeForFilter, Ja as normalizeHex, i as normalizeTimeZone, Cc as obv, As as onScrollOutside, gl as ordinalDateTicks, Ar as originOf, gn as otpCells, Qa as overlapCount, p as overlapsBands, lc as overlayName, B as paginateGroupedRows, D as paginationRange, kl as panWindow, il as paretoSpec, cs as parseDate, qi as parseDuration, $n as parseEditorValue, Ks as parsePlacement, Es as parseTimeValue, Ln as passwordStrength, Ui as pastCollapsed, fl as pathTo, Ya as pauseToast, Io as pearson, Nc as percentile, Qr as phoneDigitsValid, tc as pickCategories, jc as pickContrastText, Ee as pinAutoHidden, bl as pinchWindow, Ac as pivotChartType, pl as pivotFilterColumn, bc as pivotResultToChartSpec, Kc as polynomialFit, xs as popIn, ys as portalToBody, ll as powerFit, xl as presetWindow, Vl as printChart, mo as projectGridRows, Tl as publishSyncHover, Ol as publishSyncZoom, Fc as rSquared, ss as rangeDays, Qt as rangeForView, Rc as reduceValues, He as registerAdvancedFilterEngine, Dr as registerBoardView, g as registerBuiltinEditors, vo as registerCellEditor, Ii as registerChartView, ci as registerExportProvider, Wt as registerGridShortcuts, Lt as registerPivotEngine, At as registerSchedulerView, Wa as registerSelectionBarView, _o as registeredCellEditorTypes, Sc as regressionFit, _i as removeLeaf, Ir as removePane, Xn as renderComponent, de as renderMarkdown, Ba as renderSnippet, kr as reorderPane, wn as reorderTab, mc as resampleOhlc, jn as resizeWindow, kn as resolveCellFormat, Sl as resolveChartMessages, zl as resolveChartPanelMessages, Za as resolveColumnTypes, ee as resolveDatePattern, bo as resolveEditorProps, ce as resolveEvents, nt as resolveGridMessages, wo as resolveMessages, Mc as resolveResponsive, Qn as resumeToast, yt as rgba, f as rowDropZone, h as rowExpandingFeature, en as rowPaginationFeature, Gl as rowResize, ue as rowSelectionFeature, qt as rowSortingFeature, Gc as rowsToBoxSpec, cl as rowsToChartSpec, Pc as rowsToDirectSpec, Lc as rowsToGaugeSpec, $c as rowsToHistogramSpec, hc as rowsToOhlcSpec, qc as rowsToRangeSpec, Bc as rowsToScatterSpec, pe as rruleToRule, wc as rsi, Pe as ruleToRRule, Ga as rules, Jn as runRules, ml as sampleGradient, Jt as sanitizeHtml, An as sanitizeOtp, zs as scrollLockDepth, F as scrollToIndex, ns as selectDate, ro as serializeDelimited, so as serializeHtml, go as serializeJson, io as serializeMarkdown, ao as serializeXml, Ua as serverGroupNav, Kn as serverGroupRows, ra as setAIProvider, xt as setAutoHideSize, r as setManagerActive, hr as setWindowMinimized, el as simpleMovingAverage, zc as sliceChartWindow, Go as snapMinute, cn as sortFns, sa as sortTreeNodes, It as spansToMerges, Dc as specToCalendar, ul as specToSankey, hl as specToTreemap, ne as splitInTokens, _c as splitPanelIndicators, M as spreadsheetLayout, as as startOfDay, zo as startOfMonth, is as startOfWeek, In as stepPastMerge, cc as stochastic, Wc as streamBaseline, Nt as subscribeGrid, S as subscribeSvGrid, Z as surfaceOfTabs, yl as syncGroupState, X as tableFeatures, Gt as timelineAxis, on as timelineGeom, J as timelineRows, Uo as toDate, fo as toExcelNumFmt, Yr as toGroupArray, St as toICS, Dt as toSelectedArray, to as toSelectedSet, qa as toSparklineValues, qr as toZonedLocal, Ha as toast, Ft as toastStore, wi as toggleMaximizeLeaf, Qi as toggleWindowMaximized, ds as tokenizeMask, gr as trailingInToken, ir as treeCheckState, fi as treeContains, ba as treeDescendantIds, Pa as unmask, So as unregisterCellEditor, w as updateToast, jo as validateChartSpec, co as valueForExcel, O as virtualRange, fc as vwap, No as warnChartSpec, Wo as weekdayOrder, El as wheelWindow, Ko as withTime, ke as withinWorking, tl as wma, Wi as workingIntervals, $s as wrapMove, Ve as zoneAbbr, Je as zoneOffsetMs, ct as zoneParts };
|
|
16
27
|
|
|
17
|
-
;(function(){try{if(typeof document==='undefined')return;var s=document.createElement('style');s.setAttribute('data-svgrid','');s.textContent=".sv-grid-root{font-family:var(--sg-font,inherit);position:relative}.sv-grid-root[data-selbar]{--sg-selbar-reserve:68px}.sv-grid-root[data-selbar^=upsell]{--sg-selbar-reserve:116px}.sv-grid-root[data-selbar$=bottom] .sv-grid-container{padding-bottom:var(--sg-selbar-reserve)}.sv-grid-root[data-selbar$=top] .sv-grid-container{padding-top:var(--sg-selbar-reserve)}.sv-grid-sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sv-grid-loading-overlay{z-index:18;pointer-events:auto;background:color-mix(in srgb, var(--sg-bg,#fff) 35%, transparent);position:absolute;inset:0}.sv-grid-loading-bar{background:color-mix(in srgb, var(--sg-accent,#2563eb) 18%, transparent);height:3px;position:absolute;top:0;left:0;right:0;overflow:hidden}.sv-grid-loading-bar:before{content:\"\";background:var(--sg-accent,#2563eb);width:40%;animation:1.1s ease-in-out infinite sv-grid-loading-slide;position:absolute;inset:0}@keyframes sv-grid-loading-slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.sv-grid-skeleton{top:var(--sg-thead-h,40px);padding:0;position:absolute;left:0;right:0;overflow:hidden}.sv-grid-skeleton-row{height:var(--sg-pinned-row-h,36px);border-bottom:1px solid var(--sg-border,#e2e8f0);align-items:center;display:flex}.sv-grid-skeleton-cell{box-sizing:border-box;flex-shrink:0;padding:0 12px}.sv-grid-skeleton-bar{background:linear-gradient(90deg, color-mix(in srgb, var(--sg-muted,#94a3b8) 18%, transparent) 25%, color-mix(in srgb, var(--sg-muted,#94a3b8) 32%, transparent) 50%, color-mix(in srgb, var(--sg-muted,#94a3b8) 18%, transparent) 75%);background-size:200% 100%;border-radius:4px;width:70%;height:10px;animation:1.3s linear infinite sv-grid-shimmer;display:block}@keyframes sv-grid-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sv-grid-toolbar{align-items:center;gap:8px;padding:6px 2px;display:flex}.sv-grid-toolbar-btn{border:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px);background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);cursor:pointer;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:600;transition:background-color .12s,color .12s,border-color .12s;display:inline-flex}.sv-grid-toolbar-btn:hover{border-color:var(--sg-accent,#2563eb);color:var(--sg-accent,#2563eb)}.sv-grid-toolbar-btn.is-active{background:var(--sg-accent,#2563eb);border-color:var(--sg-accent,#2563eb);color:#fff}.sv-grid-advf-chip>.sv-grid-icon{width:13px;height:13px}.sv-grid-advf-chip{border:1px solid color-mix(in srgb, var(--sg-accent,#2563eb) 35%, transparent);background:color-mix(in srgb, var(--sg-accent,#2563eb) 12%, transparent);color:var(--sg-accent,#2563eb);border-radius:999px;align-items:center;gap:6px;padding:5px 6px 5px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.sv-grid-advf-clear{width:18px;height:18px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;font-size:11px;transition:background-color .12s;display:inline-flex}.sv-grid-advf-clear:hover{background:color-mix(in srgb, var(--sg-accent,#2563eb) 25%, transparent)}.sv-grid-tool-panel{z-index:901;background:var(--sg-bg,#fff);border-left:1px solid var(--sg-border,#e2e8f0);flex-direction:column;width:250px;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-8px 0 24px #0000001f}.sv-grid-tool-panel-head{text-transform:uppercase;letter-spacing:.05em;color:var(--sg-muted,#64748b);border-bottom:1px solid var(--sg-border,#e2e8f0);justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;font-weight:700;display:flex}.sv-grid-tool-panel-close{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;font-size:14px}.sv-grid-tool-panel-list{flex:1;margin:0;padding:6px;list-style:none;overflow-y:auto}.sv-grid-tool-panel-item{border-radius:5px;justify-content:space-between;align-items:center;gap:6px;padding:3px 6px;display:flex}.sv-grid-tool-panel-item:hover{background:var(--sg-row-hover-bg,#94a3b81a)}.sv-grid-tool-panel-vis{min-width:0;color:var(--sg-fg,#0f172a);cursor:pointer;flex:1;align-items:center;gap:8px;font-size:13px;display:flex}.sv-grid-tool-panel-vis input{accent-color:var(--sg-accent,#2563eb)}.sv-grid-tool-panel-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sv-grid-tool-panel-actions{flex-shrink:0;gap:2px;display:inline-flex}.sv-grid-tool-panel-btn{width:22px;height:22px;color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.sv-grid-tool-panel-btn:hover:not(:disabled){background:var(--sg-row-hover-bg,#94a3b82e);color:var(--sg-fg,#0f172a)}.sv-grid-tool-panel-btn.is-active{color:var(--sg-accent,#2563eb)}.sv-grid-tool-panel-btn:disabled{opacity:.35;cursor:default}.sv-grid-tool-panel-tabs{border-bottom:1px solid var(--sg-border,#e2e8f0);gap:2px;padding:6px 6px 0;display:flex}.sv-grid-tool-panel-tab{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:6px 8px;font-size:12px;font-weight:600}.sv-grid-tool-panel-tab:hover{color:var(--sg-fg,#0f172a)}.sv-grid-tool-panel-tab.is-active{color:var(--sg-accent,#2563eb);border-bottom-color:var(--sg-accent,#2563eb)}.sv-grid-tool-panel-filters{flex-direction:column;flex:1;gap:8px;padding:6px;display:flex;overflow-y:auto}.sv-grid-tp-filter{border:1px solid var(--sg-border,#e2e8f0);border-radius:6px;flex-direction:column;gap:4px;padding:6px;display:flex}.sv-grid-tp-filter.is-filtered{border-color:var(--sg-accent,#2563eb)}.sv-grid-tp-filter-head{justify-content:space-between;align-items:center;display:flex}.sv-grid-tp-filter-name{color:var(--sg-fg,#0f172a);font-size:12px;font-weight:600}.sv-grid-tp-filter-clear{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:11px}.sv-grid-tp-filter-clear:hover{color:var(--sg-accent,#2563eb)}.sv-grid-tp-filter-op,.sv-grid-tp-filter-input{box-sizing:border-box;border:1px solid var(--sg-border,#e2e8f0);background:var(--sg-bg,#fff);width:100%;color:var(--sg-fg,#0f172a);border-radius:5px;padding:4px 6px;font-size:12px}.sv-grid-root-fill{flex-direction:column;height:100%;min-height:0;display:flex}.sv-grid-root-fill>.sv-grid-shell{flex:1 1 0;min-height:0;height:auto!important}.sv-grid-shell{border-bottom:1px solid var(--sg-border,#cbd5e1);position:relative}.sv-grid-table{table-layout:fixed;border-collapse:separate;border-spacing:0}.sv-grid-table:focus{outline:none}.sv-grid-column,.sv-grid-cell{box-sizing:border-box;text-overflow:ellipsis;white-space:nowrap;background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);-webkit-user-select:none;user-select:none;border-right:1px solid var(--sg-border,#e2e8f0);border-bottom:1px solid var(--sg-border,#e2e8f0);overflow:hidden}.sv-grid-table tr>:last-child.sv-grid-column,.sv-grid-table tr>:last-child.sv-grid-cell{border-right:0}.sv-grid-table:not(.sv-grid-no-row-hover) tbody tr:hover>.sv-grid-cell:not([data-selected-range=true]){background-color:var(--sg-row-hover-bg,#eef2ff)}.sv-grid-cell-active,.sv-grid-cell-has-fill-handle{position:relative}.sv-grid-cell-has-fill-handle{overflow:visible}.sv-grid-detail-row{height:auto!important}.sv-grid-detail-cell{text-overflow:clip;white-space:normal;background:var(--sg-bg,#fff);-webkit-user-select:text;user-select:text;height:auto;padding:0;overflow:visible}.sv-grid-cell[data-pinned=left],.sv-grid-column[data-pinned=left]{background:var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%));box-shadow:inset -1px 0 0 var(--sg-pinned-divider,var(--sg-border,#cbd5e1)), 8px 0 12px -6px var(--sg-pinned-shadow-color,#0f172a38)}.sv-grid-cell[data-pinned=right],.sv-grid-column[data-pinned=right]{background:var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%));box-shadow:inset 1px 0 0 var(--sg-pinned-divider,var(--sg-border,#cbd5e1)), -8px 0 12px -6px var(--sg-pinned-shadow-color,#0f172a38)}.sv-grid-head .sv-grid-column[data-pinned=left],.sv-grid-head .sv-grid-column[data-pinned=right]{background:var(--sg-pinned-header-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 86%, var(--sg-accent,#2563eb) 14%));font-weight:600}.sv-grid-row-alt>.sv-grid-cell{background:var(--sg-row-alt-bg,#f8fafc)}.sv-grid-row-alt>.sv-grid-cell[data-pinned]{background:var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%))}.sv-grid-row-selected>.sv-grid-cell[data-pinned]{background:linear-gradient(color-mix(in srgb, var(--sg-selection-bg,#dbeafe) 65%, transparent), color-mix(in srgb, var(--sg-selection-bg,#dbeafe) 65%, transparent)), var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%))}.sv-grid-table:not(.sv-grid-no-row-hover) .sv-grid-row:hover>.sv-grid-cell[data-pinned]:not([data-selected-range=true]){background:linear-gradient(color-mix(in srgb, var(--sg-row-hover-bg,#eef2ff) 55%, transparent), color-mix(in srgb, var(--sg-row-hover-bg,#eef2ff) 55%, transparent)), var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%))}.sv-grid-column{position:relative}.sv-grid-cell[data-align=left],.sv-grid-column[data-align=left]{padding-left:var(--sg-cell-px,7px)}.sv-grid-cell[data-align=right]{text-align:right;padding-right:var(--sg-cell-px,7px)}.sv-grid-cell[data-align=center]{text-align:center}.sv-grid-column[data-align=right]{padding-right:var(--sg-cell-px,7px)}.sv-grid-column[data-align=right] .sv-grid-header-sort{justify-content:flex-end}.sv-grid-has-vscroll:not(.sv-grid-has-hscroll) .sv-grid-table tr>:last-child.sv-grid-cell[data-align=right],.sv-grid-has-vscroll:not(.sv-grid-has-hscroll) .sv-grid-table tr>:last-child.sv-grid-column[data-align=right]{padding-right:calc(var(--sg-cell-px,7px) + 16px)}.sv-grid-container.sv-grid-has-vscroll.sv-grid-has-hscroll{padding-right:16px}.sv-grid-column[data-align=center] .sv-grid-header-sort{justify-content:center}.sv-grid-resize-handle{cursor:col-resize;-webkit-user-select:none;user-select:none;z-index:2;width:5px;height:100%;transition:background-color .1s;position:absolute;top:0;right:0}.sv-grid-resize-handle:after{content:\"\";background:var(--sg-fg,#0f172a);opacity:0;border-radius:1px;width:2px;margin:auto 2px;transition:background-color .1s,opacity .1s;position:absolute;inset:0}.sv-grid-column:hover .sv-grid-resize-handle:after{opacity:.3}.sv-grid-column:hover .sv-grid-resize-handle:hover:after,.sv-grid-resize-handle.is-resizing:after{background:var(--sg-accent,#2563eb);opacity:1}.sv-grid-row-resize-handle{transition:background-color .1s}.sv-grid-row-resize-handle:hover,.sv-grid-row-resize-handle.is-resizing{background:color-mix(in srgb, var(--sg-accent,#0b63f3) 30%, transparent)}.sv-grid-head{z-index:35;background:var(--sg-header-bg,#f5f7fb);position:sticky;top:0}.sv-grid-head .sv-grid-column{background:var(--sg-header-bg,#f5f7fb);color:var(--sg-header-label-color,var(--sg-header-fg,var(--sg-fg,#0f172a)));font-weight:var(--sg-header-weight,600);font-size:var(--sg-header-size,inherit);text-transform:var(--sg-header-transform,none);letter-spacing:var(--sg-header-tracking,normal);border-bottom-color:var(--sg-header-border,var(--sg-border,#e2e8f0))}.sv-grid-column[draggable=true]{cursor:grab}.sv-grid-column[draggable=true]:active{cursor:grabbing}.sv-grid-column.is-dragging{opacity:.55}.sv-grid-column.is-drag-target-before,.sv-grid-column.is-drag-target-after{position:relative}.sv-grid-column.is-drag-target-before:before,.sv-grid-column.is-drag-target-after:after{content:\"\";pointer-events:none;z-index:7;background:linear-gradient(#6366f1,#8b5cf6);border-radius:2px;width:3px;animation:.7s ease-in-out infinite alternate sg-drop-pulse;position:absolute;top:4px;bottom:4px;box-shadow:0 0 6px #6366f1}.sv-grid-column.is-drag-target-before:before{left:-2px}.sv-grid-column.is-drag-target-after:after{right:-2px}@keyframes sg-drop-pulse{0%{opacity:.55}to{opacity:1}}.sv-grid-row-draggable{cursor:grab}.sv-grid-row-draggable:active{cursor:grabbing}.sv-grid-row-drag-active .sv-grid-row-draggable{-webkit-user-select:none;user-select:none}.sv-grid-row-draggable .sv-grid-row-number-cell{padding-left:14px;position:relative}.sv-grid-row-draggable .sv-grid-row-number-cell:before{content:\"⠇\";color:var(--sg-muted,#94a3b8);opacity:.4;pointer-events:none;font-size:13px;line-height:1;transition:opacity .12s;position:absolute;top:50%;left:3px;transform:translateY(-50%)}.sv-grid-row-draggable:hover .sv-grid-row-number-cell:before{opacity:1}.sv-grid-row-dropzone-over{outline:2px dashed var(--sg-accent,#6366f1);outline-offset:-2px;background:color-mix(in srgb, var(--sg-accent,#6366f1) 10%, transparent)}.sv-grid-row-drop-before>td{box-shadow:inset 0 2px 0 0 var(--sg-accent,#6366f1)}.sv-grid-row-drop-after>td{box-shadow:inset 0 -2px 0 0 var(--sg-accent,#6366f1)}.sv-grid-pinned-row td{z-index:4;background:var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%));border-bottom:1px solid var(--sg-pinned-border,color-mix(in oklab, var(--sg-accent,#2563eb) 24%, transparent));font-weight:600;position:sticky}.sv-grid-pinned-row-top td{top:var(--sg-thead-h,36px)}.sv-grid-pinned-row-bottom td{border-top:1px solid var(--sg-pinned-border,color-mix(in oklab, var(--sg-accent,#2563eb) 24%, transparent));bottom:0}.sv-grid-pinned-row-top[data-pinned-index=\"1\"] td{top:calc(var(--sg-thead-h,36px) + var(--sg-pinned-row-h,32px))}.sv-grid-pinned-row-top[data-pinned-index=\"2\"] td{top:calc(var(--sg-thead-h,36px) + var(--sg-pinned-row-h,32px) * 2)}.sv-grid-pinned-row-top[data-pinned-index=\"3\"] td{top:calc(var(--sg-thead-h,36px) + var(--sg-pinned-row-h,32px) * 3)}.sv-grid-pinned-row-bottom[data-pinned-index=\"1\"] td{bottom:var(--sg-pinned-row-h,32px)}.sv-grid-pinned-row-bottom[data-pinned-index=\"2\"] td{bottom:calc(var(--sg-pinned-row-h,32px) * 2)}.sv-grid-pinned-row-bottom[data-pinned-index=\"3\"] td{bottom:calc(var(--sg-pinned-row-h,32px) * 3)}.sv-grid-pinned-row td[data-pinned]{z-index:5}.sv-grid-group-header-row{background:var(--sg-header-bg,#eef2f8)}.sv-grid-group-header-cell{box-sizing:border-box;border-bottom:1px solid var(--sg-border,#d8dee9);border-right:1px solid var(--sg-border,#e2e8f0);text-align:center;color:var(--sg-header-fg,#475569);text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;font-size:11.5px;font-weight:700}.sv-grid-group-header-placeholder{background:0 0;border-right-color:#0000}.sv-grid-group-header-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:inline-block;overflow:hidden}.sv-grid-group-toggle{max-width:100%;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:5px;padding:2px 6px;display:inline-flex}.sv-grid-group-toggle:hover{background:color-mix(in srgb, var(--sg-accent,#2563eb) 12%, transparent);color:var(--sg-accent,#2563eb)}.sv-grid-group-caret{flex-shrink:0;justify-content:center;align-items:center;width:10px;height:10px;transition:transform .14s;display:inline-flex}.sv-grid-group-caret>.sv-grid-icon{width:100%;height:100%}.sv-grid-group-toggle.is-collapsed .sv-grid-group-caret{transform:rotate(-90deg)}.sv-grid-foot{z-index:6;background:var(--sg-header-bg,#f5f7fb);position:sticky;bottom:0}.sv-grid-container.sv-grid-narrow{-webkit-overflow-scrolling:touch;scroll-behavior:auto}.sv-grid-container{scrollbar-width:auto;-ms-overflow-style:auto;overscroll-behavior:contain;overflow-anchor:none;scroll-padding-top:var(--sg-thead-h,36px)}.sv-grid-container.sv-grid-container-custom-scrollbars{scrollbar-width:none;-ms-overflow-style:none}.sv-grid-container.sv-grid-container-custom-scrollbars::-webkit-scrollbar{display:none}.sv-grid-scrollbar{z-index:40;position:absolute}.sv-grid-scrollbar-vertical{top:0;width:16px;height:calc(100% - 16px);inset-inline-end:0}.sv-grid-scrollbar-corner{top:0;background:var(--sg-header-bg,#f5f7fb);border-bottom:1px solid var(--sg-header-border,#0f172a14);z-index:41;pointer-events:none;width:16px;position:absolute;inset-inline-end:0}.sv-grid-scrollbar-corner-br{inset-inline-end:0;background:var(--sg-header-bg,#eef2f8);z-index:42;pointer-events:none;width:16px;height:16px;position:absolute;bottom:0;box-shadow:inset 0 0 0 1px #0f172a0d}.sv-grid-scrollbar-horizontal{inset-inline-start:0;width:calc(100% - 16px);height:16px;bottom:0}.sv-grid-selection-column,.sv-grid-selection-cell{text-align:center;z-index:4;padding-inline:6px;position:sticky}.sv-grid-row-number-column,.sv-grid-row-number-cell{text-align:right;z-index:4;background:var(--sg-header-bg,#f5f7fb);color:var(--sg-muted,#64748b);font-variant-numeric:tabular-nums;padding-inline:8px;position:sticky;left:0}.sv-grid-row-number-head{color:inherit}.sv-grid-filter-row-control{box-sizing:border-box;padding:5px var(--sg-filter-cell-px,var(--sg-cell-px,7px));flex-direction:row;align-items:center;gap:4px;display:flex}.sv-grid-filter-row-control>.sv-field{flex:3 1 0;min-width:0}.sv-grid-filter-operator{box-sizing:border-box;flex:2 1 0;min-width:0}.sv-grid-filter-value{box-sizing:border-box;flex:3 1 0;min-width:0}.sv-grid-filter-value.sv-grid-filter-value-invalid,.sv-grid-tp-filter-input.sv-grid-filter-value-invalid{box-shadow:0 0 0 1px color-mix(in srgb, var(--sg-danger,#dc2626) 45%, transparent);border-color:var(--sg-danger,#dc2626)!important}.sv-grid-filter-chips{box-sizing:border-box;border:1px solid var(--sg-input-border,#8794a8);background:var(--sg-input-bg,#fff);border-radius:4px;flex-wrap:nowrap;flex:3 1 0;align-items:center;gap:3px;min-width:0;padding:2px 4px;display:flex;overflow:hidden}.sv-grid-filter-chip .sv-grid-filter-chip-label{max-width:84px}.sv-grid-filter-chip-more{cursor:pointer;font:inherit;color:var(--sg-text,inherit);border:0;flex:none;font-size:11px;line-height:16px}.sv-grid-filter-chip-more:hover{background:color-mix(in srgb, var(--sg-accent,#0b63f3) 26%, transparent)}.sv-grid-filter-chips:focus-within{border-color:var(--sg-accent,#0b63f3);box-shadow:0 0 0 1px color-mix(in srgb, var(--sg-accent,#0b63f3) 45%, transparent)}.sv-grid-filter-chip{background:color-mix(in srgb, var(--sg-accent,#0b63f3) 16%, transparent);max-width:120px;color:var(--sg-text,inherit);border-radius:3px;align-items:center;gap:2px;padding:0 2px 0 6px;font-size:11px;line-height:16px;display:inline-flex}.sv-grid-filter-chip-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sv-grid-filter-chip-x{width:14px;height:14px;color:inherit;cursor:pointer;opacity:.7;background:0 0;border:0;border-radius:3px;flex:none;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1;display:inline-flex}.sv-grid-filter-chip-x:hover{opacity:1;background:color-mix(in srgb, var(--sg-accent,#0b63f3) 28%, transparent)}.sv-grid-filter-chips .sv-grid-filter-chip-input{background:0 0;outline:none;flex:14px;min-width:14px;padding:0 2px;box-shadow:none!important;border:0!important}.sv-grid-filter-value.sv-grid-filter-value-pulse{animation:.7s ease-out sv-grid-filter-pulse}@keyframes sv-grid-filter-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--sg-accent,#0b63f3) 55%, transparent)}70%{box-shadow:0 0 0 6px color-mix(in srgb, var(--sg-accent,#0b63f3) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--sg-accent,#0b63f3) 0%, transparent)}}.sv-grid-checkbox{border:1px solid var(--sg-input-border,#8794a8);background:var(--sg-input-bg,#fff);width:16px;height:16px;color:var(--sg-accent,#0b63f3);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;margin:0 auto;padding:0;transition:border-color .12s,background-color .12s;display:inline-flex;position:relative}.sv-grid-fr-editor{box-sizing:border-box;width:100%}select.sv-grid-fr-editor{height:100%;min-height:26px}.sv-grid-fr-checkbox{width:16px;height:16px;accent-color:var(--sg-accent,#3b82f6);cursor:pointer}.sv-grid-cell-editor-color{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:2px}.sv-grid-cell-editor-color::-webkit-color-swatch-wrapper{padding:0}.sv-grid-cell-editor-color::-webkit-color-swatch{border:0;border-radius:4px}.sv-grid-cell-editor-color::-moz-color-swatch{border:0;border-radius:4px}.sv-grid-rating-editor{align-items:center;gap:1px;height:100%;display:inline-flex}.sv-grid-rating-star{cursor:pointer;color:var(--sg-rating-empty,#cbd5e1);background:0 0;border:0;padding:0 1px;font-size:18px;line-height:1;transition:color 80ms,transform 80ms}.sv-grid-rating-star-on{color:var(--sg-rating-on,#f59e0b)}.sv-grid-rating-star:hover{color:var(--sg-rating-hover,#fbbf24);transform:scale(1.12)}.sv-grid-rating-clear{color:var(--sg-muted,#94a3b8);cursor:pointer;background:0 0;border:0;margin-left:4px;font-size:14px}.sv-grid-rating-clear:hover{color:var(--sg-fg,#0f172a)}.sv-grid-checkbox[aria-checked=true],.sv-grid-checkbox[aria-checked=mixed]{border-color:var(--sg-accent,#2563eb);background:var(--sg-accent,#2563eb);color:var(--sg-on-accent,#fff)}.sv-grid-checkbox[aria-checked=true]:after{content:\"\";border-bottom:2px solid;border-right:2px solid;flex:none;width:5px;height:9px;transform:rotate(40deg)translate(-1px,-1px)}.sv-grid-checkbox[aria-checked=mixed]:after{content:\"\";background:currentColor;border-radius:1px;flex:none;width:8px;height:2px}.sv-grid-checkbox:focus-visible{outline:2px solid var(--sg-accent,#0b63f3);outline-offset:1px}.sv-grid-checkbox-readonly{cursor:default;pointer-events:none}@keyframes sv-grid-cell-flash-kf{0%{background-color:var(--sg-cell-flash,color-mix(in oklab, var(--sg-accent,#3b82f6) 42%, transparent))}to{background-color:#0000}}.sv-grid-cell-flash{animation:.7s ease-out sv-grid-cell-flash-kf}@media (prefers-reduced-motion:reduce){.sv-grid-cell-flash{animation:none}}.sv-grid-cell-active,.sv-grid-cell-editing{z-index:20;box-shadow:inset 0 0 0 2px var(--sg-accent,#0b63f3);outline:none;position:relative;overflow:visible}.sv-grid-cell.sv-grid-cell-editing:after{content:\"\";border:2px solid var(--sg-accent,#0b63f3);pointer-events:none;position:absolute;inset:-1px}.sv-grid-cell.sv-grid-cell-editing{box-shadow:none}.sv-grid-cell.sv-grid-cell-editing .sv-grid-cell-editor:focus,.sv-grid-cell.sv-grid-cell-editing .sv-grid-dropdown-trigger:focus,.sv-grid-cell.sv-grid-cell-editing .sv-dtp__field:focus-within,.sv-grid-cell.sv-grid-cell-editing .sv-grid-checkbox:focus-visible{box-shadow:none;outline:none}.sv-grid-cell-note-corner{background:linear-gradient(45deg, transparent 50%, var(--sg-note-corner,#f59e0b) 50%);cursor:help;z-index:6;width:12px;height:12px;position:absolute;top:0;right:0}.sv-grid-cell-note-corner:before{content:\"\";position:absolute;inset:-3px -3px 0 0}.sv-grid-fill-handle{background:var(--sg-accent,#0b63f3);border:1px solid var(--sg-bg,#fff);box-sizing:border-box;cursor:crosshair;z-index:15;touch-action:none;width:9px;height:9px;position:absolute;bottom:0;right:0}.sv-grid-fill-handle:hover{transform-origin:100% 100%;transform:scale(1.3)}.sv-grid-selection-bar-upsell{z-index:45;max-width:calc(100% - 24px);position:absolute;left:50%;transform:translate(-50%)}.sv-grid-selection-bar-upsell[data-position=bottom]{bottom:16px}.sv-grid-selection-bar-upsell[data-position=top]{top:16px}.sv-grid-root[data-move-grab=true],.sv-grid-root[data-move-grab=true] .sv-grid-cell{cursor:move!important}.sv-grid-root[data-move-grab=true] .sv-grid-fill-handle{cursor:crosshair!important}.sv-grid-cell[data-fill-top=true],.sv-grid-cell[data-fill-bottom=true],.sv-grid-cell[data-fill-left=true],.sv-grid-cell[data-fill-right=true]{--sv-fill-top:none;--sv-fill-bottom:none;--sv-fill-left:none;--sv-fill-right:none;--sv-fill-color:var(--sg-fill-marquee,var(--sg-accent,#2563eb))}.sv-grid-cell[data-fill-top=true]{--sv-fill-top:repeating-linear-gradient(to right, var(--sv-fill-color) 0 3px, transparent 3px 6px)}.sv-grid-cell[data-fill-bottom=true]{--sv-fill-bottom:repeating-linear-gradient(to right, var(--sv-fill-color) 0 3px, transparent 3px 6px)}.sv-grid-cell[data-fill-left=true]{--sv-fill-left:repeating-linear-gradient(to bottom, var(--sv-fill-color) 0 3px, transparent 3px 6px)}.sv-grid-cell[data-fill-right=true]{--sv-fill-right:repeating-linear-gradient(to bottom, var(--sv-fill-color) 0 3px, transparent 3px 6px)}.sv-grid-table .sv-grid-cell[data-fill-top=true],.sv-grid-table .sv-grid-cell[data-fill-bottom=true],.sv-grid-table .sv-grid-cell[data-fill-left=true],.sv-grid-table .sv-grid-cell[data-fill-right=true]{background-image:var(--sv-fill-top), var(--sv-fill-bottom), var(--sv-fill-left), var(--sv-fill-right);background-position:0 0,0 100%,0 0,100% 0;background-repeat:no-repeat;background-size:100% 2px,100% 2px,2px 100%,2px 100%}.sv-grid-cell-editing{padding:0}.sv-grid-cell[data-selected-range=true]{background:var(--sg-selection-bg,#eef4ff);--sv-range-top:0 0 0 transparent;--sv-range-bottom:0 0 0 transparent;--sv-range-left:0 0 0 transparent;--sv-range-right:0 0 0 transparent;box-shadow:var(--sv-range-top), var(--sv-range-bottom), var(--sv-range-left), var(--sv-range-right)}.sv-grid-cell[data-range-top=true]{--sv-range-top:inset 0 2px 0 var(--sg-accent,#0b63f3)}.sv-grid-cell[data-range-bottom=true]{--sv-range-bottom:inset 0 -2px 0 var(--sg-accent,#0b63f3)}.sv-grid-cell[data-range-left=true]{--sv-range-left:inset 2px 0 0 var(--sg-accent,#0b63f3)}.sv-grid-cell[data-range-right=true]{--sv-range-right:inset -2px 0 0 var(--sg-accent,#0b63f3)}.sv-grid-cell[data-range-top=true],.sv-grid-cell[data-range-bottom=true],.sv-grid-cell[data-range-left=true],.sv-grid-cell[data-range-right=true],.sv-grid-cell.sv-merge-edge-right,.sv-grid-cell.sv-merge-edge-bottom{z-index:3;position:relative}.sv-grid-cell.sv-merge-edge-right{box-shadow:inset -2px 0 0 var(--sg-accent,#0b63f3)}.sv-grid-cell.sv-merge-edge-bottom{box-shadow:inset 0 -2px 0 var(--sg-accent,#0b63f3)}.sv-grid-cell.sv-merge-in-range{background:var(--sg-selection-bg,#eef4ff)}.sv-grid-cell-editor{background:var(--sg-input-bg,#fff);box-sizing:border-box;width:100%;height:100%;font:inherit;color:inherit;border:0;outline:none;padding:0 8px;position:absolute;inset:0}.sv-grid-column-filter,.sv-grid-filter-value,.sv-grid-global-filter input,.sv-grid-menu-search,.sv-grid-menu-condition-value{background:var(--sg-input-bg,#fff);color:var(--sg-fg,#0f172a);border:1px solid var(--sg-input-border,#cbd5e1);box-sizing:border-box;font:inherit;border-radius:5px;padding:0 8px}.sv-grid-column-filter{width:100%;height:28px;font-size:.8125rem}.sv-grid-global-filter{color:var(--sg-muted,#64748b);align-items:center;gap:8px;margin-bottom:8px;font-size:.8125rem;font-weight:550;display:inline-flex}.sv-grid-global-filter input{min-width:220px;height:30px;font-size:.8125rem}.sv-grid-column-filter::placeholder,.sv-grid-filter-value::placeholder,.sv-grid-menu-search::placeholder,.sv-grid-global-filter input::placeholder,.sv-grid-cell-editor::placeholder{color:var(--sg-muted,#64748b);opacity:.7}.sv-grid-global-filter input:focus,.sv-grid-filter-value:focus,.sv-grid-column-filter:focus,.sv-grid-menu-search:focus,.sv-grid-menu-condition-value:focus,.sv-grid-menu-operator:focus,.sv-grid-cell-editor:focus{border-color:var(--sg-accent,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb, var(--sg-accent,#2563eb) 30%, transparent);outline:none}.sv-grid-cell-editor-number,.sv-grid-cell-editor-date,.sv-grid-cell-editor-datetime{width:100%;height:100%}.sv-grid-cell.sv-grid-cell-editing .sv-dtp{width:auto;display:block;position:absolute;inset:0}.sv-grid-cell.sv-grid-cell-editing .sv-dtp__field{height:100%;box-shadow:none;border:0;border-radius:0;padding-inline:0}.sv-grid-cell.sv-grid-cell-editing .sv-dtp__input{font:inherit}.sv-grid-cell.sv-grid-cell-editing .sv-dtp__clear,.sv-grid-cell.sv-grid-cell-editing .sv-dtp__toggle,.sv-grid-filter-row-control>.sv-field .sv-dtp__toggle{width:20px;height:20px}.sv-grid-filter-row-control>.sv-field .sv-dtp__toggle{flex:0 auto;min-width:0}.sv-grid-filter-row-control>.sv-field .sv-dtp__clear{display:none}.sv-grid-filter-row-control>.sv-field .sv-dri__field{gap:3px;padding-inline:4px 2px}.sv-grid-filter-row-control>.sv-field .sv-dri__clear{flex:0 auto;width:20px;min-width:0;height:20px}.sv-grid-cell-editor-list{appearance:auto;width:100%;height:100%;font:inherit;color:inherit;background:var(--sg-input-bg,#fff);box-sizing:border-box;border:0;padding:0 6px}.sv-grid-cell-editor-list[multiple]{z-index:5;border:1px solid var(--sg-accent,#0b63f3);background:var(--sg-input-bg,#fff);height:auto;min-height:100%;max-height:220px;padding:4px;position:absolute;top:0;left:0;right:0;box-shadow:0 8px 24px #0f172a2e}.sv-grid-cell-editor-chips{background:var(--sg-header-bg,var(--sg-bg,#fff));min-height:calc(100% + 2px);color:var(--sg-fg,#0f172a);box-sizing:border-box;z-index:1000;border:1px solid var(--sg-accent,#2563eb);border-radius:var(--sg-radius,6px);align-items:flex-start;padding:4px 6px;display:flex;position:absolute;top:-1px;left:-1px;right:-1px;overflow:visible;box-shadow:0 12px 28px #00000073}.sv-grid-cell-editing:has(.sv-grid-cell-editor-chips){outline:none}.sv-grid-chips-row{flex-wrap:wrap;align-items:center;gap:4px;width:100%;display:flex}.sv-grid-chip-input{min-width:60px;font:inherit;color:inherit;background:0 0;border:0;outline:none;flex:80px;padding:2px 4px}.sv-grid-chip-picker{min-width:80px;font:inherit;color:inherit;background:var(--sg-bg,#fff);border:1px solid #0f172a26;border-radius:4px;flex:100px;padding:2px 4px}.sv-grid-chip-commit{text-transform:uppercase;letter-spacing:.04em;color:#fff;background:var(--sg-accent,#0b63f3);cursor:pointer;border:0;border-radius:4px;padding:3px 8px;font-size:11px}.sv-grid-chip-commit:hover{filter:brightness(1.1)}.sv-grid-chips-display{vertical-align:middle;flex-wrap:nowrap;align-items:center;gap:4px;max-width:100%;display:inline-flex}.sv-grid-sparkline{vertical-align:middle;display:inline-block;overflow:visible}.sv-grid-cf-bg{z-index:0;pointer-events:none;position:absolute;inset:0}.sv-grid-cf-bar{z-index:0;opacity:.85;pointer-events:none;border-radius:0 2px 2px 0;position:absolute;top:0;bottom:0;left:0}.sv-grid-cell-cf{position:relative}.sv-grid-cell-invalid{box-shadow:inset 0 0 0 1px var(--sg-invalid-border,#ef444473);color:var(--sg-invalid-fg,#b91c1c);background-color:var(--sg-invalid-bg,#ef444424)!important}.sv-grid-cell-invalid.sv-grid-cell-active{box-shadow:inset 0 0 0 2px var(--sg-invalid-border,#ef4444b3)}.sv-grid-status-bar{color:var(--sg-fg);background:var(--sg-header-bg,#f1f5f9);border:1px solid var(--sg-border,#e2e8f0);border-top:0;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:18px;padding:6px 14px;font-size:12px;display:flex}.sv-grid-status-item{font-variant-numeric:tabular-nums;font-weight:600}.sv-grid-status-label{color:var(--sg-muted,#64748b);margin-right:5px;font-weight:400}.sv-grid-cf-content{z-index:1;position:relative}.sv-grid-cf-icon{margin-right:5px;font-size:.95em}.sv-grid-chip{background:color-mix(in srgb, var(--sg-accent,#2563eb) 18%, transparent);color:var(--sg-fg,inherit);border:1px solid color-mix(in srgb, var(--sg-accent,#2563eb) 35%, transparent);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.85em;line-height:1.4;display:inline-flex}.sv-grid-chip-removable{padding-right:2px}.sv-grid-chip-remove{background:color-mix(in srgb, var(--sg-fg,#0f172a) 18%, transparent);width:16px;height:16px;color:inherit;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.sv-grid-chip-remove:hover{color:#fff;background:#dc2626b3}.sv-grid-icon{flex:none;width:1em;height:1em;display:block}.sv-grid-icon-custom{justify-content:center;align-items:center;line-height:0;display:inline-flex}.sv-grid-icon-custom>svg,.sv-grid-icon-custom>img{width:100%;height:100%;display:block}.sv-grid-header-cell{width:100%;min-width:0;min-height:var(--sg-header-min-height,auto);align-items:center;gap:2px;display:flex}.sv-grid-header-sort{min-width:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:4px;padding:2px;display:flex}.sv-grid-header-custom{text-align:left;cursor:pointer;outline:none;flex:auto;align-items:center;gap:4px;min-width:0;padding:2px;display:flex}.sv-grid-header-label{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.sv-grid-header-icon{color:var(--sg-muted,#5b6b85);flex:none;font-size:13px;display:inline-flex}.sv-grid-header-icon-hint{opacity:0;transition:opacity .12s}.sv-grid-column:hover .sv-grid-header-icon-hint{opacity:.4}.sv-grid-header-icon-flag{color:var(--sg-accent,#0b63f3)}.sv-grid-col-menu-btn{width:0;height:22px;color:var(--sg-muted,#5b6b85);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;font-size:15px;transition:width .14s,opacity .14s,background-color .12s;display:inline-flex;overflow:hidden}.sv-grid-column:hover .sv-grid-col-menu-btn,.sv-grid-col-menu-btn.is-open,.sv-grid-col-menu-btn:focus-visible,.sv-grid-col-filter-btn.is-active{opacity:1;pointer-events:auto;width:22px}.sv-grid-col-menu-btn:hover,.sv-grid-col-menu-btn.is-open{background:var(--sg-row-hover-bg,#e2e8f3)}.sv-grid-filter-operator-btn{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);height:24px;color:var(--sg-fg,#334155);cursor:pointer;border-radius:4px;flex:none;align-items:center;gap:2px;padding:0 4px;font-size:13px;display:inline-flex}.sv-grid-filter-operator-btn.is-open{border-color:var(--sg-accent,#0b63f3)}.sv-grid-caret{color:var(--sg-muted,#94a3b8);font-size:9px;display:inline-flex}.sv-grid-menu-backdrop{z-index:900;background:0 0;position:fixed;inset:0}.sv-grid-menu{z-index:901;overscroll-behavior:contain;background:var(--sg-bg,#fff);border:1px solid var(--sg-border,#d6dee9);max-height:calc(100vh - 24px);color:var(--sg-fg,#1f2937);border-radius:8px;padding:4px;font-size:13px;position:fixed;overflow:auto;box-shadow:0 12px 28px #0f172a2e}.sv-grid-column-menu{width:260px}.sv-grid-menu-tabs{border-bottom:1px solid var(--sg-border,#e2e8f0);gap:2px;margin:-2px -2px 4px;padding:2px 2px 0;display:flex}.sv-grid-menu-tab{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:6px;font-size:12px;font-weight:600}.sv-grid-menu-tab:hover{color:var(--sg-fg,#0f172a)}.sv-grid-menu-tab.is-active{color:var(--sg-accent,#2563eb);border-bottom-color:var(--sg-accent,#2563eb)}.sv-grid-operator-menu{width:184px}.sv-grid-context-menu{min-width:180px}.sv-grid-comment-editor{width:240px;padding:8px}.sv-grid-comment-textarea{resize:vertical;border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);width:100%;min-height:60px;color:var(--sg-fg,#0f172a);font:inherit;border-radius:4px;outline:none;padding:6px 8px;font-size:13px}.sv-grid-comment-textarea:focus{border-color:var(--sg-accent,#6366f1)}.sv-grid-comment-actions{align-items:center;gap:6px;margin-top:8px;display:flex}.sv-grid-comment-spacer{flex:auto}.sv-grid-comment-actions button{border:1px solid var(--sg-border,#cbd5e1);background:var(--sg-bg,#fff);color:var(--sg-fg,#1f2937);font:inherit;cursor:pointer;border-radius:4px;padding:4px 10px;font-size:12px}.sv-grid-comment-save{border-color:var(--sg-accent,#6366f1)!important;background:var(--sg-accent,#6366f1)!important;color:#fff!important}.sv-grid-comment-remove{color:var(--sg-danger,#dc2626)!important}.sv-grid-menu-item{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;padding:7px 10px;display:flex}.sv-grid-menu-item:hover{background:var(--sg-row-hover-bg,#eef2f8)}.sv-grid-menu.sv-grid-in-suggest{min-width:140px;max-width:260px;padding:0;font-size:12px;overflow:visible}.sv-grid-menu-item[aria-checked=true]{background:var(--sg-selection-bg,#eaf2ff);color:var(--sg-accent,#0b63f3)}.sv-grid-menu-sep{background:var(--sg-border,#e6ebf2);height:1px;margin:4px 6px}.sv-grid-menu-filter{padding:4px 6px 6px}.sv-grid-menu-filter-head{color:var(--sg-muted,#475569);align-items:center;gap:6px;padding:2px 0 6px;font-weight:600;display:flex}.sv-grid-menu-head-note{color:var(--sg-muted,#64748b);opacity:.85;margin-inline-start:auto;font-size:.85em;font-weight:500}.sv-grid-menu-search{box-sizing:border-box;border:1px solid var(--sg-input-border,#cbd5e1);width:100%;height:28px;font:inherit;border-radius:5px;margin-bottom:6px;padding:0 8px}.sv-grid-menu-filter-row{gap:4px;margin-bottom:6px;display:flex}.sv-grid-menu-operator-group{gap:2px;margin-bottom:6px;display:flex}.sv-grid-menu-operator-btn{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);height:28px;color:var(--sg-fg,#475569);cursor:pointer;border-radius:4px;flex:1 1 0;justify-content:center;align-items:center;padding:0;transition:background-color .1s,color .1s,border-color .1s;display:inline-flex}.sv-grid-menu-operator-btn:hover{background:var(--sg-row-hover-bg,#eef2f8)}.sv-grid-menu-operator-btn.is-active{background:var(--sg-accent,#0b63f3);border-color:var(--sg-accent,#0b63f3);color:#fff}.sv-grid-menu-condition-value{box-sizing:border-box;border:1px solid var(--sg-input-border,#cbd5e1);min-width:0;height:28px;font:inherit;border-radius:5px;flex:1 1 0;padding:0 8px}.sv-grid-menu-add-cond{color:var(--sg-accent,#3b82f6);border:1px dashed var(--sg-border,#cbd5e1);cursor:pointer;background:0 0;border-radius:5px;align-self:flex-start;margin-top:2px;padding:3px 8px;font-size:11.5px;font-weight:600}.sv-grid-menu-add-cond:hover{background:color-mix(in oklab, var(--sg-accent,#3b82f6) 8%, transparent);border-style:solid}.sv-grid-menu-join{align-items:center;gap:2px;margin:2px 0;display:inline-flex}.sv-grid-menu-join button{color:var(--sg-muted,#64748b);border:1px solid var(--sg-border,#cbd5e1);cursor:pointer;background:0 0;padding:2px 10px;font-size:11px;font-weight:700}.sv-grid-menu-join button:first-child{border-radius:5px 0 0 5px}.sv-grid-menu-join button:nth-child(2){border-left:0;border-radius:0}.sv-grid-menu-join button.is-on{background:var(--sg-accent,#3b82f6);color:#fff;border-color:var(--sg-accent,#3b82f6)}.sv-grid-menu-join-x{margin-left:auto;font-size:14px;line-height:1;border-radius:5px!important;padding:2px 7px!important}.sv-grid-menu .sv-listbox{overscroll-behavior:contain}.sv-grid-facet{cursor:pointer;align-items:center;gap:8px;padding:4px 8px;display:flex}.sv-grid-facet:hover{background:var(--sg-row-hover-bg,#f4f6fa)}.sv-grid-facet-all{padding-inline-start:3px;font-weight:600}.sv-grid-facet input{flex:none}.sv-grid-facet-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sv-grid-facet-empty,.sv-grid-facet-note{color:var(--sg-muted,#94a3b8);padding:6px 8px;font-size:12px}.sv-grid-menu-actions{justify-content:flex-end;gap:6px;padding-top:8px;display:flex}.sv-grid-menu-btn{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);color:var(--sg-fg,#334155);font:inherit;cursor:pointer;border-radius:5px;padding:5px 10px}.sv-grid-menu-btn-primary{background:var(--sg-accent,#0b63f3);border-color:var(--sg-accent,#0b63f3);color:#fff}.sv-grid-menu-item:disabled,.sv-grid-menu-btn:disabled{opacity:.4;cursor:default}.sv-grid-menu-item:disabled:hover{background:0 0}.sv-grid-group-row>.sv-grid-cell{background:var(--sg-header-bg,#eef2f8);cursor:pointer;font-weight:600}.sv-grid-row-selected>.sv-grid-cell{background:var(--sg-selection-bg,#eaf2ff)}.sv-grid-group-footer-row>.sv-grid-cell{background:var(--sg-header-bg,#eef2f8);border-top:1px solid var(--sg-border,#d7dce5);font-weight:600}.sv-grid-row-auto-height>.sv-grid-cell{white-space:normal;overflow-wrap:anywhere;text-overflow:clip;vertical-align:top;padding-top:6px;padding-bottom:6px;overflow:visible}.sv-grid-grand-total-row>.sv-grid-cell{border-top:3px double var(--sg-border,#d7dce5);font-weight:700}.sv-grid-tree-indent{flex:none;display:inline-block}.sv-grid-tree-toggle{width:14px;height:14px;color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:3px;flex:none;justify-content:center;align-items:center;margin-right:3px;padding:0;font-size:10px;line-height:1;display:inline-flex}.sv-grid-tree-toggle:hover{background:var(--sg-header-bg,#eef2f8);color:var(--sg-fg,#0f172a)}.sv-grid-tree-toggle>.sv-grid-icon,.sv-grid-group-toggle>.sv-grid-icon{width:12px;height:12px;transition:transform .15s}.sv-grid-tree-toggle[aria-expanded=true]>.sv-grid-icon,.sv-grid-group-toggle[aria-expanded=true]>.sv-grid-icon{transform:rotate(90deg)}.sv-grid-tree-toggle:focus-visible{outline:2px solid var(--sg-accent,#2563eb);outline-offset:1px}.sv-grid-autogroup-label{color:var(--sg-fg,#0f172a);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sv-grid-tree-spacer{flex:none;width:14px;margin-right:3px;display:inline-block}.sv-grid-group-cell{padding:0 12px}.sv-grid-group-content{align-items:center;gap:6px;display:inline-flex}.sv-grid-group-toggle{color:var(--sg-fg,#334155);cursor:pointer;background:0 0;border:0;padding:0 4px 0 0;font-size:11px;line-height:1}.sv-grid-group-count{color:var(--sg-muted,#64748b);margin-left:6px;font-size:12px;font-weight:400}.sv-grid-group-agg{color:var(--sg-fg);white-space:nowrap;margin-left:10px;font-size:12px;font-weight:600}.sv-grid-group-agg-label{color:var(--sg-muted,#64748b);margin-right:4px;font-weight:400}.sv-grid-group-agg-label:after{content:\":\"}.sv-grid-group-child-indent{width:18px;display:inline-block}.sv-grid-tooltip{z-index:10000;color:#f1f5f9;border-radius:var(--sg-radius,6px);pointer-events:none;white-space:pre-wrap;word-wrap:break-word;background:#0f172a;max-width:280px;padding:8px 10px;font-size:12px;line-height:1.45;position:fixed;box-shadow:0 8px 24px #0f172a47}[data-theme=dark] .sv-grid-tooltip{color:#0f172a;background:#f1f5f9}.sv-grid-cell-editor-textarea{border:1px solid var(--sg-accent,#6366f1);background:var(--sg-bg,#fff);width:100%;min-height:80px;color:var(--sg-fg,#0f172a);resize:vertical;box-shadow:0 0 0 2px var(--sg-focus-ring,#6366f166);border-radius:4px;outline:none;padding:6px 8px;font-family:inherit;font-size:13px;line-height:1.4}.sv-grid-autocomplete{width:100%;position:relative}.sv-grid-autocomplete-list{z-index:30;background:var(--sg-bg,#fff);border:1px solid var(--sg-border,#d6dee9);border-radius:var(--sg-radius,6px);max-height:220px;margin-top:2px;padding:4px;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 12px 28px #0f172a2e}.sv-grid-autocomplete-option{text-align:left;width:100%;color:var(--sg-fg,#1f2937);font:inherit;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;border-radius:4px;padding:5px 8px;font-size:13px;display:block;overflow:hidden}.sv-grid-autocomplete-option:hover,.sv-grid-autocomplete-option[aria-selected=true]{background:var(--sg-row-hover-bg,#6366f11a)}.sv-grid-find{z-index:60;background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);border:1px solid var(--sg-border,#cbd5e1);border-radius:8px;align-items:center;gap:4px;min-width:280px;padding:6px 8px;display:inline-flex;position:absolute;top:8px;right:8px;box-shadow:0 10px 25px #0f172a2e}.sv-grid-find>.sv-grid-icon{width:14px;height:14px;color:var(--sg-muted,#94a3b8);flex:none;margin-left:2px}.sv-grid-find-input{min-width:0;color:inherit;background:0 0;border:0;outline:none;flex:1;padding:2px 6px;font-size:13px}.sv-grid-find-input::placeholder{color:var(--sg-muted,#94a3b8)}.sv-grid-find-count{color:var(--sg-muted,#64748b);font-variant-numeric:tabular-nums;white-space:nowrap;padding:0 4px;font-size:11px}.sv-grid-find-step,.sv-grid-find-close{width:22px;height:22px;color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:12px;display:inline-flex}.sv-grid-find-step:hover:not(:disabled),.sv-grid-find-close:hover{background:var(--sg-row-hover-bg,#94a3b81f);color:var(--sg-fg,#0f172a)}.sv-grid-find-step:disabled{opacity:.3;cursor:default}.sv-grid-pagination{border:1px solid var(--sg-border,#e2e8f0);border-radius:0 0 var(--sg-radius,6px) var(--sg-radius,6px);background:var(--sg-header-bg,#f1f5f9);color:var(--sg-fg,#0f172a);border-top:0;justify-content:flex-end;align-items:center;gap:24px;margin-top:0;padding:12px 16px;font-size:13px;display:flex}.sv-grid-pagination-top{border-top:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px) var(--sg-radius,6px) 0 0;border-bottom:0}.sv-grid-pagination-pagesize{color:var(--sg-muted,#64748b);align-items:center;gap:8px;display:inline-flex}.sv-grid-pagination-pagesize-dd{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);border-radius:5px;min-width:62px;height:28px;position:relative}.sv-grid-pagination-pagesize-dd .sv-grid-dropdown{height:100%;color:var(--sg-fg,#0f172a);background:0 0;border-radius:5px;font-size:13px;position:absolute;inset:0}.sv-grid-pagination-pagesize-dd .sv-grid-dropdown-trigger{width:100%;height:100%;min-height:28px;color:var(--sg-fg,#0f172a);font:inherit;text-align:start;cursor:pointer;box-sizing:border-box;background:0 0;border:0;border-radius:5px;outline:none;align-items:center;gap:6px;padding:0 8px;font-size:13px;display:flex}.sv-grid-pagination-pagesize-dd .sv-grid-dropdown-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.sv-grid-pagination-pagesize-dd .sv-grid-dropdown-caret{opacity:.7;flex:none;font-size:10px;line-height:1}.sv-grid-pagination-pagesize-dd:focus-within{border-color:var(--sg-accent,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb, var(--sg-accent,#2563eb) 30%, transparent)}.sv-grid-pagination-range{color:var(--sg-fg,#0f172a)}.sv-grid-pagination-nav{align-items:center;gap:4px;display:inline-flex}.sv-grid-pagination-btn{width:28px;height:28px;color:var(--sg-fg,#0f172a);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;padding:0;font-size:16px;transition:background-color .1s,color .1s;display:inline-flex}.sv-grid-pagination-btn:hover:not(:disabled){background:var(--sg-input-bg,#fff);color:var(--sg-accent,#2563eb)}.sv-grid-pagination-btn:disabled{color:var(--sg-muted,#64748b);opacity:.4;cursor:default}.sv-grid-pagination-label{color:var(--sg-fg,#0f172a);margin:0 8px}.sv-grid-no-scroll .sv-grid-scrollbar-corner,.sv-grid-no-scroll .sv-grid-scrollbar{display:none}.sv-grid-scrollbar-corner,.sv-grid-scrollbar-corner-br{border-bottom-color:var(--sg-border,#e2e8f0)}.sv-grid-menu-operator-select{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);width:100%;height:28px;color:var(--sg-fg,#0f172a);font:inherit;cursor:pointer;appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 12px) 12px,calc(100% - 8px) 12px;background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-radius:5px;margin-bottom:6px;padding:0 22px 0 8px;font-size:13px}.sv-grid-menu-operator-select:focus{border-color:var(--sg-accent,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb, var(--sg-accent,#2563eb) 40%, transparent);outline:none}.sv-grid-menu-operator-btn.is-active{color:var(--sg-on-accent,#fff)}.sv-grid-filter-menu{width:260px}.sv-grid-choose-columns-menu{width:240px}.sv-grid-facet input[type=checkbox]{accent-color:var(--sg-accent,#2563eb);cursor:pointer;width:14px;height:14px}.sv-grid-menu-item-chevron{opacity:.55;margin-left:auto;transform:rotate(-90deg)}.sv-grid-menu-item.is-open .sv-grid-menu-item-chevron{opacity:1}.sv-grid-menu-search{padding-left:28px}.sv-grid-menu-search-wrap{display:block;position:relative}.sv-grid-menu-search-wrap>.sv-grid-icon{width:14px;height:14px;color:var(--sg-muted,#94a3b8);pointer-events:none;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.sv-grid-menu-filter>*+*{margin-top:6px}.sv-grid-col-filter-btn.is-active{color:var(--sg-accent,#2563eb)}.sv-grid-row-number-column,.sv-grid-row-number-cell{border-right-color:var(--sg-header-bg,#f1f5f9)}.sv-grid-group-row>.sv-grid-cell{color:var(--sg-header-fg,#0f172a)}.sv-grid-filter-operator-btn{opacity:.85}.sv-grid-filter-operator-btn:hover{opacity:1;border-color:var(--sg-accent,#2563eb)}.sv-grid-filter-operator-btn.is-open{opacity:1}.sv-grid-board-search>.sv-grid-icon{width:14px;height:14px}.sv-grid-board-search{border:1px solid var(--sg-border,#e4e7ec);border-radius:var(--sg-radius,8px);background:var(--sg-bg,#fff);color:color-mix(in srgb, var(--sg-fg,#101828) 55%, transparent);align-items:center;gap:6px;max-width:280px;margin-bottom:8px;padding:5px 9px;display:flex}.sv-grid-board-search:focus-within{border-color:var(--sg-accent,#3b82f6)}.sv-grid-board-search input{font:inherit;color:var(--sg-fg,#101828);background:0 0;border:0;outline:none;flex:auto;font-size:.82rem}.sv-grid-scheduler-upsell{text-align:left;border:1px dashed var(--sg-border,#e4e7ec);border-radius:var(--sg-radius,8px);background:color-mix(in srgb, var(--sg-fg,#1f2937) 5%, transparent);height:100%;color:color-mix(in srgb, var(--sg-fg,#101828) 70%, transparent);flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;padding:24px;display:flex}.sv-grid-scheduler-upsell strong{font-size:.95rem}.sv-grid-scheduler-upsell p{max-width:42ch;margin:0;font-size:.85rem}.sv-grid-upsell-license{opacity:.85;font-size:.8rem}.sv-grid-upsell-license a{color:inherit;text-underline-offset:2px;text-decoration:underline}.sv-grid-scheduler-upsell code{background:color-mix(in srgb, var(--sg-fg,#101828) 8%, transparent);border-radius:4px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82em}.sv-grid-chart-toggle svg{flex:none}.sv-grid-chart-panel{z-index:900;background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);flex-direction:column;display:flex;position:absolute}.sv-grid-chart-panel.is-bottom{border-top:1px solid var(--sg-border,#e2e8f0);bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0000001f}.sv-grid-chart-panel.is-right{border-left:1px solid var(--sg-border,#e2e8f0);top:0;bottom:0;right:0;box-shadow:-8px 0 24px #0000001f}.sv-grid-chart-panel.is-floating{border:1px solid var(--sg-border,#e2e8f0);border-radius:calc(var(--sg-radius,6px) + 2px);inset:auto;overflow:hidden;box-shadow:0 12px 40px #00000047}.sv-grid-chart-resizer{z-index:1;touch-action:none;background:0 0;position:absolute}.sv-grid-chart-panel.is-bottom>.sv-grid-chart-resizer{cursor:ns-resize;height:7px;top:-3px;left:0;right:0}.sv-grid-chart-panel.is-right>.sv-grid-chart-resizer{cursor:ew-resize;width:7px;top:0;bottom:0;left:-3px}.sv-grid-chart-resizer:hover,.sv-grid-chart-resizer.is-dragging{background:color-mix(in srgb, var(--sg-accent,#2563eb) 30%, transparent)}.sv-grid-chart-float-resizer{cursor:nwse-resize;touch-action:none;background:linear-gradient(135deg, transparent 50%, color-mix(in srgb, var(--sg-muted,#64748b) 55%, transparent) 50%);border-bottom-right-radius:calc(var(--sg-radius,6px) + 2px);width:16px;height:16px;position:absolute;bottom:0;right:0}.sv-grid-chart-panel-head{border-bottom:1px solid var(--sg-border,#e2e8f0);background:var(--sg-header-bg,#f8fafc);flex-direction:column;align-items:stretch;gap:8px;padding:8px 12px 10px;display:flex}.sv-grid-chart-drawer-title{align-items:center;gap:7px;display:flex}.sv-grid-chart-drawer-title.is-drag-handle{cursor:move;-webkit-user-select:none;user-select:none}.sv-grid-chart-title-icon{color:var(--sg-accent,#2563eb);flex:none}.sv-grid-chart-title{letter-spacing:.01em;color:var(--sg-fg,#0f172a);font-size:13px;font-weight:700}.sv-grid-chart-drawer-title .sv-grid-chart-actions{margin-left:auto}.sv-grid-chart-actions{align-items:center;gap:6px;display:inline-flex}.sv-grid-chart-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.sv-grid-chart-controls:empty{display:none}.sv-grid-chart-hint{color:var(--sg-muted,#64748b);flex-basis:100%;margin:2px 0 0;font-size:11.5px;font-weight:400}.sv-grid-chart-ctl{color:var(--sg-muted,#64748b);flex-direction:column;gap:2px;font-size:11px;font-weight:600;display:flex}.sv-grid-chart-ctl select{font:inherit;color:var(--sg-fg,#0f172a);background:var(--sg-input-bg,var(--sg-bg,#fff));border:1px solid var(--sg-input-border,var(--sg-border,#e2e8f0));border-radius:var(--sg-radius,6px);padding:4px 8px;font-size:12.5px;font-weight:400}.sv-grid-chart-toggle{color:var(--sg-muted,#64748b);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex}.sv-grid-chart-btn{font:inherit;border:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px);background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);cursor:pointer;padding:5px 10px;font-size:12px;font-weight:550}.sv-grid-chart-btn:hover:not(:disabled){border-color:var(--sg-accent,#2563eb);color:var(--sg-accent,#2563eb)}.sv-grid-chart-btn:disabled{opacity:.5;cursor:default}.sv-grid-chart-icon-btn{border-radius:var(--sg-radius,6px);width:24px;height:24px;color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.sv-grid-chart-icon-btn:hover{border-color:var(--sg-border,#e2e8f0);color:var(--sg-accent,#2563eb);background:var(--sg-bg,#fff)}.sv-grid-chart-close{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:18px;line-height:1}.sv-grid-chart-close:hover{color:var(--sg-fg,#0f172a)}.sv-grid-chart-panel-body{flex:1;justify-content:center;align-items:stretch;min-height:0;padding:4px 10px 8px;display:flex;overflow:hidden}.sv-grid-chart-panel-body>.sv-grid-chart{justify-content:center;width:100%}.sv-grid-chart-empty{color:var(--sg-muted,#64748b);text-align:center;max-width:42ch;margin:0;font-size:13px}.sv-grid-chart-export{display:inline-flex;position:relative}.sv-grid-chart-export-menu{z-index:5;background:var(--sg-bg,#fff);border:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px);flex-direction:column;min-width:150px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #0000002e}.sv-grid-chart-export-menu button{font:inherit;text-align:left;border-radius:calc(var(--sg-radius,6px) - 2px);color:var(--sg-fg,#0f172a);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:6px 10px;font-size:12.5px}.sv-grid-chart-export-menu button:hover:not(:disabled){background:var(--sg-hover-bg,color-mix(in srgb, var(--sg-accent,#2563eb) 10%, transparent))}.sv-grid-chart-export-menu button:disabled{opacity:.45;cursor:default}.sv-grid-chart-ai-btn{align-items:center;gap:4px;display:inline-flex}.sv-grid-chart-ai-btn.is-active{border-color:var(--sg-accent,#2563eb);color:var(--sg-accent,#2563eb)}.sv-grid-chart-ai{flex-direction:column;gap:4px;display:flex}.sv-grid-chart-ai-row{align-items:center;gap:6px;display:flex}.sv-grid-chart-ai-input{min-width:0;font:inherit;color:var(--sg-fg,#0f172a);background:var(--sg-input-bg,var(--sg-bg,#fff));border:1px solid var(--sg-input-border,var(--sg-border,#e2e8f0));border-radius:var(--sg-radius,6px);flex:1;padding:5px 9px;font-size:12.5px}.sv-grid-chart-ai-input:focus{border-color:var(--sg-accent,#2563eb);outline:none}.sv-grid-chart-ai-msg{color:var(--sg-muted,#64748b);margin:0;font-size:12px}.sv-grid-chart-ai-msg.is-error{color:var(--sg-danger,#dc2626)}.sv-grid-chart-tabs{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.sv-grid-chart-tab{border:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px);background:var(--sg-bg,#fff);align-items:center;display:inline-flex;overflow:hidden}.sv-grid-chart-tab.is-active{border-color:var(--sg-accent,#2563eb);background:color-mix(in srgb, var(--sg-accent,#2563eb) 10%, transparent)}.sv-grid-chart-tab-label{font:inherit;color:var(--sg-fg,#0f172a);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:140px;padding:3px 8px;font-size:12px;font-weight:600;overflow:hidden}.sv-grid-chart-tab.is-active .sv-grid-chart-tab-label{color:var(--sg-accent,#2563eb)}.sv-grid-chart-tab-x{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;padding:0 6px 0 2px;font-size:14px;line-height:1}.sv-grid-chart-tab-x:hover{color:var(--sg-fg,#0f172a)}\n/*$vite$:1*/";document.head.appendChild(s)}catch(e){}})();
|
|
28
|
+
;(function(){try{if(typeof document==='undefined')return;var s=document.createElement('style');s.setAttribute('data-svgrid','');s.textContent=".sv-grid-root{font-family:var(--sg-font,inherit);position:relative}.sv-grid-root[data-selbar]{--sg-selbar-reserve:68px}.sv-grid-root[data-selbar^=upsell]{--sg-selbar-reserve:116px}.sv-grid-root[data-selbar$=bottom] .sv-grid-container{padding-bottom:var(--sg-selbar-reserve)}.sv-grid-root[data-selbar$=top] .sv-grid-container{padding-top:var(--sg-selbar-reserve)}.sv-grid-sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sv-grid-loading-overlay{z-index:18;pointer-events:auto;background:color-mix(in srgb, var(--sg-bg,#fff) 35%, transparent);position:absolute;inset:0}.sv-grid-loading-bar{background:color-mix(in srgb, var(--sg-accent,#2563eb) 18%, transparent);height:3px;position:absolute;top:0;left:0;right:0;overflow:hidden}.sv-grid-loading-bar:before{content:\"\";background:var(--sg-accent,#2563eb);width:40%;animation:1.1s ease-in-out infinite sv-grid-loading-slide;position:absolute;inset:0}@keyframes sv-grid-loading-slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.sv-grid-skeleton{top:var(--sg-thead-h,40px);padding:0;position:absolute;left:0;right:0;overflow:hidden}.sv-grid-skeleton-row{height:var(--sg-pinned-row-h,36px);border-bottom:1px solid var(--sg-border,#e2e8f0);align-items:center;display:flex}.sv-grid-skeleton-cell{box-sizing:border-box;flex-shrink:0;padding:0 12px}.sv-grid-skeleton-bar{background:linear-gradient(90deg, color-mix(in srgb, var(--sg-muted,#94a3b8) 18%, transparent) 25%, color-mix(in srgb, var(--sg-muted,#94a3b8) 32%, transparent) 50%, color-mix(in srgb, var(--sg-muted,#94a3b8) 18%, transparent) 75%);background-size:200% 100%;border-radius:4px;width:70%;height:10px;animation:1.3s linear infinite sv-grid-shimmer;display:block}@keyframes sv-grid-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sv-grid-toolbar{align-items:center;gap:8px;padding:6px 2px;display:flex}.sv-grid-toolbar-btn{border:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px);background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);cursor:pointer;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:600;transition:background-color .12s,color .12s,border-color .12s;display:inline-flex}.sv-grid-toolbar-btn:hover{border-color:var(--sg-accent,#2563eb);color:var(--sg-accent,#2563eb)}.sv-grid-toolbar-btn.is-active{background:var(--sg-accent,#2563eb);border-color:var(--sg-accent,#2563eb);color:#fff}.sv-grid-advf-chip>.sv-grid-icon{width:13px;height:13px}.sv-grid-advf-chip{border:1px solid color-mix(in srgb, var(--sg-accent,#2563eb) 35%, transparent);background:color-mix(in srgb, var(--sg-accent,#2563eb) 12%, transparent);color:var(--sg-accent,#2563eb);border-radius:999px;align-items:center;gap:6px;padding:5px 6px 5px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.sv-grid-advf-clear{width:18px;height:18px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;font-size:11px;transition:background-color .12s;display:inline-flex}.sv-grid-advf-clear:hover{background:color-mix(in srgb, var(--sg-accent,#2563eb) 25%, transparent)}.sv-grid-tool-panel{z-index:901;background:var(--sg-bg,#fff);border-left:1px solid var(--sg-border,#e2e8f0);flex-direction:column;width:250px;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-8px 0 24px #0000001f}.sv-grid-tool-panel-head{text-transform:uppercase;letter-spacing:.05em;color:var(--sg-muted,#64748b);border-bottom:1px solid var(--sg-border,#e2e8f0);justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;font-weight:700;display:flex}.sv-grid-tool-panel-close{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;font-size:14px}.sv-grid-tool-panel-list{flex:1;margin:0;padding:6px;list-style:none;overflow-y:auto}.sv-grid-tool-panel-item{border-radius:5px;justify-content:space-between;align-items:center;gap:6px;padding:3px 6px;display:flex}.sv-grid-tool-panel-item:hover{background:var(--sg-row-hover-bg,#94a3b81a)}.sv-grid-tool-panel-vis{min-width:0;color:var(--sg-fg,#0f172a);cursor:pointer;flex:1;align-items:center;gap:8px;font-size:13px;display:flex}.sv-grid-tool-panel-vis input{accent-color:var(--sg-accent,#2563eb)}.sv-grid-tool-panel-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sv-grid-tool-panel-actions{flex-shrink:0;gap:2px;display:inline-flex}.sv-grid-tool-panel-btn{width:22px;height:22px;color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.sv-grid-tool-panel-btn:hover:not(:disabled){background:var(--sg-row-hover-bg,#94a3b82e);color:var(--sg-fg,#0f172a)}.sv-grid-tool-panel-btn.is-active{color:var(--sg-accent,#2563eb)}.sv-grid-tool-panel-btn:disabled{opacity:.35;cursor:default}.sv-grid-tool-panel-tabs{border-bottom:1px solid var(--sg-border,#e2e8f0);gap:2px;padding:6px 6px 0;display:flex}.sv-grid-tool-panel-tab{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:6px 8px;font-size:12px;font-weight:600}.sv-grid-tool-panel-tab:hover{color:var(--sg-fg,#0f172a)}.sv-grid-tool-panel-tab.is-active{color:var(--sg-accent,#2563eb);border-bottom-color:var(--sg-accent,#2563eb)}.sv-grid-tool-panel-filters{flex-direction:column;flex:1;gap:8px;padding:6px;display:flex;overflow-y:auto}.sv-grid-tp-filter{border:1px solid var(--sg-border,#e2e8f0);border-radius:6px;flex-direction:column;gap:4px;padding:6px;display:flex}.sv-grid-tp-filter.is-filtered{border-color:var(--sg-accent,#2563eb)}.sv-grid-tp-filter-head{justify-content:space-between;align-items:center;display:flex}.sv-grid-tp-filter-name{color:var(--sg-fg,#0f172a);font-size:12px;font-weight:600}.sv-grid-tp-filter-clear{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:11px}.sv-grid-tp-filter-clear:hover{color:var(--sg-accent,#2563eb)}.sv-grid-tp-filter-op,.sv-grid-tp-filter-input{box-sizing:border-box;border:1px solid var(--sg-border,#e2e8f0);background:var(--sg-bg,#fff);width:100%;color:var(--sg-fg,#0f172a);border-radius:5px;padding:4px 6px;font-size:12px}.sv-grid-root-fill{flex-direction:column;height:100%;min-height:0;display:flex}.sv-grid-root-fill>.sv-grid-shell{flex:1 1 0;min-height:0;height:auto!important}.sv-grid-shell{border-bottom:1px solid var(--sg-border,#cbd5e1);position:relative}.sv-grid-table{table-layout:fixed;border-collapse:separate;border-spacing:0}.sv-grid-table:focus{outline:none}.sv-grid-column,.sv-grid-cell{box-sizing:border-box;text-overflow:ellipsis;white-space:nowrap;background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);-webkit-user-select:none;user-select:none;border-right:1px solid var(--sg-border,#e2e8f0);border-bottom:1px solid var(--sg-border,#e2e8f0);overflow:hidden}.sv-grid-table tr>:last-child.sv-grid-column,.sv-grid-table tr>:last-child.sv-grid-cell{border-right:0}.sv-grid-table:not(.sv-grid-no-row-hover) tbody tr:hover>.sv-grid-cell:not([data-selected-range=true]){background-color:var(--sg-row-hover-bg,#eef2ff)}.sv-grid-cell-active,.sv-grid-cell-has-fill-handle{position:relative}.sv-grid-cell-has-fill-handle{overflow:visible}.sv-grid-detail-row{height:auto!important}.sv-grid-detail-cell{text-overflow:clip;white-space:normal;background:var(--sg-bg,#fff);-webkit-user-select:text;user-select:text;height:auto;padding:0;overflow:visible}.sv-grid-cell[data-pinned=left],.sv-grid-column[data-pinned=left]{background:var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%));box-shadow:inset -1px 0 0 var(--sg-pinned-divider,var(--sg-border,#cbd5e1)), 8px 0 12px -6px var(--sg-pinned-shadow-color,#0f172a38)}.sv-grid-cell[data-pinned=right],.sv-grid-column[data-pinned=right]{background:var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%));box-shadow:inset 1px 0 0 var(--sg-pinned-divider,var(--sg-border,#cbd5e1)), -8px 0 12px -6px var(--sg-pinned-shadow-color,#0f172a38)}.sv-grid-head .sv-grid-column[data-pinned=left],.sv-grid-head .sv-grid-column[data-pinned=right]{background:var(--sg-pinned-header-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 86%, var(--sg-accent,#2563eb) 14%));font-weight:600}.sv-grid-row-alt>.sv-grid-cell{background:var(--sg-row-alt-bg,#f8fafc)}.sv-grid-row-alt>.sv-grid-cell[data-pinned]{background:var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%))}.sv-grid-row-selected>.sv-grid-cell[data-pinned]{background:linear-gradient(color-mix(in srgb, var(--sg-selection-bg,#dbeafe) 65%, transparent), color-mix(in srgb, var(--sg-selection-bg,#dbeafe) 65%, transparent)), var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%))}.sv-grid-table:not(.sv-grid-no-row-hover) .sv-grid-row:hover>.sv-grid-cell[data-pinned]:not([data-selected-range=true]){background:linear-gradient(color-mix(in srgb, var(--sg-row-hover-bg,#eef2ff) 55%, transparent), color-mix(in srgb, var(--sg-row-hover-bg,#eef2ff) 55%, transparent)), var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%))}.sv-grid-column{position:relative}.sv-grid-cell[data-align=left],.sv-grid-column[data-align=left]{padding-left:var(--sg-cell-px,7px)}.sv-grid-cell[data-align=right]{text-align:right;padding-right:var(--sg-cell-px,7px)}.sv-grid-cell[data-align=center]{text-align:center}.sv-grid-column[data-align=right]{padding-right:var(--sg-cell-px,7px)}.sv-grid-column[data-align=right] .sv-grid-header-sort{justify-content:flex-end}.sv-grid-has-vscroll:not(.sv-grid-has-hscroll) .sv-grid-table tr>:last-child.sv-grid-cell[data-align=right],.sv-grid-has-vscroll:not(.sv-grid-has-hscroll) .sv-grid-table tr>:last-child.sv-grid-column[data-align=right]{padding-right:calc(var(--sg-cell-px,7px) + 16px)}.sv-grid-container.sv-grid-has-vscroll.sv-grid-has-hscroll{padding-right:16px}.sv-grid-column[data-align=center] .sv-grid-header-sort{justify-content:center}.sv-grid-resize-handle{cursor:col-resize;-webkit-user-select:none;user-select:none;z-index:2;width:5px;height:100%;transition:background-color .1s;position:absolute;top:0;right:0}.sv-grid-resize-handle:after{content:\"\";background:var(--sg-fg,#0f172a);opacity:0;border-radius:1px;width:2px;margin:auto 2px;transition:background-color .1s,opacity .1s;position:absolute;inset:0}.sv-grid-column:hover .sv-grid-resize-handle:after{opacity:.3}.sv-grid-column:hover .sv-grid-resize-handle:hover:after,.sv-grid-resize-handle.is-resizing:after{background:var(--sg-accent,#2563eb);opacity:1}.sv-grid-row-resize-handle{transition:background-color .1s}.sv-grid-row-resize-handle:hover,.sv-grid-row-resize-handle.is-resizing{background:color-mix(in srgb, var(--sg-accent,#0b63f3) 30%, transparent)}.sv-grid-head{z-index:35;background:var(--sg-header-bg,#f5f7fb);position:sticky;top:0}.sv-grid-head .sv-grid-column{background:var(--sg-header-bg,#f5f7fb);color:var(--sg-header-label-color,var(--sg-header-fg,var(--sg-fg,#0f172a)));font-weight:var(--sg-header-weight,600);font-size:var(--sg-header-size,inherit);text-transform:var(--sg-header-transform,none);letter-spacing:var(--sg-header-tracking,normal);border-bottom-color:var(--sg-header-border,var(--sg-border,#e2e8f0))}.sv-grid-column[draggable=true]{cursor:grab}.sv-grid-column[draggable=true]:active{cursor:grabbing}.sv-grid-column.is-dragging{opacity:.55}.sv-grid-column.is-drag-target-before,.sv-grid-column.is-drag-target-after{position:relative}.sv-grid-column.is-drag-target-before:before,.sv-grid-column.is-drag-target-after:after{content:\"\";pointer-events:none;z-index:7;background:linear-gradient(#6366f1,#8b5cf6);border-radius:2px;width:3px;animation:.7s ease-in-out infinite alternate sg-drop-pulse;position:absolute;top:4px;bottom:4px;box-shadow:0 0 6px #6366f1}.sv-grid-column.is-drag-target-before:before{left:-2px}.sv-grid-column.is-drag-target-after:after{right:-2px}@keyframes sg-drop-pulse{0%{opacity:.55}to{opacity:1}}.sv-grid-row-draggable{cursor:grab}.sv-grid-row-draggable:active{cursor:grabbing}.sv-grid-row-drag-active .sv-grid-row-draggable{-webkit-user-select:none;user-select:none}.sv-grid-row-draggable .sv-grid-row-number-cell{padding-left:14px;position:relative}.sv-grid-row-draggable .sv-grid-row-number-cell:before{content:\"⠇\";color:var(--sg-muted,#94a3b8);opacity:.4;pointer-events:none;font-size:13px;line-height:1;transition:opacity .12s;position:absolute;top:50%;left:3px;transform:translateY(-50%)}.sv-grid-row-draggable:hover .sv-grid-row-number-cell:before{opacity:1}.sv-grid-row-dropzone-over{outline:2px dashed var(--sg-accent,#6366f1);outline-offset:-2px;background:color-mix(in srgb, var(--sg-accent,#6366f1) 10%, transparent)}.sv-grid-row-drop-before>td{box-shadow:inset 0 2px 0 0 var(--sg-accent,#6366f1)}.sv-grid-row-drop-after>td{box-shadow:inset 0 -2px 0 0 var(--sg-accent,#6366f1)}.sv-grid-pinned-row td{z-index:4;background:var(--sg-pinned-bg,color-mix(in oklab, var(--sg-header-bg,#f1f5f9) 92%, var(--sg-accent,#2563eb) 8%));border-bottom:1px solid var(--sg-pinned-border,color-mix(in oklab, var(--sg-accent,#2563eb) 24%, transparent));font-weight:600;position:sticky}.sv-grid-pinned-row-top td{top:var(--sg-thead-h,36px)}.sv-grid-pinned-row-bottom td{border-top:1px solid var(--sg-pinned-border,color-mix(in oklab, var(--sg-accent,#2563eb) 24%, transparent));bottom:0}.sv-grid-pinned-row-top[data-pinned-index=\"1\"] td{top:calc(var(--sg-thead-h,36px) + var(--sg-pinned-row-h,32px))}.sv-grid-pinned-row-top[data-pinned-index=\"2\"] td{top:calc(var(--sg-thead-h,36px) + var(--sg-pinned-row-h,32px) * 2)}.sv-grid-pinned-row-top[data-pinned-index=\"3\"] td{top:calc(var(--sg-thead-h,36px) + var(--sg-pinned-row-h,32px) * 3)}.sv-grid-pinned-row-bottom[data-pinned-index=\"1\"] td{bottom:var(--sg-pinned-row-h,32px)}.sv-grid-pinned-row-bottom[data-pinned-index=\"2\"] td{bottom:calc(var(--sg-pinned-row-h,32px) * 2)}.sv-grid-pinned-row-bottom[data-pinned-index=\"3\"] td{bottom:calc(var(--sg-pinned-row-h,32px) * 3)}.sv-grid-pinned-row td[data-pinned]{z-index:5}.sv-grid-group-header-row{background:var(--sg-header-bg,#eef2f8)}.sv-grid-group-header-cell{box-sizing:border-box;border-bottom:1px solid var(--sg-border,#d8dee9);border-right:1px solid var(--sg-border,#e2e8f0);text-align:center;color:var(--sg-header-fg,#475569);text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;font-size:11.5px;font-weight:700}.sv-grid-group-header-placeholder{background:0 0;border-right-color:#0000}.sv-grid-group-header-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:inline-block;overflow:hidden}.sv-grid-group-toggle{max-width:100%;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:5px;padding:2px 6px;display:inline-flex}.sv-grid-group-toggle:hover{background:color-mix(in srgb, var(--sg-accent,#2563eb) 12%, transparent);color:var(--sg-accent,#2563eb)}.sv-grid-group-caret{flex-shrink:0;justify-content:center;align-items:center;width:10px;height:10px;transition:transform .14s;display:inline-flex}.sv-grid-group-caret>.sv-grid-icon{width:100%;height:100%}.sv-grid-group-toggle.is-collapsed .sv-grid-group-caret{transform:rotate(-90deg)}.sv-grid-foot{z-index:6;background:var(--sg-header-bg,#f5f7fb);position:sticky;bottom:0}.sv-grid-container.sv-grid-narrow{-webkit-overflow-scrolling:touch;scroll-behavior:auto}.sv-grid-container{scrollbar-width:auto;-ms-overflow-style:auto;overscroll-behavior:contain;overflow-anchor:none;scroll-padding-top:calc(var(--sg-thead-h,36px) + var(--sg-frozen-h,0px))}.sv-grid-container.sv-grid-container-custom-scrollbars{scrollbar-width:none;-ms-overflow-style:none}.sv-grid-container.sv-grid-container-custom-scrollbars::-webkit-scrollbar{display:none}.sv-grid-scrollbar{z-index:40;position:absolute}.sv-grid-scrollbar-vertical{top:0;width:16px;height:calc(100% - 16px);inset-inline-end:0}.sv-grid-scrollbar-corner{top:0;background:var(--sg-header-bg,#f5f7fb);border-bottom:1px solid var(--sg-header-border,#0f172a14);z-index:41;pointer-events:none;width:16px;position:absolute;inset-inline-end:0}.sv-grid-scrollbar-corner-br{inset-inline-end:0;background:var(--sg-header-bg,#eef2f8);z-index:42;pointer-events:none;width:16px;height:16px;position:absolute;bottom:0;box-shadow:inset 0 0 0 1px #0f172a0d}.sv-grid-scrollbar-horizontal{inset-inline-start:0;width:calc(100% - 16px);height:16px;bottom:0}.sv-grid-selection-column,.sv-grid-selection-cell{text-align:center;z-index:4;padding-inline:6px;position:sticky}.sv-grid-row-number-column,.sv-grid-row-number-cell{text-align:right;z-index:4;background:var(--sg-header-bg,#f5f7fb);color:var(--sg-muted,#64748b);font-variant-numeric:tabular-nums;padding-inline:8px;position:sticky;left:0}.sv-grid-row-number-head{color:inherit}.sv-grid-filter-row-control{box-sizing:border-box;padding:5px var(--sg-filter-cell-px,var(--sg-cell-px,7px));flex-direction:row;align-items:center;gap:4px;display:flex}.sv-grid-filter-row-control>.sv-field{flex:3 1 0;min-width:0}.sv-grid-filter-operator{box-sizing:border-box;flex:2 1 0;min-width:0}.sv-grid-filter-value{box-sizing:border-box;flex:3 1 0;min-width:0}.sv-grid-filter-value.sv-grid-filter-value-invalid,.sv-grid-tp-filter-input.sv-grid-filter-value-invalid{box-shadow:0 0 0 1px color-mix(in srgb, var(--sg-danger,#dc2626) 45%, transparent);border-color:var(--sg-danger,#dc2626)!important}.sv-grid-filter-chips{box-sizing:border-box;border:1px solid var(--sg-input-border,#8794a8);background:var(--sg-input-bg,#fff);border-radius:4px;flex-wrap:nowrap;flex:3 1 0;align-items:center;gap:3px;min-width:0;padding:2px 4px;display:flex;overflow:hidden}.sv-grid-filter-chip .sv-grid-filter-chip-label{max-width:84px}.sv-grid-filter-chip-more{cursor:pointer;font:inherit;color:var(--sg-text,inherit);border:0;flex:none;font-size:11px;line-height:16px}.sv-grid-filter-chip-more:hover{background:color-mix(in srgb, var(--sg-accent,#0b63f3) 26%, transparent)}.sv-grid-filter-chips:focus-within{border-color:var(--sg-accent,#0b63f3);box-shadow:0 0 0 1px color-mix(in srgb, var(--sg-accent,#0b63f3) 45%, transparent)}.sv-grid-filter-chip{background:color-mix(in srgb, var(--sg-accent,#0b63f3) 16%, transparent);max-width:120px;color:var(--sg-text,inherit);border-radius:3px;align-items:center;gap:2px;padding:0 2px 0 6px;font-size:11px;line-height:16px;display:inline-flex}.sv-grid-filter-chip-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sv-grid-filter-chip-x{width:14px;height:14px;color:inherit;cursor:pointer;opacity:.7;background:0 0;border:0;border-radius:3px;flex:none;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1;display:inline-flex}.sv-grid-filter-chip-x:hover{opacity:1;background:color-mix(in srgb, var(--sg-accent,#0b63f3) 28%, transparent)}.sv-grid-filter-chips .sv-grid-filter-chip-input{background:0 0;outline:none;flex:14px;min-width:14px;padding:0 2px;box-shadow:none!important;border:0!important}.sv-grid-filter-value.sv-grid-filter-value-pulse{animation:.7s ease-out sv-grid-filter-pulse}@keyframes sv-grid-filter-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--sg-accent,#0b63f3) 55%, transparent)}70%{box-shadow:0 0 0 6px color-mix(in srgb, var(--sg-accent,#0b63f3) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--sg-accent,#0b63f3) 0%, transparent)}}.sv-grid-checkbox{border:1px solid var(--sg-input-border,#8794a8);background:var(--sg-input-bg,#fff);width:16px;height:16px;color:var(--sg-accent,#0b63f3);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;margin:0 auto;padding:0;transition:border-color .12s,background-color .12s;display:inline-flex;position:relative}.sv-grid-fr-editor{box-sizing:border-box;width:100%}select.sv-grid-fr-editor{height:100%;min-height:26px}.sv-grid-fr-checkbox{width:16px;height:16px;accent-color:var(--sg-accent,#3b82f6);cursor:pointer}.sv-grid-cell-editor-color{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:2px}.sv-grid-cell-editor-color::-webkit-color-swatch-wrapper{padding:0}.sv-grid-cell-editor-color::-webkit-color-swatch{border:0;border-radius:4px}.sv-grid-cell-editor-color::-moz-color-swatch{border:0;border-radius:4px}.sv-grid-rating-editor{align-items:center;gap:1px;height:100%;display:inline-flex}.sv-grid-rating-star{cursor:pointer;color:var(--sg-rating-empty,#cbd5e1);background:0 0;border:0;padding:0 1px;font-size:18px;line-height:1;transition:color 80ms,transform 80ms}.sv-grid-rating-star-on{color:var(--sg-rating-on,#f59e0b)}.sv-grid-rating-star:hover{color:var(--sg-rating-hover,#fbbf24);transform:scale(1.12)}.sv-grid-rating-clear{color:var(--sg-muted,#94a3b8);cursor:pointer;background:0 0;border:0;margin-left:4px;font-size:14px}.sv-grid-rating-clear:hover{color:var(--sg-fg,#0f172a)}.sv-grid-checkbox[aria-checked=true],.sv-grid-checkbox[aria-checked=mixed]{border-color:var(--sg-accent,#2563eb);background:var(--sg-accent,#2563eb);color:var(--sg-on-accent,#fff)}.sv-grid-checkbox[aria-checked=true]:after{content:\"\";border-bottom:2px solid;border-right:2px solid;flex:none;width:5px;height:9px;transform:rotate(40deg)translate(-1px,-1px)}.sv-grid-checkbox[aria-checked=mixed]:after{content:\"\";background:currentColor;border-radius:1px;flex:none;width:8px;height:2px}.sv-grid-checkbox:focus-visible{outline:2px solid var(--sg-accent,#0b63f3);outline-offset:1px}.sv-grid-checkbox-readonly{cursor:default;pointer-events:none}@keyframes sv-grid-cell-flash-kf{0%{background-color:var(--sg-cell-flash,color-mix(in oklab, var(--sg-accent,#3b82f6) 42%, transparent))}to{background-color:#0000}}.sv-grid-cell-flash{animation:.7s ease-out sv-grid-cell-flash-kf}@media (prefers-reduced-motion:reduce){.sv-grid-cell-flash{animation:none}}.sv-grid-cell-active,.sv-grid-cell-editing{z-index:20;box-shadow:inset 0 0 0 2px var(--sg-accent,#0b63f3);outline:none;position:relative;overflow:visible}.sv-grid-cell.sv-grid-cell-editing:after{content:\"\";border:2px solid var(--sg-accent,#0b63f3);pointer-events:none;position:absolute;inset:-1px}.sv-grid-cell.sv-grid-cell-editing{box-shadow:none}.sv-grid-cell.sv-grid-cell-editing .sv-grid-cell-editor:focus,.sv-grid-cell.sv-grid-cell-editing .sv-grid-dropdown-trigger:focus,.sv-grid-cell.sv-grid-cell-editing .sv-dtp__field:focus-within,.sv-grid-cell.sv-grid-cell-editing .sv-grid-checkbox:focus-visible{box-shadow:none;outline:none}.sv-grid-cell-note-corner{background:linear-gradient(45deg, transparent 50%, var(--sg-note-corner,#f59e0b) 50%);cursor:help;z-index:6;width:12px;height:12px;position:absolute;top:0;right:0}.sv-grid-cell-note-corner:before{content:\"\";position:absolute;inset:-3px -3px 0 0}.sv-grid-fill-handle{background:var(--sg-accent,#0b63f3);border:1px solid var(--sg-bg,#fff);box-sizing:border-box;cursor:crosshair;z-index:15;touch-action:none;width:9px;height:9px;position:absolute;bottom:0;right:0}.sv-grid-fill-handle:hover{transform-origin:100% 100%;transform:scale(1.3)}.sv-grid-selection-bar-upsell{z-index:45;max-width:calc(100% - 24px);position:absolute;left:50%;transform:translate(-50%)}.sv-grid-selection-bar-upsell[data-position=bottom]{bottom:16px}.sv-grid-selection-bar-upsell[data-position=top]{top:16px}.sv-grid-root[data-move-grab=true],.sv-grid-root[data-move-grab=true] .sv-grid-cell{cursor:move!important}.sv-grid-root[data-move-grab=true] .sv-grid-fill-handle{cursor:crosshair!important}.sv-grid-cell[data-fill-top=true],.sv-grid-cell[data-fill-bottom=true],.sv-grid-cell[data-fill-left=true],.sv-grid-cell[data-fill-right=true]{--sv-fill-top:none;--sv-fill-bottom:none;--sv-fill-left:none;--sv-fill-right:none;--sv-fill-color:var(--sg-fill-marquee,var(--sg-accent,#2563eb))}.sv-grid-cell[data-fill-top=true]{--sv-fill-top:repeating-linear-gradient(to right, var(--sv-fill-color) 0 3px, transparent 3px 6px)}.sv-grid-cell[data-fill-bottom=true]{--sv-fill-bottom:repeating-linear-gradient(to right, var(--sv-fill-color) 0 3px, transparent 3px 6px)}.sv-grid-cell[data-fill-left=true]{--sv-fill-left:repeating-linear-gradient(to bottom, var(--sv-fill-color) 0 3px, transparent 3px 6px)}.sv-grid-cell[data-fill-right=true]{--sv-fill-right:repeating-linear-gradient(to bottom, var(--sv-fill-color) 0 3px, transparent 3px 6px)}.sv-grid-table .sv-grid-cell[data-fill-top=true],.sv-grid-table .sv-grid-cell[data-fill-bottom=true],.sv-grid-table .sv-grid-cell[data-fill-left=true],.sv-grid-table .sv-grid-cell[data-fill-right=true]{background-image:var(--sv-fill-top), var(--sv-fill-bottom), var(--sv-fill-left), var(--sv-fill-right);background-position:0 0,0 100%,0 0,100% 0;background-repeat:no-repeat;background-size:100% 2px,100% 2px,2px 100%,2px 100%}.sv-grid-cell-editing{padding:0}.sv-grid-column.sv-grid-column-collapsed,.sv-grid-cell.sv-grid-cell-collapsed{visibility:hidden;border-left-width:0;border-right-width:0;padding:0;overflow:hidden}.sv-grid-row.sv-grid-row-collapsed{display:none}.sv-grid-cell[data-selected-range=true]{background:var(--sg-selection-bg,#eef4ff);--sv-range-top:0 0 0 transparent;--sv-range-bottom:0 0 0 transparent;--sv-range-left:0 0 0 transparent;--sv-range-right:0 0 0 transparent;box-shadow:var(--sv-range-top), var(--sv-range-bottom), var(--sv-range-left), var(--sv-range-right)}.sv-grid-cell[data-range-top=true]{--sv-range-top:inset 0 2px 0 var(--sg-accent,#0b63f3)}.sv-grid-cell[data-range-bottom=true]{--sv-range-bottom:inset 0 -2px 0 var(--sg-accent,#0b63f3)}.sv-grid-cell[data-range-left=true]{--sv-range-left:inset 2px 0 0 var(--sg-accent,#0b63f3)}.sv-grid-cell[data-range-right=true]{--sv-range-right:inset -2px 0 0 var(--sg-accent,#0b63f3)}.sv-grid-cell[data-range-top=true],.sv-grid-cell[data-range-bottom=true],.sv-grid-cell[data-range-left=true],.sv-grid-cell[data-range-right=true],.sv-grid-cell.sv-merge-edge-right,.sv-grid-cell.sv-merge-edge-bottom{z-index:3;position:relative}.sv-grid-cell.sv-merge-edge-right{box-shadow:inset -2px 0 0 var(--sg-accent,#0b63f3)}.sv-grid-cell.sv-merge-edge-bottom{box-shadow:inset 0 -2px 0 var(--sg-accent,#0b63f3)}.sv-grid-cell.sv-merge-in-range{background:var(--sg-selection-bg,#eef4ff)}.sv-grid-cell-editor{background:var(--sg-input-bg,#fff);box-sizing:border-box;width:100%;height:100%;font:inherit;color:inherit;border:0;outline:none;padding:0 8px;position:absolute;inset:0}.sv-grid-row.sv-grid-row-frozen{z-index:31;background:var(--sg-bg,#fff);position:sticky}.sv-grid-row.sv-grid-row-frozen>.sv-grid-cell{background:var(--sg-bg,#fff)}.sv-grid-row.sv-grid-row-frozen-last>.sv-grid-cell{border-bottom:1px solid var(--sg-frozen-edge,var(--sg-border,#94a3b8))}.sv-grid-cell-editor-multiline{resize:none;white-space:pre-wrap;height:auto;min-height:100%;line-height:inherit;overflow:hidden}.sv-grid-column-filter,.sv-grid-filter-value,.sv-grid-global-filter input,.sv-grid-menu-search,.sv-grid-menu-condition-value{background:var(--sg-input-bg,#fff);color:var(--sg-fg,#0f172a);border:1px solid var(--sg-input-border,#cbd5e1);box-sizing:border-box;font:inherit;border-radius:5px;padding:0 8px}.sv-grid-column-filter{width:100%;height:28px;font-size:.8125rem}.sv-grid-global-filter{color:var(--sg-muted,#64748b);align-items:center;gap:8px;margin-bottom:8px;font-size:.8125rem;font-weight:550;display:inline-flex}.sv-grid-global-filter input{min-width:220px;height:30px;font-size:.8125rem}.sv-grid-column-filter::placeholder,.sv-grid-filter-value::placeholder,.sv-grid-menu-search::placeholder,.sv-grid-global-filter input::placeholder,.sv-grid-cell-editor::placeholder{color:var(--sg-muted,#64748b);opacity:.7}.sv-grid-global-filter input:focus,.sv-grid-filter-value:focus,.sv-grid-column-filter:focus,.sv-grid-menu-search:focus,.sv-grid-menu-condition-value:focus,.sv-grid-menu-operator:focus,.sv-grid-cell-editor:focus{border-color:var(--sg-accent,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb, var(--sg-accent,#2563eb) 30%, transparent);outline:none}.sv-grid-cell-editor-number,.sv-grid-cell-editor-date,.sv-grid-cell-editor-datetime{width:100%;height:100%}.sv-grid-cell.sv-grid-cell-editing .sv-dtp{width:auto;display:block;position:absolute;inset:0}.sv-grid-cell.sv-grid-cell-editing .sv-dtp__field{height:100%;box-shadow:none;border:0;border-radius:0;padding-inline:0}.sv-grid-cell.sv-grid-cell-editing .sv-dtp__input{font:inherit}.sv-grid-cell.sv-grid-cell-editing .sv-dtp__clear,.sv-grid-cell.sv-grid-cell-editing .sv-dtp__toggle,.sv-grid-filter-row-control>.sv-field .sv-dtp__toggle{width:20px;height:20px}.sv-grid-filter-row-control>.sv-field .sv-dtp__toggle{flex:0 auto;min-width:0}.sv-grid-filter-row-control>.sv-field .sv-dtp__clear{display:none}.sv-grid-filter-row-control>.sv-field .sv-dri__field{gap:3px;padding-inline:4px 2px}.sv-grid-filter-row-control>.sv-field .sv-dri__clear{flex:0 auto;width:20px;min-width:0;height:20px}.sv-grid-cell-editor-list{appearance:auto;width:100%;height:100%;font:inherit;color:inherit;background:var(--sg-input-bg,#fff);box-sizing:border-box;border:0;padding:0 6px}.sv-grid-cell-editor-list[multiple]{z-index:5;border:1px solid var(--sg-accent,#0b63f3);background:var(--sg-input-bg,#fff);height:auto;min-height:100%;max-height:220px;padding:4px;position:absolute;top:0;left:0;right:0;box-shadow:0 8px 24px #0f172a2e}.sv-grid-cell-editor-chips{background:var(--sg-header-bg,var(--sg-bg,#fff));min-height:calc(100% + 2px);color:var(--sg-fg,#0f172a);box-sizing:border-box;z-index:1000;border:1px solid var(--sg-accent,#2563eb);border-radius:var(--sg-radius,6px);align-items:flex-start;padding:4px 6px;display:flex;position:absolute;top:-1px;left:-1px;right:-1px;overflow:visible;box-shadow:0 12px 28px #00000073}.sv-grid-cell-editing:has(.sv-grid-cell-editor-chips){outline:none}.sv-grid-chips-row{flex-wrap:wrap;align-items:center;gap:4px;width:100%;display:flex}.sv-grid-chip-input{min-width:60px;font:inherit;color:inherit;background:0 0;border:0;outline:none;flex:80px;padding:2px 4px}.sv-grid-chip-picker{min-width:80px;font:inherit;color:inherit;background:var(--sg-bg,#fff);border:1px solid #0f172a26;border-radius:4px;flex:100px;padding:2px 4px}.sv-grid-chip-commit{text-transform:uppercase;letter-spacing:.04em;color:#fff;background:var(--sg-accent,#0b63f3);cursor:pointer;border:0;border-radius:4px;padding:3px 8px;font-size:11px}.sv-grid-chip-commit:hover{filter:brightness(1.1)}.sv-grid-chips-display{vertical-align:middle;flex-wrap:nowrap;align-items:center;gap:4px;max-width:100%;display:inline-flex}.sv-grid-sparkline{vertical-align:middle;display:inline-block;overflow:visible}.sv-grid-cf-bg{z-index:0;pointer-events:none;position:absolute;inset:0}.sv-grid-cf-bar{z-index:0;opacity:.85;pointer-events:none;border-radius:0 2px 2px 0;position:absolute;top:0;bottom:0;left:0}.sv-grid-cell-cf{position:relative}.sv-grid-cell-invalid{box-shadow:inset 0 0 0 1px var(--sg-invalid-border,#ef444473);color:var(--sg-invalid-fg,#b91c1c);background-color:var(--sg-invalid-bg,#ef444424)!important}.sv-grid-cell-invalid.sv-grid-cell-active{box-shadow:inset 0 0 0 2px var(--sg-invalid-border,#ef4444b3)}.sv-grid-status-bar{color:var(--sg-fg);background:var(--sg-header-bg,#f1f5f9);border:1px solid var(--sg-border,#e2e8f0);border-top:0;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:18px;padding:6px 14px;font-size:12px;display:flex}.sv-grid-status-item{font-variant-numeric:tabular-nums;font-weight:600}.sv-grid-status-label{color:var(--sg-muted,#64748b);margin-right:5px;font-weight:400}.sv-grid-cf-content{z-index:1;position:relative}.sv-grid-cf-icon{margin-right:5px;font-size:.95em}.sv-grid-chip{background:color-mix(in srgb, var(--sg-accent,#2563eb) 18%, transparent);color:var(--sg-fg,inherit);border:1px solid color-mix(in srgb, var(--sg-accent,#2563eb) 35%, transparent);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.85em;line-height:1.4;display:inline-flex}.sv-grid-chip-removable{padding-right:2px}.sv-grid-chip-remove{background:color-mix(in srgb, var(--sg-fg,#0f172a) 18%, transparent);width:16px;height:16px;color:inherit;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.sv-grid-chip-remove:hover{color:#fff;background:#dc2626b3}.sv-grid-icon{flex:none;width:1em;height:1em;display:block}.sv-grid-icon-custom{justify-content:center;align-items:center;line-height:0;display:inline-flex}.sv-grid-icon-custom>svg,.sv-grid-icon-custom>img{width:100%;height:100%;display:block}.sv-grid-header-cell{width:100%;min-width:0;min-height:var(--sg-header-min-height,auto);align-items:center;gap:2px;display:flex}.sv-grid-header-sort{min-width:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:4px;padding:2px;display:flex}.sv-grid-header-custom{text-align:left;cursor:pointer;outline:none;flex:auto;align-items:center;gap:4px;min-width:0;padding:2px;display:flex}.sv-grid-header-label{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.sv-grid-header-icon{color:var(--sg-muted,#5b6b85);flex:none;font-size:13px;display:inline-flex}.sv-grid-header-icon-hint{opacity:0;transition:opacity .12s}.sv-grid-column:hover .sv-grid-header-icon-hint{opacity:.4}.sv-grid-header-icon-flag{color:var(--sg-accent,#0b63f3)}.sv-grid-col-menu-btn{width:0;height:22px;color:var(--sg-muted,#5b6b85);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;font-size:15px;transition:width .14s,opacity .14s,background-color .12s;display:inline-flex;overflow:hidden}.sv-grid-column:hover .sv-grid-col-menu-btn,.sv-grid-col-menu-btn.is-open,.sv-grid-col-menu-btn:focus-visible,.sv-grid-col-filter-btn.is-active{opacity:1;pointer-events:auto;width:22px}.sv-grid-col-menu-btn:hover,.sv-grid-col-menu-btn.is-open{background:var(--sg-row-hover-bg,#e2e8f3)}.sv-grid-filter-operator-btn{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);height:24px;color:var(--sg-fg,#334155);cursor:pointer;border-radius:4px;flex:none;align-items:center;gap:2px;padding:0 4px;font-size:13px;display:inline-flex}.sv-grid-filter-operator-btn.is-open{border-color:var(--sg-accent,#0b63f3)}.sv-grid-caret{color:var(--sg-muted,#94a3b8);font-size:9px;display:inline-flex}.sv-grid-menu-backdrop{z-index:900;background:0 0;position:fixed;inset:0}.sv-grid-menu{z-index:901;overscroll-behavior:contain;background:var(--sg-bg,#fff);border:1px solid var(--sg-border,#d6dee9);max-height:calc(100vh - 24px);color:var(--sg-fg,#1f2937);border-radius:8px;padding:4px;font-size:13px;position:fixed;overflow:auto;box-shadow:0 12px 28px #0f172a2e}.sv-grid-column-menu{width:260px}.sv-grid-menu-tabs{border-bottom:1px solid var(--sg-border,#e2e8f0);gap:2px;margin:-2px -2px 4px;padding:2px 2px 0;display:flex}.sv-grid-menu-tab{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:6px;font-size:12px;font-weight:600}.sv-grid-menu-tab:hover{color:var(--sg-fg,#0f172a)}.sv-grid-menu-tab.is-active{color:var(--sg-accent,#2563eb);border-bottom-color:var(--sg-accent,#2563eb)}.sv-grid-operator-menu{width:184px}.sv-grid-context-menu{min-width:180px}.sv-grid-menu-icon{flex:none;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.sv-grid-menu-icon>svg{display:block}.sv-grid-comment-editor{width:240px;padding:8px}.sv-grid-comment-textarea{resize:vertical;border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);width:100%;min-height:60px;color:var(--sg-fg,#0f172a);font:inherit;border-radius:4px;outline:none;padding:6px 8px;font-size:13px}.sv-grid-comment-textarea:focus{border-color:var(--sg-accent,#6366f1)}.sv-grid-comment-actions{align-items:center;gap:6px;margin-top:8px;display:flex}.sv-grid-comment-spacer{flex:auto}.sv-grid-comment-actions button{border:1px solid var(--sg-border,#cbd5e1);background:var(--sg-bg,#fff);color:var(--sg-fg,#1f2937);font:inherit;cursor:pointer;border-radius:4px;padding:4px 10px;font-size:12px}.sv-grid-comment-save{border-color:var(--sg-accent,#6366f1)!important;background:var(--sg-accent,#6366f1)!important;color:#fff!important}.sv-grid-comment-remove{color:var(--sg-danger,#dc2626)!important}.sv-grid-menu-item{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;padding:7px 10px;display:flex}.sv-grid-menu-item:hover{background:var(--sg-row-hover-bg,#eef2f8)}.sv-grid-menu.sv-grid-in-suggest{min-width:140px;max-width:260px;padding:0;font-size:12px;overflow:visible}.sv-grid-menu-item[aria-checked=true]{background:var(--sg-selection-bg,#eaf2ff);color:var(--sg-accent,#0b63f3)}.sv-grid-menu-sep{background:var(--sg-border,#e6ebf2);height:1px;margin:4px 6px}.sv-grid-menu-filter{padding:4px 6px 6px}.sv-grid-menu-filter-head{color:var(--sg-muted,#475569);align-items:center;gap:6px;padding:2px 0 6px;font-weight:600;display:flex}.sv-grid-menu-head-note{color:var(--sg-muted,#64748b);opacity:.85;margin-inline-start:auto;font-size:.85em;font-weight:500}.sv-grid-menu-search{box-sizing:border-box;border:1px solid var(--sg-input-border,#cbd5e1);width:100%;height:28px;font:inherit;border-radius:5px;margin-bottom:6px;padding:0 8px}.sv-grid-menu-filter-row{gap:4px;margin-bottom:6px;display:flex}.sv-grid-menu-operator-group{gap:2px;margin-bottom:6px;display:flex}.sv-grid-menu-operator-btn{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);height:28px;color:var(--sg-fg,#475569);cursor:pointer;border-radius:4px;flex:1 1 0;justify-content:center;align-items:center;padding:0;transition:background-color .1s,color .1s,border-color .1s;display:inline-flex}.sv-grid-menu-operator-btn:hover{background:var(--sg-row-hover-bg,#eef2f8)}.sv-grid-menu-operator-btn.is-active{background:var(--sg-accent,#0b63f3);border-color:var(--sg-accent,#0b63f3);color:#fff}.sv-grid-menu-condition-value{box-sizing:border-box;border:1px solid var(--sg-input-border,#cbd5e1);min-width:0;height:28px;font:inherit;border-radius:5px;flex:1 1 0;padding:0 8px}.sv-grid-menu-add-cond{color:var(--sg-accent,#3b82f6);border:1px dashed var(--sg-border,#cbd5e1);cursor:pointer;background:0 0;border-radius:5px;align-self:flex-start;margin-top:2px;padding:3px 8px;font-size:11.5px;font-weight:600}.sv-grid-menu-add-cond:hover{background:color-mix(in oklab, var(--sg-accent,#3b82f6) 8%, transparent);border-style:solid}.sv-grid-menu-join{align-items:center;gap:2px;margin:2px 0;display:inline-flex}.sv-grid-menu-join button{color:var(--sg-muted,#64748b);border:1px solid var(--sg-border,#cbd5e1);cursor:pointer;background:0 0;padding:2px 10px;font-size:11px;font-weight:700}.sv-grid-menu-join button:first-child{border-radius:5px 0 0 5px}.sv-grid-menu-join button:nth-child(2){border-left:0;border-radius:0}.sv-grid-menu-join button.is-on{background:var(--sg-accent,#3b82f6);color:#fff;border-color:var(--sg-accent,#3b82f6)}.sv-grid-menu-join-x{margin-left:auto;font-size:14px;line-height:1;border-radius:5px!important;padding:2px 7px!important}.sv-grid-menu .sv-listbox{overscroll-behavior:contain}.sv-grid-facet{cursor:pointer;align-items:center;gap:8px;padding:4px 8px;display:flex}.sv-grid-facet:hover{background:var(--sg-row-hover-bg,#f4f6fa)}.sv-grid-facet-all{padding-inline-start:3px;font-weight:600}.sv-grid-facet input{flex:none}.sv-grid-facet-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sv-grid-facet-empty,.sv-grid-facet-note{color:var(--sg-muted,#94a3b8);padding:6px 8px;font-size:12px}.sv-grid-menu-actions{justify-content:flex-end;gap:6px;padding-top:8px;display:flex}.sv-grid-menu-btn{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);color:var(--sg-fg,#334155);font:inherit;cursor:pointer;border-radius:5px;padding:5px 10px}.sv-grid-menu-btn-primary{background:var(--sg-accent,#0b63f3);border-color:var(--sg-accent,#0b63f3);color:#fff}.sv-grid-menu-item:disabled,.sv-grid-menu-btn:disabled{opacity:.4;cursor:default}.sv-grid-menu-item:disabled:hover{background:0 0}.sv-grid-group-row>.sv-grid-cell{background:var(--sg-header-bg,#eef2f8);cursor:pointer;font-weight:600}.sv-grid-row-selected>.sv-grid-cell{background:var(--sg-selection-bg,#eaf2ff)}.sv-grid-group-footer-row>.sv-grid-cell{background:var(--sg-header-bg,#eef2f8);border-top:1px solid var(--sg-border,#d7dce5);font-weight:600}.sv-grid-row-auto-height>.sv-grid-cell{white-space:normal;overflow-wrap:anywhere;text-overflow:clip;vertical-align:top;padding-top:6px;padding-bottom:6px;overflow:visible}.sv-grid-grand-total-row>.sv-grid-cell{border-top:3px double var(--sg-border,#d7dce5);font-weight:700}.sv-grid-tree-indent{flex:none;display:inline-block}.sv-grid-tree-toggle{width:14px;height:14px;color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:3px;flex:none;justify-content:center;align-items:center;margin-right:3px;padding:0;font-size:10px;line-height:1;display:inline-flex}.sv-grid-tree-toggle:hover{background:var(--sg-header-bg,#eef2f8);color:var(--sg-fg,#0f172a)}.sv-grid-tree-toggle>.sv-grid-icon,.sv-grid-group-toggle>.sv-grid-icon{width:12px;height:12px;transition:transform .15s}.sv-grid-tree-toggle[aria-expanded=true]>.sv-grid-icon,.sv-grid-group-toggle[aria-expanded=true]>.sv-grid-icon{transform:rotate(90deg)}.sv-grid-tree-toggle:focus-visible{outline:2px solid var(--sg-accent,#2563eb);outline-offset:1px}.sv-grid-autogroup-label{color:var(--sg-fg,#0f172a);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sv-grid-tree-spacer{flex:none;width:14px;margin-right:3px;display:inline-block}.sv-grid-group-cell{padding:0 12px}.sv-grid-group-content{align-items:center;gap:6px;display:inline-flex}.sv-grid-group-toggle{color:var(--sg-fg,#334155);cursor:pointer;background:0 0;border:0;padding:0 4px 0 0;font-size:11px;line-height:1}.sv-grid-group-count{color:var(--sg-muted,#64748b);margin-left:6px;font-size:12px;font-weight:400}.sv-grid-group-agg{color:var(--sg-fg);white-space:nowrap;margin-left:10px;font-size:12px;font-weight:600}.sv-grid-group-agg-label{color:var(--sg-muted,#64748b);margin-right:4px;font-weight:400}.sv-grid-group-agg-label:after{content:\":\"}.sv-grid-group-child-indent{width:18px;display:inline-block}.sv-grid-tooltip{z-index:10000;color:#f1f5f9;border-radius:var(--sg-radius,6px);pointer-events:none;white-space:pre-wrap;word-wrap:break-word;background:#0f172a;max-width:280px;padding:8px 10px;font-size:12px;line-height:1.45;position:fixed;box-shadow:0 8px 24px #0f172a47}[data-theme=dark] .sv-grid-tooltip{color:#0f172a;background:#f1f5f9}.sv-grid-cell-editor-textarea{border:1px solid var(--sg-accent,#6366f1);background:var(--sg-bg,#fff);width:100%;min-height:80px;color:var(--sg-fg,#0f172a);resize:vertical;box-shadow:0 0 0 2px var(--sg-focus-ring,#6366f166);border-radius:4px;outline:none;padding:6px 8px;font-family:inherit;font-size:13px;line-height:1.4}.sv-grid-autocomplete{width:100%;position:relative}.sv-grid-autocomplete-list{z-index:30;background:var(--sg-bg,#fff);border:1px solid var(--sg-border,#d6dee9);border-radius:var(--sg-radius,6px);max-height:220px;margin-top:2px;padding:4px;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 12px 28px #0f172a2e}.sv-grid-autocomplete-option{text-align:left;width:100%;color:var(--sg-fg,#1f2937);font:inherit;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;border-radius:4px;padding:5px 8px;font-size:13px;display:block;overflow:hidden}.sv-grid-autocomplete-option:hover,.sv-grid-autocomplete-option[aria-selected=true]{background:var(--sg-row-hover-bg,#6366f11a)}.sv-grid-find{z-index:60;background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);border:1px solid var(--sg-border,#cbd5e1);border-radius:8px;align-items:center;gap:4px;min-width:280px;padding:6px 8px;display:inline-flex;position:absolute;top:8px;right:8px;box-shadow:0 10px 25px #0f172a2e}.sv-grid-find>.sv-grid-icon{width:14px;height:14px;color:var(--sg-muted,#94a3b8);flex:none;margin-left:2px}.sv-grid-find-input{min-width:0;color:inherit;background:0 0;border:0;outline:none;flex:1;padding:2px 6px;font-size:13px}.sv-grid-find-input::placeholder{color:var(--sg-muted,#94a3b8)}.sv-grid-find-count{color:var(--sg-muted,#64748b);font-variant-numeric:tabular-nums;white-space:nowrap;padding:0 4px;font-size:11px}.sv-grid-find-step,.sv-grid-find-close{width:22px;height:22px;color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:12px;display:inline-flex}.sv-grid-find-step:hover:not(:disabled),.sv-grid-find-close:hover{background:var(--sg-row-hover-bg,#94a3b81f);color:var(--sg-fg,#0f172a)}.sv-grid-find-step:disabled{opacity:.3;cursor:default}.sv-grid-pagination{border:1px solid var(--sg-border,#e2e8f0);border-radius:0 0 var(--sg-radius,6px) var(--sg-radius,6px);background:var(--sg-header-bg,#f1f5f9);color:var(--sg-fg,#0f172a);border-top:0;justify-content:flex-end;align-items:center;gap:24px;margin-top:0;padding:12px 16px;font-size:13px;display:flex}.sv-grid-pagination-top{border-top:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px) var(--sg-radius,6px) 0 0;border-bottom:0}.sv-grid-pagination-pagesize{color:var(--sg-muted,#64748b);align-items:center;gap:8px;display:inline-flex}.sv-grid-pagination-pagesize-dd{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);border-radius:5px;min-width:62px;height:28px;position:relative}.sv-grid-pagination-pagesize-dd .sv-grid-dropdown{height:100%;color:var(--sg-fg,#0f172a);background:0 0;border-radius:5px;font-size:13px;position:absolute;inset:0}.sv-grid-pagination-pagesize-dd .sv-grid-dropdown-trigger{width:100%;height:100%;min-height:28px;color:var(--sg-fg,#0f172a);font:inherit;text-align:start;cursor:pointer;box-sizing:border-box;background:0 0;border:0;border-radius:5px;outline:none;align-items:center;gap:6px;padding:0 8px;font-size:13px;display:flex}.sv-grid-pagination-pagesize-dd .sv-grid-dropdown-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.sv-grid-pagination-pagesize-dd .sv-grid-dropdown-caret{opacity:.7;flex:none;font-size:10px;line-height:1}.sv-grid-pagination-pagesize-dd:focus-within{border-color:var(--sg-accent,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb, var(--sg-accent,#2563eb) 30%, transparent)}.sv-grid-pagination-range{color:var(--sg-fg,#0f172a)}.sv-grid-pagination-nav{align-items:center;gap:4px;display:inline-flex}.sv-grid-pagination-btn{width:28px;height:28px;color:var(--sg-fg,#0f172a);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;padding:0;font-size:16px;transition:background-color .1s,color .1s;display:inline-flex}.sv-grid-pagination-btn:hover:not(:disabled){background:var(--sg-input-bg,#fff);color:var(--sg-accent,#2563eb)}.sv-grid-pagination-btn:disabled{color:var(--sg-muted,#64748b);opacity:.4;cursor:default}.sv-grid-pagination-label{color:var(--sg-fg,#0f172a);margin:0 8px}.sv-grid-no-scroll .sv-grid-scrollbar-corner,.sv-grid-no-scroll .sv-grid-scrollbar{display:none}.sv-grid-scrollbar-corner,.sv-grid-scrollbar-corner-br{border-bottom-color:var(--sg-border,#e2e8f0)}.sv-grid-menu-operator-select{border:1px solid var(--sg-input-border,#cbd5e1);background:var(--sg-input-bg,#fff);width:100%;height:28px;color:var(--sg-fg,#0f172a);font:inherit;cursor:pointer;appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 12px) 12px,calc(100% - 8px) 12px;background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-radius:5px;margin-bottom:6px;padding:0 22px 0 8px;font-size:13px}.sv-grid-menu-operator-select:focus{border-color:var(--sg-accent,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb, var(--sg-accent,#2563eb) 40%, transparent);outline:none}.sv-grid-menu-operator-btn.is-active{color:var(--sg-on-accent,#fff)}.sv-grid-filter-menu{width:260px}.sv-grid-choose-columns-menu{width:240px}.sv-grid-facet input[type=checkbox]{accent-color:var(--sg-accent,#2563eb);cursor:pointer;width:14px;height:14px}.sv-grid-menu-item-chevron{opacity:.55;margin-left:auto;transform:rotate(-90deg)}.sv-grid-menu-item.is-open .sv-grid-menu-item-chevron{opacity:1}.sv-grid-menu-search{padding-left:28px}.sv-grid-menu-search-wrap{display:block;position:relative}.sv-grid-menu-search-wrap>.sv-grid-icon{width:14px;height:14px;color:var(--sg-muted,#94a3b8);pointer-events:none;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.sv-grid-menu-filter>*+*{margin-top:6px}.sv-grid-col-filter-btn.is-active{color:var(--sg-accent,#2563eb)}.sv-grid-row-number-column,.sv-grid-row-number-cell{border-right-color:var(--sg-header-bg,#f1f5f9)}.sv-grid-group-row>.sv-grid-cell{color:var(--sg-header-fg,#0f172a)}.sv-grid-filter-operator-btn{opacity:.85}.sv-grid-filter-operator-btn:hover{opacity:1;border-color:var(--sg-accent,#2563eb)}.sv-grid-filter-operator-btn.is-open{opacity:1}.sv-grid-board-search>.sv-grid-icon{width:14px;height:14px}.sv-grid-board-search{border:1px solid var(--sg-border,#e4e7ec);border-radius:var(--sg-radius,8px);background:var(--sg-bg,#fff);color:color-mix(in srgb, var(--sg-fg,#101828) 55%, transparent);align-items:center;gap:6px;max-width:280px;margin-bottom:8px;padding:5px 9px;display:flex}.sv-grid-board-search:focus-within{border-color:var(--sg-accent,#3b82f6)}.sv-grid-board-search input{font:inherit;color:var(--sg-fg,#101828);background:0 0;border:0;outline:none;flex:auto;font-size:.82rem}.sv-grid-scheduler-upsell{text-align:left;border:1px dashed var(--sg-border,#e4e7ec);border-radius:var(--sg-radius,8px);background:color-mix(in srgb, var(--sg-fg,#1f2937) 5%, transparent);height:100%;color:color-mix(in srgb, var(--sg-fg,#101828) 70%, transparent);flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;padding:24px;display:flex}.sv-grid-scheduler-upsell strong{font-size:.95rem}.sv-grid-scheduler-upsell p{max-width:42ch;margin:0;font-size:.85rem}.sv-grid-upsell-license{opacity:.85;font-size:.8rem}.sv-grid-upsell-license a{color:inherit;text-underline-offset:2px;text-decoration:underline}.sv-grid-scheduler-upsell code{background:color-mix(in srgb, var(--sg-fg,#101828) 8%, transparent);border-radius:4px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82em}.sv-grid-chart-toggle svg{flex:none}.sv-grid-chart-panel{z-index:900;background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);flex-direction:column;display:flex;position:absolute}.sv-grid-chart-panel.is-bottom{border-top:1px solid var(--sg-border,#e2e8f0);bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0000001f}.sv-grid-chart-panel.is-right{border-left:1px solid var(--sg-border,#e2e8f0);top:0;bottom:0;right:0;box-shadow:-8px 0 24px #0000001f}.sv-grid-chart-panel.is-floating{border:1px solid var(--sg-border,#e2e8f0);border-radius:calc(var(--sg-radius,6px) + 2px);inset:auto;overflow:hidden;box-shadow:0 12px 40px #00000047}.sv-grid-chart-resizer{z-index:1;touch-action:none;background:0 0;position:absolute}.sv-grid-chart-panel.is-bottom>.sv-grid-chart-resizer{cursor:ns-resize;height:7px;top:-3px;left:0;right:0}.sv-grid-chart-panel.is-right>.sv-grid-chart-resizer{cursor:ew-resize;width:7px;top:0;bottom:0;left:-3px}.sv-grid-chart-resizer:hover,.sv-grid-chart-resizer.is-dragging{background:color-mix(in srgb, var(--sg-accent,#2563eb) 30%, transparent)}.sv-grid-chart-float-resizer{cursor:nwse-resize;touch-action:none;background:linear-gradient(135deg, transparent 50%, color-mix(in srgb, var(--sg-muted,#64748b) 55%, transparent) 50%);border-bottom-right-radius:calc(var(--sg-radius,6px) + 2px);width:16px;height:16px;position:absolute;bottom:0;right:0}.sv-grid-chart-panel-head{border-bottom:1px solid var(--sg-border,#e2e8f0);background:var(--sg-header-bg,#f8fafc);flex-direction:column;align-items:stretch;gap:8px;padding:8px 12px 10px;display:flex}.sv-grid-chart-drawer-title{align-items:center;gap:7px;display:flex}.sv-grid-chart-drawer-title.is-drag-handle{cursor:move;-webkit-user-select:none;user-select:none}.sv-grid-chart-title-icon{color:var(--sg-accent,#2563eb);flex:none}.sv-grid-chart-title{letter-spacing:.01em;color:var(--sg-fg,#0f172a);font-size:13px;font-weight:700}.sv-grid-chart-drawer-title .sv-grid-chart-actions{margin-left:auto}.sv-grid-chart-actions{align-items:center;gap:6px;display:inline-flex}.sv-grid-chart-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.sv-grid-chart-controls:empty{display:none}.sv-grid-chart-controls.is-form{flex-direction:column;align-items:stretch;gap:8px}.sv-grid-chart-controls.is-form .sv-grid-chart-ctl,.sv-grid-chart-controls.is-form .sv-grid-chart-toggle{grid-template-columns:110px 1fr;align-items:center;gap:8px;font-size:12px;font-weight:400;display:grid}.sv-grid-chart-controls.is-form .sv-grid-chart-toggle{grid-template-columns:110px auto;justify-content:start}.sv-grid-chart-controls.is-form .sv-grid-chart-toggle>input{order:1;justify-self:start}.sv-grid-chart-controls.is-form .sv-grid-chart-ctl-lbl{font-size:12px;font-weight:400}.sv-grid-chart-controls.is-form .sv-grid-chart-indicators,.sv-grid-chart-controls.is-form .sv-grid-chart-hint{flex-basis:auto}.sv-grid-chart-hint{color:var(--sg-muted,#64748b);flex-basis:100%;margin:2px 0 0;font-size:11.5px;font-weight:400}.sv-grid-chart-ctl{color:var(--sg-muted,#64748b);flex-direction:column;gap:2px;font-size:11px;font-weight:600;display:flex}.sv-grid-chart-ctl select,.sv-grid-chart-ctl .sv-grid-chart-num{font:inherit;color:var(--sg-fg,#0f172a);background:var(--sg-input-bg,var(--sg-bg,#fff));border:1px solid var(--sg-input-border,var(--sg-border,#e2e8f0));border-radius:var(--sg-radius,6px);padding:4px 8px;font-size:12.5px;font-weight:400}.sv-grid-chart-ctl .sv-grid-chart-num{width:64px}.sv-grid-chart-toggle{color:var(--sg-muted,#64748b);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex}.sv-grid-chart-btn{font:inherit;border:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px);background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);cursor:pointer;padding:5px 10px;font-size:12px;font-weight:550}.sv-grid-chart-btn:hover:not(:disabled){border-color:var(--sg-accent,#2563eb);color:var(--sg-accent,#2563eb)}.sv-grid-chart-btn:disabled{opacity:.5;cursor:default}.sv-grid-chart-icon-btn{border-radius:var(--sg-radius,6px);width:24px;height:24px;color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.sv-grid-chart-icon-btn:hover{border-color:var(--sg-border,#e2e8f0);color:var(--sg-accent,#2563eb);background:var(--sg-bg,#fff)}.sv-grid-chart-close{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:18px;line-height:1}.sv-grid-chart-close:hover{color:var(--sg-fg,#0f172a)}.sv-grid-chart-panel-body{flex:1;justify-content:center;align-items:stretch;min-height:0;padding:4px 10px 8px;display:flex;overflow:hidden}.sv-grid-chart-panel-body>.sv-grid-chart{justify-content:center;width:100%}.sv-grid-chart-panes-host{width:100%;height:100%;overflow:auto}.sv-grid-chart-build-btn{align-items:center;gap:4px;display:inline-flex}.sv-grid-chart-link-btn.is-unlinked{color:#b45309;border-color:#b4530966}.sv-grid-chart-indicators{flex-basis:100%}.sv-grid-chart-chips{flex-wrap:wrap;gap:3px;display:flex}.sv-grid-chart-chip{font:inherit;border:1px solid var(--sg-border,#e2e8f0);background:var(--sg-bg,#fff);color:var(--sg-fg,#0f172a);cursor:pointer;border-radius:999px;padding:3px 7px;font-size:11px;line-height:1}.sv-grid-chart-chip.is-on{background:var(--sg-accent,#2563eb);border-color:var(--sg-accent,#2563eb);color:#fff}.sv-grid-chart-empty{color:var(--sg-muted,#64748b);text-align:center;max-width:42ch;margin:0;font-size:13px}.sv-grid-chart-export{display:inline-flex;position:relative}.sv-grid-chart-export-menu{z-index:5;background:var(--sg-bg,#fff);border:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px);flex-direction:column;min-width:150px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #0000002e}.sv-grid-chart-export-menu button{font:inherit;text-align:left;border-radius:calc(var(--sg-radius,6px) - 2px);color:var(--sg-fg,#0f172a);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:6px 10px;font-size:12.5px}.sv-grid-chart-export-menu button:hover:not(:disabled){background:var(--sg-hover-bg,color-mix(in srgb, var(--sg-accent,#2563eb) 10%, transparent))}.sv-grid-chart-export-menu button:disabled{opacity:.45;cursor:default}.sv-grid-chart-saved-menu{gap:4px;min-width:220px}.sv-grid-chart-saved-row{gap:4px;padding:2px;display:flex}.sv-grid-chart-saved-name{min-width:0;font:inherit;color:var(--sg-fg,#0f172a);background:var(--sg-input-bg,var(--sg-bg,#fff));border:1px solid var(--sg-input-border,var(--sg-border,#e2e8f0));border-radius:var(--sg-radius,6px);flex:1;padding:4px 8px;font-size:12.5px}.sv-grid-chart-saved-name:focus{border-color:var(--sg-accent,#2563eb);outline:none}.sv-grid-chart-saved-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sv-grid-chart-saved-item{align-items:center;display:flex}.sv-grid-chart-saved-item .sv-grid-chart-saved-apply{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.sv-grid-chart-saved-item .sv-grid-chart-saved-x{color:var(--sg-muted,#64748b);flex:none;padding:4px 8px}.sv-grid-chart-saved-empty{color:var(--sg-muted,#64748b);margin:0;padding:4px 8px;font-size:12px}.sv-grid-chart-ai-btn{align-items:center;gap:4px;display:inline-flex}.sv-grid-chart-ai-btn.is-active{border-color:var(--sg-accent,#2563eb);color:var(--sg-accent,#2563eb)}.sv-grid-chart-ai{flex-direction:column;gap:4px;display:flex}.sv-grid-chart-ai-row{align-items:center;gap:6px;display:flex}.sv-grid-chart-ai-input{min-width:0;font:inherit;color:var(--sg-fg,#0f172a);background:var(--sg-input-bg,var(--sg-bg,#fff));border:1px solid var(--sg-input-border,var(--sg-border,#e2e8f0));border-radius:var(--sg-radius,6px);flex:1;padding:5px 9px;font-size:12.5px}.sv-grid-chart-ai-input:focus{border-color:var(--sg-accent,#2563eb);outline:none}.sv-grid-chart-ai-msg{color:var(--sg-muted,#64748b);margin:0;font-size:12px}.sv-grid-chart-ai-msg.is-error{color:var(--sg-danger,#dc2626)}.sv-grid-chart-tabs{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.sv-grid-chart-tab{border:1px solid var(--sg-border,#e2e8f0);border-radius:var(--sg-radius,6px);background:var(--sg-bg,#fff);align-items:center;display:inline-flex;overflow:hidden}.sv-grid-chart-tab.is-active{border-color:var(--sg-accent,#2563eb);background:color-mix(in srgb, var(--sg-accent,#2563eb) 10%, transparent)}.sv-grid-chart-tab-label{font:inherit;color:var(--sg-fg,#0f172a);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:140px;padding:3px 8px;font-size:12px;font-weight:600;overflow:hidden}.sv-grid-chart-tab.is-active .sv-grid-chart-tab-label{color:var(--sg-accent,#2563eb)}.sv-grid-chart-tab-x{color:var(--sg-muted,#64748b);cursor:pointer;background:0 0;border:0;padding:0 6px 0 2px;font-size:14px;line-height:1}.sv-grid-chart-tab-x:hover{color:var(--sg-fg,#0f172a)}\n/*$vite$:1*/";document.head.appendChild(s)}catch(e){}})();
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Axis resolution shared by every cartesian family: which mark a series draws, the value domain of an axis, and the scale functions a custom mark uses.
|
|
3
|
+
*/
|
|
4
|
+
import type { ChartAxisConfig, ChartFrame, ChartGeometry, ChartScales, ChartSeries, ChartSpec, ChartType, NiceScale, ResolvedAxes, ResolvedSeries } from './chart-types.js';
|
|
5
|
+
/**
|
|
6
|
+
* @internal Which mark a series draws.
|
|
7
|
+
*
|
|
8
|
+
* A series counts as a candle when it says so OR when it carries `ohlc` data,
|
|
9
|
+
* so a spec typed `'candlestick'` can still hold a plain volume bar series
|
|
10
|
+
* beside the prices. Boxes work the same way. Anything unrecognised falls back
|
|
11
|
+
* to `'bar'`, which is what pie and scatter have always relied on.
|
|
12
|
+
*/
|
|
13
|
+
export declare function kindOf(s: ChartSeries, specType: ChartType): ResolvedSeries['kind'];
|
|
14
|
+
/** @internal Data domain for one axis, honoring stacking of its bar/area series.
|
|
15
|
+
* When `isLog` is true, non-positive values are discarded (log undefined)
|
|
16
|
+
* and the domain is rounded to decade boundaries instead of nice steps. */
|
|
17
|
+
export declare function axisDomain(list: ResolvedSeries[], categories: string[], stacked: boolean, extra?: number[], isLog?: boolean, axis?: ChartAxisConfig): NiceScale;
|
|
18
|
+
/**
|
|
19
|
+
* Turn a laid-out chart's axes into functions, so a caller can draw its own
|
|
20
|
+
* marks in the same coordinates the built-in ones use.
|
|
21
|
+
*
|
|
22
|
+
* This is the custom-series seam. Rather than a registry of mark types, the
|
|
23
|
+
* chart hands over its geometry and its scales and lets the caller render
|
|
24
|
+
* whatever SVG it likes into the plot - which is the Svelte-shaped answer, and
|
|
25
|
+
* means a custom mark is ordinary markup rather than a plugin.
|
|
26
|
+
*
|
|
27
|
+
* Deriving the scale from `geo.axes` matters: the domain a chart drew against
|
|
28
|
+
* is the NICE-ROUNDED one, stretched to include zero for bar charts and any
|
|
29
|
+
* reference lines. Recomputing it from the data outside would land custom marks
|
|
30
|
+
* a few pixels off the built-in ones, in a way that looks like a rendering bug.
|
|
31
|
+
*
|
|
32
|
+
* Returns `null` for a chart with no cartesian axes (pie, gauge, treemap,
|
|
33
|
+
* sankey, calendar, radar, funnel), where plot coordinates mean nothing.
|
|
34
|
+
*/
|
|
35
|
+
export declare function chartScales(geo: ChartGeometry): ChartScales | null;
|
|
36
|
+
/**
|
|
37
|
+
* @internal Fold the flat spec shortcuts (`xType`, `yScale`, `xAxisTitle`, ...)
|
|
38
|
+
* into three axis objects with every default filled in, so a layout reads one
|
|
39
|
+
* shape and never has to know which spelling the caller used.
|
|
40
|
+
*/
|
|
41
|
+
export declare function resolveAxes(spec: ChartSpec): ResolvedAxes;
|
|
42
|
+
/**
|
|
43
|
+
* @internal Place the title, subtitle and caption and measure the room they
|
|
44
|
+
* take. The title and subtitle sit centred above the plot; the caption sits
|
|
45
|
+
* left-aligned under it. A family adds `top` to its top pad and `bottom` to its
|
|
46
|
+
* bottom pad, and the text positions are already absolute.
|
|
47
|
+
*/
|
|
48
|
+
export declare function chartFrame(spec: ChartSpec, width: number, height: number): ChartFrame;
|
|
49
|
+
/**
|
|
50
|
+
* @internal Format one value-axis tick through the axis' own `formatter` or
|
|
51
|
+
* `format`, falling back to the spec's `valueFormat`.
|
|
52
|
+
*/
|
|
53
|
+
export declare function axisTickLabel(value: number, index: number, axis: ChartAxisConfig, spec: ChartSpec, fmt: (n: number, format: ChartSpec['valueFormat'], spec: ChartSpec) => string): string;
|