/* KNIPEX Web 1.7 — generiert aus tokens.json und bundle.css; nicht editieren. */
:root,[data-theme="light"]{--header-bg:#00354E;--brand:#00354E;--brand-hover:#0A4A69;--red:#E30613;--red-hover:#C50510;--on-red:#FFFFFF;--on-brand:#FFFFFF;--bg:#F5F7FA;--surface:#FFFFFF;--surface-2:#F5F7FA;--surface-3:#EBEFF3;--line:#E0E4E8;--line-strong:#C9D3DA;--input:#768A98;--line-control:var(--input);--text:#00354E;--text-2:#4A7084;--ok:#2E7D32;--ok-text:#1B5E20;--ok-soft:#EAF4EA;--ok-line:#B7D9B9;--warn:#E06600;--warn-text:#A84800;--warn-soft:#FFF4E8;--warn-line:#F5C79A;--err:#C62828;--err-text:#B71C1C;--err-soft:#FDEDED;--err-line:#F1B9B9;--info:#0B62B5;--info-text:#0A559C;--info-soft:#EAF2FB;--info-line:#B8D2EE;--active-bg:#FFF0F0;--active-fg:#C50510;--control-on:#00354E;--switch-thumb:#FFFFFF;--focus:#0B62B5;--focus-on-dark:#6FB1F5;--progress-on-red:#B0050F;--progress-on-brand:#386175;--header-fg:#FFFFFF;--header-fg-2:#D1DBDF;--header-raised:#14455C;--header-hover:#245167;--header-active:#2E596E;--header-line:#426A7C;--header-line-strong:#73909E;--inverse-surface:#FFFFFF;--inverse-text:#00354E;--avatar-bg:#86ADC0;--counter-err-bg:#FF6B6B;--counter-err-fg:#2A0A0A;--dot-ok:#7BD682;--dot-warn:#FF9A3D;--dot-wait:#F6DA75;--dot-neutral:#86ADC0;--dot-viewas:#22C55E;--viewas-line:#0E6F54;--toast-bg:#0E2A3B;--toast-line:#0E2A3B;--toast-fg:#FFFFFF;--toast-fg-2:#D4D9DC;--toast-btn-bg:#2B4453;--toast-btn-hover:#3E5562;--toast-ok:#7BD682;--toast-warn:#FFB774;--toast-err:#FF9E9E;--toast-info:#9CCBFF;--chart-cy:#00354E;--chart-py:#7A92A3;--chart-pre:var(--warn);--chart-pre-soft:var(--warn-soft);--chart-pos:var(--ok);--chart-neg:var(--err);--chart-neutral:#6E7F8B;--chart-cat-1:#1D6FA3;--chart-cat-2:#C45A1A;--chart-cat-3:#008C7E;--chart-cat-4:#7A5CC8;--chart-cat-5:#B8487E;--chart-cat-6:#8F7300;--chart-ramp-1:#6F91A8;--chart-ramp-2:#4C7894;--chart-ramp-3:#2C6181;--chart-ramp-4:#174C69;--chart-ramp-5:#00354E;--meter-track:var(--surface-3);--meter-fill:var(--chart-cy);--meter-near:#C25A00;--meter-over:var(--err);--meter-goal:var(--ok);--meter-mark:var(--text);--scrim:rgba(0,30,45,.40);--chart-fc-soft:var(--info-soft);--meter-tier:var(--info);--edge-shadow:rgba(0,30,45,.16);--portal-header-bg:#00354E;--portal-bg:#F5F7FA;--portal-header-text:#FFFFFF;--portal-header-muted:#C9DCE8;--shadow:0 1px 2px rgba(0,53,78,.06),0 8px 24px rgba(0,53,78,.08);--shadow-lg:0 2px 8px rgba(0,53,78,.10),0 24px 56px rgba(0,53,78,.22);--shadow-xs:0 1px 2px rgba(0,0,0,.08);--shadow-thumb:0 1px 2px rgba(0,0,0,.3);--shadow-dot-ok:0 0 0 3px rgba(123,214,130,.25);--shadow-dot-warn:0 0 0 3px rgba(255,154,61,.30);--shadow-dot-wait:0 0 0 3px rgba(246,218,117,.25);--shadow-dot-neutral:0 0 0 3px rgba(134,173,192,.25)}
[data-theme="dark"]{--header-bg:#04283B;--brand:#1D5F80;--brand-hover:#26739A;--red:#E30613;--red-hover:#C50510;--on-red:#FFFFFF;--on-brand:#FFFFFF;--bg:#0A1720;--surface:#0F202C;--surface-2:#132836;--surface-3:#1A3344;--line:#1F394B;--line-strong:#2C4C62;--input:#5F8094;--line-control:var(--input);--text:#E4EDF2;--text-2:#9BB3C3;--ok:#66BB6A;--ok-text:#9BDB9E;--ok-soft:#0F2A17;--ok-line:#24562C;--warn:#FF9A3D;--warn-text:#FFB774;--warn-soft:#2D1D0B;--warn-line:#6B4316;--err:#EF6F6F;--err-text:#FF9E9E;--err-soft:#2E1214;--err-line:#6E2A2D;--info:#6FB1F5;--info-text:#9CCBFF;--info-soft:#0E2236;--info-line:#24476B;--active-bg:#311C28;--active-fg:#FF8F95;--control-on:#4FA3D1;--switch-thumb:#FFFFFF;--focus:#6FB1F5;--focus-on-dark:#6FB1F5;--progress-on-red:#B0050F;--progress-on-brand:#174D68;--header-fg:#FFFFFF;--header-fg-2:#D2D8DC;--header-raised:#18394B;--header-hover:#274656;--header-active:#314F5E;--header-line:#45606E;--header-line-strong:#758993;--inverse-surface:#FFFFFF;--inverse-text:#00354E;--avatar-bg:#86ADC0;--counter-err-bg:#FF6B6B;--counter-err-fg:#2A0A0A;--dot-ok:#7BD682;--dot-warn:#FF9A3D;--dot-wait:#F6DA75;--dot-neutral:#86ADC0;--dot-viewas:#22C55E;--viewas-line:#106749;--toast-bg:#1F4256;--toast-line:#2F5A72;--toast-fg:#FFFFFF;--toast-fg-2:#D7DDE1;--toast-btn-bg:#3A596A;--toast-btn-hover:#4C6878;--toast-ok:#7BD682;--toast-warn:#FFB774;--toast-err:#FF9E9E;--toast-info:#9CCBFF;--chart-cy:#7FB8D9;--chart-py:#52728A;--chart-pre:var(--warn);--chart-pre-soft:var(--warn-soft);--chart-pos:var(--ok);--chart-neg:var(--err);--chart-neutral:#7F909C;--chart-cat-1:#3E8CC4;--chart-cat-2:#D06A2C;--chart-cat-3:#1E9A8E;--chart-cat-4:#8C74DC;--chart-cat-5:#CF5F8E;--chart-cat-6:#AD8A22;--chart-ramp-1:#4F7D99;--chart-ramp-2:#6B98B4;--chart-ramp-3:#8CB4CE;--chart-ramp-4:#B0CEE2;--chart-ramp-5:#D6E7F2;--meter-track:var(--surface-3);--meter-fill:var(--chart-cy);--meter-near:#FF9A3D;--meter-over:var(--err);--meter-goal:var(--ok);--meter-mark:var(--text);--scrim:rgba(0,0,0,.62);--chart-fc-soft:var(--info-soft);--meter-tier:var(--info);--edge-shadow:rgba(0,0,0,.55);--portal-header-bg:#04283B;--portal-bg:#0A1720;--portal-header-text:#E4EDF2;--portal-header-muted:#9BB3C3;--shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.35);--shadow-lg:0 2px 8px rgba(0,0,0,.5),0 24px 56px rgba(0,0,0,.6);--shadow-xs:0 1px 2px rgba(0,0,0,.08);--shadow-thumb:0 1px 2px rgba(0,0,0,.3);--shadow-dot-ok:0 0 0 3px rgba(123,214,130,.25);--shadow-dot-warn:0 0 0 3px rgba(255,154,61,.30);--shadow-dot-wait:0 0 0 3px rgba(246,218,117,.25);--shadow-dot-neutral:0 0 0 3px rgba(134,173,192,.25)}
@media (prefers-color-scheme:dark){:root:not([data-theme]){--header-bg:#04283B;--brand:#1D5F80;--brand-hover:#26739A;--red:#E30613;--red-hover:#C50510;--on-red:#FFFFFF;--on-brand:#FFFFFF;--bg:#0A1720;--surface:#0F202C;--surface-2:#132836;--surface-3:#1A3344;--line:#1F394B;--line-strong:#2C4C62;--input:#5F8094;--line-control:var(--input);--text:#E4EDF2;--text-2:#9BB3C3;--ok:#66BB6A;--ok-text:#9BDB9E;--ok-soft:#0F2A17;--ok-line:#24562C;--warn:#FF9A3D;--warn-text:#FFB774;--warn-soft:#2D1D0B;--warn-line:#6B4316;--err:#EF6F6F;--err-text:#FF9E9E;--err-soft:#2E1214;--err-line:#6E2A2D;--info:#6FB1F5;--info-text:#9CCBFF;--info-soft:#0E2236;--info-line:#24476B;--active-bg:#311C28;--active-fg:#FF8F95;--control-on:#4FA3D1;--switch-thumb:#FFFFFF;--focus:#6FB1F5;--focus-on-dark:#6FB1F5;--progress-on-red:#B0050F;--progress-on-brand:#174D68;--header-fg:#FFFFFF;--header-fg-2:#D2D8DC;--header-raised:#18394B;--header-hover:#274656;--header-active:#314F5E;--header-line:#45606E;--header-line-strong:#758993;--inverse-surface:#FFFFFF;--inverse-text:#00354E;--avatar-bg:#86ADC0;--counter-err-bg:#FF6B6B;--counter-err-fg:#2A0A0A;--dot-ok:#7BD682;--dot-warn:#FF9A3D;--dot-wait:#F6DA75;--dot-neutral:#86ADC0;--dot-viewas:#22C55E;--viewas-line:#106749;--toast-bg:#1F4256;--toast-line:#2F5A72;--toast-fg:#FFFFFF;--toast-fg-2:#D7DDE1;--toast-btn-bg:#3A596A;--toast-btn-hover:#4C6878;--toast-ok:#7BD682;--toast-warn:#FFB774;--toast-err:#FF9E9E;--toast-info:#9CCBFF;--chart-cy:#7FB8D9;--chart-py:#52728A;--chart-pre:var(--warn);--chart-pre-soft:var(--warn-soft);--chart-pos:var(--ok);--chart-neg:var(--err);--chart-neutral:#7F909C;--chart-cat-1:#3E8CC4;--chart-cat-2:#D06A2C;--chart-cat-3:#1E9A8E;--chart-cat-4:#8C74DC;--chart-cat-5:#CF5F8E;--chart-cat-6:#AD8A22;--chart-ramp-1:#4F7D99;--chart-ramp-2:#6B98B4;--chart-ramp-3:#8CB4CE;--chart-ramp-4:#B0CEE2;--chart-ramp-5:#D6E7F2;--meter-track:var(--surface-3);--meter-fill:var(--chart-cy);--meter-near:#FF9A3D;--meter-over:var(--err);--meter-goal:var(--ok);--meter-mark:var(--text);--scrim:rgba(0,0,0,.62);--chart-fc-soft:var(--info-soft);--meter-tier:var(--info);--edge-shadow:rgba(0,0,0,.55);--portal-header-bg:#04283B;--portal-bg:#0A1720;--portal-header-text:#E4EDF2;--portal-header-muted:#9BB3C3;--shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.35);--shadow-lg:0 2px 8px rgba(0,0,0,.5),0 24px 56px rgba(0,0,0,.6);--shadow-xs:0 1px 2px rgba(0,0,0,.08);--shadow-thumb:0 1px 2px rgba(0,0,0,.3);--shadow-dot-ok:0 0 0 3px rgba(123,214,130,.25);--shadow-dot-warn:0 0 0 3px rgba(255,154,61,.30);--shadow-dot-wait:0 0 0 3px rgba(246,218,117,.25);--shadow-dot-neutral:0 0 0 3px rgba(134,173,192,.25)}}
:root{--space-2:2px;--space-4:4px;--space-6:6px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--space-48:48px;--space-64:64px;--radius:8px;--radius-sm:6px;--radius-xs:4px;--radius-2xs:3px;--radius-lg:12px;--radius-sheet:16px;--radius-pill:999px;--radius-round:50%;--portal-radius:8px;--fs-caption:0.75rem;--fs-meta:0.8125rem;--fs-body:0.875rem;--fs-body-lg:0.9375rem;--fs-title-sm:1rem;--fs-title:1.09375rem;--fs-title-lg:1.21875rem;--fs-heading-2:1.375rem;--fs-heading-1:1.625rem;--fs-display:1.875rem;--fs-heading-1-handy:1.4375rem;--fs-display-handy:1.3125rem;--fs-input-handy:1rem;--fs-wordmark:1.125rem;--icon-xs:0.875rem;--icon-sm:1rem;--icon-ctl:1.125rem;--icon-md:1.25rem;--icon-lg:1.5rem;--icon-xl:2rem;--icon-2xl:2.25rem;--lh-none:1;--lh-display:1.15;--lh-heading:1.2;--lh-title:1.25;--lh-snug:1.3;--lh-body:1.45;--lh-relaxed:1.5;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-strong:650;--fw-bold:700;--fw-wordmark:800;--ls-none:0;--ls-tight:-0.01em;--ls-display:-0.02em;--ls-label:0.08em;--ls-label-sm:0.06em;--ls-wordmark:1.6px;--size-target:44px;--size-btn:40px;--size-btn-sm:34px;--size-btn-lg:52px;--size-input:42px;--size-input-sm:36px;--size-iconbtn:36px;--size-iconbtn-lg:44px;--size-tab:46px;--size-seg:34px;--size-seg-sm:28px;--size-fchip:34px;--size-chip:30px;--size-chip-sm:22px;--size-chip-lg:32px;--size-chip-x:24px;--size-chipselect:46px;--size-badge:24px;--size-badge-sm:21px;--size-rolechip:26px;--size-counter:18px;--size-search:38px;--size-crumb:28px;--size-menuitem:42px;--size-navitem:44px;--size-hbtn:40px;--size-avatar-img:32px;--size-avatar-lg:52px;--size-phonechip:36px;--size-viewas:38px;--size-viewas-select:30px;--size-th:46px;--size-td:52px;--size-row:62px;--size-row-head:44px;--size-tile-sm:34px;--size-tile:36px;--size-tile-lg:48px;--size-empty-icon:64px;--size-video-play:68px;--size-switch-w:46px;--size-switch-h:28px;--size-switch-thumb:20px;--size-check:18px;--size-check-sm:16px;--size-bottomnav-item:58px;--size-pill-w:58px;--size-pill-h:30px;--size-mcard:68px;--size-dsgrid-row:46px;--size-dot:10px;--size-dot-sm:9px;--size-logo-dot:7px;--size-legend:12px;--size-brand-sep:22px;--size-marker:3px;--size-brand-edge:4px;--size-cell-trigger:28px;--header-h:60px;--header-h-handy:56px;--nav-w:224px;--nav-w-narrow:68px;--bottomnav-h:77px;--bottomnav-clearance:112px;--savebar-clearance:96px;--page-max:1200px;--page-wide:1360px;--page-narrow:620px;--page-profil:900px;--panel-w:560px;--panel-w-wide:720px;--dialog-w:500px;--dialog-w-report:640px;--pop-w:380px;--pop-w-left:280px;--pop-w-konto:330px;--pop-w-postfach:400px;--pop-h-postfach:560px;--toast-max:600px;--tablewrap-max-h:600px;--fullscreen-offset:220px;--chart-h:240px;--chart-h-cat:280px;--chart-grid:60px;--chart-bar-w:20px;--chart-bar-min:2px;--chart-col-min:72px;--hatch:4px;--stripe:10px;--dsgrid-src-w:150px;--dsgrid-min-w:740px;--textarea-min:130px;--monat-w:176px;--datepicker-w:264px;--tree-max-h:28rem;--search-basis:340px;--search-min:200px;--timeline-col:170px;--kv-key-min:130px;--meter-h:8px;--meter-mark-h:16px;--tree-indent:20px;--driver-track-h:6px;--driver-thumb:20px;--driver-input-w:96px;--driver-track-min:160px;--upload-box-min:132px;--chart-bar-w-bridge:36px;--monthlist-field-w:132px;--chart-col-min-tight:56px;--table-name-min:200px;--table-text-min:200px;--plan-name-min:296px;--plan-name-min-phone:160px;--plan-col:120px;--plan-rows:10;--plan-row-phone:57px;--plan-input-min:88px;--table-rows:12;--table-meter-w:176px;--actionreason-min:240px;--pop-w-viewas:360px;--pop-select-min:160px;--portal-header-h:64px;--portal-header-h-compact:56px;--portal-header-h-phone:96px;--portal-header-h-phone-compact:88px;--selbar-h:72px;--selbar-h-compact:64px;--stepper-icon:24px;--stepper-icon-compact:20px;--stepper-gap:24px;--stepper-gap-compact:16px;--portal-prodthumb:56px;--portal-step-line:20px;--portal-step-line-compact:18px;--z-below:-1;--z-raised:1;--z-sticky-cell:2;--z-sticky-head:3;--z-sticky-corner:4;--z-savebar:30;--z-header:40;--z-scrim:60;--z-panel:61;--z-dialog:62;--z-pop:70;--z-toast:80;--z-datepicker:1000;--z-contextbar:20;--duration-fast:120ms;--duration-base:150ms;--duration-slow:200ms;--duration-shimmer:1.3s;--duration-spin:1s;--duration-indet:1.4s;--easing-standard:ease;--easing-in:ease-in;--easing-inout:ease-in-out;--opacity-disabled:0.5;--font-sans:"Roboto Flex", Roboto, "Segoe UI", Arial, sans-serif;--font-icons:"Material Symbols Rounded";--font:var(--font-sans)}
:is(.rh.is-portal,.rh.is-embed)[data-theme="light"]{--portal-header-bg:#00354E;--portal-bg:#F5F7FA;--portal-header-text:#FFFFFF;--portal-header-muted:#C9DCE8}
:is(.rh.is-portal,.rh.is-embed)[data-theme="dark"]{--portal-header-bg:#04283B;--portal-bg:#0A1720;--portal-header-text:#E4EDF2;--portal-header-muted:#9BB3C3}
.rh-text-caption{font-family:var(--font-sans);font-size:0.75rem;line-height:1.45;font-weight:600}
.rh-text-meta{font-family:var(--font-sans);font-size:0.8125rem;line-height:1.45;font-weight:400}
.rh-text-body{font-family:var(--font-sans);font-size:0.875rem;line-height:1.45;font-weight:400}
.rh-text-body-lg{font-family:var(--font-sans);font-size:0.9375rem;line-height:1.45;font-weight:500}
.rh-text-title-sm{font-family:var(--font-sans);font-size:1rem;line-height:1.3;font-weight:650}
.rh-text-title{font-family:var(--font-sans);font-size:1.09375rem;line-height:1.3;font-weight:650}
.rh-text-title-lg{font-family:var(--font-sans);font-size:1.21875rem;line-height:1.3;font-weight:650}
.rh-text-heading-2{font-family:var(--font-sans);font-size:1.375rem;line-height:1.3;font-weight:650}
.rh-text-heading-1{font-family:var(--font-sans);font-size:1.625rem;line-height:1.2;font-weight:650}
.rh-text-display{font-family:var(--font-sans);font-size:1.875rem;line-height:1.15;font-weight:650}
@font-face{font-family:"Roboto Flex";src:url("/static/fonts/roboto-flex-latin-ext.woff2") format("woff2");font-weight:300 800;font-style:normal;font-display:swap}
@font-face{font-family:"Roboto Flex";src:url("/static/fonts/roboto-flex-latin.woff2") format("woff2");font-weight:300 800;font-style:normal;font-display:swap}
@font-face{font-family:"Material Symbols Rounded";src:url("/static/fonts/material-symbols-rounded.woff2") format("woff2");font-weight:100 700;font-style:normal;font-display:swap}

/*
 * KNIPEX Web – Stylesheet der Bausteine (components/bundle.css), Fassung 1.6 (Grundlage 1.0; Ergänzungen 1.2 bis 1.6 je mit Abschnittskopf)
 * Aus dem Bestand des Reporting Hub (reporting-hub.css, web.css, produktumsatz.css, monatsauswahl.css,
 * bezirksbaum.css) übernommen. Klassennamen unverändert. Jeder Farb-, Schrift-, Abstands-, Höhen-, Radius-,
 * Ebenen- und Zeitwert kommt aus tokens.json (kompiliert zu tokens.css). Strichstärken (1/2/3 px) bleiben Zahlen.
 * Gerätevarianten: Media Queries (Betrieb) und data-device="desktop|tablet|phone" an .rh (Vorschau, wie im Entwurf).
 */

/* ===== Wurzel ===== */
.rh{color-scheme:light;font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);background:var(--bg);min-height:100vh;position:relative;-webkit-font-smoothing:antialiased}
[data-theme="dark"] .rh,.rh[data-theme="dark"]{color-scheme:dark}
.rh[data-theme="light"]{color-scheme:light}
@media (prefers-color-scheme: dark){:root:not([data-theme]) .rh:not([data-theme]){color-scheme:dark}}
.rh *{box-sizing:border-box}
:where(.rh) :where(button,input,select,textarea){font:inherit;color:inherit}
:where(.rh) :where(button){cursor:pointer}
.rh :focus-visible{outline:2px solid var(--focus);outline-offset:var(--space-2)}
.rh-header :focus-visible,.rh-toast :focus-visible{outline-color:var(--focus-on-dark)}
.rh h1,.rh h2,.rh h3,.rh p,.rh dl,.rh dd{margin:0}
.rh fieldset{margin:0;min-width:0}
:root:has(> body.rh){scroll-padding-top:calc(var(--header-h) + var(--space-8));scroll-padding-bottom:var(--savebar-clearance)}
.ms{font-family:var(--font-icons);font-weight:var(--fw-regular);font-style:normal;font-size:var(--icon-md);line-height:var(--lh-none);letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;direction:ltr;font-feature-settings:'liga';-webkit-font-smoothing:antialiased;font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 24;flex:none;user-select:none}
.ms--sm{font-size:var(--icon-sm)}.ms--lg{font-size:var(--icon-lg)}.ms--fill{font-variation-settings:'FILL' 1,'wght' 400,'GRAD' 0,'opsz' 24}
.rh-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rh-grow{flex:1 1 auto;min-width:0}
.rh-row{display:flex;align-items:center;gap:var(--space-8);flex-wrap:wrap}
.rh-stack{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
.rh-stack--tight{display:flex;flex-direction:column;gap:0}
.rh-meta{font-size:var(--fs-meta);color:var(--text-2)}
.rh-anchor{position:relative;display:flex;align-items:center;flex:none}
.rh-link{background:none;border:0;padding:0;color:var(--info-text);font-weight:var(--fw-semibold);font-size:inherit;text-decoration:underline;text-underline-offset:var(--space-2);text-decoration-color:var(--info-line)}
.rh-link:hover{text-decoration-color:currentColor}

/* ===== Hilfsklassen (geschlossener Satz, ersetzt rh-w-*) ===== */
.rh-mt-4{margin-top:var(--space-4)}.rh-mt-8{margin-top:var(--space-8)}.rh-mt-12{margin-top:var(--space-12)}.rh-mt-16{margin-top:var(--space-16)}.rh-mt-20{margin-top:var(--space-20)}.rh-mt-24{margin-top:var(--space-24)}
.rh-mb-4{margin-bottom:var(--space-4)}.rh-mb-8{margin-bottom:var(--space-8)}.rh-mb-12{margin-bottom:var(--space-12)}.rh-mb-16{margin-bottom:var(--space-16)}.rh-mb-20{margin-bottom:var(--space-20)}.rh-mb-24{margin-bottom:var(--space-24)}
.rh-ml-8{margin-left:var(--space-8)}.rh-ml-auto{margin-left:auto}
.rh-gap-4{gap:var(--space-4)}.rh-gap-8{gap:var(--space-8)}.rh-gap-16{gap:var(--space-16)}
.rh-text-right{text-align:right}.rh-text-muted{color:var(--text-2)}.rh-text-medium{font-weight:var(--fw-medium)}
.rh-self-start{align-self:flex-start}.rh-justify-end{display:flex;justify-content:flex-end}.rh-fit{width:fit-content}
.rh-filterrow--spaced{margin-top:var(--space-16);margin-bottom:var(--space-16)}

/* ===== Kopfleiste (Header) ===== */
.rh-header{position:sticky;top:0;z-index:var(--z-header);height:var(--header-h);display:flex;align-items:center;gap:var(--space-8);padding:0 var(--space-12) 0 var(--space-20);background:var(--header-bg);color:var(--header-fg);border-top:var(--size-brand-edge) solid var(--red)}
.rh-header a.rh-brand,.rh-header a.rh-hbtn,.rh-nav a.rh-nav__item,.rh-bottomnav a.rh-bottomnav__item{text-decoration:none}
.rh-brand{display:flex;align-items:center;gap:var(--space-12);flex:none;border:0;background:none;color:var(--header-fg);padding:var(--space-6) var(--space-4);border-radius:var(--radius-sm)}
.rh-logo{display:inline-flex;align-items:flex-start;gap:var(--space-2);font-size:var(--fs-wordmark);font-weight:var(--fw-wordmark);letter-spacing:var(--ls-wordmark);line-height:var(--lh-none)}
.rh-logo::after{content:"";width:var(--size-logo-dot);height:var(--size-logo-dot);border-radius:var(--radius-round);background:var(--red)}
.rh-brand__sep{width:1px;height:var(--size-brand-sep);background:var(--header-line)}
.rh-brand__product{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);white-space:nowrap}
.rh-viewas{display:flex;align-items:center;gap:var(--space-8);margin-left:var(--space-8);height:var(--size-viewas);padding:0 var(--space-4) 0 var(--space-12);border-radius:var(--radius);background:var(--header-raised);border:1px solid var(--header-line);font-size:var(--fs-meta);color:var(--header-fg-2);white-space:nowrap}
.rh-viewas select{height:var(--size-viewas-select);border:0;border-radius:var(--radius-sm);background:var(--header-hover);color:var(--header-fg);font-weight:var(--fw-semibold);padding:0 var(--space-8);max-width:300px}
.rh-viewas option{color:var(--inverse-text);background:var(--inverse-surface)}
.rh-viewas-form{display:inline-flex;align-items:center;margin:0}
.rh-viewas--active{background:var(--header-active);border-color:var(--header-line-strong)}
.rh-pop .rh-viewas{background:var(--surface-2);border-color:var(--line-strong);color:var(--text-2)}
.rh-pop .rh-viewas--active{background:var(--surface-3);border-color:var(--input)}
.rh-pop .rh-viewas select{background:var(--surface);color:var(--text);border:1px solid var(--line-strong)}
.rh-pop .rh-viewas option{background:var(--surface);color:var(--text)}
.rh-viewas-chip{margin-left:var(--space-4);border-color:var(--viewas-line)}
.rh-viewas-chip .rh-datachip__dot{background:var(--dot-viewas);box-shadow:none}
.rh-viewas-banner{margin-bottom:var(--space-16)}
.rh-viewas-reset{margin:var(--space-16) 0 0}
.rh-header__spacer{flex:1 1 auto}
.rh-datachip{display:inline-flex;align-items:center;gap:var(--space-8);height:var(--size-hbtn);padding:0 var(--space-12);border-radius:var(--radius-pill);border:1px solid var(--header-line);background:var(--header-raised);color:var(--header-fg);font-size:var(--fs-meta);white-space:nowrap}
.rh-datachip:hover,.rh-datachip[aria-expanded="true"]{background:var(--header-hover)}
.rh-datachip__dot{width:var(--size-dot);height:var(--size-dot);border-radius:var(--radius-round);background:var(--dot-ok);box-shadow:var(--shadow-dot-ok);flex:none}
.rh-datachip--ok .rh-datachip__dot{background:var(--dot-ok);box-shadow:var(--shadow-dot-ok)}
.rh-datachip--warn .rh-datachip__dot{background:var(--dot-warn);box-shadow:var(--shadow-dot-warn)}
.rh-datachip--wait .rh-datachip__dot{background:var(--dot-wait);box-shadow:var(--shadow-dot-wait)}
.rh-datachip--neutral .rh-datachip__dot{background:var(--dot-neutral);box-shadow:var(--shadow-dot-neutral)}
.rh-datachip__main{font-weight:var(--fw-strong)}
.rh-datachip__sub{color:var(--header-fg-2)}
.rh-phonechip{display:none;align-items:center;gap:var(--space-6);height:var(--size-phonechip);padding:0 var(--space-8);border-radius:var(--radius-pill);border:1px solid var(--header-line);background:var(--header-raised);color:var(--header-fg);font-size:var(--fs-meta);font-weight:var(--fw-semibold);white-space:nowrap}
.rh-hbtn{position:relative;width:var(--size-hbtn);height:var(--size-hbtn);border-radius:var(--radius);border:0;background:transparent;color:var(--header-fg);display:grid;place-items:center;padding:0;flex:none}
.rh-hbtn:hover,.rh-hbtn[aria-expanded="true"]{background:var(--header-hover)}
.rh-hbtn__badge{position:absolute;top:var(--space-4);right:var(--space-2);min-width:var(--size-counter);height:var(--size-counter);padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--inverse-surface);color:var(--inverse-text);font-size:var(--fs-caption);font-weight:var(--fw-bold);display:grid;place-items:center;box-shadow:0 0 0 2px var(--header-bg)}
.rh-hbtn__badge--err{background:var(--counter-err-bg);color:var(--counter-err-fg)}
.rh-avatar{display:inline-flex;align-items:center;gap:var(--space-8);height:var(--size-hbtn);padding:0 var(--space-8) 0 var(--space-4);border-radius:var(--radius-pill);border:0;background:transparent;color:var(--header-fg);font-family:inherit;font-size:var(--fs-meta);font-weight:var(--fw-medium);white-space:nowrap}
.rh-avatar:hover,.rh-avatar[aria-expanded="true"]{background:var(--header-hover)}
.rh-avatar__img{width:var(--size-avatar-img);height:var(--size-avatar-img);border-radius:var(--radius-round);background:var(--avatar-bg);color:var(--inverse-text);display:grid;place-items:center;font-size:var(--fs-caption);font-weight:var(--fw-bold);flex:none}
.rh-postfach__badge{pointer-events:none}
.rh-postfach__badge[hidden]{display:none}

/* ===== Seitenleiste (Navigation) ===== */
.rh-body{display:flex;align-items:stretch;min-height:calc(100vh - var(--header-h))}
.rh-nav{flex:0 0 var(--nav-w);width:var(--nav-w);padding:var(--space-16) var(--space-12);border-right:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;gap:var(--space-2);position:sticky;top:var(--header-h);align-self:flex-start;height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h));overflow-y:auto}
.rh-nav__item{position:relative;display:flex;align-items:center;gap:var(--space-12);min-height:var(--size-navitem);padding:var(--space-4) var(--space-12);border-radius:var(--radius);border:0;background:none;color:var(--text);font-size:var(--fs-body-lg);font-weight:var(--fw-medium);line-height:var(--lh-title);text-decoration:none;width:100%;text-align:left}
.rh-nav__item:hover{background:var(--surface-2)}
.rh-nav__item .ms{color:var(--text-2)}
.rh-nav__item.is-active{background:var(--active-bg);color:var(--active-fg);font-weight:var(--fw-strong)}
.rh-nav__item.is-active .ms{color:var(--active-fg);font-variation-settings:'FILL' 1,'wght' 400,'GRAD' 0,'opsz' 24}
.rh-nav__item.is-active::before{content:"";position:absolute;left:calc(-1 * var(--space-12));top:var(--space-8);bottom:var(--space-8);width:var(--size-marker);border-radius:0 var(--radius-2xs) var(--radius-2xs) 0;background:var(--red)}
.rh-nav__text{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}
.rh-nav__count{font-size:var(--fs-caption);color:var(--text-2);font-weight:var(--fw-medium)}
.rh-nav__group{margin-top:var(--space-16);padding-top:var(--space-12);border-top:1px solid var(--line);display:flex;flex-direction:column;gap:var(--space-2)}
.rh-nav__label{padding:0 var(--space-12) var(--space-6);font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-2)}
.rh-nav__foot{margin-top:auto;padding-top:var(--space-12);position:sticky;bottom:0;background:var(--surface);z-index:var(--z-raised)}
.rh.is-full .rh-nav{display:none}
.rh.is-nav-collapsed .rh-nav{padding:var(--space-12) var(--space-8);flex-basis:var(--nav-w-narrow);width:var(--nav-w-narrow)}
.rh.is-nav-collapsed .rh-nav__text,.rh.is-nav-collapsed .rh-nav__count,.rh.is-nav-collapsed .rh-nav__label{display:none}
.rh.is-nav-collapsed .rh-nav__item{justify-content:center;padding:0}
.rh.is-nav-collapsed .rh-nav__item.is-active::before{left:calc(-1 * var(--space-8))}

/* ===== Seite ===== */
.rh-main{flex:1 1 0;min-width:0;padding:var(--space-24) var(--space-32) var(--space-64)}
.rh-page{max-width:var(--page-max);margin:0 auto;display:flex;flex-direction:column;gap:var(--space-24)}
.rh-page--wide{max-width:var(--page-wide)}
.rh-page.rh-page--wide{min-width:0;max-width:100%;width:100%}
.rh-page--narrow{max-width:var(--page-narrow);padding-top:var(--space-24)}
.rh-page--profil{width:100%;max-width:var(--page-profil);margin-inline:auto}
.rh-pagehead{display:flex;align-items:flex-end;gap:var(--space-16);flex-wrap:wrap}
.rh-pagehead__text{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:var(--space-6)}
.rh-pagehead h1{font-size:var(--fs-heading-1);line-height:var(--lh-heading);font-weight:var(--fw-strong);letter-spacing:var(--ls-tight);overflow-wrap:anywhere}
.rh-pagehead__sub{color:var(--text-2);font-size:var(--fs-body-lg);max-width:760px}
.rh-pagehead__actions{display:flex;gap:var(--space-8);flex-wrap:wrap;align-items:center}
.rh-crumb{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-4);height:var(--size-crumb);padding:0 var(--space-6) 0 var(--space-2);margin-left:calc(-1 * var(--space-2));border-radius:var(--radius-sm);font-size:var(--fs-meta);font-weight:var(--fw-medium);color:var(--text-2);background:none;border:0;text-decoration:none}
.rh-crumb:hover{color:var(--text);background:var(--surface-3)}
.rh-section{display:flex;flex-direction:column;gap:var(--space-12);min-width:0}
.rh-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-12);flex-wrap:wrap}
.rh-section__title{font-size:var(--fs-title);font-weight:var(--fw-strong)}

