/* Tabler owns the page, navbar, sidebar, account dropdown and icons.
   This layer only keeps Chinese typography, dense business content and drawer sizing. */
:root {
  --ink: var(--tblr-body-color, #182433);
  --muted: var(--tblr-secondary, #667382);
  --blue: var(--tblr-primary, #066fd1);
  --line: var(--tblr-border-color, #e6e7e9);
  --surface: #f6f8fb;
  --tblr-font-sans-serif: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
}
body {font-family:var(--tblr-font-sans-serif);background:var(--surface);color:var(--ink);font-size:14px;line-height:1.55}
a {text-decoration:none}
a:hover {text-decoration:underline}
h1,.page-title {font-size:24px;font-weight:650;letter-spacing:-.3px;line-height:1.3;margin:0}
h2 {font-size:16px;font-weight:600;margin:0}
h3 {font-size:14px;font-weight:600}
.card-header {min-height:48px;padding:12px 16px}
.card-body {padding:16px}
.card-header h2,.card-header h3 {margin:0}
.btn {font-size:13px;line-height:1.4;padding:7px 12px;min-height:34px;font-weight:500;border-radius:5px}
.btn-sm {font-size:12px;min-height:28px;padding:4px 9px}
.nav-pills .nav-link {font-size:13px;padding:6px 11px;border-radius:5px;color:var(--muted)}
.nav-pills .nav-link.active {background:#eaf3fe;color:var(--blue);font-weight:600;box-shadow:none}
.nav-tabs .nav-link {font-size:13px;padding:9px 14px;font-weight:500}
.nav-tabs .nav-link.active {color:var(--blue);font-weight:600}
.badge {font-size:11px;font-weight:500;line-height:1.4;padding:3px 7px;letter-spacing:0;border-radius:4px}
.form-control,.form-select {font-size:13px}
.form-label {font-size:13px;font-weight:500;margin-bottom:6px}
.form-text,.form-text p {font-size:12px;line-height:1.6}
.form-field {margin-bottom:18px}
.form-control::placeholder {color:#7a8899}
.alert {font-size:13px}
.accordion-button {font-size:13px;padding:12px 14px}
.accordion-button-toggle {flex-shrink:0}
.accordion-button-toggle > .icon {transform:rotate(90deg)}
.accordion-body {padding:12px 14px}
.check-panel .check-types {gap:4px 15px;line-height:1.6}
.check-type {font-size:11px;color:var(--muted)}
.check-type-blocking {color:#8b6125}
.check-panel li {padding:9px 0;font-size:13px}
.billing-month-head {padding:16px 16px 10px}
.billing-month-checks {padding:0 16px}
.billing-month-counts {font-size:11px}
.billing-totals {padding:16px;gap:12px}
.billing-totals strong {font-size:26px;letter-spacing:-.5px}
.billing-totals span {font-size:12px}
.billing-totals>div {border-left:0;padding-left:0}
.billing-totals>div+div {border-left:1px solid var(--line);padding-left:16px}
.table {font-size:13px;--tblr-table-border-color:var(--line)}
.table>:not(caption)>*>* {padding:9px 12px;line-height:1.5;border-color:#edf0f4}
.table thead th {padding-top:9px;padding-bottom:9px;font-size:11px;font-weight:600;color:#718095;background:#f8fafc;letter-spacing:0;text-transform:none}
.table td small {font-size:11px;line-height:1.5;margin-top:2px;color:var(--muted)}
.table td strong {font-weight:600}
/* Dense overview lists use quiet links; detail tables retain normal blue links. */
.list-table a:where(:not(.btn, .badge, .table-action, .link-danger, .link-warning, .link-success, .link-info)) {color:inherit}
.list-table a:where(:not(.btn, .badge, .table-action, .link-danger, .link-warning, .link-success, .link-info)):is(:hover, :focus-visible) {color:var(--blue)}
.bill-row {background:#fff}
.bill-table .arrow-col {padding:8px!important}
.bill-device td {background:#f9fbfe}
.bill-table tbody+tbody {border-top:1px solid var(--line)}
.archive-overview-table {font-size:12px}
.archive-overview-table>:not(caption)>*>* {padding:10px 10px;line-height:1.5}
.archive-overview-table td small {font-size:11px;margin-top:4px}
.archive-list-customer {font-size:13px;font-weight:600}
.archive-list-count,.archive-list-count small {font-size:11px}
.archive-list-item+.archive-list-item {margin-top:7px}
.archive-list-totals {font-size:12px}
.archive-list-totals strong {font-size:17px}
.archive-overview-search {padding:12px 16px}
.archive-nodes {font-size:13px}
.archive-nodes a {padding:7px 9px}
.archive-nodes a[aria-current],.archive-nodes a.selected {background:#eaf3fe;color:var(--blue)}
.disclosure-head .btn {min-height:24px!important}
.archive-nodes .disclosure-head>button {font-size:12px;border-color:#e3e9f0}
.record-drawer {--tblr-offcanvas-width:min(900px,94vw)}
.drawer-head {padding:14px 20px;background:#fff}
.drawer-head h2 {font-size:17px!important;font-weight:600}
.drawer-body {--drawer-body-padding:20px;padding:var(--drawer-body-padding);background:var(--surface)}
.login-wrap {background:var(--surface)}
.login-box {padding:28px}
.stats {gap:16px;margin-bottom:22px}
@media(max-width:700px) {
h1,.page-title {font-size:23px}
.actions {gap:8px}
.btn {min-height:36px}
.btn-sm {min-height:30px}
.nav-pills .nav-link {font-size:12px;padding:7px 9px}
.nav-tabs .nav-link {padding:8px 11px;font-size:12px}
.filters {gap:8px}
.filters .form-control {min-width:150px}
.form-control,.form-select {font-size:16px;min-height:40px}
.billing-totals {padding:14px;gap:10px}
.billing-totals>div+div {padding-left:12px}
.billing-totals strong {font-size:24px}
.billing-month-head {padding:14px}
.billing-month-checks {padding:0 14px}
.check-panel .check-types {gap:4px 12px}
.drawer-body {--drawer-body-padding:14px}
.drawer-head {padding:14px}
.record-drawer {--tblr-offcanvas-width:100vw}
.table>:not(caption)>*>* {padding:9px 10px}
.stats {gap:10px}
.login-box {padding:24px}
}
.drawer-body {min-height:0;outline:none}
.drawer-head h2 {flex:1}
.drawer-discard,.drawer-status {flex-shrink:0}
.site-location-map {height:300px;background:#edf2f7}
.site-map-picker {grid-column:1/-1;min-width:0}
.site-map-picker .btn {flex:none;white-space:nowrap}
.site-map-picker>.d-flex {flex-wrap:wrap}
.site-map-picker [data-map-query] {flex:1;min-width:180px}
.site-map-results {max-height:180px;overflow:auto}
.site-map-pin {position:absolute;z-index:3;font-size:30px;line-height:1;transform:translate(-50%,-100%);pointer-events:none}
.site-location-map:focus-visible {outline:2px solid var(--blue);outline-offset:2px}
.detail-module-tabs {flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;white-space:nowrap}
.detail-module-tabs .nav-link {flex:none}
.detail-tabs>.tab-content>.tab-pane>.card:last-child {margin-bottom:0!important}

/* Keep shared list pages in the viewport; only its table scrolls vertically. */
.page:has(#main>.list-page) {height:100dvh;min-height:0;overflow:hidden}
.page:has(#main>.list-page)>.navbar {flex-shrink:0}
.page-wrapper:has(#main>.list-page) {min-height:0}
.page-body:has(#main>.list-page) {min-height:0;margin:12px 0}
#main:has(>.list-page) {display:flex;flex-direction:column;min-height:0}
#main:has(>.list-page)>.page-heading {flex:none;margin-bottom:8px!important}
#main:has(>.list-page)>.page-heading .page-pretitle {display:none}
#main:has(>.list-page)>.alert {flex:none;margin-bottom:8px;padding:8px 12px}
.list-page {display:flex;flex-direction:column;flex:1;min-height:0}
.list-page {padding-top:8px}
.list-page .list-heading {display:flex;flex-direction:row;align-items:center;gap:16px;flex-wrap:nowrap}
.list-heading h2,.list-heading>.btn {flex:none;white-space:nowrap}
.list-heading :is(.archive-list-totals, .list-totals) {margin-left:auto;flex-wrap:nowrap;gap:16px;min-width:0;overflow-x:auto;white-space:nowrap}
.list-heading :is(.archive-list-totals, .list-totals)>* {flex:none}
.list-heading :is(.archive-list-totals, .list-totals) strong {font-size:14px;margin-left:4px}
.list-heading :is(.archive-list-totals, .list-totals)>span:last-child {margin-left:0}
.list-page .list-panel {flex:1;min-height:0;margin-bottom:0}
.list-page .panel-head {flex:none;min-height:40px;padding:6px 12px}
.list-page .archive-overview-search {flex:none;padding:8px 12px}
.list-page .archive-overview-search .form-control,
.list-page .archive-overview-search .form-select {min-height:34px;height:34px;padding-top:5px;padding-bottom:5px}
.list-page .archive-list-hint {flex:none;padding:5px 12px}
.list-page .list-scroll {flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.list-page .list-table>:not(caption)>*>* {padding-top:6px;padding-bottom:6px}
.list-page .list-table thead th {position:sticky;top:0;z-index:2;background:#f8fafc}
.archive-column-sort {display:block;color:inherit;overflow:hidden;text-overflow:ellipsis;}
.archive-column-sort span {color:var(--muted)}
.list-table th[aria-sort=ascending] .archive-column-sort,
.list-table th[aria-sort=descending] .archive-column-sort {color:var(--blue)}
.list-table td:nth-child(4),.list-table td:nth-child(5),.list-table td:nth-child(6) {font-variant-numeric:tabular-nums}
.list-page .archive-overview-notes {flex:none;padding:5px 12px;font-size:11px}
.list-page .workplace-map-body {display:flex;flex-direction:column;min-height:0;overflow:hidden}
.list-page .workplace-map-body .map-legend {flex:none}
.list-page .workplace-map-body .reading-map {flex:1;min-height:0;height:auto}
.list-page>.pagination-row {flex:none;padding:8px 0 0;font-size:12px;gap:8px}

/* Device modules share one horizontal navigation level. */
.machine-detail > .machine-tabs { flex-wrap: nowrap; overflow-x: auto; overflow-y: hidden; gap: 0; }
.machine-detail > .machine-tabs .nav-link { flex: 0 0 auto; white-space: nowrap; }
.machine-detail > .machine-tabs .nav-link span { margin-left: .3rem; }

/* Shared device table surface: one toolbar, one table, one muted footer. */
:is(.machine-table-surface, .detail-table-surface) { background: var(--tblr-bg-surface, #fff); border: 1px solid var(--tblr-border-color); border-top: 0; min-width: 0; }
.machine-table-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; min-height: 48px; padding: 8px 12px; border-bottom: 1px solid var(--tblr-border-color); }
.machine-table-controls { display: flex; align-items: center; gap: 8px; }
.machine-table-controls:empty { display: none; }
.machine-table-meta { color: var(--tblr-secondary); font-size: 12px; font-variant-numeric: tabular-nums; }
:is(.machine-table-surface, .detail-table-surface, .printer-mail-workspace) .table { margin: 0; }
:is(.machine-table-surface, .detail-table-surface, .printer-mail-workspace) .table > :not(caption) > * > * { padding: 10px 12px; vertical-align: middle; line-height: 1.5; }
:is(.machine-table-surface, .detail-table-surface, .printer-mail-workspace) .table thead th { background: var(--tblr-bg-surface-secondary, #f8fafc); color: var(--tblr-secondary); font-size: 12px; font-weight: 600; white-space: nowrap; }
:is(.machine-table-surface, .detail-table-surface, .printer-mail-workspace) .table tbody th { font-weight: 500; color: var(--tblr-secondary); width: 150px; }
:is(.machine-table-surface, .detail-table-surface, .printer-mail-workspace) .table td { font-size: 13px; overflow-wrap: anywhere; }
:is(.machine-table-surface, .detail-table-surface, .printer-mail-workspace) .table small { margin-top: 2px; }
:is(.machine-table-surface, .detail-table-surface, .printer-mail-workspace) .table td.empty { display: table-cell; padding: 32px 12px; text-align: center; }
.machine-table-note { margin: 0; padding: 10px 12px; color: var(--tblr-secondary); font-size: 12px; line-height: 1.6; }
:is(.machine-table-surface, .detail-table-surface, .printer-mail-workspace) > .pagination-row { margin: 0; padding: 10px 12px; }
.machine-associations th:first-child { width: 100px; }
.machine-associations th:nth-child(2) { width: 30%; }
.table-row-details summary { color: var(--tblr-primary); cursor: pointer; white-space: nowrap; }
.table-row-details ol { padding-left: 20px; margin: 8px 0; min-width: 160px; }
.table-row-details li + li { margin-top: 6px; }
.machine-detail .machine-header { margin-bottom: 12px !important; }

/* Actions use grouped, roomy click targets; business records retain their tables. */
.device-operation-context { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin-bottom: 16px; color: var(--tblr-secondary); font-size: 13px; }
.device-operation-context strong { color: var(--tblr-body-color); }
.device-operation-groups { background: var(--tblr-bg-surface, #fff); border: 1px solid var(--tblr-border-color); border-radius: 6px; margin-bottom: 16px; }
.device-operation-group { padding: 12px 16px; }
.device-operation-group + .device-operation-group { border-top: 1px solid var(--tblr-border-color); }
.device-operation-group h3 { margin: 0 0 6px; font-size: 12px; color: var(--tblr-secondary); }
.device-operation-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px 20px; list-style: none; padding: 0; margin: 0; }
.device-operation-action { display: block; padding: 8px; border-radius: 4px; height: 100%; }
.device-operation-action:hover { background: var(--tblr-primary-lt, #eaf3fe); text-decoration: none; }
.device-operation-action:focus-visible { outline: 2px solid var(--tblr-primary); outline-offset: 1px; }
.device-operation-label { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 13px; font-weight: 600; }
.device-operation-label > span { font-weight: 400; }
.device-operation-description { display: block; margin-top: 3px; font-size: 12px; line-height: 1.5; color: var(--tblr-secondary); overflow-wrap: anywhere; }
@media (max-width: 600px) { .device-operation-actions { grid-template-columns: 1fr; } }

/* Customer, workplace and equipment share the same table surface and navigation rhythm. */
.profile-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 16px; margin-bottom: 12px; background: var(--tblr-bg-surface, #fff); border: 1px solid var(--tblr-border-color); border-radius: 6px; }
.archive-profile > .profile-tabs { flex-wrap: nowrap; overflow-x: auto; overflow-y: hidden; gap: 0; }
.archive-profile > .profile-tabs .nav-link { flex: 0 0 auto; white-space: nowrap; }
.profile-facts th:first-child { width: 150px; }
.customer-note-preview {margin:0;white-space:pre-line;line-height:1.7;overflow-wrap:anywhere;}
.customer-note-details {margin-top:8px;}
.customer-note-details summary {width:fit-content;cursor:pointer;color:var(--tblr-primary);}
.customer-note-details .note-collapse,.customer-note-details[open] .note-expand {display:none;}
.customer-note-details[open] .note-collapse {display:inline;}
.customer-note-original {max-height:320px;overflow:auto;white-space:pre-line;overflow-wrap:anywhere;line-height:1.7;margin-top:8px;padding:12px;background:var(--tblr-bg-surface-secondary);border-radius:var(--tblr-border-radius);}
.profile-device-library {margin-top:16px;min-width:0;}
.profile-device-library .list-scroll {overflow:auto;max-height:480px;}
.detail-table-surface .profile-device-library .list-table {min-width:100%;}
.profile-device-library .list-table > :not(caption) > * > * {padding:8px;}
.profile-device-library .printer-list-filters {flex-wrap:wrap;}
.profile-device-library .printer-list-filters .form-control {flex-basis:240px;}

/* Embedded business and device tables share one flat surface and density. */
.profile-business-surface .profile-section-title,
.profile-basic-surface .profile-section-title,
.profile-business-surface .list-heading h2 {margin:0;font-size:14px;font-weight:600;line-height:20px;}
.profile-business-surface .machine-table-toolbar,
.profile-basic-surface .machine-table-toolbar,
.profile-business-surface .list-heading {display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-height:44px;padding:8px 12px;}
.profile-business-surface .profile-device-library {margin:0;border-top:1px solid var(--tblr-border-color);}
.profile-business-surface .list-panel {border:0;border-radius:0;box-shadow:none;}
.profile-business-surface .list-heading .list-totals {gap:12px;flex-wrap:wrap;overflow:visible;}
.profile-business-surface .list-heading .list-totals strong {font-size:12px;font-weight:400;}
.profile-business-surface .list-heading > .btn {font-size:12px;}
.profile-business-surface .table > :not(caption) > * > * {padding:8px;line-height:20px;}
.profile-business-surface .table thead th {font-size:12px;background:var(--tblr-bg-surface-secondary);}
.profile-business-surface .table td {font-size:13px;}
.profile-business-surface .table a:not(.btn) {color:var(--tblr-primary);}
.profile-business-surface .association-content > :is(a,small) {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.profile-business-surface .association-content small {font-size:12px;line-height:20px;color:var(--tblr-secondary);}
.profile-business-surface .association-actions .association-action-create {font-weight:400;border:0;padding-left:0;}
.profile-business-surface .association-notes {color:var(--tblr-secondary);font-size:12px;}

/* Fit profile lists to their page or drawer; scroll only below readable widths. */
.archive-profile .table.profile-adaptive-table {width:100%;table-layout:fixed;}
.archive-profile .table.profile-configuration-table {min-width:680px;}
.archive-profile .table.profile-operating-table {min-width:680px;}
.archive-profile .table.profile-bill-table {min-width:800px;}
.archive-profile .table.profile-adaptive-table > :not(caption) > * > * {padding:8px;line-height:20px;}
.archive-profile .table.profile-adaptive-table thead th {white-space:normal;}
.archive-profile .profile-adaptive-table .association-actions {flex-wrap:wrap;gap:4px 10px;white-space:normal;}
.archive-profile .profile-adaptive-table td:nth-child(-n+2) .text-nowrap {white-space:normal!important;overflow-wrap:anywhere;}
.association-note-details {font-size:12px;color:var(--tblr-secondary);}
.association-note-details summary {display:flex;align-items:flex-start;gap:8px;cursor:pointer;list-style:none;}
.association-note-details summary::-webkit-details-marker {display:none;}
.association-note-preview {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.association-note-expand,.association-note-collapse {flex:none;color:var(--tblr-primary);}
.association-note-details .association-note-collapse,
.association-note-details[open] .association-note-expand,
.association-note-details[open] .association-note-preview {display:none;}
.association-note-details[open] .association-note-collapse {display:inline;}
.association-note-full {white-space:pre-line;overflow-wrap:anywhere;margin-top:4px;}
.profile-business-surface .list-notes {padding:6px 12px;}

.drawer-title-group {flex:1;min-width:0;}
.drawer-title-group h2 {margin:0;overflow-wrap:anywhere;line-height:1.5;}
.drawer-title-group [data-drawer-context] {font-size:12px;line-height:1.5;margin-bottom:2px;}
.drawer-head > [data-drawer-actions], .drawer-head > button {flex-shrink:0;}
.profile-basic-surface .profile-facts {margin-bottom:0;}
.profile-basic-surface .profile-facts > :not(caption) > * > * {padding:8px 12px;line-height:1.6;}
.profile-basic-surface .profile-facts tbody th {font-weight:400;color:var(--tblr-secondary);}
.profile-basic-surface .profile-facts td {overflow-wrap:anywhere;}
@media (max-width:600px) {
  .profile-facts th:first-child {width:100px;}
  .drawer-head {gap:8px!important;}
}

/* Statement workspaces share the compact profile navigation and table surfaces. */
.statement-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:8px 0 16px; }
.statement-profile > .alert { margin:0 0 12px; }
.statement-profile .progress-steps { gap:0; padding:0; border-bottom:1px solid var(--tblr-border-color); }
.statement-profile .progress-steps .list-group-item { border:0; border-radius:0; background:none; padding:10px 12px; }
.statement-profile .progress-steps .list-group-item + .list-group-item { border-left:1px solid var(--tblr-border-color); }
.statement-profile .check-panel { margin:0; border:0; border-bottom:1px solid var(--tblr-border-color); border-radius:0; }
.statement-workspace .statement-filters { margin:0; padding:10px 12px; border-bottom:1px solid var(--tblr-border-color); }
.statement-filters .month-picker { flex:0 0 190px; }
.statement-filters > .dropdown:not(.month-picker) { flex:0 0 auto; }
.statement-counts { display:flex; align-items:center; gap:8px 20px; flex-wrap:wrap; color:var(--tblr-secondary); font-size:12px; }
.statement-counts b { color:var(--tblr-body-color); font-variant-numeric:tabular-nums; }
.statement-workspace .selection-bar { margin:0; padding:8px 12px; border:0; border-bottom:1px solid var(--tblr-border-color); border-radius:0; }
.statement-workspace .billing-month-head { padding:10px 12px; justify-content:space-between; }
.statement-workspace .billing-month-head h3 { font-size:13px; }
.statement-workspace .billing-month-checks { padding:0 12px; }
.statement-workspace .billing-month-checks .check-panel { margin-bottom:10px; }
.statement-workspace .detail-table-surface > p { margin:0; padding:10px 12px; }
@media (max-width: 640px) {
  .statement-filters .month-picker { flex-basis:100%; }
}

/* Shared list frame: fixed chrome around one scrolling, single-line table. */
.list-page > .profile-tabs, .list-page > .alert { flex:none; }
.list-page > .profile-tabs { margin-bottom:8px; }
.list-panel { display:flex; flex-direction:column; min-width:0; overflow:hidden; }
.list-heading h2 { margin:0; font-size:16px; }
.list-totals { display:flex; align-items:center; color:var(--tblr-secondary); font-size:12px; }
.list-notes { flex:none; border-top:1px solid var(--tblr-border-color); padding:5px 12px; font-size:11px; color:var(--tblr-secondary); }
.list-table { table-layout:fixed; min-width:940px; width:100%; margin:0; font-size:12px; }
.list-table.is-column-sized { min-width:0; }
/* Empty lists must center the hint in the visible scroller, not in the full wide table. */
.list-table.is-empty { width:100%!important; min-width:0!important; }
.list-table.is-empty col { width:auto!important; }
.list-table > :not(caption) > * > * { vertical-align:middle; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; padding:7px 8px; line-height:20px; }
.list-table thead th { padding-right:14px; position:relative; font-size:12px; }
.list-table td > a { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.list-table td.empty { display:table-cell; padding:28px 12px; text-align:center; }
.list-table .form-check-input { margin:0; vertical-align:middle; }
.list-table .money { font-variant-numeric:tabular-nums; }
.list-row-actions { display:flex; align-items:center; gap:12px; flex-wrap:nowrap; }
.list-scroll { min-width:0; }
.list-selection-form { display:flex; flex-direction:column; flex:1; min-height:0; margin:0; }
.list-tools { flex:none; display:flex; align-items:center; flex-wrap:nowrap; gap:8px; padding:6px 12px; border-bottom:1px solid var(--tblr-border-color); overflow-x:auto; font-size:12px; }
.list-tools > * { flex:none; white-space:nowrap; }
.list-tools [data-selected-count] { margin-left:auto; }
.statement-list-panel .statement-filters { display:flex; flex:none; flex-wrap:nowrap; margin:0; padding:8px 12px; gap:8px; border-bottom:1px solid var(--tblr-border-color); }
.statement-list-panel .statement-filters > .form-control { flex:1; min-width:100px; max-width:none; }
.statement-list-panel .statement-filters > .form-select { flex:0 0 135px; width:135px; min-width:0; }
.statement-list-panel .statement-filters .month-picker { flex:0 0 160px; }
.statement-list-panel .statement-filters .form-control, .statement-list-panel .statement-filters .form-select, .statement-list-panel .statement-filters .btn { min-height:34px; height:34px; padding-top:5px; padding-bottom:5px; }
.statement-list-panel .statement-filters > .btn { flex:none; }
.statement-workspace > .pagination-row, .statement-workspace > .pagination { flex:none; }
.drawer-body .list-page { flex:none; min-height:360px; height:min(75dvh,800px); }
@media(max-width: 700px) {
  .statement-list-panel .statement-filters { overflow-x:auto; }
  .statement-list-panel .statement-filters > .form-control { flex:0 0 160px; }
}

.printer-list-filters {display:flex;align-items:center;flex:none;flex-wrap:nowrap;gap:8px;margin:0;padding:8px 12px;border-bottom:1px solid var(--tblr-border-color);}
.printer-list-filters .form-control {flex:1;min-width:100px;}
.printer-list-filters .form-select {flex:0 0 180px;width:180px;}
.printer-list-filters > label,.printer-list-filters > .btn {flex:none;white-space:nowrap;}
.printer-list-filters .form-control,.printer-list-filters .form-select,.printer-list-filters .btn {min-height:34px;height:34px;padding-top:5px;padding-bottom:5px;}
@media(max-width:700px) {.printer-list-filters {overflow-x:auto;}.printer-list-filters .form-control {flex:0 0 200px;}}

/* The model directory and list scroll independently within the shared page frame. */
.directory-list-page .directory-list-layout {display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-items:stretch;gap:12px;flex:1;min-height:0;}
.directory-list-page .brand-directory {overflow-anchor:none;position:static;min-height:0;max-height:none;height:100%;overflow:auto;margin:0!important;}
.directory-list-page .archive-tree-head {padding:10px 12px;}
.directory-list-page .archive-search {margin-top:8px;}
.directory-list-page .archive-nodes {padding:6px;}
.directory-list-page .archive-nodes a {padding:5px 7px;}
.model-library-page .model-list-panel {height:auto;min-height:0;}
.model-list-filters {display:flex;align-items:center;gap:8px;flex:none;padding:8px 12px;border-bottom:1px solid var(--tblr-border-color);}
.model-list-filters .form-select {width:150px;}
.model-list-filters .form-select,.model-list-filters .btn {min-height:34px;height:34px;padding-top:5px;padding-bottom:5px;}
@media(max-width:850px) {
  .directory-list-page .directory-list-layout {grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);}
  .directory-list-page .brand-directory {height:auto;max-height:180px;}
}

.directory-list-content {display:flex;flex-direction:column;min-width:0;min-height:0;}
.directory-list-content>.pagination-row {flex:none;padding:8px 0 0;font-size:12px;gap:8px;}

.contract-workspace-content {display:flex;flex:1;flex-direction:column;min-width:0;min-height:0;}
.deposit-summary {flex:none;}
.deposit-summary-heading {display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px;}
.deposit-summary-heading h2 {font-size:16px;margin:0;}
.deposit-summary-heading>span {font-size:12px;}
.deposit-summary-cards {display:grid;grid-template-columns:1.35fr repeat(5,minmax(0,1fr));gap:8px;margin-bottom:10px;}
.deposit-summary-card {padding:10px 12px;gap:5px;color:var(--tblr-body-color);text-decoration:none;margin:0;}
.deposit-summary-card>span,.deposit-summary-card small {font-size:12px;color:var(--tblr-secondary);font-weight:400;}
.deposit-summary-card>strong {font-size:22px;line-height:1.25;font-variant-numeric:tabular-nums;}
.deposit-summary-card:hover {border-color:var(--tblr-primary);background:var(--tblr-primary-lt);}
.deposit-report-hint {flex:none;padding:8px 12px;margin:0;font-size:12px;line-height:1.7;color:var(--tblr-secondary);background:#f8fafc;border-bottom:1px solid var(--tblr-border-color);}
.deposit-summary>.deposit-report-hint {margin-bottom:10px;border:1px solid var(--tblr-border-color);border-radius:6px;}
.deposit-workspace .record-list-filters {flex-wrap:wrap;overflow:visible;}
.deposit-workspace .record-list-filters .deposit-month {width:150px;min-width:150px;flex:0 0 150px;}
.deposit-workspace .record-list-filters #deposit-search {min-width:170px;max-width:320px;}
.deposit-workspace .record-list-filters>.form-select {width:140px;flex-basis:140px;}
.deposit-workspace .record-list-filters>.btn-group {flex:none;}
.deposit-workspace .list-table td.deposit-wrap {white-space:normal;overflow-wrap:anywhere;}
.deposit-wrap details>div {margin-top:8px;}
@media(max-width:1100px) {.deposit-summary-cards {grid-template-columns:repeat(3,minmax(0,1fr));}}
.contract-summary-heading {display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex:none;margin-bottom:10px;}
.contract-summary-heading h2 {font-size:16px;margin:0;}
.contract-summary-heading>span {font-size:12px;}
.contract-expiry-cards {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;flex:none;margin-bottom:12px;}
.contract-expiry-card {padding:10px 12px;gap:6px;color:var(--tblr-body-color);text-decoration:none;margin:0;}
.contract-expiry-card>span {font-size:12px;color:var(--tblr-secondary);}
.contract-expiry-card>strong {font-size:24px;line-height:1.2;font-variant-numeric:tabular-nums;}
.contract-expiry-card small {font-size:12px;font-weight:400;color:var(--tblr-secondary);}
.contract-expiry-card:hover,.contract-expiry-card.is-selected {border-color:var(--tblr-primary);background:var(--tblr-primary-lt);}
.contract-workspace .record-list-filters #expiry-status {width:185px;flex-basis:185px;}
.contract-renewal-evidence {margin-top:8px;white-space:normal;}
.contract-renewal-evidence small {display:block;}
.list-table td.contract-renewal-cell {white-space:normal;}
@media(max-width:1100px) {.contract-expiry-cards {grid-template-columns:repeat(3,minmax(0,1fr));}}

.association-table {table-layout:fixed;width:100%;min-width:640px;}
.association-table th:first-child {width:calc(5rem + 24px);white-space:nowrap;}
.association-table td:first-child {white-space:nowrap;}
.association-table th:nth-child(3) {width:28%;}
.association-table th:last-child {width:7.5rem;}
.association-actions {display:flex;align-items:center;gap:12px;white-space:nowrap;}
.association-action {display:inline-flex;align-items:center;min-height:32px;padding:4px 0;border:0;background:none;color:var(--tblr-primary);font:inherit;line-height:1.4;text-decoration:none;white-space:nowrap;cursor:pointer;}
.association-action:hover {color:var(--tblr-link-hover-color);text-decoration:underline;text-underline-offset:3px;}
.association-action:focus-visible {outline:2px solid var(--tblr-primary);outline-offset:3px;border-radius:2px;}
.association-action-create {margin-left:auto;font-weight:600;}
.association-action-create:not(:first-child) {padding-left:12px;border-left:1px solid var(--tblr-border-color);}
.association-table .association-notes {white-space:pre-line;overflow-wrap:anywhere;}
.association-table .badge + .association-notes {margin-left:8px;}

.association-summary-content {display:flex;align-items:center;gap:8px;min-width:0;}
.association-preview {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.association-count {flex:none;white-space:nowrap;}
.association-children {background:var(--tblr-bg-surface-secondary);}
.association-children td:nth-child(-n+2) {padding-left:24px;}
.association-children[hidden] {display:none;}
.association-table td {overflow-wrap:anywhere;}

/* Current work keeps one device's agreement, pricing, billing and tasks together. */
.business-filters .form-control {flex:1 1 200px;width:auto;}
.business-filters .form-select {flex:0 1 190px;width:auto;}
.current-business-table {width:100%;min-width:820px;table-layout:fixed;}
.current-business-table .business-device-col {width:13%;}
.current-business-table .business-contract-col {width:18%;}
.current-business-table .business-price-col {width:21%;}
.current-business-table .business-rule-col {width:18%;}
.current-business-table .business-todo-col {width:20%;}
.current-business-table .business-action-col {width:10%;}
.current-business-table td {vertical-align:top;overflow-wrap:anywhere;}
.current-business-table small,.business-todos small {display:block;font-size:12px;line-height:1.6;color:var(--tblr-secondary);}
.current-business-table .badge {margin-top:4px;max-width:100%;white-space:normal;text-align:left;line-height:1.5;}
.current-business-table .business-site-row th {background:var(--tblr-bg-surface-secondary);border-top:1px solid var(--tblr-border-color);}
.business-actions {display:flex;align-items:flex-start;flex-direction:column;}
.business-todos summary {cursor:pointer;min-height:28px;line-height:1.6;padding:3px 0;}
.business-todos summary:focus-visible {outline:2px solid var(--tblr-primary);outline-offset:2px;}
.business-task-detail {padding:4px 0 8px;}
.business-task-detail p {font-size:12px;line-height:1.65;white-space:pre-line;margin:0;}
.business-task + .business-task {margin-top:2px;}
.business-todos > details > details {padding-left:6px;}

.customer-name-cell {display:flex;align-items:center;gap:4px;min-width:0;}
.customer-name-cell .archive-list-customer {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.customer-name-cell .customer-sites-toggle {flex:0 0 24px;width:24px;height:24px;min-height:24px;padding:0;}
.customer-sites-toggle .icon {width:16px;height:16px;transition:transform .15s ease;}
.customer-sites-toggle[aria-expanded="true"] .icon {transform:rotate(90deg);}
.customer-toggle-spacer {flex:0 0 24px;}
@media (prefers-reduced-motion:reduce) {.customer-sites-toggle .icon {transition:none;}}
.customer-site-rows[hidden] {display:none;}
.customer-site-rows {background:var(--tblr-bg-surface-secondary);}
.customer-site-row .customer-site-name {padding-left:48px;}

.archive-overview-table thead th {padding-right:14px;}
.list-table th:has([data-select-all]) {padding-right:8px;}

/* Header and body share offsets, including expanded customer workplace rows. */
.list-table[data-fixed-columns="2"] > :is(thead,tbody) > tr > :is(th,td):nth-child(-n+2):not([colspan]) {
  position:sticky;z-index:1;background-color:var(--tblr-bg-surface,#fff);
}
.list-table[data-fixed-columns="2"] > :is(thead,tbody) > tr > :is(th,td):first-child {left:0;}
.list-table[data-fixed-columns="2"] > :is(thead,tbody) > tr > :is(th,td):nth-child(2) {
  left:var(--list-second-column-left,48px);
}
.list-page .list-table[data-fixed-columns="2"] > thead > tr > th:nth-child(-n+2) {
  z-index:3;background-color:#f8fafc;
}
.list-table[data-fixed-columns="2"] > .customer-site-rows > tr > td:nth-child(-n+2) {
  background-color:var(--tblr-bg-surface-secondary,#f6f8fb);
}
.list-table[data-fixed-columns="2"] > :is(thead,tbody) > tr > :is(th,td):nth-child(2)::after {
  content:"";position:absolute;top:0;bottom:0;right:0;width:1px;background:var(--tblr-border-color);box-shadow:2px 0 4px #0000000d;pointer-events:none;
}

/* Device operations: one compact entry per purpose. */
.device-operation-menu { list-style: none; margin: 0; padding: 4px 12px; }
.device-operation-menu > li + li { border-top: 1px solid var(--tblr-border-color); }
.device-operation-menu .device-operation-action { padding: 10px 4px; }
.device-operation-menu .device-operation-label { font-size: 14px; }
.operation-type-picker .form-selectgroup-label { white-space: nowrap; }

/* Field staff: one search, readable device cards, then the existing operation drawer. */
.home-device-operations { margin-bottom: 24px; border: 1px solid var(--tblr-border-color); border-radius: 8px; background: var(--tblr-bg-surface); overflow: hidden; }
.home-device-entry { display: flex; align-items: center; gap: 12px; padding: 18px 16px; min-height: 92px; background: var(--tblr-primary); color: #fff; }
.home-device-entry:hover { color: #fff; text-decoration: none; }
.home-device-entry:focus-visible { outline: 2px solid #fff; outline-offset: -5px; color: #fff; }
.home-device-entry > .icon { width: 28px; height: 28px; flex-shrink: 0; }
.home-device-entry-main { min-width: 0; }
.home-device-entry h2 { font-size: 20px; line-height: 1.4; color: inherit; }
.home-device-entry p { margin: 4px 0 0; font-size: 14px; }
.home-device-go { margin-left: auto; flex-shrink: 0; white-space: nowrap; font-size: 14px; }
.home-device-search { padding: 16px; }
.home-device-search .form-label { font-size: 14px; }
@media (max-width: 991.98px) {
  #main:has(> .home-device-operations) > .page-heading { display: none; }
  .page-body:has(#main > .home-device-operations) { margin-top: 12px; }
}
.field-device-page { max-width: 960px; margin-inline: auto; }
.field-device-search { margin-bottom: 24px; }
.field-device-search .form-label { font-size: 15px; }
.field-device-search-row { display: flex; gap: 8px; }
.field-device-search-row .form-control { min-width: 0; min-height: 48px; font-size: 16px; }
.field-device-search-row .btn { min-width: 72px; min-height: 48px; }
.field-device-results-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 12px; font-size: 14px; }
.field-device-results-heading > a { display: inline-flex; min-height: 44px; align-items: center; }
.field-device-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.field-device-card { display: flex; flex-direction: column; padding: 18px; border: 1px solid var(--tblr-border-color); border-radius: 8px; background: var(--tblr-bg-surface); color: var(--tblr-body-color); overflow-wrap: anywhere; }
.field-device-card:hover { color: var(--tblr-body-color); text-decoration: none; border-color: var(--tblr-primary); }
.field-device-card:focus-visible { outline: 2px solid var(--tblr-primary); outline-offset: 3px; }
.field-device-card-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; margin-bottom: 4px; }
.field-device-card-heading strong { font-size: 17px; }
.field-device-card-heading .badge { margin-left: auto; white-space: normal; text-align: left; }
.field-device-model { font-size: 14px; color: var(--tblr-secondary); margin-bottom: 14px; }
.field-device-customer { font-weight: 600; margin-bottom: 3px; }
.field-device-user { font-size: 14px; margin-bottom: 3px; }
.field-device-location { font-size: 14px; color: var(--tblr-secondary); margin-bottom: 16px; }
.field-device-card-footer { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; gap: 8px 12px; padding-top: 12px; margin-top: auto; border-top: 1px solid var(--tblr-border-color); color: var(--tblr-secondary); font-size: 12px; }
.field-device-serial { color: var(--tblr-body-color); }
.field-device-select { color: var(--tblr-primary); font-size: 14px; font-weight: 600; white-space: nowrap; margin-left: auto; }
.field-device-empty { grid-column: 1 / -1; padding: 40px 16px; text-align: center; border: 1px dashed var(--tblr-border-color); border-radius: 8px; }
@media (max-width: 600px) {
  .field-device-results { grid-template-columns: minmax(0, 1fr); }
  .field-device-card { padding: 16px; }
  .field-device-page .pagination .page-link { min-width: 44px; min-height: 44px; }
  .device-operation-menu .device-operation-action { min-height: 64px; padding-block: 12px; }
}

/* Customer summaries: scan the essentials; open the archive for business detail. */
.archive-overview-table[data-column-layout="summary-v1"].is-column-sized {min-width:100%;}
.archive-overview-table[data-column-layout="summary-v1"] > :is(thead,tbody) > tr > .text-end {text-align:right;font-variant-numeric:tabular-nums;padding-right:18px;}
.archive-overview-table[data-column-layout="summary-v1"] .customer-sites-meta {padding-left:28px;margin-top:3px;font-size:12px;line-height:1.4;color:var(--tblr-secondary);overflow:hidden;text-overflow:ellipsis;}
.archive-overview-table[data-column-layout="summary-v1"] .customer-site-name {padding-left:24px;}
.archive-overview-table[data-column-layout="summary-v1"] .customer-site-row .customer-sites-meta {padding-left:24px;}
.archive-overview-table[data-column-layout="summary-v1"] .archive-detail-link {color:var(--tblr-primary);}
.archive-overview-table[data-column-layout="summary-v1"] .archive-todo-link {color:var(--tblr-warning);}
.archive-overview-table[data-column-layout="summary-v1"] .archive-sequence {font-variant-numeric:tabular-nums;}
.archive-overview-table :is(.archive-list-customer,.customer-site-name) {color:var(--tblr-primary);}

/* A list keeps the same frame during initial navigation and result updates. */
#main:has(>.list-page) {flex:1;}
.list-heading :is(.archive-list-totals, .list-totals) {scrollbar-width:none;}
.standard-list-page > .card:has(.table-responsive),
.standard-list-page > .card.table-responsive,
.standard-list-page > [data-list-results] {flex:1;min-height:0;margin-bottom:0!important;overflow:hidden;}
.standard-list-page > .card:has(.table-responsive) {display:flex;flex-direction:column;}
.standard-list-page .table-responsive {flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable;}
.standard-list-page > .card.table-responsive {overflow:auto;}
.standard-list-page > [data-list-results] {overflow:auto;}
.standard-list-page .table {width:100%;min-width:640px;table-layout:fixed;}
.standard-list-page thead th {position:sticky;top:0;z-index:2;background:#f8fafc;}
.standard-list-page > form,.standard-list-page > .actions,.standard-list-page > p,
.standard-list-page .card-header,.standard-list-page .card > form {flex:none;}
.list-page [aria-label="分页"] {flex:none;min-height:30px;}
.list-page .list-scroll,.standard-list-page .table-responsive {overflow-anchor:none;}
@media (max-width:767px) {
  .directory-list-page .brand-directory {height:180px;min-height:180px;}
}
.list-summary {flex:none;}
.list-summary[open] {max-height:35dvh;overflow:auto;}
.standard-list-page .card > .card-body:has(form) {flex:none;}
[data-list-clear][hidden] {display:none!important;}

/* Drawer chrome keeps its geometry while only record data is loading. */
.drawer-body:has(> .drawer-workspace) {display:flex; flex-direction:column; overflow:hidden; opacity:1}
.drawer-body > .drawer-workspace {flex:1; min-height:0; display:flex; flex-direction:column}
#record-drawer:has(.drawer-workspace) > .drawer-status {display:block!important; min-height:37px}
#record-drawer:has(.drawer-workspace) > .drawer-status:empty {visibility:hidden}
#record-drawer:has(.drawer-workspace) .offcanvas-title {overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.drawer-workspace .table-responsive {scrollbar-gutter:stable}
.drawer-workspace thead th {position:sticky; top:0; z-index:1; background:var(--tblr-bg-surface-secondary,#f6f8fb)}
.drawer-workspace [aria-disabled=true] {color:var(--tblr-secondary); cursor:default}
.drawer-workspace [data-drawer-customer], .drawer-workspace [data-drawer-rule] {overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.drawer-workspace .content-loading {min-height:0; border:0; padding:0; margin:0; overflow:hidden}
.drawer-workspace .skeleton-bar {max-width:100%}
.drawer-workspace .deposit-summary {flex:none}
.drawer-workspace .deposit-summary .card-body {padding:16px}
.drawer-workspace .deposit-summary .d-flex {flex-wrap:nowrap!important}
.drawer-workspace .deposit-summary .d-flex > span {flex:none}
.deposit-summary-values {white-space:nowrap; overflow:auto; scrollbar-width:none}
.drawer-workspace .deposit-data-panel {flex:1; min-height:0; overflow:hidden}
.drawer-workspace .deposit-data-panel .card-header, .drawer-workspace .deposit-data-panel .list-notes {flex:none}
.drawer-workspace .deposit-data-panel .table-responsive {flex:1; min-height:0; overflow:auto}
.drawer-workspace > nav[aria-label=分页] {flex:none; margin-block:0!important; min-height:30px}
.drawer-workspace .customer-deposit-table .skeleton-rows td {height:78px}
.drawer-workspace .customer-deposit-history .skeleton-rows td {height:64px}
.drawer-workspace .billing-review-heading {flex:none; min-height:24px; margin-bottom:16px}
.billing-review-heading > strong {overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.billing-review-heading > :last-child {flex:none}
.drawer-workspace .billing-review-summary {flex:none}
.drawer-workspace .billing-review-summary > .card-body {height:156px; overflow:auto; scrollbar-gutter:stable}
.drawer-workspace .billing-review-form {flex:1; min-height:0; display:flex; flex-direction:column}
.drawer-workspace .billing-review-data {flex:1; min-height:0; overflow:auto; scrollbar-gutter:stable}
.drawer-workspace .billing-review-confirmation {flex:none; padding-top:12px}
.drawer-workspace .billing-review-confirmation .form-field {margin-bottom:12px}
.drawer-workspace .billing-review-form > .form-actions {flex:none; margin:0; padding:16px 0 0}
.drawer-workspace.statement-preview > .statement-heading, .drawer-workspace.statement-preview > .profile-tabs {flex:none}
.drawer-workspace.statement-preview > .detail-table-surface {flex:1; min-height:0; display:flex; flex-direction:column; overflow:hidden}
.drawer-workspace.statement-preview .machine-table-toolbar {flex:none}
.drawer-workspace .statement-preview-data {flex:1; min-height:0; overflow:auto; scrollbar-gutter:stable}
.drawer-workspace .statement-preview-data .table-responsive {overflow:visible}
.drawer-workspace.statement-preview table {width:100%; table-layout:fixed}
.drawer-workspace.statement-preview .statement-heading {min-height:48px}
.drawer-workspace.statement-preview .statement-heading > strong {overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.drawer-workspace.statement-preview .statement-heading > .badge {flex:none}
@media (max-height:650px) {
  .drawer-workspace .billing-review-summary > .card-body {height:110px}
  .drawer-workspace .deposit-data-panel .list-notes {max-height:40px; overflow:auto}
}
.drawer-workspace .preview-checks .accordion-button,
.drawer-workspace .preview-checks-placeholder {height:52px; display:flex; align-items:center; gap:12px; padding:12px; border-bottom:1px solid var(--tblr-border-color)}
.drawer-workspace .preview-checks .accordion-button > span {flex-wrap:nowrap!important; overflow:hidden; white-space:nowrap}
.drawer-workspace .preview-checks .check-hint {overflow:hidden; text-overflow:ellipsis}
.drawer-workspace .preview-checks .check-panel,
.drawer-workspace .preview-checks .accordion-item {border:0}
.record-list-filters {display:flex; flex:none; align-items:center; flex-wrap:nowrap; gap:8px; padding:8px 12px; margin:0; border-bottom:1px solid var(--tblr-border-color); overflow-x:auto}
.record-list-filters > .form-control {flex:1; min-width:200px; max-width:420px}
.record-list-filters > .form-select,.record-list-filters > .wizard-customer-picker {flex:0 0 160px; width:160px}
.record-list-filters > .btn {flex:none}
.record-list-page > .actions, .record-list-page > .list-summary {flex:none}
.record-list-page .list-notes {white-space:nowrap; overflow:auto; scrollbar-width:none}
.record-list-scope {gap:12px; min-width:0; overflow:hidden}
.record-list-scope > span {white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.record-list-scope > span:last-child {flex:none}
.record-list-page .list-table tbody td:not(.empty) {height:38px; padding:6px 8px}
.record-list-page > p, .record-list-page > nav, .record-list-page .report-context {flex:none}
.record-list-page .report-context {margin:0; padding:8px 12px; border-bottom:1px solid var(--tblr-border-color); max-height:30vh; overflow:auto}
.record-list-page .report-context > summary {font-size:12px; cursor:pointer}
.record-list-page .report-context[open] > summary {margin-bottom:12px}
.record-list-page .list-table td > small {display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.history-activation-list-table.is-column-sized {min-width:100%}
.record-list-page .history-activation-list-table tbody td.text-end {padding-right:14px}
.record-list-page .list-table details[open] {white-space:normal}
.record-list-page .list-table .audit-detail pre {white-space:pre-wrap; overflow-wrap:anywhere}

@media (max-width:700px) {
  /* The empty row is full-width; a compressed 13-column header adds no usable context. */
  .list-table.is-empty thead { display:none; }
}
/* Mail configuration uses the same compact device toolbar and table surface. */
.printer-mail-workspace .profile-section-title {margin:0;font-size:14px;font-weight:600;line-height:20px;}
.printer-mail-workspace .machine-table-toolbar {min-height:48px;}
.printer-mail-columns .machine-table-toolbar {min-height:52px;}
.printer-mail-columns {border-top:1px solid var(--tblr-border-color);}
.printer-mail-columns > section {border-bottom:1px solid var(--tblr-border-color);}
.printer-mail-workspace > .alert {margin:12px;}
.printer-mail-disclosure > .accordion-item {border:0;border-radius:0;}
.printer-mail-disclosure + .printer-mail-disclosure {border-top:1px solid var(--tblr-border-color);}
.printer-mail-disclosure .accordion-button {min-height:44px;padding:10px 12px;font-weight:500;}
.printer-mail-disclosure .accordion-body {padding:12px;}
.printer-mail-disclosure[data-mail-details="deliveries"] > .accordion-item > .accordion-collapse > .accordion-body,
.printer-mail-disclosure[data-mail-details="operations"] > .accordion-item > .accordion-collapse > .accordion-body {padding:0;}

.archive-overview-table .customer-device-models {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

/* Shared row actions stay in view in wide lists and drawer tables. */
.table .table-action-cell {position:sticky;right:0;z-index:4;background:var(--tblr-bg-surface,#fff);box-shadow:-1px 0 0 var(--tblr-border-color);white-space:normal;overflow:visible;min-width:72px}
.table thead .table-action-cell {z-index:6;background:#f8fafc}
.table tbody tr:hover > .table-action-cell {background:var(--tblr-bg-surface-secondary,#f6f8fb)}
.table .table-action-cell :is(.actions,.association-actions,.business-actions) {display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}
.table .table-action-cell > :is(a,button,form) {display:inline-block;vertical-align:middle;margin-right:8px}
.table .table-action-cell .table-action {font-size:12px;line-height:20px;white-space:nowrap;font-weight:500}
.table .table-action-cell .table-action.btn {padding:0;min-height:0;border:0;background:transparent;box-shadow:none}
.table .table-action[data-action-tone=view] {color:#066fd1!important}
.table .table-action[data-action-tone=edit] {color:#946200!important}
.table .table-action[data-action-tone=confirm] {color:#207345!important}
.table .table-action[data-action-tone=danger] {color:#b42318!important}
.table .table-action[data-action-tone=document] {color:#596779!important}
.table .table-action:hover {text-decoration:underline}
.table :is(th,td).table-number-cell,
.record-list-page .list-table tbody td.table-number-cell {padding-right:14px;text-align:right;font-variant-numeric:tabular-nums}
.table .table-action:focus-visible {outline:2px solid currentColor;outline-offset:2px;border-radius:2px}
.table-toolbar-action[data-action-tone=view] {color:#066fd1}
.table-toolbar-action[data-action-tone=edit] {color:#946200}
.table-toolbar-action[data-action-tone=document] {color:#596779}
.table-toolbar-action[data-action-tone=confirm] {color:#207345}
.table-toolbar-action.btn-primary[data-action-tone=confirm] {color:#fff;background:#207345;border-color:#207345}
.table-toolbar-action[data-action-tone=danger] {color:#b42318}
.table-toolbar-action.btn-danger[data-action-tone=danger] {color:#fff;background:#b42318;border-color:#b42318}
