/* RT-Kundenportal 5.1.0-alpha.60
   Strukturelles Flat-Layout und Token-Anbindung.
   Keine parallele Token-Autorität: Komponentenregeln liegen in theme-runtime.css,
   Tokenwerte kommen als feste Code-Defaults inline über rtkp_theme_assets_html().
   Diese Datei wird nach den Basis-Stylesheets und vor theme-runtime geladen. */

:root{
    --rtkp-shadow:none;
    --rtkp-shadow-hover:none;
    --rtkp-card-shadow:none;
    --bs-box-shadow:none;
    --bs-box-shadow-sm:none;
    --bs-box-shadow-lg:none;
    --bs-box-shadow-inset:none;
}

/* Dekorative Schatten deaktivieren. Funktionale Overlays des Guides bleiben erhalten. */
body.rtkp-ui-51 :where(
    .card,.panel,.stat,.overview-card,.metric-card,.rtkp-metric-card,
    .auth-card,.install-card,.modal-card,.modal-content,.dropdown-menu,
    .offcanvas,.toast,.popover,.table-responsive,.rtkp-table-card,
    .external-target-card,.backup-card,.notification-item,.message-bubble,
    .rtkp-design-card,.rtkp-design-preview-card,.rtkp-design-health-result
),
body.embedded-page :where(
    .card,.panel,.stat,.overview-card,.metric-card,.rtkp-metric-card,
    .modal-card,.modal-content,.dropdown-menu,.offcanvas,.toast,.popover,
    .table-responsive,.rtkp-table-card,.external-target-card,.backup-card,
    .notification-item,.message-bubble,.rtkp-design-card,.rtkp-design-preview-card
),
body.auth-bg :where(.auth-card,.install-card,.card,.panel),
.rtkp-ui-51 :where(.btn,button,.form-control,.form-select,input,select,textarea),
body.embedded-page :where(.btn,button,.form-control,.form-select,input,select,textarea){
    box-shadow:none!important;
}

.rtkp-ui-51 article.card,
.rtkp-ui-51 article.card:hover,
.rtkp-ui-51 .card:hover,
body.embedded-page .card:hover{
    transform:none!important;
    box-shadow:none!important;
}