/* ===== Knopf (Button) ===== */
.rh-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-8);height:var(--size-btn);padding:0 var(--space-16);border-radius:var(--radius);border:1px solid var(--line-control);background:var(--surface);color:var(--text);font-size:var(--fs-body);font-weight:var(--fw-semibold);white-space:nowrap;text-decoration:none;flex:none;isolation:isolate;transition:background-color var(--duration-fast) var(--easing-standard),border-color var(--duration-fast) var(--easing-standard)}
.rh-btn:hover{background:var(--surface-2);border-color:var(--text-2)}
.rh-btn>*{position:relative}
.rh-btn--primary{background:var(--red);border-color:var(--red);color:var(--on-red)}
.rh-btn--primary:hover{background:var(--red-hover);border-color:var(--red-hover)}
.rh-btn--brand{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.rh-btn--brand:hover{background:var(--brand-hover);border-color:var(--brand-hover)}
.rh-btn--ghost{background:transparent;border-color:transparent}
.rh-btn--ghost:hover{background:var(--surface-3);border-color:transparent}
.rh-btn--danger{color:var(--err-text)}
.rh-btn--sm{height:var(--size-btn-sm);padding:0 var(--space-12);font-size:var(--fs-body);gap:var(--space-6)}
.rh-btn--sm .ms{font-size:var(--icon-ctl)}
.rh-btn--lg{height:var(--size-btn-lg);padding:0 var(--space-20);font-size:var(--fs-title-sm)}
.rh-btn--block{width:100%}
.rh-btn[disabled],.rh-btn[aria-disabled="true"]{opacity:var(--opacity-disabled);cursor:not-allowed}
.rh-btn__fill{position:absolute !important;z-index:var(--z-below);left:0;top:0;bottom:0;background:var(--info-soft);transition:width var(--duration-slow) var(--easing-standard)}
.rh-btn--primary .rh-btn__fill{background:var(--progress-on-red)}
.rh-btn--brand .rh-btn__fill{background:var(--progress-on-brand)}
.rh-btn[data-dl-state="loading"]{cursor:progress;pointer-events:none}
.rh-btn[data-dl-state="loading"] [data-dl-icon]{animation:rh-dl-spin var(--duration-spin) linear infinite}
.rh-btn[data-dl-state="loading"]:not([data-dl-progress]) .rh-btn__fill{width:35%;animation:rh-dl-indet var(--duration-indet) var(--easing-inout) infinite}
.rh-btn[data-dl-state="loading"][data-dl-progress] .rh-btn__fill{animation:none}
.rh-btn[data-dl-state="loading"][data-dl-progress="0"] .rh-btn__fill{width:0%}
.rh-btn[data-dl-state="loading"][data-dl-progress="1"] .rh-btn__fill{width:1%}
.rh-btn[data-dl-state="loading"][data-dl-progress="2"] .rh-btn__fill{width:2%}
.rh-btn[data-dl-state="loading"][data-dl-progress="3"] .rh-btn__fill{width:3%}
.rh-btn[data-dl-state="loading"][data-dl-progress="4"] .rh-btn__fill{width:4%}
.rh-btn[data-dl-state="loading"][data-dl-progress="5"] .rh-btn__fill{width:5%}
.rh-btn[data-dl-state="loading"][data-dl-progress="6"] .rh-btn__fill{width:6%}
.rh-btn[data-dl-state="loading"][data-dl-progress="7"] .rh-btn__fill{width:7%}
.rh-btn[data-dl-state="loading"][data-dl-progress="8"] .rh-btn__fill{width:8%}
.rh-btn[data-dl-state="loading"][data-dl-progress="9"] .rh-btn__fill{width:9%}
.rh-btn[data-dl-state="loading"][data-dl-progress="10"] .rh-btn__fill{width:10%}
.rh-btn[data-dl-state="loading"][data-dl-progress="11"] .rh-btn__fill{width:11%}
.rh-btn[data-dl-state="loading"][data-dl-progress="12"] .rh-btn__fill{width:12%}
.rh-btn[data-dl-state="loading"][data-dl-progress="13"] .rh-btn__fill{width:13%}
.rh-btn[data-dl-state="loading"][data-dl-progress="14"] .rh-btn__fill{width:14%}
.rh-btn[data-dl-state="loading"][data-dl-progress="15"] .rh-btn__fill{width:15%}
.rh-btn[data-dl-state="loading"][data-dl-progress="16"] .rh-btn__fill{width:16%}
.rh-btn[data-dl-state="loading"][data-dl-progress="17"] .rh-btn__fill{width:17%}
.rh-btn[data-dl-state="loading"][data-dl-progress="18"] .rh-btn__fill{width:18%}
.rh-btn[data-dl-state="loading"][data-dl-progress="19"] .rh-btn__fill{width:19%}
.rh-btn[data-dl-state="loading"][data-dl-progress="20"] .rh-btn__fill{width:20%}
.rh-btn[data-dl-state="loading"][data-dl-progress="21"] .rh-btn__fill{width:21%}
.rh-btn[data-dl-state="loading"][data-dl-progress="22"] .rh-btn__fill{width:22%}
.rh-btn[data-dl-state="loading"][data-dl-progress="23"] .rh-btn__fill{width:23%}
.rh-btn[data-dl-state="loading"][data-dl-progress="24"] .rh-btn__fill{width:24%}
.rh-btn[data-dl-state="loading"][data-dl-progress="25"] .rh-btn__fill{width:25%}
.rh-btn[data-dl-state="loading"][data-dl-progress="26"] .rh-btn__fill{width:26%}
.rh-btn[data-dl-state="loading"][data-dl-progress="27"] .rh-btn__fill{width:27%}
.rh-btn[data-dl-state="loading"][data-dl-progress="28"] .rh-btn__fill{width:28%}
.rh-btn[data-dl-state="loading"][data-dl-progress="29"] .rh-btn__fill{width:29%}
.rh-btn[data-dl-state="loading"][data-dl-progress="30"] .rh-btn__fill{width:30%}
.rh-btn[data-dl-state="loading"][data-dl-progress="31"] .rh-btn__fill{width:31%}
.rh-btn[data-dl-state="loading"][data-dl-progress="32"] .rh-btn__fill{width:32%}
.rh-btn[data-dl-state="loading"][data-dl-progress="33"] .rh-btn__fill{width:33%}
.rh-btn[data-dl-state="loading"][data-dl-progress="34"] .rh-btn__fill{width:34%}
.rh-btn[data-dl-state="loading"][data-dl-progress="35"] .rh-btn__fill{width:35%}
.rh-btn[data-dl-state="loading"][data-dl-progress="36"] .rh-btn__fill{width:36%}
.rh-btn[data-dl-state="loading"][data-dl-progress="37"] .rh-btn__fill{width:37%}
.rh-btn[data-dl-state="loading"][data-dl-progress="38"] .rh-btn__fill{width:38%}
.rh-btn[data-dl-state="loading"][data-dl-progress="39"] .rh-btn__fill{width:39%}
.rh-btn[data-dl-state="loading"][data-dl-progress="40"] .rh-btn__fill{width:40%}
.rh-btn[data-dl-state="loading"][data-dl-progress="41"] .rh-btn__fill{width:41%}
.rh-btn[data-dl-state="loading"][data-dl-progress="42"] .rh-btn__fill{width:42%}
.rh-btn[data-dl-state="loading"][data-dl-progress="43"] .rh-btn__fill{width:43%}
.rh-btn[data-dl-state="loading"][data-dl-progress="44"] .rh-btn__fill{width:44%}
.rh-btn[data-dl-state="loading"][data-dl-progress="45"] .rh-btn__fill{width:45%}
.rh-btn[data-dl-state="loading"][data-dl-progress="46"] .rh-btn__fill{width:46%}
.rh-btn[data-dl-state="loading"][data-dl-progress="47"] .rh-btn__fill{width:47%}
.rh-btn[data-dl-state="loading"][data-dl-progress="48"] .rh-btn__fill{width:48%}
.rh-btn[data-dl-state="loading"][data-dl-progress="49"] .rh-btn__fill{width:49%}
.rh-btn[data-dl-state="loading"][data-dl-progress="50"] .rh-btn__fill{width:50%}
.rh-btn[data-dl-state="loading"][data-dl-progress="51"] .rh-btn__fill{width:51%}
.rh-btn[data-dl-state="loading"][data-dl-progress="52"] .rh-btn__fill{width:52%}
.rh-btn[data-dl-state="loading"][data-dl-progress="53"] .rh-btn__fill{width:53%}
.rh-btn[data-dl-state="loading"][data-dl-progress="54"] .rh-btn__fill{width:54%}
.rh-btn[data-dl-state="loading"][data-dl-progress="55"] .rh-btn__fill{width:55%}
.rh-btn[data-dl-state="loading"][data-dl-progress="56"] .rh-btn__fill{width:56%}
.rh-btn[data-dl-state="loading"][data-dl-progress="57"] .rh-btn__fill{width:57%}
.rh-btn[data-dl-state="loading"][data-dl-progress="58"] .rh-btn__fill{width:58%}
.rh-btn[data-dl-state="loading"][data-dl-progress="59"] .rh-btn__fill{width:59%}
.rh-btn[data-dl-state="loading"][data-dl-progress="60"] .rh-btn__fill{width:60%}
.rh-btn[data-dl-state="loading"][data-dl-progress="61"] .rh-btn__fill{width:61%}
.rh-btn[data-dl-state="loading"][data-dl-progress="62"] .rh-btn__fill{width:62%}
.rh-btn[data-dl-state="loading"][data-dl-progress="63"] .rh-btn__fill{width:63%}
.rh-btn[data-dl-state="loading"][data-dl-progress="64"] .rh-btn__fill{width:64%}
.rh-btn[data-dl-state="loading"][data-dl-progress="65"] .rh-btn__fill{width:65%}
.rh-btn[data-dl-state="loading"][data-dl-progress="66"] .rh-btn__fill{width:66%}
.rh-btn[data-dl-state="loading"][data-dl-progress="67"] .rh-btn__fill{width:67%}
.rh-btn[data-dl-state="loading"][data-dl-progress="68"] .rh-btn__fill{width:68%}
.rh-btn[data-dl-state="loading"][data-dl-progress="69"] .rh-btn__fill{width:69%}
.rh-btn[data-dl-state="loading"][data-dl-progress="70"] .rh-btn__fill{width:70%}
.rh-btn[data-dl-state="loading"][data-dl-progress="71"] .rh-btn__fill{width:71%}
.rh-btn[data-dl-state="loading"][data-dl-progress="72"] .rh-btn__fill{width:72%}
.rh-btn[data-dl-state="loading"][data-dl-progress="73"] .rh-btn__fill{width:73%}
.rh-btn[data-dl-state="loading"][data-dl-progress="74"] .rh-btn__fill{width:74%}
.rh-btn[data-dl-state="loading"][data-dl-progress="75"] .rh-btn__fill{width:75%}
.rh-btn[data-dl-state="loading"][data-dl-progress="76"] .rh-btn__fill{width:76%}
.rh-btn[data-dl-state="loading"][data-dl-progress="77"] .rh-btn__fill{width:77%}
.rh-btn[data-dl-state="loading"][data-dl-progress="78"] .rh-btn__fill{width:78%}
.rh-btn[data-dl-state="loading"][data-dl-progress="79"] .rh-btn__fill{width:79%}
.rh-btn[data-dl-state="loading"][data-dl-progress="80"] .rh-btn__fill{width:80%}
.rh-btn[data-dl-state="loading"][data-dl-progress="81"] .rh-btn__fill{width:81%}
.rh-btn[data-dl-state="loading"][data-dl-progress="82"] .rh-btn__fill{width:82%}
.rh-btn[data-dl-state="loading"][data-dl-progress="83"] .rh-btn__fill{width:83%}
.rh-btn[data-dl-state="loading"][data-dl-progress="84"] .rh-btn__fill{width:84%}
.rh-btn[data-dl-state="loading"][data-dl-progress="85"] .rh-btn__fill{width:85%}
.rh-btn[data-dl-state="loading"][data-dl-progress="86"] .rh-btn__fill{width:86%}
.rh-btn[data-dl-state="loading"][data-dl-progress="87"] .rh-btn__fill{width:87%}
.rh-btn[data-dl-state="loading"][data-dl-progress="88"] .rh-btn__fill{width:88%}
.rh-btn[data-dl-state="loading"][data-dl-progress="89"] .rh-btn__fill{width:89%}
.rh-btn[data-dl-state="loading"][data-dl-progress="90"] .rh-btn__fill{width:90%}
.rh-btn[data-dl-state="loading"][data-dl-progress="91"] .rh-btn__fill{width:91%}
.rh-btn[data-dl-state="loading"][data-dl-progress="92"] .rh-btn__fill{width:92%}
.rh-btn[data-dl-state="loading"][data-dl-progress="93"] .rh-btn__fill{width:93%}
.rh-btn[data-dl-state="loading"][data-dl-progress="94"] .rh-btn__fill{width:94%}
.rh-btn[data-dl-state="loading"][data-dl-progress="95"] .rh-btn__fill{width:95%}
.rh-btn[data-dl-state="loading"][data-dl-progress="96"] .rh-btn__fill{width:96%}
.rh-btn[data-dl-state="loading"][data-dl-progress="97"] .rh-btn__fill{width:97%}
.rh-btn[data-dl-state="loading"][data-dl-progress="98"] .rh-btn__fill{width:98%}
.rh-btn[data-dl-state="loading"][data-dl-progress="99"] .rh-btn__fill{width:99%}
.rh-btn[data-dl-state="loading"][data-dl-progress="100"] .rh-btn__fill{width:100%}
.rh-btn[data-dl-state="done"] .rh-btn__fill{width:0}
@keyframes rh-dl-spin{to{transform:rotate(360deg)}}
@keyframes rh-dl-indet{0%{transform:translateX(-100%)}100%{transform:translateX(300%)}}

/* ===== Icon-Knopf ===== */
.rh-iconbtn{width:var(--size-iconbtn);height:var(--size-iconbtn);border-radius:var(--radius);border:1px solid transparent;background:transparent;color:var(--text-2);display:grid;place-items:center;padding:0;flex:none;text-decoration:none}
.rh-iconbtn:hover{background:var(--surface-3);color:var(--text)}
.rh-iconbtn--outline{border-color:var(--line-control);background:var(--surface);color:var(--text)}
.rh-iconbtn--outline:hover{border-color:var(--text-2)}
.rh-iconbtn--lg{width:var(--size-iconbtn-lg);height:var(--size-iconbtn-lg)}

/* ===== Badge ===== */
.rh-badge{display:inline-flex;align-items:center;gap:var(--space-4);height:var(--size-badge);padding:0 var(--space-8) 0 var(--space-6);border-radius:var(--radius-pill);font-size:var(--fs-meta);font-weight:var(--fw-semibold);white-space:nowrap;border:1px solid transparent;flex:none;text-decoration:none}
.rh-badge .ms{font-size:var(--icon-sm)}
.rh-badge--ok{background:var(--ok-soft);color:var(--ok-text);border-color:var(--ok-line)}
.rh-badge--warn{background:var(--warn-soft);color:var(--warn-text);border-color:var(--warn-line)}
.rh-badge--err{background:var(--err-soft);color:var(--err-text);border-color:var(--err-line)}
.rh-badge--info{background:var(--info-soft);color:var(--info-text);border-color:var(--info-line)}
.rh-badge--neutral{background:var(--surface-2);color:var(--text-2);border-color:var(--line-strong)}
.rh-badge--sm{height:var(--size-badge-sm);padding:0 var(--space-6) 0 var(--space-4);font-size:var(--fs-caption)}
.rh-badge--sm .ms{font-size:var(--icon-xs)}
.rh-badge--ok .ms{color:var(--ok)}.rh-badge--warn .ms{color:var(--warn)}.rh-badge--err .ms{color:var(--err)}.rh-badge--info .ms{color:var(--info)}.rh-badge--neutral .ms{color:var(--text-2)}

/* ===== Karte, Kennzahl-Kachel, Berichtskarte ===== */
.rh-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0}
.rh-card--alt{background:var(--surface-2)}
.rh-card__head{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-16) var(--space-20);border-bottom:1px solid var(--line);flex-wrap:wrap}
.rh-card__title{font-size:var(--fs-title-sm);font-weight:var(--fw-strong)}
.rh-card__body{padding:var(--space-20);display:flex;flex-direction:column;gap:var(--space-16)}
.rh-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:var(--space-16)}
.rh-kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-16) var(--space-20);display:flex;flex-direction:column;gap:var(--space-6);min-width:0}
.rh-kpi__label{display:flex;align-items:center;gap:var(--space-8);font-size:var(--fs-body);color:var(--text-2);font-weight:var(--fw-medium);flex-wrap:wrap}
.rh-kpi__value{display:flex;align-items:center;gap:var(--space-4);font-size:var(--fs-display);font-weight:var(--fw-strong);letter-spacing:var(--ls-display);line-height:var(--lh-display);font-variant-numeric:tabular-nums;white-space:nowrap;flex-wrap:wrap}
.rh-kpi__value--name{font-size:var(--fs-title-lg);letter-spacing:var(--ls-none);white-space:normal;line-height:var(--lh-snug)}
.rh-kpi__foot{display:flex;align-items:center;gap:var(--space-6);font-size:var(--fs-meta);color:var(--text-2);flex-wrap:wrap}
.rh-spark{display:block;width:100%;height:auto;margin-top:var(--space-4);overflow:visible}
.rh-spark polyline{fill:none;stroke:var(--chart-cy);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.rh-spark .rh-spark__base{fill:none;stroke:var(--line);stroke-width:1}
.rh-spark circle{fill:var(--chart-cy);stroke:var(--surface);stroke-width:2}
.rh-spark circle.is-pre{fill:var(--chart-pre)}
.rh-delta{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--fw-strong);white-space:nowrap;font-variant-numeric:tabular-nums}
.rh-delta--up{color:var(--ok)}
.rh-delta--down{color:var(--err)}
.rh-delta--none{color:var(--text-2)}
/* Kachel mit Fortschritt gegen Schwelle (neu) */
.rh-meter{display:flex;flex-direction:column;gap:var(--space-6);margin-top:var(--space-4)}
.rh-meter__track{position:relative;height:var(--meter-h);border-radius:var(--radius-pill);background:var(--meter-track)}
.rh-meter__fill{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:var(--radius-pill);background:var(--meter-fill)}
.rh-meter__mark{position:absolute;left:80%;top:50%;width:2px;height:var(--meter-mark-h);transform:translate(-50%,-50%);background:var(--meter-mark)}
.rh-meter__text{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-8);flex-wrap:wrap;font-size:var(--fs-meta);color:var(--text-2);font-variant-numeric:tabular-nums}
.rh-meter__text b{color:var(--text);font-weight:var(--fw-semibold)}
.rh-meter--nahe .rh-meter__fill{background:var(--meter-near)}
.rh-meter--ueber .rh-meter__fill{background:var(--meter-over)}
.rh-meter--ziel.rh-meter--ueber .rh-meter__fill{background:var(--meter-goal)}
.rh-meter__fill[data-anteil="0"]{width:0%}
.rh-meter__fill[data-anteil="2"]{width:2%}
.rh-meter__fill[data-anteil="4"]{width:4%}
.rh-meter__fill[data-anteil="6"]{width:6%}
.rh-meter__fill[data-anteil="8"]{width:8%}
.rh-meter__fill[data-anteil="10"]{width:10%}
.rh-meter__fill[data-anteil="12"]{width:12%}
.rh-meter__fill[data-anteil="14"]{width:14%}
.rh-meter__fill[data-anteil="16"]{width:16%}
.rh-meter__fill[data-anteil="18"]{width:18%}
.rh-meter__fill[data-anteil="20"]{width:20%}
.rh-meter__fill[data-anteil="22"]{width:22%}
.rh-meter__fill[data-anteil="24"]{width:24%}
.rh-meter__fill[data-anteil="26"]{width:26%}
.rh-meter__fill[data-anteil="28"]{width:28%}
.rh-meter__fill[data-anteil="30"]{width:30%}
.rh-meter__fill[data-anteil="32"]{width:32%}
.rh-meter__fill[data-anteil="34"]{width:34%}
.rh-meter__fill[data-anteil="36"]{width:36%}
.rh-meter__fill[data-anteil="38"]{width:38%}
.rh-meter__fill[data-anteil="40"]{width:40%}
.rh-meter__fill[data-anteil="42"]{width:42%}
.rh-meter__fill[data-anteil="44"]{width:44%}
.rh-meter__fill[data-anteil="46"]{width:46%}
.rh-meter__fill[data-anteil="48"]{width:48%}
.rh-meter__fill[data-anteil="50"]{width:50%}
.rh-meter__fill[data-anteil="52"]{width:52%}
.rh-meter__fill[data-anteil="54"]{width:54%}
.rh-meter__fill[data-anteil="56"]{width:56%}
.rh-meter__fill[data-anteil="58"]{width:58%}
.rh-meter__fill[data-anteil="60"]{width:60%}
.rh-meter__fill[data-anteil="62"]{width:62%}
.rh-meter__fill[data-anteil="64"]{width:64%}
.rh-meter__fill[data-anteil="66"]{width:66%}
.rh-meter__fill[data-anteil="68"]{width:68%}
.rh-meter__fill[data-anteil="70"]{width:70%}
.rh-meter__fill[data-anteil="72"]{width:72%}
.rh-meter__fill[data-anteil="74"]{width:74%}
.rh-meter__fill[data-anteil="76"]{width:76%}
.rh-meter__fill[data-anteil="78"]{width:78%}
.rh-meter__fill[data-anteil="80"]{width:80%}
.rh-meter__fill[data-anteil="82"]{width:82%}
.rh-meter__fill[data-anteil="84"]{width:84%}
.rh-meter__fill[data-anteil="86"]{width:86%}
.rh-meter__fill[data-anteil="88"]{width:88%}
.rh-meter__fill[data-anteil="90"]{width:90%}
.rh-meter__fill[data-anteil="92"]{width:92%}
.rh-meter__fill[data-anteil="94"]{width:94%}
.rh-meter__fill[data-anteil="96"]{width:96%}
.rh-meter__fill[data-anteil="98"]{width:98%}
.rh-meter__fill[data-anteil="100"]{width:100%}
.rh-reports{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(400px,100%),1fr));gap:var(--space-16)}
.rh-reportcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-20);display:flex;flex-direction:column;gap:var(--space-16);min-width:0}
.rh-reportcard__head{display:flex;gap:var(--space-16);align-items:flex-start}
.rh-reportcard__icon{width:var(--size-tile-lg);height:var(--size-tile-lg);border-radius:var(--radius);background:var(--surface-3);color:var(--text);display:grid;place-items:center;flex:none}
.rh-reportcard__title{font-size:var(--fs-title-lg);font-weight:var(--fw-strong);line-height:var(--lh-snug)}
.rh-reportcard__desc{color:var(--text-2);font-size:var(--fs-body);margin-top:var(--space-4);max-width:520px}
.rh-reportcard__meta{display:flex;align-items:center;gap:var(--space-8);flex-wrap:wrap;font-size:var(--fs-meta);color:var(--text-2)}
.rh-reportcard__actions{display:flex;gap:var(--space-8);flex-wrap:wrap;margin-top:auto}

