/* Shared default components. Rules are limited to pages migrated to the reference. */
@media screen {
body.btassist-neu.btassist-standard-page {
 --task-bg:var(--neu-bg)!important;--task-surface:var(--neu-surface)!important;--task-surface-alt:var(--neu-bg)!important;--task-text:var(--neu-text)!important;--task-muted:var(--neu-muted)!important;--task-border:var(--neu-border)!important;--task-border-strong:#c4d0d5!important;--task-accent:var(--neu-accent)!important;--task-shadow:none!important;--task-card-shadow:none!important;
 --contact-bg:var(--neu-bg)!important;--contact-surface:var(--neu-surface)!important;--contact-text:var(--neu-text)!important;--contact-muted:var(--neu-muted)!important;--contact-border:var(--neu-border)!important;--contact-accent:var(--neu-accent)!important;
 --primary:var(--neu-accent)!important;--primary-dark:#106655!important;--primary-light:var(--neu-soft)!important;--color-primary:var(--neu-accent)!important;--card-bg:var(--neu-surface)!important;--card-shadow:none!important;
 background:var(--neu-bg)!important;color:var(--neu-text)!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}

/* Tablet-Konsistenz: Die neuen Listen behalten zwischen Smartphone und Desktop
   ihre vollstaendige Suchzeile. Datentabellen werden nicht bis zur
   Unlesbarkeit zusammengedrueckt, sondern innerhalb ihrer Karte gescrollt. */
@media screen and (min-width:769px) and (max-width:1180px),
       screen and (min-width:769px) and (max-width:1366px) and (pointer:coarse) {
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) :is(
    .mobile-client-search-toggle,
    .mobile-task-search-toggle,
    .mobile-visit-search-toggle,
    .mobile-ab-search-toggle
  ) {
    display:none!important;
  }

  /* Klienten */
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .neu-client-toolbar {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:8px!important;
    padding:10px 12px!important;
    overflow:visible!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) #client-filter-form {
    display:grid!important;
    grid-column:1!important;
    grid-row:1!important;
    grid-template-columns:minmax(190px,1fr) 82px minmax(112px,140px) minmax(112px,140px) 40px!important;
    align-items:center!important;
    gap:7px!important;
    min-width:0!important;
    margin:0!important;
    overflow:visible!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) #client-filter-form > .filter-group,
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) #client-filter-form > .filter-actions {
    width:auto!important;
    min-width:0!important;
    margin:0!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) #client-filter-form > .filter-group > label {
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .neu-client-actions {
    display:flex!important;
    grid-column:2!important;
    grid-row:1!important;
    align-items:center!important;
    gap:7px!important;
    min-width:0!important;
  }

  /* Kontakte */
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .contact-filter-card .search-bar {
    display:grid!important;
    grid-template-columns:minmax(190px,1fr) minmax(108px,150px) minmax(108px,140px) 90px 40px 40px!important;
    align-items:center!important;
    gap:7px!important;
    padding:10px 12px!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .contact-filter-card .search-bar > .filter-group {
    display:block!important;
    min-width:0!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .contact-filter-card .search-bar > .filter-group.is-search {
    grid-column:auto!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .contact-filter-card .search-bar > .filter-group > label {
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .contact-filter-card .search-bar :is(#reset-search,#new-contact) {
    align-self:center!important;
    margin:0!important;
  }

  /* Aufgaben */
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .task-filter-card {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 40px!important;
    align-items:center!important;
    gap:7px!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .task-filter-card .filter-header {
    display:contents!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .task-filter-card :is(.filter-title-wrap,.filter-view-wrap) {
    display:none!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) #task-filter-form {
    display:block!important;
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    margin:0!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .task-filter-card .filter-action-wrap {
    grid-column:2!important;
    grid-row:1!important;
    width:40px!important;
    min-width:40px!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .task-filter-card .filter-grid.filter-toolbar {
    display:grid!important;
    grid-template-columns:minmax(155px,1.7fr) repeat(6,minmax(62px,1fr)) 38px!important;
    align-items:center!important;
    gap:6px!important;
    overflow:visible!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .task-filter-card .search-row {
    display:contents!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .task-filter-card .filter-group {
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .task-filter-card .filter-grid label {
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
  }

  /* Besuchsplanung */
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .visit-filter-card .filter-header {
    display:none!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .visit-filter-card .visit-filters {
    display:grid!important;
    grid-template-columns:minmax(160px,1.5fr) minmax(100px,.75fr) 100px 100px minmax(140px,1fr) 76px!important;
    align-items:center!important;
    gap:7px!important;
    overflow:visible!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .visit-filter-card :is(.visit-filter-group,.visit-filter-toggle-field) {
    width:auto!important;
    min-width:0!important;
    display:block!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .visit-filter-card :is(.visit-filter-group > label,.visit-filter-toggle-field > span) {
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .visit-filter-card .visit-filter-toggle-group {
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    min-width:0!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .visit-filter-card .visit-filter-actions {
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    min-width:0!important;
  }

  /* Offene Abrechnungen */
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .ab-filter-card {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 40px!important;
    align-items:center!important;
    gap:7px!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity).ab-mobile-lock main.page-container {
    padding-top:calc(var(--header-height,70px) + 10px)!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .ab-filter-card .filter-header {
    display:contents!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .ab-filter-card :is(.filter-title-wrap,.filter-view-wrap) {
    display:none!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) #ah-filter-form {
    display:block!important;
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    margin:0!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .ab-filter-card .filter-action-wrap {
    grid-column:2!important;
    grid-row:1!important;
    width:40px!important;
    min-width:40px!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .ab-filter-card .ab-filter-grid {
    display:grid!important;
    grid-template-columns:minmax(185px,1.5fr) minmax(108px,.8fr) minmax(108px,.8fr) 112px 112px 38px!important;
    align-items:center!important;
    gap:6px!important;
    overflow:visible!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .ab-filter-card .search-row {
    display:contents!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .ab-filter-card .filter-group {
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .ab-filter-card .filter-group > label {
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
  }

  /* Scrollbare, lesbare Tabellen statt schmaler Wortsaeulen. */
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) :is(
    .client-table-wrap,
    .contacts-table-scroll,
    .task-table-wrap,
    .visit-table-wrap,
    .ab-content-card .ah-simple-section
  ) {
    overflow-x:auto!important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-gutter:stable;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .client-table { min-width:1040px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .contacts-table { min-width:1120px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .task-table { min-width:1150px!important; table-layout:fixed!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .reminder-page-card .task-table { min-width:1040px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .visit-table { min-width:980px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .ab-content-card .ah-simple-table { min-width:1080px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) :is(
    .task-table .task-title,
    .contacts-table td,
    .client-table td,
    .visit-table td,
    .ah-simple-table td
  ) {
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:auto;
  }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .tasks-page-card:not(.reminder-page-card) .task-table :is(th,td):nth-child(1) { width:320px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .tasks-page-card:not(.reminder-page-card) .task-table :is(th,td):nth-child(2) { width:110px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .tasks-page-card:not(.reminder-page-card) .task-table :is(th,td):nth-child(3) { width:130px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .tasks-page-card:not(.reminder-page-card) .task-table :is(th,td):nth-child(4) { width:190px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .tasks-page-card:not(.reminder-page-card) .task-table :is(th,td):nth-child(5) { width:110px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .tasks-page-card:not(.reminder-page-card) .task-table :is(th,td):nth-child(6) { width:120px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .tasks-page-card:not(.reminder-page-card) .task-table :is(th,td):nth-child(7) { width:170px!important; min-width:170px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .reminder-page-card .task-table :is(th,td):nth-child(1) { width:320px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .reminder-page-card .task-table :is(th,td):nth-child(2) { width:110px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .reminder-page-card .task-table :is(th,td):nth-child(3) { width:120px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .reminder-page-card .task-table :is(th,td):nth-child(4) { width:180px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .reminder-page-card .task-table :is(th,td):nth-child(5) { width:140px!important; }
  :is(body.btassist-neu,#app-tablet-specificity#app-tablet-specificity#app-tablet-specificity) .reminder-page-card .task-table :is(th,td):nth-child(6) { width:150px!important; min-width:150px!important; }
}

/* Einheitliche Orientierung in allen interaktiven BtAssist-Listen:
   Hover sowie aktuelle/ausgewaehlte Eintraege folgen der Klientenliste. */
@media screen {
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main table:not(.layout-table) tbody tr:not(.empty):not(.empty-row):not(.no-data):not(.table-empty):not([aria-hidden="true"]):hover > :is(td,th),
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main table:not(.layout-table) tbody tr:is(.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]):not(.danger):not(.error):not(.is-error):not(.warning):not(.is-warning) > :is(td,th),
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main table:not(.layout-table) tbody tr:has(input[type="checkbox"]:checked) > :is(td,th) {
  background:var(--neu-soft)!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main table:not(.layout-table) tbody tr:is(.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]):not(.danger):not(.error):not(.is-error):not(.warning):not(.is-warning) > :first-child,
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main table:not(.layout-table) tbody tr:has(input[type="checkbox"]:checked) > :first-child {
  box-shadow:inset 3px 0 var(--neu-accent)!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) :is(
  [role="listbox"] [role="option"],
  .bt-search-select-option,
  .task-client-picker-option,
  .note-select-picker-option,
  .rem-client-option,
  .rem-view-picker-option,
  .writer-category-picker-option,
  .contact-select-picker-option,
  .ebo-select-picker-option,
  .task-analysis-search-select-option,
  .search-select-option,
  .source-picker-option,
  .einausgabe-option,
  .banking-statement-option,
  .contact-option,
  .private-contact-inline-option,
  .vs-contact-inline-option,
  .ea-contact-inline-option,
  .ue-search-option,
  .matching-select__item,
  .court-request-option,
  .client-switch-link
):not(:disabled):not([aria-disabled="true"]):is(:hover,:focus-visible,.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]) {
  background:var(--neu-soft)!important;
  border-color:var(--neu-accent)!important;
  color:var(--neu-accent)!important;
  outline:none!important;
}

/* Banking besitzt eigene Konto-, Buchungs- und Zuordnungslisten. */
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity).banking-reference .account-toggle:hover,
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity).banking-reference .account-card.open > .account-toggle,
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(.parking-item,.banking-card,.banking-match-item,.banking-inbound-item,.banking-document-result,.banking-preview-item):not(.danger):not(.error):not(.is-error):is(:hover,:focus-visible,:focus-within,.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]),
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main .banking-match-item:has(input[type="checkbox"]:checked) {
  background:var(--neu-soft)!important;
  border-color:var(--neu-accent)!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity).banking-reference .account-card.open > .account-toggle,
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(.banking-card,.banking-match-item,.banking-document-result,.banking-preview-item):is(.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]),
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main .banking-match-item:has(input[type="checkbox"]:checked) {
  box-shadow:inset 3px 0 var(--neu-accent)!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(.booking-row,.banking-buchung-row):is(:hover,.is-selected,.selected,.active,.is-active,.is-current,.is-return-anchor,[aria-selected="true"],[data-selected="true"]) {
  background:var(--neu-soft)!important;
  background-image:none!important;
  color:var(--neu-text)!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(.booking-row,.banking-buchung-row):hover > :is(td,th),
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(.booking-row,.banking-buchung-row):is(.is-selected,.selected,.active,.is-active,.is-current,.is-return-anchor,[aria-selected="true"],[data-selected="true"]) > :is(td,th) {
  background:var(--neu-soft)!important;
  background-image:none!important;
  color:var(--neu-text)!important;
  border-bottom-color:var(--neu-border)!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(.booking-row,.banking-buchung-row):is(.is-selected,.selected,.active,.is-active,.is-current,.is-return-anchor,[aria-selected="true"],[data-selected="true"]) > :first-child {
  box-shadow:inset 3px 0 var(--neu-accent)!important;
}

/* Eigenstaendige Notizenliste und Notizenbereich in den Klientendetails. */
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(.note-card,.notes-table-row,.notes-task-row):is(:hover,:focus-visible,:focus-within,.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]) {
  background:var(--neu-soft)!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main .note-card:is(:hover,:focus-visible,:focus-within,.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]) :is(.note-row-grid,.note-meta-cell) {
  background:transparent!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(.note-card,.notes-table-row,.notes-task-row):is(.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]),
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main .note-card:has(input[type="checkbox"]:checked) {
  box-shadow:inset 3px 0 var(--neu-accent)!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(
  .task-row,
  .task-item,
  .inbox-list-row,
  .message-row,
  .mail-card,
  .client-sidebar-row,
  .contact-list-row,
  .client-mobile-card,
  .docs-list-row,
  .letter-list-row,
  .notes-table-row,
  .notes-task-row,
  .einausgabe-buchung-row,
  .banking-buchung-row,
  .vermoegenssorge-row-link,
  .invoice-row,
  .visit-row,
  .ebo-row-open,
  .explorer-item,
  .webdav-file-row,
  .storage-folder-item,
  .folder-item,
  .lv-tree-item,
  .bkg-item,
  .rem-pop-item,
  .dash-list-item
):not(.danger):not(.error):not(.is-error):not(.warning):not(.is-warning):not(:disabled):not([aria-disabled="true"]):is(:hover,:focus-visible,:focus-within,.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]) {
  background:var(--neu-soft)!important;
  border-color:var(--neu-accent)!important;
}

:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(
  .task-row,
  .task-item,
  .inbox-list-row,
  .message-row,
  .mail-card,
  .client-sidebar-row,
  .contact-list-row,
  .client-mobile-card,
  .docs-list-row,
  .letter-list-row,
  .notes-table-row,
  .notes-task-row,
  .einausgabe-buchung-row,
  .banking-buchung-row,
  .vermoegenssorge-row-link,
  .invoice-row,
  .visit-row,
  .ebo-row-open,
  .explorer-item,
  .webdav-file-row,
  .storage-folder-item,
  .folder-item,
  .lv-tree-item,
  .bkg-item,
  .rem-pop-item,
  .dash-list-item
):not(.danger):not(.error):not(.is-error):not(.warning):not(.is-warning):is(.is-selected,.selected,.active,.is-active,.is-current,[aria-selected="true"],[data-selected="true"]),
:is(body.btassist-neu,#app-list-specificity#app-list-specificity#app-list-specificity) main :is(
  .task-row,.task-item,.inbox-list-row,.message-row,.mail-card,.client-sidebar-row,
  .contact-list-row,.client-mobile-card,.docs-list-row,.letter-list-row,.notes-table-row,
  .notes-task-row,.einausgabe-buchung-row,.banking-buchung-row,.invoice-row,.visit-row,
  .ebo-row-open,.explorer-item,.webdav-file-row,.storage-folder-item,.folder-item,.lv-tree-item,
  .bkg-item,.rem-pop-item,.dash-list-item
):has(input[type="checkbox"]:checked) {
  box-shadow:inset 3px 0 var(--neu-accent)!important;
}
}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(h1,h2,h3,h4) {color:var(--neu-text)!important;font-family:inherit!important;font-weight:600!important;letter-spacing:0!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) main > :is(.page-header,.page-head,.hero,.hero-card,.section-header) {background:var(--neu-surface)!important;border:1px solid var(--neu-border)!important;border-radius:12px!important;box-shadow:none!important;padding:16px!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.app-card,.card,.panel,.section-card,.settings-panel,.contact-filter-card,.contact-card,.task-filter-card,.task-row,.note-card,.notes-card,.bank-card,.account-card,.stat-card,.summary-card,.kpi-card,.buero-card,.form-card,.filter-shell,.upload-card,.inbox-card,.inbox-item,.kb-card,.password-card,.eg-card,.eg-section,.editor-panel) {background:var(--neu-surface)!important;color:var(--neu-text)!important;border:1px solid var(--neu-border)!important;border-radius:12px!important;box-shadow:none!important;backdrop-filter:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.card-header,.panel-head,.section-card-head,.app-section-head,.section-head,.filter-header,.filter-bar,.filter-toolbar,.task-toolbar,.contacts-toolbar,.toolbar,.page-toolbar,.upload-head) {box-sizing:border-box!important;gap:8px!important;box-shadow:none!important;background:var(--neu-bg)!important;color:var(--neu-text)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.card-header,.panel-head,.app-section-head,.upload-head) {display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap;gap:12px!important;padding:12px 16px!important;border-bottom:1px solid var(--neu-border)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.filter-bar,.filter-toolbar,.task-toolbar,.contacts-toolbar,.toolbar,.page-toolbar) {align-items:center!important;gap:8px!important;padding:10px 12px!important;border-radius:10px!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.btn,.btn-ui,.btn-std,.filter-btn,.btn-ghost,.btn-secondary,.btn-outline,.action-btn,.file-btn,.icon-btn,.btn-ui-icon,.btn-ui-primary,.app-button) {box-sizing:border-box!important;min-height:var(--neu-control-height)!important;height:var(--neu-control-height)!important;max-height:var(--neu-control-height)!important;display:inline-flex;align-items:center!important;justify-content:center!important;gap:7px!important;padding:0 12px!important;font-family:inherit!important;font-size:14px!important;font-weight:500!important;line-height:1.25!important;border:1px solid var(--neu-border)!important;border-radius:8px!important;background:var(--neu-surface)!important;color:var(--neu-text)!important;box-shadow:none!important;text-decoration:none!important;cursor:pointer}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.btn-primary,.btn.primary,.btn-ui-primary,.btn-new,.app-button-primary) {background:var(--neu-accent)!important;border-color:var(--neu-accent)!important;color:var(--btn-primary-text,#fff)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.btn-danger,.btn-delete,.danger,.app-button-danger) {background:#fff1f0!important;border-color:#e9c3c0!important;color:#a63732!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.btn-icon-only,.btn-ui-icon,.icon-btn,.file-btn,.app-button-icon) {width:var(--neu-control-height)!important;min-width:var(--neu-control-height)!important;padding:0!important;flex:0 0 auto}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-subtle-add {background:#fff!important;border-color:#d6e0e4!important;color:#263541!important;box-shadow:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-subtle-add:hover {background:#f6f9f8!important;border-color:#b9c9cf!important;color:#263541!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-subtle-add:focus-visible {outline:none!important;border-color:#8fbdb4!important;box-shadow:0 0 0 3px rgba(15,143,131,.1)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-subtle-add svg {color:inherit!important;stroke:currentColor!important}
body:not(.btassist-standard-page) .app-subtle-add {background:#fff!important;border-color:#d6e0e4!important;color:#263541!important;box-shadow:none!important}
body:not(.btassist-standard-page) .app-subtle-add:hover {background:#f6f9f8!important;border-color:#b9c9cf!important;color:#263541!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.btn,.btn-ui,.app-button):hover {border-color:var(--neu-accent)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"]):not([type="submit"]):not([type="button"]),select) {box-sizing:border-box!important;height:var(--neu-control-height)!important;min-height:var(--neu-control-height)!important;max-height:var(--neu-control-height)!important;padding:0 10px!important;border:1px solid var(--neu-border)!important;border-radius:8px!important;background:var(--neu-surface)!important;color:var(--neu-text)!important;font-family:inherit!important;font-size:14px!important;box-shadow:none!important;min-width:0}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) textarea:not(.neu-doc-chat-input) {box-sizing:border-box!important;padding:12px!important;border:1px solid var(--neu-border)!important;border-radius:8px!important;background:var(--neu-surface)!important;color:var(--neu-text)!important;font-family:inherit!important;font-size:14px!important;line-height:1.5!important;box-shadow:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) label {color:var(--neu-muted)!important;font-weight:500!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.muted,.hint,.help,.subtitle,.description,.empty-state,.empty,.no-data,.table-empty) {color:var(--neu-muted)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.card-grid,.cards-grid,.dashboard-grid,.sample-grid,.app-card-grid,.task-cards,.visit-cards,.client-cards) {grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.card-grid,.cards-grid,.dashboard-grid,.sample-grid,.app-card-grid,.task-cards,.visit-cards,.client-cards) > * {min-width:0}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) main :is(table:not(.layout-table),.data-table,.app-table) {border-collapse:collapse;color:var(--neu-text)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) main th {background:var(--neu-bg)!important;color:var(--neu-muted)!important;text-align:left;font-weight:600!important;font-size:12px!important;border-color:var(--neu-border)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) main :is(th,td) {padding:10px 12px;border-bottom:1px solid var(--neu-border)!important;vertical-align:middle}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) main tbody tr:hover {background:var(--neu-soft)}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.tab-btn,.tab-button,.tab-link,.subtab-btn,.finance-subtab) {background:transparent!important;color:var(--neu-muted)!important;border-color:transparent!important;border-radius:8px!important;box-shadow:none!important;gap:7px!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.tab-btn,.tab-button,.tab-link,.subtab-btn,.finance-subtab):is(.active,.is-active,[aria-selected="true"]) {background:var(--neu-soft)!important;color:var(--neu-accent)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.modal,.modal-card,.modal-dialog) {background:var(--neu-surface)!important;border:1px solid var(--neu-border)!important;border-radius:16px!important;box-shadow:0 24px 80px rgba(28,43,52,.18)!important;color:var(--neu-text)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.modal-header,.modal-head,.modal > header) {background:#fff!important;border-bottom:1px solid var(--neu-border)!important;padding:14px 20px!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.modal-footer,.modal-foot,.modal-actions,.modal > footer) {background:#fff!important;border-top:1px solid var(--neu-border)!important;padding:14px 20px!important;gap:10px!important;align-items:center!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.close-btn,.modal-close,.modal-close-btn,.btn-modal-close) {background:#fff!important;color:var(--neu-muted)!important;border:1px solid var(--neu-border)!important;border-radius:8px!important;width:var(--neu-control-height)!important;min-width:var(--neu-control-height)!important;height:var(--neu-control-height)!important;padding:0!important;box-shadow:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-modal-body {padding:20px;background:#f6f9f8;overflow:auto;min-height:0}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-rules {margin:0;padding-left:20px;display:grid;gap:10px;font-size:14px;line-height:1.6}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-card-body {padding:16px}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-example-toolbar {display:flex;align-items:center;gap:8px;flex-wrap:wrap}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-example-toolbar input {flex:1;min-width:160px}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-table-wrap {overflow:auto;max-width:100%;border:1px solid var(--neu-border);border-radius:10px}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-table {width:100%}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-page-heading-duplicate {display:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.login-shell,.auth-shell,.reset-shell) .card {overflow:hidden}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.login-shell,.auth-shell,.reset-shell) .brand-panel {background:var(--neu-soft)!important;color:var(--neu-text)!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.login-shell,.auth-shell,.reset-shell) .btn[type="submit"] {background:var(--neu-accent)!important;color:#fff!important;border-color:var(--neu-accent)!important}
@media(max-width:1000px){:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.card-grid,.cards-grid,.dashboard-grid,.sample-grid,.app-card-grid,.task-cards,.visit-cards,.client-cards) {grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.card-grid,.cards-grid,.dashboard-grid,.sample-grid,.app-card-grid,.task-cards,.visit-cards,.client-cards) {grid-template-columns:minmax(0,1fr)!important}:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.card-header,.panel-head,.app-section-head) {padding:12px!important}:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) main :is(th,td) {padding:8px 10px}}
}
@media screen {
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-select-popover {display:flex!important;flex-direction:column!important;position:fixed!important;z-index:100220!important;box-sizing:border-box!important;padding:12px!important;gap:10px!important;background:var(--neu-surface)!important;color:var(--neu-text)!important;border:1px solid var(--neu-border)!important;border-radius:12px!important;box-shadow:0 18px 48px rgba(28,43,52,.18)!important;overflow:auto!important;bottom:auto!important;transform:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-select-popover .task-client-picker-list {overflow:auto;min-height:0;max-height:280px}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-select-popover .task-client-picker-option {height:auto!important;min-height:var(--neu-control-height)!important;max-height:none!important;white-space:normal!important;text-align:left!important;justify-content:flex-start!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-select-popover .task-client-picker-option:is(.is-selected,.is-active) {background:var(--neu-soft)!important;color:var(--neu-accent)!important}
}

@media screen {
:is(body.btassist-standard-page,#app-hidden-specificity#app-hidden-specificity#app-hidden-specificity) :is([hidden],.hidden,.is-hidden,.d-none,[style*="display:none"],[style*="display: none"]) {display:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .app-card-grid {display:grid}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.btn,.btn-ui,.app-button,.tab-icon,.card-icon,.panel-icon,.section-icon) svg {color:inherit}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.btn,.btn-ui,.app-button,.tab-icon,.card-icon,.panel-icon,.section-icon) svg [fill]:not([fill="none"]) {fill:currentColor!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.btn,.btn-ui,.app-button,.tab-icon,.card-icon,.panel-icon,.section-icon) svg [stroke]:not([stroke="none"]) {stroke:currentColor!important}
}

@media screen and (min-width:1101px) {
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .contact-filter-card {display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:10px!important;padding:12px!important;align-items:center}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .contact-filter-card > .card-header {grid-column:2;grid-row:1;padding:0!important;background:transparent!important;border:0!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .contact-filter-card > .card-header > div:has(.app-page-heading-duplicate) {display:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .contact-filter-card .search-bar {grid-column:1;grid-row:1;display:grid;grid-template-columns:minmax(160px,1fr) minmax(110px,160px) minmax(110px,150px) 90px var(--neu-control-height);gap:8px;padding:0!important;align-items:center}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .contact-filter-card .filter-group > label {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
}
@media screen {
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .filter-search-input {height:var(--neu-control-height)!important;border:1px solid var(--neu-border)!important;border-radius:8px!important;background:var(--neu-surface)!important;box-shadow:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .filter-search-input input {height:calc(var(--neu-control-height) - 2px)!important;min-height:0!important;max-height:none!important;border:0!important;background:transparent!important;box-shadow:none!important}
}
@media screen and (min-width:1101px) {
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .contact-filter-card .filter-group {min-height:0!important;gap:0!important;align-self:center!important;margin:0!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .contact-filter-card #reset-search {align-self:center!important;margin:0!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) #toggle-mobile-contact-search {display:none!important}
}
@media screen and (min-width:1101px) {
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .contact-filter-card .filter-group {display:block!important;grid-template-rows:auto!important}
}
@media screen {
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) .filter-search-input {min-height:var(--neu-control-height)!important;min-width:0!important}
}

@media screen {
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.ab-content-card,.ab-filter-card,.kva-card,.ai-panel,.results-panel,.content-card,.banking-filter-card,.bookings-panel,.ba-panel,.visit-filter-card,.visit-card,.route-start-panel,.buero-month-card,.buero-account-card,.ebo-filter-card,.ebo-card,.mail-card,.mail-card-inner,.fz-card,.ki-compare-card,.kachel-panel,.totals__card,.detail-card,.detail-panel,.lv-antrag-card,.info-card,.automation-card,.file-card,.note-filter-card,.category-panel,.category-card,.task-card,.writer-panel,.step-card,.source-card,.std-editor-card,.stt-panel,.settings-menu-panel,.ordner-tree-panel,.ordner-detail-panel,.transfer-card,.filters-card,.client-card,.client-panel) {background:var(--neu-surface)!important;color:var(--neu-text)!important;border:1px solid var(--neu-border)!important;border-radius:12px!important;box-shadow:none!important;backdrop-filter:none!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) :is(.field.is-invalid,.field.error,.field.forecast-required-missing) {background:#fff1f0!important;border-color:#e9c3c0!important}
:is(body.btassist-standard-page,#app-design-specificity#app-design-specificity) [aria-invalid="true"] {border-color:#b4433c!important}
}

/* Einheitlicher, dezenter Hinzufuegen-Button; die hohe Spezifitaet hebt
   seitenlokale Primaerbutton-Regeln auf. */
@media screen {
:is(body,#app-subtle-add-specificity#app-subtle-add-specificity#app-subtle-add-specificity) .app-subtle-add {
  background:#fff!important;
  border-color:#d6e0e4!important;
  color:#263541!important;
  box-shadow:none!important;
}
:is(body,#app-subtle-add-specificity#app-subtle-add-specificity#app-subtle-add-specificity) .app-subtle-add:hover {
  background:#f6f9f8!important;
  border-color:#b9c9cf!important;
  color:#263541!important;
}
:is(body,#app-subtle-add-specificity#app-subtle-add-specificity#app-subtle-add-specificity) .app-subtle-add:focus-visible {
  outline:none!important;
  border-color:#8fbdb4!important;
  box-shadow:0 0 0 3px rgba(15,143,131,.1)!important;
}
:is(body,#app-subtle-add-specificity#app-subtle-add-specificity#app-subtle-add-specificity) .app-subtle-add svg {
  color:inherit!important;
  stroke:currentColor!important;
}

/* Das E-Mail-Suchfeld verwendet den Rahmen seines gemeinsamen Containers. */
:is(body,#email-search-specificity#email-search-specificity#email-search-specificity) .nc-search #mail-search {
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
  height:40px!important;
  min-height:0!important;
  max-height:40px!important;
}
:is(body,#email-toolbar-specificity#email-toolbar-specificity#email-toolbar-specificity) .email-page .nc-toolbar {
  align-items:center!important;
}
:is(body,#email-toolbar-specificity#email-toolbar-specificity#email-toolbar-specificity) .email-page .nc-search {
  height:42px!important;
  min-height:42px!important;
  max-height:42px!important;
  margin:0!important;
  padding:0 11px!important;
  box-sizing:border-box!important;
  align-self:center!important;
}
:is(body,#email-toolbar-specificity#email-toolbar-specificity#email-toolbar-specificity) .email-page .nc-actions {
  height:42px!important;
  align-items:center!important;
  align-self:center!important;
}
:is(body,#email-toolbar-specificity#email-toolbar-specificity#email-toolbar-specificity) .email-page .nc-icon-btn {
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  max-height:42px!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  align-self:center!important;
}
}