/* Flächen und Textfarben konsequent an das Designsystem anbinden. */
body.rtkp-ui-51,
body.embedded-page,
body.auth-bg{
    color:var(--rt-text-body,#333)!important;
}

.rtkp-ui-51 :where(.card,.panel,.modal-card,.modal-content,.rtkp-section-body,.table-responsive),
body.embedded-page :where(.card,.panel,.modal-card,.modal-content,.rtkp-section-body,.table-responsive){
    color:var(--rt-text-body,#333)!important;
}

.rtkp-ui-51 :where(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.card-title,.panel-title),
body.embedded-page :where(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.card-title,.panel-title){
    color:var(--rt-text-heading,#1d2b3c)!important;
}

.rtkp-ui-51 :where(.text-muted,.text-body-secondary,.muted,.small,small,.form-text,.help-text),
body.embedded-page :where(.text-muted,.text-body-secondary,.muted,.small,small,.form-text,.help-text){
    color:var(--rt-text-muted,#667085)!important;
}

.rtkp-ui-51 a:not(.btn):not(.nav-link):not(.list-group-item),
body.embedded-page a:not(.btn):not(.nav-link):not(.list-group-item){
    color:var(--rt-text-link,#00538f)!important;
}

/* Formulare: Farbe, Border, Radius und Padding aus den gespeicherten Werten. */
.rtkp-ui-51 :where(.form-control,.form-select,textarea.form-control,input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]),select,textarea),
body.embedded-page :where(.form-control,.form-select,textarea.form-control,input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]),select,textarea){
    background-color:var(--rt-control-background,#fff)!important;
    color:var(--rt-control-text,#222)!important;
    border-color:var(--rt-control-border,#cfd7e3)!important;
    border-width:var(--rt-control-border-width,1px)!important;
    border-style:var(--rt-control-border-style,solid)!important;
    border-radius:var(--rt-control-border-radius,10px)!important;
    padding:var(--rt-control-padding-y,10px) var(--rt-control-padding-x,12px)!important;
}

.rtkp-ui-51 :where(input,textarea,.form-control)::placeholder,
body.embedded-page :where(input,textarea,.form-control)::placeholder{
    color:var(--rt-control-placeholder,#7c8797)!important;
    opacity:1!important;
}

.rtkp-ui-51 :where(.form-control,.form-select,input,select,textarea):focus,
body.embedded-page :where(.form-control,.form-select,input,select,textarea):focus{
    border-color:var(--rt-control-focus-border,#006ab5)!important;
    box-shadow:none!important;
    outline:2px solid var(--rt-control-focus-ring,#83bfe8)!important;
    outline-offset:2px!important;
}

.rtkp-ui-51 .input-group-text,
body.embedded-page .input-group-text{
    background:var(--rt-control-disabled-background,#f1f3f5)!important;
    color:var(--rt-control-text,#222)!important;
    border-color:var(--rt-control-border,#cfd7e3)!important;
    border-width:var(--rt-control-border-width,1px)!important;
    border-style:var(--rt-control-border-style,solid)!important;
    padding:var(--rt-control-padding-y,10px) var(--rt-control-padding-x,12px)!important;
}

/* Buttons: dynamische Werte auch gegen spätere statische Styles priorisieren. */
.rtkp-ui-51 :where(.btn,a.btn,input[type="submit"].btn,input[type="button"].btn),
body.embedded-page :where(.btn,a.btn,input[type="submit"].btn,input[type="button"].btn){
    padding:var(--rt-button-padding-y,9px) var(--rt-button-padding-x,15px)!important;
    border-width:var(--rt-button-border-width,1px)!important;
    border-style:var(--rt-button-border-style,solid)!important;
    border-radius:var(--rt-button-border-radius,10px)!important;
    box-shadow:none!important;
}

.rtkp-ui-51 .btn-primary,
body.embedded-page .btn-primary{
    background-color:var(--rt-button-primary-background,#006ab5)!important;
    color:var(--rt-button-primary-text,#fff)!important;
    border-color:var(--rt-button-primary-border,#006ab5)!important;
}
.rtkp-ui-51 .btn-primary:hover,
.rtkp-ui-51 .btn-primary:focus-visible,
body.embedded-page .btn-primary:hover,
body.embedded-page .btn-primary:focus-visible{
    background-color:var(--rt-button-primary-hover-background,#00538f)!important;
    color:var(--rt-button-primary-hover-text,#fff)!important;
    border-color:var(--rt-button-primary-hover-border,#00538f)!important;
}
.rtkp-ui-51 :where(.btn-secondary,.btn-light),
body.embedded-page :where(.btn-secondary,.btn-light){
    background-color:var(--rt-button-secondary-background,#fff)!important;
    color:var(--rt-button-secondary-text,#333)!important;
    border-color:var(--rt-button-secondary-border,#cfd7e3)!important;
}
.rtkp-ui-51 :where(.btn-secondary,.btn-light):hover,
.rtkp-ui-51 :where(.btn-secondary,.btn-light):focus-visible,
body.embedded-page :where(.btn-secondary,.btn-light):hover,
body.embedded-page :where(.btn-secondary,.btn-light):focus-visible{
    background-color:var(--rt-button-secondary-hover-background,#f3f6f9)!important;
    color:var(--rt-button-secondary-hover-text,#1d2b3c)!important;
    border-color:var(--rt-button-secondary-hover-border,#aeb9c8)!important;
}
.rtkp-ui-51 .btn-outline-secondary,
body.embedded-page .btn-outline-secondary{
    background-color:transparent!important;
    color:var(--rt-button-secondary-text,#333)!important;
    border-color:var(--rt-button-secondary-border,#cfd7e3)!important;
}
.rtkp-ui-51 .btn-outline-secondary:hover,
.rtkp-ui-51 .btn-outline-secondary:focus-visible,
body.embedded-page .btn-outline-secondary:hover,
body.embedded-page .btn-outline-secondary:focus-visible{
    background-color:var(--rt-button-secondary-hover-background,#f3f6f9)!important;
    color:var(--rt-button-secondary-hover-text,#1d2b3c)!important;
    border-color:var(--rt-button-secondary-hover-border,#aeb9c8)!important;
}
.rtkp-ui-51 .btn-danger,
body.embedded-page .btn-danger{
    background-color:var(--rt-button-danger-background,#c22515)!important;
    color:var(--rt-button-danger-text,#fff)!important;
    border-color:var(--rt-button-danger-border,#c22515)!important;
}
.rtkp-ui-51 .btn-danger:hover,
.rtkp-ui-51 .btn-danger:focus-visible,
body.embedded-page .btn-danger:hover,
body.embedded-page .btn-danger:focus-visible{
    background-color:var(--rt-button-danger-hover-background,#9f1e12)!important;
    color:var(--rt-button-danger-hover-text,#fff)!important;
    border-color:var(--rt-button-danger-hover-border,#9f1e12)!important;
}
.rtkp-ui-51 .btn-outline-danger,
body.embedded-page .btn-outline-danger{
    background-color:transparent!important;
    color:var(--rt-button-danger-background,#c22515)!important;
    border-color:var(--rt-button-danger-border,#c22515)!important;
}
.rtkp-ui-51 .btn-outline-danger:hover,
.rtkp-ui-51 .btn-outline-danger:focus-visible,
body.embedded-page .btn-outline-danger:hover,
body.embedded-page .btn-outline-danger:focus-visible{
    background-color:var(--rt-button-danger-hover-background,#9f1e12)!important;
    color:var(--rt-button-danger-hover-text,#fff)!important;
    border-color:var(--rt-button-danger-hover-border,#9f1e12)!important;
}

/* Tabellen: alle Zellen verwenden dieselben gespeicherten Farben und Abstände. */
.rtkp-ui-51 :where(.table,table),
body.embedded-page :where(.table,table){
    color:var(--rt-table-body-text,#333)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    --bs-table-bg:var(--rt-table-body-background,#fff);
    --bs-table-color:var(--rt-table-body-text,#333);
    --bs-table-border-color:var(--rt-table-border,#dfe5ec);
    --bs-table-hover-bg:var(--rt-table-hover-background,#f7fafc);
    --bs-table-hover-color:var(--rt-table-body-text,#333);
}
/* Bootstrap 5.3 zeichnet Tabellenzellen zusätzlich mit einem sehr großen
   inneren Box-Shadow. Dieser überdeckte die im Designeditor gewählte Farbe
   des Tabellenkopfs. Kopfzellen erhalten deshalb eigene Bootstrap-Variablen
   und der Zell-Overlay wird dort ausdrücklich deaktiviert. */
.rtkp-ui-51 :where(.table,table) > thead,
body.embedded-page :where(.table,table) > thead{
    --bs-table-bg:var(--rt-table-header-background,#f4f6f8);
    --bs-table-accent-bg:var(--rt-table-header-background,#f4f6f8);
    --bs-table-striped-bg:var(--rt-table-header-background,#f4f6f8);
    --bs-table-active-bg:var(--rt-table-header-background,#f4f6f8);
    --bs-table-hover-bg:var(--rt-table-header-background,#f4f6f8);
    --bs-table-color:var(--rt-table-header-text,#566579);
}
.rtkp-ui-51 :where(.table,table) > thead > tr > :where(th,td),
body.embedded-page :where(.table,table) > thead > tr > :where(th,td),
.rtkp-ui-51 .rtkp-table-surface :where(.table,table) > thead > tr > :where(th,td),
body.embedded-page .rtkp-table-surface :where(.table,table) > thead > tr > :where(th,td){
    --bs-table-bg:var(--rt-table-header-background,#f4f6f8);
    --bs-table-accent-bg:var(--rt-table-header-background,#f4f6f8);
    --bs-table-bg-state:transparent;
    --bs-table-bg-type:transparent;
    background:var(--rt-table-header-background,#f4f6f8)!important;
    background-color:var(--rt-table-header-background,#f4f6f8)!important;
    color:var(--rt-table-header-text,#566579)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    border-bottom-width:var(--rt-table-border-width,1px)!important;
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
    box-shadow:none!important;
}
.rtkp-ui-51 :where(.table,table) :where(tbody td),
body.embedded-page :where(.table,table) :where(tbody td){
    background-color:var(--rt-table-body-background,#fff)!important;
    color:var(--rt-table-body-text,#333)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    border-bottom-width:var(--rt-table-border-width,1px)!important;
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
}
.rtkp-ui-51 :where(.table-hover,table) tbody tr:hover > *,
body.embedded-page :where(.table-hover,table) tbody tr:hover > *{
    background-color:var(--rt-table-hover-background,#f7fafc)!important;
    color:var(--rt-table-body-text,#333)!important;
}
.rtkp-ui-51 .table-responsive,
body.embedded-page .table-responsive{
    padding:0!important;
    border-radius:var(--rt-table-border-radius,12px)!important;
    box-shadow:none!important;
}
.rtkp-ui-51 .table-responsive > table,
body.embedded-page .table-responsive > table{
    margin-bottom:0!important;
}

/* Badges: Varianten behalten ihre eigene Text-, Hintergrund- und Rahmenfarbe. */
.rtkp-ui-51 :where(.badge,.status-badge,.status-tag,.form-status,.user-pill,.unread-count,.traffic-label),
body.embedded-page :where(.badge,.status-badge,.status-tag,.form-status,.user-pill,.unread-count,.traffic-label){
    padding:var(--rt-badge-padding-y,5px) var(--rt-badge-padding-x,9px)!important;
    border-width:var(--rt-badge-border-width,1px)!important;
    border-style:var(--rt-badge-border-style,solid)!important;
    border-radius:var(--rt-badge-border-radius,999px)!important;
    box-shadow:none!important;
}
.rtkp-ui-51 :where(.badge.text-bg-success,.badge.bg-success,.status-tag.status-resolved,.status-tag.status-active,.status-tag.status-completed,.status-tag.status-success,.status-tag.status-answered,.traffic-label.traffic-green,.form-status.completed),
body.embedded-page :where(.badge.text-bg-success,.badge.bg-success,.status-tag.status-resolved,.status-tag.status-active,.status-tag.status-completed,.status-tag.status-success,.status-tag.status-answered,.traffic-label.traffic-green,.form-status.completed){
    background-color:var(--rt-badge-success-background,#009416)!important;
    color:var(--rt-badge-success-text,#111)!important;
    border-color:var(--rt-badge-success-border,#009416)!important;
}
.rtkp-ui-51 :where(.badge.text-bg-warning,.badge.bg-warning,.status-tag.status-open,.status-tag.status-pending,.status-tag.status-warning,.traffic-label.traffic-yellow,.form-status.assigned),
body.embedded-page :where(.badge.text-bg-warning,.badge.bg-warning,.status-tag.status-open,.status-tag.status-pending,.status-tag.status-warning,.traffic-label.traffic-yellow,.form-status.assigned){
    background-color:var(--rt-badge-warning-background,#eda509)!important;
    color:var(--rt-badge-warning-text,#222)!important;
    border-color:var(--rt-badge-warning-border,#eda509)!important;
}
.rtkp-ui-51 :where(.badge.text-bg-danger,.badge.bg-danger,.status-tag.status-failed,.status-tag.status-critical,.status-tag.status-danger,.status-tag.status-error,.traffic-label.traffic-red,.form-status.failed,.form-status.rejected,.form-status.overdue),
body.embedded-page :where(.badge.text-bg-danger,.badge.bg-danger,.status-tag.status-failed,.status-tag.status-critical,.status-tag.status-danger,.status-tag.status-error,.traffic-label.traffic-red,.form-status.failed,.form-status.rejected,.form-status.overdue){
    background-color:var(--rt-badge-danger-background,#c22515)!important;
    color:var(--rt-badge-danger-text,#fff)!important;
    border-color:var(--rt-badge-danger-border,#c22515)!important;
}
.rtkp-ui-51 :where(.badge.text-bg-info,.badge.bg-info,.status-tag.status-in_progress,.status-tag.status-processing,.status-tag.status-running,.form-status.in_progress),
body.embedded-page :where(.badge.text-bg-info,.badge.bg-info,.status-tag.status-in_progress,.status-tag.status-processing,.status-tag.status-running,.form-status.in_progress){
    background-color:var(--rt-badge-info-background,#d9efff)!important;
    color:var(--rt-badge-info-text,#004a78)!important;
    border-color:var(--rt-badge-info-border,#8cc8ef)!important;
}
.rtkp-ui-51 :where(.badge.text-bg-secondary,.badge.bg-secondary,.status-tag.status-archived,.status-tag.status-draft,.status-tag.status-inactive,.status-tag.status-disabled,.traffic-label.traffic-gray,.form-status.draft,.form-status.archived),
body.embedded-page :where(.badge.text-bg-secondary,.badge.bg-secondary,.status-tag.status-archived,.status-tag.status-draft,.status-tag.status-inactive,.status-tag.status-disabled,.traffic-label.traffic-gray,.form-status.draft,.form-status.archived){
    background-color:var(--rt-badge-secondary-background,#667085)!important;
    color:var(--rt-badge-secondary-text,#fff)!important;
    border-color:var(--rt-badge-secondary-border,#667085)!important;
}
.rtkp-ui-51 :where(.badge.text-bg-primary,.badge.bg-primary,.unread-count),
body.embedded-page :where(.badge.text-bg-primary,.badge.bg-primary,.unread-count){
    background-color:var(--rt-badge-primary-background,#006ab5)!important;
    color:var(--rt-badge-primary-text,#fff)!important;
    border-color:var(--rt-badge-primary-border,#006ab5)!important;
}
.rtkp-ui-51 :where(.badge.text-bg-dark,.badge.bg-dark),
body.embedded-page :where(.badge.text-bg-dark,.badge.bg-dark){
    background-color:var(--rt-badge-dark-background,#333)!important;
    color:var(--rt-badge-dark-text,#fff)!important;
    border-color:var(--rt-badge-dark-border,#333)!important;
}
.rtkp-ui-51 :where(.badge.text-bg-light,.badge.bg-light,.badge:not([class*="text-bg-"]):not([class*="bg-"]),.form-status:not(.completed):not(.assigned):not(.failed):not(.rejected):not(.overdue):not(.in_progress)),
body.embedded-page :where(.badge.text-bg-light,.badge.bg-light,.badge:not([class*="text-bg-"]):not([class*="bg-"]),.form-status:not(.completed):not(.assigned):not(.failed):not(.rejected):not(.overdue):not(.in_progress)){
    background-color:var(--rt-badge-light-background,#f4f6f8)!important;
    color:var(--rt-badge-light-text,#333)!important;
    border-color:var(--rt-badge-light-border,#dce2ea)!important;
}

/* Kartenpadding wird seit 5.1.0-alpha.32 ausschließlich über die
   zentralen Layoutvariablen am Dateiende gesteuert. */


/* 5.1.0-alpha.25 – finale Flatdesign- und Tabellenstabilisierung. */
:root{
    --bs-btn-box-shadow:none;
    --bs-btn-focus-box-shadow:none;
    --bs-btn-active-box-shadow:none;
    --bs-form-control-box-shadow:none;
    --bs-form-select-box-shadow:none;
    --bs-focus-ring-box-shadow:none;
}

/* Alle dekorativen Schatten zentral abschalten. Der Spotlight-Schatten des
   interaktiven Guides bleibt als funktionale Abdunklung erhalten. */
body.rtkp-ui-51 *:not(.rtkp-tour-spotlight),
body.embedded-page *:not(.rtkp-tour-spotlight),
body.auth-bg *:not(.rtkp-tour-spotlight){
    box-shadow:none!important;
    text-shadow:none!important;
}

/* Flache Oberflächen werden ausschließlich über Fläche, Rahmen und Abstand
   getrennt. Dadurch bleiben auch nachgelagerte Seitenstile konsistent. */
body.rtkp-ui-51 :where(
    .card,.panel,.stat,.overview-card,.metric-card,.rtkp-metric-card,
    .rtkp-section-card,.rtkp-table-card,.table-responsive,.external-target-card,
    .backup-card,.auth-card,.install-card,.modal-card,.modal-content
),
body.embedded-page :where(
    .card,.panel,.stat,.overview-card,.metric-card,.rtkp-metric-card,
    .rtkp-section-card,.rtkp-table-card,.table-responsive,.external-target-card,
    .backup-card,.modal-card,.modal-content
),
body.auth-bg :where(.card,.panel,.auth-card,.install-card){
    border-color:var(--rtkp-border,var(--rt-table-border,#dfe5ec))!important;
}

/* Bootstrap-Zelloverlays sowie Statusklassen dürfen gespeicherte Tabellenfarben
   nicht mehr überdecken. Die Regel umfasst auch Zeilenköpfe und Fußzeilen. */
.rtkp-ui-51 :where(.table,table) > :not(caption) > * > *,
body.embedded-page :where(.table,table) > :not(caption) > * > *{
    box-shadow:none!important;
    background-image:none!important;
}

.rtkp-ui-51 :where(.table,table) > tbody > tr > :where(th,td),
body.embedded-page :where(.table,table) > tbody > tr > :where(th,td){
    --bs-table-bg:var(--rt-table-body-background,#fff);
    --bs-table-accent-bg:var(--rt-table-body-background,#fff);
    --bs-table-bg-state:transparent;
    --bs-table-bg-type:transparent;
    background:var(--rt-table-body-background,#fff)!important;
    background-color:var(--rt-table-body-background,#fff)!important;
    color:var(--rt-table-body-text,#333)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    border-bottom-width:var(--rt-table-border-width,1px)!important;
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
}

.rtkp-ui-51 :where(.table,table) > tfoot > tr > :where(th,td),
body.embedded-page :where(.table,table) > tfoot > tr > :where(th,td){
    --bs-table-bg:var(--rt-table-body-background,#fff);
    --bs-table-accent-bg:var(--rt-table-body-background,#fff);
    background:var(--rt-table-body-background,#fff)!important;
    background-color:var(--rt-table-body-background,#fff)!important;
    color:var(--rt-table-body-text,#333)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
}

.rtkp-ui-51 :where(.table,table) > tbody > tr:hover > :where(th,td),
body.embedded-page :where(.table,table) > tbody > tr:hover > :where(th,td){
    --bs-table-bg:var(--rt-table-hover-background,#f7fafc);
    --bs-table-accent-bg:var(--rt-table-hover-background,#f7fafc);
    background:var(--rt-table-hover-background,#f7fafc)!important;
    background-color:var(--rt-table-hover-background,#f7fafc)!important;
    color:var(--rt-table-body-text,#333)!important;
}

/* Tabellencontainer besitzen kein zusätzliches Innenpadding. Das verhindert
   doppelte Abstände in Karten und strukturierten Inhaltsbereichen. */
.rtkp-ui-51 :where(.table-responsive,.rtkp-table-surface,.rtkp-table-card),
body.embedded-page :where(.table-responsive,.rtkp-table-surface,.rtkp-table-card){
    padding:0!important;
}

.rtkp-ui-51 :where(.table-responsive,.rtkp-table-surface) > :where(.table,table),
body.embedded-page :where(.table-responsive,.rtkp-table-surface) > :where(.table,table){
    width:100%!important;
    margin:0!important;
}

/* Fokus bleibt trotz schattenfreiem Design klar sichtbar. */
.rtkp-ui-51 :where(a,button,.btn,input,select,textarea,[tabindex]):focus-visible,
body.embedded-page :where(a,button,.btn,input,select,textarea,[tabindex]):focus-visible,
body.auth-bg :where(a,button,.btn,input,select,textarea,[tabindex]):focus-visible{
    outline:2px solid var(--rt-control-focus-ring,var(--rt-primary,#006ab5))!important;
    outline-offset:2px!important;
}

/* 5.1.0-alpha.29 – Schriftstärken mit gebündelten statischen Mulish-/Sora-Schnitten.
   Damit können statische Modul-Styles die gespeicherten Gewichtungen nicht mehr
   von Vorschau und produktiver Oberfläche auseinanderlaufen lassen. */
body.rtkp-ui-51,
body.embedded-page,
body.auth-bg{
    font-weight:var(--rt-font-weight-body,400)!important;
}
body.rtkp-ui-51 :where(h1,.h1),
body.embedded-page :where(h1,.h1),
body.auth-bg :where(h1,.h1){font-weight:var(--rt-font-weight-h1,600)!important}
body.rtkp-ui-51 :where(h2,.h2),
body.embedded-page :where(h2,.h2),
body.auth-bg :where(h2,.h2){font-weight:var(--rt-font-weight-h2,600)!important}
body.rtkp-ui-51 :where(h3,.h3),
body.embedded-page :where(h3,.h3),
body.auth-bg :where(h3,.h3){font-weight:var(--rt-font-weight-h3,600)!important}
body.rtkp-ui-51 :where(h4,.h4),
body.embedded-page :where(h4,.h4),
body.auth-bg :where(h4,.h4){font-weight:var(--rt-font-weight-h4,600)!important}
body.rtkp-ui-51 :where(h5,.h5),
body.embedded-page :where(h5,.h5),
body.auth-bg :where(h5,.h5){font-weight:var(--rt-font-weight-h5,600)!important}
body.rtkp-ui-51 :where(h6,.h6),
body.embedded-page :where(h6,.h6),
body.auth-bg :where(h6,.h6){font-weight:var(--rt-font-weight-h6,600)!important}
body.rtkp-ui-51 :where(.panel-title,.card-title),
body.embedded-page :where(.panel-title,.card-title){font-weight:var(--rt-font-weight-h2,600)!important}
body.rtkp-ui-51 :where(small,.small,.muted,.text-muted,.text-body-secondary,.form-text,.help-text),
body.embedded-page :where(small,.small,.muted,.text-muted,.text-body-secondary,.form-text,.help-text),
body.auth-bg :where(small,.small,.muted,.text-muted,.text-body-secondary,.form-text,.help-text){font-weight:var(--rt-font-weight-small,400)!important}
body.rtkp-ui-51 a:not(.btn):not(.nav-link):not(.list-group-item),
body.embedded-page a:not(.btn):not(.nav-link):not(.list-group-item),
body.auth-bg a:not(.btn):not(.nav-link):not(.list-group-item){font-weight:var(--rt-font-weight-link,400)!important}
body.rtkp-ui-51 :where(.sidebar .nav-link:not(.active),.portal-shell .nav-link:not(.active),.sidebar nav a:not(.active),.task-anchor-nav a:not(.active),.phase-nav a:not(.active)),
body.embedded-page :where(.nav-link:not(.active),.task-anchor-nav a:not(.active),.phase-nav a:not(.active)){font-weight:var(--rt-font-weight-navigation,500)!important}
body.rtkp-ui-51 :where(.sidebar .nav-link.active,.portal-shell .nav-link.active,.sidebar nav a.active,.task-anchor-nav a.active,.phase-nav a.active,.nav-link[aria-current="page"]),
body.embedded-page :where(.nav-link.active,.task-anchor-nav a.active,.phase-nav a.active,.nav-link[aria-current="page"]){font-weight:var(--rt-font-weight-navigation-active,700)!important}
body.rtkp-ui-51 :where(.topbar,.topbar-user,.topbar-user-meta,.topbar-icon-button),
body.embedded-page :where(.topbar,.topbar-user,.topbar-user-meta,.topbar-icon-button){font-weight:var(--rt-font-weight-topbar,400)!important}
body.rtkp-ui-51 :where(.topbar-title,.app-topbar h1,.app-toolbar-title,.shell-title,.topbar #pageTitle,.portal-title h1),
body.embedded-page :where(.topbar-title,.app-topbar h1,.app-toolbar-title,.shell-title,.topbar #pageTitle,.portal-title h1){font-weight:var(--rt-font-weight-topbar-title,600)!important}
body.rtkp-ui-51 :where(.eyebrow,.overline,.kicker),
body.embedded-page :where(.eyebrow,.overline,.kicker),
body.auth-bg :where(.eyebrow,.overline,.kicker){font-weight:var(--rt-font-weight-eyebrow,700)!important}
body.rtkp-ui-51 :where(.btn,button,input[type="button"],input[type="submit"]),
body.embedded-page :where(.btn,button,input[type="button"],input[type="submit"]),
body.auth-bg :where(.btn,button,input[type="button"],input[type="submit"]){font-weight:var(--rt-button-font-weight,600)!important}
body.rtkp-ui-51 :where(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea,.form-control,.form-select),
body.embedded-page :where(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea,.form-control,.form-select),
body.auth-bg :where(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea,.form-control,.form-select){font-weight:var(--rt-font-weight-input,400)!important}
body.rtkp-ui-51 :where(input,textarea,.form-control)::placeholder,
body.embedded-page :where(input,textarea,.form-control)::placeholder,
body.auth-bg :where(input,textarea,.form-control)::placeholder{font-weight:var(--rt-font-weight-input,400)!important}
body.rtkp-ui-51 :where(label,.form-label,.col-form-label,.rtkp-field-label),
body.embedded-page :where(label,.form-label,.col-form-label,.rtkp-field-label),
body.auth-bg :where(label,.form-label,.col-form-label,.rtkp-field-label){font-weight:var(--rt-font-weight-label,600)!important}
body.rtkp-ui-51 :where(.table,table) > thead > tr > :where(th,td),
body.embedded-page :where(.table,table) > thead > tr > :where(th,td){font-weight:var(--rt-font-weight-table-header,700)!important}
body.rtkp-ui-51 :where(.table,table) > :where(tbody,tfoot) > tr > :where(th,td),
body.embedded-page :where(.table,table) > :where(tbody,tfoot) > tr > :where(th,td){font-weight:var(--rt-font-weight-table-body,400)!important}
body.rtkp-ui-51 :where(.badge,.status-badge,.status-tag,.form-status,.user-pill,.unread-count,.traffic-label),
body.embedded-page :where(.badge,.status-badge,.status-tag,.form-status,.user-pill,.unread-count,.traffic-label){font-weight:var(--rt-badge-font-weight,600)!important}
body.rtkp-ui-51 :where(.customer-task>strong,.customer-task-list .customer-task strong,.task-card-title),
body.embedded-page :where(.customer-task>strong,.customer-task-list .customer-task strong,.task-card-title){font-weight:var(--rt-font-weight-customer-task,600)!important}
body.rtkp-ui-51 .customer-task.header,
body.embedded-page .customer-task.header{font-weight:var(--rt-font-weight-table-header,700)!important}

/* 5.1.0-alpha.32 – verbindliche Layout- und Komponentenbrücke.
   Alle Seiten-, Flächen- und Abschnittsabstände stammen ab hier aus den
   Designvariablen. Diese Regeln stehen absichtlich am Dateiende. */

/* Einheitlicher Inhaltsrand für dynamische Hauptansichten und eingebettete Seiten. */
body.rtkp-ui-51 #app{
    box-sizing:border-box!important;
    padding:var(--rt-page-padding-y,24px) var(--rt-page-padding-x,24px)!important;
}
body.embedded-page :where(.system-page,main.container-fluid,main.container,main.rtkp-design-page),
body.embedded-page > main:not(.app-main){
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    padding:var(--rt-page-padding-y,24px) var(--rt-page-padding-x,24px)!important;
}

/* Karten mit eigenem Body/Header: nie wieder lokale clamp()- oder Mobile-Paddings. */
body.rtkp-ui-51 :where(.card,.rtkp-section-card,.rtkp-table-card,.modal-content) > :where(.card-body,.rtkp-section-body,.modal-body),
body.embedded-page :where(.card,.rtkp-section-card,.rtkp-table-card,.modal-content) > :where(.card-body,.rtkp-section-body,.modal-body),
.rtkp-design-card > .card-body,
.rtkp-design-preview-card > .card-body{
    padding:var(--rt-surface-padding-y,20px) var(--rt-surface-padding-x,20px)!important;
}
body.rtkp-ui-51 :where(.card,.rtkp-section-card,.rtkp-table-card,.modal-content) > :where(.card-header,.rtkp-section-header,.modal-header),
body.embedded-page :where(.card,.rtkp-section-card,.rtkp-table-card,.modal-content) > :where(.card-header,.rtkp-section-header,.modal-header){
    padding:var(--rt-surface-header-padding-y,16px) var(--rt-surface-padding-x,20px)!important;
    background:transparent!important;
    border-bottom:var(--rt-table-border-width,1px) solid var(--rt-table-border,#dfe5ec)!important;
}

/* Legacy-Flächen ohne card-body erhalten denselben Innenabstand direkt. */
body.rtkp-ui-51 :where(.panel,.overview-card,.metric-card,.rtkp-metric-card,.stat,.external-target-card,.backup-card,.auth-card,.install-card),
body.embedded-page :where(.panel,.overview-card,.metric-card,.rtkp-metric-card,.stat,.external-target-card,.backup-card),
body.auth-bg :where(.panel,.auth-card,.install-card){
    box-sizing:border-box!important;
    padding:var(--rt-surface-padding-y,20px) var(--rt-surface-padding-x,20px)!important;
}

/* Panel-Kopfbereiche verwenden das kompakte gemeinsame Raster. */
body.rtkp-ui-51 :where(.panel,.overview-card,.metric-card,.rtkp-metric-card,.external-target-card,.backup-card) > :where(.panel-head,.panel-header,.card-head),
body.embedded-page :where(.panel,.overview-card,.metric-card,.rtkp-metric-card,.external-target-card,.backup-card) > :where(.panel-head,.panel-header,.card-head){
    margin:calc(var(--rt-surface-padding-y,20px) * -1) calc(var(--rt-surface-padding-x,20px) * -1) var(--rt-surface-padding-y,20px)!important;
    padding:var(--rt-surface-header-padding-y,16px) var(--rt-surface-padding-x,20px)!important;
    border-bottom:var(--rt-table-border-width,1px) solid var(--rt-table-border,#dfe5ec)!important;
}

/* Abschnittsabstände sind für Haupt- und eingebettete Ansichten identisch. */
body.rtkp-ui-51 #app.rtkp-page-flow > .rtkp-page-header{
    margin-bottom:var(--rt-layout-section-gap,24px)!important;
}
body.rtkp-ui-51 #app.rtkp-page-flow > .rtkp-section-start,
body.rtkp-ui-51 #app > .rtkp-section-break{
    margin-top:var(--rt-layout-section-gap,24px)!important;
}
body.embedded-page .system-page > .panel + .panel,
body.embedded-page .system-page > .system-grid + .panel,
body.embedded-page .system-page > .panel + .system-grid,
body.embedded-page main > .card + .card,
body.embedded-page main > .panel + .panel,
body.embedded-page main > .alert + .card,
body.embedded-page main > .alert + .panel{
    margin-top:var(--rt-layout-section-gap,24px)!important;
}
body.rtkp-ui-51 :where(.toolbar,.backup-actions,.table-actions,.card-actions,.form-actions,.inline-form),
body.embedded-page :where(.toolbar,.backup-actions,.table-actions,.card-actions,.form-actions,.inline-form){
    gap:var(--rt-layout-compact-gap,12px)!important;
}
body.rtkp-ui-51 :where(.alert),
body.embedded-page :where(.alert){
    padding:var(--rt-surface-header-padding-y,16px) var(--rt-surface-padding-x,20px)!important;
}

/* Tabellen liegen innerhalb einer Fläche immer exakt auf derselben Inhaltsachse. */
body.rtkp-ui-51 :where(.card,.rtkp-section-card,.rtkp-table-card) > .table-responsive,
body.embedded-page :where(.card,.rtkp-section-card,.rtkp-table-card) > .table-responsive{
    width:calc(100% - (2 * var(--rt-surface-padding-x,20px)))!important;
    margin-right:var(--rt-surface-padding-x,20px)!important;
    margin-left:var(--rt-surface-padding-x,20px)!important;
    margin-bottom:var(--rt-surface-padding-y,20px)!important;
}
body.rtkp-ui-51 :where(.card,.rtkp-section-card,.rtkp-table-card) > :where(.card-header,.rtkp-section-header) + .table-responsive,
body.embedded-page :where(.card,.rtkp-section-card,.rtkp-table-card) > :where(.card-header,.rtkp-section-header) + .table-responsive{
    margin-top:var(--rt-surface-padding-y,20px)!important;
}

/* Semantische CSS-Grid-/Div-Tabellen verwenden exakt dieselben Tokens wie echte Tabellen. */
body.rtkp-ui-51 [role="table"],
body.embedded-page [role="table"],
body.rtkp-ui-51 :where(.rtkp-data-table,.rtkp-grid-table,.customer-switch-table,.account-switch-table,.client-switch-table),
body.embedded-page :where(.rtkp-data-table,.rtkp-grid-table,.customer-switch-table,.account-switch-table,.client-switch-table){
    overflow:hidden!important;
    color:var(--rt-table-body-text,#333)!important;
    background:var(--rt-table-body-background,#fff)!important;
    border:var(--rt-table-border-width,1px) solid var(--rt-table-border,#dfe5ec)!important;
    border-radius:var(--rt-table-border-radius,12px)!important;
}
body.rtkp-ui-51 [role="table"] :where([role="columnheader"]),
body.embedded-page [role="table"] :where([role="columnheader"]),
body.rtkp-ui-51 :where(.rtkp-data-table,.rtkp-grid-table,.customer-switch-table,.account-switch-table,.client-switch-table) :where(.table-head,.table-header,.header-cell),
body.embedded-page :where(.rtkp-data-table,.rtkp-grid-table,.customer-switch-table,.account-switch-table,.client-switch-table) :where(.table-head,.table-header,.header-cell){
    box-sizing:border-box!important;
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
    color:var(--rt-table-header-text,#566579)!important;
    background:var(--rt-table-header-background,#f4f6f8)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    font-family:var(--rt-font-body)!important;
    font-size:var(--rt-font-size-table,14px)!important;
    font-weight:var(--rt-font-weight-table-header,700)!important;
}
body.rtkp-ui-51 [role="table"] :where([role="cell"],[role="rowheader"]),
body.embedded-page [role="table"] :where([role="cell"],[role="rowheader"]),
body.rtkp-ui-51 :where(.rtkp-data-table,.rtkp-grid-table,.customer-switch-table,.account-switch-table,.client-switch-table) :where(.table-cell,.body-cell),
body.embedded-page :where(.rtkp-data-table,.rtkp-grid-table,.customer-switch-table,.account-switch-table,.client-switch-table) :where(.table-cell,.body-cell){
    box-sizing:border-box!important;
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
    color:var(--rt-table-body-text,#333)!important;
    background:var(--rt-table-body-background,#fff)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    font-family:var(--rt-font-body)!important;
    font-size:var(--rt-font-size-table,14px)!important;
    font-weight:var(--rt-font-weight-table-body,400)!important;
}
body.rtkp-ui-51 [role="table"] :where([role="row"]):not(:last-child),
body.embedded-page [role="table"] :where([role="row"]):not(:last-child){
    border-bottom:var(--rt-table-border-width,1px) solid var(--rt-table-border,#dfe5ec)!important;
}

/* Bekannte Listen-/Grid-Kopfzeilen aus den Verwaltungsmodulen. */
body.rtkp-ui-51 :where(.customer-task.header,.rtkp-table-header,.data-table-header,.grid-table-header),
body.embedded-page :where(.customer-task.header,.rtkp-table-header,.data-table-header,.grid-table-header){
    background:var(--rt-table-header-background,#f4f6f8)!important;
    color:var(--rt-table-header-text,#566579)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    font-weight:var(--rt-font-weight-table-header,700)!important;
}

/* Keine versteckten abweichenden Mobilwerte: das Designsystem bleibt auch unter 768 px maßgeblich. */
@media(max-width:767.98px){
    body.rtkp-ui-51 #app,
    body.embedded-page :where(.system-page,main.container-fluid,main.container,main.rtkp-design-page),
    body.embedded-page > main:not(.app-main){
        padding:var(--rt-page-padding-y,24px) var(--rt-page-padding-x,24px)!important;
    }
    body.rtkp-ui-51 :where(.card,.rtkp-section-card,.rtkp-table-card,.modal-content) > :where(.card-body,.rtkp-section-body,.modal-body),
    body.embedded-page :where(.card,.rtkp-section-card,.rtkp-table-card,.modal-content) > :where(.card-body,.rtkp-section-body,.modal-body),
    .rtkp-design-card > .card-body,
    .rtkp-design-preview-card > .card-body{
        padding:var(--rt-surface-padding-y,20px) var(--rt-surface-padding-x,20px)!important;
    }
    body.rtkp-ui-51 :where(.card,.rtkp-section-card,.rtkp-table-card,.modal-content) > :where(.card-header,.rtkp-section-header,.modal-header),
    body.embedded-page :where(.card,.rtkp-section-card,.rtkp-table-card,.modal-content) > :where(.card-header,.rtkp-section-header,.modal-header){
        padding:var(--rt-surface-header-padding-y,16px) var(--rt-surface-padding-x,20px)!important;
    }
}

/* Sicherheitsnetz für ältere/eigenständige Seiten, deren body noch keine
   Shell-Klasse trägt. Dadurch gelten die Designsystem-Tokens unabhängig vom
   Renderingpfad und nicht nur innerhalb von .rtkp-ui-51/.embedded-page. */
body :where(.btn,a.btn,input[type="submit"].btn,input[type="button"].btn){
    padding:var(--rt-button-padding-y,9px) var(--rt-button-padding-x,15px)!important;
    border-width:var(--rt-button-border-width,1px)!important;
    border-style:var(--rt-button-border-style,solid)!important;
    border-radius:var(--rt-button-border-radius,10px)!important;
    font-family:var(--rt-button-font-family,var(--rt-font-body))!important;
    font-weight:var(--rt-button-font-weight,600)!important;
}
body .btn-primary{
    background:var(--rt-button-primary-background,#006ab5)!important;
    color:var(--rt-button-primary-text,#fff)!important;
    border-color:var(--rt-button-primary-border,#006ab5)!important;
}
body :where(.btn-secondary,.btn-light){
    background:var(--rt-button-secondary-background,#fff)!important;
    color:var(--rt-button-secondary-text,#333)!important;
    border-color:var(--rt-button-secondary-border,#cfd7e3)!important;
}
body :where(.btn-secondary,.btn-light):hover,
body :where(.btn-secondary,.btn-light):focus-visible{
    background:var(--rt-button-secondary-hover-background,#f3f6f9)!important;
    color:var(--rt-button-secondary-hover-text,#1d2b3c)!important;
    border-color:var(--rt-button-secondary-hover-border,#aeb9c8)!important;
}
body .btn-outline-secondary{
    background:transparent!important;
    color:var(--rt-button-secondary-text,#333)!important;
    border-color:var(--rt-button-secondary-border,#cfd7e3)!important;
}
body .btn-outline-secondary:hover,
body .btn-outline-secondary:focus-visible{
    background:var(--rt-button-secondary-hover-background,#f3f6f9)!important;
    color:var(--rt-button-secondary-hover-text,#1d2b3c)!important;
    border-color:var(--rt-button-secondary-hover-border,#aeb9c8)!important;
}
body .btn-danger{
    background:var(--rt-button-danger-background,#c22515)!important;
    color:var(--rt-button-danger-text,#fff)!important;
    border-color:var(--rt-button-danger-border,#c22515)!important;
}
body .btn-danger:hover,body .btn-danger:focus-visible{
    background:var(--rt-button-danger-hover-background,#9f1e12)!important;
    color:var(--rt-button-danger-hover-text,#fff)!important;
    border-color:var(--rt-button-danger-hover-border,#9f1e12)!important;
}
body .btn-outline-danger{
    background:transparent!important;
    color:var(--rt-button-danger-background,#c22515)!important;
    border-color:var(--rt-button-danger-border,#c22515)!important;
}
body .btn-outline-danger:hover,body .btn-outline-danger:focus-visible{
    background:var(--rt-button-danger-hover-background,#9f1e12)!important;
    color:var(--rt-button-danger-hover-text,#fff)!important;
    border-color:var(--rt-button-danger-hover-border,#9f1e12)!important;
}
body .btn-outline-primary{
    background:transparent!important;
    color:var(--rt-button-primary-background,#006ab5)!important;
    border-color:var(--rt-button-primary-border,#006ab5)!important;
}
body .btn-outline-primary:hover,body .btn-outline-primary:focus-visible{
    background:var(--rt-button-primary-hover-background,#00538f)!important;
    color:var(--rt-button-primary-hover-text,#fff)!important;
    border-color:var(--rt-button-primary-hover-border,#00538f)!important;
}
body :where(.form-control,.form-select,textarea.form-control,input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]),select,textarea){
    padding:var(--rt-control-padding-y,10px) var(--rt-control-padding-x,12px)!important;
    color:var(--rt-control-text,#222)!important;
    background:var(--rt-control-background,#fff)!important;
    border-color:var(--rt-control-border,#cfd7e3)!important;
    border-width:var(--rt-control-border-width,1px)!important;
    border-style:var(--rt-control-border-style,solid)!important;
    border-radius:var(--rt-control-border-radius,10px)!important;
    font-weight:var(--rt-font-weight-input,400)!important;
}
body :where(.badge,.status-badge,.status-tag,.form-status,.user-pill,.unread-count,.traffic-label){
    padding:var(--rt-badge-padding-y,5px) var(--rt-badge-padding-x,9px)!important;
    border-width:var(--rt-badge-border-width,1px)!important;
    border-style:var(--rt-badge-border-style,solid)!important;
    border-radius:var(--rt-badge-border-radius,999px)!important;
    font-family:var(--rt-badge-font-family,var(--rt-font-body))!important;
    font-weight:var(--rt-badge-font-weight,600)!important;
}
body :where(.table,table) > thead > tr > :where(th,td){
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
    color:var(--rt-table-header-text,#566579)!important;
    background:var(--rt-table-header-background,#f4f6f8)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    border-bottom-width:var(--rt-table-border-width,1px)!important;
    font-weight:var(--rt-font-weight-table-header,700)!important;
}
body :where(.table,table) > :where(tbody,tfoot) > tr > :where(th,td){
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
    color:var(--rt-table-body-text,#333)!important;
    background:var(--rt-table-body-background,#fff)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    border-bottom-width:var(--rt-table-border-width,1px)!important;
    font-weight:var(--rt-font-weight-table-body,400)!important;
}
body :where(.table-responsive,.rtkp-table-surface){
    border-radius:var(--rt-table-border-radius,12px)!important;
}

/* Der Bootstrap-Adapter markiert tabellenartige Flächen als
   .rtkp-table-surface. Falls dort historisch ein CSS-Grid statt <table>
   gerendert wird, wird die erste direkte Zeile als Kopf und der Rest als
   Tabelleninhalt behandelt. */
body .rtkp-table-surface:not(:has(> table)):not(:has(> .table)){
    overflow:hidden!important;
    border:var(--rt-table-border-width,1px) solid var(--rt-table-border,#dfe5ec)!important;
    border-radius:var(--rt-table-border-radius,12px)!important;
    background:var(--rt-table-body-background,#fff)!important;
}
body .rtkp-table-surface:not(:has(> table)):not(:has(> .table)) > :first-child{
    color:var(--rt-table-header-text,#566579)!important;
    background:var(--rt-table-header-background,#f4f6f8)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    font-weight:var(--rt-font-weight-table-header,700)!important;
}
body .rtkp-table-surface:not(:has(> table)):not(:has(> .table)) > :not(:first-child){
    color:var(--rt-table-body-text,#333)!important;
    background:var(--rt-table-body-background,#fff)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    font-weight:var(--rt-font-weight-table-body,400)!important;
}
body .rtkp-table-surface:not(:has(> table)):not(:has(> .table)) > * > *{
    box-sizing:border-box!important;
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
}

/* 5.1.0-alpha.43 – finale Frontend-Priorität des Designsystems.
   app.css bleibt die neutrale Basis für Backend und Shell. Im Kundenfrontend
   müssen konfigurierbare Typografie- und Tabellenwerte jedoch auch gegen
   ältere, spezifischere !important-Regeln gewinnen. */
body.rtkp-ui-51 .page-heading h1,
body.embedded-page .page-heading h1{
    font-size:var(--rt-font-size-h1,34px)!important;
    font-weight:var(--rt-font-weight-h1,600)!important;
    color:var(--rt-text-heading,#1d2b3c)!important;
}
body.rtkp-ui-51 .eyebrow,
body.embedded-page .eyebrow{
    font-size:var(--rt-font-size-eyebrow,12px)!important;
    font-weight:var(--rt-font-weight-eyebrow,700)!important;
    color:var(--rt-text-eyebrow,#00538f)!important;
}
body.rtkp-ui-51 .section-heading h2,
body.embedded-page .section-heading h2,
body.rtkp-ui-51 .rtkp-section-header h2,
body.embedded-page .rtkp-section-header h2,
body.rtkp-ui-51 .rtkp-quick-card h2,
body.embedded-page .rtkp-quick-card h2{
    font-size:var(--rt-font-size-h2,26px)!important;
    font-weight:var(--rt-font-weight-h2,600)!important;
    color:var(--rt-text-heading,#1d2b3c)!important;
}
body.rtkp-ui-51 .rtkp-section-header h3,
body.embedded-page .rtkp-section-header h3,
body.rtkp-ui-51 .rtkp-project-card h3,
body.embedded-page .rtkp-project-card h3,
body.rtkp-ui-51 .rtkp-empty-state h3,
body.embedded-page .rtkp-empty-state h3,
body.rtkp-ui-51 .rtkp-admin-card h3,
body.embedded-page .rtkp-admin-card h3,
body.rtkp-ui-51 .page-heading .h3,
body.embedded-page .page-heading .h3{
    font-size:var(--rt-font-size-h3,22px)!important;
    font-weight:var(--rt-font-weight-h3,600)!important;
    color:var(--rt-text-heading,#1d2b3c)!important;
}
body.rtkp-ui-51 .table > thead > tr > th,
body.rtkp-ui-51 .table > thead > tr > td,
body.embedded-page .table > thead > tr > th,
body.embedded-page .table > thead > tr > td{
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
    background:var(--rt-table-header-background,#f4f6f8)!important;
    background-color:var(--rt-table-header-background,#f4f6f8)!important;
    color:var(--rt-table-header-text,#566579)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    border-bottom-width:var(--rt-table-border-width,1px)!important;
    font-size:var(--rt-font-size-table,13px)!important;
    font-weight:var(--rt-font-weight-table-header,700)!important;
    box-shadow:none!important;
}
body.rtkp-ui-51 .table > tbody > tr > td,
body.rtkp-ui-51 .table > tbody > tr > th,
body.embedded-page .table > tbody > tr > td,
body.embedded-page .table > tbody > tr > th{
    padding:var(--rt-table-padding-y,12px) var(--rt-table-padding-x,14px)!important;
    background:var(--rt-table-body-background,#fff)!important;
    color:var(--rt-table-body-text,#333)!important;
    border-color:var(--rt-table-border,#dfe5ec)!important;
    border-bottom-width:var(--rt-table-border-width,1px)!important;
    font-size:var(--rt-font-size-table,13px)!important;
    font-weight:var(--rt-font-weight-table-body,400)!important;
}
body.rtkp-ui-51 .table-hover > tbody > tr:hover > *,
body.embedded-page .table-hover > tbody > tr:hover > *{
    background:var(--rt-table-hover-background,#f7fafc)!important;
    color:var(--rt-table-body-text,#333)!important;
}