/* ===== Schmale Liste, Zweispalter ===== */
.rh-twocol{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(440px,100%),1fr));gap:var(--space-16);align-items:start}
.rh-twocol:has(>.rh-slist:only-child){grid-template-columns:minmax(0,1fr)}
.rh-slist{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-width:0}
.rh-slist__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);padding:var(--space-12) var(--space-16);border-bottom:1px solid var(--line);flex-wrap:wrap}
.rh-slist__title{font-size:var(--fs-title-sm);font-weight:var(--fw-strong)}
.rh-slist__row{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-8) var(--space-12) var(--space-8) var(--space-16);border-bottom:1px solid var(--line);min-height:var(--size-row)}
.rh-slist__row:last-child{border-bottom:0}
.rh-slist__icon{width:var(--size-tile);height:var(--size-tile);border-radius:var(--radius);background:var(--surface-3);display:grid;place-items:center;color:var(--text-2);flex:none}
.rh-slist__main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}
.rh-slist__name{font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rh-slist__sub{font-size:var(--fs-meta);color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ===== Segment ===== */
.rh-seg{display:inline-flex;flex-wrap:wrap;padding:var(--space-2);gap:var(--space-2);border-radius:var(--radius);background:var(--surface-3);border:1px solid var(--line);margin:0}
.rh-seg legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rh-seg__opt{position:relative;display:inline-flex}
.rh-seg__opt input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}
.rh-seg__opt span{display:inline-flex;align-items:center;gap:var(--space-6);height:var(--size-seg);padding:0 var(--space-12);border-radius:var(--radius-sm);font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--text-2);white-space:nowrap}
.rh-seg__opt:hover span{color:var(--text)}
.rh-seg__opt input:checked+span{background:var(--surface);color:var(--text);font-weight:var(--fw-strong);box-shadow:0 0 0 1px var(--line-control),var(--shadow-xs)}
.rh-seg__opt input:focus-visible+span{outline:2px solid var(--focus);outline-offset:var(--space-2)}
.rh-seg__opt input:disabled+span{opacity:var(--opacity-disabled);cursor:not-allowed}
.rh-seg--sm .rh-seg__opt span{height:var(--size-seg-sm);padding:0 var(--space-8);font-size:var(--fs-meta)}

/* ===== Reiter (Tabs) ===== */
.rh-tabs{display:flex;gap:var(--space-2);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.rh-tab{position:relative;height:var(--size-tab);padding:0 var(--space-12);border:0;background:none;color:var(--text-2);font-size:var(--fs-body-lg);font-weight:var(--fw-medium);white-space:nowrap;flex:none;text-decoration:none;display:inline-flex;align-items:center}
.rh-tab:hover{color:var(--text)}
.rh-tab[aria-selected="true"]{color:var(--text);font-weight:var(--fw-strong)}
.rh-tab[aria-selected="true"]::after{content:"";position:absolute;left:var(--space-8);right:var(--space-8);bottom:-1px;height:var(--size-marker);border-radius:var(--radius-2xs) var(--radius-2xs) 0 0;background:var(--red)}

/* ===== Filterzeile, Zeitraum, Berichtskopf ===== */
.rh-filterrow{display:flex;align-items:center;gap:var(--space-12) var(--space-16);flex-wrap:wrap}
.rh-range{display:flex;align-items:center;gap:var(--space-8);flex-wrap:wrap}
.rh-range label{display:flex;align-items:center;gap:var(--space-6);font-size:var(--fs-meta);color:var(--text-2)}
.rh-reporthead{display:flex;flex-direction:column;gap:var(--space-16)}
.rh-reporthead__row{display:flex;align-items:flex-end;gap:var(--space-16);flex-wrap:wrap}
.rh-reporthead__title{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:var(--space-8)}
.rh-reporthead__title h1{font-size:var(--fs-heading-1);line-height:var(--lh-heading);font-weight:var(--fw-strong);letter-spacing:var(--ls-tight);overflow-wrap:anywhere}
.rh-reporthead__meta{display:flex;align-items:center;gap:var(--space-8);flex-wrap:wrap}
.rh-reporthead__actions{display:flex;gap:var(--space-8);flex-wrap:wrap;align-items:center}

/* ===== Hinweisstreifen (Notice) ===== */
.rh-notice{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-12) var(--space-12) var(--space-12) var(--space-16);border-radius:var(--radius);border:1px solid var(--info-line);background:var(--info-soft);font-size:var(--fs-body);flex-wrap:wrap}
.rh-notice>.ms{color:var(--info);align-self:flex-start;margin-top:var(--space-2)}
.rh-notice__text{flex:1 1 320px;min-width:0}
.rh-notice__text b{font-weight:var(--fw-strong)}
.rh-notice--warn{background:var(--warn-soft);border-color:var(--warn-line)}
.rh-notice--warn>.ms{color:var(--warn)}
.rh-notice--err{background:var(--err-soft);border-color:var(--err-line)}
.rh-notice--err>.ms{color:var(--err)}
.rh-notice--ok{background:var(--ok-soft);border-color:var(--ok-line)}
.rh-notice--ok>.ms{color:var(--ok)}
.rh-notice--locked{background:var(--surface-2);border-color:var(--line-strong)}
.rh-notice--locked>.ms{color:var(--text-2)}
.rh-notice[hidden]{display:none}

