/* Tenant workspace. Kept separate from platform administration and PDF output. */
body.tenant-ui,
body.auth-ui {
  --ui-ink: #202b43;
  --ui-muted: #69778d;
  --ui-line: #e4e9f2;
  --ui-accent: #5261d8;
  --ui-surface: #f4f6fa;
  --accent: var(--ui-accent);
  --accent-2: #7891ed;
  --c-primary: var(--ui-accent);
  --c-ink: var(--ui-ink);
  --c-muted: var(--ui-muted);
  --ink: var(--ui-ink);
  background: var(--ui-surface);
  color: var(--ui-ink);
  font-size: 14px;
  -webkit-font-smoothing: antialiased;
}
body.tenant-ui .content { padding: 30px 34px 110px; background: var(--ui-surface); }
body.tenant-ui .content.fade-in { opacity: 1; animation: none; }
body.auth-ui .content.fade-in { opacity: 1; animation: none; }
body.tenant-ui .brand-bar {
  height: 68px; min-height: 68px; padding: 10px 24px;
  background: var(--nav-bg); color: var(--nav-text); border-bottom: 1px solid var(--nav-hover);
  box-shadow: none; letter-spacing: 0; text-transform: none;
}
body.tenant-ui .brand-left { min-width: 190px; gap: 19px; }
body.tenant-ui .brand-logo { max-width: 132px; height: 36px; }
body.tenant-ui .brand-bar .btn-link { color: var(--nav-text); }
body.tenant-ui .brand-page-title { position: static; transform: none; margin-left: 28px; text-align: left; font-size: 13px; color: var(--nav-text); max-width: 28%; }
body.tenant-ui .brand-actions { gap: 16px; }
body.tenant-ui .nav-color-trigger { border-color: var(--nav-hover); color: var(--nav-text); width: 36px; height: 36px; border-radius: 11px; }
body.tenant-ui .ui-avatar { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 12px; background: var(--nav-hover); color: var(--nav-text); font-weight: 700; flex: 0 0 auto; }
body.tenant-ui .ui-nav-trigger { display: flex; align-items: center; gap: 10px; background: var(--nav-hover); border: 1px solid var(--nav-hover); color: var(--nav-text); border-radius: 10px; padding: 8px 12px; font-size: 12px; min-width: 195px; }
body.tenant-ui .ui-nav-trigger kbd { margin-left: auto; font-size: 10px; color: var(--nav-text); background: var(--nav-hover); border: 1px solid var(--nav-hover); border-radius: 4px; }
body.tenant-ui .layout { grid-template-columns: 230px minmax(0,1fr); min-height: calc(100dvh - 68px); }
body.tenant-ui .sidebar { width: 230px; top: 68px; height: calc(100dvh - 68px); padding: 20px 12px 14px; border-right: 1px solid var(--nav-hover); }
body.tenant-ui .sidebar-nav { gap: 3px; scrollbar-width: thin; scrollbar-color: var(--nav-hover) transparent; }
body.tenant-ui .sidebar-link { padding: 10px 13px; min-height: 42px; border-radius: 10px; font-size: 13px; gap: 12px; font-weight: 500; }
body.tenant-ui .sidebar-link i { font-size: 17px; }
body.tenant-ui .sidebar-link.is-active { background: var(--nav-hover); font-weight: 700; box-shadow: none; }
body.tenant-ui .sidebar-link.is-active::before { left: 0; top: 13px; bottom: 13px; height: auto; width: 3px; background: var(--nav-text); border-radius: 8px; }
body.tenant-ui .ui-nav-group { padding: 20px 14px 7px; font-size: 9px; letter-spacing: .16em; text-transform: uppercase; font-weight: 600; opacity: .6; }
body.tenant-ui .ui-nav-group:first-child { padding-top: 0; }
body.tenant-ui .sidebar-footer { border-top: 1px solid var(--nav-hover); padding-top: 10px; }
body.tenant-ui .sidebar .btn-accent { font-size: 12px; min-height: 38px; border-radius: 10px; }
body.tenant-ui.sidebar-collapsed .layout { grid-template-columns: 72px minmax(0,1fr); }
body.tenant-ui.sidebar-collapsed .sidebar { width: 72px; padding: 20px 10px; }
body.tenant-ui.sidebar-collapsed .ui-nav-group { font-size: 0; padding: 8px 0 4px; margin: 8px 7px 0; border-top: 1px solid var(--nav-hover); }
body.tenant-ui.sidebar-collapsed .sidebar-link { padding: 11px; }
/* Compact page identity, with actions alongside it. */
body.tenant-ui .ui-page-header { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 18px; margin-bottom: 26px !important; }
body.tenant-ui .ui-heading-copy { display: flex; align-items: center; gap: 15px; min-width: 0; }
body.tenant-ui .ui-heading-copy > div { min-width: 0; }
body.tenant-ui .ui-heading-copy h1 { overflow-wrap: anywhere; }
body.tenant-ui .ui-page-icon { display: grid; place-items: center; width: 46px; height: 46px; flex: 0 0 auto; border: 1px solid #dee4f8; border-radius: 15px; background: #ebeffc; color: #5968cd; font-size: 21px; }
body.tenant-ui .ui-heading-copy h1 { font-size: clamp(23px,2.2vw,29px); font-weight: 700; letter-spacing: -.045em; margin: 0; line-height: 1.25; color: var(--ui-ink); }
body.tenant-ui .ui-heading-copy p { color: var(--ui-muted); font-size: 12px; line-height: 1.55; margin: 5px 0 0; }
body.tenant-ui .ui-page-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; }
body.tenant-ui .ui-section-label { font-size: 10px; letter-spacing: .12em; font-weight: 700; color: var(--ui-muted); text-transform: uppercase; margin: 28px 0 14px; }
/* Shared components also cover row details, dialogs, locked and error states. */
body.tenant-ui .card { border: 1px solid var(--ui-line); background: #fff; border-radius: 17px; box-shadow: 0 3px 9px #25345b03; }
body.tenant-ui .card::before { background: none; }
body.tenant-ui .card.p-4 { padding: 26px !important; }
body.tenant-ui .card.p-3 { padding: 20px !important; }
body.tenant-ui .card .card { box-shadow: none; }
body.tenant-ui :is(h3,h4,h5) { letter-spacing: -.025em; font-weight: 650; }
body.tenant-ui h4 { font-size: 17px; }
body.tenant-ui h5 { font-size: 15px; }
body.tenant-ui .text-muted { color: var(--ui-muted) !important; }
body.tenant-ui :is(.btn, .form-control, .form-select) { font-size: 13px; }
body.tenant-ui .btn { min-height: 38px; padding: 9px 15px; border-radius: 10px; font-weight: 600; letter-spacing: 0; box-shadow: none; transition: background-color .15s, border-color .15s, box-shadow .15s; }
body.tenant-ui .btn-accent { background: var(--ui-accent); border-color: var(--ui-accent); color: #fff; box-shadow: 0 3px 7px #5261d81a; }
body.tenant-ui .btn-accent:hover { background: #4352c4; border-color: #4352c4; }
body.tenant-ui .btn-outline-accent { background: #fff; border-color: #dfe4ee; color: #586780; }
body.tenant-ui .btn-outline-accent:hover { background: #f0f3fc; color: #4656c4; border-color: #cbd3f6; }
body.tenant-ui .btn-danger { background: #fff2f2; color: #b84651; border-color: #f4dce0; }
body.tenant-ui .btn-danger:hover { background: #ffe2e5; border-color: #e6b2bb; }
body.tenant-ui .btn-sm { min-height: 31px; padding: 5px 10px; font-size: 11px; border-radius: 8px; }
body.tenant-ui .btn-icon { width: 32px; height: 32px; min-height: 32px; padding: 5px; border-radius: 8px; }
body.tenant-ui .table .btn-icon { background: #f5f7fc; border: 1px solid #edf0f7; color: #7b8aab; }
body.tenant-ui .table .btn-icon i { font-size: 16px; }
body.tenant-ui .table .btn-icon:hover { background: #eaf0fd; color: #5261c6; }
body.tenant-ui .table .btn-icon-delete:hover { background: #fff0f1; color: #bb5362; }
body.tenant-ui .btn-reminder-toggle { width: 32px; height: 32px; border-radius: 8px; border: 1px solid #e4e8f2; color: #8591a9; background: #f8f9fc; }
body.tenant-ui .btn-reminder-toggle > i { font-size: 14px; }
body.tenant-ui .btn-reminder-toggle .btn-reminder-digit { font-size: 8px; margin-top: 4px; }
body.tenant-ui .btn-reminder-toggle.is-sent { color: #358168; background: #edf8f3; border-color: #d3eadd; }
body.tenant-ui .invoice-status-open td:first-child { border-left-color: #e8c783; }
body.tenant-ui .invoice-status-paid td:first-child { border-left-color: #85bea4; }
body.tenant-ui :is(.form-control,.form-select) { min-height: 42px; border: 1px solid #dde4ee; border-radius: 9px; padding: 10px 12px; background-color: #fff; color: var(--ui-ink); box-shadow: none; }
body.tenant-ui .form-select { padding-right: 32px; }
body.tenant-ui :is(.form-control,.form-select):focus { border-color: #8591e6; box-shadow: 0 0 0 3px #5261d811; }
body.tenant-ui :is(input,textarea)::placeholder { color: #9aa5b8; }
body.tenant-ui :is(.form-control,.form-select):disabled { background-color: #f2f4f8; color: #778398; }
body.tenant-ui .form-label { font-size: 12px; font-weight: 500; color: #526078; text-transform: none; letter-spacing: 0; margin-bottom: 7px; }
body.tenant-ui .form-text { color: var(--ui-muted); font-size: 11px; line-height: 1.6; }
body.tenant-ui .input-group-text { background: #f5f7fb; border-color: #dde4ee; color: #7b879b; font-size: 12px; }
body.tenant-ui .form-check-input:checked { background-color: var(--ui-accent); border-color: var(--ui-accent); }
body.tenant-ui :is(a,button,input,select,textarea,summary):focus-visible { outline: 2px solid #7383e8; outline-offset: 3px; }
body.tenant-ui .alert { border-radius: 12px; font-size: 13px; padding: 14px 18px; box-shadow: none; }
body.tenant-ui .alert-info { background: #eff5ff; border-color: #dce8ff; color: #4e6799; }
body.tenant-ui .alert-success { background: #edf8f3; border-color: #cfeade; color: #2d795d; }
body.tenant-ui .alert-warning { background: #fff8e9; border-color: #f3e7c9; color: #97732d; }
body.tenant-ui :is(.badge-soft,.status-badge) { background: #f0f2fa; color: #64728e; border: 1px solid #e6eaf3; padding: 5px 9px; font-size: 10px; font-weight: 600; letter-spacing: 0; border-radius: 7px; }
body.tenant-ui .invoice-status-paid .status-badge { background: #eaf7f0; color: #338062; border-color: #d4ecdf; }
body.tenant-ui .invoice-status-open .status-badge { background: #fff7e8; color: #a37827; border-color: #f4e5c6; }
body.tenant-ui .invoice-status-partial .status-badge { background: #eef0fe; color: #6371c6; border-color: #dee3fa; }
/* Tables read like a ledger: restrained headers, spacious rows, visible actions. */
body.tenant-ui .table { margin-bottom: 0; color: var(--ui-ink); border-color: #edf0f5; font-size: 12px; --bs-table-hover-bg: #f7f9ff; }
body.tenant-ui .table thead th { background: #f6f8fc; color: #6d7b92; text-transform: uppercase; letter-spacing: .065em; font-size: 10px; font-weight: 600; border-bottom: 1px solid var(--ui-line); padding: 14px 12px; white-space: nowrap; }
body.tenant-ui .table thead th:first-child { border-radius: 9px 0 0 9px; }
body.tenant-ui .table thead th:last-child { border-radius: 0 9px 9px 0; }
body.tenant-ui .table tbody td { padding: 17px 12px; vertical-align: middle; border-bottom-color: #edf0f5; box-shadow: none; }
body.tenant-ui .table tbody tr:last-child td { border-bottom: 0; }
body.tenant-ui .table .table-actions { gap: 5px; flex-wrap: wrap; }
body.tenant-ui .table :is(td[data-label="Nummer"],td[data-label="Naam"],td[data-label="Klant"]) { color: #374662; font-weight: 600; }
body.tenant-ui .ui-filter-card { margin-bottom: 18px; }
body.tenant-ui .ui-filter-card .form-control,
body.tenant-ui .ui-filter-card .form-select { background-color: #fafbfd; }
body.tenant-ui .ui-filter-label { display: block; color: #69778d; font-size: 11px; font-weight: 500; margin-bottom: 6px; }
body.tenant-ui .ui-empty { padding: 46px 20px; text-align: center; color: var(--ui-muted); white-space: normal; }
body.tenant-ui .ui-empty > i { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 18px; background: #f0f3fc; color: #8794d2; font-size: 24px; margin: 0 auto 15px; }
body.tenant-ui .ui-empty strong { display: block; color: #53617b; font-size: 15px; margin-bottom: 5px; }
body.tenant-ui .ui-empty p { margin: 0; font-size: 12px; }
body.tenant-ui .row-detail-content { background: #f8faff; border-radius: 10px; }
/* Dashboard: shortcuts, compact metrics, and a wider chart area. */
body.tenant-ui .ui-shortcuts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-bottom: 28px; }
body.tenant-ui .ui-shortcut { display: flex; align-items: center; gap: 12px; padding: 16px; background: #fff; border: 1px solid var(--ui-line); border-radius: 13px; color: #4d5c75; text-decoration: none; font-size: 12px; font-weight: 500; }
body.tenant-ui .ui-shortcut > i:first-child { font-size: 19px; color: #6978d5; }
body.tenant-ui .ui-shortcut > i:last-child { font-size: 12px; margin-left: auto; color: #a3acc0; }
body.tenant-ui .ui-shortcut:hover { border-color: #bac4f0; box-shadow: 0 4px 15px #45528d08; }
body.tenant-ui [data-dashboard-lock] { --bs-gutter-x: 18px; --bs-gutter-y: 18px; }
body.tenant-ui .dashboard-col.col-md-6 { width: 25%; }
body.tenant-ui .dashboard-card { height: 100%; min-height: 168px; padding: 22px !important; overflow: hidden; }
body.tenant-ui .dashboard-card h4 { text-transform: none; font-size: 12px; line-height: 1.5; letter-spacing: 0; font-weight: 500; color: #69778e; margin: 0 24px 13px 0; }
body.tenant-ui .dashboard-kpi { font-size: clamp(24px,2.3vw,34px); letter-spacing: -.045em; font-weight: 650; font-variant-numeric: tabular-nums; }
body.tenant-ui .dashboard-card .text-muted { font-size: 10px; margin-top: 9px; }
body.tenant-ui .dashboard-card .dashboard-icon { position: absolute; right: 20px; top: 22px; font-size: 19px; color: #a9b5d3; }
body.tenant-ui [data-card-key="today_workorders"] .dashboard-card { background: #edf4f2; border-color: #dbe9e3; }
body.tenant-ui [data-card-key="today_workorders"] .dashboard-kpi { color: #467867; }
body.tenant-ui [data-card-key="omzet"] .dashboard-card { background: #eef1ff; border-color: #e0e5fb; }
body.tenant-ui .dashboard-lock-overlay { background: #f7f9fdf5; color: #8490a7; border: 1px dashed #dce3f0; border-radius: 16px; gap: 7px; }
body.tenant-ui .dashboard-lock-overlay .btn { min-height: 29px; font-size: 10px; padding: 5px 10px; }
body.tenant-ui .dashboard-lock-overlay > i { font-size: 18px; }
body.tenant-ui .dashboard-lock-overlay > span { font-size: 11px; }
body.tenant-ui .ui-lock-label { color: #66758d; font-size: 11px; font-weight: 500; margin-bottom: 3px; max-width: 190px; }
body.tenant-ui .dashboard-lock-inner { gap: 5px; font-size: 10px; }
body.tenant-ui .ui-today { display: flex; align-items: center; gap: 9px; color: #8a96ac; font-size: 12px; background: #fff; border: 1px solid var(--ui-line); border-radius: 9px; padding: 9px 12px; }
body.tenant-ui .dashboard-drag-handle { color: #a8b1c3; }
body.tenant-ui .dashboard-col.col-12 { width: 50%; }
body.tenant-ui [data-card-key="omzet_chart"] { width: 100% !important; }
body.tenant-ui .dashboard-chart-header { margin-bottom: 24px; }
body.tenant-ui .dashboard-chart-header h4 { font-size: 15px; font-weight: 600; }
body.tenant-ui .dashboard-chart-controls { font-size: 10px; color: var(--ui-muted); }
/* Editing a document remains a document, with distinct panels for working data. */
body.tenant-ui .card.p-4.ui-document-sheet { border-radius: 18px; padding: 32px !important; border-top: 3px solid #8b96e6; }
body.tenant-ui .doc-header { padding-bottom: 18px; margin-bottom: 18px; border-bottom: 1px solid var(--ui-line); }
body.tenant-ui .doc-logo img { max-height: 65px; max-width: 190px; object-fit: contain; }
body.tenant-ui .doc-title-box .doc-title { font-size: 21px; letter-spacing: -.04em; color: #5c6bc5; background: #edf0fc; border: 1px solid #e0e6fa; border-radius: 11px; }
body.tenant-ui .doc-company-row { font-size: 11px; color: #748096; gap: 20px; padding-bottom: 22px; margin-bottom: 22px; }
body.tenant-ui .doc-company-meta { background: #f6f8fc; padding: 14px 18px; border-radius: 11px; }
body.tenant-ui .doc-meta-item span { font-size: 9px; letter-spacing: .055em; color: #8b97ac; }
body.tenant-ui .doc-meta-item strong { font-size: 12px; font-weight: 600; color: #4b5c7b; }
body.tenant-ui .customer-box { background: #fafbfe; border-color: #e9edf6; }
body.tenant-ui .ui-panel-label { display: flex; align-items: center; gap: 8px; margin-bottom: 18px; color: #6574a0; font-size: 11px; font-weight: 600; }
body.tenant-ui .ui-panel-label i { font-size: 15px; }
body.tenant-ui .address-card { border-radius: 11px; border-color: var(--ui-line); background: #fff; }
body.tenant-ui .address-card-title { font-size: 11px; }
body.tenant-ui #items-table { margin-top: 28px; margin-bottom: 26px; }
body.tenant-ui #items-table :is(input,select,textarea) { font-size: 12px; min-height: 37px; padding: 8px; }
body.tenant-ui #items-table td { padding: 13px 6px; }
body.tenant-ui #items-table thead th { font-size: 9px; padding: 12px 7px; }
body.tenant-ui :is(.totals-box,.payments-box,.appointments-box,.appointments-view,.reminders-view) { border-radius: 13px; max-width: 100%; }
body.tenant-ui .totals-box { background: #f3f5fe; border-color: #e1e6fa; }
body.tenant-ui .totals-box .border-top { border-color: #dce2f5 !important; font-weight: 650; }
body.tenant-ui .totals-box :is(#total,.total-value) { color: #4c5ccc; font-size: 22px; }
body.tenant-ui :is(.fixed-actions,.doc-actions-bottom) { background: #ffffffed; backdrop-filter: blur(16px); border: 1px solid var(--ui-line); border-radius: 14px; padding: 12px 16px; box-shadow: 0 6px 28px #2834520d; }
body.tenant-ui .fixed-actions { left: 262px; right: 32px; bottom: 16px; }
body.tenant-ui .doc-actions-bottom { left: 262px; right: 32px; bottom: 16px; }
body.tenant-ui.sidebar-collapsed :is(.fixed-actions,.doc-actions-bottom) { left: 104px; }
body.tenant-ui .ui-document-hint { color: #8b95ab; font-size: 11px; display: flex; align-items: center; gap: 8px; margin-right: auto; }
body.tenant-ui .ui-send-sheet { max-width: 950px; margin: 0 auto; }
body.tenant-ui .ui-send-sheet .row.g-3 { --bs-gutter-y: 24px; }
body.tenant-ui .ui-mail-attachment { display: flex; align-items: center; gap: 13px; padding: 15px; margin: 24px 0; background: #f7f9fd; border: 1px solid var(--ui-line); border-radius: 12px; }
body.tenant-ui .ui-mail-attachment > i { font-size: 26px; color: #b87986; }
body.tenant-ui .ui-mail-attachment > div { flex: 1; min-width: 0; }
body.tenant-ui .ui-mail-attachment small { display: block; color: var(--ui-muted); font-size: 10px; }
body.tenant-ui .ui-mail-attachment strong { display: block; color: #596887; font-size: 12px; overflow-wrap: anywhere; }
body.tenant-ui :is(.doc-modal-window,.app-modal-window,.feedback-modal-window,.modal-content) { border-radius: 18px; border: 1px solid var(--ui-line); box-shadow: 0 25px 100px #1c2b4930; }
body.tenant-ui :is(.app-modal-header,.feedback-modal-header,.doc-modal-header) { background: #f8faff; border-bottom: 1px solid var(--ui-line); padding: 18px 22px; }
body.tenant-ui .pin-dialog-card { border: 1px solid var(--ui-line); border-top: 3px solid #9ba7e6; border-radius: 20px; padding: 24px; }
body.tenant-ui .pin-dialog-hint { font-size: 12px; color: var(--ui-muted); line-height: 1.6; }
body.tenant-ui .pin-code-digit { border-radius: 11px; background: #f6f8fe; border-color: #e0e6f3; color: #5364bd; box-shadow: none; }
body.tenant-ui .pin-code-digit:focus { border-color: #8393e2; box-shadow: 0 0 0 3px #5261d811; }
/* Smaller forms use a comfortable two-column grid. */
body.tenant-ui .ui-form-sheet { max-width: 1020px; margin: 0 auto; }
body.tenant-ui .ui-form-sheet > .ui-heading-copy { margin-bottom: 28px; padding-bottom: 22px; border-bottom: 1px solid var(--ui-line); }
body.tenant-ui .ui-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px 24px; }
body.tenant-ui .ui-form-grid > :is(.row,.supplier-fields,.alert,.ui-form-section,.ui-form-footer) { grid-column: 1 / -1; }
body.tenant-ui .ui-form-grid > .mb-3 { margin-bottom: 0 !important; }
body.tenant-ui .ui-form-grid > .mb-3:has(.form-check) { grid-column: 1 / -1; }
body.tenant-ui .ui-form-section { display: flex; align-items: center; gap: 9px; padding-top: 18px; border-top: 1px solid var(--ui-line); color: #63729a; font-size: 12px; font-weight: 600; }
body.tenant-ui .ui-form-footer { display: flex; align-items: center; justify-content: flex-end; gap: 10px; border-top: 1px solid var(--ui-line); padding-top: 20px; margin-top: 6px; }
/* Agenda, purchase inbox, banking and support have their own work surfaces. */
body.tenant-ui .agenda-card { padding: 24px !important; }
body.tenant-ui .agenda-header { gap: 20px; align-items: center; padding-bottom: 23px; margin-bottom: 12px; }
body.tenant-ui .agenda-header h2 { display: block !important; margin: 0; font-size: 27px; letter-spacing: -.04em; }
body.tenant-ui #agenda-range { font-size: 11px; margin-top: 5px; }
body.tenant-ui .agenda-controls { gap: 7px; }
body.tenant-ui .agenda-controls .btn { padding: 8px 10px; font-size: 11px; }
body.tenant-ui .agenda-toggle { border-radius: 9px; background: #f1f4fa; padding: 3px; border: 0; }
body.tenant-ui .agenda-days-btn { font-size: 11px; padding: 7px 10px; border-radius: 6px; }
body.tenant-ui .agenda-days-btn.is-active { background: #fff; color: #5666c9; box-shadow: 0 2px 6px #2131530b; }
body.tenant-ui .agenda-grid { border: 1px solid var(--ui-line); border-radius: 13px; overflow: auto; }
body.tenant-ui .agenda-day-header { background: #f7f9fc; padding: 15px 6px; color: #77869e; }
body.tenant-ui .agenda-event { border-radius: 8px; box-shadow: 0 2px 5px #1e2c4810; font-size: 11px; }
body.tenant-ui .agenda-drawer { background: #fff; border-left: 1px solid var(--ui-line); box-shadow: -15px 0 45px #21325515; }
body.tenant-ui :is(.creditors-tabs,.costs-tabs) { background: #f0f3fa; border: 0; border-radius: 11px; padding: 4px; gap: 3px; }
body.tenant-ui :is(.creditors-tab,.costs-tab) { border: 0; border-radius: 8px; padding: 9px 15px; font-size: 12px; color: #8290a6; }
body.tenant-ui :is(.creditors-tab,.costs-tab).is-active { color: #5565c6; background: #fff; box-shadow: 0 2px 6px #2132550a; }
body.tenant-ui :is(.creditors-filter-bar,.bank-filter-bar) { padding: 17px; border: 1px solid var(--ui-line); border-radius: 12px; background: #f8fafd; }
body.tenant-ui :is(.creditors-upload-box,.upload-dropzone,.cost-upload-zone) { border: 2px dashed #cbd5ec; border-radius: 16px; background: #f8faff; }
body.tenant-ui .creditors-empty { padding: 40px 20px !important; color: #8895ac; }
body.tenant-ui .creditors-upload-card { background: #f8faff; border: 1px dashed #c9d3eb; }
body.tenant-ui .ui-upload-intro { display: flex; align-items: center; gap: 16px; margin: 8px 0 24px; }
body.tenant-ui .ui-upload-intro > span { background: #ecf0fc; color: #788ad1; border-radius: 16px; padding: 13px 17px; font-size: 28px; }
body.tenant-ui .ui-upload-intro h3 { font-size: 18px; margin: 0 0 6px; }
body.tenant-ui .ui-upload-intro p { color: var(--ui-muted); font-size: 12px; margin: 0; }
body.tenant-ui #bank-pin-gate { padding: 65px 20px !important; }
body.tenant-ui #bank-pin-gate h4 { margin-bottom: 13px !important; }
body.tenant-ui #bank-pin-gate h4 i { display: block; width: 60px; height: 60px; margin: 0 auto 22px; padding: 18px; border-radius: 20px; background: #f0f3fd; color: #7d8cce; }
body.tenant-ui .admin-shell { --a-primary: var(--ui-accent); max-width: none; }
body.tenant-ui .admin-hero { padding: 0 0 22px; border: 0; background: none; box-shadow: none; min-height: 0; }
body.tenant-ui .admin-hero h1 { font-size: 29px; letter-spacing: -.04em; }
body.tenant-ui .admin-eyebrow { display: none; }
body.tenant-ui .admin-hero p:not(.admin-eyebrow) { color: var(--ui-muted); font-size: 12px; }
body.tenant-ui :is(.admin-card,.admin-filters,.admin-table-wrap) { border: 1px solid var(--ui-line); border-radius: 15px; background: #fff; box-shadow: none; }
body.tenant-ui .admin-filters { padding: 18px; gap: 12px; }
body.tenant-ui .admin-table { font-size: 12px; }
body.tenant-ui .admin-table th { background: #f6f8fc; color: #8290a5; font-size: 10px; }
body.tenant-ui #nieuw-ticket { margin-top: 26px; max-width: 950px; }
body.tenant-ui #nieuw-ticket h2 { font-size: 21px; }
body.tenant-ui .support-message { border: 1px solid var(--ui-line); border-radius: 14px; box-shadow: none; }
body.tenant-ui .support-message.is-root { border-left: 3px solid #91a1e5; background: #f6f8ff; }
body.tenant-ui .premium-lock-shell { max-width: 820px; padding: 36px !important; border-top: 3px solid #9aa6e6; }
body.tenant-ui .premium-lock-kicker { background: #f0f3ff; color: #7483bb; border: 0; font-size: 10px; letter-spacing: .1em; border-radius: 8px; }
body.tenant-ui .premium-lock-shell h2 { font-size: 26px; letter-spacing: -.04em; line-height: 1.35; }
body.tenant-ui .premium-lock-box { border-radius: 12px; background: #f8faff; border-color: var(--ui-line); }
body.tenant-ui .premium-lock-price-value { color: #5668c8; }
/* Navigation dialog uses native modality and a keyboard-accessible link list. */
body.tenant-ui .ui-nav-dialog { border: 1px solid #dfe5f1; border-radius: 19px; padding: 0; width: min(540px,calc(100vw - 32px)); color: var(--ui-ink); box-shadow: 0 25px 100px #15244333; }
body.tenant-ui .ui-nav-dialog::backdrop { background: #1a284660; backdrop-filter: blur(4px); }
body.tenant-ui .ui-nav-dialog header { display: flex; align-items: center; gap: 12px; padding: 18px 22px; border-bottom: 1px solid var(--ui-line); color: #7483a1; }
body.tenant-ui .ui-nav-dialog input { border: 0; outline: 0; flex: 1; min-width: 0; background: transparent; font-size: 14px; }
body.tenant-ui .ui-nav-dialog header button { background: #f3f5fa; border: 1px solid var(--ui-line); border-radius: 6px; font-size: 10px; color: #7c89a0; padding: 5px 7px; }
body.tenant-ui .ui-nav-results { max-height: min(430px,60dvh); overflow-y: auto; padding: 10px; }
body.tenant-ui .ui-nav-results a { display: flex; align-items: center; gap: 14px; padding: 12px; color: #52607c; text-decoration: none; border-radius: 9px; font-size: 13px; }
body.tenant-ui .ui-nav-results a:hover,body.tenant-ui .ui-nav-results a:focus { background: #f0f3ff; color: #5261c8; }
body.tenant-ui .ui-nav-results i { color: #8896bf; font-size: 18px; }
body.tenant-ui .ui-nav-results p { padding: 24px; color: var(--ui-muted); font-size: 13px; }
body.tenant-ui .ui-nav-dialog footer { padding: 12px 22px; border-top: 1px solid var(--ui-line); color: #909bb1; font-size: 10px; }
/* Preserve the settings design, including its independent PIN panels. */
body.tenant-ui .tenant-settings .settings-workspace { margin-top: 0; }
body.tenant-ui .tenant-settings .settings-pane h2 { color: var(--ui-ink); }
/* Auth pages share the palette without relying on a tenant identity. */
body.auth-ui { background: radial-gradient(ellipse at 15% 25%,#e4eafa 0,transparent 50%),radial-gradient(ellipse at 85% 85%,#e8f3ef 0,transparent 50%),#f7f9fc; }
body.auth-ui .auth-form-card { background: #fff; border: 1px solid #e4e9f2; border-radius: 24px; padding: 42px; box-shadow: 0 20px 70px #2b3e6510; }
body.auth-ui .auth-brand { color: #4355bc; font-size: 21px; gap: 12px; }
body.auth-ui .auth-brand i { background: #eef1fe; color: #6374c5; border-radius: 14px; padding: 10px; box-shadow: none; }
body.auth-ui .auth-form-card h2 { font-size: 27px; letter-spacing: -.04em; margin-top: 30px; }
body.auth-ui .ui-auth-note { font-size: 13px; color: #8c98ac; margin: 10px 0 26px; }
body.auth-ui .form-control { min-height: 46px; border-radius: 10px; border-color: #dee5ef; }
body.auth-ui .btn-accent { background: #5261d8; border-color: #5261d8; border-radius: 10px; padding: 12px; }
body.auth-ui .auth-links a { color: #7180a6; font-size: 12px; }
@media (max-width: 1300px) {
  body.tenant-ui .dashboard-col.col-md-6 { width: 33.3333%; }
  body.tenant-ui .ui-shortcuts { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (min-width: 992px) and (max-width: 1200px) {
  body.tenant-ui .layout,body.tenant-ui:not(.sidebar-collapsed) .layout { grid-template-columns: 230px minmax(0,1fr) !important; }
  body.tenant-ui.sidebar-collapsed .layout { grid-template-columns: 72px minmax(0,1fr) !important; }
  body.tenant-ui .content { grid-column: auto; }
}
@media (max-width: 991px) {
  body.tenant-ui .layout,body.tenant-ui.sidebar-collapsed .layout { grid-template-columns: minmax(0,1fr) !important; }
  body.tenant-ui .sidebar,body.tenant-ui.sidebar-collapsed .sidebar { width: 230px; top: 68px; height: calc(100dvh - 68px); padding: 18px 12px; }
  body.tenant-ui:not(.sidebar-open) .sidebar { visibility: hidden; }
  body.tenant-ui .content { padding: 24px 20px 110px; }
  body.tenant-ui .brand-bar { padding: 10px 16px; }
  body.tenant-ui .brand-left { min-width: 0; }
  body.tenant-ui .brand-page-title { display: none; }
  body.tenant-ui .ui-nav-trigger { min-width: 0; }
  body.tenant-ui .dashboard-col.col-md-6 { width: 50%; }
  body.tenant-ui .dashboard-col.col-12 { width: 100%; }
  body.tenant-ui :is(.fixed-actions,.doc-actions-bottom),body.tenant-ui.sidebar-collapsed :is(.fixed-actions,.doc-actions-bottom) { left: 20px; right: 20px; }
}
@media (max-width: 600px) {
  body.tenant-ui .content { padding: 22px 14px 115px; }
  body.tenant-ui .brand-actions { gap: 9px; }
  body.tenant-ui .brand-logo { max-width: 115px; height: 31px; }
  body.tenant-ui .ui-nav-trigger { padding: 9px 10px; }
  body.tenant-ui .ui-nav-trigger :is(span,kbd) { display: none; }
  body.tenant-ui .ui-avatar { width: 32px; height: 32px; font-size: 12px; }
  body.tenant-ui .ui-page-header { gap: 16px; margin-bottom: 20px !important; }
  body.tenant-ui .ui-heading-copy { gap: 11px; }
  body.tenant-ui .ui-page-icon { width: 39px; height: 39px; border-radius: 12px; font-size: 18px; }
  body.tenant-ui .ui-heading-copy h1 { font-size: 24px; }
  body.tenant-ui .ui-heading-copy p { font-size: 11px; }
  body.tenant-ui .ui-page-header > .ms-auto { margin-left: 0 !important; }
  body.tenant-ui .card.p-4,body.tenant-ui .card.p-3 { padding: 17px !important; border-radius: 13px; }
  body.tenant-ui .ui-shortcuts { gap: 9px; margin-bottom: 22px; }
  body.tenant-ui .ui-shortcut { padding: 13px 11px; font-size: 11px; gap: 8px; }
  body.tenant-ui .ui-shortcut > i:last-child { display: none; }
  body.tenant-ui .dashboard-card { min-height: 160px; padding: 16px !important; }
  body.tenant-ui .dashboard-card h4 { font-size: 11px; margin-right: 0; }
  body.tenant-ui .dashboard-kpi { font-size: 25px; }
  body.tenant-ui .dashboard-icon { display: none; }
  body.tenant-ui .table.table-responsive-cards tbody tr { border: 1px solid var(--ui-line); border-radius: 12px; padding: 14px; margin-bottom: 12px; box-shadow: none; }
  body.tenant-ui .table.table-responsive-cards tbody td { padding: 7px 0; border: 0; font-size: 12px; white-space: normal; }
  body.tenant-ui .table.table-responsive-cards td::before { color: #8a96ad; font-size: 10px; letter-spacing: 0; text-transform: none; }
  body.tenant-ui .table.table-responsive-cards td[colspan]:has(.ui-empty),
  body.tenant-ui .table.table-responsive-cards td.creditors-empty { display: block; width: 100%; text-align: center; }
  body.tenant-ui .table.table-responsive-cards td[colspan]:has(.ui-empty)::before,
  body.tenant-ui .table.table-responsive-cards td.creditors-empty::before { display: none; }
  body.tenant-ui .admin-filters { grid-template-columns: minmax(0,1fr); padding: 15px; }
  body.tenant-ui .ui-form-grid { grid-template-columns: minmax(0,1fr); gap: 18px; }
  body.tenant-ui .card.p-4.ui-document-sheet { padding: 18px !important; }
  body.tenant-ui .doc-header { grid-template-columns: 1fr auto; gap: 10px; }
  body.tenant-ui .doc-title-center { position: static; transform: none; text-align: right; }
  body.tenant-ui .doc-actions-right { grid-column: 1 / -1; }
  body.tenant-ui .doc-company-row { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; }
  body.tenant-ui .doc-company-meta { width: 100%; }
  body.tenant-ui :is(.fixed-actions,.doc-actions-bottom),body.tenant-ui.sidebar-collapsed :is(.fixed-actions,.doc-actions-bottom) { left: 12px; right: 12px; bottom: 10px; padding: 10px; }
  body.tenant-ui .ui-document-hint { display: none; }
  body.tenant-ui .agenda-controls { flex-wrap: wrap; }
  body.tenant-ui .agenda-grid { max-width: 100%; }
  body.auth-ui .auth-form-card { padding: 28px 22px; border-radius: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  body.tenant-ui *,body.auth-ui * { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
@media print {
  body.tenant-ui { background: #fff; }
  body.tenant-ui :is(.brand-bar,.sidebar,.ui-page-header,.ui-nav-dialog,.ui-shortcuts,.fixed-actions,.doc-actions-bottom) { display: none !important; }
  body.tenant-ui .layout { display: block !important; }
  body.tenant-ui .content { padding: 0; }
  body.tenant-ui .ui-document-sheet { border: 0; box-shadow: none; padding: 0 !important; }
}
body.tenant-ui.embedded .layout { display: block !important; }
body.tenant-ui.embedded .content { padding: 18px 18px 90px; }
body.tenant-ui.embedded :is(.brand-bar,.sidebar) { display: none !important; }

/* A collapsed marketing group whose label stays a real navigation link. */
.mkt-nav-group{position:relative}.mkt-nav-heading{display:flex;align-items:center;position:relative}.mkt-nav-heading>.sidebar-link{flex:1;min-width:0;padding-right:32px!important}.mkt-nav-heading>.sidebar-link span{white-space:normal;line-height:1.35}.mkt-nav-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);height:28px;width:25px;display:grid;place-items:center;border:0;background:transparent;color:inherit;border-radius:6px;font-size:10px}.mkt-nav-toggle:hover{background:var(--nav-hover)}.mkt-nav-toggle[aria-expanded=true] i{transform:rotate(90deg)}.mkt-submenu{position:fixed;width:253px;max-height:calc(100dvh - 30px);overflow:auto;background:#fff;border:1px solid var(--ui-line);border-radius:13px;padding:11px;box-shadow:var(--sh-3);z-index:1200;display:flex;flex-direction:column;gap:2px}.mkt-submenu[hidden]{display:none!important}.mkt-submenu-label{display:block;font-size:9px;letter-spacing:.1em;padding:9px 11px;color:var(--ui-muted)}.mkt-submenu-link{display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:8px;color:var(--ui-ink);font-size:12px;text-decoration:none}.mkt-submenu-link i{font-size:15px;color:var(--ui-muted)}.mkt-submenu-link:hover,.mkt-submenu-link:focus-visible,.mkt-submenu-link.is-active{background:color-mix(in srgb,var(--nav-bg) 8%,white);color:var(--ui-ink)}.mkt-nav-group.is-open [data-tooltip]::after,.mkt-nav-group.is-open [data-tooltip]::before{display:none!important}
body.tenant-ui.sidebar-collapsed .mkt-nav-heading>.sidebar-link{padding-right:11px!important}body.tenant-ui.sidebar-collapsed .mkt-nav-toggle{right:-6px;font-size:8px;width:17px;height:22px}
@media(max-width:760px){.mkt-submenu{position:static;width:auto;max-height:none;margin:4px 0 8px 18px;box-shadow:none;border-color:var(--nav-hover);background:transparent}.mkt-submenu-label{display:none}.mkt-nav-toggle{width:32px;height:36px}.mkt-submenu-link{padding:11px;font-size:12px}}
body.tenant-ui.embedded :is(.fixed-actions,.doc-actions-bottom) { left: 12px; right: 12px; }
