/** * Photon Grid base styles — sparkline section. * * Auto-split from base-styles.ts. Concatenated back (in order) by * base-styles.ts; edit here, not there. Order is preserved because CSS * cascade depends on it. */ export declare const sparklineCss = "/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Context menu submenu \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-context-menu__item { display: flex; align-items: center; gap: 8px; }\n.pg-context-menu__item--has-sub { position: relative; padding-right: 28px; max-width: stretch; }\n.pg-context-menu__item--has-sub > .pg-context-menu__sub { display: none; }\n.pg-context-menu__item--has-sub:hover > .pg-context-menu__sub { display: block; }\n.pg-context-menu__sub {\n position: absolute; left: 100%; top: -4px; z-index: 10001;\n background: var(--pg-colors-surface,#fff);\n border: 1px solid var(--pg-colors-border,#e2e8f0);\n border-radius: var(--pg-borders-radius-md,6px);\n box-shadow: var(--pg-shadows-dropdown,0 8px 24px rgba(0,0,0,0.12));\n min-width: 175px; padding: 4px;\n white-space: nowrap;\n}\n/* Viewport-aware flip: when a submenu near the right edge would overflow,\n JS (positionSubmenu) adds --sub-left so the flyout opens to the left\n instead. Works at any nesting depth since every wrapper shares the class. */\n.pg-context-menu__item--has-sub.pg-context-menu__item--sub-left > .pg-context-menu__sub {\n left: auto; right: 100%;\n}\n.pg-context-menu__item--has-sub::after {\n content: '\u203A'; position: absolute; right: 10px; top: 50%; transform: translateY(-50%);\n font-size: 16px; color: var(--pg-colors-text-secondary,#64748b); line-height: 1;\n}\n.pg-context-menu__icon {\n display: inline-flex; align-items: center; width: 16px; flex-shrink: 0;\n color: var(--pg-colors-text-secondary,#64748b);\n}\n/* Built-in and custom entries are grouped in their own wrappers so either block\n can be hidden or reordered without rebuilding the other. The wrappers are\n layout-neutral \u2014 items must keep behaving as direct children of the menu. */\n.pg-context-menu__group { display: contents; }\n/* A disabled entry stays visible (so the action remains discoverable) but is\n inert: muted, no hover feedback, no pointer affordance. */\n.pg-context-menu__item--disabled {\n opacity: 0.45;\n cursor: default;\n pointer-events: none;\n}\n\n/* \u2500\u2500 Checkbox / radio entries \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n The state indicator is a trailing slot so it aligns with the keyboard hints\n of neighbouring items instead of shifting their label text. */\n.pg-context-menu__mark {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 14px;\n height: 14px;\n margin-left: auto;\n flex-shrink: 0;\n color: var(--pg-colors-primary, #2563eb);\n}\n.pg-context-menu__mark--radio {\n border: 1px solid var(--pg-colors-border, #cbd5e1);\n border-radius: var(--pg-borders-radius-pill, 9999px);\n}\n.pg-context-menu__item--checked > .pg-context-menu__mark--radio {\n border-color: var(--pg-colors-primary, #2563eb);\n}\n.pg-context-menu__item--checked > .pg-context-menu__mark--radio::after {\n content: '';\n width: 7px;\n height: 7px;\n border-radius: var(--pg-borders-radius-pill, 9999px);\n background: var(--pg-colors-primary, #2563eb);\n}\n/* A toggle keeps its trailing slot even when unchecked, so rows of options do\n not shift horizontally as the user toggles them. */\n.pg-context-menu__item--toggle > .pg-context-menu__kbd { margin-left: 8px; }\n\n/* \u2500\u2500 Busy state for async actions \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n The spinner replaces the leading icon rather than adding a slot, so the item\n keeps its exact width and the menu never reflows mid-action. */\n.pg-context-menu__item--loading { pointer-events: none; }\n/* Anchor for the spinner below. */\n.pg-context-menu__item--loading > .pg-context-menu__icon { position: relative; }\n/* The action's own icon is hidden for the duration \u2014 whatever the icon\n renderer produced (an , a wrapper, a custom element) goes with it. */\n.pg-context-menu__item--loading > .pg-context-menu__icon > * { display: none; }\n/* Absolutely positioned, so the fixed-width icon slot's flex layout cannot\n compress it: a flex-item spinner gets squashed horizontally and renders as a\n pill instead of a circle. Centred with margins rather than a translate,\n because the keyframe animates transform and would overwrite it. */\n.pg-context-menu__item--loading > .pg-context-menu__icon::after {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n width: 12px;\n height: 12px;\n margin: -6px 0 0 -6px;\n box-sizing: border-box;\n border: 2px solid var(--pg-colors-border, #cbd5e1);\n border-top-color: var(--pg-colors-primary, #2563eb);\n /* 50% of a square box is exactly a circle, and cannot be skewed by a theme\n overriding the pill token. */\n border-radius: 50%;\n animation: pg-context-menu-spin 640ms linear infinite;\n}\n@keyframes pg-context-menu-spin { to { transform: rotate(360deg); } }\n@media (prefers-reduced-motion: reduce) {\n .pg-context-menu__item--loading > .pg-context-menu__icon::after { animation-duration: 2s; }\n}\n\n/* \u2500\u2500 Confirmation dialog \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.pg-confirm-backdrop {\n position: fixed;\n inset: 0;\n z-index: 1000000;\n display: flex;\n align-items: center;\n justify-content: center;\n background: var(--pg-colors-overlay, rgba(15, 23, 42, 0.45));\n}\n.pg-confirm {\n width: min(420px, calc(100vw - 32px));\n padding: 20px;\n background: var(--pg-colors-surface, #fff);\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-lg, 10px);\n box-shadow: var(--pg-shadows-dialog, var(--pg-shadows-dropdown, 0 16px 48px rgba(0,0,0,0.2)));\n font-family: var(--pg-typography-font-family, system-ui, sans-serif);\n color: var(--pg-colors-text-primary, #0f172a);\n}\n.pg-confirm__title {\n font-size: var(--pg-typography-font-size-lg, 15px);\n font-weight: var(--pg-typography-font-weight-semi-bold, 600);\n margin-bottom: 6px;\n}\n.pg-confirm__message {\n font-size: var(--pg-typography-font-size-md, 13px);\n line-height: var(--pg-typography-line-height-base, 1.5);\n color: var(--pg-colors-text-secondary, #475569);\n}\n.pg-confirm__actions {\n display: flex;\n justify-content: flex-end;\n gap: 8px;\n margin-top: 18px;\n}\n.pg-confirm__btn {\n padding: 7px 14px;\n border-radius: var(--pg-borders-radius-md, 6px);\n border: 1px solid var(--pg-colors-border, #cbd5e1);\n background: var(--pg-colors-surface, #fff);\n color: var(--pg-colors-text-primary, #0f172a);\n font-family: inherit;\n font-size: var(--pg-typography-font-size-md, 13px);\n font-weight: var(--pg-typography-font-weight-medium, 500);\n cursor: pointer;\n}\n.pg-confirm__btn:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px var(--pg-colors-primary, #2563eb);\n}\n.pg-confirm__btn--confirm {\n border-color: transparent;\n background: var(--pg-colors-primary, #2563eb);\n color: var(--pg-colors-primary-contrast, #fff);\n}\n.pg-confirm__btn--danger {\n background: var(--pg-colors-error, #dc2626);\n}\n\n/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Sparkline cell \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n/* Cell value wrapper \u2014 fills the inner cell area as a flex row */\n.pg-cell__value--sparkline {\n display: flex;\n align-items: stretch;\n width: 100%;\n height: 100%;\n padding: 0;\n}\n\n/* Wrapper div that stretches canvas to fill the cell */\n.pg-sparkline-wrapper {\n display: flex;\n align-items: center;\n width: 100%;\n height: 100%;\n min-width: 0;\n}\n\n/* Canvas element \u2014 fills wrapper, no border or background */\n.pg-sparkline {\n display: block;\n width: 100%;\n height: 100%;\n min-width: 0;\n cursor: crosshair;\n}\n\n/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Sparkline tooltip \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n/* Singleton floating tooltip attached to document.body */\n.pg-sparkline-tooltip {\n position: fixed;\n z-index: 99999;\n pointer-events: none;\n background: var(--pg-colors-surface, #fff);\n border: 1px solid var(--pg-colors-border, #e2e8f0);\n border-radius: var(--pg-borders-radius-md, 6px);\n box-shadow: var(--pg-shadows-tooltip, 0 4px 14px rgba(0,0,0,0.12));\n padding: 6px 10px;\n font-size: var(--pg-typography-font-size-sm, 12px);\n font-family: var(--pg-typography-font-family, system-ui, sans-serif);\n color: var(--pg-colors-text-primary, #0f172a);\n white-space: nowrap;\n line-height: 1.5;\n min-width: 60px;\n}\n.pg-sparkline-tooltip--hidden {\n display: none;\n}\n\n/* x-axis label row (shown when data is an object array with xKey) */\n.pg-sparkline-tooltip__label {\n color: var(--pg-colors-text-secondary, #64748b);\n font-size: var(--pg-typography-font-size-xs, 11px);\n margin-bottom: 2px;\n}\n\n/* Numeric value row */\n.pg-sparkline-tooltip__value {\n font-weight: 600;\n color: var(--pg-colors-text-primary, #0f172a);\n}\n\n/* OHLC four-row layout */\n.pg-sparkline-tooltip__ohlc-row {\n display: flex;\n justify-content: space-between;\n gap: 12px;\n}\n.pg-sparkline-tooltip__ohlc-key {\n color: var(--pg-colors-text-secondary, #64748b);\n font-size: var(--pg-typography-font-size-xs, 11px);\n min-width: 12px;\n}\n\n"; //# sourceMappingURL=sparkline.css.d.ts.map