/* ===== Datentabelle ===== */
.rh-tablecard{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;min-width:0;overflow:hidden}
.rh-tabletools{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-12);border-bottom:1px solid var(--line);flex-wrap:wrap}
.rh-tabletools__count{font-size:var(--fs-meta);color:var(--text-2);margin-left:auto;white-space:nowrap}
.rh-search{display:flex;align-items:center;gap:var(--space-8);height:var(--size-search);padding:0 var(--space-8) 0 var(--space-12);border-radius:var(--radius);border:1px solid var(--input);background:var(--surface);flex:0 1 var(--search-basis);min-width:min(var(--search-min),100%);color:var(--text-2)}
.rh-search input{border:0;outline:0;background:transparent;flex:1;min-width:0;font-size:var(--fs-body);color:var(--text);height:var(--size-btn-sm)}
.rh-search input::placeholder{color:var(--text-2)}
.rh-search:focus-within{border-color:var(--focus);outline:2px solid var(--focus);outline-offset:var(--space-2)}
.rh-tablewrap{overflow:auto;max-height:var(--tablewrap-max-h);position:relative}
.rh.is-full .rh-tablewrap{max-height:calc(100vh - var(--fullscreen-offset))}
.rh-table{min-width:100%;width:max-content;font-size:var(--fs-body);font-variant-numeric:tabular-nums}
.rh-tr{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(160px,1fr);min-width:100%}
.rh-th,.rh-td{display:flex;align-items:center;min-width:0;background:var(--surface);border-bottom:1px solid var(--line)}
.rh-td{padding:var(--space-8) var(--space-12);min-height:var(--size-td)}
.rh-tr:hover .rh-td{background:var(--surface-2)}
.rh-thead{position:sticky;top:0;z-index:var(--z-sticky-head)}
.rh-th{height:var(--size-th);padding:0 var(--space-6);background:var(--surface-2);font-size:var(--fs-meta);font-weight:var(--fw-semibold);color:var(--text-2)}
.rh-th button{display:inline-flex;align-items:center;gap:var(--space-4);width:100%;height:var(--size-btn-sm);padding:0 var(--space-8);border:0;border-radius:var(--radius-sm);background:none;color:inherit;font-size:var(--fs-meta);font-weight:var(--fw-semibold);white-space:nowrap;text-align:left}
.rh-th button:hover{background:var(--surface-3);color:var(--text)}
.rh-th[aria-sort="ascending"] button,.rh-th[aria-sort="descending"] button{color:var(--text)}
.rh-th.is-num button{justify-content:flex-end;text-align:right}
.rh-th.is-num{justify-content:flex-end}
.rh-td.is-num{justify-content:flex-end;text-align:right;white-space:nowrap}
.rh-th.is-sticky,.rh-td.is-sticky{position:sticky;left:0;z-index:var(--z-sticky-cell);box-shadow:inset -1px 0 0 var(--line)}
.rh-th.is-sticky{z-index:var(--z-sticky-corner)}
.rh-td__name{display:flex;flex-direction:column;min-width:0}
.rh-td__name b{font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rh-td__name small{font-size:var(--fs-caption);color:var(--text-2);white-space:nowrap}
.rh-tsum{position:sticky;bottom:0;z-index:var(--z-sticky-head)}
.rh-tsum .rh-td{background:var(--surface-3);font-weight:var(--fw-bold);border-top:2px solid var(--line-strong);border-bottom:0}
.rh-tr:hover .rh-td.rh-td--sum{background:var(--surface-3)}
.rh-tr:has(.rh-td--sum) .rh-td:first-child{font-weight:var(--fw-semibold)}
.rh-tablefoot{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-8) var(--space-12);border-top:1px solid var(--line);font-size:var(--fs-meta);color:var(--text-2);flex-wrap:wrap}
.ds-table-loading{position:absolute;inset:var(--space-64) 0 auto;z-index:var(--z-sticky-cell);background:var(--bg)}
.rh-tablecard:has(>.ds-table-loading.htmx-request)>.rh-tablewrap{visibility:hidden}
/* Spaltenauswahl ohne Skript (Kontrollkästchen ds-col-N) und Vollbild */
.rh-report:has(.ds-col-2:not(:checked)) .rh-tr>:nth-child(2){display:none}
.rh-report:has(.ds-col-3:not(:checked)) .rh-tr>:nth-child(3){display:none}
.rh-report:has(.ds-col-4:not(:checked)) .rh-tr>:nth-child(4){display:none}
.rh-report:has(.ds-col-5:not(:checked)) .rh-tr>:nth-child(5){display:none}
.rh-report:has(.ds-col-6:not(:checked)) .rh-tr>:nth-child(6){display:none}
.rh-report:has(.ds-col-7:not(:checked)) .rh-tr>:nth-child(7){display:none}
.rh-report:has(.ds-col-8:not(:checked)) .rh-tr>:nth-child(8){display:none}
.rh-report:has(.ds-col-9:not(:checked)) .rh-tr>:nth-child(9){display:none}
.rh-report:has(.ds-col-10:not(:checked)) .rh-tr>:nth-child(10){display:none}
.rh-report:has(.ds-col-11:not(:checked)) .rh-tr>:nth-child(11){display:none}
.rh-report:has(.ds-col-12:not(:checked)) .rh-tr>:nth-child(12){display:none}
.rh-report:has(.ds-col-13:not(:checked)) .rh-tr>:nth-child(13){display:none}
.rh-report:has(.ds-col-14:not(:checked)) .rh-tr>:nth-child(14){display:none}
.rh-report:has(.ds-col-15:not(:checked)) .rh-tr>:nth-child(15){display:none}
.rh-report:has(.ds-col-16:not(:checked)) .rh-tr>:nth-child(16){display:none}
.rh-report:has(.ds-col-17:not(:checked)) .rh-tr>:nth-child(17){display:none}
.rh-report:has(.ds-col-18:not(:checked)) .rh-tr>:nth-child(18){display:none}
.rh-report:has(.ds-col-19:not(:checked)) .rh-tr>:nth-child(19){display:none}
.rh-report:has(.ds-col-20:not(:checked)) .rh-tr>:nth-child(20){display:none}
.rh-report:has(#bericht-vollbild:checked),.rh-report.is-fullscreen,.is-fullscreen{position:fixed !important;inset:0 !important;z-index:var(--z-toast) !important;overflow:auto !important;background:var(--bg) !important;padding:var(--space-24) !important}
.rh-report .ds-exit-full{display:none}
.rh-report:has(#bericht-vollbild:checked) .ds-exit-full,.rh-report.is-fullscreen .ds-exit-full{display:inline-flex}
.rh-report .rh-filterrow fieldset{border:0;padding:0;margin:0;min-width:0}
.rh-report .rh-tabletools{flex-wrap:wrap}
.rh-report .rh-tabs a{text-decoration:none}
.rh-report .rh-anchor summary{list-style:none;cursor:pointer}
.rh-report .rh-anchor:not([open])>.rh-pop{display:none}
.rh-report .rh-anchor[open]>.rh-pop{display:flex}
.rh-report .rh-kpi__value--name{font-size:var(--fs-heading-2)}
.rh-report .rh-range{display:none}
.rh-report .rh-filterrow:has(input[value="eigen"]:checked) .rh-range{display:flex;flex-wrap:wrap;gap:var(--space-12);align-items:end}

/* ===== Skelett ===== */
.rh-skel{display:block;height:var(--size-legend);width:100%;border-radius:var(--radius-xs);background:linear-gradient(90deg,var(--surface-3) 0,var(--surface-2) 45%,var(--surface-3) 90%);background-size:300% 100%;animation:rh-shimmer var(--duration-shimmer) var(--easing-inout) infinite}
.rh-skel--short{width:55%}
@keyframes rh-shimmer{0%{background-position:100% 0}100%{background-position:0 0}}
.rh-skel-indicator,[data-skel-indicator]{display:none}
.htmx-request.rh-skel-indicator,.htmx-request .rh-skel-indicator,.htmx-request[data-skel-indicator],.htmx-request [data-skel-indicator]{display:block}
.rh-tr.rh-skel-indicator,.rh-tr[data-skel-indicator]{display:none}
.htmx-request.rh-tr.rh-skel-indicator,.htmx-request .rh-tr.rh-skel-indicator,.htmx-request[data-skel-indicator].rh-tr,.htmx-request .rh-tr[data-skel-indicator]{display:grid}
.htmx-request.rh-skel-hide,.htmx-request .rh-skel-hide,[data-skel-hide].htmx-request,.htmx-request [data-skel-hide]{display:none}
.htmx-indicator{opacity:0;transition:opacity var(--duration-slow) var(--easing-in)}
.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{opacity:1}

/* ===== Rasterliste (Downloads, Benutzer, Versand, Protokoll) ===== */
.rh-scrollx{overflow-x:auto;min-width:0;max-width:100%}
.rh-grid{display:grid;align-items:center;column-gap:var(--space-16);padding:var(--space-8) var(--space-16);border-bottom:1px solid var(--line);min-height:var(--size-row);text-decoration:none}
.rh-grid:last-child{border-bottom:0}
.rh-grid--head{min-height:var(--size-row-head);padding-top:0;padding-bottom:0;background:var(--surface-2);font-size:var(--fs-meta);font-weight:var(--fw-semibold);color:var(--text-2)}
.rh-grid--btn{width:100%;border:0;border-bottom:1px solid var(--line);background:var(--surface);color:inherit;font:inherit;text-align:left}
.rh-grid--btn:hover,.rh-grid--hover:hover{background:var(--surface-2)}
.rh-grid--downloads{grid-template-columns:120px minmax(140px,1fr) 130px 180px 55px 220px;min-width:0}
.rh-grid--downloads .rh-cellname{min-width:0;overflow-wrap:anywhere}
.rh-dl-created>span,.rh-dl-created>small{display:block;white-space:normal}
.rh-dl-actions{flex-wrap:wrap;gap:var(--space-6)}
.rh-dl-actions form{margin:0}
.rh-dl-filters{padding-bottom:var(--space-16)}
.rh-grid--users{grid-template-columns:minmax(220px,1.3fr) minmax(170px,1fr) minmax(150px,.9fr) minmax(180px,1fr) 118px 130px 24px;min-width:1080px}
.rh-grid--users-narrow{grid-template-columns:minmax(220px,1.3fr) minmax(170px,1fr) minmax(150px,.9fr) 118px 130px 24px;min-width:900px}
.rh-grid--rollen{grid-template-columns:minmax(180px,1.2fr) minmax(220px,1.5fr) minmax(240px,2fr) 140px}
.rh-grid--jobs{grid-template-columns:minmax(210px,1.1fr) minmax(250px,1.4fr) 130px 120px minmax(170px,1fr) minmax(170px,1fr) 64px 44px;min-width:1240px}
.rh-grid--vlog{grid-template-columns:140px minmax(170px,.9fr) minmax(230px,1.2fr) minmax(200px,1fr) minmax(220px,1.2fr);min-width:1060px}
.rh-grid--log{grid-template-columns:130px 180px 140px 190px minmax(260px,1fr);min-width:940px}
.rh-grid--bezirke{grid-template-columns:90px minmax(180px,1fr) 100px minmax(200px,1fr) 100px 110px;min-width:860px}
.rh-grid--katber{grid-template-columns:minmax(220px,1fr) minmax(280px,1.6fr) 140px 120px;min-width:820px}
.rh-grid--uabos{grid-template-columns:minmax(200px,1fr) 130px 190px minmax(180px,1fr) 170px;min-width:860px}
.rh-cellname{display:flex;flex-direction:column;min-width:0;gap:var(--space-2);text-decoration:none}
.rh-cellname b{font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rh-cellname small{font-size:var(--fs-meta);color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rh-cellname small.is-warn{color:var(--warn-text);font-weight:var(--fw-semibold)}
.rh-cellname small.is-err{color:var(--err-text);font-weight:var(--fw-semibold)}
.rh-cellname .rh-text-medium{font-weight:var(--fw-medium)}

/* ===== Diagramm ===== */
.rh-chart{display:flex;flex-direction:column;gap:var(--space-8)}
.rh-chart__plot{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-8);height:var(--chart-h);align-items:end;padding:0 var(--space-6);border-bottom:1px solid var(--line-strong);background:repeating-linear-gradient(to top,var(--line) 0 1px,transparent 1px var(--chart-grid))}
.rh-chart__month{display:flex;align-items:flex-end;justify-content:center;gap:var(--space-4);height:100%}
.rh-chart__bar{width:min(var(--chart-bar-w),42%);border-radius:var(--radius-2xs) var(--radius-2xs) 0 0;min-height:var(--chart-bar-min)}
.rh-chart__bar--py{background:var(--chart-py)}
.rh-chart__bar--cy{background:var(--chart-cy)}
.rh-chart__bar--pre{background:repeating-linear-gradient(135deg,var(--chart-pre) 0 var(--hatch),var(--chart-pre-soft) var(--hatch) calc(2 * var(--hatch)));box-shadow:inset 0 0 0 1.5px var(--chart-pre)}
.rh-chart__bar--neg{background:repeating-linear-gradient(135deg,var(--chart-neg) 0 var(--hatch),var(--err-soft) var(--hatch) calc(2 * var(--hatch)));box-shadow:inset 0 0 0 1.5px var(--chart-neg)}
.rh-h-0{height:0%}.rh-h-2{height:2%}.rh-h-4{height:4%}.rh-h-6{height:6%}.rh-h-8{height:8%}.rh-h-10{height:10%}.rh-h-12{height:12%}.rh-h-14{height:14%}.rh-h-16{height:16%}.rh-h-18{height:18%}.rh-h-20{height:20%}.rh-h-22{height:22%}.rh-h-24{height:24%}.rh-h-26{height:26%}.rh-h-28{height:28%}.rh-h-30{height:30%}.rh-h-32{height:32%}.rh-h-34{height:34%}.rh-h-36{height:36%}.rh-h-38{height:38%}.rh-h-40{height:40%}.rh-h-42{height:42%}.rh-h-44{height:44%}.rh-h-46{height:46%}.rh-h-48{height:48%}.rh-h-50{height:50%}.rh-h-52{height:52%}.rh-h-54{height:54%}.rh-h-56{height:56%}.rh-h-58{height:58%}.rh-h-60{height:60%}.rh-h-62{height:62%}.rh-h-64{height:64%}.rh-h-66{height:66%}.rh-h-68{height:68%}.rh-h-70{height:70%}.rh-h-72{height:72%}.rh-h-74{height:74%}.rh-h-76{height:76%}.rh-h-78{height:78%}.rh-h-80{height:80%}.rh-h-82{height:82%}.rh-h-84{height:84%}.rh-h-86{height:86%}.rh-h-88{height:88%}.rh-h-90{height:90%}.rh-h-92{height:92%}.rh-h-94{height:94%}.rh-h-96{height:96%}.rh-h-98{height:98%}.rh-h-100{height:100%}.rh-h-1{height:1%}.rh-h-3{height:3%}.rh-h-5{height:5%}.rh-h-7{height:7%}.rh-h-9{height:9%}.rh-h-11{height:11%}.rh-h-13{height:13%}.rh-h-15{height:15%}.rh-h-17{height:17%}.rh-h-19{height:19%}.rh-h-21{height:21%}.rh-h-23{height:23%}.rh-h-25{height:25%}.rh-h-27{height:27%}.rh-h-29{height:29%}.rh-h-31{height:31%}.rh-h-33{height:33%}.rh-h-35{height:35%}.rh-h-37{height:37%}.rh-h-39{height:39%}.rh-h-41{height:41%}.rh-h-43{height:43%}.rh-h-45{height:45%}.rh-h-47{height:47%}.rh-h-49{height:49%}.rh-h-51{height:51%}.rh-h-53{height:53%}.rh-h-55{height:55%}.rh-h-57{height:57%}.rh-h-59{height:59%}.rh-h-61{height:61%}.rh-h-63{height:63%}.rh-h-65{height:65%}.rh-h-67{height:67%}.rh-h-69{height:69%}.rh-h-71{height:71%}.rh-h-73{height:73%}.rh-h-75{height:75%}.rh-h-77{height:77%}.rh-h-79{height:79%}.rh-h-81{height:81%}.rh-h-83{height:83%}.rh-h-85{height:85%}.rh-h-87{height:87%}.rh-h-89{height:89%}.rh-h-91{height:91%}.rh-h-93{height:93%}.rh-h-95{height:95%}.rh-h-97{height:97%}.rh-h-99{height:99%}
.rh-chart__labels{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-8);padding:0 var(--space-6);font-size:var(--fs-caption);color:var(--text-2);text-align:center}
.rh-legend{display:flex;gap:var(--space-16);flex-wrap:wrap;font-size:var(--fs-meta);color:var(--text-2)}
.rh-legend span{display:inline-flex;align-items:center;gap:var(--space-6)}
.rh-legend i{display:inline-block;width:var(--size-legend);height:var(--size-legend);border-radius:var(--radius-2xs)}
.rh-legend__ico--ok{color:var(--ok)}
.rh-legend__ico--warn{color:var(--warn)}
.rh-legend i.rh-legend__cy{background:var(--chart-cy)}
.rh-legend i.rh-legend__py{background:var(--chart-py)}
.rh-legend i.rh-legend__pre{background:repeating-linear-gradient(135deg,var(--chart-pre) 0 var(--hatch),var(--chart-pre-soft) var(--hatch) calc(2 * var(--hatch)))}
.rh-legend i.rh-legend__neg{background:repeating-linear-gradient(135deg,var(--chart-neg) 0 var(--hatch),var(--err-soft) var(--hatch) calc(2 * var(--hatch)))}
.rh-legend i.rh-legend__cat-1{background:var(--chart-cat-1)}.rh-legend i.rh-legend__cat-2{background:var(--chart-cat-2)}.rh-legend i.rh-legend__cat-3{background:var(--chart-cat-3)}.rh-legend i.rh-legend__cat-4{background:var(--chart-cat-4)}.rh-legend i.rh-legend__cat-5{background:var(--chart-cat-5)}.rh-legend i.rh-legend__cat-6{background:var(--chart-cat-6)}.rh-legend i.rh-legend__other{background:var(--chart-neutral)}
.rh-chart__bar--cat-1{background:var(--chart-cat-1)}.rh-chart__bar--cat-2{background:var(--chart-cat-2)}.rh-chart__bar--cat-3{background:var(--chart-cat-3)}.rh-chart__bar--cat-4{background:var(--chart-cat-4)}.rh-chart__bar--cat-5{background:var(--chart-cat-5)}.rh-chart__bar--cat-6{background:var(--chart-cat-6)}.rh-chart__bar--other{background:var(--chart-neutral)}
.rh-chart__bar--pos{background:var(--chart-pos)}.rh-chart__bar--neutral{background:var(--chart-neutral)}
.rh-chart__bar--ramp-1{background:var(--chart-ramp-1)}.rh-chart__bar--ramp-2{background:var(--chart-ramp-2)}.rh-chart__bar--ramp-3{background:var(--chart-ramp-3)}.rh-chart__bar--ramp-4{background:var(--chart-ramp-4)}.rh-chart__bar--ramp-5{background:var(--chart-ramp-5)}
.rh-chart--cat{overflow-x:auto}
.rh-chart--cat .rh-chart__plot,.rh-chart--cat .rh-chart__labels{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(var(--chart-col-min),1fr);min-width:min-content}
.rh-chart--cat .rh-chart__plot{height:var(--chart-h-cat)}
.rh-chart__item{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.rh-chart--cat .rh-chart__labels span{overflow-wrap:normal;hyphens:manual}
/* Abweichungsliste (neu): Balken links (negativ) bzw. rechts (positiv) einer Nulllinie */
.rh-devlist{display:flex;flex-direction:column;gap:var(--space-8);margin:0;padding:0;list-style:none}
.rh-devlist__row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(160px,2fr) minmax(80px,auto);align-items:center;gap:var(--space-12);font-size:var(--fs-meta)}
.rh-devlist__label{color:var(--text);overflow-wrap:break-word}
.rh-devlist__track{position:relative;height:var(--size-legend);background:linear-gradient(var(--line-strong),var(--line-strong)) center/1px 100% no-repeat}
.rh-devlist__bar{position:absolute;top:0;bottom:0;width:0}
.rh-devlist__bar--pos{left:50%;background:var(--chart-pos);border-radius:0 var(--radius-2xs) var(--radius-2xs) 0}
.rh-devlist__bar--neg{right:50%;background:repeating-linear-gradient(135deg,var(--chart-neg) 0 var(--hatch),var(--err-soft) var(--hatch) calc(2 * var(--hatch)));box-shadow:inset 0 0 0 1.5px var(--chart-neg);border-radius:var(--radius-2xs) 0 0 var(--radius-2xs)}
.rh-devlist__bar--neutral{left:50%;background:var(--chart-neutral)}
.rh-devlist__value{text-align:right;font-variant-numeric:tabular-nums}
.rh-devlist__row--sum{padding-top:var(--space-8);border-top:1px solid var(--line);font-weight:var(--fw-semibold)}
.rh-devlist__bar[data-anteil="0"]{width:0%}.rh-devlist__bar[data-anteil="2"]{width:1%}.rh-devlist__bar[data-anteil="4"]{width:2%}.rh-devlist__bar[data-anteil="6"]{width:3%}.rh-devlist__bar[data-anteil="8"]{width:4%}.rh-devlist__bar[data-anteil="10"]{width:5%}.rh-devlist__bar[data-anteil="12"]{width:6%}.rh-devlist__bar[data-anteil="14"]{width:7%}.rh-devlist__bar[data-anteil="16"]{width:8%}.rh-devlist__bar[data-anteil="18"]{width:9%}.rh-devlist__bar[data-anteil="20"]{width:10%}.rh-devlist__bar[data-anteil="22"]{width:11%}.rh-devlist__bar[data-anteil="24"]{width:12%}.rh-devlist__bar[data-anteil="26"]{width:13%}.rh-devlist__bar[data-anteil="28"]{width:14%}.rh-devlist__bar[data-anteil="30"]{width:15%}.rh-devlist__bar[data-anteil="32"]{width:16%}.rh-devlist__bar[data-anteil="34"]{width:17%}.rh-devlist__bar[data-anteil="36"]{width:18%}.rh-devlist__bar[data-anteil="38"]{width:19%}.rh-devlist__bar[data-anteil="40"]{width:20%}.rh-devlist__bar[data-anteil="42"]{width:21%}.rh-devlist__bar[data-anteil="44"]{width:22%}.rh-devlist__bar[data-anteil="46"]{width:23%}.rh-devlist__bar[data-anteil="48"]{width:24%}.rh-devlist__bar[data-anteil="50"]{width:25%}.rh-devlist__bar[data-anteil="52"]{width:26%}.rh-devlist__bar[data-anteil="54"]{width:27%}.rh-devlist__bar[data-anteil="56"]{width:28%}.rh-devlist__bar[data-anteil="58"]{width:29%}.rh-devlist__bar[data-anteil="60"]{width:30%}.rh-devlist__bar[data-anteil="62"]{width:31%}.rh-devlist__bar[data-anteil="64"]{width:32%}.rh-devlist__bar[data-anteil="66"]{width:33%}.rh-devlist__bar[data-anteil="68"]{width:34%}.rh-devlist__bar[data-anteil="70"]{width:35%}.rh-devlist__bar[data-anteil="72"]{width:36%}.rh-devlist__bar[data-anteil="74"]{width:37%}.rh-devlist__bar[data-anteil="76"]{width:38%}.rh-devlist__bar[data-anteil="78"]{width:39%}.rh-devlist__bar[data-anteil="80"]{width:40%}.rh-devlist__bar[data-anteil="82"]{width:41%}.rh-devlist__bar[data-anteil="84"]{width:42%}.rh-devlist__bar[data-anteil="86"]{width:43%}.rh-devlist__bar[data-anteil="88"]{width:44%}.rh-devlist__bar[data-anteil="90"]{width:45%}.rh-devlist__bar[data-anteil="92"]{width:46%}.rh-devlist__bar[data-anteil="94"]{width:47%}.rh-devlist__bar[data-anteil="96"]{width:48%}.rh-devlist__bar[data-anteil="98"]{width:49%}.rh-devlist__bar[data-anteil="100"]{width:50%}
.rh-chart__value{font-size:var(--fs-caption);color:var(--text);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;margin-bottom:var(--space-4)}

/* ===== Seitenpanel, Dialog, Popover, Postfach, Toast ===== */
.rh-scrim{position:fixed;inset:0;z-index:var(--z-scrim);background:var(--scrim);border:0;padding:0;margin:0;width:100%;cursor:default}
.rh-dialog[hidden],.rh-scrim[hidden]{display:none}
.rh-panel{position:fixed;top:0;right:0;bottom:0;z-index:var(--z-panel);width:min(var(--panel-w),100%);background:var(--surface);border-left:1px solid var(--line);box-shadow:var(--shadow-lg);display:flex;flex-direction:column}
.rh-panel--wide{width:min(var(--panel-w-wide),100%)}
.rh-panel__head{display:flex;align-items:flex-start;gap:var(--space-12);padding:var(--space-20) var(--space-20) var(--space-16) var(--space-24);border-bottom:1px solid var(--line)}
.rh-panel__title{font-size:var(--fs-title-lg);font-weight:var(--fw-strong);line-height:var(--lh-title)}
.rh-panel__body{flex:1 1 auto;overflow:auto;padding:var(--space-20) var(--space-24);display:flex;flex-direction:column;gap:var(--space-20)}
.rh-panel__foot{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-8);padding:var(--space-12) var(--space-24);border-top:1px solid var(--line);background:var(--surface);flex-wrap:wrap}
.rh-panel.is-static{position:relative;inset:auto;width:100%;z-index:auto;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.rh-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:var(--z-dialog);width:min(var(--dialog-w),calc(100% - 2 * var(--space-16)));background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:var(--space-24);display:flex;flex-direction:column;gap:var(--space-12)}
.rh-dialog h2{font-size:var(--fs-title-lg);font-weight:var(--fw-strong);line-height:var(--lh-snug)}
.rh-dialog__actions{display:flex;justify-content:flex-end;gap:var(--space-8);flex-wrap:wrap;margin-top:var(--space-6)}
.rh-dialog__facts{display:grid;grid-template-columns:minmax(var(--kv-key-min),max-content) 1fr;gap:var(--space-6) var(--space-16);font-size:var(--fs-body);padding:var(--space-12) var(--space-16);border-radius:var(--radius);background:var(--surface-2)}
.rh-dialog__facts dt{color:var(--text-2)}
.rh-dialog__facts dd{font-weight:var(--fw-semibold);min-width:0;overflow-wrap:anywhere}
.rh-pop{position:absolute;top:calc(100% + var(--space-8));right:0;z-index:var(--z-pop);width:var(--pop-w);max-width:calc(100vw - var(--space-24));background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:var(--space-6);display:flex;flex-direction:column}
.rh-pop[hidden]{display:none}
.rh-pop--left{left:0;right:auto;width:var(--pop-w-left)}
.rh-pop--konto{width:var(--pop-w-konto)}
.rh-pop--postfach{width:var(--pop-w-postfach);max-height:min(70vh,var(--pop-h-postfach));overflow-y:auto}
.rh-pop__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);padding:var(--space-8) var(--space-12);font-weight:var(--fw-strong);font-size:var(--fs-body-lg)}
.rh-pop__block{display:flex;flex-direction:column;gap:var(--space-8);padding:var(--space-8) var(--space-12)}
.rh-pop__block--row{flex-direction:row;align-items:center;gap:var(--space-12)}
.rh-pop__name{font-weight:var(--fw-strong)}
.rh-pop__label{font-size:var(--fs-caption);font-weight:var(--fw-semibold);color:var(--text-2)}
.rh-pop__sep{height:1px;background:var(--line);margin:var(--space-6) var(--space-4)}
.rh-pop a.rh-menuitem{text-decoration:none}
.rh-pop .rh-langform{margin:0}
.rh-menuitem{display:flex;align-items:center;gap:var(--space-12);width:100%;min-height:var(--size-menuitem);padding:var(--space-8) var(--space-12);border:0;border-radius:var(--radius-sm);background:none;text-align:left;color:var(--text);font-size:var(--fs-body);text-decoration:none}
.rh-menuitem:hover{background:var(--surface-2)}
.rh-menuitem .ms{color:var(--text-2)}
.rh-menuitem.is-active{background:var(--active-bg);color:var(--active-fg);font-weight:var(--fw-strong)}
.rh-menuitem.is-active .ms{color:var(--active-fg)}
.rh-notif{display:flex;gap:var(--space-12);padding:var(--space-8) var(--space-12);border-radius:var(--radius-sm);align-items:flex-start}
.rh-notif:hover{background:var(--surface-2)}
.rh-notif__icon{width:var(--size-tile-sm);height:var(--size-tile-sm);border-radius:var(--radius-round);display:grid;place-items:center;flex:none}
.rh-notif__icon--ok{background:var(--ok-soft);color:var(--ok)}
.rh-notif__icon--warn{background:var(--warn-soft);color:var(--warn)}
.rh-notif__icon--err{background:var(--err-soft);color:var(--err)}
.rh-notif__icon--info{background:var(--info-soft);color:var(--info)}
.rh-notif__title{font-weight:var(--fw-strong);font-size:var(--fs-body)}
.rh-notif__text{font-size:var(--fs-meta);color:var(--text-2)}
.rh-notif__time{font-size:var(--fs-caption);color:var(--text-2);margin-top:var(--space-2)}
.rh-postfach__liste{list-style:none;margin:0;padding:0}
.rh-postfach__eintrag{position:relative}
.rh-postfach__eintrag.is-ungelesen .rh-notif__title{font-weight:var(--fw-bold)}
.rh-postfach__eintrag:not(.is-ungelesen) .rh-notif__title{font-weight:var(--fw-medium)}
.rh-postfach__punkt{width:var(--size-dot-sm);height:var(--size-dot-sm);border-radius:var(--radius-round);background:var(--info);flex:none;margin-top:var(--space-6)}
.rh-postfach__aktion{align-self:flex-start;margin-top:var(--space-8);text-decoration:none}
#toasts .rh-toast{pointer-events:auto}
.rh-toast{position:fixed;left:50%;bottom:var(--space-24);transform:translateX(-50%);z-index:var(--z-toast);display:flex;align-items:center;gap:var(--space-12);width:max-content;max-width:min(var(--toast-max),calc(100% - 2 * var(--space-16)));padding:var(--space-12) var(--space-8) var(--space-12) var(--space-16);border-radius:var(--radius);background:var(--toast-bg);border:1px solid var(--toast-line);color:var(--toast-fg);box-shadow:var(--shadow-lg);font-size:var(--fs-body)}
.rh-toast__icon{color:var(--toast-ok)}
.rh-toast--warn .rh-toast__icon{color:var(--toast-warn)}
.rh-toast--err .rh-toast__icon{color:var(--toast-err)}
.rh-toast--info .rh-toast__icon{color:var(--toast-info)}
.rh-toast__title{font-weight:var(--fw-strong)}
.rh-toast__text{color:var(--toast-fg-2);font-size:var(--fs-meta)}
.rh-toast__text:empty{display:none}
.rh-toast__btn{height:var(--size-tile-sm);padding:0 var(--space-12);border-radius:var(--radius-sm);border:0;background:var(--toast-btn-bg);color:var(--toast-fg);font-weight:var(--fw-strong);flex:none}
.rh-toast__btn:hover{background:var(--toast-btn-hover)}
.rh-toast__close{width:var(--size-tile-sm);height:var(--size-tile-sm);border-radius:var(--radius-sm);border:0;background:none;color:var(--toast-fg-2);display:grid;place-items:center;padding:0;flex:none}
.rh-toast.is-static{position:relative;left:auto;bottom:auto;transform:none}

/* ===== Speichern-Leiste ===== */
.rh-savebar{position:sticky;bottom:var(--space-16);z-index:var(--z-savebar);display:flex;align-items:center;gap:var(--space-12);flex-wrap:wrap;padding:var(--space-12) var(--space-12) var(--space-12) var(--space-16);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow-lg)}
.rh-savebar[hidden]{display:none}
.rh-savebar__text{flex:1 1 260px;display:flex;align-items:center;gap:var(--space-8);font-weight:var(--fw-semibold);min-width:0}
.rh-savebar__dot{width:var(--size-dot-sm);height:var(--size-dot-sm);border-radius:var(--radius-round);background:var(--warn);flex:none}
.rh-savebar.is-static{position:relative;bottom:auto}

/* ===== Formular ===== */
.rh-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:var(--space-16) var(--space-20)}
.rh-field{display:flex;flex-direction:column;gap:var(--space-6);min-width:0}
.rh-field--full{grid-column:1/-1}
.rh-field--wochentag{display:none}
.rh-form:has(input[name="frequency"][value="weekly"]:checked) .rh-field--wochentag{display:flex}
.rh-label{font-size:var(--fs-body);font-weight:var(--fw-semibold);color:var(--text)}
.rh-label em{font-style:normal;font-weight:var(--fw-medium);color:var(--err-text)}
.rh-help{font-size:var(--fs-meta);color:var(--text-2)}
.rh-error{display:flex;align-items:center;gap:var(--space-6);font-size:var(--fs-meta);color:var(--err-text);font-weight:var(--fw-medium)}
.rh-input,.rh-select,.rh-textarea{height:var(--size-input);padding:0 var(--space-12);border-radius:var(--radius);border:1px solid var(--input);background:var(--surface);color:var(--text);font-size:var(--fs-body-lg);width:100%;min-width:0}
.rh-select{padding-right:var(--space-8)}
.rh-textarea{height:auto;min-height:var(--textarea-min);padding:var(--space-8) var(--space-12);resize:vertical;line-height:var(--lh-relaxed)}
.rh-input:focus,.rh-select:focus,.rh-textarea:focus{border-color:var(--focus)}
.rh-input[readonly]{background:var(--surface-2);border-color:var(--line-strong)}
.rh-input:disabled,.rh-select:disabled,.rh-textarea:disabled{background:var(--surface-2);border-color:var(--line-strong);color:var(--text-2);cursor:not-allowed}
.rh-input.is-invalid,.rh-input[aria-invalid="true"],.rh-select[aria-invalid="true"],.rh-textarea[aria-invalid="true"]{border-color:var(--err);box-shadow:0 0 0 1px var(--err)}
.rh-input--sm{height:var(--size-input-sm);width:auto;font-size:var(--fs-body)}
.rh-check{display:flex;align-items:flex-start;gap:var(--space-8);font-size:var(--fs-body);cursor:pointer}
.rh-check input{width:var(--size-check);height:var(--size-check);margin:var(--space-2) 0 0;accent-color:var(--control-on);flex:none}
.rh-check small{display:block;font-size:var(--fs-meta);color:var(--text-2)}
.rh-choice{display:flex;gap:var(--space-12);align-items:flex-start;padding:var(--space-12) var(--space-16);border:1px solid var(--line-control);border-radius:var(--radius);background:var(--surface);cursor:pointer}
.rh-choice:hover{border-color:var(--text-2)}
.rh-choice.is-on,.rh-choice:has(input:checked){border-color:var(--control-on);box-shadow:inset 0 0 0 1px var(--control-on)}
.rh-choice input{margin:var(--space-2) 0 0;width:var(--size-check);height:var(--size-check);accent-color:var(--control-on);flex:none}
.rh-choice b{font-weight:var(--fw-strong)}
.rh-choice small{display:block;color:var(--text-2);font-size:var(--fs-meta);margin-top:var(--space-2)}
.rh-choices{display:flex;flex-direction:column;gap:var(--space-8)}
.rh-switch{position:relative;display:inline-flex;align-items:center;gap:var(--space-12);cursor:pointer;min-width:0}
.rh-switch input{position:absolute;left:0;top:50%;width:var(--size-switch-w);height:var(--size-switch-h);margin:calc(var(--size-switch-h) / -2) 0 0;opacity:0;cursor:pointer;z-index:1}
.rh-switch__track{position:relative;width:var(--size-switch-w);height:var(--size-switch-h);border-radius:var(--radius-pill);background:var(--input);flex:none;transition:background var(--duration-base) var(--easing-standard)}
.rh-switch__track::after{content:"";position:absolute;top:var(--space-4);left:var(--space-4);width:var(--size-switch-thumb);height:var(--size-switch-thumb);border-radius:var(--radius-round);background:var(--switch-thumb);box-shadow:var(--shadow-thumb);transition:left var(--duration-base) var(--easing-standard)}
.rh-switch input:checked+.rh-switch__track{background:var(--control-on)}
.rh-switch input:checked+.rh-switch__track::after{left:calc(var(--size-switch-w) - var(--size-switch-thumb) - var(--space-4))}
.rh-switch input:focus-visible+.rh-switch__track{outline:2px solid var(--focus);outline-offset:var(--space-2)}
.rh-switch input:disabled+.rh-switch__track{opacity:var(--opacity-disabled)}
.rh-switch__label{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.rh-switch__label b{font-weight:var(--fw-semibold);font-size:var(--fs-body)}
.rh-switch__label small{font-size:var(--fs-meta);color:var(--text-2)}
.rh-chipselect{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-6);min-height:var(--size-chipselect);padding:var(--space-6) var(--space-8);border-radius:var(--radius);border:1px solid var(--input);background:var(--surface)}
.rh-chipselect:focus-within{border-color:var(--focus);outline:2px solid var(--focus);outline-offset:var(--space-2)}
.rh-chipselect input{flex:1 1 140px;min-width:120px;height:var(--size-chip-lg);border:0;outline:0;background:transparent;font-size:var(--fs-body);color:var(--text)}
.rh-chip{display:inline-flex;align-items:center;gap:var(--space-4);height:var(--size-chip);padding:0 var(--space-4) 0 var(--space-12);border-radius:var(--radius-pill);background:var(--surface-3);border:1px solid var(--line-strong);font-size:var(--fs-meta);font-weight:var(--fw-semibold);white-space:nowrap;color:var(--text);text-decoration:none}
.rh-chip--plain{padding:0 var(--space-12)}
.rh-chip--sm{height:var(--size-chip-sm);font-size:var(--fs-caption)}
.rh-chip--lg{height:var(--size-chip-lg);font-size:var(--fs-body)}
.rh-chip--err{background:var(--err-soft);border-color:var(--err-line);color:var(--err-text)}
.rh-chip--err .ms{color:var(--err)}
.rh-chip__x{position:relative;width:var(--size-chip-x);height:var(--size-chip-x);border-radius:var(--radius-round);border:0;background:none;color:var(--text-2);display:grid;place-items:center;padding:0}
.rh-chip__x:hover{background:var(--line-strong);color:var(--text)}
.rh-chip--add{height:var(--size-chip);padding:0 var(--space-12) 0 var(--space-6);border-radius:var(--radius-pill);border:1px dashed var(--input);background:transparent;color:var(--text);font-size:var(--fs-meta);font-weight:var(--fw-medium);display:inline-flex;align-items:center;gap:var(--space-4)}
.rh-chip--add:hover{background:var(--surface-2);border-style:solid}
.rh-chips{display:flex;flex-wrap:wrap;gap:var(--space-6);align-items:center}
.rh-fchip{display:inline-flex;align-items:center;gap:var(--space-6);height:var(--size-fchip);padding:0 var(--space-12);border-radius:var(--radius-pill);border:1px solid var(--line-control);background:var(--surface);color:var(--text);font-size:var(--fs-body);font-weight:var(--fw-medium);white-space:nowrap;text-decoration:none}
.rh-fchip:hover{border-color:var(--text-2)}
.rh-fchip[aria-pressed="true"]{background:var(--active-bg);border-color:var(--red);color:var(--active-fg);font-weight:var(--fw-strong)}
.rh-fchip__n{font-size:var(--fs-caption);color:var(--text-2);font-weight:var(--fw-medium)}
.rh-fchip[aria-pressed="true"] .rh-fchip__n{color:var(--active-fg)}
.rh-filtergroup{display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap}
.rh-filtergroup__label{font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:var(--ls-label-sm);text-transform:uppercase;color:var(--text-2);margin-right:var(--space-2)}
.rh-actionbar{display:flex;align-items:center;gap:var(--space-8);flex-wrap:wrap;padding:var(--space-12);border-radius:var(--radius);border:1px solid var(--warn-line);background:var(--warn-soft)}
.rh-actionbar__title{display:flex;align-items:center;gap:var(--space-8);font-weight:var(--fw-strong);margin-right:var(--space-4)}
.rh-actionbar__title .ms{color:var(--warn)}
.rh-actionbar .rh-fchip{background:var(--surface)}
.rh-actionbar .rh-fchip[aria-pressed="true"]{background:var(--active-bg)}

