@public-ui/hydrate 4.5.0-rc.6 → 4.5.0-rc.7
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/dist/index.js +82 -66
- package/dist/index.mjs +82 -66
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -146,7 +146,7 @@ function _mergeNamespaces(n, m) {
|
|
|
146
146
|
|
|
147
147
|
const NAMESPACE = 'kolibri';
|
|
148
148
|
const BUILD = /* kolibri */ { hydratedSelectorName: "hydrated", slotRelocation: true, state: true, updatable: true};
|
|
149
|
-
const Env = /* kolibri */ {"kolibriVersion":"4.5.0-rc.
|
|
149
|
+
const Env = /* kolibri */ {"kolibriVersion":"4.5.0-rc.7"};
|
|
150
150
|
|
|
151
151
|
function getDefaultExportFromCjs (x) {
|
|
152
152
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
@@ -3818,18 +3818,9 @@ const calcColorContrast = (baseColor, contrastColor, ratio, dir = 1) => {
|
|
|
3818
3818
|
return calcColorContrast(baseColor, color, ratio, dir);
|
|
3819
3819
|
}
|
|
3820
3820
|
};
|
|
3821
|
-
const cache = new Map();
|
|
3822
|
-
const getColorContrast = (baseColor, contrastColor, ratio, dir = 1) => {
|
|
3823
|
-
if (cache.has(baseColor)) {
|
|
3824
|
-
return cache.get(baseColor);
|
|
3825
|
-
}
|
|
3826
|
-
const color = calcColorContrast(baseColor, contrastColor, ratio, dir);
|
|
3827
|
-
cache.set(baseColor, color);
|
|
3828
|
-
return color;
|
|
3829
|
-
};
|
|
3830
3821
|
const chooseColorContrast = (baseColor, contrastColor, ratio) => {
|
|
3831
3822
|
const dir = getContrastYIQ(baseColor[0], baseColor[1], baseColor[2]);
|
|
3832
|
-
const suggested =
|
|
3823
|
+
const suggested = calcColorContrast(baseColor, contrastColor, ratio, dir);
|
|
3833
3824
|
if (suggested.contrast >= ratio) {
|
|
3834
3825
|
return suggested;
|
|
3835
3826
|
}
|
|
@@ -18426,7 +18417,7 @@ const createRelatedUniqueId = (baseId, suffix) => {
|
|
|
18426
18417
|
return isNonce ? `${baseId.slice(0, separatorIndex)}-${suffix}-${lastSegment}` : `${baseId}-${suffix}`;
|
|
18427
18418
|
};
|
|
18428
18419
|
|
|
18429
|
-
const defaultStyleCss$N = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n/* For animation technique see https://css-tricks.com/css-grid-can-do-auto-height-transitions/ */\n/*\n * Base styles for a collapsible built on `<details>`/`<summary>`: `kol-accordion` and `kol-details`\n * render the same DOM under their own block, so each includes this mixin with its block name.\n *\n * The transition duration comes from the theme's `collapsibleTransitionMs` feature flag, which the\n * component writes to `--collapsible-transition-duration` on `<details>`.\n */\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-accordion {\n /* `<summary>` is the toggle control and carries the box of the button it stands in for. */\n }\n .kol-accordion__heading {\n display: flex;\n min-height: var(--a11y-min-size);\n /* The `not-allowed` reset for disabled controls lives in `kol-global`, which loses to\n `kol-component` whatever the specificity (see `_layer-order.scss`). The pointer has to\n exclude the disabled summary itself, or it wins and a dead control looks clickable. */\n }\n .kol-accordion__heading:not([aria-disabled=true]) {\n cursor: pointer;\n }\n .kol-accordion__heading {\n /* Baseline box for the flex container; without it the surrounding inline flow shifts by 1px. */\n }\n .kol-accordion__heading::before {\n content: \"\";\n }\n .kol-accordion__heading {\n /* The heading fills the row; the label span is the flex container inside it. */\n }\n .kol-accordion__heading > .kol-headline {\n display: flex;\n flex: 1;\n margin: 0;\n text-align: left;\n /* Form controls do not inherit font-weight (see `a11y.scss`); themes weight the label further in. */\n font-weight: 400;\n }\n .kol-accordion__heading > .kol-headline > .kol-span {\n flex: 1 0 100%;\n /* `.kol-span` centres its column (`_global.scss`); the summary label is start-aligned. */\n align-items: flex-start;\n }\n @media (prefers-reduced-motion) {\n .kol-accordion__wrapper-animation, .kol-accordion__wrapper {\n transition: none !important;\n }\n }\n .kol-accordion {\n /* @see https://github.com/public-ui/kolibri/issues/5952 */\n }\n @media print {\n .kol-accordion:not(.kol-accordion--open) .kol-accordion__wrapper-animation {\n display: none;\n }\n }\n .kol-accordion__wrapper {\n /* Forces the element into its own GPU compositing layer (via 3D transform). Helps prevent rendering/layout bugs (e.g. #7511) and may improve animation performance. */\n transform: translateZ(0);\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--collapsible-transition-duration, 0.3s);\n }\n .kol-accordion__wrapper-animation {\n opacity: 0;\n transform: scaleY(0);\n transform-origin: top;\n min-height: 0;\n /* This property is important to keep in sync with the visual transition (template-rows). Without it interactive elements within the accordion would stay focusable. */\n visibility: hidden;\n transition: transform var(--collapsible-transition-duration, 0.3s), opacity var(--collapsible-transition-duration, 0.3s), visibility var(--collapsible-transition-duration, 0.3s);\n }\n .kol-accordion--open .kol-accordion__wrapper {\n grid-template-rows: 1fr;\n }\n .kol-accordion--open .kol-accordion__wrapper-animation {\n opacity: 1;\n transform: scaleY(1);\n visibility: visible;\n }\n .kol-accordion--open:focus-within {\n position: relative;\n z-index: 100;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n}";
|
|
18420
|
+
const defaultStyleCss$N = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n/* For animation technique see https://css-tricks.com/css-grid-can-do-auto-height-transitions/ */\n/*\n * Base styles for a collapsible built on `<details>`/`<summary>`: `kol-accordion` and `kol-details`\n * render the same DOM under their own block, so each includes this mixin with its block name.\n *\n * The transition duration comes from the theme's `collapsibleTransitionMs` feature flag, which the\n * component writes to `--collapsible-transition-duration` on `<details>`.\n */\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-accordion {\n /* `<summary>` is the toggle control and carries the box of the button it stands in for. */\n }\n .kol-accordion__heading {\n display: flex;\n min-height: var(--a11y-min-size);\n /* The `not-allowed` reset for disabled controls lives in `kol-global`, which loses to\n `kol-component` whatever the specificity (see `_layer-order.scss`). The pointer has to\n exclude the disabled summary itself, or it wins and a dead control looks clickable. */\n }\n .kol-accordion__heading:not([aria-disabled=true]) {\n cursor: pointer;\n }\n .kol-accordion__heading {\n /* Baseline box for the flex container; without it the surrounding inline flow shifts by 1px. */\n }\n .kol-accordion__heading::before {\n content: \"\";\n }\n .kol-accordion__heading {\n /* The heading fills the row; the label span is the flex container inside it. */\n }\n .kol-accordion__heading > .kol-headline {\n display: flex;\n flex: 1;\n margin: 0;\n text-align: left;\n /* Form controls do not inherit font-weight (see `a11y.scss`); themes weight the label further in. */\n font-weight: 400;\n }\n .kol-accordion__heading > .kol-headline > .kol-span {\n flex: 1 0 100%;\n /* `.kol-span` centres its column (`_global.scss`); the summary label is start-aligned. */\n align-items: flex-start;\n }\n @media (prefers-reduced-motion) {\n .kol-accordion__wrapper-animation, .kol-accordion__wrapper {\n transition: none !important;\n }\n }\n .kol-accordion {\n /* @see https://github.com/public-ui/kolibri/issues/5952 */\n }\n @media print {\n .kol-accordion:not(.kol-accordion--open) .kol-accordion__wrapper-animation {\n display: none;\n }\n }\n .kol-accordion__wrapper {\n /* Forces the element into its own GPU compositing layer (via 3D transform). Helps prevent rendering/layout bugs (e.g. #7511) and may improve animation performance. */\n transform: translateZ(0);\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--collapsible-transition-duration, 0.3s);\n }\n .kol-accordion__wrapper-animation {\n opacity: 0;\n transform: scaleY(0);\n transform-origin: top;\n min-height: 0;\n /* This property is important to keep in sync with the visual transition (template-rows). Without it interactive elements within the accordion would stay focusable. */\n visibility: hidden;\n transition: transform var(--collapsible-transition-duration, 0.3s), opacity var(--collapsible-transition-duration, 0.3s), visibility var(--collapsible-transition-duration, 0.3s);\n }\n .kol-accordion--open .kol-accordion__wrapper {\n grid-template-rows: 1fr;\n }\n .kol-accordion--open .kol-accordion__wrapper-animation {\n opacity: 1;\n transform: scaleY(1);\n visibility: visible;\n }\n .kol-accordion--open:focus-within {\n position: relative;\n z-index: 100;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n}";
|
|
18430
18421
|
|
|
18431
18422
|
class KolAccordion extends BaseWebComponent {
|
|
18432
18423
|
constructor(hostRef) {
|
|
@@ -20734,7 +20725,7 @@ class TooltipBehavior extends BaseBehavior {
|
|
|
20734
20725
|
}
|
|
20735
20726
|
}
|
|
20736
20727
|
|
|
20737
|
-
const defaultStyleCss$M = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n}";
|
|
20728
|
+
const defaultStyleCss$M = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n}";
|
|
20738
20729
|
|
|
20739
20730
|
class KolAlert extends BaseWebComponent {
|
|
20740
20731
|
constructor(hostRef) {
|
|
@@ -21031,7 +21022,7 @@ function resolveButtonProps(props, host) {
|
|
|
21031
21022
|
return resolved;
|
|
21032
21023
|
}
|
|
21033
21024
|
|
|
21034
|
-
const defaultStyleCss$K = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Badge box for every shadow root that renders `BadgeFC` - the badge itself and `kol-version`.\n * Stencil scopes `badge/style.scss` to the `kol-badge` shadow root, so a second consumer has to\n * bring these rules along (same pattern as `kol-link-styles` for `LinkFC`).\n *\n * The smart-button rules stay in `badge/style.scss`: only the badge web component orchestrates one.\n */\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-badge {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n .kol-badge > br {\n user-select: none;\n }\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-badge .kol-badge__smart-button {\n width: auto;\n order: 3;\n }\n}";
|
|
21025
|
+
const defaultStyleCss$K = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Badge box for every shadow root that renders `BadgeFC` - the badge itself and `kol-version`.\n * Stencil scopes `badge/style.scss` to the `kol-badge` shadow root, so a second consumer has to\n * bring these rules along (same pattern as `kol-link-styles` for `LinkFC`).\n *\n * The smart-button rules stay in `badge/style.scss`: only the badge web component orchestrates one.\n */\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-badge {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n .kol-badge > br {\n user-select: none;\n }\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-badge .kol-badge__smart-button {\n width: auto;\n order: 3;\n }\n}";
|
|
21035
21026
|
|
|
21036
21027
|
featureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);
|
|
21037
21028
|
class KolBadge extends BaseWebComponent {
|
|
@@ -21355,7 +21346,7 @@ const onLocationChange = (callback, eager = true) => {
|
|
|
21355
21346
|
};
|
|
21356
21347
|
};
|
|
21357
21348
|
|
|
21358
|
-
const defaultStyleCss$J = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-link__icon {\n display: inline-flex;\n }\n .kol-breadcrumb__list, .kol-breadcrumb__list-element {\n display: flex;\n margin: 0;\n padding: 0;\n flex-wrap: wrap;\n place-items: center;\n list-style: none;\n }\n .kol-breadcrumb__list-element:first-child:last-child {\n min-height: var(--a11y-min-size);\n }\n}";
|
|
21349
|
+
const defaultStyleCss$J = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-link__icon {\n display: inline-flex;\n }\n .kol-breadcrumb__list, .kol-breadcrumb__list-element {\n display: flex;\n margin: 0;\n padding: 0;\n flex-wrap: wrap;\n place-items: center;\n list-style: none;\n }\n .kol-breadcrumb__list-element:first-child:last-child {\n min-height: var(--a11y-min-size);\n }\n}";
|
|
21359
21350
|
|
|
21360
21351
|
class KolBreadcrumb extends BaseWebComponent {
|
|
21361
21352
|
constructor(hostRef) {
|
|
@@ -21933,7 +21924,7 @@ class BaseButtonWebComponent extends BaseWebComponent {
|
|
|
21933
21924
|
}
|
|
21934
21925
|
}
|
|
21935
21926
|
|
|
21936
|
-
const defaultStyleCss$I = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n}";
|
|
21927
|
+
const defaultStyleCss$I = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n}";
|
|
21937
21928
|
|
|
21938
21929
|
class KolButton extends BaseButtonWebComponent {
|
|
21939
21930
|
constructor(hostRef) {
|
|
@@ -22112,7 +22103,7 @@ __decorate([
|
|
|
22112
22103
|
delegateClick('ctaRef')
|
|
22113
22104
|
], KolButton.prototype, "click", null);
|
|
22114
22105
|
|
|
22115
|
-
const defaultStyleCss$H = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n /* The button DOM now has its own interactive element (`kol-button__interactive-element`), so the shared link\n mixin scopes the alignment declarations there — the same element they applied to before, when\n the button itself carried the `kol-button` class. The former root-level compensation block is\n therefore gone. */\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-button--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-button--standalone .kol-button__interactive-element {\n align-items: stretch;\n }\n .kol-button--standalone .kol-button__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-button__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-button__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-button__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-button .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-button__icon {\n display: inline-flex;\n }\n .kol-button--inline {\n min-width: unset;\n min-height: unset;\n }\n .kol-button--inline .kol-button__interactive-element {\n min-width: unset;\n min-height: unset;\n }\n}";
|
|
22106
|
+
const defaultStyleCss$H = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n /* The button DOM now has its own interactive element (`kol-button__interactive-element`), so the shared link\n mixin scopes the alignment declarations there — the same element they applied to before, when\n the button itself carried the `kol-button` class. The former root-level compensation block is\n therefore gone. */\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-button--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-button--standalone .kol-button__interactive-element {\n align-items: stretch;\n }\n .kol-button--standalone .kol-button__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-button__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-button__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-button__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-button .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-button__icon {\n display: inline-flex;\n }\n .kol-button--inline {\n min-width: unset;\n min-height: unset;\n }\n .kol-button--inline .kol-button__interactive-element {\n min-width: unset;\n min-height: unset;\n }\n}";
|
|
22116
22107
|
|
|
22117
22108
|
class KolButtonLink extends BaseButtonWebComponent {
|
|
22118
22109
|
constructor(hostRef) {
|
|
@@ -22377,7 +22368,7 @@ class BaseCardWebComponent extends BaseWebComponent {
|
|
|
22377
22368
|
}
|
|
22378
22369
|
}
|
|
22379
22370
|
|
|
22380
|
-
const defaultStyleCss$G = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n}";
|
|
22371
|
+
const defaultStyleCss$G = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n}";
|
|
22381
22372
|
|
|
22382
22373
|
class KolCard extends BaseCardWebComponent {
|
|
22383
22374
|
constructor(hostRef) {
|
|
@@ -23362,7 +23353,7 @@ const GROUP_CLASSES = {
|
|
|
23362
23353
|
};
|
|
23363
23354
|
const ListboxGroupFC = ({ block }, children) => hAsync("div", { class: GROUP_CLASSES[block] }, children);
|
|
23364
23355
|
|
|
23365
|
-
const defaultStyleCss$F = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-custom-suggestions-option {\n line-height: 1.5;\n white-space: normal;\n overflow-wrap: break-word;\n /* The `not-allowed` reset for disabled controls lives in `kol-global`, which loses to\n `kol-component` whatever the specificity (see `_layer-order.scss`). An unguarded pointer\n therefore wins and makes a dead option look selectable, focused or not. */\n }\n .kol-custom-suggestions-option:not(.kol-custom-suggestions-option--disabled) {\n cursor: pointer;\n }\n .kol-custom-suggestions-options-group--cursor-hidden .kol-custom-suggestions-option {\n cursor: none !important;\n }\n .kol-custom-suggestions-option--disabled, .kol-custom-suggestions-option--disabled * {\n cursor: not-allowed;\n }\n .kol-custom-suggestions-options-group {\n background-color: white;\n display: block;\n position: absolute;\n z-index: 2;\n max-height: calc(250 * 1rem / var(--kolibri-root-font-size, 16));\n margin: 0;\n padding: 0;\n overflow-x: hidden;\n overflow-y: auto;\n list-style-type: none;\n }\n .kol-input-container:has(.kol-custom-suggestions-options-group--open) {\n z-index: 10;\n }\n .kol-custom-suggestions-toggle {\n display: flex;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n cursor: default;\n }\n .kol-custom-suggestions-toggle.kol-custom-suggestions-toggle--disabled {\n cursor: not-allowed;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-combobox {\n /* Scoped to the group that holds the clear button: the info popover in the label renders a `.kol-button` as well. */\n }\n .kol-combobox__group .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-combobox__group :host {\n display: inline-block;\n }\n .kol-combobox__group .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-combobox__group .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-combobox__group .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-combobox__group .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-combobox__group .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-combobox__group .kol-button__tooltip {\n height: 0;\n }\n .kol-combobox__group .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-combobox__group .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-combobox-toggle {\n min-height: 0;\n flex: 0;\n align-self: stretch;\n }\n .kol-combobox--open .kol-combobox-toggle {\n transform: rotate(180deg);\n }\n}";
|
|
23356
|
+
const defaultStyleCss$F = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-custom-suggestions-option {\n line-height: 1.5;\n white-space: normal;\n overflow-wrap: break-word;\n /* The `not-allowed` reset for disabled controls lives in `kol-global`, which loses to\n `kol-component` whatever the specificity (see `_layer-order.scss`). An unguarded pointer\n therefore wins and makes a dead option look selectable, focused or not. */\n }\n .kol-custom-suggestions-option:not(.kol-custom-suggestions-option--disabled) {\n cursor: pointer;\n }\n .kol-custom-suggestions-options-group--cursor-hidden .kol-custom-suggestions-option {\n cursor: none !important;\n }\n .kol-custom-suggestions-option--disabled, .kol-custom-suggestions-option--disabled * {\n cursor: not-allowed;\n }\n .kol-custom-suggestions-options-group {\n background-color: white;\n display: block;\n position: absolute;\n z-index: 2;\n max-height: calc(250 * 1rem / var(--kolibri-root-font-size, 16));\n margin: 0;\n padding: 0;\n overflow-x: hidden;\n overflow-y: auto;\n list-style-type: none;\n }\n .kol-input-container:has(.kol-custom-suggestions-options-group--open) {\n z-index: 10;\n }\n .kol-custom-suggestions-toggle {\n display: flex;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n cursor: default;\n }\n .kol-custom-suggestions-toggle.kol-custom-suggestions-toggle--disabled {\n cursor: not-allowed;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-combobox {\n /* Scoped to the group that holds the clear button: the info popover in the label renders a `.kol-button` as well. */\n }\n .kol-combobox__group .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-combobox__group :host {\n display: inline-block;\n }\n .kol-combobox__group .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-combobox__group .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-combobox__group .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-combobox__group .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-combobox__group .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-combobox__group .kol-button__tooltip {\n height: 0;\n }\n .kol-combobox__group .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-combobox__group .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-combobox-toggle {\n min-height: 0;\n flex: 0;\n align-self: stretch;\n }\n .kol-combobox--open .kol-combobox-toggle {\n transform: rotate(180deg);\n }\n}";
|
|
23366
23357
|
|
|
23367
23358
|
class KolCombobox extends BaseListboxWebComponent {
|
|
23368
23359
|
constructor(hostRef) {
|
|
@@ -23820,7 +23811,7 @@ __decorate([
|
|
|
23820
23811
|
delegateClick('ctaRef')
|
|
23821
23812
|
], KolCombobox.prototype, "click", null);
|
|
23822
23813
|
|
|
23823
|
-
const defaultStyleCss$E = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n/* For animation technique see https://css-tricks.com/css-grid-can-do-auto-height-transitions/ */\n/*\n * Base styles for a collapsible built on `<details>`/`<summary>`: `kol-accordion` and `kol-details`\n * render the same DOM under their own block, so each includes this mixin with its block name.\n *\n * The transition duration comes from the theme's `collapsibleTransitionMs` feature flag, which the\n * component writes to `--collapsible-transition-duration` on `<details>`.\n */\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n /* Outweighs `host-display-block`: the details host sizes to its content. */\n :host {\n display: inline-block;\n }\n .kol-details {\n /* `<summary>` is the toggle control and carries the box of the button it stands in for. */\n }\n .kol-details__heading {\n display: flex;\n min-height: var(--a11y-min-size);\n /* The `not-allowed` reset for disabled controls lives in `kol-global`, which loses to\n `kol-component` whatever the specificity (see `_layer-order.scss`). The pointer has to\n exclude the disabled summary itself, or it wins and a dead control looks clickable. */\n }\n .kol-details__heading:not([aria-disabled=true]) {\n cursor: pointer;\n }\n .kol-details__heading {\n /* Baseline box for the flex container; without it the surrounding inline flow shifts by 1px. */\n }\n .kol-details__heading::before {\n content: \"\";\n }\n .kol-details__heading {\n /* The heading fills the row; the label span is the flex container inside it. */\n }\n .kol-details__heading > .kol-headline {\n display: flex;\n flex: 1;\n margin: 0;\n text-align: left;\n /* Form controls do not inherit font-weight (see `a11y.scss`); themes weight the label further in. */\n font-weight: 400;\n }\n .kol-details__heading > .kol-headline > .kol-span {\n flex: 1 0 100%;\n /* `.kol-span` centres its column (`_global.scss`); the summary label is start-aligned. */\n align-items: flex-start;\n }\n @media (prefers-reduced-motion) {\n .kol-details__wrapper-animation, .kol-details__wrapper {\n transition: none !important;\n }\n }\n .kol-details {\n /* @see https://github.com/public-ui/kolibri/issues/5952 */\n }\n @media print {\n .kol-details:not(.kol-details--open) .kol-details__wrapper-animation {\n display: none;\n }\n }\n .kol-details__wrapper {\n /* Forces the element into its own GPU compositing layer (via 3D transform). Helps prevent rendering/layout bugs (e.g. #7511) and may improve animation performance. */\n transform: translateZ(0);\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--collapsible-transition-duration, 0.3s);\n }\n .kol-details__wrapper-animation {\n opacity: 0;\n transform: scaleY(0);\n transform-origin: top;\n min-height: 0;\n /* This property is important to keep in sync with the visual transition (template-rows). Without it interactive elements within the accordion would stay focusable. */\n visibility: hidden;\n transition: transform var(--collapsible-transition-duration, 0.3s), opacity var(--collapsible-transition-duration, 0.3s), visibility var(--collapsible-transition-duration, 0.3s);\n }\n .kol-details--open .kol-details__wrapper {\n grid-template-rows: 1fr;\n }\n .kol-details--open .kol-details__wrapper-animation {\n opacity: 1;\n transform: scaleY(1);\n visibility: visible;\n }\n .kol-details--open:focus-within {\n position: relative;\n z-index: 100;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-details--open .kol-details__heading .kol-icon {\n transform: rotate(90deg);\n }\n}";
|
|
23814
|
+
const defaultStyleCss$E = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n/* For animation technique see https://css-tricks.com/css-grid-can-do-auto-height-transitions/ */\n/*\n * Base styles for a collapsible built on `<details>`/`<summary>`: `kol-accordion` and `kol-details`\n * render the same DOM under their own block, so each includes this mixin with its block name.\n *\n * The transition duration comes from the theme's `collapsibleTransitionMs` feature flag, which the\n * component writes to `--collapsible-transition-duration` on `<details>`.\n */\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n /* Outweighs `host-display-block`: the details host sizes to its content. */\n :host {\n display: inline-block;\n }\n .kol-details {\n /* `<summary>` is the toggle control and carries the box of the button it stands in for. */\n }\n .kol-details__heading {\n display: flex;\n min-height: var(--a11y-min-size);\n /* The `not-allowed` reset for disabled controls lives in `kol-global`, which loses to\n `kol-component` whatever the specificity (see `_layer-order.scss`). The pointer has to\n exclude the disabled summary itself, or it wins and a dead control looks clickable. */\n }\n .kol-details__heading:not([aria-disabled=true]) {\n cursor: pointer;\n }\n .kol-details__heading {\n /* Baseline box for the flex container; without it the surrounding inline flow shifts by 1px. */\n }\n .kol-details__heading::before {\n content: \"\";\n }\n .kol-details__heading {\n /* The heading fills the row; the label span is the flex container inside it. */\n }\n .kol-details__heading > .kol-headline {\n display: flex;\n flex: 1;\n margin: 0;\n text-align: left;\n /* Form controls do not inherit font-weight (see `a11y.scss`); themes weight the label further in. */\n font-weight: 400;\n }\n .kol-details__heading > .kol-headline > .kol-span {\n flex: 1 0 100%;\n /* `.kol-span` centres its column (`_global.scss`); the summary label is start-aligned. */\n align-items: flex-start;\n }\n @media (prefers-reduced-motion) {\n .kol-details__wrapper-animation, .kol-details__wrapper {\n transition: none !important;\n }\n }\n .kol-details {\n /* @see https://github.com/public-ui/kolibri/issues/5952 */\n }\n @media print {\n .kol-details:not(.kol-details--open) .kol-details__wrapper-animation {\n display: none;\n }\n }\n .kol-details__wrapper {\n /* Forces the element into its own GPU compositing layer (via 3D transform). Helps prevent rendering/layout bugs (e.g. #7511) and may improve animation performance. */\n transform: translateZ(0);\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--collapsible-transition-duration, 0.3s);\n }\n .kol-details__wrapper-animation {\n opacity: 0;\n transform: scaleY(0);\n transform-origin: top;\n min-height: 0;\n /* This property is important to keep in sync with the visual transition (template-rows). Without it interactive elements within the accordion would stay focusable. */\n visibility: hidden;\n transition: transform var(--collapsible-transition-duration, 0.3s), opacity var(--collapsible-transition-duration, 0.3s), visibility var(--collapsible-transition-duration, 0.3s);\n }\n .kol-details--open .kol-details__wrapper {\n grid-template-rows: 1fr;\n }\n .kol-details--open .kol-details__wrapper-animation {\n opacity: 1;\n transform: scaleY(1);\n visibility: visible;\n }\n .kol-details--open:focus-within {\n position: relative;\n z-index: 100;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-details--open .kol-details__heading .kol-icon {\n transform: rotate(90deg);\n }\n}";
|
|
23824
23815
|
|
|
23825
23816
|
class KolDetails extends BaseWebComponent {
|
|
23826
23817
|
constructor(hostRef) {
|
|
@@ -24109,7 +24100,7 @@ class BaseDialogWebComponent extends BaseWebComponent {
|
|
|
24109
24100
|
}
|
|
24110
24101
|
}
|
|
24111
24102
|
|
|
24112
|
-
const defaultStyleCss$D = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-dialog,\n .kol-modal {\n min-height: var(--a11y-min-size);\n padding: 0;\n border: 0;\n /* Prevent scroll chaining from scrollable dialog content to the page. */\n overscroll-behavior: contain;\n }\n .kol-dialog__close-button,\n .kol-modal__close-button {\n position: absolute;\n top: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n right: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n }\n}";
|
|
24103
|
+
const defaultStyleCss$D = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-dialog,\n .kol-modal {\n min-height: var(--a11y-min-size);\n padding: 0;\n border: 0;\n /* Prevent scroll chaining from scrollable dialog content to the page. */\n overscroll-behavior: contain;\n }\n .kol-dialog__close-button,\n .kol-modal__close-button {\n position: absolute;\n top: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n right: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n }\n}";
|
|
24113
24104
|
|
|
24114
24105
|
class KolDialog extends BaseDialogWebComponent {
|
|
24115
24106
|
constructor(hostRef) {
|
|
@@ -24220,7 +24211,7 @@ const DrawerFC = (props, children) => {
|
|
|
24220
24211
|
return (hAsync(BemRootNodeFC, { block: "kol-drawer" }, hAsync(DialogFC, { blockClass: BEM_CLASS_DRAWER__DIALOG, handleCancel: handleCancel, handleClose: handleClose, label: label, labelledBy: headingId, modal: modal, refDialog: refDialog }, hAsync("div", { class: drawerBem('wrapper', { [align]: true, 'is-closing': !expanded, open: expanded }), onAnimationEnd: handleAnimationEnd, ref: refWrapper }, hAsync(CardFC, Object.assign({}, cardProps), hAsync("div", { class: BEM_CLASS_DRAWER__CONTENT }, children))))));
|
|
24221
24212
|
};
|
|
24222
24213
|
|
|
24223
|
-
const defaultStyleCss$C = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-drawer__dialog {\n padding: 0;\n border: none;\n /* Prevent scroll chaining from scrollable drawer content to the page. */\n overscroll-behavior: contain;\n }\n .kol-drawer__wrapper {\n position: fixed;\n overflow: auto;\n overscroll-behavior: contain;\n }\n .kol-drawer__wrapper--left, .kol-drawer__wrapper--right {\n top: 0;\n max-width: 100vw;\n height: 100vh;\n }\n .kol-drawer__wrapper--left .kol-drawer__content, .kol-drawer__wrapper--right .kol-drawer__content {\n height: 100%;\n }\n .kol-drawer__wrapper--left {\n left: 0;\n }\n .kol-drawer__wrapper--right {\n right: 0;\n }\n .kol-drawer__wrapper--bottom, .kol-drawer__wrapper--top {\n left: 0;\n width: 100vw;\n max-height: 100vh;\n }\n .kol-drawer__wrapper--bottom .kol-drawer__content, .kol-drawer__wrapper--top .kol-drawer__content {\n width: 100%;\n }\n .kol-drawer__wrapper--bottom {\n bottom: 0;\n }\n .kol-drawer__wrapper--top {\n top: 0;\n }\n .kol-drawer__content {\n position: relative;\n }\n .kol-drawer__dialog .kol-card__content {\n overflow-y: auto;\n overscroll-behavior: contain;\n }\n}";
|
|
24214
|
+
const defaultStyleCss$C = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-drawer__dialog {\n padding: 0;\n border: none;\n /* Prevent scroll chaining from scrollable drawer content to the page. */\n overscroll-behavior: contain;\n }\n .kol-drawer__wrapper {\n position: fixed;\n overflow: auto;\n overscroll-behavior: contain;\n }\n .kol-drawer__wrapper--left, .kol-drawer__wrapper--right {\n top: 0;\n max-width: 100vw;\n height: 100vh;\n }\n .kol-drawer__wrapper--left .kol-drawer__content, .kol-drawer__wrapper--right .kol-drawer__content {\n height: 100%;\n }\n .kol-drawer__wrapper--left {\n left: 0;\n }\n .kol-drawer__wrapper--right {\n right: 0;\n }\n .kol-drawer__wrapper--bottom, .kol-drawer__wrapper--top {\n left: 0;\n width: 100vw;\n max-height: 100vh;\n }\n .kol-drawer__wrapper--bottom .kol-drawer__content, .kol-drawer__wrapper--top .kol-drawer__content {\n width: 100%;\n }\n .kol-drawer__wrapper--bottom {\n bottom: 0;\n }\n .kol-drawer__wrapper--top {\n top: 0;\n }\n .kol-drawer__content {\n position: relative;\n }\n .kol-drawer__dialog .kol-card__content {\n overflow-y: auto;\n overscroll-behavior: contain;\n }\n}";
|
|
24224
24215
|
|
|
24225
24216
|
const NOOP$2 = () => { };
|
|
24226
24217
|
class KolDrawer extends BaseWebComponent {
|
|
@@ -24483,7 +24474,7 @@ const createFormErrorLinkItem = (error, handleSelector) => {
|
|
|
24483
24474
|
};
|
|
24484
24475
|
};
|
|
24485
24476
|
|
|
24486
|
-
const defaultStyleCss$B = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-link__icon {\n display: inline-flex;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n}";
|
|
24477
|
+
const defaultStyleCss$B = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-link__icon {\n display: inline-flex;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n}";
|
|
24487
24478
|
|
|
24488
24479
|
const SCROLL_OPTIONS_FALLBACK = {
|
|
24489
24480
|
behavior: 'smooth',
|
|
@@ -24648,7 +24639,7 @@ const iconPropsConfig = {
|
|
|
24648
24639
|
required: [iconsProp, labelProp],
|
|
24649
24640
|
};
|
|
24650
24641
|
|
|
24651
|
-
const defaultStyleCss$z = "@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=
|
|
24642
|
+
const defaultStyleCss$z = "@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n}";
|
|
24652
24643
|
|
|
24653
24644
|
class KolIcon extends BaseWebComponent {
|
|
24654
24645
|
constructor(hostRef) {
|
|
@@ -24816,7 +24807,7 @@ const inputCheckboxPropsConfig = {
|
|
|
24816
24807
|
],
|
|
24817
24808
|
};
|
|
24818
24809
|
|
|
24819
|
-
const defaultStyleCss$x = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-field-control {\n display: grid;\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: left;\n grid-template-areas: \"input label\";\n grid-template-columns: auto 1fr;\n grid-template-rows: auto;\n }\n .kol-field-control:has(.kol-field-control__hint) {\n grid-template-areas: \"input label\" \"hint hint\";\n grid-template-columns: auto 1fr;\n grid-template-rows: auto auto;\n }\n .kol-field-control--label-align-left:not(.kol-field-control--hide-label) {\n grid-template-areas: \"label input\";\n grid-template-columns: 1fr auto;\n grid-template-rows: auto;\n }\n .kol-field-control--label-align-left:not(.kol-field-control--hide-label):has(.kol-field-control__hint) {\n grid-template-areas: \"label input\" \"hint hint\";\n grid-template-columns: 1fr auto;\n grid-template-rows: auto auto;\n }\n .kol-field-control__input {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-area: input;\n }\n .kol-field-control__label {\n display: flex;\n min-height: var(--a11y-min-size);\n flex-grow: 1;\n align-items: center;\n cursor: pointer;\n grid-area: label;\n }\n .kol-field-control__label--visually-hidden {\n display: none;\n height: 0;\n margin: 0;\n padding: 0;\n visibility: hidden;\n }\n .kol-field-control__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-field-control__hint {\n grid-area: hint;\n }\n .kol-field-control--disabled .kol-field-control__label {\n cursor: not-allowed;\n }\n .kol-field-control--required .kol-field-control__label-text:has(.kol-span__slot[hidden])::after,\n .kol-field-control--required .kol-field-control .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field__label-text {\n display: ruby;\n }\n .kol-checkbox {\n display: flex;\n position: relative;\n align-items: center;\n cursor: pointer;\n }\n .kol-checkbox--disabled {\n cursor: not-allowed;\n }\n .kol-checkbox .kol-input {\n background-color: white;\n border-style: solid;\n margin: 0;\n border-width: 2px;\n appearance: none;\n cursor: inherit;\n }\n .kol-checkbox .kol-input:before {\n content: \"\";\n }\n /**\n * Variant: Checkbox\n */\n .kol-checkbox--variant-default {\n position: relative;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n justify-content: center;\n }\n .kol-checkbox--variant-default .kol-icon {\n display: none;\n position: absolute;\n inset: auto;\n z-index: 1;\n pointer-events: none;\n }\n .kol-checkbox--variant-default .kol-input {\n width: calc(22 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(22 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-checkbox--variant-default.kol-checkbox--checked .kol-icon, .kol-checkbox--variant-default.kol-checkbox--indeterminate .kol-icon {\n display: block;\n }\n /**\n * Variant: Switch\n */\n .kol-checkbox--variant-switch {\n position: relative;\n }\n .kol-checkbox--variant-switch .kol-input {\n display: inline-block;\n position: relative;\n width: 3.2em;\n min-width: 3.2em;\n height: 1.7em;\n }\n .kol-checkbox--variant-switch .kol-input::before {\n background-color: black;\n position: absolute;\n top: calc(0.25em - 2 * 1rem / var(--kolibri-root-font-size, 16));\n left: calc(0.25em - 2 * 1rem / var(--kolibri-root-font-size, 16));\n width: 1.2em;\n height: 1.2em;\n transition: 0.5s;\n }\n .kol-checkbox--variant-switch .kol-input:checked::before {\n transform: translateX(1.5em);\n }\n .kol-checkbox--variant-switch .kol-input:indeterminate::before {\n transform: translateX(0.75em);\n }\n .kol-checkbox--variant-switch .kol-icon {\n transform: translate(0, -50%);\n color: black;\n display: flex;\n position: absolute;\n top: 50%;\n left: calc(4 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n width: 1.2em;\n height: 1.2em;\n align-items: center;\n justify-content: center;\n transition: 0.5s;\n }\n .kol-checkbox--variant-switch.kol-checkbox--checked .kol-icon {\n transform: translate(1.5em, -50%);\n }\n .kol-checkbox--variant-switch.kol-checkbox--indeterminate .kol-icon {\n transform: translate(0.75em, -50%);\n }\n /**\n * Variant: Button\n */\n .kol-checkbox--variant-button {\n min-width: var(--a11y-min-size);\n }\n .kol-checkbox--variant-button .kol-icon {\n display: flex;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n }\n}";
|
|
24810
|
+
const defaultStyleCss$x = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-field-control {\n display: grid;\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: left;\n grid-template-areas: \"input label\";\n grid-template-columns: auto 1fr;\n grid-template-rows: auto;\n }\n .kol-field-control:has(.kol-field-control__hint) {\n grid-template-areas: \"input label\" \"hint hint\";\n grid-template-columns: auto 1fr;\n grid-template-rows: auto auto;\n }\n .kol-field-control--label-align-left:not(.kol-field-control--hide-label) {\n grid-template-areas: \"label input\";\n grid-template-columns: 1fr auto;\n grid-template-rows: auto;\n }\n .kol-field-control--label-align-left:not(.kol-field-control--hide-label):has(.kol-field-control__hint) {\n grid-template-areas: \"label input\" \"hint hint\";\n grid-template-columns: 1fr auto;\n grid-template-rows: auto auto;\n }\n .kol-field-control__input {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-area: input;\n }\n .kol-field-control__label {\n display: flex;\n min-height: var(--a11y-min-size);\n flex-grow: 1;\n align-items: center;\n cursor: pointer;\n grid-area: label;\n }\n .kol-field-control__label--visually-hidden {\n display: none;\n height: 0;\n margin: 0;\n padding: 0;\n visibility: hidden;\n }\n .kol-field-control__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-field-control__hint {\n grid-area: hint;\n }\n .kol-field-control--disabled .kol-field-control__label {\n cursor: not-allowed;\n }\n .kol-field-control--required .kol-field-control__label-text:has(.kol-span__slot[hidden])::after,\n .kol-field-control--required .kol-field-control .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field__label-text {\n display: ruby;\n }\n .kol-checkbox {\n display: flex;\n position: relative;\n align-items: center;\n cursor: pointer;\n }\n .kol-checkbox--disabled {\n cursor: not-allowed;\n }\n .kol-checkbox .kol-input {\n background-color: white;\n border-style: solid;\n margin: 0;\n border-width: 2px;\n appearance: none;\n cursor: inherit;\n }\n .kol-checkbox .kol-input:before {\n content: \"\";\n }\n /**\n * Variant: Checkbox\n */\n .kol-checkbox--variant-default {\n position: relative;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n justify-content: center;\n }\n .kol-checkbox--variant-default .kol-icon {\n display: none;\n position: absolute;\n inset: auto;\n z-index: 1;\n pointer-events: none;\n }\n .kol-checkbox--variant-default .kol-input {\n width: calc(22 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(22 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-checkbox--variant-default.kol-checkbox--checked .kol-icon, .kol-checkbox--variant-default.kol-checkbox--indeterminate .kol-icon {\n display: block;\n }\n /**\n * Variant: Switch\n */\n .kol-checkbox--variant-switch {\n position: relative;\n }\n .kol-checkbox--variant-switch .kol-input {\n display: inline-block;\n position: relative;\n width: 3.2em;\n min-width: 3.2em;\n height: 1.7em;\n }\n .kol-checkbox--variant-switch .kol-input::before {\n background-color: black;\n position: absolute;\n top: calc(0.25em - 2 * 1rem / var(--kolibri-root-font-size, 16));\n left: calc(0.25em - 2 * 1rem / var(--kolibri-root-font-size, 16));\n width: 1.2em;\n height: 1.2em;\n transition: 0.5s;\n }\n .kol-checkbox--variant-switch .kol-input:checked::before {\n transform: translateX(1.5em);\n }\n .kol-checkbox--variant-switch .kol-input:indeterminate::before {\n transform: translateX(0.75em);\n }\n .kol-checkbox--variant-switch .kol-icon {\n transform: translate(0, -50%);\n color: black;\n display: flex;\n position: absolute;\n top: 50%;\n left: calc(4 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n width: 1.2em;\n height: 1.2em;\n align-items: center;\n justify-content: center;\n transition: 0.5s;\n }\n .kol-checkbox--variant-switch.kol-checkbox--checked .kol-icon {\n transform: translate(1.5em, -50%);\n }\n .kol-checkbox--variant-switch.kol-checkbox--indeterminate .kol-icon {\n transform: translate(0.75em, -50%);\n }\n /**\n * Variant: Button\n */\n .kol-checkbox--variant-button {\n min-width: var(--a11y-min-size);\n }\n .kol-checkbox--variant-button .kol-icon {\n display: flex;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n }\n}";
|
|
24820
24811
|
|
|
24821
24812
|
class KolInputCheckbox extends BaseFormFieldWebComponent {
|
|
24822
24813
|
constructor(hostRef) {
|
|
@@ -25124,7 +25115,7 @@ const inputColorPropsConfig = {
|
|
|
25124
25115
|
],
|
|
25125
25116
|
};
|
|
25126
25117
|
|
|
25127
|
-
const defaultStyleCss$w = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-input {\n cursor: pointer;\n }\n .kol-input:disabled {\n cursor: not-allowed;\n }\n}";
|
|
25118
|
+
const defaultStyleCss$w = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-input {\n cursor: pointer;\n }\n .kol-input:disabled {\n cursor: not-allowed;\n }\n}";
|
|
25128
25119
|
|
|
25129
25120
|
class KolInputColor extends BaseFormFieldWebComponent {
|
|
25130
25121
|
constructor(hostRef) {
|
|
@@ -25396,7 +25387,7 @@ const inputDatePropsConfig = {
|
|
|
25396
25387
|
],
|
|
25397
25388
|
};
|
|
25398
25389
|
|
|
25399
|
-
const defaultStyleCss$v = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n /**\n * Workaround for detecting focus state of the native date input's calendar icon.\n * The `:focus-visible` pseudo class does not work on the icon itself, but only on the input element.\n * By using the `content` property we can detect whether the icon is focused by inspecting the computed style in JS.\n * This should be replaced once native focus detection for the icon is available.\n */\n :host input[type=date],\n :host input[type=datetime-local],\n :host input[type=month],\n :host input[type=time],\n :host input[type=week] {\n content: \"native-icon-focused\";\n }\n :host input[type=date]:focus-visible,\n :host input[type=datetime-local]:focus-visible,\n :host input[type=month]:focus-visible,\n :host input[type=time]:focus-visible,\n :host input[type=week]:focus-visible {\n content: \"native-icon-not-focused\";\n }\n .kol-input {\n cursor: text;\n }\n .kol-input::-webkit-calendar-picker-indicator {\n cursor: pointer;\n }\n}";
|
|
25390
|
+
const defaultStyleCss$v = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n /**\n * Workaround for detecting focus state of the native date input's calendar icon.\n * The `:focus-visible` pseudo class does not work on the icon itself, but only on the input element.\n * By using the `content` property we can detect whether the icon is focused by inspecting the computed style in JS.\n * This should be replaced once native focus detection for the icon is available.\n */\n :host input[type=date],\n :host input[type=datetime-local],\n :host input[type=month],\n :host input[type=time],\n :host input[type=week] {\n content: \"native-icon-focused\";\n }\n :host input[type=date]:focus-visible,\n :host input[type=datetime-local]:focus-visible,\n :host input[type=month]:focus-visible,\n :host input[type=time]:focus-visible,\n :host input[type=week]:focus-visible {\n content: \"native-icon-not-focused\";\n }\n .kol-input {\n cursor: text;\n }\n .kol-input::-webkit-calendar-picker-indicator {\n cursor: pointer;\n }\n}";
|
|
25400
25391
|
|
|
25401
25392
|
class KolInputDate extends BaseFormFieldWebComponent {
|
|
25402
25393
|
constructor(hostRef) {
|
|
@@ -26023,7 +26014,7 @@ class BaseTextInputWebComponent extends BaseFormFieldWebComponent {
|
|
|
26023
26014
|
}
|
|
26024
26015
|
}
|
|
26025
26016
|
|
|
26026
|
-
const defaultStyleCss$u = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n}";
|
|
26017
|
+
const defaultStyleCss$u = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n}";
|
|
26027
26018
|
|
|
26028
26019
|
class KolInputEmail extends BaseTextInputWebComponent {
|
|
26029
26020
|
constructor(hostRef) {
|
|
@@ -26302,7 +26293,7 @@ const inputContainerBem = bem.forBlock('kol-input-container');
|
|
|
26302
26293
|
const BEM_CLASS_INPUT_CONTAINER__BUTTON = inputContainerBem('button');
|
|
26303
26294
|
const InputFileNameFC = ({ filename, hasFile }) => (hAsync("span", { class: inputContainerBem('filename', { 'has-file': hasFile }) }, filename));
|
|
26304
26295
|
|
|
26305
|
-
const defaultStyleCss$t = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-input {\n opacity: 0;\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n cursor: pointer;\n }\n .kol-input::-webkit-file-upload-button, .kol-input::file-selector-button {\n cursor: pointer;\n }\n .kol-input:disabled, .kol-input:disabled::-webkit-file-upload-button, .kol-input:disabled::file-selector-button {\n cursor: not-allowed;\n pointer-events: none;\n }\n .kol-input-container__container {\n display: flex;\n overflow: hidden;\n align-items: center;\n }\n .kol-input-container__button {\n /* The button root is an item of the centered `__container` row. `height: auto` keeps it at its\n own height instead of the `height: 100%` of the button styles, which would stretch it to the row. */\n height: auto;\n }\n .kol-input-container__filename {\n overflow: hidden;\n flex-grow: 1;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start):has(> .kol-input-container__adornment--end) {\n grid-template-columns: auto 1fr;\n }\n}";
|
|
26296
|
+
const defaultStyleCss$t = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-input {\n opacity: 0;\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n cursor: pointer;\n }\n .kol-input::-webkit-file-upload-button, .kol-input::file-selector-button {\n cursor: pointer;\n }\n .kol-input:disabled, .kol-input:disabled::-webkit-file-upload-button, .kol-input:disabled::file-selector-button {\n cursor: not-allowed;\n pointer-events: none;\n }\n .kol-input-container__container {\n display: flex;\n overflow: hidden;\n align-items: center;\n }\n .kol-input-container__button {\n /* The button root is an item of the centered `__container` row. `height: auto` keeps it at its\n own height instead of the `height: 100%` of the button styles, which would stretch it to the row. */\n height: auto;\n }\n .kol-input-container__filename {\n overflow: hidden;\n flex-grow: 1;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start):has(> .kol-input-container__adornment--end) {\n grid-template-columns: auto 1fr;\n }\n}";
|
|
26306
26297
|
|
|
26307
26298
|
class KolInputFile extends BaseFormFieldWebComponent {
|
|
26308
26299
|
constructor(hostRef) {
|
|
@@ -26639,7 +26630,7 @@ const inputNumberPropsConfig = {
|
|
|
26639
26630
|
],
|
|
26640
26631
|
};
|
|
26641
26632
|
|
|
26642
|
-
const defaultStyleCss$s = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-input-number input {\n appearance: textfield;\n text-align: right;\n }\n .kol-input-number input::-webkit-inner-spin-button {\n display: none;\n }\n}";
|
|
26633
|
+
const defaultStyleCss$s = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-input-number input {\n appearance: textfield;\n text-align: right;\n }\n .kol-input-number input::-webkit-inner-spin-button {\n display: none;\n }\n}";
|
|
26643
26634
|
|
|
26644
26635
|
const STEP_BUTTON_CLASS = 'kol-input-number__step-button';
|
|
26645
26636
|
const isStepButton = (target) => { var _a; return ((_a = target === null || target === void 0 ? void 0 : target.classList) === null || _a === void 0 ? void 0 : _a.contains(STEP_BUTTON_CLASS)) === true; };
|
|
@@ -26977,7 +26968,7 @@ const inputPasswordPropsConfig = {
|
|
|
26977
26968
|
optional: [...textInputBasePropsConfig.optional, visibilityToggleProp],
|
|
26978
26969
|
};
|
|
26979
26970
|
|
|
26980
|
-
const defaultStyleCss$r = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-input-password {\n --kol-tooltip-width: calc(160 * 1rem / var(--kolibri-root-font-size, 16));\n }\n}";
|
|
26971
|
+
const defaultStyleCss$r = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-input-password {\n --kol-tooltip-width: calc(160 * 1rem / var(--kolibri-root-font-size, 16));\n }\n}";
|
|
26981
26972
|
|
|
26982
26973
|
class KolInputPassword extends BaseTextInputWebComponent {
|
|
26983
26974
|
constructor(hostRef) {
|
|
@@ -27124,7 +27115,7 @@ class KolInputPassword extends BaseTextInputWebComponent {
|
|
|
27124
27115
|
this.watchTooltipAlign(this._tooltipAlign);
|
|
27125
27116
|
this.watchVariant(this._variant);
|
|
27126
27117
|
this.watchIcons(this._icons);
|
|
27127
|
-
this.
|
|
27118
|
+
this.watchAutoComplete(this._autoComplete);
|
|
27128
27119
|
this.watchHasCounter(this._hasCounter);
|
|
27129
27120
|
this.watchMaxLengthBehavior(this._maxLengthBehavior);
|
|
27130
27121
|
this.initMaxLength(this._maxLength);
|
|
@@ -27164,7 +27155,7 @@ class KolInputPassword extends BaseTextInputWebComponent {
|
|
|
27164
27155
|
}
|
|
27165
27156
|
render() {
|
|
27166
27157
|
const { startAdornment, endAdornment } = this.getTextInputAdornments(this.getVisibilityToggle());
|
|
27167
|
-
return (hAsync(Host, { key: '
|
|
27158
|
+
return (hAsync(Host, { key: '5f2990720fc1b301e3098a40371f8254977f9127' }, hAsync(FormFieldFC, Object.assign({ key: '447c26b98a951438051637ccb7ec23d4d5ec727a' }, this.getTextFormFieldProps('kol-input-password password')), hAsync(InputContainerFC, { key: '8daae2d01f57ff9ae9385877c9ff24b7e4a0da17', disabled: this.getRenderProp('disabled'), msg: this.getRenderProp('msg'), touched: this.getRenderProp('touched'), startAdornment: startAdornment, endAdornment: endAdornment }, hAsync(InputFC, Object.assign({ key: '6340cc5f5568d8d68dfc296af4f3c38843c78b4f' }, this.getTextInputProps({}, { type: this.getRenderProp('visibilityToggle') && this.passwordVisible ? 'text' : 'password' })))))));
|
|
27168
27159
|
}
|
|
27169
27160
|
get host() { return getElement(this); }
|
|
27170
27161
|
static get watchers() { return {
|
|
@@ -27285,7 +27276,7 @@ const inputRadioPropsConfig = {
|
|
|
27285
27276
|
optional: [...formFieldBasePropsConfig.optional, radioOptionsProp, radioOrientationProp, radioValueProp, requiredProp, variantProp],
|
|
27286
27277
|
};
|
|
27287
27278
|
|
|
27288
|
-
const defaultStyleCss$q = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-field-control {\n display: grid;\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: left;\n grid-template-areas: \"input label\";\n grid-template-columns: auto 1fr;\n grid-template-rows: auto;\n }\n .kol-field-control:has(.kol-field-control__hint) {\n grid-template-areas: \"input label\" \"hint hint\";\n grid-template-columns: auto 1fr;\n grid-template-rows: auto auto;\n }\n .kol-field-control--label-align-left:not(.kol-field-control--hide-label) {\n grid-template-areas: \"label input\";\n grid-template-columns: 1fr auto;\n grid-template-rows: auto;\n }\n .kol-field-control--label-align-left:not(.kol-field-control--hide-label):has(.kol-field-control__hint) {\n grid-template-areas: \"label input\" \"hint hint\";\n grid-template-columns: 1fr auto;\n grid-template-rows: auto auto;\n }\n .kol-field-control__input {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-area: input;\n }\n .kol-field-control__label {\n display: flex;\n min-height: var(--a11y-min-size);\n flex-grow: 1;\n align-items: center;\n cursor: pointer;\n grid-area: label;\n }\n .kol-field-control__label--visually-hidden {\n display: none;\n height: 0;\n margin: 0;\n padding: 0;\n visibility: hidden;\n }\n .kol-field-control__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-field-control__hint {\n grid-area: hint;\n }\n .kol-field-control--disabled .kol-field-control__label {\n cursor: not-allowed;\n }\n .kol-field-control--required .kol-field-control__label-text:has(.kol-span__slot[hidden])::after,\n .kol-field-control--required .kol-field-control .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-form-field {\n --border-width: 2px;\n --input-size: 1.5em;\n }\n .kol-form-field__label {\n display: contents;\n }\n .kol-form-field__label-text {\n display: ruby;\n }\n .kol-form-field__input {\n display: flex;\n flex-direction: column;\n }\n .kol-form-field__input--orientation-horizontal {\n flex-direction: row;\n flex-wrap: wrap;\n align-items: flex-start;\n }\n .kol-form-field--disabled {\n opacity: unset;\n }\n .kol-input-radio {\n display: flex;\n position: relative;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n cursor: pointer;\n }\n .kol-input-radio__input {\n border-style: solid;\n border-radius: 100%;\n display: flex;\n width: var(--input-size);\n min-width: var(--input-size);\n height: var(--input-size);\n min-height: var(--input-size);\n margin: 0;\n padding: 0;\n border-width: var(--border-width);\n appearance: none;\n cursor: pointer;\n }\n .kol-input-radio__input:before {\n border-radius: 100%;\n width: calc(var(--input-size) / 2);\n height: calc(var(--input-size) / 2);\n margin: auto;\n content: \"\";\n }\n .kol-input-radio__input:checked:before {\n background-color: black;\n }\n @media (forced-colors: active) {\n .kol-input-radio__input:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n .kol-input-radio__input:disabled {\n cursor: not-allowed;\n }\n .kol-input-radio--disabled {\n cursor: not-allowed;\n }\n}";
|
|
27279
|
+
const defaultStyleCss$q = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-field-control {\n display: grid;\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: left;\n grid-template-areas: \"input label\";\n grid-template-columns: auto 1fr;\n grid-template-rows: auto;\n }\n .kol-field-control:has(.kol-field-control__hint) {\n grid-template-areas: \"input label\" \"hint hint\";\n grid-template-columns: auto 1fr;\n grid-template-rows: auto auto;\n }\n .kol-field-control--label-align-left:not(.kol-field-control--hide-label) {\n grid-template-areas: \"label input\";\n grid-template-columns: 1fr auto;\n grid-template-rows: auto;\n }\n .kol-field-control--label-align-left:not(.kol-field-control--hide-label):has(.kol-field-control__hint) {\n grid-template-areas: \"label input\" \"hint hint\";\n grid-template-columns: 1fr auto;\n grid-template-rows: auto auto;\n }\n .kol-field-control__input {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-area: input;\n }\n .kol-field-control__label {\n display: flex;\n min-height: var(--a11y-min-size);\n flex-grow: 1;\n align-items: center;\n cursor: pointer;\n grid-area: label;\n }\n .kol-field-control__label--visually-hidden {\n display: none;\n height: 0;\n margin: 0;\n padding: 0;\n visibility: hidden;\n }\n .kol-field-control__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-field-control__hint {\n grid-area: hint;\n }\n .kol-field-control--disabled .kol-field-control__label {\n cursor: not-allowed;\n }\n .kol-field-control--required .kol-field-control__label-text:has(.kol-span__slot[hidden])::after,\n .kol-field-control--required .kol-field-control .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-form-field {\n --border-width: 2px;\n --input-size: 1.5em;\n }\n .kol-form-field__label {\n display: contents;\n }\n .kol-form-field__label-text {\n display: ruby;\n }\n .kol-form-field__input {\n display: flex;\n flex-direction: column;\n }\n .kol-form-field__input--orientation-horizontal {\n flex-direction: row;\n flex-wrap: wrap;\n align-items: flex-start;\n }\n .kol-form-field--disabled {\n opacity: unset;\n }\n .kol-input-radio {\n display: flex;\n position: relative;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n cursor: pointer;\n }\n .kol-input-radio__input {\n border-style: solid;\n border-radius: 100%;\n display: flex;\n width: var(--input-size);\n min-width: var(--input-size);\n height: var(--input-size);\n min-height: var(--input-size);\n margin: 0;\n padding: 0;\n border-width: var(--border-width);\n appearance: none;\n cursor: pointer;\n }\n .kol-input-radio__input:before {\n border-radius: 100%;\n width: calc(var(--input-size) / 2);\n height: calc(var(--input-size) / 2);\n margin: auto;\n content: \"\";\n }\n .kol-input-radio__input:checked:before {\n background-color: black;\n }\n @media (forced-colors: active) {\n .kol-input-radio__input:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n .kol-input-radio__input:disabled {\n cursor: not-allowed;\n }\n .kol-input-radio--disabled {\n cursor: not-allowed;\n }\n}";
|
|
27289
27280
|
|
|
27290
27281
|
class KolInputRadio extends BaseFormFieldWebComponent {
|
|
27291
27282
|
constructor(hostRef) {
|
|
@@ -27629,7 +27620,7 @@ const BEM_CLASS_INPUT_RANGE__INPUT_RANGE = inputRangeBem('input', { range: true
|
|
|
27629
27620
|
const BEM_CLASS_INPUT_RANGE__INPUTS_WRAPPER = inputRangeBem('inputs-wrapper');
|
|
27630
27621
|
const InputRangeInputsFC = ({ max, min }, children) => (hAsync("div", { class: BEM_CLASS_INPUT_RANGE__INPUTS_WRAPPER, style: { '--kolibri-input-range--input-number--width': `calc(${Math.max(String(max !== null && max !== void 0 ? max : 100).length, String(min !== null && min !== void 0 ? min : 0).length, 4)}ch + 2em)` } }, children));
|
|
27631
27622
|
|
|
27632
|
-
const defaultStyleCss$p = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-input-range__inputs-wrapper {\n display: flex;\n flex-grow: 1;\n flex-direction: row;\n flex-wrap: wrap;\n align-items: center;\n }\n .kol-input-range__input--number {\n width: var(--kolibri-input-range--input-number--width);\n text-align: right;\n }\n .kol-input-range__input--range {\n background-color: white;\n display: inline-block;\n /* Design-Hack - related with flex-grow */\n width: 0;\n min-width: calc(128 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n margin: 0;\n padding: 0;\n flex-grow: 1;\n line-height: 1.5;\n appearance: none;\n border: 1px solid black;\n }\n .kol-input-range__input:not(:disabled).kol-input-range__input--range::-webkit-slider-thumb {\n cursor: pointer;\n }\n .kol-input-range__input--range::-webkit-slider-thumb {\n background-color: black;\n border-radius: 20px;\n width: calc(20 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(20 * 1rem / var(--kolibri-root-font-size, 16));\n -webkit-appearance: none;\n }\n @media (prefers-contrast: more) or (forced-colors: active) {\n .kol-input-range__input--range::-webkit-slider-thumb {\n outline: 1px solid currentColor;\n }\n }\n .kol-input-range__input:not(:disabled).kol-input-range__input--range::-moz-range-thumb {\n cursor: pointer;\n }\n .kol-input-range__input--range::-moz-range-thumb {\n background-color: black;\n border-radius: 20px;\n width: calc(20 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(20 * 1rem / var(--kolibri-root-font-size, 16));\n -moz-appearance: none;\n }\n}";
|
|
27623
|
+
const defaultStyleCss$p = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-input-range__inputs-wrapper {\n display: flex;\n flex-grow: 1;\n flex-direction: row;\n flex-wrap: wrap;\n align-items: center;\n }\n .kol-input-range__input--number {\n width: var(--kolibri-input-range--input-number--width);\n text-align: right;\n }\n .kol-input-range__input--range {\n background-color: white;\n display: inline-block;\n /* Design-Hack - related with flex-grow */\n width: 0;\n min-width: calc(128 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n margin: 0;\n padding: 0;\n flex-grow: 1;\n line-height: 1.5;\n appearance: none;\n border: 1px solid black;\n }\n .kol-input-range__input:not(:disabled).kol-input-range__input--range::-webkit-slider-thumb {\n cursor: pointer;\n }\n .kol-input-range__input--range::-webkit-slider-thumb {\n background-color: black;\n border-radius: 20px;\n width: calc(20 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(20 * 1rem / var(--kolibri-root-font-size, 16));\n -webkit-appearance: none;\n }\n @media (prefers-contrast: more) or (forced-colors: active) {\n .kol-input-range__input--range::-webkit-slider-thumb {\n outline: 1px solid currentColor;\n }\n }\n .kol-input-range__input:not(:disabled).kol-input-range__input--range::-moz-range-thumb {\n cursor: pointer;\n }\n .kol-input-range__input--range::-moz-range-thumb {\n background-color: black;\n border-radius: 20px;\n width: calc(20 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(20 * 1rem / var(--kolibri-root-font-size, 16));\n -moz-appearance: none;\n }\n}";
|
|
27633
27624
|
|
|
27634
27625
|
class KolInputRange extends BaseFormFieldWebComponent {
|
|
27635
27626
|
constructor(hostRef) {
|
|
@@ -27913,7 +27904,7 @@ const inputTextPropsConfig = {
|
|
|
27913
27904
|
optional: [...textInputBasePropsConfig.optional, inputTextTypeProp, spellCheckProp, suggestionsProp],
|
|
27914
27905
|
};
|
|
27915
27906
|
|
|
27916
|
-
const defaultStyleCss$o = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n input[type=search]::-webkit-search-cancel-button {\n display: none;\n }\n .kol-input-text__clear-button--hidden {\n display: none;\n }\n}";
|
|
27907
|
+
const defaultStyleCss$o = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n input[type=search]::-webkit-search-cancel-button {\n display: none;\n }\n .kol-input-text__clear-button--hidden {\n display: none;\n }\n}";
|
|
27917
27908
|
|
|
27918
27909
|
class KolInputText extends BaseTextInputWebComponent {
|
|
27919
27910
|
constructor(hostRef) {
|
|
@@ -28430,7 +28421,7 @@ class BaseLinkWebComponent extends BaseWebComponent {
|
|
|
28430
28421
|
}
|
|
28431
28422
|
}
|
|
28432
28423
|
|
|
28433
|
-
const defaultStyleCss$m = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-link__icon {\n display: inline-flex;\n }\n}";
|
|
28424
|
+
const defaultStyleCss$m = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-link__icon {\n display: inline-flex;\n }\n}";
|
|
28434
28425
|
|
|
28435
28426
|
class KolLink extends BaseLinkWebComponent {
|
|
28436
28427
|
constructor(hostRef) {
|
|
@@ -28585,7 +28576,7 @@ __decorate([
|
|
|
28585
28576
|
delegateFocus('ctaRef')
|
|
28586
28577
|
], KolLink.prototype, "focus", null);
|
|
28587
28578
|
|
|
28588
|
-
const defaultStyleCss$l = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-link__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-link__interactive-element::before {\n content: \"\";\n }\n .kol-link__text {\n flex: 1 0 100%;\n }\n .kol-link {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-link__tooltip {\n height: 0;\n }\n .kol-link--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-link--external-link .kol-link__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n}";
|
|
28579
|
+
const defaultStyleCss$l = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-link__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-link__interactive-element::before {\n content: \"\";\n }\n .kol-link__text {\n flex: 1 0 100%;\n }\n .kol-link {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-link__tooltip {\n height: 0;\n }\n .kol-link--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-link--external-link .kol-link__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n}";
|
|
28589
28580
|
|
|
28590
28581
|
class KolLinkButton extends BaseLinkWebComponent {
|
|
28591
28582
|
constructor(hostRef) {
|
|
@@ -28932,7 +28923,7 @@ class KolMeter extends BaseWebComponent {
|
|
|
28932
28923
|
}; }
|
|
28933
28924
|
}
|
|
28934
28925
|
|
|
28935
|
-
const defaultStyleCss$j = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-dialog,\n .kol-modal {\n min-height: var(--a11y-min-size);\n padding: 0;\n border: 0;\n /* Prevent scroll chaining from scrollable dialog content to the page. */\n overscroll-behavior: contain;\n }\n .kol-dialog__close-button,\n .kol-modal__close-button {\n position: absolute;\n top: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n right: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n }\n}";
|
|
28926
|
+
const defaultStyleCss$j = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-dialog,\n .kol-modal {\n min-height: var(--a11y-min-size);\n padding: 0;\n border: 0;\n /* Prevent scroll chaining from scrollable dialog content to the page. */\n overscroll-behavior: contain;\n }\n .kol-dialog__close-button,\n .kol-modal__close-button {\n position: absolute;\n top: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n right: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n }\n}";
|
|
28936
28927
|
|
|
28937
28928
|
class KolModal extends BaseDialogWebComponent {
|
|
28938
28929
|
constructor(hostRef) {
|
|
@@ -29270,7 +29261,7 @@ const NavFC = ({ collapsible, compact, expandedChildren, getButtonFcProps, getLi
|
|
|
29270
29261
|
_tooltipAlign: 'right',
|
|
29271
29262
|
}))))))));
|
|
29272
29263
|
|
|
29273
|
-
const defaultStyleCss$i = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-nav {\n display: grid;\n place-items: center;\n }\n .kol-nav:not(.kol-nav--is-compact) .kol-nav__navigation {\n width: 100%;\n }\n .kol-nav__navigation .kol-span {\n width: 100%;\n justify-content: flex-start;\n }\n .kol-nav__navigation .kol-span__container {\n width: 100%;\n }\n .kol-nav__navigation .kol-span__container .kol-span__label {\n flex: 1;\n }\n .kol-nav__list {\n display: flex;\n margin: 0;\n padding: 0;\n flex-direction: column;\n list-style: none;\n }\n .kol-nav__entry-wrapper {\n display: flex;\n }\n .kol-nav__entry {\n flex-grow: 1;\n }\n .kol-button {\n text-align: left;\n }\n}";
|
|
29264
|
+
const defaultStyleCss$i = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-nav {\n display: grid;\n place-items: center;\n }\n .kol-nav:not(.kol-nav--is-compact) .kol-nav__navigation {\n width: 100%;\n }\n .kol-nav__navigation .kol-span {\n width: 100%;\n justify-content: flex-start;\n }\n .kol-nav__navigation .kol-span__container {\n width: 100%;\n }\n .kol-nav__navigation .kol-span__container .kol-span__label {\n flex: 1;\n }\n .kol-nav__list {\n display: flex;\n margin: 0;\n padding: 0;\n flex-direction: column;\n list-style: none;\n }\n .kol-nav__entry-wrapper {\n display: flex;\n }\n .kol-nav__entry {\n flex-grow: 1;\n }\n .kol-button {\n text-align: left;\n }\n}";
|
|
29274
29265
|
|
|
29275
29266
|
class KolNav extends BaseWebComponent {
|
|
29276
29267
|
constructor(hostRef) {
|
|
@@ -29519,13 +29510,18 @@ const SelectOptionListFC = ({ preKey, options, disabled, value: selectedValue, O
|
|
|
29519
29510
|
return null;
|
|
29520
29511
|
}
|
|
29521
29512
|
return (hAsync(Fragment, null, options.map((option, index) => {
|
|
29513
|
+
var _a;
|
|
29522
29514
|
const key = [preKey, `-${index}`].join('');
|
|
29523
29515
|
if ('options' in option) {
|
|
29516
|
+
if (!((_a = option.options) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
29517
|
+
return null;
|
|
29518
|
+
}
|
|
29519
|
+
const isOptgroupDisabled = Boolean(disabled || option.disabled);
|
|
29524
29520
|
const { label } = option, other = __rest(option, ["label"]);
|
|
29525
|
-
return (hAsync("optgroup", Object.assign({ class: selectBem('optgroup', { disabled:
|
|
29521
|
+
return (hAsync("optgroup", Object.assign({ class: selectBem('optgroup', { disabled: isOptgroupDisabled }), key: key }, OptionGroupProps, { label: label === null || label === void 0 ? void 0 : label.toString(), disabled: isOptgroupDisabled }), hAsync(SelectOptionListFC, Object.assign({ OptionGroupProps: OptionGroupProps, OptionProps: OptionProps, value: selectedValue, preKey: key }, other, { disabled: isOptgroupDisabled }))));
|
|
29526
29522
|
}
|
|
29527
29523
|
if ('value' in option) {
|
|
29528
|
-
return hAsync(SelectOptionFC, Object.assign({ key: key }, OptionProps, { index: key, selectedValue: selectedValue }, option));
|
|
29524
|
+
return (hAsync(SelectOptionFC, Object.assign({ key: key }, OptionProps, { index: key, selectedValue: selectedValue }, option, { disabled: Boolean(disabled || option.disabled) })));
|
|
29529
29525
|
}
|
|
29530
29526
|
return null;
|
|
29531
29527
|
})));
|
|
@@ -29533,7 +29529,7 @@ const SelectOptionListFC = ({ preKey, options, disabled, value: selectedValue, O
|
|
|
29533
29529
|
const SelectFC = (props) => {
|
|
29534
29530
|
const { class: classNames, msg, touched, disabled, required, options, value, OptionProps, OptionGroupProps, ariaDescribedBy, hideLabel, label } = props, other = __rest(props, ["class", "msg", "touched", "disabled", "required", "options", "value", "OptionProps", "OptionGroupProps", "ariaDescribedBy", "hideLabel", "label"]);
|
|
29535
29531
|
const selectProps = Object.assign(Object.assign({ class: clsx(selectBem(Object.assign({ disabled: Boolean(disabled), required: Boolean(required), touched: Boolean(touched) }, (isMsgDefinedAndInputTouched(msg, touched) ? { [getMsgType(msg)]: true } : {}))), classNames), required: required, disabled: disabled }, getDefaultInputProps({ ariaDescribedBy, hideLabel, label })), other);
|
|
29536
|
-
return (hAsync("select", Object.assign({}, selectProps), hAsync(SelectOptionListFC, {
|
|
29532
|
+
return (hAsync("select", Object.assign({}, selectProps), hAsync(SelectOptionListFC, { OptionGroupProps: OptionGroupProps, OptionProps: OptionProps, disabled: disabled, options: options, value: value })));
|
|
29537
29533
|
};
|
|
29538
29534
|
|
|
29539
29535
|
const assertSelectValueMatchesMultiplicity = (value, multiple, source) => {
|
|
@@ -29547,7 +29543,9 @@ const assertSelectValueMatchesMultiplicity = (value, multiple, source) => {
|
|
|
29547
29543
|
throw new Error(`↑ The schema for the property (_value) is not valid for single mode. Expected a single value. The value will not be changed. (${source} = ${JSON.stringify(value)})`);
|
|
29548
29544
|
}
|
|
29549
29545
|
};
|
|
29550
|
-
const flattenSelectOptions = (options) => options.flatMap((entry) =>
|
|
29546
|
+
const flattenSelectOptions = (options, groupDisabled = false) => options.flatMap((entry) => 'options' in entry && Array.isArray(entry.options)
|
|
29547
|
+
? flattenSelectOptions(entry.options, Boolean(groupDisabled || entry.disabled))
|
|
29548
|
+
: [Object.assign(Object.assign({}, entry), { disabled: Boolean(groupDisabled || entry.disabled) })]);
|
|
29551
29549
|
const normalizeSelectValue = (value, options, multiple) => {
|
|
29552
29550
|
if (options.length === 0) {
|
|
29553
29551
|
return value;
|
|
@@ -29998,7 +29996,7 @@ const createPaginationItem = (options) => {
|
|
|
29998
29996
|
return item;
|
|
29999
29997
|
};
|
|
30000
29998
|
|
|
30001
|
-
const defaultStyleCss$h = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n padding: 0;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select[multiple][size=\"1\"] {\n height: 2.75em;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select[multiple] option {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n }\n .kol-select[multiple][size=\"1\"] option::checkmark {\n height: 100%;\n }\n .kol-select[multiple][size=\"1\"] option:checked::before {\n display: none;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-pagination {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n container: paging/inline-size;\n }\n .kol-pagination__navigation-list {\n display: inline-flex;\n margin: 0;\n padding: 0;\n flex-wrap: wrap;\n align-items: center;\n list-style: none;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n .kol-pagination__page-size-select .kol-form-field-select {\n align-items: center;\n grid-template-columns: 1fr max-content;\n }\n @container paging (width < 600px) {\n .kol-pagination:has(.kol-pagination__button--first) li:has(.kol-pagination__button--numbers),\n .kol-pagination:has(.kol-pagination__button--first) li:has(.kol-pagination__separator) {\n display: none;\n }\n }\n}";
|
|
29999
|
+
const defaultStyleCss$h = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n padding: 0;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select[multiple][size=\"1\"] {\n height: 2.75em;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select[multiple] option {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n }\n .kol-select[multiple][size=\"1\"] option::checkmark {\n height: 100%;\n }\n .kol-select[multiple][size=\"1\"] option:checked::before {\n display: none;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-pagination {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n container: paging/inline-size;\n }\n .kol-pagination__navigation-list {\n display: inline-flex;\n margin: 0;\n padding: 0;\n flex-wrap: wrap;\n align-items: center;\n list-style: none;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n .kol-pagination__page-size-select .kol-form-field-select {\n align-items: center;\n grid-template-columns: 1fr max-content;\n }\n @container paging (width < 600px) {\n .kol-pagination:has(.kol-pagination__button--first) li:has(.kol-pagination__button--numbers),\n .kol-pagination:has(.kol-pagination__button--first) li:has(.kol-pagination__separator) {\n display: none;\n }\n }\n}";
|
|
30002
30000
|
|
|
30003
30001
|
class KolPagination extends BaseWebComponent {
|
|
30004
30002
|
constructor(hostRef) {
|
|
@@ -30181,7 +30179,7 @@ class BasePopoverButtonWebComponent extends BaseButtonWebComponent {
|
|
|
30181
30179
|
}
|
|
30182
30180
|
}
|
|
30183
30181
|
|
|
30184
|
-
const defaultStyleCss$g = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-popover-button--inline .kol-button,\n .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n}";
|
|
30182
|
+
const defaultStyleCss$g = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-popover-button--inline .kol-button,\n .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n}";
|
|
30185
30183
|
|
|
30186
30184
|
class KolPopoverButton extends BasePopoverButtonWebComponent {
|
|
30187
30185
|
constructor(hostRef) {
|
|
@@ -30195,7 +30193,6 @@ class KolPopoverButton extends BasePopoverButtonWebComponent {
|
|
|
30195
30193
|
this._popoverAlign = 'bottom';
|
|
30196
30194
|
this._tooltipAlign = 'top';
|
|
30197
30195
|
this._type = 'button';
|
|
30198
|
-
this._variant = 'normal';
|
|
30199
30196
|
this.initFormAssociation();
|
|
30200
30197
|
}
|
|
30201
30198
|
watchAccessKey(value) {
|
|
@@ -30287,7 +30284,7 @@ class KolPopoverButton extends BasePopoverButtonWebComponent {
|
|
|
30287
30284
|
this.destroyPopover();
|
|
30288
30285
|
}
|
|
30289
30286
|
render() {
|
|
30290
|
-
return hAsync(Host, { key: '
|
|
30287
|
+
return hAsync(Host, { key: 'c535686a8f7ef3b64fd19fe0632afde1d3b9001b' }, this.renderPopoverButtonFC());
|
|
30291
30288
|
}
|
|
30292
30289
|
get host() { return getElement(this); }
|
|
30293
30290
|
static get watchers() { return {
|
|
@@ -30543,7 +30540,7 @@ class KolQuote extends BaseWebComponent {
|
|
|
30543
30540
|
}; }
|
|
30544
30541
|
}
|
|
30545
30542
|
|
|
30546
|
-
const defaultStyleCss$d = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n padding: 0;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select[multiple][size=\"1\"] {\n height: 2.75em;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select[multiple] option {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n }\n .kol-select[multiple][size=\"1\"] option::checkmark {\n height: 100%;\n }\n .kol-select[multiple][size=\"1\"] option:checked::before {\n display: none;\n }\n}";
|
|
30543
|
+
const defaultStyleCss$d = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n padding: 0;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select[multiple][size=\"1\"] {\n height: 2.75em;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select[multiple] option {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n }\n .kol-select[multiple][size=\"1\"] option::checkmark {\n height: 100%;\n }\n .kol-select[multiple][size=\"1\"] option:checked::before {\n display: none;\n }\n}";
|
|
30547
30544
|
|
|
30548
30545
|
class KolSelect extends BaseSelectWebComponent {
|
|
30549
30546
|
constructor(hostRef) {
|
|
@@ -30771,7 +30768,7 @@ const BEM_CLASS_SINGLE_SELECT__NO_RESULTS_MESSAGE = singleSelectBem('no-results-
|
|
|
30771
30768
|
const SingleSelectToggleFC = ({ disabled, handleClick }) => (hAsync(IconFC, { icons: "kolicon-chevron-down", label: "", class: customSuggestionsToggleBem({ disabled }), onClick: handleClick }));
|
|
30772
30769
|
const SingleSelectNoResultsFC = ({ message }) => (hAsync("li", { class: BEM_CLASS_SINGLE_SELECT__NO_RESULTS_MESSAGE, role: "alert" }, message, ' '));
|
|
30773
30770
|
|
|
30774
|
-
const defaultStyleCss$c = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-custom-suggestions-option {\n line-height: 1.5;\n white-space: normal;\n overflow-wrap: break-word;\n /* The `not-allowed` reset for disabled controls lives in `kol-global`, which loses to\n `kol-component` whatever the specificity (see `_layer-order.scss`). An unguarded pointer\n therefore wins and makes a dead option look selectable, focused or not. */\n }\n .kol-custom-suggestions-option:not(.kol-custom-suggestions-option--disabled) {\n cursor: pointer;\n }\n .kol-custom-suggestions-options-group--cursor-hidden .kol-custom-suggestions-option {\n cursor: none !important;\n }\n .kol-custom-suggestions-option--disabled, .kol-custom-suggestions-option--disabled * {\n cursor: not-allowed;\n }\n .kol-custom-suggestions-options-group {\n background-color: white;\n display: block;\n position: absolute;\n z-index: 2;\n max-height: calc(250 * 1rem / var(--kolibri-root-font-size, 16));\n margin: 0;\n padding: 0;\n overflow-x: hidden;\n overflow-y: auto;\n list-style-type: none;\n }\n .kol-input-container:has(.kol-custom-suggestions-options-group--open) {\n z-index: 10;\n }\n .kol-custom-suggestions-toggle {\n display: flex;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n cursor: default;\n }\n .kol-custom-suggestions-toggle.kol-custom-suggestions-toggle--disabled {\n cursor: not-allowed;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-single-select {\n /* Scoped to the group that holds the clear button: the info popover in the label renders a `.kol-button` as well. */\n }\n .kol-single-select__group .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-single-select__group :host {\n display: inline-block;\n }\n .kol-single-select__group .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-single-select__group .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-single-select__group .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-single-select__group .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-single-select__group .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-single-select__group .kol-button__tooltip {\n height: 0;\n }\n .kol-single-select__group .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-single-select__group .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-single-select__no-results-message {\n display: flex;\n min-height: calc(50 * 1rem / var(--kolibri-root-font-size, 16));\n align-items: center;\n justify-content: center;\n cursor: default;\n }\n .kol-single-select .kol-custom-suggestions-options-group {\n max-height: calc(40 * 1rem / var(--kolibri-root-font-size, 16) * var(--visible-options, 5) + 2 * 1rem / var(--kolibri-root-font-size, 16)) !important;\n }\n .kol-single-select--open .kol-custom-suggestions-toggle {\n transform: rotate(180deg);\n }\n .kol-custom-suggestions-toggle:not(.kol-custom-suggestions-toggle--disabled) {\n cursor: pointer;\n }\n}";
|
|
30771
|
+
const defaultStyleCss$c = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-custom-suggestions-option {\n line-height: 1.5;\n white-space: normal;\n overflow-wrap: break-word;\n /* The `not-allowed` reset for disabled controls lives in `kol-global`, which loses to\n `kol-component` whatever the specificity (see `_layer-order.scss`). An unguarded pointer\n therefore wins and makes a dead option look selectable, focused or not. */\n }\n .kol-custom-suggestions-option:not(.kol-custom-suggestions-option--disabled) {\n cursor: pointer;\n }\n .kol-custom-suggestions-options-group--cursor-hidden .kol-custom-suggestions-option {\n cursor: none !important;\n }\n .kol-custom-suggestions-option--disabled, .kol-custom-suggestions-option--disabled * {\n cursor: not-allowed;\n }\n .kol-custom-suggestions-options-group {\n background-color: white;\n display: block;\n position: absolute;\n z-index: 2;\n max-height: calc(250 * 1rem / var(--kolibri-root-font-size, 16));\n margin: 0;\n padding: 0;\n overflow-x: hidden;\n overflow-y: auto;\n list-style-type: none;\n }\n .kol-input-container:has(.kol-custom-suggestions-options-group--open) {\n z-index: 10;\n }\n .kol-custom-suggestions-toggle {\n display: flex;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n cursor: default;\n }\n .kol-custom-suggestions-toggle.kol-custom-suggestions-toggle--disabled {\n cursor: not-allowed;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input {\n background-color: transparent;\n width: 100%;\n min-width: var(--a11y-min-size);\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-single-select {\n /* Scoped to the group that holds the clear button: the info popover in the label renders a `.kol-button` as well. */\n }\n .kol-single-select__group .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-single-select__group :host {\n display: inline-block;\n }\n .kol-single-select__group .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-single-select__group .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-single-select__group .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-single-select__group .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-single-select__group .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-single-select__group .kol-button__tooltip {\n height: 0;\n }\n .kol-single-select__group .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-single-select__group .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-single-select__no-results-message {\n display: flex;\n min-height: calc(50 * 1rem / var(--kolibri-root-font-size, 16));\n align-items: center;\n justify-content: center;\n cursor: default;\n }\n .kol-single-select .kol-custom-suggestions-options-group {\n max-height: calc(40 * 1rem / var(--kolibri-root-font-size, 16) * var(--visible-options, 5) + 2 * 1rem / var(--kolibri-root-font-size, 16)) !important;\n }\n .kol-single-select--open .kol-custom-suggestions-toggle {\n transform: rotate(180deg);\n }\n .kol-custom-suggestions-toggle:not(.kol-custom-suggestions-toggle--disabled) {\n cursor: pointer;\n }\n}";
|
|
30775
30772
|
|
|
30776
30773
|
class KolSingleSelect extends BaseListboxWebComponent {
|
|
30777
30774
|
constructor(hostRef) {
|
|
@@ -31435,7 +31432,7 @@ const createSkipNavLinkItem = (link, getHost) => {
|
|
|
31435
31432
|
};
|
|
31436
31433
|
};
|
|
31437
31434
|
|
|
31438
|
-
const defaultStyleCss$b = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-link__icon {\n display: inline-flex;\n }\n .kol-skip-nav__list {\n display: grid;\n place-items: center;\n list-style: none;\n }\n .kol-skip-nav__list-item {\n height: 0;\n }\n .kol-skip-nav .kol-link {\n position: absolute;\n left: calc(-99999 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 9999999;\n line-height: 1;\n /* The link skeleton renders the focusable interactive element as\n `.kol-link__interactive-element` inside the `.kol-link` wrapper — the wrapper itself is\n never focused, so the wrapper must come back on-canvas via `:focus-within`. */\n }\n .kol-skip-nav .kol-link:focus-within {\n position: unset;\n left: unset;\n }\n .kol-skip-nav .kol-link__interactive-element:focus {\n background-color: white;\n }\n}";
|
|
31435
|
+
const defaultStyleCss$b = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-link__icon {\n display: inline-flex;\n }\n .kol-skip-nav__list {\n display: grid;\n place-items: center;\n list-style: none;\n }\n .kol-skip-nav__list-item {\n height: 0;\n }\n .kol-skip-nav .kol-link {\n position: absolute;\n left: calc(-99999 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 9999999;\n line-height: 1;\n /* The link skeleton renders the focusable interactive element as\n `.kol-link__interactive-element` inside the `.kol-link` wrapper — the wrapper itself is\n never focused, so the wrapper must come back on-canvas via `:focus-within`. */\n }\n .kol-skip-nav .kol-link:focus-within {\n position: unset;\n left: unset;\n }\n .kol-skip-nav .kol-link__interactive-element:focus {\n background-color: white;\n }\n}";
|
|
31439
31436
|
|
|
31440
31437
|
class KolSkipNav extends BaseWebComponent {
|
|
31441
31438
|
constructor(hostRef) {
|
|
@@ -31588,7 +31585,7 @@ const SplitButtonFC = (props) => {
|
|
|
31588
31585
|
return (hAsync(BemRootNodeFC, { block: "kol-split-button", class: hostClass }, hAsync("div", { class: BEM_CLASS_SPLIT_BUTTON__ROOT }, hAsync("div", { class: clsx(BEM_CLASS_SPLIT_BUTTON__BUTTON, buttonWrapperClass) }, hAsync(ButtonFC, Object.assign({}, buttonProps))), hAsync("div", { class: BEM_CLASS_SPLIT_BUTTON__HORIZONTAL_LINE }), hAsync("div", { class: BEM_CLASS_SPLIT_BUTTON__SECONDARY_BUTTON, ref: refDropdown }, hAsync(PopoverButtonFC, Object.assign({}, dropdownProps))))));
|
|
31589
31586
|
};
|
|
31590
31587
|
|
|
31591
|
-
const defaultStyleCss$9 = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-popover-button--inline .kol-button,\n .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-split-button {\n display: flex;\n position: relative;\n width: 100%;\n }\n .kol-split-button__root {\n display: flex;\n position: relative;\n width: 100%;\n align-items: stretch;\n }\n .kol-split-button__button {\n min-width: 0;\n flex: 1 1 auto;\n text-align: left;\n }\n}";
|
|
31588
|
+
const defaultStyleCss$9 = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-popover-button--inline .kol-button,\n .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-split-button {\n display: flex;\n position: relative;\n width: 100%;\n }\n .kol-split-button__root {\n display: flex;\n position: relative;\n width: 100%;\n align-items: stretch;\n }\n .kol-split-button__button {\n min-width: 0;\n flex: 1 1 auto;\n text-align: left;\n }\n}";
|
|
31592
31589
|
|
|
31593
31590
|
class KolSplitButton extends BaseButtonWebComponent {
|
|
31594
31591
|
constructor(hostRef) {
|
|
@@ -32960,7 +32957,7 @@ class BaseTableStatelessWebComponent extends BaseWebComponent {
|
|
|
32960
32957
|
}
|
|
32961
32958
|
}
|
|
32962
32959
|
|
|
32963
|
-
const defaultStyleCss$8 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n @keyframes rotate {\n to {\n transform: rotate(1turn);\n }\n }\n @keyframes growingCircle {\n 0% {\n opacity: 0.5;\n border-color: white;\n clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0);\n }\n 25% {\n opacity: 0.75;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0);\n }\n 50% {\n opacity: 1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%);\n }\n 75% {\n opacity: 1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%);\n }\n 100% {\n opacity: 0.1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0);\n }\n }\n .kol-spin__spinner--cycle {\n width: calc(var(--kol-spin-size, 48) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(var(--kol-spin-size, 48) * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-spin__spinner--cycle .kol-spin__loader {\n border-radius: 50%;\n display: block;\n position: relative;\n width: 100%;\n height: 100%;\n animation: 2s linear infinite rotate;\n }\n @media (prefers-reduced-motion) {\n .kol-spin__spinner--cycle .kol-spin__loader {\n animation-duration: 4s !important;\n }\n }\n .kol-spin__spinner--cycle .kol-spin__loader::before {\n border-radius: 50%;\n position: absolute;\n inset: 0;\n content: \"\";\n animation: 3s linear infinite growingCircle;\n border: 5px solid var(--kol-spin-color, var(--kol-theme-spin-color, #333));\n }\n @media (prefers-reduced-motion) {\n .kol-spin__spinner--cycle .kol-spin__loader::before {\n animation-duration: 6s !important;\n }\n }\n}\n@layer kol-component {\n @keyframes spin1 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n }\n @keyframes spin2 {\n 0% {\n transform: translate(0, 0);\n }\n 100% {\n transform: translate(calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16)), 0);\n }\n }\n @keyframes spin3 {\n 0% {\n transform: scale(1);\n }\n 100% {\n transform: scale(0);\n }\n }\n /* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion#toning_down_the_animation_scaling */\n @media (prefers-reduced-motion) {\n .kol-spin__spinner-element {\n animation-duration: 2s !important;\n }\n }\n .kol-spin__spinner--dot {\n --kol-spin-border-width: calc(var(--kol-spin-size, 13) / 10);\n width: calc(calc(var(--kol-spin-size, 13) * 3 + 2) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(calc(var(--kol-spin-size, 13) + var(--kol-spin-border-width) * 2) * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element {\n background-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000));\n border-radius: 50%;\n position: absolute;\n top: 1px;\n width: calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16));\n animation-timing-function: cubic-bezier(0, 1, 1, 0);\n border: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16)) solid white;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--1 {\n left: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 0;\n animation: 1s infinite spin1;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--2 {\n left: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n animation: 1s infinite spin2;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--3 {\n left: calc(calc(var(--kol-spin-size, 13) + var(--kol-spin-border-width)) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n animation: 1s infinite spin2;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--neutral {\n opacity: 0.6;\n left: calc(calc(var(--kol-spin-size, 13) * 2 + var(--kol-spin-border-width)) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 0;\n animation: 1s infinite spin3;\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-dialog,\n .kol-modal {\n min-height: var(--a11y-min-size);\n padding: 0;\n border: 0;\n /* Prevent scroll chaining from scrollable dialog content to the page. */\n overscroll-behavior: contain;\n }\n .kol-dialog__close-button,\n .kol-modal__close-button {\n position: absolute;\n top: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n right: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-popover-button--inline .kol-button,\n .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-table-settings {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 1;\n }\n .kol-table-settings .kol-popover-button__popover {\n background: white;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n border-radius: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n border: 1px solid black;\n }\n .kol-table-settings__columns {\n display: grid;\n max-height: calc(200 * 1rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n grid-auto-rows: min-content;\n grid-template-columns: min-content minmax(max-content, 1fr) calc(140 * 1rem / var(--kolibri-root-font-size, 16)) auto auto;\n }\n .kol-table-settings__column {\n display: grid;\n align-items: center;\n grid-template-columns: subgrid;\n grid-column: 1/6;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table {\n --kol-table-selection-col-width: var(--a11y-min-size);\n display: block;\n position: relative;\n max-width: 100%;\n }\n .kol-table:has(.kol-table__focus-element:focus) .kol-table__scroll-container {\n /* @see https://remysharp.com/til/css/focus-ring-default-styles */\n outline: 5px auto Highlight;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: 2px;\n }\n .kol-table__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table__table {\n table-layout: fixed;\n }\n .kol-table__caption {\n min-height: var(--a11y-min-size);\n text-align: start;\n }\n .kol-table__settings:not(:has(~ .kol-table__scroll-container .kol-table__caption)) {\n min-height: var(--a11y-min-size);\n }\n .kol-table__sort-button.kol-button {\n color: inherit;\n }\n .kol-table__sort {\n display: inline-flex;\n align-items: center;\n }\n .kol-table__sort-order {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n .kol-table__body {\n text-align: left;\n }\n .kol-table__body .kol-button__text {\n justify-items: start;\n }\n .kol-table__body:has(.kol-table__loader--shown) {\n position: relative;\n min-height: calc(var(--a11y-min-size) * 3);\n }\n .kol-table__cell--align-left {\n text-align: left;\n }\n .kol-table__cell--align-left .kol-table__sort-button .kol-button__text {\n align-items: start;\n text-align: start;\n }\n .kol-table__cell--align-left .kol-table__cell-actions {\n justify-content: flex-start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-table__sort-button .kol-button__text {\n align-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-table__sort-button .kol-button__text {\n align-items: end;\n text-align: end;\n }\n .kol-table__cell--align-right .kol-table__cell-actions {\n justify-content: flex-end;\n }\n .kol-table__cell--selection {\n background-color: white;\n position: sticky !important;\n left: 0;\n z-index: 2;\n width: var(--kol-table-selection-col-width, auto);\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n white-space: nowrap;\n }\n .kol-table__cell--actions {\n white-space: nowrap;\n }\n .kol-table__cell--actions .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table__cell--actions :host {\n display: inline-block;\n }\n .kol-table__cell--actions .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-table__cell--actions .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-table__cell--actions .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-table__cell--actions .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-table__cell--actions .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-table__cell--actions .kol-button__tooltip {\n height: 0;\n }\n .kol-table__cell--actions .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-table__cell--actions .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-table__cell--actions .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table__cell--actions :host {\n display: inline-block;\n }\n .kol-table__cell--actions .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-table__cell--actions .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-table__cell--actions .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-table__cell--actions .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-table__cell--actions .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-table__cell--actions .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-table__cell--actions .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-table__cell--actions .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-table__cell--actions .kol-link__icon {\n display: inline-flex;\n }\n .kol-table__cell--sticky-left, .kol-table__cell--sticky-right {\n background-color: white;\n position: sticky !important;\n z-index: 1;\n }\n .kol-table__cell--sticky-left:nth-last-child(1 of .kol-table__cell--sticky-left) {\n border-right: 2px solid black;\n }\n .kol-table__cell--sticky-right:nth-child(1 of .kol-table__cell--sticky-left) {\n border-left: 2px solid black;\n }\n .kol-table__cell-actions {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n }\n .kol-table__cell-states {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-start;\n }\n .kol-table__spacer {\n display: none;\n }\n .kol-table__selection {\n position: relative;\n }\n .kol-table__selection-label {\n display: flex;\n position: relative;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n /* The disabled modifier sits on the label, not on the selection wrapper: the former\n `&--disabled` one level up compiled to `.kol-table__selection--disabled`, which the\n component never renders, so the reset never applied. */\n }\n .kol-table__selection-label:not(.kol-table__selection-label--disabled) {\n cursor: pointer;\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n position: absolute;\n inset: auto;\n z-index: 1;\n }\n .kol-table__selection-input {\n border-style: solid;\n margin: 0;\n appearance: none;\n cursor: pointer;\n }\n .kol-table__selection-input:disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-input:before {\n content: \"\";\n }\n .kol-table__selection-input--checkbox {\n background-color: white;\n display: flex;\n position: relative;\n min-width: calc(var(--a11y-min-size) / 2);\n min-height: calc(var(--a11y-min-size) / 2);\n border-width: 2px;\n align-items: center;\n justify-content: center;\n line-height: 1.5;\n }\n .kol-table__selection-input--radio {\n border-radius: 100%;\n display: flex;\n width: 1.5em;\n min-width: 1.5em;\n height: 1.5em;\n min-height: 1.5em;\n padding: 0;\n border-width: 2px;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n width: 0.75em;\n height: 0.75em;\n margin: auto;\n }\n .kol-table__selection-input--radio:checked:before {\n background-color: black;\n }\n @media (forced-colors: active) {\n .kol-table__selection-input--radio:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n .kol-table__loader--shown {\n background: white;\n display: flex;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n align-items: center;\n justify-content: center;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n padding: 0;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select[multiple][size=\"1\"] {\n height: 2.75em;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select[multiple] option {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n }\n .kol-select[multiple][size=\"1\"] option::checkmark {\n height: 100%;\n }\n .kol-select[multiple][size=\"1\"] option:checked::before {\n display: none;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-pagination {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n container: paging/inline-size;\n }\n .kol-pagination__navigation-list {\n display: inline-flex;\n margin: 0;\n padding: 0;\n flex-wrap: wrap;\n align-items: center;\n list-style: none;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n .kol-pagination__page-size-select .kol-form-field-select {\n align-items: center;\n grid-template-columns: 1fr max-content;\n }\n @container paging (width < 600px) {\n .kol-pagination:has(.kol-pagination__button--first) li:has(.kol-pagination__button--numbers),\n .kol-pagination:has(.kol-pagination__button--first) li:has(.kol-pagination__separator) {\n display: none;\n }\n }\n .kol-spin {\n /*\n * The root only groups the spinner and its live region. It generates no box of its own, so\n * both stay layout children of the surrounding container, e.g. the flex container of the\n * table loader.\n */\n display: contents;\n }\n .kol-spin__spinner {\n display: block;\n position: relative;\n }\n}";
|
|
32960
|
+
const defaultStyleCss$8 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n @keyframes rotate {\n to {\n transform: rotate(1turn);\n }\n }\n @keyframes growingCircle {\n 0% {\n opacity: 0.5;\n border-color: white;\n clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0);\n }\n 25% {\n opacity: 0.75;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0);\n }\n 50% {\n opacity: 1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%);\n }\n 75% {\n opacity: 1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%);\n }\n 100% {\n opacity: 0.1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0);\n }\n }\n .kol-spin__spinner--cycle {\n width: calc(var(--kol-spin-size, 48) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(var(--kol-spin-size, 48) * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-spin__spinner--cycle .kol-spin__loader {\n border-radius: 50%;\n display: block;\n position: relative;\n width: 100%;\n height: 100%;\n animation: 2s linear infinite rotate;\n }\n @media (prefers-reduced-motion) {\n .kol-spin__spinner--cycle .kol-spin__loader {\n animation-duration: 4s !important;\n }\n }\n .kol-spin__spinner--cycle .kol-spin__loader::before {\n border-radius: 50%;\n position: absolute;\n inset: 0;\n content: \"\";\n animation: 3s linear infinite growingCircle;\n border: 5px solid var(--kol-spin-color, var(--kol-theme-spin-color, #333));\n }\n @media (prefers-reduced-motion) {\n .kol-spin__spinner--cycle .kol-spin__loader::before {\n animation-duration: 6s !important;\n }\n }\n}\n@layer kol-component {\n @keyframes spin1 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n }\n @keyframes spin2 {\n 0% {\n transform: translate(0, 0);\n }\n 100% {\n transform: translate(calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16)), 0);\n }\n }\n @keyframes spin3 {\n 0% {\n transform: scale(1);\n }\n 100% {\n transform: scale(0);\n }\n }\n /* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion#toning_down_the_animation_scaling */\n @media (prefers-reduced-motion) {\n .kol-spin__spinner-element {\n animation-duration: 2s !important;\n }\n }\n .kol-spin__spinner--dot {\n --kol-spin-border-width: calc(var(--kol-spin-size, 13) / 10);\n width: calc(calc(var(--kol-spin-size, 13) * 3 + 2) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(calc(var(--kol-spin-size, 13) + var(--kol-spin-border-width) * 2) * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element {\n background-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000));\n border-radius: 50%;\n position: absolute;\n top: 1px;\n width: calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16));\n animation-timing-function: cubic-bezier(0, 1, 1, 0);\n border: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16)) solid white;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--1 {\n left: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 0;\n animation: 1s infinite spin1;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--2 {\n left: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n animation: 1s infinite spin2;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--3 {\n left: calc(calc(var(--kol-spin-size, 13) + var(--kol-spin-border-width)) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n animation: 1s infinite spin2;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--neutral {\n opacity: 0.6;\n left: calc(calc(var(--kol-spin-size, 13) * 2 + var(--kol-spin-border-width)) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 0;\n animation: 1s infinite spin3;\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-dialog,\n .kol-modal {\n min-height: var(--a11y-min-size);\n padding: 0;\n border: 0;\n /* Prevent scroll chaining from scrollable dialog content to the page. */\n overscroll-behavior: contain;\n }\n .kol-dialog__close-button,\n .kol-modal__close-button {\n position: absolute;\n top: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n right: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-popover-button--inline .kol-button,\n .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-table-settings {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 1;\n }\n .kol-table-settings .kol-popover-button__popover {\n background: white;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n border-radius: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n border: 1px solid black;\n }\n .kol-table-settings__columns {\n display: grid;\n max-height: calc(200 * 1rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n grid-auto-rows: min-content;\n grid-template-columns: min-content minmax(max-content, 1fr) calc(140 * 1rem / var(--kolibri-root-font-size, 16)) auto auto;\n }\n .kol-table-settings__column {\n display: grid;\n align-items: center;\n grid-template-columns: subgrid;\n grid-column: 1/6;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table {\n --kol-table-selection-col-width: var(--a11y-min-size);\n display: block;\n position: relative;\n max-width: 100%;\n }\n .kol-table:has(.kol-table__focus-element:focus) .kol-table__scroll-container {\n /* @see https://remysharp.com/til/css/focus-ring-default-styles */\n outline: 5px auto Highlight;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: 2px;\n }\n .kol-table__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table__table {\n table-layout: fixed;\n }\n .kol-table__caption {\n min-height: var(--a11y-min-size);\n text-align: start;\n }\n .kol-table__settings:not(:has(~ .kol-table__scroll-container .kol-table__caption)) {\n min-height: var(--a11y-min-size);\n }\n .kol-table__sort-button.kol-button {\n color: inherit;\n }\n .kol-table__sort {\n display: inline-flex;\n align-items: center;\n }\n .kol-table__sort-order {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n .kol-table__body {\n text-align: left;\n }\n .kol-table__body .kol-button__text {\n justify-items: start;\n }\n .kol-table__body:has(.kol-table__loader--shown) {\n position: relative;\n min-height: calc(var(--a11y-min-size) * 3);\n }\n .kol-table__cell--align-left {\n text-align: left;\n }\n .kol-table__cell--align-left .kol-table__sort-button .kol-button__text {\n align-items: start;\n text-align: start;\n }\n .kol-table__cell--align-left .kol-table__cell-actions {\n justify-content: flex-start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-table__sort-button .kol-button__text {\n align-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-table__sort-button .kol-button__text {\n align-items: end;\n text-align: end;\n }\n .kol-table__cell--align-right .kol-table__cell-actions {\n justify-content: flex-end;\n }\n .kol-table__cell--selection {\n background-color: white;\n position: sticky !important;\n left: 0;\n z-index: 2;\n width: var(--kol-table-selection-col-width, auto);\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n white-space: nowrap;\n }\n .kol-table__cell--actions {\n white-space: nowrap;\n }\n .kol-table__cell--actions .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table__cell--actions :host {\n display: inline-block;\n }\n .kol-table__cell--actions .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-table__cell--actions .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-table__cell--actions .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-table__cell--actions .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-table__cell--actions .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-table__cell--actions .kol-button__tooltip {\n height: 0;\n }\n .kol-table__cell--actions .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-table__cell--actions .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-table__cell--actions .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table__cell--actions :host {\n display: inline-block;\n }\n .kol-table__cell--actions .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-table__cell--actions .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-table__cell--actions .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-table__cell--actions .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-table__cell--actions .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-table__cell--actions .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-table__cell--actions .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-table__cell--actions .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-table__cell--actions .kol-link__icon {\n display: inline-flex;\n }\n .kol-table__cell--sticky-left, .kol-table__cell--sticky-right {\n background-color: white;\n position: sticky !important;\n z-index: 1;\n }\n .kol-table__cell--sticky-left:nth-last-child(1 of .kol-table__cell--sticky-left) {\n border-right: 2px solid black;\n }\n .kol-table__cell--sticky-right:nth-child(1 of .kol-table__cell--sticky-left) {\n border-left: 2px solid black;\n }\n .kol-table__cell-actions {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n }\n .kol-table__cell-states {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-start;\n }\n .kol-table__spacer {\n display: none;\n }\n .kol-table__selection {\n position: relative;\n }\n .kol-table__selection-label {\n display: flex;\n position: relative;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n /* The disabled modifier sits on the label, not on the selection wrapper: the former\n `&--disabled` one level up compiled to `.kol-table__selection--disabled`, which the\n component never renders, so the reset never applied. */\n }\n .kol-table__selection-label:not(.kol-table__selection-label--disabled) {\n cursor: pointer;\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n position: absolute;\n inset: auto;\n z-index: 1;\n }\n .kol-table__selection-input {\n border-style: solid;\n margin: 0;\n appearance: none;\n cursor: pointer;\n }\n .kol-table__selection-input:disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-input:before {\n content: \"\";\n }\n .kol-table__selection-input--checkbox {\n background-color: white;\n display: flex;\n position: relative;\n min-width: calc(var(--a11y-min-size) / 2);\n min-height: calc(var(--a11y-min-size) / 2);\n border-width: 2px;\n align-items: center;\n justify-content: center;\n line-height: 1.5;\n }\n .kol-table__selection-input--radio {\n border-radius: 100%;\n display: flex;\n width: 1.5em;\n min-width: 1.5em;\n height: 1.5em;\n min-height: 1.5em;\n padding: 0;\n border-width: 2px;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n width: 0.75em;\n height: 0.75em;\n margin: auto;\n }\n .kol-table__selection-input--radio:checked:before {\n background-color: black;\n }\n @media (forced-colors: active) {\n .kol-table__selection-input--radio:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n .kol-table__loader--shown {\n background: white;\n display: flex;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n align-items: center;\n justify-content: center;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n padding: 0;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select[multiple][size=\"1\"] {\n height: 2.75em;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select[multiple] option {\n display: flex;\n min-height: var(--a11y-min-size);\n align-items: center;\n }\n .kol-select[multiple][size=\"1\"] option::checkmark {\n height: 100%;\n }\n .kol-select[multiple][size=\"1\"] option:checked::before {\n display: none;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-pagination {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n container: paging/inline-size;\n }\n .kol-pagination__navigation-list {\n display: inline-flex;\n margin: 0;\n padding: 0;\n flex-wrap: wrap;\n align-items: center;\n list-style: none;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n .kol-pagination__page-size-select .kol-form-field-select {\n align-items: center;\n grid-template-columns: 1fr max-content;\n }\n @container paging (width < 600px) {\n .kol-pagination:has(.kol-pagination__button--first) li:has(.kol-pagination__button--numbers),\n .kol-pagination:has(.kol-pagination__button--first) li:has(.kol-pagination__separator) {\n display: none;\n }\n }\n .kol-spin {\n /*\n * The root only groups the spinner and its live region. It generates no box of its own, so\n * both stay layout children of the surrounding container, e.g. the flex container of the\n * table loader.\n */\n display: contents;\n }\n .kol-spin__spinner {\n display: block;\n position: relative;\n }\n}";
|
|
32964
32961
|
|
|
32965
32962
|
const PAGINATION_OPTIONS = [10, 20, 50, 100];
|
|
32966
32963
|
class KolTableStateful extends BaseTableStatelessWebComponent {
|
|
@@ -33298,7 +33295,7 @@ class KolTableStateful extends BaseTableStatelessWebComponent {
|
|
|
33298
33295
|
}; }
|
|
33299
33296
|
}
|
|
33300
33297
|
|
|
33301
|
-
const defaultStyleCss$7 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n @keyframes rotate {\n to {\n transform: rotate(1turn);\n }\n }\n @keyframes growingCircle {\n 0% {\n opacity: 0.5;\n border-color: white;\n clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0);\n }\n 25% {\n opacity: 0.75;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0);\n }\n 50% {\n opacity: 1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%);\n }\n 75% {\n opacity: 1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%);\n }\n 100% {\n opacity: 0.1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0);\n }\n }\n .kol-spin__spinner--cycle {\n width: calc(var(--kol-spin-size, 48) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(var(--kol-spin-size, 48) * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-spin__spinner--cycle .kol-spin__loader {\n border-radius: 50%;\n display: block;\n position: relative;\n width: 100%;\n height: 100%;\n animation: 2s linear infinite rotate;\n }\n @media (prefers-reduced-motion) {\n .kol-spin__spinner--cycle .kol-spin__loader {\n animation-duration: 4s !important;\n }\n }\n .kol-spin__spinner--cycle .kol-spin__loader::before {\n border-radius: 50%;\n position: absolute;\n inset: 0;\n content: \"\";\n animation: 3s linear infinite growingCircle;\n border: 5px solid var(--kol-spin-color, var(--kol-theme-spin-color, #333));\n }\n @media (prefers-reduced-motion) {\n .kol-spin__spinner--cycle .kol-spin__loader::before {\n animation-duration: 6s !important;\n }\n }\n}\n@layer kol-component {\n @keyframes spin1 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n }\n @keyframes spin2 {\n 0% {\n transform: translate(0, 0);\n }\n 100% {\n transform: translate(calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16)), 0);\n }\n }\n @keyframes spin3 {\n 0% {\n transform: scale(1);\n }\n 100% {\n transform: scale(0);\n }\n }\n /* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion#toning_down_the_animation_scaling */\n @media (prefers-reduced-motion) {\n .kol-spin__spinner-element {\n animation-duration: 2s !important;\n }\n }\n .kol-spin__spinner--dot {\n --kol-spin-border-width: calc(var(--kol-spin-size, 13) / 10);\n width: calc(calc(var(--kol-spin-size, 13) * 3 + 2) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(calc(var(--kol-spin-size, 13) + var(--kol-spin-border-width) * 2) * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element {\n background-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000));\n border-radius: 50%;\n position: absolute;\n top: 1px;\n width: calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16));\n animation-timing-function: cubic-bezier(0, 1, 1, 0);\n border: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16)) solid white;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--1 {\n left: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 0;\n animation: 1s infinite spin1;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--2 {\n left: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n animation: 1s infinite spin2;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--3 {\n left: calc(calc(var(--kol-spin-size, 13) + var(--kol-spin-border-width)) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n animation: 1s infinite spin2;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--neutral {\n opacity: 0.6;\n left: calc(calc(var(--kol-spin-size, 13) * 2 + var(--kol-spin-border-width)) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 0;\n animation: 1s infinite spin3;\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-dialog,\n .kol-modal {\n min-height: var(--a11y-min-size);\n padding: 0;\n border: 0;\n /* Prevent scroll chaining from scrollable dialog content to the page. */\n overscroll-behavior: contain;\n }\n .kol-dialog__close-button,\n .kol-modal__close-button {\n position: absolute;\n top: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n right: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-popover-button--inline .kol-button,\n .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-table-settings {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 1;\n }\n .kol-table-settings .kol-popover-button__popover {\n background: white;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n border-radius: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n border: 1px solid black;\n }\n .kol-table-settings__columns {\n display: grid;\n max-height: calc(200 * 1rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n grid-auto-rows: min-content;\n grid-template-columns: min-content minmax(max-content, 1fr) calc(140 * 1rem / var(--kolibri-root-font-size, 16)) auto auto;\n }\n .kol-table-settings__column {\n display: grid;\n align-items: center;\n grid-template-columns: subgrid;\n grid-column: 1/6;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table {\n --kol-table-selection-col-width: var(--a11y-min-size);\n display: block;\n position: relative;\n max-width: 100%;\n }\n .kol-table:has(.kol-table__focus-element:focus) .kol-table__scroll-container {\n /* @see https://remysharp.com/til/css/focus-ring-default-styles */\n outline: 5px auto Highlight;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: 2px;\n }\n .kol-table__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table__table {\n table-layout: fixed;\n }\n .kol-table__caption {\n min-height: var(--a11y-min-size);\n text-align: start;\n }\n .kol-table__settings:not(:has(~ .kol-table__scroll-container .kol-table__caption)) {\n min-height: var(--a11y-min-size);\n }\n .kol-table__sort-button.kol-button {\n color: inherit;\n }\n .kol-table__sort {\n display: inline-flex;\n align-items: center;\n }\n .kol-table__sort-order {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n .kol-table__body {\n text-align: left;\n }\n .kol-table__body .kol-button__text {\n justify-items: start;\n }\n .kol-table__body:has(.kol-table__loader--shown) {\n position: relative;\n min-height: calc(var(--a11y-min-size) * 3);\n }\n .kol-table__cell--align-left {\n text-align: left;\n }\n .kol-table__cell--align-left .kol-table__sort-button .kol-button__text {\n align-items: start;\n text-align: start;\n }\n .kol-table__cell--align-left .kol-table__cell-actions {\n justify-content: flex-start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-table__sort-button .kol-button__text {\n align-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-table__sort-button .kol-button__text {\n align-items: end;\n text-align: end;\n }\n .kol-table__cell--align-right .kol-table__cell-actions {\n justify-content: flex-end;\n }\n .kol-table__cell--selection {\n background-color: white;\n position: sticky !important;\n left: 0;\n z-index: 2;\n width: var(--kol-table-selection-col-width, auto);\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n white-space: nowrap;\n }\n .kol-table__cell--actions {\n white-space: nowrap;\n }\n .kol-table__cell--actions .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table__cell--actions :host {\n display: inline-block;\n }\n .kol-table__cell--actions .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-table__cell--actions .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-table__cell--actions .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-table__cell--actions .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-table__cell--actions .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-table__cell--actions .kol-button__tooltip {\n height: 0;\n }\n .kol-table__cell--actions .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-table__cell--actions .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-table__cell--actions .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table__cell--actions :host {\n display: inline-block;\n }\n .kol-table__cell--actions .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-table__cell--actions .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-table__cell--actions .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-table__cell--actions .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-table__cell--actions .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-table__cell--actions .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-table__cell--actions .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-table__cell--actions .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-table__cell--actions .kol-link__icon {\n display: inline-flex;\n }\n .kol-table__cell--sticky-left, .kol-table__cell--sticky-right {\n background-color: white;\n position: sticky !important;\n z-index: 1;\n }\n .kol-table__cell--sticky-left:nth-last-child(1 of .kol-table__cell--sticky-left) {\n border-right: 2px solid black;\n }\n .kol-table__cell--sticky-right:nth-child(1 of .kol-table__cell--sticky-left) {\n border-left: 2px solid black;\n }\n .kol-table__cell-actions {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n }\n .kol-table__cell-states {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-start;\n }\n .kol-table__spacer {\n display: none;\n }\n .kol-table__selection {\n position: relative;\n }\n .kol-table__selection-label {\n display: flex;\n position: relative;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n /* The disabled modifier sits on the label, not on the selection wrapper: the former\n `&--disabled` one level up compiled to `.kol-table__selection--disabled`, which the\n component never renders, so the reset never applied. */\n }\n .kol-table__selection-label:not(.kol-table__selection-label--disabled) {\n cursor: pointer;\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n position: absolute;\n inset: auto;\n z-index: 1;\n }\n .kol-table__selection-input {\n border-style: solid;\n margin: 0;\n appearance: none;\n cursor: pointer;\n }\n .kol-table__selection-input:disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-input:before {\n content: \"\";\n }\n .kol-table__selection-input--checkbox {\n background-color: white;\n display: flex;\n position: relative;\n min-width: calc(var(--a11y-min-size) / 2);\n min-height: calc(var(--a11y-min-size) / 2);\n border-width: 2px;\n align-items: center;\n justify-content: center;\n line-height: 1.5;\n }\n .kol-table__selection-input--radio {\n border-radius: 100%;\n display: flex;\n width: 1.5em;\n min-width: 1.5em;\n height: 1.5em;\n min-height: 1.5em;\n padding: 0;\n border-width: 2px;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n width: 0.75em;\n height: 0.75em;\n margin: auto;\n }\n .kol-table__selection-input--radio:checked:before {\n background-color: black;\n }\n @media (forced-colors: active) {\n .kol-table__selection-input--radio:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n .kol-table__loader--shown {\n background: white;\n display: flex;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n align-items: center;\n justify-content: center;\n }\n .kol-spin {\n /*\n * The root only groups the spinner and its live region. It generates no box of its own, so\n * both stay layout children of the surrounding container, e.g. the flex container of the\n * table loader.\n */\n display: contents;\n }\n .kol-spin__spinner {\n display: block;\n position: relative;\n }\n}";
|
|
33298
|
+
const defaultStyleCss$7 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n/*\n * Link styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`,\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`.\n */\n@layer kol-component {\n @keyframes rotate {\n to {\n transform: rotate(1turn);\n }\n }\n @keyframes growingCircle {\n 0% {\n opacity: 0.5;\n border-color: white;\n clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0);\n }\n 25% {\n opacity: 0.75;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0);\n }\n 50% {\n opacity: 1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%);\n }\n 75% {\n opacity: 1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%);\n }\n 100% {\n opacity: 0.1;\n border-color: var(--kol-spin-color, var(--kol-theme-spin-color, black));\n clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0);\n }\n }\n .kol-spin__spinner--cycle {\n width: calc(var(--kol-spin-size, 48) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(var(--kol-spin-size, 48) * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-spin__spinner--cycle .kol-spin__loader {\n border-radius: 50%;\n display: block;\n position: relative;\n width: 100%;\n height: 100%;\n animation: 2s linear infinite rotate;\n }\n @media (prefers-reduced-motion) {\n .kol-spin__spinner--cycle .kol-spin__loader {\n animation-duration: 4s !important;\n }\n }\n .kol-spin__spinner--cycle .kol-spin__loader::before {\n border-radius: 50%;\n position: absolute;\n inset: 0;\n content: \"\";\n animation: 3s linear infinite growingCircle;\n border: 5px solid var(--kol-spin-color, var(--kol-theme-spin-color, #333));\n }\n @media (prefers-reduced-motion) {\n .kol-spin__spinner--cycle .kol-spin__loader::before {\n animation-duration: 6s !important;\n }\n }\n}\n@layer kol-component {\n @keyframes spin1 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n }\n @keyframes spin2 {\n 0% {\n transform: translate(0, 0);\n }\n 100% {\n transform: translate(calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16)), 0);\n }\n }\n @keyframes spin3 {\n 0% {\n transform: scale(1);\n }\n 100% {\n transform: scale(0);\n }\n }\n /* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion#toning_down_the_animation_scaling */\n @media (prefers-reduced-motion) {\n .kol-spin__spinner-element {\n animation-duration: 2s !important;\n }\n }\n .kol-spin__spinner--dot {\n --kol-spin-border-width: calc(var(--kol-spin-size, 13) / 10);\n width: calc(calc(var(--kol-spin-size, 13) * 3 + 2) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(calc(var(--kol-spin-size, 13) + var(--kol-spin-border-width) * 2) * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element {\n background-color: var(--kol-spin-color, var(--kol-theme-spin-color, #000));\n border-radius: 50%;\n position: absolute;\n top: 1px;\n width: calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(var(--kol-spin-size, 13) * 1rem / var(--kolibri-root-font-size, 16));\n animation-timing-function: cubic-bezier(0, 1, 1, 0);\n border: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16)) solid white;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--1 {\n left: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 0;\n animation: 1s infinite spin1;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--2 {\n left: calc(var(--kol-spin-border-width) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n animation: 1s infinite spin2;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--3 {\n left: calc(calc(var(--kol-spin-size, 13) + var(--kol-spin-border-width)) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n animation: 1s infinite spin2;\n }\n .kol-spin__spinner--dot .kol-spin__spinner-element--neutral {\n opacity: 0.6;\n left: calc(calc(var(--kol-spin-size, 13) * 2 + var(--kol-spin-border-width)) * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 0;\n animation: 1s infinite spin3;\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-card :host {\n display: inline-block;\n }\n .kol-card .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-card .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-card .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-card .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-card .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-card .kol-button__tooltip {\n height: 0;\n }\n .kol-card .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-card .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-card {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: grid;\n height: 100%;\n overflow: visible;\n grid-template-areas: \"header close\" \"content content\";\n grid-template-columns: 1fr min-content;\n grid-template-rows: min-content 1fr;\n }\n .kol-card__header {\n align-self: start;\n grid-area: header;\n }\n .kol-card__content {\n align-self: stretch;\n grid-area: content;\n }\n .kol-card__close-button {\n grid-area: close;\n }\n .kol-card:has(.kol-card__link) {\n position: relative;\n }\n .kol-card__link::after {\n position: absolute;\n inset: 0;\n content: \"\";\n cursor: pointer;\n }\n .kol-dialog,\n .kol-modal {\n min-height: var(--a11y-min-size);\n padding: 0;\n border: 0;\n /* Prevent scroll chaining from scrollable dialog content to the page. */\n overscroll-behavior: contain;\n }\n .kol-dialog__close-button,\n .kol-modal__close-button {\n position: absolute;\n top: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n right: calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n z-index: 1;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-popover-button--inline .kol-button,\n .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-table-settings {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 1;\n }\n .kol-table-settings .kol-popover-button__popover {\n background: white;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n border-radius: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n border: 1px solid black;\n }\n .kol-table-settings__columns {\n display: grid;\n max-height: calc(200 * 1rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n grid-auto-rows: min-content;\n grid-template-columns: min-content minmax(max-content, 1fr) calc(140 * 1rem / var(--kolibri-root-font-size, 16)) auto auto;\n }\n .kol-table-settings__column {\n display: grid;\n align-items: center;\n grid-template-columns: subgrid;\n grid-column: 1/6;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table {\n --kol-table-selection-col-width: var(--a11y-min-size);\n display: block;\n position: relative;\n max-width: 100%;\n }\n .kol-table:has(.kol-table__focus-element:focus) .kol-table__scroll-container {\n /* @see https://remysharp.com/til/css/focus-ring-default-styles */\n outline: 5px auto Highlight;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: 2px;\n }\n .kol-table__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table__table {\n table-layout: fixed;\n }\n .kol-table__caption {\n min-height: var(--a11y-min-size);\n text-align: start;\n }\n .kol-table__settings:not(:has(~ .kol-table__scroll-container .kol-table__caption)) {\n min-height: var(--a11y-min-size);\n }\n .kol-table__sort-button.kol-button {\n color: inherit;\n }\n .kol-table__sort {\n display: inline-flex;\n align-items: center;\n }\n .kol-table__sort-order {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n .kol-table__body {\n text-align: left;\n }\n .kol-table__body .kol-button__text {\n justify-items: start;\n }\n .kol-table__body:has(.kol-table__loader--shown) {\n position: relative;\n min-height: calc(var(--a11y-min-size) * 3);\n }\n .kol-table__cell--align-left {\n text-align: left;\n }\n .kol-table__cell--align-left .kol-table__sort-button .kol-button__text {\n align-items: start;\n text-align: start;\n }\n .kol-table__cell--align-left .kol-table__cell-actions {\n justify-content: flex-start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-table__sort-button .kol-button__text {\n align-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-table__sort-button .kol-button__text {\n align-items: end;\n text-align: end;\n }\n .kol-table__cell--align-right .kol-table__cell-actions {\n justify-content: flex-end;\n }\n .kol-table__cell--selection {\n background-color: white;\n position: sticky !important;\n left: 0;\n z-index: 2;\n width: var(--kol-table-selection-col-width, auto);\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n white-space: nowrap;\n }\n .kol-table__cell--actions {\n white-space: nowrap;\n }\n .kol-table__cell--actions .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table__cell--actions :host {\n display: inline-block;\n }\n .kol-table__cell--actions .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-table__cell--actions .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-table__cell--actions .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-table__cell--actions .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-table__cell--actions .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-table__cell--actions .kol-button__tooltip {\n height: 0;\n }\n .kol-table__cell--actions .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-table__cell--actions .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-table__cell--actions .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-table__cell--actions :host {\n display: inline-block;\n }\n .kol-table__cell--actions .kol-link {\n display: inline-flex;\n max-width: fit-content;\n }\n .kol-table__cell--actions .kol-link--standalone {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: stretch;\n /* The interactive element is the flex container positioning the text — it must\n stretch its content so the text pill keeps the full standalone height. */\n }\n .kol-table__cell--actions .kol-link--standalone .kol-link__interactive-element {\n align-items: stretch;\n }\n .kol-table__cell--actions .kol-link--standalone .kol-link__text {\n display: inline-flex;\n flex: 1 1 100%;\n place-items: center;\n }\n .kol-table__cell--actions .kol-link__interactive-element {\n display: inline-flex;\n flex: 1;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n .kol-table__cell--actions .kol-link__interactive-element:focus:not([aria-disabled], [disabled]) .kol-span__label, .kol-table__cell--actions .kol-link__interactive-element:hover:not([aria-disabled], [disabled]) .kol-span__label {\n text-decoration-thickness: 0.2em;\n }\n .kol-table__cell--actions .kol-link .kol-span__label {\n text-decoration-line: underline;\n }\n .kol-table__cell--actions .kol-link__icon {\n display: inline-flex;\n }\n .kol-table__cell--sticky-left, .kol-table__cell--sticky-right {\n background-color: white;\n position: sticky !important;\n z-index: 1;\n }\n .kol-table__cell--sticky-left:nth-last-child(1 of .kol-table__cell--sticky-left) {\n border-right: 2px solid black;\n }\n .kol-table__cell--sticky-right:nth-child(1 of .kol-table__cell--sticky-left) {\n border-left: 2px solid black;\n }\n .kol-table__cell-actions {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n }\n .kol-table__cell-states {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-start;\n }\n .kol-table__spacer {\n display: none;\n }\n .kol-table__selection {\n position: relative;\n }\n .kol-table__selection-label {\n display: flex;\n position: relative;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n /* The disabled modifier sits on the label, not on the selection wrapper: the former\n `&--disabled` one level up compiled to `.kol-table__selection--disabled`, which the\n component never renders, so the reset never applied. */\n }\n .kol-table__selection-label:not(.kol-table__selection-label--disabled) {\n cursor: pointer;\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n position: absolute;\n inset: auto;\n z-index: 1;\n }\n .kol-table__selection-input {\n border-style: solid;\n margin: 0;\n appearance: none;\n cursor: pointer;\n }\n .kol-table__selection-input:disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-input:before {\n content: \"\";\n }\n .kol-table__selection-input--checkbox {\n background-color: white;\n display: flex;\n position: relative;\n min-width: calc(var(--a11y-min-size) / 2);\n min-height: calc(var(--a11y-min-size) / 2);\n border-width: 2px;\n align-items: center;\n justify-content: center;\n line-height: 1.5;\n }\n .kol-table__selection-input--radio {\n border-radius: 100%;\n display: flex;\n width: 1.5em;\n min-width: 1.5em;\n height: 1.5em;\n min-height: 1.5em;\n padding: 0;\n border-width: 2px;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n width: 0.75em;\n height: 0.75em;\n margin: auto;\n }\n .kol-table__selection-input--radio:checked:before {\n background-color: black;\n }\n @media (forced-colors: active) {\n .kol-table__selection-input--radio:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n .kol-table__loader--shown {\n background: white;\n display: flex;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n align-items: center;\n justify-content: center;\n }\n .kol-spin {\n /*\n * The root only groups the spinner and its live region. It generates no box of its own, so\n * both stay layout children of the surrounding container, e.g. the flex container of the\n * table loader.\n */\n display: contents;\n }\n .kol-spin__spinner {\n display: block;\n position: relative;\n }\n}";
|
|
33302
33299
|
|
|
33303
33300
|
class KolTableStateless extends BaseTableStatelessWebComponent {
|
|
33304
33301
|
constructor(hostRef) {
|
|
@@ -33522,7 +33519,7 @@ const TabsFC = (props) => {
|
|
|
33522
33519
|
return (hAsync(BemRootNodeFC, { block: "kol-tabs", modifiers: { [`align-${align}`]: true }, class: hostClass, ref: refRoot }, hAsync("div", { class: BEM_CLASS_TABS__BUTTON_GROUP }, hAsync("div", { "aria-label": label, class: BEM_CLASS_TABS__TABLIST, role: "tablist", onKeyDown: handleKeyDown, onBlur: handleBlur }, tabButtons.map(({ buttonProps, refBox }) => (hAsync("div", { class: BEM_CLASS_TABS__TAB, ref: refBox }, hAsync(ButtonFC, Object.assign({}, buttonProps)))))), hasCreateButton && (hAsync("div", { class: BEM_CLASS_TABS__BUTTON_CREATE, ref: createButton.refBox }, hAsync(ButtonFC, Object.assign({}, createButton.buttonProps))))), hAsync("div", { class: BEM_CLASS_TABS__CONTENT, ref: refContent })));
|
|
33523
33520
|
};
|
|
33524
33521
|
|
|
33525
|
-
const defaultStyleCss$6 = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-tabs {\n display: var(--display);\n grid-template-columns: var(--grid-template-columns);\n grid-template-rows: var(--grid-template-rows);\n }\n .kol-tabs--align-right {\n --display: grid;\n --grid-template-columns: 1fr auto;\n --button-group-flex-direction: column;\n --button-group-order: 2;\n }\n .kol-tabs--align-left {\n --display: grid;\n --grid-template-columns: auto 1fr;\n --button-group-flex-direction: column;\n --button-group-order: 0;\n }\n .kol-tabs--align-bottom {\n --display: grid;\n --grid-template-rows: 1fr auto;\n --button-group-order: 2;\n }\n .kol-tabs__tabs-align-top {\n --display: grid;\n --grid-template-rows: auto 1fr;\n --button-group-order: 0;\n }\n .kol-tabs__button-group {\n display: flex;\n order: var(--button-group-order);\n flex-direction: var(--button-group-flex-direction);\n flex-wrap: wrap;\n }\n .kol-tabs__button-group .kol-button {\n display: block;\n /* The underline belongs to the interactive element — it carries the UA `medium`\n border-width from the shared wc-box styles, so the selected-tab underline keeps\n the exact box it had when the button element itself carried `kol-button`. */\n }\n .kol-tabs__button-group .kol-button .kol-button__interactive-element {\n border-bottom-color: transparent;\n border-bottom-style: solid;\n }\n @media (forced-colors: active) {\n .kol-tabs__button-group .kol-button.selected {\n outline: 3px solid Highlight;\n outline-offset: -3px;\n /* The outline sits on the wrapper, but only the inner button can receive focus.\n Matching `:focus-visible` on the wrapper itself would never fire, so the\n focused state has to be detected through the interactive element. */\n }\n .kol-tabs__button-group .kol-button.selected:has(.kol-button__interactive-element:focus-visible) {\n outline-style: dashed;\n }\n }\n .kol-tabs__tablist {\n display: flex;\n flex-direction: var(--button-group-flex-direction);\n flex-wrap: wrap;\n }\n .kol-tabs__panel {\n height: 100%;\n }\n}";
|
|
33522
|
+
const defaultStyleCss$6 = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-tabs {\n display: var(--display);\n grid-template-columns: var(--grid-template-columns);\n grid-template-rows: var(--grid-template-rows);\n }\n .kol-tabs--align-right {\n --display: grid;\n --grid-template-columns: 1fr auto;\n --button-group-flex-direction: column;\n --button-group-order: 2;\n }\n .kol-tabs--align-left {\n --display: grid;\n --grid-template-columns: auto 1fr;\n --button-group-flex-direction: column;\n --button-group-order: 0;\n }\n .kol-tabs--align-bottom {\n --display: grid;\n --grid-template-rows: 1fr auto;\n --button-group-order: 2;\n }\n .kol-tabs__tabs-align-top {\n --display: grid;\n --grid-template-rows: auto 1fr;\n --button-group-order: 0;\n }\n .kol-tabs__button-group {\n display: flex;\n order: var(--button-group-order);\n flex-direction: var(--button-group-flex-direction);\n flex-wrap: wrap;\n }\n .kol-tabs__button-group .kol-button {\n display: block;\n /* The underline belongs to the interactive element — it carries the UA `medium`\n border-width from the shared wc-box styles, so the selected-tab underline keeps\n the exact box it had when the button element itself carried `kol-button`. */\n }\n .kol-tabs__button-group .kol-button .kol-button__interactive-element {\n border-bottom-color: transparent;\n border-bottom-style: solid;\n }\n @media (forced-colors: active) {\n .kol-tabs__button-group .kol-button.selected {\n outline: 3px solid Highlight;\n outline-offset: -3px;\n /* The outline sits on the wrapper, but only the inner button can receive focus.\n Matching `:focus-visible` on the wrapper itself would never fire, so the\n focused state has to be detected through the interactive element. */\n }\n .kol-tabs__button-group .kol-button.selected:has(.kol-button__interactive-element:focus-visible) {\n outline-style: dashed;\n }\n }\n .kol-tabs__tablist {\n display: flex;\n flex-direction: var(--button-group-flex-direction);\n flex-wrap: wrap;\n }\n .kol-tabs__panel {\n height: 100%;\n }\n}";
|
|
33526
33523
|
|
|
33527
33524
|
class KolTabs extends BaseWebComponent {
|
|
33528
33525
|
constructor(hostRef) {
|
|
@@ -33867,7 +33864,7 @@ const textareaPropsConfig = {
|
|
|
33867
33864
|
],
|
|
33868
33865
|
};
|
|
33869
33866
|
|
|
33870
|
-
const defaultStyleCss$5 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-textarea {\n width: 100%;\n }\n}";
|
|
33867
|
+
const defaultStyleCss$5 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-button {\n background-color: transparent;\n display: inline-block;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n margin: 0;\n padding: 0;\n /* The user-agent stylesheet centers text on `button`, but not on `div`. The wrapper now\n carries the class, so that UA default has to be restated here for the inner content to\n sit where it did when the button element itself was the class carrier. */\n text-align: center;\n /* Replicate the reset the real button received: width stays at the initial `medium`, only\n the style becomes `none`. Consumer rules that flip e.g. `border-bottom-style` back to\n `solid` (tabs) must therefore target the inner button (see the `__interactive-element`\n override below), because Firefox vertically centers button content inside the content box,\n which shrinks by the border — exactly as it did when the real button carried these rules. */\n }\n .kol-button__interactive-element {\n border-style: none;\n display: block;\n border-width: medium;\n /* The UA pins `text-align: center` and (in Firefox) `font-weight: 400` directly on every\n `button`, which would beat any alignment or font styling inherited through the wrapper\n (e.g. nav's `text-align: left`, or a bold active entry that used to apply to the button\n element itself). Inheriting all three restores the old flow. */\n font-weight: inherit;\n font-style: inherit;\n text-align: inherit;\n }\n .kol-button {\n /* See kol-button-styles: the tooltip wrapper must stay zero-height, also when the wrapper\n div is a flex or grid item (e.g. nav entry rows). */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n .kol-form-field .kol-popover-button {\n /*\n * The predecessor rendered this box as an unstyled (inline) custom element host; keep the\n * inline display so the flow layout around the embedded button stays unchanged.\n */\n display: inline;\n }\n .kol-form-field .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-form-field .kol-popover-button--open .kol-button__tooltip {\n display: none;\n }\n .kol-form-field .kol-popover-button--inline {\n display: inline-block;\n /* The size exemption has to cover both the BEM root div and the inner interactive element:\n the a11y layer pins every `button` to 44×44, so the inner `kol-button__interactive-element`\n needs the override as well — the root alone used to be the button before the skeleton migration. */\n }\n .kol-form-field .kol-popover-button--inline .kol-button,\n .kol-form-field .kol-popover-button--inline .kol-button .kol-button__interactive-element {\n min-width: 0;\n min-height: 1em;\n }\n .kol-form-field .kol-popover {\n opacity: 0;\n transition: 0.2s ease-out opacity;\n }\n .kol-form-field .kol-popover-button--open .kol-popover-button__popover {\n opacity: 1;\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field__label {\n display: flex;\n }\n .kol-form-field__label-text {\n flex-flow: row;\n align-items: flex-start;\n justify-content: flex-start;\n }\n .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden]) .kol-span__label::after,\n .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n position: relative;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n z-index: 1;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-textarea {\n width: 100%;\n }\n}";
|
|
33871
33868
|
|
|
33872
33869
|
class KolTextarea extends BaseFormFieldWebComponent {
|
|
33873
33870
|
constructor(hostRef) {
|
|
@@ -34095,7 +34092,7 @@ class KolTextarea extends BaseFormFieldWebComponent {
|
|
|
34095
34092
|
const maxLength = this.counter.getMaxLengthAttribute();
|
|
34096
34093
|
const characterLimitHintId = this.counter.getCharacterLimitHintId(id);
|
|
34097
34094
|
const { ariaDescribedBy, hasError } = this.getAria();
|
|
34098
|
-
return Object.assign(Object.assign({ id, hideLabel: this.getRenderProp('hideLabel'), label: this.getRenderProp('label'), value: this.getRenderProp('value'), accessKey: this.getRenderProp('accessKey') || undefined, disabled: this.getRenderProp('disabled'), name: this.getRenderProp('name') || undefined, rows: this.getRenderProp('rows'), readonly: this.getRenderProp('readOnly'), required: this.getRenderProp('required'), placeholder: this.getRenderProp('placeholder'), touched: this.getRenderProp('touched'), msg: this.getRenderProp('msg'), ref: this.ctaRef, style: {
|
|
34095
|
+
return Object.assign(Object.assign({ id, hideLabel: this.getRenderProp('hideLabel'), label: this.getRenderProp('label'), value: this.getRenderProp('value'), accessKey: this.getRenderProp('accessKey') || undefined, disabled: this.getRenderProp('disabled'), name: this.getRenderProp('name') || undefined, rows: this.getRenderProp('rows'), readonly: this.getRenderProp('readOnly'), required: this.getRenderProp('required'), placeholder: this.getRenderProp('placeholder'), spellcheck: this.getRenderProp('spellCheck'), touched: this.getRenderProp('touched'), msg: this.getRenderProp('msg'), ref: this.ctaRef, style: {
|
|
34099
34096
|
resize: this.getRenderProp('resize'),
|
|
34100
34097
|
}, onBlur: this.handleBlur, onChange: this.handleTextareaChange, onClick: this.handleClick, onFocus: this.handleTextareaFocus, onInput: this.handleTextareaInput, onKeyDown: this.handleTextareaKeyDown, ariaDescribedBy: characterLimitHintId ? [...ariaDescribedBy, characterLimitHintId] : ariaDescribedBy, 'aria-invalid': hasError ? 'true' : undefined }, (maxLength !== undefined ? { maxLength } : {})), (shortKey ? { 'aria-keyshortcuts': shortKey } : {}));
|
|
34101
34098
|
}
|
|
@@ -34106,7 +34103,7 @@ class KolTextarea extends BaseFormFieldWebComponent {
|
|
|
34106
34103
|
render() {
|
|
34107
34104
|
const disabled = this.getRenderProp('disabled');
|
|
34108
34105
|
const { startAdornment, endAdornment } = getInputAdornments({ icons: this.getRenderProp('icons') });
|
|
34109
|
-
return (hAsync(Host, { key: '
|
|
34106
|
+
return (hAsync(Host, { key: 'dfe61fda610880f431fdff9f6b5816e2bac2b62c' }, hAsync(FormFieldFC, Object.assign({ key: '52d1eb3e82ea4dd2bf5f240e9908cf2f4005c3a7' }, this.getFormFieldProps({
|
|
34110
34107
|
class: clsx('kol-form-field-textarea', {
|
|
34111
34108
|
'kol-form-field--has-value': this.hasValue,
|
|
34112
34109
|
'kol-form-field--has-counter': this.counter.hasSoftLimit() || this.counter.hasCounter(),
|
|
@@ -34118,7 +34115,7 @@ class KolTextarea extends BaseFormFieldWebComponent {
|
|
|
34118
34115
|
readOnly: this.getRenderProp('readOnly'),
|
|
34119
34116
|
maxLength: this.counter.getRenderProp('maxLength'),
|
|
34120
34117
|
counter: this.counter.getCounterProps(),
|
|
34121
|
-
})), hAsync(InputContainerFC, { key: '
|
|
34118
|
+
})), hAsync(InputContainerFC, { key: 'a8a5db96b295d80fcd26002260b408dae6e10233', disabled: disabled, msg: this.getRenderProp('msg'), touched: this.getRenderProp('touched'), startAdornment: startAdornment, endAdornment: endAdornment }, hAsync(TextAreaFC, Object.assign({ key: '4be4b90c4fb2b29e04d1cd812e0177d194bab228' }, this.getTextareaProps()))))));
|
|
34122
34119
|
}
|
|
34123
34120
|
get host() { return getElement(this); }
|
|
34124
34121
|
static get watchers() { return {
|
|
@@ -34211,7 +34208,7 @@ const ToastItemFc = (_a) => {
|
|
|
34211
34208
|
return (hAsync("div", { class: clsx('kol-toast-item', `kol-toast-item--${status}`) }, hAsync(AlertFC, { alert: true, class: "kol-toast-item__alert", closerAriaDescriptionId: nonce(), handleCloserClick: onClose, hasCloser: true, headingId: createUniqueId('alert-heading'), label: label, level: 0, refCloserButton: () => undefined, refCloserTooltip: () => undefined, type: type, variant: variant || 'card' }, hAsync("div", Object.assign({}, other), description))));
|
|
34212
34209
|
};
|
|
34213
34210
|
|
|
34214
|
-
const defaultStyleCss$4 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n :host {\n display: flex;\n position: fixed;\n z-index: 200;\n max-width: 90vw;\n flex-direction: column;\n }\n .kol-toast-container__close-all {\n align-self: flex-end;\n }\n}";
|
|
34211
|
+
const defaultStyleCss$4 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-alert .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-alert :host {\n display: inline-block;\n }\n .kol-alert .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-alert .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-alert .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-alert .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-alert .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-alert .kol-button__tooltip {\n height: 0;\n }\n .kol-alert .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-alert {\n display: grid;\n grid-template-areas: \"icon heading close\" \"icon content close\";\n grid-template-columns: min-content 1fr min-content;\n grid-template-rows: min-content min-content;\n }\n .kol-alert__icon {\n grid-area: icon;\n }\n .kol-alert__heading {\n grid-area: heading;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n grid-area: close;\n }\n .kol-alert__content {\n grid-area: content;\n }\n :host {\n display: flex;\n position: fixed;\n z-index: 200;\n max-width: 90vw;\n flex-direction: column;\n }\n .kol-toast-container__close-all {\n align-self: flex-end;\n }\n}";
|
|
34215
34212
|
|
|
34216
34213
|
const TRANSITION_TIMEOUT = 300;
|
|
34217
34214
|
class KolToastContainer {
|
|
@@ -34314,11 +34311,19 @@ const toolbarPropsConfig = {
|
|
|
34314
34311
|
const BEM_CLASS_TOOLBAR__ITEM = bem.forBlock('kol-toolbar')('item');
|
|
34315
34312
|
const renderItem = (record, index, currentIndex, location) => {
|
|
34316
34313
|
const tabIndex = index === currentIndex && !record.disabled ? 0 : -1;
|
|
34317
|
-
return (hAsync("div", { class: BEM_CLASS_TOOLBAR__ITEM, key: index, ref: record.refWrapper }, record.type === 'link' ? hAsync(LinkFC, Object.assign({}, record.getFcProps(tabIndex, location))) : hAsync(ButtonFC, Object.assign({}, record.getFcProps(tabIndex)))));
|
|
34314
|
+
return (hAsync("div", { class: BEM_CLASS_TOOLBAR__ITEM, key: index, ref: record.refWrapper }, record.type === 'link' ? (hAsync(LinkFC, Object.assign({}, record.getFcProps(tabIndex, location)))) : record.type === 'button' ? (hAsync(ButtonFC, Object.assign({}, record.getFcProps(tabIndex)))) : (hAsync("hr", null))));
|
|
34318
34315
|
};
|
|
34319
34316
|
const ToolbarFC = ({ class: hostClass, currentIndex, itemRecords, label, location, orientation }) => (hAsync(BemRootNodeFC, { block: "kol-toolbar", class: hostClass, modifiers: { 'orientation-horizontal': orientation === 'horizontal', 'orientation-vertical': orientation === 'vertical' }, role: "toolbar", "aria-label": label }, itemRecords.map((record, index) => renderItem(record, index, currentIndex, location))));
|
|
34320
34317
|
|
|
34321
|
-
const createToolbarItem = (item, getFlagHost) =>
|
|
34318
|
+
const createToolbarItem = (item, getFlagHost) => {
|
|
34319
|
+
if (item.type === 'link') {
|
|
34320
|
+
return createLinkItem(item, getFlagHost);
|
|
34321
|
+
}
|
|
34322
|
+
else if (item.type === 'button') {
|
|
34323
|
+
return createButtonItem(item, getFlagHost);
|
|
34324
|
+
}
|
|
34325
|
+
return createHRItem();
|
|
34326
|
+
};
|
|
34322
34327
|
const createButtonItem = (item, getFlagHost) => {
|
|
34323
34328
|
const tooltipBehavior = new TooltipBehavior(BaseWebComponent.stateLess);
|
|
34324
34329
|
const ctaRef = createCtaRef();
|
|
@@ -34421,8 +34426,19 @@ const createLinkItem = (item, getFlagHost) => {
|
|
|
34421
34426
|
destroy: () => tooltipBehavior.destroy(),
|
|
34422
34427
|
};
|
|
34423
34428
|
};
|
|
34429
|
+
const createHRItem = () => {
|
|
34430
|
+
const ctaRef = createCtaRef();
|
|
34431
|
+
return {
|
|
34432
|
+
type: 'hr',
|
|
34433
|
+
disabled: true,
|
|
34434
|
+
getElement: () => ctaRef.el,
|
|
34435
|
+
refWrapper: () => { },
|
|
34436
|
+
syncListeners: () => { },
|
|
34437
|
+
destroy: () => { },
|
|
34438
|
+
};
|
|
34439
|
+
};
|
|
34424
34440
|
|
|
34425
|
-
const defaultStyleCss$3 = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-link__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-link__interactive-element::before {\n content: \"\";\n }\n .kol-link__text {\n flex: 1 0 100%;\n }\n .kol-link {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-link__tooltip {\n height: 0;\n }\n .kol-link--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-link--external-link .kol-link__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-toolbar {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n }\n .kol-toolbar--orientation-vertical {\n flex-direction: column;\n align-items: stretch;\n }\n .kol-toolbar--orientation-vertical .kol-span {\n align-items: flex-start;\n }\n .kol-toolbar:focus-within {\n outline: 1px solid;\n outline-offset: 2px;\n }\n}";
|
|
34441
|
+
const defaultStyleCss$3 = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: black;\n background-color: white;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: black;\n background-color: white;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n/*\n * Button styles for a skeleton block whose interactive element sits inside the BEM root:\n * `kol-button` renders `<div class=\"kol-button\"><button class=\"kol-button__interactive-element\">`,\n * `kol-link` renders `<div class=\"kol-link\"><a class=\"kol-link__interactive-element\">`.\n *\n * Overlaps with `kol-embedded-button-box-styles` below: both target the block class itself and disagree\n * on `display` and `text-align`. A stylesheet that includes both therefore depends on order or\n * specificity — today that only happens where the caller nests one of them (e.g. `_alert.mixin`\n * nests this one under `.kol-alert`, which wins). Include only one per block unless the nesting\n * makes the winner explicit.\n */\n/*\n * Minimal box replication for shadow trees that render `ButtonFC` without including\n * `kol-button-styles`. The `kol-global` reset (`background`, `width`, `margin`, `padding`,\n * `border`) and the a11y layer `min-height`/`min-width` apply to the native button, on top of the\n * UA `inline-block`, but not to the `div` root that carries the `kol-button` class. This mixin\n * replicates that outer box on the root, while the inner `kol-button__interactive-element` degrades\n * to a plain block container to avoid the inline-level baseline gap the UA `inline-block` would add\n * below it.\n *\n * Mutually exclusive with `kol-button-styles` above — see the collision note there.\n */\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-link {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-link__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-link__interactive-element::before {\n content: \"\";\n }\n .kol-link__text {\n flex: 1 0 100%;\n }\n .kol-link {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-link__tooltip {\n height: 0;\n }\n .kol-link--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-link--external-link .kol-link__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n height: 100%;\n min-height: var(--a11y-min-size);\n text-decoration-line: none;\n /* The interactive element is the flex container positioning the text, so it carries the\n box the root element used to be. The UA default underline sits on that element too,\n so suppressing `text-decoration` on the wrapper alone is not enough. */\n }\n .kol-button__interactive-element {\n display: flex;\n flex: 1;\n text-align: left;\n text-decoration-line: none;\n /* A flex container only exposes a baseline if it has an in-flow text box to derive one\n from; without it the surrounding inline formatting context falls back to the bottom\n margin edge and everything after the element shifts by 1px. The zero-width space\n supplies that box. Measured, not assumed: removing it turns `popover-button/inline`\n and `input-file/basic` red against the develop baseline (the box grows 179→180px). */\n }\n .kol-button__interactive-element::before {\n content: \"\";\n }\n .kol-button__text {\n flex: 1 0 100%;\n }\n .kol-button {\n /* The tooltip wrapper holds only the absolutely positioned floating tooltip. In the legacy\n DOM it sat in a block flow and collapsed to zero height; as a flex/grid item it would\n stretch to the container height instead, adding phantom rows to the layout. */\n }\n .kol-button__tooltip {\n height: 0;\n }\n .kol-button--external-link > .kolicon-link-external::before {\n content: none;\n }\n .kol-button--external-link .kol-button__interactive-element > .kolicon-link-external::before {\n content: none;\n }\n .kol-toolbar {\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n }\n .kol-toolbar--orientation-horizontal .kol-toolbar__item hr {\n height: 100%;\n }\n .kol-toolbar--orientation-vertical {\n flex-direction: column;\n align-items: stretch;\n }\n .kol-toolbar--orientation-vertical .kol-span {\n align-items: flex-start;\n }\n .kol-toolbar__item hr {\n margin: 0;\n }\n .kol-toolbar:focus-within {\n outline: 1px solid;\n outline-offset: 2px;\n }\n}";
|
|
34426
34442
|
|
|
34427
34443
|
const ARROW_KEYS = [KeyboardKey.ArrowUp, KeyboardKey.ArrowDown, KeyboardKey.ArrowRight, KeyboardKey.ArrowLeft];
|
|
34428
34444
|
class KolToolbar extends BaseWebComponent {
|
|
@@ -34514,7 +34530,7 @@ class KolToolbar extends BaseWebComponent {
|
|
|
34514
34530
|
return undefined;
|
|
34515
34531
|
}
|
|
34516
34532
|
render() {
|
|
34517
|
-
return (hAsync(Host, { key: '
|
|
34533
|
+
return (hAsync(Host, { key: '583e538c6adc295d04d001eac9cba1b21f78bfdc' }, hAsync(ToolbarFC, { key: 'af55e9fa68d8ad154319accbc80125c5a4d72f5c', currentIndex: this.currentIndex, itemRecords: this.itemRecords, label: this.getRenderProp('label'), location: this.location, orientation: this.getRenderProp('orientation') })));
|
|
34518
34534
|
}
|
|
34519
34535
|
get host() { return getElement(this); }
|
|
34520
34536
|
static get watchers() { return {
|
|
@@ -34902,7 +34918,7 @@ const LINK_DEFAULTS = Object.freeze(buildDefaultPropsFromConfig(linkPropsConfig)
|
|
|
34902
34918
|
const noop = () => undefined;
|
|
34903
34919
|
const TreeItemFC = ({ active, ariaCurrent, groupId, handleAnchorClick, handleSlotchange, handleToggleClick, hasChildren, href, label, level, open, refAnchor, }) => (hAsync("li", { class: BEM_CLASS_TREE_ITEM, role: "none", style: { '--level': `${level}` } }, hAsync("span", { class: treeItemBem('link', { active, 'first-level': level === 0 }) }, hAsync(LinkFC, Object.assign({}, LINK_DEFAULTS, { ariaCurrent: ariaCurrent, ariaDescriptionId: "", ariaExpanded: hasChildren ? (open ? 'true' : 'false') : '', ariaOwns: hasChildren ? groupId : '', expertSlot: true, handleAnchorClick: handleAnchorClick, href: href, label: "", refAnchor: refAnchor, refTooltip: noop, role: "treeitem", tabIndex: active ? 0 : -1 }), hAsync("span", { class: BEM_CLASS_TREE_ITEM__LINK_INNER }, hasChildren ? (hAsync("span", { class: BEM_CLASS_TREE_ITEM__TOGGLE_BUTTON, onClick: handleToggleClick }, hAsync(IconFC, { class: BEM_CLASS_TREE_ITEM__TOGGLE_BUTTON_ICON, icons: `kolicon kolicon-${open ? 'chevron-down' : 'chevron-right'}`, label: '' }))) : (hAsync("span", { class: BEM_CLASS_TREE_ITEM__TOGGLE_BUTTON_PLACEHOLDER })), hAsync("span", { class: BEM_CLASS_TREE_ITEM__TEXT }, label)))), hAsync("ul", { class: BEM_CLASS_TREE_ITEM__CHILDREN, hidden: !hasChildren || !open, role: "group", id: groupId }, hAsync("slot", { onSlotchange: handleSlotchange }))));
|
|
34904
34920
|
|
|
34905
|
-
const defaultStyleCss$1 = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tree-item__link .kol-link {\n display: inline-flex;\n width: 100%;\n min-height: var(--a11y-min-size);\n align-items: center;\n text-decoration: none;\n /* The interactive element inside the link skeleton carries the UA default underline\n itself and replaces the former full-width anchor, so it has to fill the wrapper. */\n }\n .kol-tree-item__link .kol-link__interactive-element {\n flex: 1 1 auto;\n text-decoration: none;\n }\n .kol-tree-item__link-inner {\n display: flex;\n align-items: center;\n }\n .kol-tree-item__children {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .kol-tree-item .kol-span {\n place-items: unset;\n }\n .kol-tree-item__toggle-button, .kol-tree-item__toggle-button-placeholder {\n display: inline-flex;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n }\n .kol-tree-item__text {\n text-decoration: underline;\n }\n}";
|
|
34921
|
+
const defaultStyleCss$1 = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n@layer kol-component {\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-tree-item__link .kol-link {\n display: inline-flex;\n width: 100%;\n min-height: var(--a11y-min-size);\n align-items: center;\n text-decoration: none;\n /* The interactive element inside the link skeleton carries the UA default underline\n itself and replaces the former full-width anchor, so it has to fill the wrapper. */\n }\n .kol-tree-item__link .kol-link__interactive-element {\n flex: 1 1 auto;\n text-decoration: none;\n }\n .kol-tree-item__link-inner {\n display: flex;\n align-items: center;\n }\n .kol-tree-item__children {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .kol-tree-item .kol-span {\n place-items: unset;\n }\n .kol-tree-item__toggle-button, .kol-tree-item__toggle-button-placeholder {\n display: inline-flex;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n }\n .kol-tree-item__text {\n text-decoration: underline;\n }\n}";
|
|
34906
34922
|
|
|
34907
34923
|
class KolTreeItem extends BaseWebComponent {
|
|
34908
34924
|
constructor(hostRef) {
|
|
@@ -35050,7 +35066,7 @@ const VersionFC = ({ class: hostClass, color, icons, label }) => {
|
|
|
35050
35066
|
return (hAsync(BemRootNodeFC, { block: "kol-version", class: hostClass }, hAsync(BadgeFC, { color: color, icons: icons, label: label })));
|
|
35051
35067
|
};
|
|
35052
35068
|
|
|
35053
|
-
const defaultStyleCss = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791360508850\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791360508850#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791360508850\") format(\"woff2\"), url(\"kolicons.woff?t=1791360508850\") format(\"woff\"), url(\"kolicons.ttf?t=1791360508850\") format(\"truetype\"), url(\"kolicons.svg?t=1791360508850#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n/*\n * Badge box for every shadow root that renders `BadgeFC` - the badge itself and `kol-version`.\n * Stencil scopes `badge/style.scss` to the `kol-badge` shadow root, so a second consumer has to\n * bring these rules along (same pattern as `kol-link-styles` for `LinkFC`).\n *\n * The smart-button rules stay in `badge/style.scss`: only the badge web component orchestrates one.\n */\n@layer kol-component {\n /* The version renders `BadgeFC` inline, so the badge box has to live in this shadow root too. */\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-badge {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n .kol-badge > br {\n user-select: none;\n }\n}";
|
|
35069
|
+
const defaultStyleCss = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n* 6. kol-forced-colors - Defaults for forced colors and high contrast modes\n* 7. kol-theme-forced-colors - Theme-specific styles for forced colors and high contrast modes\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component, kol-forced-colors, kol-theme-forced-colors;\n/* forward the rem function */\n/*\n * Guards an interaction rule (`:hover`, `:active`, `:focus…`) against the disabled state.\n *\n * Two shapes are needed because the disabled marker sits on different elements: a native control\n * carries `disabled`, an anchor or summary carries `aria-disabled`, and a BEM wrapper carries a\n * `--disabled` modifier while its inner control carries the attribute.\n */\n/* Wrapper variant: asks the interactive element inside, which is where the attribute lives. */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n *\n * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:\n * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose\n * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's\n * rounding, dropping just below the required minimum.\n */\n --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n --kol-a11y-font-color: black;\n --kol-a11y-background-color: white;\n color: var(--kol-a11y-font-color);\n background-color: var(--kol-a11y-background-color);\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n --kol-a11y-font-family: Verdana;\n font-family: var(--kol-a11y-font-family);\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the text color from his parent element.\n */\n color: inherit;\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n/*\n * This file contains all rules for forced-colors and highcontrast modes\n * https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/system-color to see all color keywords the browsers are providing\n */\n@layer kol-forced-colors {\n @media (forced-colors: active) {\n .kol-button__text {\n color: ButtonText;\n background-color: ButtonFace;\n border: 2px solid ButtonBorder;\n }\n .kol-button--disabled .kol-button__text {\n color: GrayText;\n border-color: GrayText;\n }\n /*\n * Forced colors drop author colors, so the only way a disabled control still reads as\n * disabled is the `GrayText` system color. `kol-button` had it; the controls whose disabled\n * state is `aria-disabled` (anchor, summary) and the native form controls did not.\n */\n .kol-link__interactive-element[aria-disabled=true],\n .kol-accordion__heading[aria-disabled=true],\n .kol-details__heading[aria-disabled=true] {\n color: GrayText;\n }\n .kol-link__interactive-element[aria-disabled=true] .kol-icon,\n .kol-link__interactive-element[aria-disabled=true] .kol-span__label,\n .kol-accordion__heading[aria-disabled=true] .kol-icon,\n .kol-accordion__heading[aria-disabled=true] .kol-span__label,\n .kol-details__heading[aria-disabled=true] .kol-icon,\n .kol-details__heading[aria-disabled=true] .kol-span__label {\n color: GrayText;\n }\n input:disabled,\n select:disabled,\n textarea:disabled {\n color: GrayText;\n border-color: GrayText;\n }\n .kol-card,\n .kol-dialog,\n .kol-modal {\n color: CanvasText;\n background-color: Canvas;\n border: 1px solid ButtonBorder;\n }\n .kol-pagination__button--selected .kol-button {\n opacity: 1;\n }\n .kol-pagination__button--selected .kol-button__text {\n color: SelectedItemText;\n background-color: SelectedItem;\n }\n /* focus styles */\n .kol-button__interactive-element:focus-visible,\n .kol-link__interactive-element:focus-visible {\n outline: 2px solid Highlight;\n outline-offset: 2px;\n }\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%;\n margin: 0;\n padding: 0;\n border: none;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: white;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n align-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n /* A disabled `fieldset` only groups its controls; `cursor` is inherited and would reach the\n operable info popover in its legend. */\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled]:where(:not(fieldset)),\n [disabled]:where(:not(fieldset)):focus {\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n .hastooltip {\n z-index: 900 !important;\n }\n}\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1791530377872\"); /* IE9*/\n src: url(\"kolicons.eot?t=1791530377872#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1791530377872\") format(\"woff2\"), url(\"kolicons.woff?t=1791530377872\") format(\"woff\"), url(\"kolicons.ttf?t=1791530377872\") format(\"truetype\"), url(\"kolicons.svg?t=1791530377872#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n@layer kol-component {\n [class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n .kolicon-alert-error::before {\n content: \"\\ea01\";\n }\n .kolicon-alert-info::before {\n content: \"\\ea02\";\n }\n .kolicon-alert-success::before {\n content: \"\\ea03\";\n }\n .kolicon-alert-warning::before {\n content: \"\\ea04\";\n }\n .kolicon-check::before {\n content: \"\\ea05\";\n }\n .kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n }\n .kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n }\n .kolicon-chevron-down::before {\n content: \"\\ea08\";\n }\n .kolicon-chevron-left::before {\n content: \"\\ea09\";\n }\n .kolicon-chevron-right::before {\n content: \"\\ea0a\";\n }\n .kolicon-chevron-up::before {\n content: \"\\ea0b\";\n }\n .kolicon-cogwheel::before {\n content: \"\\ea0c\";\n }\n .kolicon-cross::before {\n content: \"\\ea0d\";\n }\n .kolicon-eye-closed::before {\n content: \"\\ea0e\";\n }\n .kolicon-eye::before {\n content: \"\\ea0f\";\n }\n .kolicon-house::before {\n content: \"\\ea10\";\n }\n .kolicon-kolibri::before {\n content: \"\\ea11\";\n }\n .kolicon-link-external::before {\n content: \"\\ea12\";\n }\n .kolicon-link::before {\n content: \"\\ea13\";\n }\n .kolicon-minus::before {\n content: \"\\ea14\";\n }\n .kolicon-pin-pinned::before {\n content: \"\\ea15\";\n }\n .kolicon-pin-unpinned::before {\n content: \"\\ea16\";\n }\n .kolicon-plus::before {\n content: \"\\ea17\";\n }\n .kolicon-settings::before {\n content: \"\\ea18\";\n }\n .kolicon-sort-asc::before {\n content: \"\\ea19\";\n }\n .kolicon-sort-desc::before {\n content: \"\\ea1a\";\n }\n .kolicon-sort-neutral::before {\n content: \"\\ea1b\";\n }\n .kolicon-up::before {\n content: \"\\ea1c\";\n }\n .kolicon-version::before {\n content: \"\\ea1d\";\n }\n}\n/*\n * Badge box for every shadow root that renders `BadgeFC` - the badge itself and `kol-version`.\n * Stencil scopes `badge/style.scss` to the `kol-badge` shadow root, so a second consumer has to\n * bring these rules along (same pattern as `kol-link-styles` for `LinkFC`).\n *\n * The smart-button rules stay in `badge/style.scss`: only the badge web component orchestrates one.\n */\n@layer kol-component {\n /* The version renders `BadgeFC` inline, so the badge box has to live in this shadow root too. */\n .kol-icon {\n color: inherit;\n display: inline-block;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n .kol-badge {\n /* Visible with forced colors */\n outline: transparent solid calc(1 * 1rem / var(--kolibri-root-font-size, 16));\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n .kol-badge > br {\n user-select: none;\n }\n}";
|
|
35054
35070
|
|
|
35055
35071
|
const VERSION_COLORS = createContrastColorPair('#bec5c9');
|
|
35056
35072
|
const VERSION_COLOR = { backgroundColor: VERSION_COLORS.background, foregroundColor: VERSION_COLORS.foreground };
|