@conuti-das/prince-ui 0.9.3

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.
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/primitives/forms.css","../src/primitives/overlays.css","../src/primitives/navigation.css","../src/composites/composites.css","../src/composites/appshell.css","../src/charts/charts.css","../src/launchpad/launchpad.css","../src/data/data.css","../src/data/table.css","../src/data/objectpage.css","../src/primitives/choice.css","../src/primitives/numeric.css","../src/primitives/combobox.css","../src/primitives/form.css","../src/primitives/collections.css","../src/primitives/breadcrumbs.css","../src/primitives/disclosure.css","../src/primitives/tree.css","../src/primitives/table-aria.css","../src/primitives/datefields.css","../src/primitives/calendar.css","../src/primitives/datepicker.css","../src/primitives/color.css","../src/primitives/color-pickers.css","../src/primitives/status.css","../src/primitives/toast.css","../src/primitives/dropzone.css","../src/surfaces/glass.css"],"sourcesContent":["/* Form-Primitives — Prince-Look auf React Aria. Tokens: prince-ui-tokens */\n\n/* ---- Button ---- */\n.prn-button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n min-height: 34px;\n padding: 0 16px;\n border: none;\n border-radius: var(--prn-radius-md);\n font: var(--prn-text-callout);\n font-weight: 600;\n cursor: pointer;\n user-select: none;\n transition: filter var(--prn-dur-fast) var(--prn-ease-standard),\n background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-button[data-variant=\"filled\"] {\n background: var(--prn-accent);\n color: var(--prn-on-accent);\n}\n.prn-button[data-variant=\"filled\"][data-hovered] { background: var(--prn-accent-hover); }\n.prn-button[data-variant=\"filled\"][data-pressed] { background: var(--prn-accent-pressed); }\n.prn-button[data-variant=\"tinted\"] {\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n}\n.prn-button[data-variant=\"tinted\"][data-hovered] { filter: brightness(1.05); }\n.prn-button[data-variant=\"plain\"] {\n background: transparent;\n color: var(--prn-accent-strong);\n padding: 0 8px;\n}\n.prn-button[data-variant=\"plain\"][data-hovered] { background: var(--prn-fill); }\n.prn-button[data-disabled] { opacity: 0.5; cursor: not-allowed; }\n/* Deaktivierter gefüllter Button: neutrale Fläche statt gedimmtem Akzent →\n liest klar als inaktiv (statt „aktiver als getönt\"). */\n.prn-button[data-variant=\"filled\"][data-disabled] {\n background: var(--prn-fill-strong);\n color: var(--prn-label-3);\n opacity: 1;\n}\n.prn-button[data-focus-visible] { box-shadow: var(--prn-focus); }\n\n/* ---- Field (gemeinsam) ---- */\n.prn-field {\n display: flex;\n flex-direction: column;\n gap: 5px;\n}\n.prn-field-label {\n font: var(--prn-text-subhead);\n font-weight: 590;\n color: var(--prn-label-2);\n}\n.prn-field-desc { font: var(--prn-text-footnote); color: var(--prn-label-3); }\n.prn-field-error { font: var(--prn-text-footnote); color: var(--prn-red); }\n\n.prn-input {\n width: 100%;\n min-height: 34px;\n padding: 7px 12px;\n border: none;\n border-radius: var(--prn-radius-md);\n background: var(--prn-fill);\n color: var(--prn-label);\n font: var(--prn-text-body);\n}\n.prn-input::placeholder { color: var(--prn-label-3); }\n.prn-input[data-focused],\n.prn-input:focus { outline: none; box-shadow: var(--prn-focus); }\n\n.prn-searchfield .prn-input {\n background-image: none;\n padding-left: 12px;\n}\n\n/* ---- Checkbox ---- */\n.prn-checkbox {\n display: inline-flex;\n align-items: center;\n gap: 9px;\n cursor: pointer;\n font: var(--prn-text-body);\n color: var(--prn-label);\n}\n.prn-checkbox-box {\n width: 20px;\n height: 20px;\n border-radius: 6px;\n background: var(--prn-fill);\n box-shadow: inset 0 0 0 1.5px var(--prn-separator);\n display: grid;\n place-items: center;\n transition: background var(--prn-dur-fast), box-shadow var(--prn-dur-fast);\n}\n.prn-checkbox-check {\n width: 14px;\n height: 14px;\n fill: none;\n stroke: var(--prn-on-accent);\n stroke-width: 2.4;\n stroke-linecap: round;\n stroke-linejoin: round;\n opacity: 0;\n transition: opacity var(--prn-dur-fast);\n}\n.prn-checkbox[data-selected] .prn-checkbox-box,\n.prn-checkbox[data-indeterminate] .prn-checkbox-box {\n background: var(--prn-accent);\n box-shadow: none;\n}\n.prn-checkbox[data-selected] .prn-checkbox-check { opacity: 1; }\n.prn-checkbox[data-focus-visible] .prn-checkbox-box { box-shadow: var(--prn-focus); }\n.prn-checkbox[data-disabled] { opacity: 0.45; cursor: not-allowed; }\n\n/* ---- Switch ---- */\n.prn-switch {\n display: inline-flex;\n align-items: center;\n gap: 10px;\n cursor: pointer;\n font: var(--prn-text-body);\n color: var(--prn-label);\n}\n.prn-switch-track {\n width: 50px;\n height: 30px;\n border-radius: 999px;\n background: var(--prn-fill-strong);\n padding: 2px;\n transition: background var(--prn-dur) var(--prn-ease-standard);\n flex: none;\n}\n.prn-switch-handle {\n display: block;\n width: 26px;\n height: 26px;\n border-radius: 50%;\n background: #fff;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\n transform: translateX(0);\n transition: transform var(--prn-dur) var(--prn-ease-spring);\n}\n.prn-switch[data-selected] .prn-switch-track { background: var(--prn-accent); }\n.prn-switch[data-selected] .prn-switch-handle { transform: translateX(20px); }\n.prn-switch[data-focus-visible] .prn-switch-track { box-shadow: var(--prn-focus); }\n.prn-switch[data-disabled] { opacity: 0.45; cursor: not-allowed; }\n\n/* ---- Select ---- */\n.prn-select-button {\n display: inline-flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n width: 100%;\n min-height: 34px;\n padding: 7px 12px;\n border: none;\n border-radius: var(--prn-radius-md);\n background: var(--prn-fill);\n color: var(--prn-label);\n font: var(--prn-text-body);\n cursor: pointer;\n}\n.prn-select-button[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-select-value[data-placeholder] { color: var(--prn-label-3); }\n.prn-select-chevron { color: var(--prn-label-2); }\n","/* Overlay-Primitives — Modal, Menu, Popover, Tooltip (React Aria). */\n\n/* ---- Modal ---- */\n.prn-modal-overlay {\n position: fixed;\n inset: 0;\n z-index: 1000;\n display: grid;\n place-items: center;\n padding: 24px;\n background: var(--prn-scrim);\n backdrop-filter: blur(2px);\n}\n.prn-modal-overlay[data-entering] { animation: prn-overlay-in var(--prn-dur) var(--prn-ease-out); }\n.prn-modal-overlay[data-exiting] { animation: prn-overlay-in var(--prn-dur) var(--prn-ease-out) reverse; }\n\n.prn-modal {\n max-width: 560px;\n width: 100%;\n max-height: 85vh;\n overflow: auto;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius-lg);\n box-shadow: var(--prn-shadow-pop);\n backdrop-filter: var(--prn-card-blur);\n}\n.prn-modal[data-entering] { animation: prn-modal-in var(--prn-dur) var(--prn-ease-spring); }\n\n.prn-dialog {\n padding: 22px;\n outline: none;\n display: flex;\n flex-direction: column;\n gap: 14px;\n}\n.prn-dialog-title {\n margin: 0;\n font: var(--prn-text-title);\n color: var(--prn-label);\n}\n\n@keyframes prn-overlay-in { from { opacity: 0; } to { opacity: 1; } }\n@keyframes prn-modal-in {\n from { opacity: 0; transform: translateY(8px) scale(0.98); }\n to { opacity: 1; transform: none; }\n}\n\n/* ---- Popover (Menu/Select/Tooltip-Container) ---- */\n.prn-popover {\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius-md);\n box-shadow: var(--prn-shadow-pop);\n backdrop-filter: var(--prn-card-blur);\n padding: 6px;\n min-width: 180px;\n}\n.prn-popover[data-entering] { animation: prn-pop-in var(--prn-dur-fast) var(--prn-ease-out); }\n@keyframes prn-pop-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }\n\n/* ---- Menu / ListBox-Optionen ---- */\n.prn-menu, .prn-listbox { outline: none; display: flex; flex-direction: column; gap: 2px; max-height: inherit; }\n.prn-menu-item, .prn-option {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 7px 10px;\n border-radius: var(--prn-radius-sm);\n font: var(--prn-text-body);\n color: var(--prn-label);\n cursor: pointer;\n outline: none;\n}\n.prn-menu-item[data-focused], .prn-option[data-focused] {\n background: var(--prn-accent-soft);\n}\n.prn-menu-item[data-disabled], .prn-option[data-disabled] { opacity: 0.4; cursor: default; }\n.prn-option[data-selected]::after {\n content: \"✓\";\n margin-left: auto;\n color: var(--prn-accent-strong);\n font-weight: 700;\n}\n\n/* ---- Tooltip ---- */\n.prn-tooltip {\n background: var(--prn-label);\n color: var(--prn-bg-elevated);\n padding: 5px 9px;\n border-radius: var(--prn-radius-sm);\n font: var(--prn-text-footnote);\n box-shadow: var(--prn-shadow);\n max-width: 240px;\n}\n.prn-tooltip[data-entering] { animation: prn-pop-in var(--prn-dur-fast) var(--prn-ease-out); }\n.prn-tooltip-arrow svg { fill: var(--prn-label); }\n.prn-tooltip-arrow { display: block; }\n\n/* A11y: reduzierte Bewegung → kein Spring/Slide, nur sofortiges Einblenden. */\n@media (prefers-reduced-motion: reduce) {\n .prn-modal-overlay[data-entering],\n .prn-modal-overlay[data-exiting],\n .prn-modal[data-entering],\n .prn-modal[data-exiting],\n .prn-popover[data-entering],\n .prn-popover[data-exiting],\n .prn-tooltip[data-entering] {\n animation: none;\n }\n}\n","/* Navigation-Primitives — SegmentedControl, Tabs (React Aria). */\n\n/* ---- SegmentedControl ---- */\n.prn-segmented {\n display: inline-flex;\n gap: 2px;\n padding: 2px;\n border-radius: var(--prn-radius-md);\n background: rgba(0, 0, 0, 0.2); /* eingelassene Spur (in Light + Dark dunkler als die Fläche) */\n}\n.prn-segment {\n appearance: none;\n border: none;\n background: transparent;\n padding: 5px 14px;\n border-radius: calc(var(--prn-radius-md) - 2px);\n font: var(--prn-text-subhead);\n font-weight: 590;\n color: var(--prn-label-2);\n cursor: pointer;\n transition: background var(--prn-dur-fast), color var(--prn-dur-fast);\n}\n.prn-segment[data-hovered] { color: var(--prn-label); }\n.prn-segment[data-selected] {\n background: var(--prn-bg-elevated);\n color: var(--prn-label);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.28);\n}\n.prn-segment[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-segment[data-disabled] { opacity: 0.45; cursor: not-allowed; }\n\n/* ---- Tabs ---- */\n.prn-tabs { display: flex; flex-direction: column; gap: 14px; }\n.prn-tablist {\n display: flex;\n gap: 4px;\n border-bottom: 1px solid var(--prn-separator);\n}\n.prn-tab {\n position: relative;\n padding: 8px 12px;\n font: var(--prn-text-subhead);\n font-weight: 590;\n color: var(--prn-label-2);\n cursor: pointer;\n outline: none;\n border-bottom: 2px solid transparent;\n margin-bottom: -1px;\n transition: color var(--prn-dur-fast);\n}\n.prn-tab[data-hovered] { color: var(--prn-label); }\n.prn-tab[data-selected] {\n color: var(--prn-accent-strong);\n border-bottom-color: var(--prn-accent);\n}\n.prn-tab[data-focus-visible] { box-shadow: var(--prn-focus); border-radius: var(--prn-radius-sm); }\n.prn-tabpanel { outline: none; }\n","/* L2-Komposita — Prince-Look auf Tokens. Tokens: prince-ui-tokens */\n\n/* ============================================================\n * Card\n * ============================================================ */\n.prn-card {\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius-card);\n box-shadow: var(--prn-shadow);\n -webkit-backdrop-filter: var(--prn-card-blur);\n backdrop-filter: var(--prn-card-blur);\n color: var(--prn-label);\n}\n.prn-card[data-padding=\"none\"] { padding: 0; }\n.prn-card[data-padding=\"compact\"] { padding: 12px; }\n.prn-card[data-padding=\"regular\"] { padding: 18px; }\n.prn-card[data-padding=\"spacious\"] { padding: 26px; }\n\n/* Glas-Optik: in Light UND Dark halbtransparent + Blur */\n.prn-card[data-translucent] {\n background: var(--prn-bg-elevated-translucent);\n -webkit-backdrop-filter: var(--prn-blur);\n backdrop-filter: var(--prn-blur);\n}\n\n/* Klickbare Karte (react-aria Button) — Button-Defaults zurücksetzen + Hover-Lift */\n.prn-card-pressable {\n display: block;\n width: 100%;\n text-align: left;\n cursor: pointer;\n font-family: inherit;\n transition:\n transform var(--prn-dur-fast) var(--prn-ease-out),\n box-shadow var(--prn-dur-fast) var(--prn-ease-out);\n}\n.prn-card-pressable[data-hovered] {\n transform: translateY(-2px);\n box-shadow: var(--prn-shadow-raised);\n}\n.prn-card-pressable[data-pressed] {\n transform: translateY(0);\n box-shadow: var(--prn-shadow);\n}\n.prn-card-pressable[data-focus-visible] {\n outline: none;\n box-shadow: var(--prn-focus);\n}\n\n/* Badge-Leading-Icon */\n.prn-badge-icon {\n display: inline-flex;\n align-items: center;\n}\n\n.prn-card-head {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n margin-bottom: 14px;\n}\n.prn-card[data-padding=\"none\"] .prn-card-head { margin: 14px 18px; }\n.prn-card-title {\n margin: 0;\n font: var(--prn-text-headline);\n color: var(--prn-label);\n}\n.prn-card-head-slot {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n}\n\n/* ============================================================\n * KpiCard\n * ============================================================ */\n.prn-kpi {\n display: flex;\n flex-direction: column;\n gap: 6px;\n padding: 18px;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius-card);\n box-shadow: var(--prn-shadow);\n -webkit-backdrop-filter: var(--prn-card-blur);\n backdrop-filter: var(--prn-card-blur);\n}\n/* Klickbare KPI-Kachel (Drill-down) mit Hover-Lift */\n.prn-kpi-pressable {\n text-align: left;\n cursor: pointer;\n font-family: inherit;\n transition:\n transform var(--prn-dur-fast) var(--prn-ease-out),\n box-shadow var(--prn-dur-fast) var(--prn-ease-out);\n}\n.prn-kpi-pressable[data-hovered] {\n transform: translateY(-2px);\n box-shadow: var(--prn-shadow-raised);\n}\n.prn-kpi-pressable[data-pressed] {\n transform: translateY(0);\n box-shadow: var(--prn-shadow);\n}\n.prn-kpi-pressable[data-focus-visible] {\n outline: none;\n box-shadow: var(--prn-focus);\n}\n\n/* Akzent-„Hero\"-Kachel: Vollflächen-Akzent, dunkle Schrift */\n.prn-kpi[data-accent] {\n background: var(--prn-accent);\n border-color: transparent;\n}\n/* Dunkle Schrift auf der Akzent-Fläche (Kommentar oben): var(--prn-on-accent) ist\n weiß und ergab ~2.22 Kontrast auf Apple-Grün. Dunkler Text trifft ~7:1 auf\n Grün/Lime in allen Themes. */\n.prn-kpi[data-accent] .prn-kpi-label,\n.prn-kpi[data-accent] .prn-kpi-value,\n.prn-kpi[data-accent] .prn-kpi-delta {\n color: rgba(0, 0, 0, 0.82);\n}\n.prn-kpi[data-accent] .prn-kpi-icon {\n background: rgba(0, 0, 0, 0.12);\n color: rgba(0, 0, 0, 0.82);\n}\n.prn-kpi[data-accent] .prn-kpi-value[data-tone] { color: rgba(0, 0, 0, 0.82); }\n\n.prn-kpi-top {\n display: inline-flex;\n align-items: center;\n gap: 7px;\n}\n.prn-kpi-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 26px;\n height: 26px;\n border-radius: var(--prn-radius-sm);\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n font-size: 0.95rem;\n}\n.prn-kpi-label {\n font: var(--prn-text-subhead);\n font-weight: 590;\n color: var(--prn-label-2);\n}\n.prn-kpi-value {\n font: var(--prn-text-title);\n color: var(--prn-label);\n letter-spacing: -0.01em;\n}\n.prn-kpi-value[data-tone=\"positive\"] { color: var(--prn-green); }\n.prn-kpi-value[data-tone=\"critical\"] { color: var(--prn-orange); }\n.prn-kpi-value[data-tone=\"negative\"] { color: var(--prn-red); }\n.prn-kpi-delta {\n display: inline-flex;\n align-items: center;\n gap: 3px;\n font: var(--prn-text-footnote);\n font-weight: 590;\n color: var(--prn-label-2);\n}\n.prn-kpi-delta[data-trend=\"up\"] { color: var(--prn-green); }\n.prn-kpi-delta[data-trend=\"down\"] { color: var(--prn-red); }\n.prn-kpi-delta[data-trend=\"flat\"] { color: var(--prn-label-2); }\n.prn-kpi-arrow { font-size: 0.9em; line-height: 1; }\n\n/* ============================================================\n * Badge — getönte Pille\n * ============================================================ */\n.prn-badge {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 2px 9px;\n border-radius: var(--prn-radius-pill);\n font: var(--prn-text-caption);\n font-weight: 600;\n line-height: 1.5;\n white-space: nowrap;\n}\n.prn-badge[data-tone=\"neutral\"] {\n background: var(--prn-fill-strong);\n color: var(--prn-label-2);\n}\n.prn-badge[data-tone=\"gray\"] {\n background: var(--prn-fill-strong);\n color: var(--prn-label-2);\n}\n.prn-badge[data-tone=\"green\"] {\n background: var(--prn-tint-positive);\n color: var(--prn-green);\n}\n.prn-badge[data-tone=\"red\"] {\n background: var(--prn-tint-negative);\n color: var(--prn-red);\n}\n.prn-badge[data-tone=\"orange\"] {\n background: var(--prn-tint-critical);\n color: var(--prn-orange);\n}\n.prn-badge[data-tone=\"blue\"] {\n background: var(--prn-tint-info);\n color: var(--prn-blue);\n}\n.prn-badge[data-tone=\"teal\"] {\n background: color-mix(in srgb, var(--prn-teal) 16%, transparent);\n color: var(--prn-teal);\n}\n\n/* Solid-Variante: vollflächig gefüllt (für Marken-/Status-Pills) */\n.prn-badge[data-variant=\"solid\"][data-tone=\"neutral\"],\n.prn-badge[data-variant=\"solid\"][data-tone=\"gray\"] { background: var(--prn-neutral); color: #fff; }\n.prn-badge[data-variant=\"solid\"][data-tone=\"green\"] { background: var(--prn-green); color: var(--prn-on-status-fill); }\n.prn-badge[data-variant=\"solid\"][data-tone=\"red\"] { background: var(--prn-red); color: #fff; }\n.prn-badge[data-variant=\"solid\"][data-tone=\"orange\"] { background: var(--prn-orange); color: var(--prn-on-status-fill); }\n.prn-badge[data-variant=\"solid\"][data-tone=\"blue\"] { background: var(--prn-blue); color: #fff; }\n.prn-badge[data-variant=\"solid\"][data-tone=\"teal\"] { background: var(--prn-teal); color: #fff; }\n\n/* Beliebige Markenfarbe (überschreibt tone), für beide Varianten */\n.prn-badge[data-custom-color][data-variant=\"soft\"] {\n background: color-mix(in srgb, var(--prn-badge-color) 18%, transparent);\n color: var(--prn-badge-color);\n}\n.prn-badge[data-custom-color][data-variant=\"solid\"] {\n background: var(--prn-badge-color);\n color: var(--prn-badge-text-color, #fff);\n}\n\n/* ============================================================\n * Amount\n * ============================================================ */\n.prn-amount {\n font: var(--prn-text-body);\n color: var(--prn-label);\n}\n.prn-amount[data-colored][data-sign=\"pos\"] { color: var(--prn-green); }\n.prn-amount[data-colored][data-sign=\"neg\"] { color: var(--prn-red); }\n.prn-amount[data-colored][data-sign=\"zero\"] { color: var(--prn-label-2); }\n/* optische Abschwächung der Nachkommastellen */\n.prn-amount-dec {\n color: var(--prn-label-2);\n font-size: 0.82em;\n font-weight: inherit;\n}\n.prn-amount[data-colored] .prn-amount-dec { color: inherit; opacity: 0.62; }\n\n/* ============================================================\n * List + ListRow\n * ============================================================ */\n.prn-list {\n display: flex;\n flex-direction: column;\n}\n.prn-list-label {\n padding: 0 4px 6px;\n font: var(--prn-text-footnote);\n font-weight: 590;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n color: var(--prn-label-3);\n}\n.prn-list-rows {\n display: flex;\n flex-direction: column;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius);\n overflow: hidden;\n}\n.prn-list-rows > .prn-row + .prn-row {\n border-top: 1px solid var(--prn-separator);\n}\n.prn-list[data-inset] .prn-list-rows > .prn-row + .prn-row {\n border-top-color: transparent;\n background-clip: padding-box;\n position: relative;\n}\n.prn-list[data-inset] .prn-list-rows > .prn-row + .prn-row::before {\n content: \"\";\n position: absolute;\n top: 0;\n left: 16px;\n right: 0;\n border-top: 1px solid var(--prn-separator);\n}\n\n.prn-row {\n display: flex;\n align-items: center;\n gap: 12px;\n width: 100%;\n padding: 11px 14px;\n text-align: left;\n background: transparent;\n color: var(--prn-label);\n font: var(--prn-text-body);\n}\n.prn-row[data-active] { background: var(--prn-accent-soft); }\n\n.prn-row-pressable {\n border: none;\n cursor: pointer;\n font-family: inherit;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-row-pressable[data-hovered] { background: var(--prn-hover); }\n.prn-row-pressable[data-pressed] { background: var(--prn-pressed); }\n.prn-row-pressable[data-active][data-hovered] { background: var(--prn-accent-soft); }\n.prn-row-pressable[data-focus-visible] {\n outline: none;\n box-shadow: var(--prn-focus);\n z-index: 1;\n}\n.prn-row-pressable[data-disabled] { opacity: 0.45; cursor: not-allowed; }\n\n.prn-row-leading {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n color: var(--prn-label-2);\n}\n.prn-row-main {\n display: flex;\n flex-direction: column;\n gap: 1px;\n min-width: 0;\n flex: 1;\n}\n.prn-row-title {\n font: var(--prn-text-body);\n color: var(--prn-label);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.prn-row-subtitle {\n font: var(--prn-text-footnote);\n color: var(--prn-label-3);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.prn-row-trailing {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n flex: none;\n color: var(--prn-label-2);\n font: var(--prn-text-subhead);\n}\n\n/* ============================================================\n * Sidebar — macOS-Stil\n * ============================================================ */\n.prn-sidebar {\n display: flex;\n flex-direction: column;\n width: 248px;\n height: 100%;\n background: var(--prn-bg-sidebar);\n -webkit-backdrop-filter: var(--prn-blur);\n backdrop-filter: var(--prn-blur);\n border-right: 1px solid var(--prn-separator);\n}\n.prn-sidebar-header {\n padding: 14px 16px;\n font: var(--prn-text-headline);\n color: var(--prn-label);\n}\n.prn-sidebar-scroll {\n flex: 1;\n overflow-y: auto;\n padding: 6px 10px;\n display: flex;\n flex-direction: column;\n gap: 14px;\n}\n.prn-sidebar-group {\n display: flex;\n flex-direction: column;\n gap: 1px;\n}\n.prn-sidebar-group-label {\n padding: 4px 8px;\n font: var(--prn-text-footnote);\n font-weight: 590;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n /* label-2 statt label-3: Gruppen-Header sind Section-Labels und müssen\n WCAG-AA erfüllen (label-3 @0.3 alpha = 2.48 Kontrast; label-2 @0.6 ≈ 6:1). */\n color: var(--prn-label-2);\n}\n.prn-sidebar-group-items {\n display: flex;\n flex-direction: column;\n gap: 1px;\n}\n/* aufklappbarer Gruppentitel (Button) */\n.prn-sidebar-group-toggle {\n display: flex;\n align-items: center;\n gap: 4px;\n width: 100%;\n border: none;\n background: transparent;\n cursor: pointer;\n text-align: left;\n border-radius: var(--prn-radius-xs);\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-sidebar-group-toggle[data-hovered] { background: var(--prn-hover); }\n.prn-sidebar-group-toggle[data-pressed] { background: var(--prn-pressed); }\n.prn-sidebar-group-toggle[data-focus-visible] {\n outline: none;\n box-shadow: var(--prn-focus);\n}\n.prn-sidebar-group-chevron {\n display: inline-flex;\n flex: none;\n font-size: 0.9em;\n color: var(--prn-label-3);\n transition: transform var(--prn-dur-fast) var(--prn-ease-out);\n transform: rotate(90deg);\n}\n.prn-sidebar-group-toggle[data-collapsed] .prn-sidebar-group-chevron {\n transform: rotate(0deg);\n}\n.prn-sidebar-group-label-text {\n flex: 1;\n min-width: 0;\n}\n.prn-sidebar-item {\n display: flex;\n align-items: center;\n gap: 9px;\n width: 100%;\n padding: 7px 10px;\n border: none;\n border-radius: var(--prn-radius-sm);\n background: transparent;\n color: var(--prn-label);\n font: var(--prn-text-callout);\n font-weight: 500;\n text-align: left;\n cursor: pointer;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-sidebar-item[data-hovered] { background: var(--prn-hover); }\n.prn-sidebar-item[data-pressed] { background: var(--prn-pressed); }\n.prn-sidebar-item[data-active] {\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n font-weight: 600;\n}\n.prn-sidebar-item[data-focus-visible] {\n outline: none;\n box-shadow: var(--prn-focus);\n}\n.prn-sidebar-item-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 20px;\n flex: none;\n color: inherit;\n}\n.prn-sidebar-item-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.prn-sidebar-item-trailing {\n flex: none;\n font: var(--prn-text-caption);\n color: var(--prn-label-3);\n}\n.prn-sidebar-footer {\n padding: 10px 14px;\n border-top: 1px solid var(--prn-separator);\n}\n\n/* ============================================================\n * Toolbar\n * ============================================================ */\n.prn-toolbar {\n display: flex;\n align-items: center;\n gap: 12px;\n min-height: 52px;\n padding: 8px 18px;\n background: var(--prn-bg-bar);\n -webkit-backdrop-filter: var(--prn-blur);\n backdrop-filter: var(--prn-blur);\n box-shadow: var(--prn-shadow-bar);\n}\n.prn-toolbar-leading {\n display: inline-flex;\n align-items: center;\n flex: none;\n}\n.prn-toolbar-titles {\n display: flex;\n flex-direction: column;\n gap: 1px;\n min-width: 0;\n flex: 1;\n}\n.prn-toolbar-title {\n font: var(--prn-text-title-3);\n color: var(--prn-label);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.prn-toolbar-subtitle {\n font: var(--prn-text-footnote);\n color: var(--prn-label-3);\n}\n.prn-toolbar-actions {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n flex: none;\n}\n\n/* ============================================================\n * EmptyState\n * ============================================================ */\n.prn-empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n text-align: center;\n gap: 8px;\n padding: 48px 24px;\n}\n.prn-empty-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 56px;\n height: 56px;\n margin-bottom: 4px;\n border-radius: var(--prn-radius-lg);\n background: var(--prn-fill);\n color: var(--prn-label-3);\n font-size: 1.6rem;\n}\n.prn-empty-title {\n font: var(--prn-text-headline);\n color: var(--prn-label);\n}\n.prn-empty-desc {\n max-width: 36ch;\n font: var(--prn-text-callout);\n color: var(--prn-label-2);\n}\n.prn-empty-action {\n margin-top: 8px;\n}\n\n/* ============================================================\n * Notice — Inline-Banner\n * ============================================================ */\n.prn-notice {\n display: flex;\n align-items: flex-start;\n gap: 10px;\n padding: 12px 14px;\n border-radius: var(--prn-radius-md);\n color: var(--prn-label);\n}\n.prn-notice[data-tone=\"info\"] { background: var(--prn-tint-info); }\n.prn-notice[data-tone=\"positive\"] { background: var(--prn-tint-positive); }\n.prn-notice[data-tone=\"critical\"] { background: var(--prn-tint-critical); }\n.prn-notice[data-tone=\"negative\"] { background: var(--prn-tint-negative); }\n\n.prn-notice-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 20px;\n height: 20px;\n flex: none;\n border-radius: var(--prn-radius-pill);\n font-size: 0.78rem;\n font-weight: 700;\n line-height: 1;\n}\n.prn-notice[data-tone=\"info\"] .prn-notice-icon { background: var(--prn-blue); color: #fff; }\n.prn-notice[data-tone=\"positive\"] .prn-notice-icon { background: var(--prn-green); color: #fff; }\n.prn-notice[data-tone=\"critical\"] .prn-notice-icon { background: var(--prn-orange); color: var(--prn-on-status-fill); }\n.prn-notice[data-tone=\"negative\"] .prn-notice-icon { background: var(--prn-red); color: #fff; }\n\n.prn-notice-body {\n display: flex;\n flex-direction: column;\n gap: 2px;\n min-width: 0;\n}\n.prn-notice-title {\n font: var(--prn-text-subhead);\n font-weight: 600;\n color: var(--prn-label);\n}\n.prn-notice-text {\n font: var(--prn-text-footnote);\n color: var(--prn-label-2);\n}\n\n/* ============================================================\n * DescriptionList + Field — read-only Label/Wert-Paare\n * ============================================================ */\n.prn-dl {\n margin: 0;\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n.prn-dl[data-layout=\"inline\"] {\n gap: 8px;\n}\n.prn-field {\n display: flex;\n flex-direction: column;\n gap: 2px;\n min-width: 0;\n}\n.prn-dl[data-layout=\"inline\"] .prn-field {\n flex-direction: row;\n align-items: baseline;\n justify-content: space-between;\n gap: 16px;\n}\n.prn-field-label {\n margin: 0;\n font: var(--prn-text-footnote);\n font-weight: 590;\n color: var(--prn-label-2);\n}\n.prn-field-value {\n margin: 0;\n font: var(--prn-text-body);\n color: var(--prn-label);\n min-width: 0;\n overflow-wrap: anywhere;\n}\n.prn-dl[data-layout=\"inline\"] .prn-field-value {\n text-align: right;\n}\n","/* ============================================================\n * AppShell — Apple-orientierte App-Hülle (UI5-ShellBar-äquivalent)\n * Shell-Bar (Logo/Titel/Suche/Items/Notifications/ProductSwitch/Profil)\n * + Sidebar + Content. Glas (Default) auf Shell-Bar und Sidebar.\n * Responsiv über Breakpoints: Phone ≤767, Tablet ≤1024.\n * ============================================================ */\n\n.prn-appshell {\n display: grid;\n grid-template-rows: auto 1fr;\n min-height: 100%;\n height: 100%;\n background: var(--prn-app-bg);\n color: var(--prn-label);\n}\n\n/* ---- Shell-Bar ---- */\n.prn-shellbar {\n position: sticky;\n top: 0;\n z-index: 30;\n display: flex;\n align-items: center;\n gap: 8px;\n height: 52px;\n padding: 0 10px;\n}\n\n/* Icon-Buttons (Toggle, Items, Notifications, ProductSwitch, Search-Toggle) */\n.prn-shellbar-toggle,\n.prn-shellbar-btn,\n.prn-shellbar-searchtoggle {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 36px;\n height: 36px;\n flex: 0 0 auto;\n border: none;\n border-radius: var(--prn-radius-sm);\n background: transparent;\n color: var(--prn-label);\n cursor: pointer;\n}\n.prn-shellbar-toggle:hover,\n.prn-shellbar-btn:hover,\n.prn-shellbar-searchtoggle:hover {\n background: var(--prn-hover);\n}\n\n/* Zähler-Badge auf Icon-Buttons */\n.prn-shellbar-badge {\n position: absolute;\n top: 2px;\n right: 2px;\n min-width: 16px;\n height: 16px;\n padding: 0 4px;\n border-radius: var(--prn-radius-pill);\n background: var(--prn-red);\n color: #fff;\n font: var(--prn-text-caption);\n line-height: 16px;\n text-align: center;\n}\n\n/* Logo */\n.prn-shellbar-logo {\n display: inline-flex;\n align-items: center;\n flex: 0 0 auto;\n}\n.prn-shellbar-logobtn {\n border: none;\n background: transparent;\n padding: 4px;\n border-radius: var(--prn-radius-sm);\n cursor: pointer;\n color: var(--prn-label);\n}\n.prn-shellbar-logobtn:hover {\n background: var(--prn-hover);\n}\n\n/* Titel-Block */\n.prn-shellbar-titles {\n display: flex;\n flex-direction: column;\n justify-content: center;\n min-width: 0;\n flex: 0 1 auto;\n}\n.prn-shellbar-title {\n font: var(--prn-text-headline);\n color: var(--prn-label);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.prn-shellbar-subtitle {\n font: var(--prn-text-footnote);\n color: var(--prn-label-2);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n/* Titel als Dropdown-Trigger (Button-Reset) */\n.prn-shellbar-titlebtn.prn-button {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 2px 6px;\n min-height: 0;\n background: transparent;\n border: none;\n box-shadow: none;\n color: var(--prn-label);\n}\n.prn-shellbar-titlebtn.prn-button:hover {\n background: var(--prn-hover);\n}\n/* Button-basierter Overflow-Trigger auf Icon-Button-Maß bringen */\n.prn-shellbar-btn.prn-button {\n padding: 0;\n min-height: 0;\n border: none;\n box-shadow: none;\n}\n\n/* Suche (inline) */\n.prn-shellbar-search {\n flex: 0 1 360px;\n min-width: 0;\n}\n\n.prn-shellbar-spacer {\n flex: 1 1 auto;\n}\n\n/* Aktions-Items (inline) */\n.prn-shellbar-items {\n display: inline-flex;\n align-items: center;\n gap: 2px;\n}\n/* Overflow-„…\" (nur auf schmalen Screens) */\n.prn-shellbar-overflow {\n display: none;\n}\n\n/* Such-Toggle (nur Phone) */\n.prn-shellbar-searchtoggle {\n display: none;\n}\n\n.prn-shellbar-user {\n display: inline-flex;\n align-items: center;\n flex: 0 0 auto;\n}\n.prn-shellbar-userbtn {\n border: none;\n background: transparent;\n padding: 2px;\n border-radius: var(--prn-radius-pill);\n cursor: pointer;\n}\n.prn-shellbar-actions {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n flex: 0 0 auto;\n}\n\n/* Items im Overflow-/Dropdown-Menü: Icon + Label nebeneinander */\n.prn-menu-item > svg {\n margin-right: 8px;\n vertical-align: -3px;\n}\n\n/* Aufgeklappte Such-Zeile (Mobile) */\n.prn-shellbar-searchrow {\n padding: 8px 12px;\n border-bottom: 1px solid var(--prn-glass-border);\n background: var(--prn-bg-elevated);\n}\n\n/* ---- Body: Sidebar | Content ---- */\n.prn-appshell-body {\n display: grid;\n grid-template-columns: var(--prn-appshell-sidebar-w, 260px) 1fr;\n min-height: 0;\n}\n.prn-appshell[data-collapsed] .prn-appshell-body {\n grid-template-columns: 0 1fr;\n}\n.prn-appshell-sidebar {\n overflow: auto;\n min-height: 0;\n}\n.prn-appshell[data-collapsed] .prn-appshell-sidebar {\n overflow: hidden;\n}\n.prn-appshell-sidebar > .prn-sidebar {\n width: 100%;\n height: 100%;\n background: transparent;\n -webkit-backdrop-filter: none;\n backdrop-filter: none;\n border: 0;\n}\n.prn-appshell-content {\n overflow: auto;\n min-width: 0;\n min-height: 0;\n padding: 16px;\n}\n.prn-appshell-scrim {\n display: none;\n}\n\n/* ============================================================\n * Tablet / iPad (≤1024px): Untertitel aus, Items → Overflow.\n * ============================================================ */\n@media (max-width: 1024px) {\n .prn-shellbar-subtitle {\n display: none;\n }\n .prn-shellbar-items {\n display: none;\n }\n .prn-shellbar-overflow {\n display: inline-flex;\n }\n}\n\n/* ============================================================\n * Phone (≤767px): Suche kollabiert, Sidebar als Off-canvas.\n * ============================================================ */\n@media (max-width: 767px) {\n .prn-shellbar-search {\n display: none;\n }\n .prn-shellbar-searchtoggle {\n display: inline-flex;\n }\n /* Sekundäre Chrome ausblenden, damit die Bar auf Phone nicht überläuft. */\n .prn-shellbar-actions,\n .prn-shellbar-productswitch {\n display: none;\n }\n .prn-shellbar {\n gap: 4px;\n padding: 0 6px;\n }\n\n .prn-appshell-body {\n grid-template-columns: 1fr;\n }\n .prn-appshell[data-collapsed] .prn-appshell-body {\n grid-template-columns: 1fr;\n }\n\n .prn-appshell-sidebar {\n position: fixed;\n top: 52px;\n bottom: 0;\n left: 0;\n width: 82%;\n max-width: 320px;\n z-index: 50;\n transform: translateX(-100%);\n transition: transform var(--prn-dur) var(--prn-ease-out);\n border-right: 1px solid var(--prn-glass-border);\n }\n .prn-appshell:not([data-collapsed]) .prn-appshell-sidebar {\n transform: translateX(0);\n }\n .prn-appshell:not([data-collapsed]) .prn-appshell-scrim {\n display: block;\n position: fixed;\n inset: 52px 0 0 0;\n z-index: 40;\n background: var(--prn-scrim);\n }\n}\n\n/* A11y: reduzierte Bewegung → kein Slide. */\n@media (prefers-reduced-motion: reduce) {\n .prn-appshell-sidebar {\n transition: none;\n }\n}\n","/* Charts — reine SVG, Prince-Look. Tokens: prince-ui-tokens.\n Regel: niemals rohe Hex/RGB — immer var(--prn-*). */\n\n/* ---- Basis ---- */\n.prn-chart {\n display: block;\n width: 100%;\n height: auto;\n overflow: visible;\n}\n\n/* Sparkline füllt ihren Slot vollständig (preserveAspectRatio=\"none\"). */\n.prn-chart-sparkline {\n height: 100%;\n}\n\n/* ---- Achsen / Grid ---- */\n.prn-chart-grid {\n stroke: var(--prn-separator);\n stroke-width: 1;\n vector-effect: non-scaling-stroke;\n}\n.prn-chart-axis {\n stroke: var(--prn-separator-opaque);\n stroke-width: 1;\n vector-effect: non-scaling-stroke;\n}\n.prn-chart-axislabel {\n font: var(--prn-text-caption);\n fill: var(--prn-label-3);\n}\n\n/* ---- Donut ---- */\n.prn-chart-donut {\n display: flex;\n align-items: center;\n gap: calc(var(--prn-space) * 2);\n flex-wrap: wrap;\n}\n.prn-chart-donut > .prn-chart {\n flex: 0 0 auto;\n width: 160px;\n max-width: 100%;\n}\n.prn-chart-donut-center {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n height: 100%;\n text-align: center;\n font: var(--prn-text-title-3);\n color: var(--prn-label);\n line-height: 1.1;\n}\n\n/* ---- Legende ---- */\n.prn-chart-legend {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n gap: 6px;\n min-width: 0;\n}\n.prn-chart-legend-item {\n display: flex;\n align-items: center;\n gap: 8px;\n font: var(--prn-text-subhead);\n color: var(--prn-label);\n}\n.prn-chart-legend-swatch {\n flex: 0 0 auto;\n width: 10px;\n height: 10px;\n border-radius: 3px;\n}\n.prn-chart-legend-label {\n color: var(--prn-label-2);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.prn-chart-legend-value {\n margin-left: auto;\n font-weight: 600;\n color: var(--prn-label);\n}\n\n/* ---- Leerzustand ---- */\n.prn-chart-empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n min-height: 120px;\n padding: var(--prn-space);\n border-radius: var(--prn-radius-md);\n color: var(--prn-label-3);\n}\n.prn-chart-empty--compact {\n min-height: 0;\n flex-direction: row;\n padding: 0;\n}\n.prn-chart-empty-icon {\n width: 40px;\n height: 40px;\n fill: var(--prn-label-4);\n}\n.prn-chart-empty-text {\n font: var(--prn-text-footnote);\n color: var(--prn-label-3);\n}\n","/* ============================================================\n * Launchpad — Apple-Bento-Dashboard\n * Grid + Sections + polymorphe Cards + Drag-Reorder + Drill-down.\n * ============================================================ */\n\n.prn-launchpad {\n display: flex;\n flex-direction: column;\n gap: 28px;\n}\n\n/* ---- Section ---- */\n.prn-lp-section {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n.prn-lp-section-head {\n display: flex;\n align-items: baseline;\n gap: 8px;\n padding: 0 2px;\n}\n.prn-lp-section-icon {\n display: inline-flex;\n align-self: center;\n color: var(--prn-label-2);\n}\n.prn-lp-section-title {\n font: var(--prn-text-title-3);\n color: var(--prn-label);\n margin: 0;\n}\n.prn-lp-section-sub {\n font: var(--prn-text-subhead);\n /* label-2 statt label-3: Subtitle trägt echte Info (z.B. \"62 aktive Ziele\"),\n muss lesbar sein — label-3 (0.3 alpha) war ~1.71 Kontrast im Light-Mode. */\n color: var(--prn-label-2);\n}\n\n/* ---- Grid ---- */\n.prn-lp-grid {\n display: grid;\n grid-template-columns: repeat(4, minmax(0, 1fr));\n gap: 16px;\n outline: none;\n}\n\n/* ---- Zelle (GridListItem) ---- */\n.prn-lp-cell {\n outline: none;\n min-width: 0;\n list-style: none;\n /* Flex-Spalte: die Card füllt die (vom Grid gestreckte) Zellhöhe zuverlässig. */\n display: flex;\n flex-direction: column;\n transition: transform var(--prn-dur) var(--prn-ease-out), box-shadow var(--prn-dur-fast),\n opacity var(--prn-dur-fast);\n}\n.prn-lp-cell[data-focus-visible] {\n box-shadow: var(--prn-focus);\n border-radius: var(--prn-radius-card);\n}\n/* Drag „aufgreifen\": leicht größer + angehoben (statt weggedrückt). */\n.prn-lp-cell[data-dragging] {\n opacity: 0.9;\n transform: scale(1.03);\n box-shadow: var(--prn-shadow-raised);\n cursor: grabbing;\n}\n.prn-launchpad[data-editable] .prn-lp-cell {\n cursor: grab;\n}\n/* Sichtbare react-aria-Einfügelinie beim Reorder (Pointer UND Tastatur). */\n.prn-lp-drop {\n outline: none;\n}\n.prn-lp-drop[data-drop-target] {\n outline: 2.5px solid var(--prn-accent);\n outline-offset: 2px;\n border-radius: var(--prn-radius-card);\n background: var(--prn-accent-soft);\n}\n/* Direkter Zell-Inhalt füllt die (vom Grid gestreckte) Zelle. In static ist das\n die Card; im editable-Modus ein klassenloser react-aria-Wrapper-DIV. */\n.prn-lp-cell > * {\n flex: 1 1 auto;\n min-height: 0;\n min-width: 0;\n}\n.prn-lp-cell > div:not(.prn-lp-card) {\n display: flex;\n flex-direction: column;\n}\n.prn-lp-card {\n flex: 1 1 auto;\n width: 100%;\n min-width: 0;\n box-sizing: border-box;\n}\n\n/* Inhalt darf die Card-Breite nie sprengen (sonst clippt overflow Badges etc.). */\n.prn-lp-card,\n.prn-lp-card * {\n min-width: 0;\n}\n/* Datencards opak — Glas bleibt der Nav-Ebene (ShellBar/Sidebar) vorbehalten. */\n.prn-lp-card {\n -webkit-backdrop-filter: none;\n backdrop-filter: none;\n}\n.prn-lp-list .prn-list {\n width: 100%;\n}\n/* width:100% + Padding ohne border-box ließ Zeilen überlaufen → Badges geclippt. */\n.prn-lp-list .prn-list-rows,\n.prn-lp-list .prn-row {\n box-sizing: border-box;\n}\n\n/* Spalten-Span (robust über data-span statt calc im grid-column) */\n.prn-lp-cell[data-span=\"2\"] {\n grid-column: span 2;\n}\n.prn-lp-cell[data-span=\"3\"] {\n grid-column: span 3;\n}\n.prn-lp-cell[data-span=\"4\"] {\n grid-column: span 4;\n}\n\n/* ---- nav-Card ---- */\n.prn-lp-nav {\n display: flex;\n flex-direction: column;\n gap: 6px;\n position: relative;\n}\n.prn-lp-nav-icon {\n display: inline-flex;\n color: var(--prn-label);\n}\n.prn-lp-nav-title {\n font: var(--prn-text-headline);\n color: var(--prn-label);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.prn-lp-nav-desc {\n font: var(--prn-text-subhead);\n color: var(--prn-label-2);\n overflow-wrap: anywhere;\n}\n.prn-lp-nav-badge {\n position: absolute;\n top: 0;\n right: 0;\n}\n\n/* ---- trend-Card ---- */\n.prn-lp-trend-head {\n display: flex;\n align-items: baseline;\n gap: 8px;\n margin-bottom: 6px;\n}\n.prn-lp-trend-value {\n font: var(--prn-text-title);\n color: var(--prn-label);\n font-variant-numeric: tabular-nums;\n}\n.prn-lp-delta {\n display: inline-flex;\n align-items: center;\n gap: 2px;\n font: var(--prn-text-subhead);\n color: var(--prn-label-2);\n}\n.prn-lp-delta.is-up {\n color: var(--prn-green);\n}\n.prn-lp-delta.is-down {\n color: var(--prn-red);\n}\n.prn-lp-trend-chart {\n margin: 0 -4px -4px;\n}\n.prn-lp-trend-chart svg {\n width: 100%;\n height: auto;\n}\n\n/* ---- list-Card ---- */\n.prn-lp-list-title {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n}\n.prn-lp-list-count {\n font: var(--prn-text-footnote);\n color: var(--prn-label-2);\n background: var(--prn-fill);\n border-radius: var(--prn-radius-pill);\n padding: 1px 8px;\n}\n\n/* Expand- / Show-all-Buttons */\n.prn-lp-expand {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: var(--prn-radius-sm);\n background: transparent;\n color: var(--prn-label-2);\n cursor: pointer;\n outline: none;\n}\n/* Trefferfläche auf 44px erweitern (Touch/WCAG 2.5.5), Optik bleibt 28px. */\n.prn-lp-expand::after {\n content: \"\";\n position: absolute;\n inset: -8px;\n}\n.prn-lp-expand:hover {\n background: var(--prn-hover);\n color: var(--prn-label);\n}\n.prn-lp-expand[data-focus-visible] {\n box-shadow: var(--prn-focus);\n}\n.prn-lp-showall {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n margin-top: 6px;\n min-height: var(--prn-hit);\n padding: 8px 2px;\n border: none;\n background: transparent;\n color: var(--prn-accent);\n font: var(--prn-text-subhead);\n cursor: pointer;\n outline: none;\n}\n.prn-lp-showall[data-focus-visible] {\n box-shadow: var(--prn-focus);\n border-radius: var(--prn-radius-sm);\n}\n\n/* ---- Drill-down-Popup ---- */\n.prn-lp-modal {\n min-width: min(560px, 92vw);\n}\n.prn-lp-detail {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n.prn-lp-detail svg {\n max-width: 100%;\n height: auto;\n}\n\n/* ============================================================\n * Responsiv: iPad ≤1024 = 3 Spalten, Phone ≤640 = 1, ≤900 = 2.\n * Cards können nie breiter als die Spaltenzahl spannen.\n * ============================================================ */\n@media (max-width: 1024px) {\n .prn-lp-grid {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n .prn-lp-cell[data-span=\"4\"] {\n grid-column: span 3;\n }\n}\n@media (max-width: 900px) {\n .prn-lp-grid {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n .prn-lp-cell[data-span=\"3\"],\n .prn-lp-cell[data-span=\"4\"] {\n grid-column: span 2;\n }\n}\n@media (max-width: 640px) {\n .prn-launchpad {\n gap: 22px;\n }\n .prn-lp-grid {\n grid-template-columns: 1fr;\n gap: 12px;\n }\n .prn-lp-cell,\n .prn-lp-cell[data-span=\"2\"],\n .prn-lp-cell[data-span=\"3\"],\n .prn-lp-cell[data-span=\"4\"] {\n grid-column: 1 / -1;\n }\n .prn-lp-cell:hover {\n transform: none;\n }\n}\n\n/* A11y: reduzierte Bewegung */\n@media (prefers-reduced-motion: reduce) {\n .prn-lp-cell {\n transition: none;\n }\n .prn-lp-cell[data-dragging] {\n transform: none;\n box-shadow: none;\n }\n}\n","/* L3-Datenschicht — Prince-Look auf TanStack + React Aria.\n * Tokens: prince-ui-tokens. Niemals rohe Hex/RGB. */\n\n/* =================================================================\n * AnalyticalTable\n * ================================================================= */\n\n.prn-table {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius);\n overflow: hidden;\n font: var(--prn-text-subhead);\n color: var(--prn-label);\n}\n\n/* Scroll-Viewport (Virtualisierung) */\n.prn-table-scroll {\n position: relative;\n width: 100%;\n overflow: auto;\n /* via Inline-Style: max-height für Virtualisierung */\n}\n\n.prn-table-grid {\n display: grid;\n /* grid-template-columns wird per Inline-Style gesetzt */\n width: 100%;\n}\n\n/* ---- Kopf ---- */\n.prn-table-head {\n display: contents;\n}\n.prn-th {\n position: sticky;\n top: 0;\n z-index: 2;\n display: flex;\n align-items: center;\n gap: 6px;\n min-height: 40px;\n padding: 0 14px;\n background: var(--prn-bg-head);\n border-bottom: 1px solid var(--prn-separator);\n font: var(--prn-text-footnote);\n font-weight: 600;\n color: var(--prn-label-2);\n user-select: none;\n white-space: nowrap;\n}\n.prn-th[data-align=\"end\"] { justify-content: flex-end; }\n.prn-th[data-sortable] { cursor: pointer; }\n.prn-th[data-sortable]:hover { background: var(--prn-hover); color: var(--prn-label); }\n.prn-th[data-focus-visible] { box-shadow: var(--prn-focus); border-radius: var(--prn-radius-xs); }\n.prn-th[data-sorted] { color: var(--prn-label); }\n\n.prn-th-sort {\n display: inline-flex;\n width: 12px;\n font-size: 0.85em;\n line-height: 1;\n color: var(--prn-accent-strong);\n opacity: 0;\n transition: opacity var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-th[data-sorted] .prn-th-sort { opacity: 1; }\n.prn-th[data-sortable]:hover .prn-th-sort:not([data-active]) {\n opacity: 0.4;\n color: var(--prn-label-3);\n}\n\n/* Checkbox-Kopf-/Zellenspalte */\n.prn-th-select,\n.prn-td-select {\n justify-content: center;\n padding: 0 8px;\n}\n\n/* ---- Zeilen / Zellen ---- */\n.prn-table-row {\n display: contents;\n}\n.prn-td {\n display: flex;\n align-items: center;\n min-height: 44px;\n padding: 8px 14px;\n border-bottom: 1px solid var(--prn-hairline);\n background: var(--prn-bg-elevated);\n font: var(--prn-text-subhead);\n color: var(--prn-label);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.prn-td[data-align=\"end\"] {\n justify-content: flex-end;\n font-variant-numeric: tabular-nums;\n font-feature-settings: \"tnum\" 1;\n}\n\n/* Ganze Zeile als interaktive Einheit (onRowAction) */\n.prn-table-row[data-interactive] .prn-td { cursor: pointer; }\n.prn-table-row[data-hovered] .prn-td { background: var(--prn-hover); }\n.prn-table-row[data-selected] .prn-td { background: var(--prn-accent-soft); }\n.prn-table-row[data-focus-visible] .prn-td {\n box-shadow: inset 0 0 0 2px var(--prn-accent);\n}\n.prn-table-row:last-child .prn-td { border-bottom: none; }\n\n/* Fokus-Anker (eine fokussierbare Zelle pro Zeile, restl. via Keyboard) */\n.prn-table-row-focus {\n outline: none;\n}\n\n/* ---- Skeleton ---- */\n.prn-skel-line {\n height: 12px;\n width: 70%;\n border-radius: 6px;\n}\n.prn-td[data-align=\"end\"] .prn-skel-line { margin-left: auto; width: 48%; }\n\n/* ---- Leerzustand ---- */\n.prn-table-empty {\n grid-column: 1 / -1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 6px;\n padding: 48px 24px;\n text-align: center;\n color: var(--prn-label-3);\n}\n.prn-table-empty-title {\n font: var(--prn-text-headline);\n color: var(--prn-label-2);\n}\n.prn-table-empty-desc { font: var(--prn-text-footnote); }\n\n/* ---- Gruppierung ---- */\n.prn-table-group {\n display: flex;\n align-items: center;\n gap: 8px;\n height: var(--prn-row-h, 44px);\n padding: 0 14px;\n font-weight: 600;\n background: var(--prn-fill);\n border-bottom: 1px solid var(--prn-separator);\n cursor: pointer;\n}\n.prn-table-group:focus-visible {\n outline: 2px solid var(--prn-accent);\n outline-offset: -2px;\n}\n.prn-group-chevron { width: 1em; color: var(--prn-label-2); }\n.prn-group-count { color: var(--prn-label-2); font-weight: 400; }\n.prn-group-aggs {\n margin-left: auto;\n display: flex;\n gap: 16px;\n font-variant-numeric: tabular-nums;\n font-feature-settings: \"tnum\" 1;\n}\n\n/* Group-Bar (Gruppierung hinzufügen/entfernen) */\n.prn-groupbar {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 4px;\n flex-wrap: wrap;\n}\n.prn-groupbar-label { color: var(--prn-label-2); font: var(--prn-text-footnote); }\n.prn-groupbar-empty { color: var(--prn-label-3); }\n.prn-group-chip {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 2px 8px;\n border-radius: var(--prn-radius-pill);\n background: var(--prn-fill);\n font: var(--prn-text-footnote);\n font-weight: 590;\n}\n.prn-group-chip-remove {\n border: 0;\n background: transparent;\n color: inherit;\n cursor: pointer;\n font-size: 15px;\n line-height: 1;\n}\n.prn-group-chip-remove:hover { color: var(--prn-label); }\n\n/* Toolbar-Zeile (teilt sich Group-Bar + ⚙-Spaltenmenü) */\n.prn-table-toolbar {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 4px 8px;\n flex-wrap: wrap;\n}\n.prn-table-toolbar .prn-groupbar { flex: 1 1 auto; padding: 4px 0; }\n.prn-colmenu { margin-left: auto; }\n.prn-colmenu-list {\n display: flex;\n flex-direction: column;\n gap: 2px;\n min-width: 220px;\n margin: 0;\n padding: 4px;\n list-style: none;\n}\n.prn-colmenu-row {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 4px 6px;\n border-radius: var(--prn-radius-xs);\n}\n.prn-colmenu-row:hover { background: var(--prn-hover); }\n.prn-colmenu-label { font: var(--prn-text-subhead); color: var(--prn-label); }\n.prn-colmenu-actions { margin-left: auto; display: inline-flex; gap: 2px; }\n.prn-colmenu-btn {\n display: inline-grid;\n place-items: center;\n width: 22px;\n height: 22px;\n border: none;\n border-radius: var(--prn-radius-xs);\n background: transparent;\n color: var(--prn-label-2);\n font-size: 13px;\n line-height: 1;\n cursor: pointer;\n}\n.prn-colmenu-btn:hover:not(:disabled) { background: var(--prn-fill-strong); color: var(--prn-label); }\n.prn-colmenu-btn:disabled { opacity: 0.35; cursor: default; }\n.prn-colmenu-btn[data-active] { color: var(--prn-accent-strong); background: var(--prn-accent-soft); }\n\n/* ---- Spalten-Pinning (sticky links/rechts) ---- */\n.prn-th[data-pinned],\n.prn-td[data-pinned] {\n background: inherit;\n}\n.prn-th[data-pinned] { background: var(--prn-bg-head); }\n.prn-td[data-pinned] { background: var(--prn-bg-elevated); }\n.prn-table-row[data-hovered] .prn-td[data-pinned] { background: var(--prn-hover); }\n.prn-table-row[data-selected] .prn-td[data-pinned] { background: var(--prn-accent-soft); }\n.prn-th[data-pinned=\"left\"],\n.prn-td[data-pinned=\"left\"] { box-shadow: 1px 0 0 var(--prn-separator); }\n.prn-th[data-pinned=\"right\"],\n.prn-td[data-pinned=\"right\"] { box-shadow: -1px 0 0 var(--prn-separator); }\n\n/* =================================================================\n * FilterBar\n * ================================================================= */\n\n.prn-filterbar {\n display: flex;\n flex-direction: column;\n gap: 10px;\n width: 100%;\n}\n.prn-filterbar-row {\n display: flex;\n align-items: flex-end;\n gap: 12px;\n flex-wrap: wrap;\n}\n.prn-filter-field {\n display: flex;\n flex-direction: column;\n gap: 5px;\n min-width: 160px;\n}\n.prn-filter-field-label {\n font: var(--prn-text-footnote);\n font-weight: 590;\n color: var(--prn-label-2);\n}\n.prn-filter-field-control {\n display: flex;\n align-items: center;\n}\n\n.prn-filterbar-spacer { flex: 1 1 auto; }\n\n.prn-filterbar-actions {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n/* aktive-Filter-Chips */\n.prn-filter-chips {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 8px;\n}\n.prn-filter-chip {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n height: 28px;\n padding: 0 6px 0 12px;\n border: none;\n border-radius: var(--prn-radius-pill);\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n font: var(--prn-text-footnote);\n font-weight: 590;\n white-space: nowrap;\n}\n.prn-filter-chip-label { opacity: 0.75; }\n.prn-filter-chip-value { font-weight: 600; }\n.prn-filter-chip-remove {\n display: inline-grid;\n place-items: center;\n width: 18px;\n height: 18px;\n border: none;\n border-radius: var(--prn-radius-pill);\n background: transparent;\n color: inherit;\n font-size: 14px;\n line-height: 1;\n cursor: pointer;\n opacity: 0.7;\n}\n.prn-filter-chip-remove:hover { background: var(--prn-fill-strong); opacity: 1; }\n.prn-filter-chip-remove[data-focus-visible] { box-shadow: var(--prn-focus); }\n\n.prn-filter-clear {\n border: none;\n background: transparent;\n color: var(--prn-accent-strong);\n font: var(--prn-text-footnote);\n font-weight: 590;\n cursor: pointer;\n padding: 0 6px;\n}\n.prn-filter-clear[data-focus-visible] { box-shadow: var(--prn-focus); border-radius: var(--prn-radius-xs); }\n\n/* \"Mehr Filter\"-Überlaufbereich */\n.prn-filter-more {\n display: flex;\n flex-direction: column;\n gap: 14px;\n min-width: 240px;\n padding: 4px;\n}\n\n/* =================================================================\n * ObjectPage\n * ================================================================= */\n\n.prn-objectpage {\n display: flex;\n flex-direction: column;\n gap: 20px;\n width: 100%;\n}\n\n.prn-objectpage-head {\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 20px 24px;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius);\n}\n.prn-objectpage-headrow {\n display: flex;\n align-items: flex-start;\n gap: 16px;\n flex-wrap: wrap;\n}\n.prn-objectpage-titles {\n display: flex;\n flex-direction: column;\n gap: 4px;\n min-width: 0;\n}\n.prn-objectpage-title {\n margin: 0;\n font: var(--prn-text-title);\n color: var(--prn-label);\n}\n.prn-objectpage-subtitle {\n font: var(--prn-text-subhead);\n color: var(--prn-label-2);\n}\n.prn-objectpage-status { margin-left: auto; }\n.prn-objectpage-actions {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n/* Status-Badge (eigenständig, da L2-Badge nicht zwingend verfügbar) */\n.prn-status-badge {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n height: 26px;\n padding: 0 12px;\n border-radius: var(--prn-radius-pill);\n font: var(--prn-text-footnote);\n font-weight: 600;\n white-space: nowrap;\n}\n.prn-status-badge[data-tone=\"positive\"] { background: var(--prn-tint-positive); color: var(--prn-green); }\n.prn-status-badge[data-tone=\"critical\"] { background: var(--prn-tint-critical); color: var(--prn-orange); }\n.prn-status-badge[data-tone=\"negative\"] { background: var(--prn-tint-negative); color: var(--prn-red); }\n.prn-status-badge[data-tone=\"info\"] { background: var(--prn-tint-info); color: var(--prn-blue); }\n.prn-status-badge[data-tone=\"neutral\"] { background: var(--prn-fill-strong); color: var(--prn-label-2); }\n.prn-status-dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: currentColor;\n}\n\n/* KPI-Reihe */\n.prn-objectpage-kpis {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));\n gap: 12px;\n}\n.prn-kpi {\n display: flex;\n flex-direction: column;\n gap: 4px;\n padding: 12px 14px;\n background: var(--prn-fill);\n border-radius: var(--prn-radius-md);\n}\n.prn-kpi-label { font: var(--prn-text-footnote); color: var(--prn-label-2); }\n.prn-kpi-value {\n font: var(--prn-text-title-3);\n color: var(--prn-label);\n font-variant-numeric: tabular-nums;\n font-feature-settings: \"tnum\" 1;\n}\n.prn-kpi-value[data-tone=\"positive\"] { color: var(--prn-green); }\n.prn-kpi-value[data-tone=\"critical\"] { color: var(--prn-orange); }\n.prn-kpi-value[data-tone=\"negative\"] { color: var(--prn-red); }\n\n/* Sektionen-Grid */\n.prn-objectpage-sections {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));\n gap: 16px;\n}\n.prn-objectpage-section {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 18px 20px;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius);\n}\n.prn-objectpage-section-title {\n margin: 0;\n font: var(--prn-text-headline);\n color: var(--prn-label);\n}\n.prn-field-grid {\n display: grid;\n grid-template-columns: minmax(120px, 0.45fr) 1fr;\n gap: 8px 16px;\n}\n.prn-field-row {\n display: contents;\n}\n.prn-field-key {\n font: var(--prn-text-subhead);\n color: var(--prn-label-2);\n}\n.prn-field-val {\n font: var(--prn-text-subhead);\n font-weight: 500;\n color: var(--prn-label);\n word-break: break-word;\n}\n.prn-field-val[data-numeric] {\n font-variant-numeric: tabular-nums;\n font-feature-settings: \"tnum\" 1;\n}\n","/* Zusätzliche Styles für die erweiterte AnalyticalTable (SAP-Parität).\n * Basis-Styles liegen in data.css; hier nur additive neue Klassen.\n * Tokens: prince-ui-tokens — niemals rohe Hex/RGB. */\n\n/* ---- Titel & Extension (B14) ---- */\n.prn-table-title {\n padding: 12px 16px 8px;\n font: var(--prn-text-headline);\n font-weight: 700;\n color: var(--prn-label);\n}\n.prn-table-extension {\n padding: 8px 12px;\n border-bottom: 1px solid var(--prn-separator);\n}\n\n/* ---- Viewport-Wrapper (für Overlay) ---- */\n.prn-table-viewport-wrap {\n position: relative;\n width: 100%;\n}\n\n/* ---- Sort-Index-Badge (Multi-Sort) ---- */\n.prn-th-sortidx {\n font-size: 0.7em;\n font-weight: 700;\n margin-left: 1px;\n color: var(--prn-accent-strong);\n}\n\n/* ---- Spalten-Filter im Header (B3) ---- */\n.prn-th-filter {\n display: inline-flex;\n align-items: center;\n margin-left: 2px;\n}\n.prn-th-filter-btn {\n min-width: 0;\n padding: 0 4px;\n font-size: 0.9em;\n line-height: 1;\n opacity: 0.5;\n}\n.prn-th:hover .prn-th-filter-btn {\n opacity: 0.9;\n}\n.prn-th-filter-btn-active {\n opacity: 1;\n color: var(--prn-accent-strong);\n}\n.prn-th-filter-popover {\n padding: 12px;\n min-width: 220px;\n}\n.prn-th-filter-body {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n/* ---- Column-Resizer (B6) ---- */\n.prn-th {\n position: sticky; /* aus data.css geerbt; hier nur für Resizer-Kontext relevant */\n}\n.prn-th-resizer {\n position: absolute;\n right: 0;\n top: 0;\n height: 100%;\n width: 6px;\n cursor: col-resize;\n user-select: none;\n touch-action: none;\n z-index: 3;\n}\n.prn-th-resizer:hover,\n.prn-th-resizer[data-resizing] {\n background: var(--prn-accent);\n opacity: 0.6;\n}\n\n.prn-th-resizer[data-autoresizable] {\n cursor: col-resize;\n}\n\n/* ---- Drag&Drop-Reorder Hinweis ---- */\n.prn-th[draggable=\"true\"] {\n cursor: grab;\n}\n\n/* ---- Custom-Header-Popover (B1.5) ---- */\n.prn-th-popover {\n display: inline-flex;\n align-items: center;\n margin-left: 2px;\n}\n.prn-th-popover-btn {\n min-width: 0;\n padding: 0 4px;\n font-size: 0.9em;\n line-height: 1;\n opacity: 0.5;\n}\n.prn-th:hover .prn-th-popover-btn {\n opacity: 0.9;\n}\n.prn-th-popover-content {\n padding: 12px;\n min-width: 200px;\n}\n\n/* ---- Row Sub-Component (B13.1) ---- */\n.prn-table-subrow {\n display: contents;\n}\n.prn-subcomponent {\n padding: 12px 16px;\n background: var(--prn-bg-elevated);\n border-bottom: 1px solid var(--prn-separator);\n}\n.prn-subcomponent-toggle {\n color: var(--prn-accent-strong);\n}\n\n/* ---- Tree-Table (B8) ---- */\n.prn-tree-chevron {\n display: inline-grid;\n place-items: center;\n width: 18px;\n height: 18px;\n margin-right: 4px;\n border: none;\n background: transparent;\n color: var(--prn-label-2);\n cursor: pointer;\n border-radius: var(--prn-radius-xs);\n font-size: 12px;\n line-height: 1;\n}\n.prn-tree-chevron:hover {\n background: var(--prn-fill-strong);\n color: var(--prn-label);\n}\n.prn-td-content {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n min-width: 0;\n}\n\n/* ---- Vertikale Ausrichtung (B1) ---- */\n.prn-td[data-valign=\"top\"] {\n align-items: flex-start;\n}\n.prn-td[data-valign=\"bottom\"] {\n align-items: flex-end;\n}\n\n/* ---- Zebra (B10) ---- */\n.prn-table-zebra .prn-table-row[data-zebra] .prn-td {\n background: var(--prn-fill);\n}\n.prn-table-zebra .prn-table-row[data-hovered] .prn-td {\n background: var(--prn-hover);\n}\n.prn-table-zebra .prn-table-row[data-selected] .prn-td {\n background: var(--prn-accent-soft);\n}\n\n/* ---- Row-Highlight Farbband (B10) ----\n * Das Farbband ist ein eigener, schmaler führender Grid-Track (Breite via\n * --prn-row-highlight-width, siehe grid-template-columns in table.tsx). Es belegt\n * automatisch die erste Spalte jeder Datenzeile; im Kopf hält .prn-th-highlight\n * denselben Track frei, damit Header und Body exakt aligned bleiben. */\n.prn-row-highlight {\n align-self: stretch;\n width: 3px;\n background: transparent;\n border-bottom: 1px solid var(--prn-hairline);\n}\n/* Header-Platzhalter für den Highlight-Track (leer, nur Track-Reservierung). */\n.prn-th-highlight {\n min-width: 0;\n padding: 0;\n background: var(--prn-bg-head);\n border-bottom: 1px solid var(--prn-separator);\n}\n.prn-table-row[data-highlight=\"information\"] .prn-row-highlight {\n background: var(--prn-blue);\n}\n.prn-table-row[data-highlight=\"positive\"] .prn-row-highlight {\n background: var(--prn-green);\n}\n.prn-table-row[data-highlight=\"critical\"] .prn-row-highlight {\n background: var(--prn-orange);\n}\n.prn-table-row[data-highlight=\"negative\"] .prn-row-highlight {\n background: var(--prn-red);\n}\n\n/* ---- Navigations-Spalte (B10) ---- */\n.prn-th-nav,\n.prn-td-nav {\n justify-content: center;\n padding: 0 6px;\n max-width: 36px;\n}\n.prn-nav-arrow {\n color: var(--prn-label-3);\n font-size: 1.1em;\n opacity: 0;\n}\n.prn-td-nav[data-navigated] .prn-nav-arrow,\n.prn-table-row[data-hovered] .prn-td-nav .prn-nav-arrow {\n opacity: 1;\n color: var(--prn-accent-strong);\n}\n\n/* ---- Leerzeilen (B7) ---- */\n.prn-table-row-empty .prn-td-empty {\n min-height: 44px;\n border-bottom: 1px solid var(--prn-hairline);\n background: var(--prn-bg-elevated);\n}\n\n/* ---- Responsive Pop-In (B11) ----\n * Die erste Zelle nimmt zusätzlich die eingeklappten Spalten auf. Damit der\n * Hauptwert (z. B. ID) NICHT vom Pop-In-Block verdrängt/abgeschnitten wird,\n * stapelt eine Pop-In-tragende Zelle vertikal statt horizontal. */\n.prn-td:has(.prn-popin) {\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n white-space: normal;\n overflow: visible;\n}\n.prn-td:has(.prn-popin) .prn-td-content {\n white-space: nowrap;\n}\n.prn-popin {\n display: flex;\n flex-direction: column;\n gap: 2px;\n margin-top: 2px;\n font: var(--prn-text-footnote);\n color: var(--prn-label-2);\n}\n.prn-popin-item[data-display=\"inline\"] {\n display: inline;\n}\n.prn-popin-label {\n color: var(--prn-label-3);\n}\n.prn-popin-value {\n color: var(--prn-label);\n font-weight: 500;\n}\n\n/* ---- Busy-Indicator / Overlay (B12) ---- */\n.prn-table-busy {\n grid-column: 1 / -1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 48px 24px;\n}\n.prn-table-overlay {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background: color-mix(in srgb, var(--prn-bg-elevated) 60%, transparent);\n z-index: 5;\n}\n.prn-busy-indicator {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n}\n.prn-busy-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: var(--prn-accent);\n animation: prn-busy-pulse 1s infinite ease-in-out;\n}\n.prn-busy-dot:nth-child(2) {\n animation-delay: 0.15s;\n}\n.prn-busy-dot:nth-child(3) {\n animation-delay: 0.3s;\n}\n@keyframes prn-busy-pulse {\n 0%,\n 80%,\n 100% {\n opacity: 0.3;\n transform: scale(0.8);\n }\n 40% {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n/* ---- Grid-Tastaturnavigation Fokus (B14) ---- */\n.prn-td:focus-visible {\n outline: 2px solid var(--prn-accent);\n outline-offset: -2px;\n border-radius: var(--prn-radius-xs);\n}\n","/* ObjectPage — SAP-Floorplan-Erweiterungen.\n * Tokens: prince-ui-tokens. Niemals rohe Hex/RGB.\n * Basis-Styles (.prn-objectpage*, .prn-kpi*, .prn-field*) bleiben in data.css;\n * hier nur die neuen Floorplan-Bestandteile. */\n\n.prn-objectpage {\n position: relative;\n}\n\n/* ---- Title / Top-Header ---- */\n.prn-op-top-header {\n position: relative;\n z-index: 3;\n /* Header darf im Flex-Column nicht zusammengedrückt werden. */\n flex: 0 0 auto;\n}\n.prn-op-breadcrumbs {\n margin-bottom: 4px;\n}\n.prn-op-image {\n flex: 0 0 auto;\n width: 56px;\n height: 56px;\n border-radius: var(--prn-radius-md);\n overflow: hidden;\n background: var(--prn-fill);\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.prn-op-image[data-circle] {\n border-radius: 50%;\n}\n.prn-op-image-img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n.prn-objectpage-title[data-clickable] {\n cursor: pointer;\n}\n.prn-op-state-content {\n margin-top: 6px;\n font: var(--prn-text-footnote);\n color: var(--prn-label-2);\n}\n.prn-op-navigation-bar {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-left: auto;\n}\n.prn-op-navigation-bar + .prn-objectpage-actions {\n margin-left: 0;\n}\n\n/* ---- A2: Header-Area / Pin / Snapping ---- */\n.prn-op-header-area {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding-top: 4px;\n border-top: 1px solid var(--prn-separator);\n margin-top: 4px;\n}\n.prn-op-pin {\n flex: 0 0 auto;\n width: 30px;\n height: 30px;\n border: none;\n border-radius: var(--prn-radius-xs);\n background: transparent;\n cursor: pointer;\n font-size: 15px;\n line-height: 1;\n color: var(--prn-label-2);\n}\n.prn-op-pin:hover {\n background: var(--prn-hover);\n}\n.prn-op-pin[aria-pressed=\"true\"] {\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n}\n\n.prn-objectpage[data-snapped] .prn-op-top-header {\n padding-top: 12px;\n padding-bottom: 12px;\n}\n\n/* ---- A1: Anchor-Bar (Tablist) ---- */\n.prn-op-anchorbar {\n position: sticky;\n top: 0;\n z-index: 2;\n /* Die ObjectPage ist ein Flex-Column-Container. Bekommt sie eine feste\n * Höhe und der expandierte Header lässt den Inhalt überlaufen, würde die\n * Anchor-Bar als shrinkbares Flex-Item auf ~0px zusammengedrückt und die\n * Tab-Labels verschwinden. Daher: nie schrumpfen, stabile Mindesthöhe. */\n flex: 0 0 auto;\n min-height: max-content;\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 6px 12px;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius);\n overflow-x: auto;\n overflow-y: hidden;\n}\n.prn-op-anchor {\n flex: 0 0 auto;\n appearance: none;\n border: none;\n background: transparent;\n padding: 7px 14px;\n border-radius: var(--prn-radius-pill);\n font: var(--prn-text-subhead);\n font-weight: 500;\n color: var(--prn-label-2);\n cursor: pointer;\n white-space: nowrap;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard),\n color var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-op-anchor:hover {\n background: var(--prn-hover);\n color: var(--prn-label);\n}\n.prn-op-anchor[data-selected] {\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n font-weight: 600;\n}\n.prn-op-anchor:focus-visible {\n outline: none;\n box-shadow: var(--prn-focus);\n}\n\n/* ---- Scroll-Container + Section-Stack ---- */\n.prn-op-scroll {\n position: relative;\n /* Der Scroll-Container ist das einzige Flex-Item, das überlaufenden Inhalt\n * aufnehmen soll: er wächst und schrumpft, Header/Anchor-Bar/Footer bleiben\n * fix. min-height:0 erlaubt das Schrumpfen unter die Content-Höhe. */\n flex: 1 1 auto;\n min-height: 0;\n max-height: var(--prn-op-scroll-max, none);\n overflow-y: auto;\n}\n.prn-objectpage-sections-stack {\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n.prn-op-section-anchor {\n scroll-margin-top: 60px;\n}\n\n/* iconTabBar: aktive Sektion füllt verfügbaren Raum */\n.prn-objectpage[data-mode=\"iconTabBar\"] .prn-op-section-anchor[data-active] {\n min-height: 100%;\n}\n\n/* ---- A1: Section / SubSection ---- */\n.prn-op-section {\n display: flex;\n flex-direction: column;\n gap: 14px;\n padding: 18px 20px;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius);\n}\n.prn-op-section-head {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 12px;\n}\n.prn-op-section-title {\n margin: 0;\n font: var(--prn-text-headline);\n color: var(--prn-label);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.prn-op-section-title[data-uppercase] {\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n.prn-op-section-title[data-wrap] {\n white-space: normal;\n overflow: visible;\n}\n.prn-op-section-header-content {\n flex: 0 0 auto;\n}\n.prn-op-section-body {\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.prn-op-subsection {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n.prn-op-subsection-head {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n}\n.prn-op-subsection-title {\n margin: 0;\n font: var(--prn-text-subhead);\n font-weight: 600;\n color: var(--prn-label-2);\n}\n.prn-op-subsection-actions {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n.prn-op-subsection-body {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n/* ---- A4: Placeholder ---- */\n.prn-op-placeholder {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 200px;\n padding: 40px 24px;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius);\n color: var(--prn-label-2);\n text-align: center;\n}\n\n/* ---- A4: Floating Footer ---- */\n.prn-op-footer {\n position: sticky;\n bottom: 0;\n z-index: 4;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 12px 20px;\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n border-radius: var(--prn-radius);\n box-shadow: var(--prn-shadow-2, 0 -2px 12px rgba(0, 0, 0, 0.08));\n}\n","/* Choice-Primitives — RadioGroup/Radio/CheckboxGroup. Nutzt prn-field- und prn-input-Klassen aus forms.css. */\n\n.prn-radiogroup-items,\n.prn-checkboxgroup-items {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.prn-radiogroup[data-orientation=\"horizontal\"] .prn-radiogroup-items {\n flex-direction: row;\n gap: 32px;\n}\n\n.prn-radio {\n display: inline-flex;\n align-items: center;\n gap: 11px;\n min-height: 32px;\n cursor: pointer;\n font: var(--prn-text-body);\n color: var(--prn-label);\n}\n.prn-radio-dot {\n width: 22px;\n height: 22px;\n border-radius: 50%;\n background: var(--prn-fill);\n box-shadow: inset 0 0 0 2px var(--prn-label-3);\n transition: box-shadow var(--prn-dur-fast);\n}\n.prn-radio[data-selected] .prn-radio-dot {\n box-shadow: inset 0 0 0 6px var(--prn-accent);\n}\n.prn-radio[data-focus-visible] .prn-radio-dot {\n box-shadow: var(--prn-focus);\n}\n.prn-radio[data-disabled] {\n opacity: 0.45;\n cursor: not-allowed;\n}\n","/* Numeric-Primitives — Prince-Look auf React Aria. Tokens: prince-ui-tokens.\n Felder/Inputs aus forms.css (prn-field*, prn-input) werden wiederverwendet. */\n\n/* ---- NumberField ---- */\n.prn-numberfield-group {\n display: inline-flex;\n align-items: center;\n background: var(--prn-fill);\n border-radius: var(--prn-radius-md);\n overflow: hidden;\n}\n.prn-numberfield-group[data-focus-within],\n.prn-numberfield-group:focus-within {\n box-shadow: var(--prn-focus);\n}\n\n.prn-numberfield-step {\n width: 36px;\n height: 36px;\n flex: none;\n border: none;\n background: transparent;\n color: var(--prn-label-2);\n font-size: 17px;\n line-height: 1;\n cursor: pointer;\n transition: background var(--prn-dur-fast), color var(--prn-dur-fast);\n}\n.prn-numberfield-step[data-hovered] {\n background: var(--prn-fill-strong);\n color: var(--prn-accent-strong);\n}\n.prn-numberfield-step[data-disabled] { opacity: 0.4; cursor: not-allowed; }\n\n/* Höhere Spezifität als .prn-input → Input ist transparent und Teil EINER Fläche\n (sonst doppelter Fill = hellerer Kasten-im-Kasten). */\n.prn-numberfield-group .prn-numberfield-input {\n flex: 1;\n min-width: 0;\n background: transparent;\n text-align: right;\n box-shadow: none;\n}\n.prn-numberfield-group .prn-numberfield-input[data-focused],\n.prn-numberfield-group .prn-numberfield-input:focus {\n outline: none;\n box-shadow: none;\n}\n\n/* ---- Slider ---- */\n.prn-slider {\n display: flex;\n flex-direction: column;\n gap: 8px;\n max-width: 320px;\n}\n.prn-slider-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n.prn-slider-output {\n font: var(--prn-text-subhead);\n color: var(--prn-label-2);\n font-variant-numeric: tabular-nums;\n}\n.prn-slider-track {\n position: relative;\n height: 4px;\n background: var(--prn-fill-strong);\n border-radius: 999px;\n width: 100%;\n margin: 10px 0;\n cursor: pointer;\n}\n.prn-slider-fill {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n background: var(--prn-accent);\n border-radius: inherit;\n pointer-events: none;\n}\n.prn-slider-thumb {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n background: #fff;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\n top: 50%;\n}\n.prn-slider-thumb[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-slider-thumb[data-dragging] { transform: translateY(-50%) scale(1.1); }\n\n.prn-numberfield { max-width: 200px; }\n","/* ComboBox — Prince-gestyltes RAC-ComboBox. Popover/Option-Look stammt aus overlays.css. */\n\n.prn-combobox-control {\n position: relative;\n display: inline-flex;\n align-items: center;\n width: 100%;\n}\n\n.prn-combobox-input {\n padding-right: 34px;\n}\n\n.prn-combobox-button {\n position: absolute;\n right: 4px;\n top: 50%;\n transform: translateY(-50%);\n width: 28px;\n height: 28px;\n border: none;\n background: transparent;\n color: var(--prn-label-3);\n font-size: 0.8em;\n cursor: pointer;\n display: grid;\n place-items: center;\n}\n.prn-combobox-button[data-hovered] {\n color: var(--prn-label-2);\n}\n",".prn-form { display: flex; flex-direction: column; gap: 16px; max-width: 420px; }\n","/* Collection-Primitives — ListBox, GridList, TagGroup (React Aria). */\n\n/* ---- ListBox (standalone) ---- */\n.prn-listbox-standalone {\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border, 1px solid var(--prn-separator));\n border-radius: var(--prn-radius-md);\n padding: 6px;\n min-width: 200px;\n max-height: 320px;\n overflow: auto;\n}\n\n/* ---- GridList ---- */\n.prn-gridlist {\n outline: none;\n display: flex;\n flex-direction: column;\n gap: 2px;\n background: var(--prn-bg-elevated);\n border-radius: var(--prn-radius-md);\n padding: 6px;\n min-width: 200px;\n}\n.prn-gridlist-item {\n display: flex;\n align-items: center;\n gap: 10px;\n min-height: 38px;\n padding: 8px 12px;\n border-radius: var(--prn-radius-sm);\n font: var(--prn-text-body);\n color: var(--prn-label);\n cursor: pointer;\n outline: none;\n}\n.prn-gridlist-item[data-hovered] { background: var(--prn-fill); }\n.prn-gridlist-item[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-gridlist-item[data-selected] { background: var(--prn-accent-soft); }\n.prn-gridlist-item[data-selected]::after {\n content: \"✓\";\n margin-left: auto;\n color: var(--prn-accent-strong);\n font-weight: 700;\n}\n.prn-gridlist-item[data-disabled] { opacity: 0.4; cursor: default; }\n\n/* ---- TagGroup ---- */\n.prn-taggroup {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n.prn-taglist {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n outline: none;\n}\n.prn-tag {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n min-height: 28px;\n padding: 4px 12px;\n border-radius: 999px;\n background: var(--prn-fill);\n color: var(--prn-label);\n font: var(--prn-text-subhead);\n cursor: default;\n outline: none;\n user-select: none;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-tag[data-hovered] { background: var(--prn-fill-strong); }\n.prn-tag[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-tag[data-selected] {\n background: var(--prn-accent);\n color: var(--prn-on-accent);\n}\n.prn-tag[data-disabled] { opacity: 0.4; }\n.prn-tag-label { line-height: 1.2; }\n.prn-tag-remove {\n display: inline-grid;\n place-items: center;\n width: 18px;\n height: 18px;\n margin-right: -4px;\n padding: 0;\n border: none;\n border-radius: 50%;\n background: transparent;\n color: inherit;\n cursor: pointer;\n opacity: 0.6;\n outline: none;\n transition: opacity var(--prn-dur-fast), background var(--prn-dur-fast);\n}\n.prn-tag-remove[data-hovered] { opacity: 1; background: rgba(127, 127, 127, 0.25); }\n.prn-tag-remove[data-focus-visible] { box-shadow: var(--prn-focus); opacity: 1; }\n.prn-tag-remove-icon {\n width: 11px;\n height: 11px;\n fill: none;\n stroke: currentColor;\n stroke-width: 1.8;\n stroke-linecap: round;\n}\n","/* Breadcrumbs- & Link-Primitives — Prince-Look auf React Aria. */\n\n/* ---- Breadcrumbs ---- */\n.prn-breadcrumbs {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 4px;\n margin: 0;\n padding: 0;\n list-style: none;\n font: var(--prn-text-subhead);\n}\n\n/* ---- Breadcrumb ---- */\n.prn-breadcrumb {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: var(--prn-label-2);\n}\n/* Chevron-Trenner nach jedem Eintrag außer dem letzten. */\n.prn-breadcrumb:not(:last-child)::after {\n content: \"›\";\n margin-left: 4px;\n color: var(--prn-label-3);\n font-weight: 400;\n}\n/* Aktuelle Seite: kein Link, gedeckte Label-Farbe. */\n.prn-breadcrumb[data-current] {\n color: var(--prn-label);\n font-weight: 590;\n}\n.prn-breadcrumb[data-current] .prn-link {\n color: var(--prn-label);\n cursor: default;\n text-decoration: none;\n}\n.prn-breadcrumb[data-disabled] { opacity: 0.45; }\n\n/* ---- Link ---- */\n.prn-link {\n color: var(--prn-accent-strong);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--prn-radius-sm);\n transition: color var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-link[data-hovered] { text-decoration: underline; }\n.prn-link[data-pressed] { color: var(--prn-accent); }\n.prn-link[data-focus-visible] {\n outline: none;\n box-shadow: var(--prn-focus);\n}\n.prn-link[data-disabled] {\n color: var(--prn-label-3);\n cursor: not-allowed;\n text-decoration: none;\n}\n","/* Disclosure-Primitives — Prince-Akkordeon auf React Aria. */\n\n/* ---- Disclosure ---- */\n.prn-disclosure {\n border-radius: var(--prn-radius-md);\n overflow: hidden;\n}\n\n.prn-disclosure-heading {\n margin: 0;\n font: inherit;\n font-weight: inherit;\n}\n\n.prn-disclosure-trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 10px;\n width: 100%;\n min-height: 44px;\n padding: 10px 14px;\n border: none;\n border-radius: var(--prn-radius-md);\n background: transparent;\n color: var(--prn-label);\n font: var(--prn-text-body);\n font-weight: 590;\n text-align: left;\n cursor: pointer;\n outline: none;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-disclosure-trigger[data-hovered] { background: var(--prn-fill); }\n.prn-disclosure-trigger[data-pressed] { background: var(--prn-fill-strong); }\n.prn-disclosure-trigger[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-disclosure-trigger[data-disabled] { opacity: 0.45; cursor: not-allowed; }\n\n.prn-disclosure-title { flex: 1; min-width: 0; }\n\n.prn-disclosure-chevron {\n flex: none;\n width: 16px;\n height: 16px;\n fill: none;\n stroke: var(--prn-label-3);\n stroke-width: 1.8;\n stroke-linecap: round;\n stroke-linejoin: round;\n transition: transform var(--prn-dur) var(--prn-ease-spring);\n}\n.prn-disclosure-trigger[data-expanded] .prn-disclosure-chevron {\n transform: rotate(90deg);\n}\n\n.prn-disclosure-panel {\n padding: 4px 14px 14px;\n font: var(--prn-text-body);\n color: var(--prn-label-2);\n outline: none;\n}\n\n/* ---- DisclosureGroup ---- */\n.prn-disclosure-group {\n display: flex;\n flex-direction: column;\n border-radius: var(--prn-radius-lg);\n background: var(--prn-bg-elevated);\n border: var(--prn-card-border);\n overflow: hidden;\n}\n.prn-disclosure-group .prn-disclosure {\n border-radius: 0;\n}\n.prn-disclosure-group .prn-disclosure + .prn-disclosure {\n border-top: 1px solid var(--prn-separator);\n}\n","/* Tree-Primitive — Prince-Look auf React Aria Tree. Tokens: prince-ui-tokens */\n\n.prn-tree {\n outline: none;\n display: flex;\n flex-direction: column;\n gap: 2px;\n padding: 4px;\n background: var(--prn-bg-elevated);\n border-radius: var(--prn-radius-md);\n color: var(--prn-label);\n font: var(--prn-text-body);\n}\n\n.prn-tree-item {\n outline: none;\n border-radius: var(--prn-radius-sm);\n /* Einrückung pro Ebene über das RAC data-level-Attribut. */\n --prn-tree-indent: calc((var(--tree-item-level, 1) - 1) * 18px);\n}\n\n.prn-tree-row {\n display: flex;\n align-items: center;\n gap: 6px;\n min-height: 34px;\n padding: 0 10px;\n padding-left: calc(10px + var(--prn-tree-indent));\n border-radius: var(--prn-radius-sm);\n cursor: pointer;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n\n.prn-tree-item[data-hovered] > .prn-tree-row {\n background: var(--prn-fill);\n}\n.prn-tree-item[data-selected] > .prn-tree-row {\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n}\n.prn-tree-item[data-focus-visible] > .prn-tree-row {\n box-shadow: var(--prn-focus);\n}\n.prn-tree-item[data-disabled] > .prn-tree-row {\n opacity: 0.45;\n cursor: not-allowed;\n}\n\n/* ---- Chevron (Aufklappen) ---- */\n.prn-tree-chevron {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 18px;\n height: 18px;\n flex: none;\n border: none;\n background: transparent;\n color: var(--prn-label-3);\n cursor: pointer;\n padding: 0;\n border-radius: var(--prn-radius-sm);\n transition: transform var(--prn-dur-fast) var(--prn-ease-spring),\n color var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-tree-chevron svg { width: 14px; height: 14px; }\n.prn-tree-chevron[data-hovered] { color: var(--prn-label); }\n.prn-tree-chevron[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-tree-item[data-expanded] > .prn-tree-row .prn-tree-chevron { transform: rotate(90deg); }\n.prn-tree-chevron-spacer { cursor: default; }\n\n/* ---- Auswahl-Checkbox ---- */\n.prn-tree-check {\n display: inline-flex;\n align-items: center;\n flex: none;\n cursor: pointer;\n}\n.prn-tree-check-box {\n width: 18px;\n height: 18px;\n border-radius: 5px;\n background: var(--prn-fill);\n box-shadow: inset 0 0 0 1.5px var(--prn-separator);\n display: grid;\n place-items: center;\n transition: background var(--prn-dur-fast), box-shadow var(--prn-dur-fast);\n}\n.prn-tree-check-mark {\n width: 12px;\n height: 12px;\n fill: none;\n stroke: var(--prn-on-accent);\n stroke-width: 2.4;\n stroke-linecap: round;\n stroke-linejoin: round;\n opacity: 0;\n transition: opacity var(--prn-dur-fast);\n}\n.prn-tree-check[data-selected] .prn-tree-check-box,\n.prn-tree-check[data-indeterminate] .prn-tree-check-box {\n background: var(--prn-accent);\n box-shadow: none;\n}\n.prn-tree-check[data-selected] .prn-tree-check-mark { opacity: 1; }\n.prn-tree-check[data-focus-visible] .prn-tree-check-box { box-shadow: var(--prn-focus); }\n\n/* ---- Label ---- */\n.prn-tree-label {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n","/* Table-Primitive — Prince-Look auf React Aria `Table`. Tokens: prince-ui-tokens */\n\n.prn-table {\n width: 100%;\n border-collapse: collapse;\n background: var(--prn-bg-elevated);\n color: var(--prn-label);\n font: var(--prn-text-body);\n text-align: left;\n /* RAC rendert ein <table>; trotzdem als reguläres Tabellen-Layout behandeln. */\n}\n\n/* ---- Kopfzeile ---- */\n.prn-table-header {\n color: var(--prn-label-2);\n}\n.prn-table-column {\n padding: 9px 14px;\n font: var(--prn-text-subhead);\n font-weight: 590;\n color: var(--prn-label-2);\n border-bottom: 1px solid var(--prn-separator);\n white-space: nowrap;\n outline: none;\n vertical-align: middle;\n}\n.prn-table-column[data-focus-visible] { box-shadow: inset var(--prn-focus); }\n.prn-table-column[data-allows-sorting] { cursor: pointer; user-select: none; }\n.prn-table-column[data-allows-sorting][data-hovered] { color: var(--prn-label); }\n\n.prn-table-column-inner {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n}\n.prn-table-sort-indicator {\n font-size: 0.65em;\n color: var(--prn-accent-strong);\n line-height: 1;\n}\n\n/* ---- Sticky-Header ---- */\n.prn-table[data-sticky] .prn-table-column {\n position: sticky;\n top: 0;\n z-index: 1;\n background: var(--prn-bg-elevated);\n}\n\n/* ---- Body / Zeilen ---- */\n.prn-table-row {\n outline: none;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-table-row[data-hovered] { background: var(--prn-fill); }\n.prn-table-row[data-pressed] { background: var(--prn-fill-strong); }\n.prn-table-row[data-selected] { background: var(--prn-accent-soft); }\n.prn-table-row[data-focus-visible] { box-shadow: inset var(--prn-focus); }\n.prn-table-row[data-disabled] { opacity: 0.45; }\n\n.prn-table-cell {\n padding: 10px 14px;\n border-bottom: 1px solid var(--prn-separator);\n color: var(--prn-label);\n vertical-align: middle;\n outline: none;\n}\n.prn-table-cell[data-focus-visible] { box-shadow: inset var(--prn-focus); }\n\n.prn-table-body[data-empty] {\n text-align: center;\n color: var(--prn-label-3);\n font: var(--prn-text-footnote);\n}\n\n/* ---- Auswahl-Spalte ---- */\n.prn-table-selection-cell {\n width: 44px;\n padding-left: 14px;\n padding-right: 0;\n}\n.prn-table-checkbox {\n gap: 0;\n}\n","/* Date-/Time-Field-Primitives — Prince-Look auf React Aria. */\n\n/* ---- DateInput (Pille aus Segmenten) ---- */\n.prn-dateinput {\n display: inline-flex;\n align-items: center;\n width: 100%;\n min-height: 34px;\n padding: 6px 10px;\n border-radius: var(--prn-radius-md);\n background: var(--prn-fill);\n color: var(--prn-label);\n font: var(--prn-text-body);\n font-variant-numeric: tabular-nums;\n white-space: nowrap;\n}\n.prn-dateinput[data-focus-within] { box-shadow: var(--prn-focus); }\n.prn-dateinput[data-disabled] { opacity: 0.45; }\n\n/* ---- DateSegment ---- */\n.prn-datesegment {\n padding: 1px 3px;\n border-radius: var(--prn-radius-sm);\n outline: none;\n text-align: center;\n color: var(--prn-label);\n font-variant-numeric: tabular-nums;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard),\n color var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-datesegment[data-type=\"literal\"] {\n padding: 0 1px;\n color: var(--prn-label-3);\n}\n.prn-datesegment[data-placeholder] { color: var(--prn-label-3); }\n.prn-datesegment[data-focused] {\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n}\n.prn-datesegment[data-invalid] { color: var(--prn-red); }\n.prn-datesegment[data-disabled] { color: var(--prn-label-3); }\n","/* Calendar-Primitives — Prince-Monatskalender auf React Aria. */\n\n.prn-calendar {\n display: inline-flex;\n flex-direction: column;\n gap: 10px;\n width: max-content;\n padding: 14px;\n background: var(--prn-bg-elevated);\n border-radius: var(--prn-radius-lg);\n color: var(--prn-label);\n user-select: none;\n}\n\n/* ---- Header (Monat + Navigation) ---- */\n.prn-calendar-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n padding: 0 2px;\n}\n.prn-calendar-title {\n margin: 0;\n flex: 1;\n text-align: center;\n font: var(--prn-text-body);\n font-weight: 600;\n color: var(--prn-label);\n}\n.prn-calendar-nav {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 34px;\n height: 34px;\n border: none;\n border-radius: var(--prn-radius-md);\n background: transparent;\n color: var(--prn-accent-strong);\n font-size: 22px;\n line-height: 1;\n cursor: pointer;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-calendar-nav[data-hovered] { background: var(--prn-fill); }\n.prn-calendar-nav[data-pressed] { background: var(--prn-fill-strong); }\n.prn-calendar-nav[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-calendar-nav[data-disabled] { opacity: 0.35; cursor: not-allowed; }\n\n/* ---- Gitter ---- */\n.prn-calendar-grid { border-collapse: collapse; }\n.prn-calendar-weekday {\n padding: 4px 0;\n font: var(--prn-text-footnote);\n font-weight: 600;\n color: var(--prn-label-3);\n text-align: center;\n text-transform: none;\n}\n\n/* ---- Tageszelle ---- */\n.prn-calendar-cell {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 38px;\n height: 38px;\n margin: 1px;\n border-radius: 50%;\n font: var(--prn-text-body);\n color: var(--prn-label);\n cursor: pointer;\n outline: none;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard),\n color var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-calendar-cell[data-hovered] { background: var(--prn-fill); }\n.prn-calendar-cell[data-pressed] { background: var(--prn-fill-strong); }\n.prn-calendar-cell[data-focus-visible] { box-shadow: var(--prn-focus); }\n\n.prn-calendar-cell[data-today] {\n box-shadow: inset 0 0 0 1.5px var(--prn-accent);\n font-weight: 600;\n}\n\n.prn-calendar-cell[data-selected] {\n background: var(--prn-accent);\n color: var(--prn-on-accent);\n box-shadow: none;\n font-weight: 600;\n}\n\n.prn-calendar-cell[data-outside-month] {\n color: var(--prn-label-3);\n opacity: 0.45;\n}\n.prn-calendar-cell[data-disabled] {\n color: var(--prn-label-3);\n opacity: 0.3;\n cursor: not-allowed;\n}\n.prn-calendar-cell[data-unavailable] {\n color: var(--prn-label-3);\n text-decoration: line-through;\n cursor: default;\n}\n\n/* ---- Range-Highlighting ---- */\n.prn-calendar-range .prn-calendar-cell[data-selected] {\n border-radius: 0;\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n font-weight: 500;\n}\n.prn-calendar-range .prn-calendar-cell[data-selection-start],\n.prn-calendar-range .prn-calendar-cell[data-selection-end] {\n background: var(--prn-accent);\n color: var(--prn-on-accent);\n font-weight: 600;\n}\n.prn-calendar-range .prn-calendar-cell[data-selection-start] { border-radius: 50% 0 0 50%; }\n.prn-calendar-range .prn-calendar-cell[data-selection-end] { border-radius: 0 50% 50% 0; }\n","/* DatePicker / DateRangePicker — Prince-Look auf React Aria.\n Nutzt prn-field/prn-field-label/prn-field-desc/prn-field-error (forms.css)\n und prn-popover (overlays.css). */\n\n/* ---- Trigger-Pille (Group als prn-dateinput) ---- */\n.prn-dateinput {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n min-height: 34px;\n width: 100%;\n padding: 4px 6px 4px 12px;\n border-radius: var(--prn-radius-md);\n background: var(--prn-fill);\n color: var(--prn-label);\n font: var(--prn-text-body);\n}\n.prn-dateinput[data-focus-within] { box-shadow: var(--prn-focus); }\n\n.prn-dateinput-segments {\n display: inline-flex;\n align-items: center;\n flex: 1;\n padding: 0;\n white-space: nowrap;\n}\n\n.prn-date-segment {\n padding: 0 1px;\n border-radius: 4px;\n font-variant-numeric: tabular-nums;\n color: var(--prn-label);\n outline: none;\n text-align: center;\n}\n.prn-date-segment[data-type=\"literal\"] { color: var(--prn-label-3); padding: 0; }\n.prn-date-segment[data-placeholder] { color: var(--prn-label-3); }\n.prn-date-segment[data-focused] {\n background: var(--prn-accent);\n color: var(--prn-on-accent);\n}\n.prn-date-segment[data-disabled] { color: var(--prn-label-3); }\n\n.prn-daterange-sep { color: var(--prn-label-3); padding: 0 4px; }\n.prn-daterange-group .prn-dateinput-segments { flex: none; }\n\n/* ---- Trailing-Trigger-Button ---- */\n.prn-dateinput-trigger {\n display: inline-grid;\n place-items: center;\n margin-left: auto;\n width: 28px;\n height: 28px;\n flex: none;\n border: none;\n border-radius: var(--prn-radius-sm);\n background: transparent;\n color: var(--prn-label-2);\n font-size: 15px;\n cursor: pointer;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-dateinput-trigger[data-hovered] { background: var(--prn-fill-strong); }\n.prn-dateinput-trigger[data-pressed] { background: var(--prn-fill-strong); filter: brightness(0.95); }\n.prn-dateinput-trigger[data-focus-visible] { box-shadow: var(--prn-focus); }\n\n/* ---- Popover / Dialog ---- */\n.prn-cal-popover { min-width: 0; padding: 12px; }\n.prn-cal-dialog { outline: none; }\n\n/* ---- Kalender ---- */\n.prn-calendar { width: max-content; }\n\n.prn-cal-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n margin-bottom: 8px;\n}\n.prn-cal-heading {\n margin: 0;\n font: var(--prn-text-subhead);\n font-weight: 600;\n color: var(--prn-label);\n}\n.prn-cal-nav {\n display: inline-grid;\n place-items: center;\n width: 30px;\n height: 30px;\n border: none;\n border-radius: var(--prn-radius-sm);\n background: transparent;\n color: var(--prn-accent-strong);\n font-size: 18px;\n line-height: 1;\n cursor: pointer;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-cal-nav[data-hovered] { background: var(--prn-fill); }\n.prn-cal-nav[data-focus-visible] { box-shadow: var(--prn-focus); }\n\n.prn-cal-grid { border-collapse: collapse; }\n.prn-cal-weekday {\n padding: 4px 0;\n font: var(--prn-text-footnote);\n font-weight: 600;\n color: var(--prn-label-3);\n text-align: center;\n}\n\n.prn-cal-cell {\n display: grid;\n place-items: center;\n width: 34px;\n height: 34px;\n margin: 1px;\n border-radius: 50%;\n font: var(--prn-text-callout);\n color: var(--prn-label);\n cursor: pointer;\n outline: none;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-cal-cell[data-outside-month] { display: none; }\n.prn-cal-cell[data-hovered] { background: var(--prn-fill); }\n.prn-cal-cell[data-pressed] { background: var(--prn-fill-strong); }\n.prn-cal-cell[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-cal-cell[data-today] { color: var(--prn-accent-strong); font-weight: 700; }\n.prn-cal-cell[data-selected] {\n background: var(--prn-accent);\n color: var(--prn-on-accent);\n font-weight: 600;\n}\n.prn-cal-cell[data-disabled],\n.prn-cal-cell[data-unavailable] {\n color: var(--prn-label-3);\n cursor: default;\n}\n\n/* Range-Auswahl: durchgehender Bereich */\n.prn-cal-cell[data-selection-start],\n.prn-cal-cell[data-selection-end] {\n background: var(--prn-accent);\n color: var(--prn-on-accent);\n}\n.prn-cal-cell[data-selected]:not([data-selection-start]):not([data-selection-end]) {\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n border-radius: 0;\n}\n","/* Color-Primitives — Prince-Look auf React Aria.\n Baut auf .prn-field / .prn-input (forms.css) auf. */\n\n/* ---- ColorField ---- */\n.prn-colorfield-input {\n font-variant-numeric: tabular-nums;\n letter-spacing: 0.02em;\n}\n\n/* Checkerboard-Hintergrund für Alpha-Transparenz (geteilt). */\n.prn-colorswatch,\n.prn-colorswatch-picker-item {\n --prn-checker: var(--prn-separator);\n background-image:\n linear-gradient(45deg, var(--prn-checker) 25%, transparent 25%),\n linear-gradient(-45deg, var(--prn-checker) 25%, transparent 25%),\n linear-gradient(45deg, transparent 75%, var(--prn-checker) 75%),\n linear-gradient(-45deg, transparent 75%, var(--prn-checker) 75%);\n background-size: 10px 10px;\n background-position: 0 0, 0 5px, 5px -5px, -5px 0;\n}\n\n/* ---- ColorSwatch ---- */\n.prn-colorswatch {\n width: 36px;\n height: 36px;\n border-radius: var(--prn-radius-md);\n /* Die RAC-ColorSwatch setzt background: <color> inline; der Checkerboard\n scheint nur durch transparente/alpha-Farben hindurch. */\n box-shadow: inset 0 0 0 1px var(--prn-separator);\n}\n\n/* ---- ColorSwatchPicker ---- */\n.prn-colorswatch-picker {\n display: flex;\n flex-wrap: wrap;\n gap: 10px;\n align-items: center;\n}\n\n.prn-colorswatch-picker-item {\n width: 36px;\n height: 36px;\n border-radius: var(--prn-radius-md);\n cursor: pointer;\n position: relative;\n outline: none;\n transition: transform var(--prn-dur-fast) var(--prn-ease-spring);\n}\n\n/* Die innere Swatch füllt das Item. */\n.prn-colorswatch-picker-item .prn-colorswatch {\n width: 100%;\n height: 100%;\n border-radius: inherit;\n}\n\n.prn-colorswatch-picker-item[data-hovered] {\n transform: scale(1.05);\n}\n.prn-colorswatch-picker-item[data-pressed] {\n transform: scale(0.95);\n}\n\n/* Auswahl-Ring im Prince-Stil. */\n.prn-colorswatch-picker-item[data-selected]::after {\n content: \"\";\n position: absolute;\n inset: -4px;\n border-radius: calc(var(--prn-radius-md) + 3px);\n box-shadow: 0 0 0 2px var(--prn-bg), 0 0 0 4px var(--prn-accent);\n pointer-events: none;\n}\n\n.prn-colorswatch-picker-item[data-focus-visible] {\n box-shadow: var(--prn-focus);\n}\n.prn-colorswatch-picker-item[data-disabled] {\n opacity: 0.45;\n cursor: not-allowed;\n}\n","/* Color-Picker-Primitives — Prince-Look auf React Aria (color). */\n\n/* ---- gemeinsamer Thumb (Area/Slider/Wheel) ---- */\n.prn-color-thumb {\n width: 22px;\n height: 22px;\n border-radius: 50%;\n border: 3px solid #fff;\n box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(0, 0, 0, 0.35);\n box-sizing: border-box;\n}\n.prn-color-thumb[data-focus-visible] {\n box-shadow: var(--prn-focus), 0 1px 3px rgba(0, 0, 0, 0.35);\n}\n.prn-color-thumb[data-dragging] { cursor: grabbing; }\n.prn-color-thumb[data-disabled] { opacity: 0.5; }\n\n/* ---- ColorArea ---- */\n.prn-colorarea {\n width: 220px;\n height: 220px;\n border-radius: var(--prn-radius-lg);\n flex: none;\n forced-color-adjust: none;\n}\n.prn-colorarea[data-disabled] { opacity: 0.5; }\n\n/* ---- ColorSlider ---- */\n.prn-colorslider {\n display: flex;\n flex-direction: column;\n gap: 6px;\n width: 220px;\n}\n.prn-colorslider-head {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 8px;\n}\n.prn-colorslider-output {\n font: var(--prn-text-footnote);\n color: var(--prn-label-3);\n font-variant-numeric: tabular-nums;\n}\n.prn-colorslider-track {\n height: 24px;\n border-radius: 999px;\n forced-color-adjust: none;\n box-shadow: inset 0 0 0 1px var(--prn-separator);\n}\n.prn-colorslider[data-orientation=\"vertical\"] {\n width: auto;\n height: 200px;\n}\n.prn-colorslider[data-orientation=\"vertical\"] .prn-colorslider-track {\n width: 24px;\n height: 100%;\n}\n.prn-colorslider[data-disabled] { opacity: 0.5; }\n\n/* ---- ColorWheel ---- */\n.prn-colorwheel {\n forced-color-adjust: none;\n}\n.prn-colorwheel-track {\n forced-color-adjust: none;\n}\n.prn-colorwheel[data-disabled] { opacity: 0.5; }\n\n/* ---- ColorField ---- */\n.prn-colorfield .prn-input {\n font-variant-numeric: tabular-nums;\n}\n\n/* ---- ColorPicker ---- */\n.prn-colorpicker-trigger {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n min-height: 34px;\n padding: 6px 10px 6px 8px;\n border: none;\n border-radius: var(--prn-radius-md);\n background: var(--prn-fill);\n color: var(--prn-label);\n font: var(--prn-text-body);\n cursor: pointer;\n}\n.prn-colorpicker-trigger[data-hovered] { background: var(--prn-fill-strong); }\n.prn-colorpicker-trigger[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-colorpicker-trigger[data-disabled] { opacity: 0.45; cursor: not-allowed; }\n.prn-colorpicker-swatch {\n width: 22px;\n height: 22px;\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2);\n forced-color-adjust: none;\n flex: none;\n}\n.prn-colorpicker-label {\n font: var(--prn-text-subhead);\n font-weight: 590;\n color: var(--prn-label-2);\n}\n\n.prn-colorpicker-popover { min-width: 244px; }\n.prn-colorpicker-dialog {\n outline: none;\n display: flex;\n flex-direction: column;\n gap: 14px;\n padding: 6px;\n}\n.prn-colorpicker-area { width: 100%; }\n","/* Status-Primitives — ProgressBar, Meter, Separator, Group (React Aria).\n Tokens: prince-ui-tokens. Wiederverwendet prn-field-label aus forms.css. */\n\n/* ---- ProgressBar ---- */\n.prn-progressbar {\n display: flex;\n flex-direction: column;\n gap: 6px;\n width: 100%;\n}\n.prn-progressbar-head {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 8px;\n}\n.prn-progressbar-value {\n font: var(--prn-text-footnote);\n color: var(--prn-label-3);\n font-variant-numeric: tabular-nums;\n}\n.prn-progressbar-track {\n position: relative;\n width: 100%;\n height: 6px;\n border-radius: 999px;\n background: var(--prn-fill-strong);\n overflow: hidden;\n}\n.prn-progressbar-fill {\n height: 100%;\n border-radius: 999px;\n background: var(--prn-accent);\n transition: width var(--prn-dur) var(--prn-ease-standard);\n}\n.prn-progressbar-fill[data-indeterminate] {\n position: absolute;\n inset: 0 auto 0 0;\n width: 40%;\n transition: none;\n animation: prn-progress-slide 1.1s var(--prn-ease-standard) infinite;\n background: linear-gradient(\n 90deg,\n var(--prn-accent-soft),\n var(--prn-accent),\n var(--prn-accent-soft)\n );\n}\n@keyframes prn-progress-slide {\n from { transform: translateX(-120%); }\n to { transform: translateX(320%); }\n}\n\n/* ---- Meter ---- */\n.prn-meter {\n display: flex;\n flex-direction: column;\n gap: 6px;\n width: 100%;\n}\n.prn-meter-head {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 8px;\n}\n.prn-meter-value {\n font: var(--prn-text-footnote);\n color: var(--prn-label-3);\n font-variant-numeric: tabular-nums;\n}\n.prn-meter-track {\n width: 100%;\n height: 6px;\n border-radius: 999px;\n background: var(--prn-fill-strong);\n overflow: hidden;\n}\n.prn-meter-fill {\n height: 100%;\n border-radius: 999px;\n background: var(--prn-accent);\n transition: width var(--prn-dur) var(--prn-ease-standard),\n background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-meter-fill[data-band=\"low\"] { background: var(--prn-green); }\n.prn-meter-fill[data-band=\"medium\"] { background: var(--prn-orange); }\n.prn-meter-fill[data-band=\"high\"] { background: var(--prn-red); }\n\n/* ---- Separator ---- */\n.prn-separator {\n margin: 0;\n border: none;\n background: var(--prn-separator);\n align-self: stretch;\n flex: none;\n}\n.prn-separator:not([aria-orientation=\"vertical\"]) {\n width: 100%;\n height: 1px;\n}\n.prn-separator[aria-orientation=\"vertical\"] {\n width: 1px;\n height: auto;\n min-height: 1em;\n align-self: stretch;\n}\n\n/* ---- Group ---- */\n.prn-group {\n display: flex;\n align-items: center;\n gap: 8px;\n border-radius: var(--prn-radius-md);\n}\n.prn-group[data-focus-within] {\n box-shadow: var(--prn-focus);\n}\n.prn-group[data-disabled] {\n opacity: 0.45;\n}\n","/* Toast-Primitives — Prince-Look auf React Aria (UNSTABLE_Toast). */\n\n/* ---- Region: fixiert unten ---- */\n.prn-toast-region {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 9999;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 10px;\n padding: 16px;\n pointer-events: none;\n outline: none;\n}\n.prn-toast-region[data-focus-visible] {\n outline: none;\n}\n\n/* ---- Toast-Karte ---- */\n.prn-toast {\n pointer-events: auto;\n display: flex;\n align-items: flex-start;\n gap: 12px;\n width: min(380px, calc(100vw - 32px));\n padding: 12px 14px;\n border-radius: var(--prn-radius-lg);\n background: var(--prn-bg-elevated);\n border: 0.5px solid var(--prn-separator);\n box-shadow: var(--prn-shadow-pop);\n animation: prn-toast-in var(--prn-dur) var(--prn-ease-spring);\n}\n.prn-toast[data-focus-visible] {\n box-shadow: var(--prn-shadow-pop), var(--prn-focus);\n}\n\n@keyframes prn-toast-in {\n from {\n opacity: 0;\n transform: translateY(16px) scale(0.96);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n .prn-toast { animation: none; }\n}\n\n/* Akzentstreifen je nach Variante */\n.prn-toast::before {\n content: \"\";\n align-self: stretch;\n width: 3px;\n flex: 0 0 auto;\n border-radius: 999px;\n background: var(--prn-accent);\n}\n.prn-toast[data-variant=\"success\"]::before { background: var(--prn-green); }\n.prn-toast[data-variant=\"warning\"]::before { background: var(--prn-orange); }\n.prn-toast[data-variant=\"error\"]::before { background: var(--prn-red); }\n\n/* ---- Inhalt ---- */\n.prn-toast-content {\n display: flex;\n flex-direction: column;\n gap: 2px;\n flex: 1 1 auto;\n min-width: 0;\n}\n.prn-toast-title {\n font: var(--prn-text-subhead);\n font-weight: 590;\n color: var(--prn-label);\n}\n.prn-toast-desc {\n font: var(--prn-text-footnote);\n color: var(--prn-label-2);\n}\n\n/* ---- Schließen-Button ---- */\n.prn-toast-close {\n flex: 0 0 auto;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 22px;\n height: 22px;\n margin: -2px -2px 0 0;\n padding: 0;\n border: none;\n border-radius: var(--prn-radius-sm);\n background: transparent;\n color: var(--prn-label-3);\n cursor: pointer;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-toast-close[data-hovered] { background: var(--prn-fill); }\n.prn-toast-close[data-pressed] { background: var(--prn-fill-strong); }\n.prn-toast-close[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-toast-close-icon {\n width: 14px;\n height: 14px;\n stroke: currentColor;\n stroke-width: 1.6;\n stroke-linecap: round;\n fill: none;\n}\n","/* DropZone-Primitive — Prince-Look auf React Aria. */\n\n.prn-dropzone {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 10px;\n min-height: 140px;\n padding: 24px;\n text-align: center;\n border: 1.5px dashed var(--prn-separator);\n border-radius: var(--prn-radius-lg);\n background: var(--prn-bg);\n color: var(--prn-label-2);\n font: var(--prn-text-callout);\n outline: none;\n transition: background var(--prn-dur-fast) var(--prn-ease-standard),\n border-color var(--prn-dur-fast) var(--prn-ease-standard);\n}\n.prn-dropzone[data-hovered] { border-color: var(--prn-label-3); }\n.prn-dropzone[data-drop-target] {\n border-color: var(--prn-accent);\n border-style: solid;\n background: var(--prn-accent-soft);\n color: var(--prn-accent-strong);\n}\n.prn-dropzone[data-focus-visible] { box-shadow: var(--prn-focus); }\n.prn-dropzone[data-disabled] { opacity: 0.45; }\n","/* ============================================================\n * Liquid Glass — dünne Optik-Schicht (Apple HIG)\n *\n * NUR Styling, kein Verhalten. Sparsam und ausschließlich auf der\n * „Navigationsebene\" über dem Content einsetzen: Top-Bar/Toolbar,\n * Sidebar, Overlays (Popover/Menu/Dialog/Tooltip/Toast), schwebende\n * Controls und Übersichtskarten, die über Content liegen.\n *\n * NICHT auf datendichte Tabellen/Listen, Eingabefelder oder Fließtext.\n * Kein „Glas auf Glas\" — Glasflächen nie stapeln/verschachteln.\n *\n * Lesbarkeit hat Vorrang (HIG): Default ist der OPAKE Fallback; echtes\n * Glas nur, wenn `backdrop-filter` unterstützt wird. Bei\n * `prefers-reduced-transparency: reduce` zurück auf opak.\n * ============================================================ */\n\n.prn-glass {\n /* Fallback zuerst: solide Fläche mit Kontrast — kein „durchsichtiges Nichts\". */\n background-color: var(--prn-glass-bg-opaque);\n /* Optionaler Branding-Tint unter dem Inhalt (via --prn-glass-tint inline). */\n background-image: linear-gradient(\n var(--prn-glass-tint, transparent),\n var(--prn-glass-tint, transparent)\n );\n color: var(--prn-label);\n}\n\n/* Echtes Glas nur, wo backdrop-filter unterstützt wird. */\n@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {\n .prn-glass {\n background-color: var(--prn-glass-bg);\n -webkit-backdrop-filter: var(--prn-glass-blur);\n backdrop-filter: var(--prn-glass-blur);\n }\n}\n\n/* ---- Varianten: nur Kanten/Radius/Schatten; das Material kommt von .prn-glass ---- */\n\n/* Top-Bar / Header / Toolbar — randlos, nur untere Hairline. */\n.prn-glass-bar {\n border-radius: 0;\n border-bottom: 1px solid var(--prn-glass-border);\n}\n\n/* Sidebar / Navigationsleiste — randlos, nur rechte Hairline. */\n.prn-glass-sidebar {\n border-radius: 0;\n border-right: 1px solid var(--prn-glass-border);\n}\n\n/* Overlays: Popover, Menu, Dialog, Tooltip, Toast. */\n.prn-glass-overlay {\n border: 1px solid var(--prn-glass-border);\n border-radius: var(--prn-radius-lg);\n box-shadow: var(--prn-glass-shadow);\n}\n\n/* Übersichtskarten (Dashboard-Kacheln, die über Content schweben). */\n.prn-glass-card {\n border: 1px solid var(--prn-glass-border);\n border-radius: var(--prn-radius-card);\n box-shadow: var(--prn-glass-shadow);\n}\n\n/* Schwebende Controls / FAB. */\n.prn-glass-floating {\n border: 1px solid var(--prn-glass-border);\n border-radius: var(--prn-radius-pill);\n box-shadow: var(--prn-glass-shadow);\n}\n\n/* A11y: reduzierte Transparenz → garantiert opak, kein Blur. */\n@media (prefers-reduced-transparency: reduce) {\n .prn-glass {\n background-color: var(--prn-glass-bg-opaque);\n -webkit-backdrop-filter: none;\n backdrop-filter: none;\n }\n}\n\n/* A11y: reduzierte Bewegung → kein animiertes Glas. */\n@media (prefers-reduced-motion: reduce) {\n .prn-glass {\n transition: none;\n }\n}\n"],"mappings":"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","names":[]}