/* ===== Abo-Karte, Schlüssel-Wert, Hinweiskarte ===== */
.rh-abos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(480px,100%),1fr));gap:var(--space-16);align-items:start}
.rh-abocard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;min-width:0}
.rh-abocard.is-paused{background:repeating-linear-gradient(135deg,var(--surface) 0 var(--stripe),var(--surface-2) var(--stripe) calc(2 * var(--stripe)))}
.rh-abocard__head{display:flex;align-items:flex-start;gap:var(--space-12);padding:var(--space-16) var(--space-20) var(--space-12);flex-wrap:wrap}
.rh-abocard__title{font-size:var(--fs-title);font-weight:var(--fw-strong);line-height:var(--lh-snug)}
.rh-abocard__body{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:var(--space-16) var(--space-20);padding:var(--space-4) var(--space-20) var(--space-16)}
.rh-abocard__toggle{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-12) var(--space-20);border-top:1px solid var(--line);background:var(--surface-2)}
.rh-abocard__foot{display:flex;gap:var(--space-8);flex-wrap:wrap;padding:var(--space-12) var(--space-16);border-top:1px solid var(--line)}
.rh-kv{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
.rh-kv__k{font-size:var(--fs-meta);color:var(--text-2);font-weight:var(--fw-medium)}
.rh-kv__v{font-size:var(--fs-body);font-weight:var(--fw-medium);display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap;min-width:0}
.rh-kvlist{display:grid;grid-template-columns:minmax(var(--kv-key-min),max-content) 1fr;gap:var(--space-12) var(--space-24);font-size:var(--fs-body)}
.rh-kvlist dt{color:var(--text-2)}
.rh-kvlist dd{font-weight:var(--fw-medium);min-width:0;overflow-wrap:anywhere}
.rh-hintcard{display:flex;align-items:center;gap:var(--space-16);padding:var(--space-16) var(--space-20);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap}

/* ===== Datenstand-Raster, Quellenliste, Inline-Datenstand ===== */
.rh-dsgrid-scroll{overflow-x:auto;min-width:0;max-width:100%}
.rh-dsgrid{display:grid;grid-template-columns:var(--dsgrid-src-w) repeat(12,minmax(0,1fr));min-width:var(--dsgrid-min-w);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;font-size:var(--fs-meta);background:var(--surface)}
.rh-dsgrid__h{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6) 0;font-weight:var(--fw-semibold);color:var(--text-2);background:var(--surface-2);border-bottom:1px solid var(--line);line-height:var(--lh-heading)}
.rh-dsgrid__h small{font-size:var(--fs-caption);font-weight:var(--fw-medium)}
.rh-dsgrid__src{display:flex;align-items:center;padding:0 var(--space-12);font-weight:var(--fw-semibold);border-bottom:1px solid var(--line);min-height:var(--size-dsgrid-row);font-size:var(--fs-meta)}
.rh-dsgrid__cell{position:relative;display:grid;place-items:center;border-bottom:1px solid var(--line);border-left:1px solid var(--line);min-height:var(--size-dsgrid-row)}
.rh-dsgrid__cell--ok{color:var(--ok)}
.rh-dsgrid__cell--wait{color:var(--warn);background:var(--warn-soft)}
.rh-dsgrid__cell--warn{color:var(--warn);background:var(--warn-soft);box-shadow:inset 0 0 0 1px var(--warn)}
.rh-dsgrid__cell--none{color:var(--text-2)}
.rh-dsgrid>*:nth-last-child(-n+13){border-bottom:0}
.rh-srclist{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius)}
.rh-srclist__row{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-12) var(--space-16);border-bottom:1px solid var(--line);flex-wrap:wrap}
.rh-srclist__row:last-child{border-bottom:0}
.rh-datainline[hidden]{display:none}
.rh-datainline{margin-bottom:var(--space-16)}
.rh-datainline__head{justify-content:space-between;flex-wrap:nowrap}
.rh-datainline .rh-scrim{display:none}
.rh-datainline .rh-panel{position:static;width:auto;border:0;box-shadow:none;background:transparent}
.rh-datainline .rh-panel__head .rh-iconbtn{display:none}
.rh-datainline .rh-panel__head{padding-left:0;padding-right:0}

/* ===== Zustandsseiten (Leerzustand, keine Treffer, Fehler, kein Zugriff, gesperrt) ===== */
.rh-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-8);padding:var(--space-48) var(--space-24)}
.rh-empty__icon{width:var(--size-empty-icon);height:var(--size-empty-icon);border-radius:var(--radius-round);background:var(--surface-3);color:var(--text-2);display:grid;place-items:center;margin-bottom:var(--space-6)}
.rh-empty__icon .ms{font-size:var(--icon-xl)}
.rh-empty--err .rh-empty__icon{background:var(--err-soft);color:var(--err)}
.rh-empty--locked .rh-empty__icon{background:var(--surface-3);color:var(--text)}
.rh-empty h2{font-size:var(--fs-title);font-weight:var(--fw-strong)}
.rh-empty p{color:var(--text-2);max-width:460px}
.rh-empty .rh-row{justify-content:center;margin-top:var(--space-8)}

/* ===== Schritte, Video, Kontakt, Teilung, Listenknopf, Zeitverlauf, Benutzerkopf, Rollen-Chip ===== */
.rh-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:var(--space-16)}
.rh-step{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-20);display:flex;flex-direction:column;gap:var(--space-8)}
.rh-step__num{width:var(--size-tile-sm);height:var(--size-tile-sm);border-radius:var(--radius-round);background:var(--brand);color:var(--on-brand);display:grid;place-items:center;font-weight:var(--fw-bold);margin-bottom:var(--space-4)}
.rh-step h3{font-size:var(--fs-title-sm);font-weight:var(--fw-strong)}
.rh-step p{color:var(--text-2)}
.rh-video{aspect-ratio:16/9;border-radius:var(--radius);background:var(--surface-3);border:1px dashed var(--input);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-8);color:var(--text-2);text-align:center;padding:var(--space-16)}
.rh-video__play{width:var(--size-video-play);height:var(--size-video-play);border-radius:var(--radius-round);background:var(--brand);color:var(--on-brand);display:grid;place-items:center;border:0;padding:0}
.rh-video__play .ms{font-size:var(--icon-2xl)}
.rh-contact{display:flex;gap:var(--space-12);align-items:flex-start}
.rh-avatar-lg{width:var(--size-avatar-lg);height:var(--size-avatar-lg);border-radius:var(--radius-round);background:var(--surface-3);color:var(--text);display:grid;place-items:center;font-weight:var(--fw-bold);font-size:var(--fs-title-sm);flex:none}
.rh-split{display:flex;flex-wrap:wrap;gap:var(--space-20);align-items:flex-start}
.rh-split__main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:var(--space-20)}
.rh-split__side{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:var(--space-16);position:sticky;top:calc(var(--header-h) + var(--space-24))}
.rh-split__list{flex:1 1 340px;min-width:0}
.rh-listbtn{position:relative;display:flex;align-items:flex-start;gap:var(--space-12);width:100%;padding:var(--space-12) var(--space-16);border:0;border-bottom:1px solid var(--line);background:none;text-align:left;color:inherit;font:inherit;text-decoration:none}
.rh-listbtn:last-child{border-bottom:0}
.rh-listbtn:hover{background:var(--surface-2)}
.rh-listbtn[aria-current="true"]{background:var(--active-bg)}
.rh-listbtn[aria-current="true"]::before{content:"";position:absolute;left:0;top:var(--space-8);bottom:var(--space-8);width:var(--size-marker);border-radius:0 var(--radius-2xs) var(--radius-2xs) 0;background:var(--red)}
.rh-timeline{display:flex;flex-direction:column}
.rh-timeline__item{display:grid;grid-template-columns:var(--timeline-col) 1fr;gap:var(--space-16);padding:var(--space-12) 0;border-bottom:1px solid var(--line)}
.rh-timeline__item:last-child{border-bottom:0}
.rh-userhead{display:flex;align-items:center;gap:var(--space-16);flex-wrap:wrap}
.rh-rolechip{display:inline-flex;align-items:center;gap:var(--space-4);height:var(--size-rolechip);padding:0 var(--space-8);border-radius:var(--radius-sm);background:var(--surface-3);font-size:var(--fs-meta);font-weight:var(--fw-semibold);white-space:nowrap;text-decoration:none}
.rh-rolechip .ms{font-size:var(--icon-sm);color:var(--text-2)}

/* ===== Handy-Bausteine (Entwurf) und untere Leiste ===== */
.rh-phone__main{padding:var(--space-16) var(--space-16) var(--bottomnav-clearance);display:flex;flex-direction:column;gap:var(--space-16)}
.rh-phone__main h1{font-size:var(--fs-heading-1-handy);line-height:var(--lh-title);font-weight:var(--fw-strong)}
.rh-kpis--phone{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:var(--space-8)}
.rh-kpis--phone .rh-kpi{padding:var(--space-12)}
.rh-kpis--phone .rh-kpi__value{font-size:var(--fs-display-handy)}
.rh-kpis--phone .rh-kpi__value--name{font-size:var(--fs-body-lg)}
.rh-mcard{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-12) var(--space-8) var(--space-12) var(--space-12);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-height:var(--size-mcard)}
.rh-bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-header);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;background:var(--surface);border-top:1px solid var(--line);padding:var(--space-6) var(--space-2) var(--space-12)}
.rh-bottomnav__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--size-bottomnav-item);min-width:0;padding:0 var(--space-2);border:0;background:none;color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--fw-medium);line-height:var(--lh-heading);text-align:center;white-space:nowrap;border-radius:var(--radius);text-decoration:none}
.rh-bottomnav__pill{width:var(--size-pill-w);max-width:100%;height:var(--size-pill-h);border-radius:var(--radius-pill);display:grid;place-items:center;flex:none}
.rh-bottomnav__item.is-active{color:var(--active-fg);font-weight:var(--fw-strong)}
.rh-bottomnav__item.is-active .rh-bottomnav__pill{background:var(--active-bg)}
.rh-bottomnav__item.is-active .ms{font-variation-settings:'FILL' 1,'wght' 400,'GRAD' 0,'opsz' 24}
.rh-sheet__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12)}
.rh-sheet__body{display:flex;flex-direction:column;gap:var(--space-4)}
.rh-sheet__group{display:flex;flex-direction:column;gap:var(--space-4)}

/* ===== Mobile Kartenliste ===== */
.rh-karten{display:none}
.rh-karte{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-12)}
.rh-karte__kopf{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-2) var(--space-8)}
.rh-karte__kopf>:not(.rh-karte__status){grid-column:1}
.rh-karte__name{font-size:var(--fs-body-lg);overflow-wrap:break-word}
.rh-karte__sub{color:var(--text-2);font-size:var(--fs-caption)}
.rh-karte__status{grid-column:2;grid-row:1/span 2;justify-self:end}
.rh-karte dl{margin:0}
.rh-karte dl>div{display:flex;justify-content:space-between;gap:var(--space-12);padding:var(--space-2) 0;flex-wrap:wrap}
.rh-karte dt{color:var(--text-2);font-size:var(--fs-meta)}
.rh-karte dd{margin:0;margin-left:auto;text-align:right;font-variant-numeric:tabular-nums}
.rh-karte dl.rh-karte__kenn{margin-top:var(--space-8)}
.rh-karte--summe{background:var(--bg);font-weight:var(--fw-semibold)}
.rh-karte__details{margin-top:var(--space-6)}
.rh-karte__details summary,.rh-karten__mehr>summary{min-height:var(--size-target);display:flex;align-items:center;cursor:pointer}
.rh-karten__mehr>summary{justify-content:center}
.rh-karten__mehr[open]>summary{margin-bottom:var(--space-8)}
.rh-karten__mehr[open]{display:flex;flex-direction:column;gap:var(--space-8)}

/* ===== Monatsauswahl ===== */
.rh-monat{position:relative;display:inline-flex;align-items:center}
.rh-monat .rh-input{width:var(--monat-w);padding-right:calc(var(--space-8) + var(--icon-ctl) + var(--space-8));background:var(--surface);border-color:var(--input);cursor:pointer;text-overflow:ellipsis}
.rh-monat .rh-input[readonly]{background:var(--surface);border-color:var(--input)}
.rh-monat .rh-input:focus{border-color:var(--focus)}
.rh-monat .rh-input[aria-invalid="true"]{border-color:var(--err);box-shadow:0 0 0 1px var(--err)}
.rh-monat .ms{position:absolute;right:var(--space-8);top:50%;transform:translateY(-50%);font-size:var(--icon-ctl);color:var(--text-2);cursor:pointer;pointer-events:none}
.rh-monat .rh-input:hover+.ms,.rh-monat .rh-input:focus+.ms{color:var(--text)}
.air-datepicker.rh-monatsfenster{--adp-font-family:var(--font-sans);--adp-font-size:var(--fs-body);--adp-width:var(--datepicker-w);--adp-z-index:var(--z-datepicker);--adp-background-color:var(--surface);--adp-background-color-hover:var(--surface-3);--adp-background-color-active:var(--line);--adp-color:var(--text);--adp-color-secondary:var(--text-2);--adp-accent-color:var(--brand);--adp-color-current-date:var(--red);--adp-color-other-month:var(--text-2);--adp-color-other-month-hover:var(--text);--adp-color-disabled:var(--line-strong);--adp-color-disabled-in-range:var(--line-strong);--adp-border-color:var(--line);--adp-border-color-inner:var(--line);--adp-border-radius:var(--radius);--adp-nav-arrow-color:var(--text-2);--adp-nav-color-secondary:var(--text-2);--adp-cell-border-radius:var(--radius-sm);--adp-cell-background-color-hover:var(--surface-3);--adp-cell-background-color-selected:var(--brand);--adp-cell-background-color-selected-hover:var(--brand-hover);box-shadow:var(--shadow);border-color:var(--line)}
.air-datepicker.rh-monatsfenster .air-datepicker-nav--title{font-weight:var(--fw-strong)}
.air-datepicker.rh-monatsfenster .air-datepicker-cell.-selected-{color:var(--on-brand)}
.air-datepicker.rh-monatsfenster .air-datepicker-cell.-disabled-{color:var(--line-strong);cursor:default}
.air-datepicker.rh-monatsfenster .air-datepicker-cell.-focus-{background:var(--surface-3);outline:2px solid var(--focus);outline-offset:calc(-1 * var(--space-2))}
.air-datepicker.rh-monatsfenster .air-datepicker-cell.-selected-.-focus-{background:var(--brand-hover)}
.air-datepicker.rh-monatsfenster .air-datepicker-nav--action:hover,.air-datepicker.rh-monatsfenster .air-datepicker-nav--title:hover{background:var(--surface-3)}

/* ===== Bezirksbaum ===== */
.rh-bezirksbaum [hidden]{display:none}
.rh-bezirksbaum__liste{list-style:none;margin:0;padding:0}
.rh-bezirksbaum__liste .rh-bezirksbaum__liste{margin-left:var(--space-20);padding-left:var(--space-12);border-left:1px solid var(--line)}
.rh-bezirksbaum__wurzel{max-height:var(--tree-max-h);overflow:auto;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm)}
.rh-bezirksbaum__wurzel>li>.rh-bezirksbaum__liste{margin-left:var(--space-8)}
.rh-bezirksbaum__knoten>details>summary{cursor:pointer;padding:var(--space-2) 0}
.rh-bezirksbaum__bezirk,.rh-bezirksbaum__alle>.rh-bezirksbaum__label{padding:var(--space-2) 0}
.rh-bezirksbaum__label{display:inline-flex;align-items:center;gap:var(--space-8);cursor:pointer}
.rh-bezirksbaum__haken{flex:none;width:var(--size-check-sm);height:var(--size-check-sm);accent-color:var(--control-on)}
.rh-bezirksbaum__anzahl{font-size:var(--fs-caption);color:var(--text-2);font-variant-numeric:tabular-nums}

/* ===== Fassung 1.2: Planungsgitter (Zellmodi, Baum, Summenspalte rechts, dichte Monate) ===== */
.rh-td--readonly{background:var(--surface-2);color:var(--text-2)}
.rh-td--readonly.rh-td--sum,.rh-tsum .rh-td--readonly{color:var(--text)}
.rh-td--edit{position:relative;gap:var(--space-4);padding:var(--space-6)}
.rh-tr:hover .rh-td.rh-td--edit{background:var(--surface)}
.rh-input--cell{flex:1 1 0;width:0;min-width:0;height:var(--size-input-sm);padding:0 var(--space-8);border-color:var(--line-control);border-radius:var(--radius-sm);font-size:var(--fs-body);text-align:right;font-variant-numeric:tabular-nums}
.rh-td--edit.is-dirty{box-shadow:inset var(--size-marker) 0 0 var(--info)}
.rh-td--edit.is-dirty .rh-input--cell{font-weight:var(--fw-semibold)}
.rh-td__ico{flex:none}
.rh-td__ico--err{color:var(--err)}
.rh-td--locked{position:relative;gap:var(--space-4);padding-left:var(--space-6);background:var(--info-soft);box-shadow:inset 0 0 0 1px var(--info-line);font-weight:var(--fw-semibold)}
.rh-tr:hover .rh-td.rh-td--locked{background:var(--info-soft)}
.rh-td__trigger{position:relative;display:grid;place-items:center;flex:none;width:var(--size-cell-trigger);height:var(--size-cell-trigger);margin-right:auto;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--info-text)}
.rh-td__trigger:hover{background:var(--info-line)}
.rh-td--spread{flex-direction:column;align-items:flex-end;justify-content:center;padding-top:var(--space-4);padding-bottom:var(--space-4);box-shadow:inset 0 calc(-1 * var(--space-2)) 0 var(--line-control)}
.rh-td__delta{font-size:var(--fs-caption);line-height:var(--lh-title);font-weight:var(--fw-semibold);color:var(--text-2);white-space:nowrap}
.rh-td .rh-pop{font-weight:var(--fw-regular);text-align:left;white-space:normal}
.rh-pop--up{top:auto;bottom:calc(100% + var(--space-8))}
.rh-pop--error{width:var(--pop-w-left);padding:var(--space-8) var(--space-12);border-color:var(--err-line);background:var(--err-soft)}
.rh-pop--error .rh-error{align-items:flex-start}
.rh-pop--error .rh-error .ms{color:var(--err)}
.rh-pop--fva .rh-kvlist{gap:var(--space-6) var(--space-16)}
.rh-pop--fva .rh-kvlist dd{margin:0;font-variant-numeric:tabular-nums}
.rh-pop__actions{display:flex;gap:var(--space-8);flex-wrap:wrap;margin-top:var(--space-6);padding:var(--space-8) var(--space-12);border-top:1px solid var(--line)}
.rh-table[role="treegrid"] .rh-td:first-child{gap:var(--space-4);padding-top:var(--space-6);padding-bottom:var(--space-6)}
.rh-tr[aria-level="1"]>.rh-td:first-child{font-weight:var(--fw-semibold)}
.rh-tr[aria-level="2"]>.rh-td:first-child{padding-left:calc(var(--space-12) + var(--tree-indent))}
.rh-tr[aria-level="3"]>.rh-td:first-child{padding-left:calc(var(--space-12) + 2 * var(--tree-indent))}
.rh-treebtn{display:grid;place-items:center;flex:none;width:var(--size-iconbtn);height:var(--size-iconbtn);margin-left:calc(-1 * var(--space-8));padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-2)}
.rh-treebtn:hover{background:var(--surface-3);color:var(--text)}
.rh-treebtn .ms{transition:transform var(--duration-fast) var(--easing-standard)}
.rh-tr[aria-expanded="true"]>.rh-td .rh-treebtn .ms{transform:rotate(90deg)}
.rh-treebtn--leaf{visibility:hidden}
.rh-td__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rh-th.is-sticky-end,.rh-td.is-sticky-end{position:sticky;right:0;z-index:var(--z-sticky-cell);box-shadow:inset 2px 0 0 var(--line-strong)}
.rh-th.is-sticky-end{z-index:var(--z-sticky-corner)}
.rh-td.is-sticky-end{background:var(--surface-2);font-weight:var(--fw-semibold)}
.rh-tr:hover .rh-td.is-sticky-end,.rh-tsum .rh-td.is-sticky-end{background:var(--surface-3)}
.rh-table--dense .rh-tr{grid-template-columns:minmax(240px,280px);grid-auto-columns:minmax(96px,1fr)}
.rh-table--dense .rh-td{padding-left:var(--space-8);padding-right:var(--space-8)}
.rh-table--dense .rh-td--edit{padding-left:var(--space-6);padding-right:var(--space-6)}
.rh-table--dense .rh-th{padding:0 var(--space-2)}
.rh-table--dense .rh-th button{padding:0 var(--space-6)}
.rh-tr--group>.rh-td{font-weight:var(--fw-semibold)}
.rh-tr--recon>.rh-td,.rh-tr--recon:hover>.rh-td{background:var(--surface-2)}
.rh-tr--group .rh-td__name,.rh-tr--recon .rh-td__name{line-height:var(--lh-title)}
.rh-tr--group .rh-td__name .rh-badge,.rh-tr--recon .rh-td__name .rh-badge{align-self:flex-start}

/* ===== Fassung 1.2: Treiber-Regler (Driver) ===== */
.rh-driver{display:flex;flex-direction:column;gap:var(--space-8);min-width:0}
.rh-driver__head{display:flex;align-items:center;gap:var(--space-8);min-height:var(--size-iconbtn)}
.rh-driver__head .rh-label{flex:1;min-width:0}
.rh-driver__base{font-size:var(--fs-caption);color:var(--text-2);text-align:right}
.rh-driver__controls{display:flex;align-items:center;gap:var(--space-8) var(--space-12);flex-wrap:wrap}
.rh-driver__track{position:relative;display:flex;align-items:center;flex:1 1 var(--driver-track-min);min-width:0;height:var(--size-iconbtn)}
.rh-driver__zero{position:absolute;left:50%;top:50%;width:2px;height:var(--meter-mark-h);transform:translate(-50%,-50%);background:var(--text-2);pointer-events:none}
.rh-driver__zero--start{left:calc(var(--driver-thumb) / 2)}
.rh-driver__slider{position:relative;appearance:none;-webkit-appearance:none;width:100%;height:var(--size-iconbtn);margin:0;padding:0;border:0;border-radius:var(--radius-pill);background:transparent;cursor:pointer}
.rh-driver__slider::-webkit-slider-runnable-track{height:var(--driver-track-h);border-radius:var(--radius-pill);background:var(--input)}
.rh-driver__slider::-moz-range-track{height:var(--driver-track-h);border-radius:var(--radius-pill);background:var(--input)}
.rh-driver__slider::-webkit-slider-thumb{-webkit-appearance:none;width:var(--driver-thumb);height:var(--driver-thumb);margin-top:calc((var(--driver-track-h) - var(--driver-thumb)) / 2);border:2px solid var(--surface);border-radius:var(--radius-round);background:var(--control-on);box-shadow:var(--shadow-thumb)}
.rh-driver__slider::-moz-range-thumb{width:var(--driver-thumb);height:var(--driver-thumb);border:2px solid var(--surface);border-radius:var(--radius-round);background:var(--control-on);box-shadow:var(--shadow-thumb)}
.rh-driver__slider:disabled{cursor:not-allowed;opacity:var(--opacity-disabled)}
.rh-driver__field{display:inline-flex;align-items:center;gap:var(--space-6);flex:none}
.rh-driver__input{width:var(--driver-input-w);text-align:right;font-variant-numeric:tabular-nums}
.rh-driver.is-dirty .rh-driver__input{font-weight:var(--fw-semibold)}
.rh-driver .rh-iconbtn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}
.rh-driver__unit{min-width:var(--space-24);font-size:var(--fs-body);color:var(--text-2)}

/* ===== Fassung 1.2: Datei-Upload (Upload) ===== */
.rh-upload{display:flex;flex-direction:column;gap:var(--space-12);min-width:0}
.rh-upload__box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-8);min-height:var(--upload-box-min);padding:var(--space-20);border:2px dashed var(--line-control);border-radius:var(--radius);background:var(--surface);color:var(--text-2);text-align:center}
.rh-upload__box .rh-help{margin:0}
.rh-upload__box--plain{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;min-height:0;padding:0;border:0;background:transparent;text-align:left}
.rh-upload input[type="file"]:focus-visible+.rh-btn{outline:2px solid var(--focus);outline-offset:var(--space-2)}
.rh-upload.is-dragover .rh-upload__box{border-style:solid;border-color:var(--focus);background:var(--info-soft)}
.rh-upload.is-disabled .rh-upload__box{border-color:var(--line-strong);background:var(--surface-2)}
.rh-upload__file{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"ico name stat x";align-items:center;gap:var(--space-4) var(--space-12);min-width:0;padding:var(--space-8) var(--space-12);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.rh-upload__file>.ms{grid-area:ico}.rh-upload__file>.rh-upload__name{grid-area:name}.rh-upload__file>.rh-badge{grid-area:stat;justify-self:start}.rh-upload__file>.rh-iconbtn{grid-area:x}.rh-upload__file>.rh-error{grid-column:1/-1}
.rh-upload__file>.ms{color:var(--text-2)}
.rh-upload__file--err{border-color:var(--err-line);background:var(--err-soft)}
.rh-upload__file--err>.ms{color:var(--err)}
.rh-upload__name{display:flex;flex-direction:column;flex:1;min-width:0}
.rh-upload__name b{font-weight:var(--fw-semibold);overflow-wrap:break-word}
.rh-upload__name small{font-size:var(--fs-caption);color:var(--text-2)}
.rh-upload__summary{display:flex;align-items:center;gap:var(--space-8) var(--space-16);flex-wrap:wrap;padding:var(--space-12) var(--space-16);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);font-size:var(--fs-body)}
.rh-upload__stat{display:inline-flex;align-items:center;gap:var(--space-6);font-variant-numeric:tabular-nums}
.rh-upload__stat b{font-weight:var(--fw-semibold)}
.rh-upload__stat--ok .ms{color:var(--ok)}
.rh-upload__stat--warn .ms{color:var(--warn)}
.rh-upload__stat--err .ms{color:var(--err)}
.rh-upload__summary .rh-btn{margin-left:auto}

/* ===== Fassung 1.2: Plan, Forecast, Wasserfall, Stufen-Schwelle, fixierbare Kontextleiste ===== */
.rh-chart__bar--plan{background:var(--surface);box-shadow:inset 0 0 0 2px var(--chart-cy)}
.rh-chart__bar--fc{background:repeating-linear-gradient(45deg,var(--chart-cy) 0 var(--hatch),var(--chart-fc-soft) var(--hatch) calc(2 * var(--hatch)));box-shadow:inset 0 0 0 1.5px var(--chart-cy)}
.rh-legend i.rh-legend__plan{background:var(--surface);box-shadow:inset 0 0 0 2px var(--chart-cy)}
.rh-legend i.rh-legend__fc{background:repeating-linear-gradient(45deg,var(--chart-cy) 0 var(--hatch),var(--chart-fc-soft) var(--hatch) calc(2 * var(--hatch)));box-shadow:inset 0 0 0 1.5px var(--chart-cy)}
.rh-legend i.rh-legend__pos{background:var(--chart-pos)}
.rh-chart--waterfall{overflow-x:auto}
.rh-chart--waterfall .rh-chart__plot,.rh-chart--waterfall .rh-chart__labels{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(var(--chart-col-min),1fr);min-width:min-content}
.rh-chart--waterfall .rh-chart__plot{height:var(--chart-h-cat)}
.rh-chart--waterfall .rh-chart__labels span{overflow-wrap:normal;hyphens:manual}
.rh-chart--waterfall .rh-chart__bar{width:min(var(--chart-bar-w-bridge),70%)}
.rh-chart__bar--float{border-radius:var(--radius-2xs)}
.rh-chart__off{flex:0 1 auto;width:1px}
.rh-off-0{height:0%}.rh-off-2{height:2%}.rh-off-4{height:4%}.rh-off-5{height:5%}.rh-off-6{height:6%}.rh-off-8{height:8%}.rh-off-10{height:10%}.rh-off-12{height:12%}.rh-off-14{height:14%}.rh-off-15{height:15%}.rh-off-16{height:16%}.rh-off-18{height:18%}.rh-off-20{height:20%}.rh-off-22{height:22%}.rh-off-24{height:24%}.rh-off-25{height:25%}.rh-off-26{height:26%}.rh-off-28{height:28%}.rh-off-30{height:30%}.rh-off-32{height:32%}.rh-off-34{height:34%}.rh-off-35{height:35%}.rh-off-36{height:36%}.rh-off-38{height:38%}.rh-off-40{height:40%}.rh-off-42{height:42%}.rh-off-44{height:44%}.rh-off-45{height:45%}.rh-off-46{height:46%}.rh-off-48{height:48%}.rh-off-50{height:50%}.rh-off-52{height:52%}.rh-off-54{height:54%}.rh-off-55{height:55%}.rh-off-56{height:56%}.rh-off-58{height:58%}.rh-off-60{height:60%}.rh-off-62{height:62%}.rh-off-64{height:64%}.rh-off-65{height:65%}.rh-off-66{height:66%}.rh-off-68{height:68%}.rh-off-70{height:70%}.rh-off-72{height:72%}.rh-off-74{height:74%}.rh-off-75{height:75%}.rh-off-76{height:76%}.rh-off-78{height:78%}.rh-off-80{height:80%}.rh-off-82{height:82%}.rh-off-84{height:84%}.rh-off-85{height:85%}.rh-off-86{height:86%}.rh-off-88{height:88%}.rh-off-90{height:90%}.rh-off-92{height:92%}.rh-off-94{height:94%}.rh-off-95{height:95%}.rh-off-96{height:96%}.rh-off-98{height:98%}
.rh-meter--tier.rh-meter--ueber .rh-meter__fill{background:var(--meter-tier)}
.rh-filterrow--sticky{position:sticky;top:var(--header-h);z-index:var(--z-contextbar);padding:var(--space-12) 0;background:var(--bg);border-bottom:1px solid var(--line)}
.rh-filterrow--sticky .rh-select{width:auto}
.rh-filterrow__fields{display:contents}
.rh-filterrow__summary{display:none;align-items:center;gap:var(--space-8);width:100%;min-width:0}
.rh-filterrow__summary>span{flex:1;min-width:0;font-size:var(--fs-body);font-weight:var(--fw-semibold);overflow-wrap:break-word}
/* ===== Fassung 1.2, Nachtrag: Eingabe am Handy im Zeilen-Blatt ===== */
.rh-input--cell[readonly]{border-color:transparent;background:transparent;padding-right:0;cursor:default}
.rh-input--cell[readonly][aria-invalid="true"]{border-color:var(--err)}
.rh-treebtn--edit{color:var(--text)}
.rh-sheet__sub{margin:0;font-size:var(--fs-meta);color:var(--text-2)}
.rh-sheet__foot{display:flex;justify-content:flex-end;gap:var(--space-8);flex-wrap:wrap}
.rh-monthlist{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}
.rh-monthlist__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-4) var(--space-12);min-height:var(--size-row);padding:var(--space-8) 0;border-bottom:1px solid var(--line)}
.rh-monthlist__row:last-child{border-bottom:0}
.rh-monthlist__label{display:flex;flex-direction:column;min-width:0}
.rh-monthlist__label b{font-weight:var(--fw-semibold)}
.rh-monthlist__label small{font-size:var(--fs-caption);color:var(--text-2)}
.rh-monthlist__row .rh-input{width:var(--monthlist-field-w);height:var(--size-target);text-align:right;font-size:var(--fs-input-handy);font-variant-numeric:tabular-nums}
.rh-monthlist__value{min-width:var(--monthlist-field-w);padding:0 var(--space-12);text-align:right;color:var(--text-2);font-variant-numeric:tabular-nums}
.rh-monthlist__row.is-dirty{padding-left:var(--space-12);box-shadow:inset var(--size-marker) 0 0 var(--info)}
.rh-monthlist__row.is-dirty .rh-input{font-weight:var(--fw-semibold)}
.rh-monthlist__lock{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-8);width:var(--monthlist-field-w);height:var(--size-target);padding:0 var(--space-12);border:0;border-radius:var(--radius);background:var(--info-soft);box-shadow:inset 0 0 0 1px var(--info-line);color:var(--text);font-weight:var(--fw-semibold);font-size:var(--fs-input-handy);font-variant-numeric:tabular-nums}
.rh-monthlist__lock .ms{color:var(--info-text)}
.rh-monthlist__error{grid-column:1/-1;margin:0}

/* ===== Fassung 1.3: Kartenraster, zweiter Plan, Karten-Aktionen (rh-table--fit ersetzt in Fassung 1.4) ===== */
.rh-grid-2{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-16)}
.rh-grid-2>*{min-width:0}
.rh-chart__bar--plan-alt{background:var(--surface);border:2px dashed var(--chart-cy);border-bottom:0}
.rh-legend i.rh-legend__plan-alt{background:var(--surface);border:1.5px dashed var(--chart-cy)}
.rh-karte__actions{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-top:var(--space-12);padding-top:var(--space-12);border-top:1px solid var(--line)}
.rh-karte__actions .rh-btn{flex:1 1 auto;min-height:var(--size-target)}
a.rh-karte__name{position:relative}
a.rh-karte__name::after{content:"";position:absolute;left:0;right:0;top:50%;height:var(--size-target);transform:translateY(-50%)}
/* ===== Fassung 1.3: Korrekturen ===== */
figure.rh-chart{margin:0}
.rh-field>.rh-monat{align-self:flex-start}
.rh-td--locked>.rh-anchor{position:absolute;inset:0 0 0 auto}
.rh-driver{container-type:inline-size}
@container (max-width: 419px){
.rh-driver__head{flex-wrap:wrap}
.rh-driver__base{order:3;flex:1 1 100%;text-align:left}
}

/* ===== Fassung 1.4: Tabellenlayout nach Inhalt (rh-table--auto) und Planungsgitter (rh-table--dense) =====
   Der Browser teilt die Spaltenbreiten über alle Zeilen (Tabellenlayout). Zahl-, Kenn-, Status- und Aktionsspalten
   sind so breit wie ihr Inhalt; die erste Spalte und Textspalten nehmen den Rest und brechen nur an Wortgrenzen um.
   rh-table--fit (Fassung 1.3) ist mit Fassung 1.5 entfallen. */
.rh-table--auto,.rh-table--dense{display:table;width:100%;min-width:0;border-collapse:separate;border-spacing:0}
:is(.rh-table--auto,.rh-table--dense)>[role="rowgroup"]{display:table-row-group}
:is(.rh-table--auto,.rh-table--dense)>.rh-thead{display:table-header-group;position:static}
:is(.rh-table--auto,.rh-table--dense)>.rh-tsum{display:table-footer-group;position:static}
:is(.rh-table--auto,.rh-table--dense) .rh-tr{display:table-row;min-width:0}
:is(.rh-table--auto,.rh-table--dense) .rh-tr[hidden],:is(.rh-table--auto,.rh-table--dense) .rh-tr:is(.rh-skel-indicator,[data-skel-indicator]){display:none}
.htmx-request :is(.rh-table--auto,.rh-table--dense) .rh-tr:is(.rh-skel-indicator,[data-skel-indicator]),:is(.rh-table--auto,.rh-table--dense) .htmx-request .rh-tr:is(.rh-skel-indicator,[data-skel-indicator]){display:table-row}
.htmx-request :is(.rh-table--auto,.rh-table--dense) .rh-tr:is(.rh-skel-hide,[data-skel-hide]),:is(.rh-table--auto,.rh-table--dense) .htmx-request .rh-tr:is(.rh-skel-hide,[data-skel-hide]){display:none}
:is(.rh-table--auto,.rh-table--dense) :is(.rh-th,.rh-td){display:table-cell;vertical-align:middle}
:is(.rh-table--auto,.rh-table--dense) .rh-td{height:var(--size-td)}
:is(.rh-table--auto,.rh-table--dense) .rh-th.is-num{text-align:right}
:is(.rh-table--auto,.rh-table--dense) .rh-thead .rh-th{position:sticky;top:0;z-index:var(--z-sticky-head)}
:is(.rh-table--auto,.rh-table--dense) .rh-thead .rh-th:is(.is-sticky,.is-sticky-end){z-index:var(--z-sticky-corner)}
:is(.rh-table--auto,.rh-table--dense) .rh-tsum .rh-td{position:sticky;bottom:0;z-index:var(--z-sticky-head)}
:is(.rh-table--auto,.rh-table--dense) .rh-tsum .rh-td:is(.is-sticky,.is-sticky-end){z-index:var(--z-sticky-corner)}
:is(.rh-table--auto,.rh-table--dense) .rh-td--spread>*{display:block}
:is(.rh-table--auto,.rh-table--dense) .rh-input--cell{width:100%;min-width:var(--plan-input-min)}
:is(.rh-table--auto,.rh-table--dense) .rh-td--edit .rh-td__ico{position:absolute;left:calc(2 * var(--space-6));top:50%;transform:translateY(-50%);pointer-events:none}
:is(.rh-table--auto,.rh-table--dense) .rh-td__ico+.rh-input--cell{padding-left:calc(var(--space-8) + var(--icon-sm) + var(--space-4));min-width:calc(var(--plan-input-min) + var(--icon-sm) + var(--space-4))}
:is(.rh-table--auto,.rh-table--dense) .rh-td.rh-td--locked{padding-left:calc(var(--space-4) + var(--size-cell-trigger))}
:is(.rh-table--auto,.rh-table--dense) .rh-td--locked>.rh-td__trigger{position:absolute;left:var(--space-2);top:50%;margin:0;transform:translateY(-50%)}
/* Spaltenrollen: erste Spalte = Name; is-num, is-key, is-status, is-action = Breite nach Inhalt; is-text = Fließtext */
.rh-table--auto .rh-th{padding:0 var(--space-12);white-space:nowrap}
.rh-table--auto .rh-th:has(>button){padding:0 var(--space-4)}
.rh-table--auto :is(.rh-th,.rh-td):first-child:not(.is-num,.is-key,.is-status,.is-action){min-width:var(--table-name-min)}
.rh-table--auto :is(.is-num,.is-key,.is-status,.is-action){width:1px;white-space:nowrap}
.rh-table--auto .is-text{min-width:var(--table-text-min);white-space:normal;overflow-wrap:break-word}
.rh-table--auto .rh-td.is-action{text-align:right}
.rh-table--auto .rh-td__name :is(b,small){white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word}
.rh-td__actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-6);flex-wrap:nowrap;vertical-align:middle}
.rh-th.is-action.is-sticky-end{box-shadow:inset 1px 0 0 var(--line)}
.rh-td.is-action.is-sticky-end{background:var(--surface);font-weight:inherit;box-shadow:inset 1px 0 0 var(--line)}
.rh-tr:hover .rh-td.is-action.is-sticky-end{background:var(--surface-2)}
/* Korrekturzeile: berichtigt eine frühere Periode (Badge „Korrektur“ mit Symbol, Beträge mit Vorzeichen) */
.rh-tr--korrektur>.rh-td,.rh-tr--korrektur:hover>.rh-td{background:var(--surface-2)}
.rh-karte--korrektur{background:var(--surface-2)}
/* Planungsgitter: erste Spalte nimmt den freien Platz, Monats- und Summenspalten nach Inhalt, Zeile 52 px */
.rh-table--dense .rh-td{padding:var(--space-4) var(--space-8)}
.rh-table--dense .rh-td--edit{padding:var(--space-6)}
.rh-table--dense .rh-th{padding:0 var(--space-8);line-height:var(--lh-title)}
.rh-table--dense .rh-th:has(>button){padding:0 var(--space-2)}
/* Fassung 1.5: Zahlenspalten fest plan-col breit; die erste Spalte nimmt so viel, dass rechts nur ganze Spalten stehen (N4) */
.rh-table--dense :is(.rh-th,.rh-td):first-child{min-width:var(--plan-name-min);min-width:max(var(--plan-name-min),calc(100cqi - var(--plan-col) - round(down,100cqi - var(--plan-col) - var(--plan-name-min),var(--plan-col))))}
.rh-table--dense :is(.rh-th,.rh-td):not(:first-child){width:var(--plan-col);min-width:var(--plan-col)}
.rh-table--dense .rh-td:not(:first-child){white-space:nowrap}
/* Fassung 1.5: Scrollbereich zeigt ganze Zeilen und rastet an Zeilen und Spalten ein (N2) */
.rh-tablewrap:has(>.rh-table--dense){container-type:inline-size;max-height:calc(var(--size-th) + (var(--plan-rows) + 1) * var(--size-td));scroll-snap-type:both mandatory;scroll-padding:var(--size-th) var(--plan-col) var(--size-td) 0}
.rh-table--dense>[role="rowgroup"]:not(.rh-thead,.rh-tsum) .rh-td{scroll-snap-align:start end}
.rh-table--dense>[role="rowgroup"]:not(.rh-thead,.rh-tsum) .rh-td:first-child{scroll-snap-align:start none}
.rh-table--dense[role="treegrid"] .rh-td:first-child{--rh-ebene:0px;padding-left:calc(var(--space-4) + var(--rh-ebene) + var(--size-iconbtn))}
.rh-table--dense .rh-tr[aria-level="2"]>.rh-td:first-child{--rh-ebene:var(--tree-indent)}
.rh-table--dense .rh-tr[aria-level="3"]>.rh-td:first-child{--rh-ebene:calc(2 * var(--tree-indent))}
.rh-table--dense .rh-td:first-child>.rh-treebtn{position:absolute;left:calc(var(--space-2) + var(--rh-ebene));top:50%;margin:0;transform:translateY(-50%);z-index:var(--z-raised)}
.rh-table--dense .rh-td__label{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;white-space:normal;overflow-wrap:break-word;line-height:var(--lh-title)}
/* Fassung 1.5: Name und Kennzeichen getrennt – der Name kürzt, die Kennzeichen bleiben stehen */
.rh-table--dense .rh-td__label:has(>.rh-td__text){display:flex;align-items:center;gap:var(--space-4);overflow:visible}
.rh-td__text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-width:0;flex:0 1 auto;white-space:normal;overflow-wrap:break-word;line-height:var(--lh-title)}
.rh-td__flags{display:inline-flex;align-items:center;gap:var(--space-4);flex:none}
.rh-td__flags .rh-badge{margin:0}
.rh-table--dense .rh-td:first-child .rh-badge__text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.rh-table--dense .rh-td:first-child .rh-badge:has(.rh-badge__text){padding-left:var(--space-4);padding-right:var(--space-4)}
.rh-td__label .rh-badge{vertical-align:middle;margin-left:var(--space-4);height:auto;padding-top:0;padding-bottom:0;line-height:var(--lh-title)}
/* Kante der fixierten Spalten, solange Inhalt darunter liegt (nur Browser mit scroll-getriebener Animation) */
@supports (animation-timeline: scroll()){
.rh-tablewrap:has(>:is(.rh-table--auto,.rh-table--dense)){scroll-timeline:--rh-tabelle-x x}
:is(.rh-table--auto,.rh-table--dense) :is(.rh-th,.rh-td).is-sticky::after{content:"";position:absolute;top:0;bottom:0;left:100%;width:var(--space-12);background:linear-gradient(to right,var(--edge-shadow),transparent);pointer-events:none;opacity:0;animation:rh-kante-links linear both;animation-timeline:--rh-tabelle-x}
:is(.rh-table--auto,.rh-table--dense) :is(.rh-th,.rh-td).is-sticky-end::before{content:"";position:absolute;top:0;bottom:0;right:100%;width:var(--space-12);background:linear-gradient(to left,var(--edge-shadow),transparent);pointer-events:none;opacity:0;animation:rh-kante-rechts linear both;animation-timeline:--rh-tabelle-x}
@keyframes rh-kante-links{0%{opacity:0}3%,100%{opacity:1}}
@keyframes rh-kante-rechts{0%,97%{opacity:1}100%{opacity:0}}
}
@supports not (animation-timeline: scroll()){
:is(.rh-table--auto,.rh-table--dense) :is(.rh-th,.rh-td).is-sticky::after{content:"";position:absolute;top:0;bottom:0;left:100%;width:var(--space-8);background:linear-gradient(to right,var(--edge-shadow),transparent);pointer-events:none}
:is(.rh-table--auto,.rh-table--dense) :is(.rh-th,.rh-td).is-sticky-end::before{content:"";position:absolute;top:0;bottom:0;right:100%;width:var(--space-8);background:linear-gradient(to left,var(--edge-shadow),transparent);pointer-events:none}
}
/* Fassung 1.5: Legende im Tabellenfuß – Symbol bleibt neben dem Text (N5) */
.rh-tablefoot:has(>.ms+span){align-items:flex-start}
.rh-tablefoot>.ms+span{flex:1 1 0;min-width:0}
.rh-tablefoot:has(>.ms+span)>.ms{margin-top:var(--space-2)}

/* ===== Fassung 1.4: Grund neben deaktivierter Hauptaktion, Popover über dem Scrollbereich, Kurzbeschriftung ===== */
.rh-actionreason{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-8) var(--space-12);flex-wrap:wrap;min-width:0}
.rh-actionreason__text{display:flex;align-items:flex-start;gap:var(--space-6);flex:1 1 var(--actionreason-min);min-width:0;margin:0;font-size:var(--fs-meta);line-height:var(--lh-snug);color:var(--text-2);overflow-wrap:break-word}
.rh-actionreason__text .ms{font-size:var(--icon-sm);color:var(--info)}
.rh-pop[popover]{position:fixed;inset:auto;margin:0;max-height:calc(100dvh - 2 * var(--space-16));overflow:auto}
.rh-pop[popover]:not(:popover-open){display:none}
.rh-bottomnav__label{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.rh-filterrow__facts{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;flex:1 1 auto;min-width:0;font-size:var(--fs-body);font-weight:var(--fw-semibold);line-height:var(--lh-title);overflow-wrap:break-word}
.rh-fact{white-space:nowrap}
.rh-fact>.rh-badge{vertical-align:middle}
.rh-fact:not(:last-child)::after{content:" ·";color:var(--text-2);font-weight:var(--fw-regular)}
.rh-header:has(.rh-viewas){container:rh-kopf / inline-size}
@container rh-kopf (max-width: 1279px){.rh-header .rh-datachip__sub{display:none}}
.rh-pop .rh-viewas{flex-wrap:wrap;height:auto;min-height:var(--size-viewas);padding:var(--space-6) var(--space-6) var(--space-6) var(--space-12);white-space:normal;margin-left:0}
.rh-pop .rh-viewas select{flex:1 1 var(--pop-select-min);max-width:100%}

/* ===== Fassung 1.6: Lücken aus den Modulen (L1 bis L7, M1 bis M8) ===== */
/* L5: Tabellen im Tabellenlayout zeigen bis zu table-rows Zeilen und rasten an Zeilen ein */
.rh:not(.is-full) .rh-tablewrap:has(>.rh-table--auto){max-height:calc(var(--size-th) + (var(--table-rows) + 1) * var(--size-td));scroll-snap-type:y proximity;scroll-padding-top:var(--size-th);scroll-padding-bottom:var(--size-td)}
.rh-table--auto>[role="rowgroup"]:not(.rh-thead,.rh-tsum)>.rh-tr>:first-child{scroll-snap-align:start}
/* L6, M1, M2: wichtigster Betrag, Messleiste und mehrere Status in Zellen */
.rh-table--auto .is-primary{font-weight:var(--fw-semibold)}
.rh-table--auto .is-meter{width:var(--table-meter-w);min-width:var(--table-meter-w);white-space:normal}
.rh-td.is-meter .rh-meter{margin-top:0}
.rh-td__badges{display:inline-flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);vertical-align:middle}
/* M3, L7: Kartenkopf mit mehreren Status; Titel der Summenkarte */
.rh-karte__status{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-4)}
.rh-karte{container:rh-karte / inline-size}
@container rh-karte (max-width: 339px){.rh-karte__kopf:has(>.rh-karte__status>:nth-child(2))>*{grid-column:1/-1}.rh-karte__kopf>.rh-karte__status:has(>:nth-child(2)){grid-row:auto;justify-self:start;flex-direction:row;flex-wrap:wrap;align-items:center;margin-top:var(--space-4)}}
.rh-karte__titel{font-size:var(--fs-body-lg);font-weight:var(--fw-strong)}
/* L1, L2: Abweichungsliste mit Ausgangszeile; unter 440 px Breite der Liste zweizeilig (Name und Wert, darunter der Balken) */
.rh-devlist{container:rh-liste / inline-size}
.rh-devlist__row{grid-template-areas:"label track value"}
.rh-devlist__label{grid-area:label}
.rh-devlist__track{grid-area:track}
.rh-devlist__value{grid-area:value;white-space:nowrap}
.rh-devlist__row--base{padding-bottom:var(--space-8);border-bottom:1px solid var(--line);font-weight:var(--fw-semibold)}
@container rh-liste (max-width: 439px){
.rh-devlist__row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value" "track track";row-gap:var(--space-4)}
}
.rh-pop--cell .rh-kvlist dd{overflow-wrap:break-word}
.rh-grid-2>.rh-grid-2__wide{grid-column:1/-1}
/* L3: Zeitdiagramm mit vier oder sechs Perioden; drei Reihen je Periode */
.rh-chart--n4 .rh-chart__plot,.rh-chart--n4 .rh-chart__labels{grid-template-columns:repeat(4,minmax(0,1fr))}
.rh-chart--n6 .rh-chart__plot,.rh-chart--n6 .rh-chart__labels{grid-template-columns:repeat(6,minmax(0,1fr))}
.rh-chart__month:has(>.rh-chart__bar:nth-child(3)) .rh-chart__bar{width:min(var(--chart-bar-w),calc((100% - 2 * var(--space-4)) / 3))}
/* M7: Periode ohne Ist – gepunktete Linie auf der Grundlinie statt einer Säule */
.rh-chart__bar--open{height:0;min-height:0;border-top:2px dotted var(--text-2);background:none;border-radius:0;box-shadow:none}
.rh-legend i.rh-legend__open{height:0;border-top:2px dotted var(--text-2);border-radius:0;background:none}
/* L4: Popover an einer Tabellenzelle – oberste Ebene, am Auslöser verankert, ohne style und ohne Lage-Skript */
.rh-pop--cell[popover]{position:fixed;inset:auto;margin:0;width:var(--pop-w);max-width:calc(100vw - 2 * var(--space-16));max-height:calc(100dvh - 2 * var(--space-16));overflow:auto}
@supports (position-area: bottom){
.rh-pop--cell[popover]{position-area:bottom span-left;position-try-fallbacks:flip-block,flip-inline,flip-block flip-inline;margin-block:var(--space-4)}
}
@supports not (position-area: bottom){
.rh-pop--cell[popover]{inset:0;margin:auto;height:fit-content}
}

/* ===== Gerätegrößen =====
   Jeder Block wird zweimal ausgegeben: als Media Query (Betrieb, ohne data-device) und für data-device (Vorschau).
   Grenzen wie im Betrieb: Handy bis 640 px, Tablet 641–1100 px, Desktop ab 1101 px. */

@media (min-width: 641px){
.rh:not([data-device]) .rh-bottomnav{display:none}
.rh:not([data-device]) .rh-only-phone{display:none !important}
.rh:not([data-device]) .rh-datainline{display:none !important}
}
.rh[data-device="tablet"] .rh-bottomnav,.rh[data-device="desktop"] .rh-bottomnav{display:none}
.rh[data-device="tablet"] .rh-only-phone,.rh[data-device="desktop"] .rh-only-phone{display:none !important}
.rh[data-device="tablet"] .rh-datainline,.rh[data-device="desktop"] .rh-datainline{display:none !important}


@media (min-width: 641px) and (max-width: 1100px){
.rh:not([data-device]):not(.is-nav-expanded){--nav-w:var(--nav-w-narrow)}
.rh:not([data-device]):not(.is-nav-expanded) .rh-nav{padding:var(--space-12) var(--space-8);flex-basis:var(--nav-w-narrow);width:var(--nav-w-narrow)}
.rh:not([data-device]):not(.is-nav-expanded) .rh-nav__text,.rh:not([data-device]):not(.is-nav-expanded) .rh-nav__count,.rh:not([data-device]):not(.is-nav-expanded) .rh-nav__label{display:none}
.rh:not([data-device]):not(.is-nav-expanded) .rh-nav__item{justify-content:center;padding:0}
.rh:not([data-device]):not(.is-nav-expanded) .rh-nav__item.is-active::before{left:calc(-1 * var(--space-8))}
.rh:not([data-device]) .rh-avatar__name,.rh:not([data-device]) .rh-datachip__sub{display:none}
.rh:not([data-device]) .rh-main{padding:var(--space-20) var(--space-20) var(--space-64)}
}
.rh[data-device="tablet"]:not(.is-nav-expanded){--nav-w:var(--nav-w-narrow)}
.rh[data-device="tablet"]:not(.is-nav-expanded) .rh-nav{padding:var(--space-12) var(--space-8);flex-basis:var(--nav-w-narrow);width:var(--nav-w-narrow)}
.rh[data-device="tablet"]:not(.is-nav-expanded) .rh-nav__text,.rh[data-device="tablet"]:not(.is-nav-expanded) .rh-nav__count,.rh[data-device="tablet"]:not(.is-nav-expanded) .rh-nav__label{display:none}
.rh[data-device="tablet"]:not(.is-nav-expanded) .rh-nav__item{justify-content:center;padding:0}
.rh[data-device="tablet"]:not(.is-nav-expanded) .rh-nav__item.is-active::before{left:calc(-1 * var(--space-8))}
.rh[data-device="tablet"] .rh-avatar__name,.rh[data-device="tablet"] .rh-datachip__sub{display:none}
.rh[data-device="tablet"] .rh-main{padding:var(--space-20) var(--space-20) var(--space-64)}


@media (max-width: 640px){
.rh:not([data-device]){--header-h:var(--header-h-handy);overflow-x:hidden}
.rh:not([data-device]) .rh-nav{display:none}
.rh:not([data-device]) .rh-main{padding:var(--space-16) var(--space-16) var(--bottomnav-clearance)}
.rh:not([data-device]) .rh-body,.rh:not([data-device]) .rh-main,.rh:not([data-device]) .rh-page{max-width:100%;min-width:0}
.rh:not([data-device]) .rh-only-desktop{display:none !important}
.rh:not([data-device]) .rh-header{gap:var(--space-8);padding:0 var(--space-4) 0 var(--space-16);overflow:visible}
.rh:not([data-device]) .rh-header .rh-brand{gap:var(--space-8);min-width:0;min-height:var(--size-target);padding:var(--space-6) var(--space-2)}
.rh:not([data-device]) .rh-header .rh-brand__sep,.rh:not([data-device]) .rh-header .rh-brand__product{display:none}
.rh:not([data-device]) .rh-header .rh-datachip,.rh:not([data-device]) .rh-header .rh-hbtn,.rh:not([data-device]) .rh-header .rh-avatar__name,.rh:not([data-device]) .rh-header .rh-avatar>.ms{display:none}
.rh:not([data-device]) .rh-header .rh-hbtn.rh-hbtn--postfach{display:grid}
.rh:not([data-device]) .rh-header .rh-phonechip{display:inline-flex;min-height:var(--size-target);height:auto;padding:var(--space-2) var(--space-6);gap:var(--space-4);white-space:normal;line-height:var(--lh-heading);min-width:0;flex:0 1 auto;border-radius:var(--radius-pill)}
.rh:not([data-device]) .rh-header .rh-hbtn{width:var(--size-target);height:var(--size-target)}
.rh:not([data-device]) .rh-header .rh-avatar{width:var(--size-target);min-width:var(--size-target);height:var(--size-target);justify-content:center;padding:0}
.rh:not([data-device]) .rh-header__spacer{min-width:0}
.rh:not([data-device]) .rh-pop--konto,.rh:not([data-device]) .rh-pop--postfach{position:fixed;top:calc(var(--header-h) + var(--space-8));right:var(--space-12)}
.rh:not([data-device]) .rh-badge,.rh:not([data-device]) .rh-rolechip,.rh:not([data-device]) .rh-chip,.rh:not([data-device]) .rh-fchip{min-width:0;max-width:100%;height:auto;white-space:normal;overflow-wrap:anywhere;flex:0 1 auto}
.rh:not([data-device]) .rh-badge,.rh:not([data-device]) .rh-rolechip{min-height:var(--size-badge-sm);padding-top:var(--space-2);padding-bottom:var(--space-2)}
.rh:not([data-device]) .rh-chip,.rh:not([data-device]) .rh-fchip{min-height:var(--size-target)}
.rh:not([data-device]) .rh-btn{white-space:normal;height:auto;min-height:var(--size-target);padding-top:var(--space-6);padding-bottom:var(--space-6);text-align:center;flex-shrink:1;min-width:min-content;max-width:100%}
.rh:not([data-device]) .rh-slist__row{flex-wrap:wrap}
.rh:not([data-device]) .rh-choice,.rh:not([data-device]) .rh-choice b,.rh:not([data-device]) .rh-listbtn b{min-width:0;overflow-wrap:anywhere}
.rh:not([data-device]) .rh-datainline,.rh:not([data-device]) .rh-datainline .rh-card__body,.rh:not([data-device]) .rh-datainline .rh-panel,.rh:not([data-device]) .rh-datainline .rh-panel>section,.rh:not([data-device]) .rh-datainline .rh-panel__body,.rh:not([data-device]) #datenstand-inline-body{min-width:0;max-width:100%}
.rh:not([data-device]) .rh-dsgrid-scroll{min-width:0;max-width:100%}
.rh:not([data-device]) .rh-sheet{top:auto;left:0;right:0;bottom:0;transform:none;width:100%;max-height:85vh;max-height:85dvh;padding:0;border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;overflow:auto}
.rh:not([data-device]) .rh-sheet__head{padding:var(--space-16);border-bottom:1px solid var(--line)}
.rh:not([data-device]) .rh-sheet__body{padding:var(--space-12) var(--space-16) var(--space-24)}
.rh:not([data-device]) .rh-panel{width:100%}
.rh:not([data-device]) button,.rh:not([data-device]) .rh-btn,.rh:not([data-device]) .rh-iconbtn,.rh:not([data-device]) .rh-fchip,.rh:not([data-device]) .rh-chip--add,.rh:not([data-device]) .rh-menuitem,.rh:not([data-device]) .rh-crumb,.rh:not([data-device]) .rh-tab{min-height:var(--size-target)}
.rh:not([data-device]) .rh-iconbtn{min-width:var(--size-target)}
.rh:not([data-device]) .rh-chip__x{min-height:0}
.rh:not([data-device]) .rh-chip__x::after{content:"";position:absolute;inset:calc((var(--size-target) - var(--size-chip-x)) / -2)}
.rh:not([data-device]) .rh-chips,.rh:not([data-device]) .rh-filtergroup,.rh:not([data-device]) .rh-chipselect,.rh:not([data-device]) .rh-tabs,.rh:not([data-device]) .rh-seg,.rh:not([data-device]) .rh-reportcard__actions,.rh:not([data-device]) .rh-pagehead__actions,.rh:not([data-device]) .rh-reporthead__actions{gap:var(--space-8)}
.rh:not([data-device]) .rh-check,.rh:not([data-device]) .rh-bezirksbaum__label,.rh:not([data-device]) .rh-bezirksbaum__knoten>details>summary{min-height:var(--size-target);align-items:center}
.rh:not([data-device]) .rh-check input{margin:0}
.rh:not([data-device]) input[type="radio"]{min-height:var(--size-target)}
.rh:not([data-device]) .rh-choice input[type="radio"],.rh:not([data-device]) .rh-choice input[type="checkbox"]{min-height:0}
.rh:not([data-device]) .rh-seg__opt,.rh:not([data-device]) .rh-seg__opt span,.rh:not([data-device]) .rh-seg--sm .rh-seg__opt span{min-width:var(--size-target);min-height:var(--size-target)}
.rh:not([data-device]) .rh-seg__opt span{justify-content:center;box-sizing:border-box}
.rh:not([data-device]) .rh-seg__opt input{inset:0;width:100%;height:100%;min-width:0;min-height:0}
.rh:not([data-device]) input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),.rh:not([data-device]) select,.rh:not([data-device]) textarea{min-height:var(--size-target)}
.rh:not([data-device]) .rh-switch input{height:var(--size-target);margin-top:calc(var(--size-target) / -2)}
.rh:not([data-device]) input,.rh:not([data-device]) select,.rh:not([data-device]) textarea{font-size:var(--fs-input-handy) !important}
.rh:not([data-device]) .rh-nav__label,.rh:not([data-device]) .rh-hbtn__badge,.rh:not([data-device]) .rh-badge--sm,.rh:not([data-device]) .rh-dsgrid__h small,.rh:not([data-device]) .rh-chip--sm{font-size:var(--fs-caption)}
.rh:not([data-device]) .rh-dsgrid__cell{position:relative}
.rh:not([data-device]) .rh-savebar{bottom:calc(var(--bottomnav-h) + var(--space-8))}
.rh:not([data-device]) .rh-toast{bottom:calc(var(--bottomnav-h) + var(--space-8))}
.rh:not([data-device]) .rh-kpis{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:var(--space-8)}
.rh:not([data-device]) .rh-kpi__value{white-space:normal;overflow-wrap:anywhere}
.rh:not([data-device]) .rh-notice__text{flex-basis:calc(100% - var(--icon-md) - var(--space-12) - 1px)}
.rh:not([data-device]) .rh-kpi{padding:var(--space-12)}
.rh:not([data-device]) .rh-kpi__value{font-size:var(--fs-display-handy)}
.rh:not([data-device]) .rh-kpi__value--name,.rh:not([data-device]) .rh-report .rh-kpi__value--name{font-size:var(--fs-body-lg)}
.rh:not([data-device]) .rh-pagehead h1,.rh:not([data-device]) .rh-reporthead__title h1{font-size:var(--fs-heading-1-handy);line-height:var(--lh-title)}
.rh:not([data-device]) .rh-filterrow{flex-direction:column;align-items:stretch}
.rh:not([data-device]) .rh-seg{flex-wrap:wrap}
.rh:not([data-device]) .rh-search{flex:1 1 100%}
.rh:not([data-device]) .rh-monat .rh-input{width:100%}
.rh:not([data-device]) .rh-monat{display:flex}
.rh:not([data-device]) .rh-tabletools,.rh:not([data-device]) .rh-tablefoot{gap:var(--space-8)}
.rh:not([data-device]) .rh-tablecard:has(>.rh-karten){border:0;background:none;overflow:visible}
.rh:not([data-device]) .rh-tablecard:has(>.rh-karten)>.rh-tablewrap,.rh:not([data-device]) .rh-tablecard:has(>.rh-karten)>.rh-tablefoot,.rh:not([data-device]) .rh-tablecard:has(>.rh-karten) [data-cols-persist],.rh:not([data-device]) .rh-tablecard:has(>.rh-karten) .rh-anchor:has(>[aria-controls^="spalten"]){display:none}
.rh:not([data-device]) .rh-tablecard:has(>.rh-karten)>.rh-tabletools{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-bottom:var(--space-8)}
.rh:not([data-device]) .rh-karten{display:flex;flex-direction:column;gap:var(--space-8);padding:0}
.rh:not([data-device]) .rh-report .rh-reporthead__actions{width:100%}
.rh:not([data-device]) .rh-report .rh-reporthead__actions .rh-btn{flex:1}
.rh:not([data-device]) .rh-report .rh-reportcard__desc{display:none}
.rh:not([data-device]) .rh-report .rh-slist__row{flex-wrap:wrap}
.rh:not([data-device]) .rh-grid--downloads{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-8);padding:var(--space-16)}
.rh:not([data-device]) .rh-dl-card .rh-grid--head{display:none}
.rh:not([data-device]) .rh-dl-card .rh-text-right{text-align:left}
.rh:not([data-device]) .rh-dl-actions{justify-content:flex-start}
.rh:not([data-device]) .rh-split__side{position:static}
.rh:not([data-device]) .rh-timeline__item{grid-template-columns:1fr;gap:var(--space-4)}
.rh:not([data-device]) .rh-kvlist,.rh:not([data-device]) .rh-dialog__facts{grid-template-columns:1fr;gap:var(--space-2) var(--space-12)}
.rh:not([data-device]) .rh-kvlist dd,.rh:not([data-device]) .rh-dialog__facts dd{margin-bottom:var(--space-8)}
.rh:not([data-device]) .rh-hintcard,.rh:not([data-device]) .rh-userhead{align-items:flex-start}
.rh:not([data-device]) .rh-bottomnav{padding:var(--space-6) var(--space-2) var(--space-12)}
.rh:not([data-device]) .air-datepicker.rh-monatsfenster{--adp-width:min(100vw - 2 * var(--space-16),var(--datepicker-w));--adp-day-cell-height:var(--size-target);--adp-month-cell-height:var(--size-target);--adp-year-cell-height:var(--size-target)}
.rh:not([data-device]) .rh-treebtn{width:var(--size-target);height:var(--size-target)}
.rh:not([data-device]) .rh-td__trigger::after{content:"";position:absolute;inset:calc((var(--size-target) - var(--size-cell-trigger)) / -2)}
.rh:not([data-device]) .rh-input--cell{height:var(--size-target);font-size:var(--fs-input-handy)}
.rh:not([data-device]) .rh-table--dense .rh-tr{grid-template-columns:minmax(160px,200px)}
.rh:not([data-device]) .rh-td--locked{padding-top:var(--space-6);padding-bottom:var(--space-6)}
.rh:not([data-device]) .rh-th.is-sticky-end{position:static}
.rh:not([data-device]) .rh-td.is-sticky-end{position:static}
.rh:not([data-device]) .rh-driver__track{height:var(--size-target)}
.rh:not([data-device]) .rh-driver__slider{height:var(--size-target)}
.rh:not([data-device]) .rh-driver__input{height:var(--size-target);font-size:var(--fs-input-handy)}
.rh:not([data-device]) .rh-upload__summary .rh-btn{margin-left:0;width:100%}
.rh:not([data-device]) .rh-treebtn--edit+.rh-treebtn--leaf{display:none}
.rh:not([data-device]) .rh-sheet__foot{position:sticky;bottom:0;padding:var(--space-12) var(--space-16);border-top:1px solid var(--line);background:var(--surface)}
.rh:not([data-device]) .rh-sheet__foot .rh-btn{flex:1}
.rh:not([data-device]) .rh-filterrow--sticky{padding:var(--space-8) 0}
.rh:not([data-device]) .rh-filterrow--sticky .rh-filterrow__fields{display:none}
.rh:not([data-device]) .rh-filterrow--sticky .rh-filterrow__summary{display:flex}
}
.rh[data-device="phone"]{--header-h:var(--header-h-handy);overflow-x:hidden}
.rh[data-device="phone"] .rh-nav{display:none}
.rh[data-device="phone"] .rh-main{padding:var(--space-16) var(--space-16) var(--bottomnav-clearance)}
.rh[data-device="phone"] .rh-body,.rh[data-device="phone"] .rh-main,.rh[data-device="phone"] .rh-page{max-width:100%;min-width:0}
.rh[data-device="phone"] .rh-only-desktop{display:none !important}
.rh[data-device="phone"] .rh-header{gap:var(--space-8);padding:0 var(--space-4) 0 var(--space-16);overflow:visible}
.rh[data-device="phone"] .rh-header .rh-brand{gap:var(--space-8);min-width:0;min-height:var(--size-target);padding:var(--space-6) var(--space-2)}
.rh[data-device="phone"] .rh-header .rh-brand__sep,.rh[data-device="phone"] .rh-header .rh-brand__product{display:none}
.rh[data-device="phone"] .rh-header .rh-datachip,.rh[data-device="phone"] .rh-header .rh-hbtn,.rh[data-device="phone"] .rh-header .rh-avatar__name,.rh[data-device="phone"] .rh-header .rh-avatar>.ms{display:none}
.rh[data-device="phone"] .rh-header .rh-hbtn.rh-hbtn--postfach{display:grid}
.rh[data-device="phone"] .rh-header .rh-phonechip{display:inline-flex;min-height:var(--size-target);height:auto;padding:var(--space-2) var(--space-6);gap:var(--space-4);white-space:normal;line-height:var(--lh-heading);min-width:0;flex:0 1 auto;border-radius:var(--radius-pill)}
.rh[data-device="phone"] .rh-header .rh-hbtn{width:var(--size-target);height:var(--size-target)}
.rh[data-device="phone"] .rh-header .rh-avatar{width:var(--size-target);min-width:var(--size-target);height:var(--size-target);justify-content:center;padding:0}
.rh[data-device="phone"] .rh-header__spacer{min-width:0}
.rh[data-device="phone"] .rh-pop--konto,.rh[data-device="phone"] .rh-pop--postfach{position:fixed;top:calc(var(--header-h) + var(--space-8));right:var(--space-12)}
.rh[data-device="phone"] .rh-badge,.rh[data-device="phone"] .rh-rolechip,.rh[data-device="phone"] .rh-chip,.rh[data-device="phone"] .rh-fchip{min-width:0;max-width:100%;height:auto;white-space:normal;overflow-wrap:anywhere;flex:0 1 auto}
.rh[data-device="phone"] .rh-badge,.rh[data-device="phone"] .rh-rolechip{min-height:var(--size-badge-sm);padding-top:var(--space-2);padding-bottom:var(--space-2)}
.rh[data-device="phone"] .rh-chip,.rh[data-device="phone"] .rh-fchip{min-height:var(--size-target)}
.rh[data-device="phone"] .rh-btn{white-space:normal;height:auto;min-height:var(--size-target);padding-top:var(--space-6);padding-bottom:var(--space-6);text-align:center;flex-shrink:1;min-width:min-content;max-width:100%}
.rh[data-device="phone"] .rh-slist__row{flex-wrap:wrap}
.rh[data-device="phone"] .rh-choice,.rh[data-device="phone"] .rh-choice b,.rh[data-device="phone"] .rh-listbtn b{min-width:0;overflow-wrap:anywhere}
.rh[data-device="phone"] .rh-datainline,.rh[data-device="phone"] .rh-datainline .rh-card__body,.rh[data-device="phone"] .rh-datainline .rh-panel,.rh[data-device="phone"] .rh-datainline .rh-panel>section,.rh[data-device="phone"] .rh-datainline .rh-panel__body,.rh[data-device="phone"] #datenstand-inline-body{min-width:0;max-width:100%}
.rh[data-device="phone"] .rh-dsgrid-scroll{min-width:0;max-width:100%}
.rh[data-device="phone"] .rh-sheet{top:auto;left:0;right:0;bottom:0;transform:none;width:100%;max-height:85vh;max-height:85dvh;padding:0;border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;overflow:auto}
.rh[data-device="phone"] .rh-sheet__head{padding:var(--space-16);border-bottom:1px solid var(--line)}
.rh[data-device="phone"] .rh-sheet__body{padding:var(--space-12) var(--space-16) var(--space-24)}
.rh[data-device="phone"] .rh-panel{width:100%}
.rh[data-device="phone"] button,.rh[data-device="phone"] .rh-btn,.rh[data-device="phone"] .rh-iconbtn,.rh[data-device="phone"] .rh-fchip,.rh[data-device="phone"] .rh-chip--add,.rh[data-device="phone"] .rh-menuitem,.rh[data-device="phone"] .rh-crumb,.rh[data-device="phone"] .rh-tab{min-height:var(--size-target)}
.rh[data-device="phone"] .rh-iconbtn{min-width:var(--size-target)}
.rh[data-device="phone"] .rh-chip__x{min-height:0}
.rh[data-device="phone"] .rh-chip__x::after{content:"";position:absolute;inset:calc((var(--size-target) - var(--size-chip-x)) / -2)}
.rh[data-device="phone"] .rh-chips,.rh[data-device="phone"] .rh-filtergroup,.rh[data-device="phone"] .rh-chipselect,.rh[data-device="phone"] .rh-tabs,.rh[data-device="phone"] .rh-seg,.rh[data-device="phone"] .rh-reportcard__actions,.rh[data-device="phone"] .rh-pagehead__actions,.rh[data-device="phone"] .rh-reporthead__actions{gap:var(--space-8)}
.rh[data-device="phone"] .rh-check,.rh[data-device="phone"] .rh-bezirksbaum__label,.rh[data-device="phone"] .rh-bezirksbaum__knoten>details>summary{min-height:var(--size-target);align-items:center}
.rh[data-device="phone"] .rh-check input{margin:0}
.rh[data-device="phone"] input[type="radio"]{min-height:var(--size-target)}
.rh[data-device="phone"] .rh-choice input[type="radio"],.rh[data-device="phone"] .rh-choice input[type="checkbox"]{min-height:0}
.rh[data-device="phone"] .rh-seg__opt,.rh[data-device="phone"] .rh-seg__opt span,.rh[data-device="phone"] .rh-seg--sm .rh-seg__opt span{min-width:var(--size-target);min-height:var(--size-target)}
.rh[data-device="phone"] .rh-seg__opt span{justify-content:center;box-sizing:border-box}
.rh[data-device="phone"] .rh-seg__opt input{inset:0;width:100%;height:100%;min-width:0;min-height:0}
.rh[data-device="phone"] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),.rh[data-device="phone"] select,.rh[data-device="phone"] textarea{min-height:var(--size-target)}
.rh[data-device="phone"] .rh-switch input{height:var(--size-target);margin-top:calc(var(--size-target) / -2)}
.rh[data-device="phone"] input,.rh[data-device="phone"] select,.rh[data-device="phone"] textarea{font-size:var(--fs-input-handy) !important}
.rh[data-device="phone"] .rh-nav__label,.rh[data-device="phone"] .rh-hbtn__badge,.rh[data-device="phone"] .rh-badge--sm,.rh[data-device="phone"] .rh-dsgrid__h small,.rh[data-device="phone"] .rh-chip--sm{font-size:var(--fs-caption)}
.rh[data-device="phone"] .rh-dsgrid__cell{position:relative}
.rh[data-device="phone"] .rh-savebar{bottom:calc(var(--bottomnav-h) + var(--space-8))}
.rh[data-device="phone"] .rh-toast{bottom:calc(var(--bottomnav-h) + var(--space-8))}
.rh[data-device="phone"] .rh-kpis{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:var(--space-8)}
.rh[data-device="phone"] .rh-kpi__value{white-space:normal;overflow-wrap:anywhere}
.rh[data-device="phone"] .rh-notice__text{flex-basis:calc(100% - var(--icon-md) - var(--space-12) - 1px)}
.rh[data-device="phone"] .rh-kpi{padding:var(--space-12)}
.rh[data-device="phone"] .rh-kpi__value{font-size:var(--fs-display-handy)}
.rh[data-device="phone"] .rh-kpi__value--name,.rh[data-device="phone"] .rh-report .rh-kpi__value--name{font-size:var(--fs-body-lg)}
.rh[data-device="phone"] .rh-pagehead h1,.rh[data-device="phone"] .rh-reporthead__title h1{font-size:var(--fs-heading-1-handy);line-height:var(--lh-title)}
.rh[data-device="phone"] .rh-filterrow{flex-direction:column;align-items:stretch}
.rh[data-device="phone"] .rh-seg{flex-wrap:wrap}
.rh[data-device="phone"] .rh-search{flex:1 1 100%}
.rh[data-device="phone"] .rh-monat .rh-input{width:100%}
.rh[data-device="phone"] .rh-monat{display:flex}
.rh[data-device="phone"] .rh-tabletools,.rh[data-device="phone"] .rh-tablefoot{gap:var(--space-8)}
.rh[data-device="phone"] .rh-tablecard:has(>.rh-karten){border:0;background:none;overflow:visible}
.rh[data-device="phone"] .rh-tablecard:has(>.rh-karten)>.rh-tablewrap,.rh[data-device="phone"] .rh-tablecard:has(>.rh-karten)>.rh-tablefoot,.rh[data-device="phone"] .rh-tablecard:has(>.rh-karten) [data-cols-persist],.rh[data-device="phone"] .rh-tablecard:has(>.rh-karten) .rh-anchor:has(>[aria-controls^="spalten"]){display:none}
.rh[data-device="phone"] .rh-tablecard:has(>.rh-karten)>.rh-tabletools{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-bottom:var(--space-8)}
.rh[data-device="phone"] .rh-karten{display:flex;flex-direction:column;gap:var(--space-8);padding:0}
.rh[data-device="phone"] .rh-report .rh-reporthead__actions{width:100%}
.rh[data-device="phone"] .rh-report .rh-reporthead__actions .rh-btn{flex:1}
.rh[data-device="phone"] .rh-report .rh-reportcard__desc{display:none}
.rh[data-device="phone"] .rh-report .rh-slist__row{flex-wrap:wrap}
.rh[data-device="phone"] .rh-grid--downloads{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-8);padding:var(--space-16)}
.rh[data-device="phone"] .rh-dl-card .rh-grid--head{display:none}
.rh[data-device="phone"] .rh-dl-card .rh-text-right{text-align:left}
.rh[data-device="phone"] .rh-dl-actions{justify-content:flex-start}
.rh[data-device="phone"] .rh-split__side{position:static}
.rh[data-device="phone"] .rh-timeline__item{grid-template-columns:1fr;gap:var(--space-4)}
.rh[data-device="phone"] .rh-kvlist,.rh[data-device="phone"] .rh-dialog__facts{grid-template-columns:1fr;gap:var(--space-2) var(--space-12)}
.rh[data-device="phone"] .rh-kvlist dd,.rh[data-device="phone"] .rh-dialog__facts dd{margin-bottom:var(--space-8)}
.rh[data-device="phone"] .rh-hintcard,.rh[data-device="phone"] .rh-userhead{align-items:flex-start}
.rh[data-device="phone"] .rh-bottomnav{padding:var(--space-6) var(--space-2) var(--space-12)}
.rh[data-device="phone"] .air-datepicker.rh-monatsfenster{--adp-width:min(100vw - 2 * var(--space-16),var(--datepicker-w));--adp-day-cell-height:var(--size-target);--adp-month-cell-height:var(--size-target);--adp-year-cell-height:var(--size-target)}
.rh[data-device="phone"] .rh-treebtn{width:var(--size-target);height:var(--size-target)}
.rh[data-device="phone"] .rh-td__trigger::after{content:"";position:absolute;inset:calc((var(--size-target) - var(--size-cell-trigger)) / -2)}
.rh[data-device="phone"] .rh-input--cell{height:var(--size-target);font-size:var(--fs-input-handy)}
.rh[data-device="phone"] .rh-table--dense .rh-tr{grid-template-columns:minmax(160px,200px)}
.rh[data-device="phone"] .rh-td--locked{padding-top:var(--space-6);padding-bottom:var(--space-6)}
.rh[data-device="phone"] .rh-th.is-sticky-end{position:static}
.rh[data-device="phone"] .rh-td.is-sticky-end{position:static}
.rh[data-device="phone"] .rh-driver__track{height:var(--size-target)}
.rh[data-device="phone"] .rh-driver__slider{height:var(--size-target)}
.rh[data-device="phone"] .rh-driver__input{height:var(--size-target);font-size:var(--fs-input-handy)}
.rh[data-device="phone"] .rh-upload__summary .rh-btn{margin-left:0;width:100%}
.rh[data-device="phone"] .rh-treebtn--edit+.rh-treebtn--leaf{display:none}
.rh[data-device="phone"] .rh-sheet__foot{position:sticky;bottom:0;padding:var(--space-12) var(--space-16);border-top:1px solid var(--line);background:var(--surface)}
.rh[data-device="phone"] .rh-sheet__foot .rh-btn{flex:1}
.rh[data-device="phone"] .rh-filterrow--sticky{padding:var(--space-8) 0}
.rh[data-device="phone"] .rh-filterrow--sticky .rh-filterrow__fields{display:none}
.rh[data-device="phone"] .rh-filterrow--sticky .rh-filterrow__summary{display:flex}


/* ===== Fassung 1.3 und 1.4: Gerätegrößen der neuen Regeln (je zweimal: Media Query und data-device) ===== */
@media (min-width: 1101px){
.rh:not([data-device]) .rh-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.rh:not([data-device]) .rh-grid-2 .rh-chart--waterfall .rh-chart__plot{grid-auto-columns:minmax(var(--chart-col-min-tight),1fr)}
.rh:not([data-device]) .rh-grid-2 .rh-chart--waterfall .rh-chart__labels{grid-auto-columns:minmax(var(--chart-col-min-tight),1fr)}
}
.rh[data-device="desktop"] .rh-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.rh[data-device="desktop"] .rh-grid-2 .rh-chart--waterfall .rh-chart__plot{grid-auto-columns:minmax(var(--chart-col-min-tight),1fr)}
.rh[data-device="desktop"] .rh-grid-2 .rh-chart--waterfall .rh-chart__labels{grid-auto-columns:minmax(var(--chart-col-min-tight),1fr)}
@media (max-width: 640px){
.rh:not([data-device]) .rh-field>.rh-monat{align-self:stretch}
.rh:not([data-device]) .rh-chart details>summary{min-height:var(--size-target);display:flex;align-items:center}
}
.rh[data-device="phone"] .rh-field>.rh-monat{align-self:stretch}
.rh[data-device="phone"] .rh-chart details>summary{min-height:var(--size-target);display:flex;align-items:center}
@media (min-width: 1101px){
.rh:not([data-device]) .rh-not-wide{display:none !important}
}
.rh[data-device="desktop"] .rh-not-wide{display:none !important}
@media (max-width: 1100px){
.rh:not([data-device]) .rh-only-wide{display:none !important}
.rh:not([data-device]) .rh-header>.rh-viewas,.rh:not([data-device]) .rh-header>.rh-viewas-form{display:none}
.rh:not([data-device]) .rh-pop--konto:has(.rh-viewas){width:var(--pop-w-viewas)}
}
.rh[data-device="tablet"] .rh-only-wide,.rh[data-device="phone"] .rh-only-wide{display:none !important}
.rh[data-device="tablet"] .rh-header>.rh-viewas,.rh[data-device="tablet"] .rh-header>.rh-viewas-form,.rh[data-device="phone"] .rh-header>.rh-viewas,.rh[data-device="phone"] .rh-header>.rh-viewas-form{display:none}
.rh[data-device="tablet"] .rh-pop--konto:has(.rh-viewas),.rh[data-device="phone"] .rh-pop--konto:has(.rh-viewas){width:var(--pop-w-viewas)}
@media (max-width: 640px){
.rh:not([data-device]) .rh-table--auto .rh-td .rh-badge{white-space:nowrap;overflow-wrap:normal;flex:none}
.rh:not([data-device]) .rh-pop--cell[popover]{position-area:none;inset:auto var(--space-12) var(--space-12);width:auto;margin:0}
.rh:not([data-device]) .rh-pop--konto:has(.rh-viewas){left:var(--space-12);width:auto}
.rh:not([data-device]) .rh-toast__close{min-width:var(--size-target)}
.rh:not([data-device]) .rh-upload__file{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"ico name x" ". stat x";align-items:start}
.rh:not([data-device]) .rh-upload__file>.ms{margin-top:var(--space-2)}
.rh:not([data-device]) .rh-actionreason{flex-direction:column;align-items:stretch}
.rh:not([data-device]) .rh-actionreason__text{flex:0 0 auto}
.rh:not([data-device]) .rh-actionreason .rh-btn{width:100%}
.rh:not([data-device]) .rh-table--dense{display:block;width:max-content;min-width:100%}
.rh:not([data-device]) .rh-table--dense>[role="rowgroup"]{display:block}
.rh:not([data-device]) .rh-table--dense>.rh-thead{position:sticky;top:0;z-index:var(--z-sticky-head)}
.rh:not([data-device]) .rh-table--dense>.rh-tsum{position:sticky;bottom:0;z-index:var(--z-sticky-head)}
.rh:not([data-device]) .rh-table--dense .rh-thead .rh-th,.rh:not([data-device]) .rh-table--dense .rh-tsum .rh-td{position:static}
.rh:not([data-device]) .rh-table--dense .rh-thead .rh-th.is-sticky,.rh:not([data-device]) .rh-table--dense .rh-tsum .rh-td.is-sticky{position:sticky;left:0}
.rh:not([data-device]) .rh-table--dense .rh-tr{display:grid;grid-auto-flow:column;grid-template-columns:max(var(--plan-name-min-phone),calc(100cqi - var(--plan-col)));grid-auto-columns:var(--plan-col)}
.rh:not([data-device]) .rh-table--dense :is(.rh-th,.rh-td){display:flex;align-items:center;width:auto;min-width:0}
.rh:not([data-device]) .rh-table--dense :is(.rh-th,.rh-td).is-num{justify-content:flex-end}
.rh:not([data-device]) .rh-table--dense :is(.rh-th,.rh-td):first-child{order:-2;min-width:0}
.rh:not([data-device]) .rh-table--dense :is(.rh-th,.rh-td).is-sticky-end{order:-1;box-shadow:inset -2px 0 0 var(--line-strong)}
.rh:not([data-device]) .rh-table--dense :is(.rh-th,.rh-td).is-sticky-end::before{content:none}
.rh:not([data-device]) .rh-table--dense .rh-td{height:var(--plan-row-phone)}
.rh:not([data-device]) .rh-table--dense .rh-tsum .rh-td:first-child,.rh:not([data-device]) .rh-table--dense .rh-thead .rh-th{font-size:var(--fs-caption);line-height:var(--lh-title)}
.rh:not([data-device]) .rh-tablewrap:has(>.rh-table--dense){max-height:calc(var(--size-th) + (var(--plan-rows) + 1) * var(--plan-row-phone));scroll-padding:var(--size-th) 0 var(--plan-row-phone) 0}
.rh:not([data-device]) .rh-table--dense .rh-tr[aria-level="2"]>.rh-td:first-child{--rh-ebene:var(--space-12)}
.rh:not([data-device]) .rh-table--dense .rh-tr[aria-level="3"]>.rh-td:first-child{--rh-ebene:calc(2 * var(--space-12))}
.rh:not([data-device]) .rh-table--dense[role="treegrid"] .rh-td:first-child{padding-left:calc(var(--space-4) + var(--rh-ebene) + var(--size-target))}
.rh:not([data-device]) .rh-table--dense .rh-td:first-child>:is(.rh-treebtn--edit,.rh-treebtn--view){left:0;right:0;top:0;bottom:0;width:auto;height:auto;transform:none;display:flex;align-items:center;justify-content:flex-end;padding:0 var(--space-4) 0 0;border-radius:0;background:transparent;color:var(--text-2);z-index:auto}
.rh:not([data-device]) .rh-table--dense .rh-td:first-child:has(>.rh-treebtn--edit){padding-right:calc(var(--icon-sm) + var(--space-8))}
.rh:not([data-device]) .rh-table--dense :is(.rh-td__label,.rh-td__text){font-size:var(--fs-meta);overflow-wrap:normal}
.rh:not([data-device]) .rh-table--dense :is(.rh-td__label,.rh-td__text){text-overflow:ellipsis}
.rh:not([data-device]) .rh-filterrow__summary .rh-btn{flex:none}
}
.rh[data-device="phone"] .rh-table--auto .rh-td .rh-badge{white-space:nowrap;overflow-wrap:normal;flex:none}
.rh[data-device="phone"] .rh-pop--cell[popover]{position-area:none;inset:auto var(--space-12) var(--space-12);width:auto;margin:0}
.rh[data-device="phone"] .rh-pop--konto:has(.rh-viewas){left:var(--space-12);width:auto}
.rh[data-device="phone"] .rh-toast__close{min-width:var(--size-target)}
.rh[data-device="phone"] .rh-upload__file{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"ico name x" ". stat x";align-items:start}
.rh[data-device="phone"] .rh-upload__file>.ms{margin-top:var(--space-2)}
.rh[data-device="phone"] .rh-actionreason{flex-direction:column;align-items:stretch}
.rh[data-device="phone"] .rh-actionreason__text{flex:0 0 auto}
.rh[data-device="phone"] .rh-actionreason .rh-btn{width:100%}
.rh[data-device="phone"] .rh-table--dense{display:block;width:max-content;min-width:100%}
.rh[data-device="phone"] .rh-table--dense>[role="rowgroup"]{display:block}
.rh[data-device="phone"] .rh-table--dense>.rh-thead{position:sticky;top:0;z-index:var(--z-sticky-head)}
.rh[data-device="phone"] .rh-table--dense>.rh-tsum{position:sticky;bottom:0;z-index:var(--z-sticky-head)}
.rh[data-device="phone"] .rh-table--dense .rh-thead .rh-th,.rh[data-device="phone"] .rh-table--dense .rh-tsum .rh-td{position:static}
.rh[data-device="phone"] .rh-table--dense .rh-thead .rh-th.is-sticky,.rh[data-device="phone"] .rh-table--dense .rh-tsum .rh-td.is-sticky{position:sticky;left:0}
.rh[data-device="phone"] .rh-table--dense .rh-tr{display:grid;grid-auto-flow:column;grid-template-columns:max(var(--plan-name-min-phone),calc(100cqi - var(--plan-col)));grid-auto-columns:var(--plan-col)}
.rh[data-device="phone"] .rh-table--dense :is(.rh-th,.rh-td){display:flex;align-items:center;width:auto;min-width:0}
.rh[data-device="phone"] .rh-table--dense :is(.rh-th,.rh-td).is-num{justify-content:flex-end}
.rh[data-device="phone"] .rh-table--dense :is(.rh-th,.rh-td):first-child{order:-2;min-width:0}
.rh[data-device="phone"] .rh-table--dense :is(.rh-th,.rh-td).is-sticky-end{order:-1;box-shadow:inset -2px 0 0 var(--line-strong)}
.rh[data-device="phone"] .rh-table--dense :is(.rh-th,.rh-td).is-sticky-end::before{content:none}
.rh[data-device="phone"] .rh-table--dense .rh-td{height:var(--plan-row-phone)}
.rh[data-device="phone"] .rh-table--dense .rh-tsum .rh-td:first-child,.rh[data-device="phone"] .rh-table--dense .rh-thead .rh-th{font-size:var(--fs-caption);line-height:var(--lh-title)}
.rh[data-device="phone"] .rh-tablewrap:has(>.rh-table--dense){max-height:calc(var(--size-th) + (var(--plan-rows) + 1) * var(--plan-row-phone));scroll-padding:var(--size-th) 0 var(--plan-row-phone) 0}
.rh[data-device="phone"] .rh-table--dense .rh-tr[aria-level="2"]>.rh-td:first-child{--rh-ebene:var(--space-12)}
.rh[data-device="phone"] .rh-table--dense .rh-tr[aria-level="3"]>.rh-td:first-child{--rh-ebene:calc(2 * var(--space-12))}
.rh[data-device="phone"] .rh-table--dense[role="treegrid"] .rh-td:first-child{padding-left:calc(var(--space-4) + var(--rh-ebene) + var(--size-target))}
.rh[data-device="phone"] .rh-table--dense .rh-td:first-child>:is(.rh-treebtn--edit,.rh-treebtn--view){left:0;right:0;top:0;bottom:0;width:auto;height:auto;transform:none;display:flex;align-items:center;justify-content:flex-end;padding:0 var(--space-4) 0 0;border-radius:0;background:transparent;color:var(--text-2);z-index:auto}
.rh[data-device="phone"] .rh-table--dense .rh-td:first-child:has(>.rh-treebtn--edit){padding-right:calc(var(--icon-sm) + var(--space-8))}
.rh[data-device="phone"] .rh-table--dense :is(.rh-td__label,.rh-td__text){font-size:var(--fs-meta);overflow-wrap:normal}
.rh[data-device="phone"] .rh-table--dense :is(.rh-td__label,.rh-td__text){text-overflow:ellipsis}
.rh[data-device="phone"] .rh-filterrow__summary .rh-btn{flex:none}

/* ===== Reduzierte Bewegung: kein Schimmern, kein Gleiten ===== */
@media (prefers-reduced-motion: reduce){
  .rh *,.rh *::before,.rh *::after{transition:none !important;animation:none !important;scroll-behavior:auto !important}
}


/* ===== KNIPEX Web 1.7: W1_S8 S1–S4, additive Portal-Erweiterung ===== */
body.rh.is-portal,body.rh.is-embed{
 --size-btn:var(--size-target);
 --size-btn-sm:var(--size-target);
 --size-input:var(--size-target);
 --size-input-sm:var(--size-target);
 --size-search:var(--size-target);
 --size-iconbtn:var(--size-target);
 --size-tab:var(--size-target);
 --radius-portal-surface:var(--portal-radius);
 --header-h:var(--portal-header-h);
 background:var(--portal-bg);color:var(--text);min-height:100vh;margin:0;
}
body.rh:is(.is-portal,.is-embed) :is(.rh-card,.rh-tablecard,.rh-panel){border-radius:var(--radius-portal-surface)}
body.rh:is(.is-portal,.is-embed) .rh-nav{display:none}
/* Portal controls retain the 44 px target at every viewport and density. */
body.rh:is(.is-portal,.is-embed) .rh-search{height:auto;min-height:var(--size-target)}
body.rh:is(.is-portal,.is-embed) .rh-search input{min-height:var(--size-target)}
body.rh:is(.is-portal,.is-embed) :is(summary,a.rh-link,button.rh-chip,.rh-chip__x){min-height:var(--size-target)}
body.rh:is(.is-portal,.is-embed) a.rh-link{display:inline-flex;align-items:center}
body.rh:is(.is-portal,.is-embed),body.rh:is(.is-portal,.is-embed) *{hyphens:none;word-break:normal}
body.rh:is(.is-portal,.is-embed) :is(.rh-portalheader,.rh-tabs,.rh-bottomnav,.rh-stepper,.rh-selbar),body.rh:is(.is-portal,.is-embed) :is(.rh-portalheader,.rh-tabs,.rh-bottomnav,.rh-stepper,.rh-selbar) *{text-overflow:clip;overflow-wrap:normal}
body.rh:is(.is-portal,.is-embed) .rh-bottomnav__label{overflow:visible;white-space:normal}

.rh-skiplink{position:fixed;top:0;left:var(--space-16);transform:translateY(-150%);z-index:var(--z-datepicker);background:var(--surface);color:var(--text);padding:var(--space-12) var(--space-16)}
.rh-skiplink:focus-visible{transform:none;min-height:var(--size-target);display:flex;align-items:center}
header.rh-portalheader{box-sizing:border-box;min-height:var(--portal-header-h);padding:var(--space-8) var(--space-24);background:var(--portal-header-bg);color:var(--portal-header-text);border-top:var(--size-brand-edge) solid var(--red);display:flex;align-items:center;gap:var(--space-16);flex-wrap:wrap;position:sticky;top:0;z-index:var(--z-header)}
.rh-portalheader__brand{display:flex;align-items:center;flex:0 0 auto;color:var(--portal-header-text);min-height:var(--size-target)}
.rh-portalheader__title{font-size:var(--fs-title);font-weight:var(--fw-strong);line-height:var(--lh-title)}
.rh-portalheader__context{color:var(--portal-header-muted);flex:1 1 0;min-width:0}
.rh-portalheader :is(.rh-portalheader__title,.rh-portalheader__context){white-space:normal;word-break:normal;overflow-wrap:normal;hyphens:none}
.rh-portalheader__tools{display:flex;align-items:center;gap:var(--space-8);flex-wrap:wrap;min-width:0;max-width:100%;margin-left:auto}
.rh-portalheader__btn,.rh-portalheader__select,.rh-portalheader__link{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:var(--size-target);min-width:var(--size-target);max-width:100%;padding:var(--space-8);border:1px solid var(--portal-header-muted);border-radius:var(--radius-sm);background:var(--portal-header-bg);color:var(--portal-header-text);white-space:normal}
.rh-portalheader__select option{background:var(--portal-header-bg);color:var(--portal-header-text)}
.rh-portalheader :focus-visible{outline:2px solid var(--focus-on-dark);outline-offset:var(--space-2)}
main.rh-portalmain{box-sizing:border-box;width:100%;max-width:var(--page-max);margin-inline:auto;padding:var(--space-24);min-width:0}
main.rh-portalmain--wide{max-width:var(--page-wide)}
body.rh.is-portal .rh-filterrow--sticky{top:var(--header-h);background:var(--portal-bg)}
body.rh.is-embed :is(.rh-portalheader,.rh-bottomnav){display:none!important}
body.rh.is-embed main.rh-portalmain{padding-top:var(--space-16);padding-bottom:var(--space-24)}
body.rh.is-embed .rh-filterrow--sticky{top:0;background:var(--portal-bg)}
body.rh.is-embed section.rh-selbar{bottom:env(safe-area-inset-bottom,0px)}
body.rh.has-open-panel{overflow:hidden}
body.rh.has-open-panel .rh-selbar{pointer-events:none}
.rh-panel[hidden],.rh-sheet[hidden],[data-filter-sheet][hidden]{display:none!important}
[data-density="compact"]{--portal-header-h:var(--portal-header-h-compact);--portal-header-h-phone:var(--portal-header-h-phone-compact);--selbar-h:var(--selbar-h-compact);--stepper-icon:var(--stepper-icon-compact);--stepper-gap:var(--stepper-gap-compact);--portal-step-line:var(--portal-step-line-compact)}
/* S2: status is encoded by text and icon as well as semantic colour. */
ol.rh-stepper{display:flex;align-items:flex-start;gap:var(--stepper-gap);list-style:none;margin:0;padding:var(--space-16) 0}
li.rh-stepper__step{display:flex;align-items:center;flex:1 1 0;gap:var(--space-8);min-width:0;color:var(--text-2)}
.rh-stepper__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--stepper-icon);height:var(--stepper-icon);border:1px solid var(--line-strong);border-radius:var(--radius-round);background:var(--surface-2);color:var(--text-2)}
.rh-stepper__label{line-height:var(--portal-step-line);white-space:normal;word-break:normal;hyphens:none}
.rh-stepper__connector{height:2px;flex:1 1 var(--space-16);background:var(--line-strong)}
.rh-stepper .is-complete .rh-stepper__icon{background:var(--ok-soft);color:var(--ok-text);border-color:var(--ok-line)}
.rh-stepper .is-complete{color:var(--ok-text)}
.rh-stepper .is-complete .rh-stepper__connector{background:var(--ok)}
.rh-stepper .is-current,.rh-stepper [aria-current="step"]{color:var(--info-text);font-weight:var(--fw-strong)}
.rh-stepper .is-current .rh-stepper__icon,.rh-stepper [aria-current="step"] .rh-stepper__icon{background:var(--info-soft);color:var(--info-text);border-color:var(--info-line)}
.rh-stepper .is-current .rh-stepper__connector{background:var(--info)}
.rh-stepper .is-pending .rh-stepper__icon{background:var(--surface-2);color:var(--text-2);border-color:var(--line-strong)}
.rh-stepper.rh-stepper--cancelled .rh-stepper__step{color:var(--err-text)}
.rh-stepper.rh-stepper--cancelled .rh-stepper__step .rh-stepper__icon{background:var(--err-soft);color:var(--err-text);border-color:var(--err-line)}
.rh-stepper.rh-stepper--return .rh-stepper__step{color:var(--warn-text)}
.rh-stepper.rh-stepper--return .rh-stepper__step .rh-stepper__icon{background:var(--warn-soft);color:var(--warn-text);border-color:var(--warn-line)}
.rh-stepper.rh-stepper--return .rh-stepper__step .rh-stepper__connector{background:var(--info-line)}
.rh-stepper--cancelled .rh-stepper__connector{display:none}
.rh-stepper__more{display:none}
.rh-stepper__more summary{min-height:var(--size-target);padding:var(--space-12);cursor:pointer;color:var(--info-text);background:var(--surface)}
/* S3: intrinsic height; one clearance for content and toast, measured in the external stylesheet via CSSOM. */
body.rh:is(.is-portal,.is-embed){--selbar-padding:var(--space-16);--selbar-gap:var(--space-12);--selbar-clearance:var(--selbar-h)}
body.rh:is(.is-portal,.is-embed)[data-density="compact"],body.rh:is(.is-portal,.is-embed):has([data-density="compact"] .rh-selbar){--selbar-padding:var(--space-12);--selbar-gap:var(--space-8)}
body.rh.has-selbar:is(.is-portal,.is-embed) .rh-toast,body.rh:is(.is-portal,.is-embed):has(.rh-selbar:not([hidden])) .rh-toast{bottom:calc(env(safe-area-inset-bottom,0px) + var(--selbar-clearance) + var(--space-12))}
body.rh.is-portal.has-selbar main.rh-portalmain,body.rh.is-portal:has(.rh-selbar:not([hidden])) main.rh-portalmain,body.rh.is-embed.has-selbar main.rh-portalmain,body.rh.is-embed:has(.rh-selbar:not([hidden])) main.rh-portalmain{padding-bottom:calc(var(--selbar-clearance) + env(safe-area-inset-bottom,0px))}
.rh-selbar__more{display:none}
.rh-selbar__more[open]{overflow:visible}
.rh-selbar__more>.rh-pop{top:auto;bottom:calc(100% + var(--space-8))}
section.rh-selbar{anchor-name:--rh-selbar;box-sizing:border-box;position:sticky;bottom:0;z-index:var(--z-savebar);min-height:var(--selbar-h);overflow:visible;padding:var(--space-16);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-12);background:var(--surface);color:var(--text);border-top:1px solid var(--line-strong);box-shadow:var(--shadow-lg);width:100%}
section.rh-selbar[hidden]{display:none!important}
.rh-selbar__summary{min-width:0;white-space:normal;word-break:normal}
.rh-selbar__actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-8);min-width:0;max-width:100%}
.rh-selbar__actions :is(button,a){min-height:var(--size-target);min-width:var(--size-target);max-width:100%;white-space:normal}
[data-density="compact"] section.rh-selbar{padding:var(--space-12);gap:var(--space-8)}
.rh-prodthumb{box-sizing:border-box;width:var(--portal-prodthumb);height:var(--portal-prodthumb);object-fit:contain;background:var(--inverse-surface);border:1px solid var(--line);border-radius:var(--radius-sm);flex-shrink:0}
.rh-prodthumb--fallback{display:inline-flex;align-items:center;justify-content:center;background:var(--surface-2);color:var(--text-2)}
@media (max-width:1100px){
 header.rh-portalheader{gap:var(--space-8)}
 .rh-portalheader__tools{flex-basis:100%;margin-left:0}
 main.rh-portalmain{padding:var(--space-20)}
 /* Header grows intrinsically when tools occupy a second row. */
 body.rh.is-portal .rh-filterrow--sticky{position:static}
}
@media (min-width:360px) and (max-width:640px){
 ol.rh-stepper:not(.rh-stepper--return):not(.rh-stepper--cancelled)>.rh-stepper__step:not(.is-current):not([aria-current="step"]){display:none}
 .rh-stepper__more{display:block}
 .rh-stepper__more ol.rh-stepper{flex-direction:column}
 .rh-stepper__more ol.rh-stepper>.rh-stepper__step{display:flex!important}
 .rh-stepper__connector{display:none}
}
@media (max-width:640px){
 body.rh:is(.is-portal,.is-embed){--selbar-clearance:calc(2 * var(--size-target) + 2 * var(--selbar-padding) + var(--selbar-gap) + 2px)}
 body.rh.is-portal .rh-bottomnav{height:calc(var(--bottomnav-h) + env(safe-area-inset-bottom,0px));min-height:calc(var(--bottomnav-h) + env(safe-area-inset-bottom,0px));padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));box-sizing:border-box}
 body.rh.is-portal.has-selbar .rh-toast,body.rh.is-portal:has(.rh-selbar:not([hidden])) .rh-toast{bottom:calc(var(--bottomnav-clearance) + env(safe-area-inset-bottom,0px) + var(--selbar-clearance) + var(--space-12))}
 body.rh.is-portal{--header-h:var(--portal-header-h-phone)}
 header.rh-portalheader{min-height:var(--portal-header-h-phone);padding:var(--space-12) var(--space-16);gap:var(--space-8)}
 .rh-portalheader__context{flex-basis:60%}
 .rh-portalheader__tools{flex-basis:100%}
 main.rh-portalmain{padding:var(--space-16)}
 body.rh.is-portal main.rh-portalmain{padding-bottom:calc(var(--bottomnav-clearance) + env(safe-area-inset-bottom,0px))}
 body.rh.is-portal.has-selbar main.rh-portalmain,body.rh.is-portal:has(.rh-selbar:not([hidden])) main.rh-portalmain{padding-bottom:calc(var(--bottomnav-clearance) + var(--selbar-clearance) + env(safe-area-inset-bottom,0px))}
 body.rh.is-portal section.rh-selbar{bottom:calc(var(--bottomnav-h) + env(safe-area-inset-bottom,0px))}
 section.rh-selbar{flex-direction:column;align-items:stretch}
 .rh-selbar__actions>*{flex:1 1 auto}
 .rh-selbar__actions:has(.rh-selbar__more) .rh-selbar__secondary{display:none}
 .rh-selbar__more{display:inline-block}
 body.rh.is-embed .rh-filterrow--sticky{position:sticky;top:0}
}
@media (max-width:359px){
 ol.rh-stepper{flex-direction:column;align-items:stretch}
 li.rh-stepper__step{flex-basis:auto}
 .rh-stepper__connector{display:none}
 .rh-stepper__more{display:none}
 .rh-portalheader__context{flex-basis:100%}
}
/* CSSOM measurements override responsive defaults without DOM style attributes. */
body.rh[data-selbar-ready="1"]{--selbar-clearance:var(--selbar-h)}
@supports (bottom:anchor(top)){
 body.rh.has-selbar:is(.is-portal,.is-embed) .rh-toast,body.rh:is(.is-portal,.is-embed):has(.rh-selbar:not([hidden])) .rh-toast{position-anchor:--rh-selbar;bottom:calc(anchor(top) + var(--space-12))}
}
/* Paper is intentionally opaque white, independent of the selected theme. */
@media print{
 .rh-portalheader,.rh-bottomnav,.rh-selbar,.rh-scrim,.rh-no-print{display:none!important}
 body.rh:is(.is-portal,.is-embed),body.rh main.rh-portalmain{background:#FFFFFF!important;color:var(--inverse-text)!important;padding:0!important;margin:0!important;max-width:none}
 body.rh:is(.is-portal,.is-embed){--surface:#FFFFFF;--surface-2:#FFFFFF;--text:var(--inverse-text);--text-2:var(--inverse-text);--portal-bg:#FFFFFF}
 tr,.rh-tr,.rh-card{break-inside:avoid;page-break-inside:avoid}
}
