/* FE statistics hierarchy: compact filters; five KPI cards; 3/3/3/2 charts. */
#page-statistics .sw-retired { display:none !important; }
#page-statistics .sw-filter-panel { padding:14px 16px; margin-bottom:16px !important; }
#page-statistics .sw-filter-panel .filter-panel-header[hidden] { display:none !important; }
#page-statistics > .filter-panel.sw-filter-panel .filter-grid.sw-filter-grid { grid-template-columns:minmax(0,1fr);gap:10px 12px;align-items:end; }
#page-statistics .sw-filter-main { grid-column:1/-1;display:grid;grid-template-columns:repeat(var(--sw-field-count,5),minmax(0,1fr)) auto auto;gap:10px 12px;align-items:end;min-width:0; }
#page-statistics .sw-filter-main > .field { min-width:0;width:auto;margin:0; }
#page-statistics .sw-filter-main .field > label { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
#page-statistics .sw-filter-main select { width:100%;min-width:0;text-overflow:ellipsis; }
#page-statistics .sw-filter-main .dc-multi-trigger { min-height:40px;height:40px;border:1px solid #aeb6c6;border-radius:7px;padding:8px 11px;font-size:14px; }
#page-statistics .sw-filter-main .dc-multi-trigger.is-filtered { border-color:#aaa9df; }
#page-statistics .sw-filter-grid > .sw-active-filters { grid-column:1/-1;margin-top:0;min-width:0;max-width:100%;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:2px; }
#page-statistics .sw-active-filters .dc-filter-chip { flex:0 0 auto;max-width:240px; }
#page-statistics .sw-filter-main > #resetFilters { min-height:40px;height:40px;max-width:84px;padding:8px 0;margin:0;white-space:nowrap;align-self:end; }
#page-statistics .sw-filter-dates { grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;max-width:760px;width:100%; }
#page-statistics .sw-view-switch { grid-column:1/-1;padding:0 0 10px;border-bottom:1px solid var(--line); }
#page-statistics .sw-view-switch .dh-document-type-label { display:none; }
#page-statistics .sw-view-switch .dh-tabs { width:100%; }
#page-statistics .sw-view-switch .dh-tab { flex:1; }
#page-statistics .sw-filter-grid > [hidden] { display:none !important; }
#page-statistics .sw-filter-grid .field > label { display:block;position:static;padding:0;margin:0 0 5px;font-size:12px;line-height:1.3;font-weight:500;color:var(--ink-2); }
#page-statistics .sw-filter-grid select,
#page-statistics .sw-custom-dates input { height:40px;min-height:40px;background:#fff;border:1px solid #aeb6c6;border-radius:7px;padding:8px 12px;font-size:14px; }
#page-statistics .sw-comparison { display:flex;align-items:center;justify-content:center;gap:8px;min-height:40px;height:40px;padding:0 2px; }
#page-statistics .sw-check { display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink);margin:0;white-space:nowrap;cursor:pointer; }
#page-statistics .sw-check input { width:18px;height:18px;min-height:18px;padding:0;accent-color:var(--brand);flex:none; }
.sw-custom-dates { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0; }
.sw-custom-dates label { display:grid;gap:5px;font-size:12px;min-width:0;margin:0; }
#page-statistics .sw-custom-dates input { min-width:0;width:100%; }
.sw-workspace { display:grid;gap:16px;min-width:0; }
.sw-workspace > * { min-width:0; }
.sw-kpis { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px; }
.sw-kpis-four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.sw-kpi { position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:14px 16px;min-height:106px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden; }
.sw-kpi::before { content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--sw-color,var(--orange)); }
.sw-kpi-content { display:contents; }
.sw-kpi-label { grid-column:1;grid-row:1;min-width:0;font-size:12px;font-weight:700;line-height:16px;text-transform:uppercase;letter-spacing:.015em;color:var(--ink-2); }
.sw-kpi-value-group { grid-column:1/-1;grid-row:2;text-align:left;min-width:0; }
.sw-kpi > .dh-kpi-icon { grid-column:2;grid-row:1;width:36px;height:36px;justify-self:end; }
.sw-kpi > .dh-kpi-icon svg { width:24px;height:24px; }
.sw-kpi strong { display:block;font-size:20px;font-weight:700;color:var(--ink);line-height:24px;font-variant-numeric:tabular-nums; }
.sw-kpi small { display:block;color:var(--muted);font-size:12px;line-height:20px; }
.sw-quantity-kpi { grid-template-columns:minmax(0,1fr);align-items:start;gap:6px; }
.sw-quantity-kpi > .sw-kpi-content { display:grid;grid-column:1/-1;grid-row:2;gap:2px;min-width:0;align-self:center; }
.sw-quantity-row { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center; }
.sw-quantity-row > span { color:var(--muted);font-size:12px;line-height:18px;text-transform:uppercase; }
.sw-quantity-kpi strong { font-size:16px;line-height:20px;white-space:nowrap; }
.sw-section-head { display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px 0 0;min-height:44px; }
.sw-section-head h2 { display:flex;align-items:center;gap:8px;margin:0;font-size:20px;line-height:1.4;font-weight:700; }
.sw-section-head h2::before { content:"";width:3px;height:20px;background:var(--orange);border-radius:8px;flex:none; }
.sw-toggle { display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;width:max-content;max-width:100%;border:1px solid #7d8492;border-radius:8px;overflow:hidden; }
.sw-toggle button { min-height:44px;border:0;border-right:1px solid #7d8492;background:#fff;color:var(--ink);padding:8px 12px;font-size:14px;font-weight:500; }
.sw-toggle button:last-child { border-right:0; }
.sw-toggle button.active { color:var(--brand);background:#e4e3ff; }
.sw-toggle button:hover { background:#eeeffa; }
.sw-three { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px; }
.sw-two { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }
.sw-card { border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;padding:20px; }
.sw-card > header { display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin-bottom:12px;flex-wrap:wrap; }
.sw-card h3 { font-size:18px;line-height:1.35;margin:0;font-weight:700; }
.sw-card .sw-toggle button { min-height:36px;padding:6px 10px;font-size:12px; }
.sw-chart-card svg { display:block;width:100%;height:auto;min-height:220px;overflow:visible; }
.sw-chart-card svg text { font-size:12px;fill:#697181;font-family:var(--fe-font,system-ui); }
.sw-chart-card g[role="button"] { cursor:pointer; }
.sw-chart-card g[role="button"]:focus { outline:none; }
.sw-chart-card g[role="button"]:focus circle { stroke-width:4px;stroke:#1e27a0; }
.sw-chart-note { font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px;margin:6px 0 0;flex-wrap:wrap; }
.sw-chart-note i { width:16px;height:2px;background:var(--sw-color,var(--brand));display:inline-block; }
.sw-chart-note i.previous { background:repeating-linear-gradient(90deg,#9ca5b4 0 4px,transparent 4px 6px);margin-left:8px; }
.sw-ranks { display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0; }
.sw-rank { min-width:0;display:flex;align-items:center;gap:10px;border:0;background:none;width:100%;padding:0;text-align:left;color:var(--ink); }
.sw-rank:hover strong,.sw-donut-legend button:hover span { color:var(--brand);text-decoration:underline; }
.sw-rank-number { font-size:12px;color:var(--muted);width:14px;flex:none;text-align:center; }
.sw-rank-copy { display:block;flex:1;min-width:0; }
.sw-rank-copy > span { display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:5px; }
.sw-rank-copy strong { min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500; }
.sw-rank-copy b { flex:none;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums; }
.sw-rank-copy i { display:block;height:7px;border-radius:4px;background:#f0f1f6;overflow:hidden; }
.sw-rank-copy em { display:block;height:100%;border-radius:4px;background:var(--sw-color,var(--brand));transform-origin:left; }
.sw-donut-layout { display:grid;grid-template-columns:160px minmax(0,1fr);gap:24px;align-items:center;min-height:220px; }
.sw-donut { width:160px;height:160px;border-radius:50%;display:grid;place-items:center; }
.sw-donut > span { display:grid;align-content:center;text-align:center;background:#fff;width:110px;height:110px;border-radius:50%; }
.sw-donut strong { font-size:24px;line-height:1.3; }
.sw-donut small { font-size:12px;color:var(--muted); }
.sw-donut-legend { display:grid;gap:12px; }
.sw-donut-legend button { display:flex;align-items:center;gap:8px;width:100%;border:0;background:none;padding:0;text-align:left;color:var(--ink); }
.sw-donut-legend button > i { width:10px;height:10px;border-radius:50%;flex:none; }
.sw-donut-legend button > span { flex:1;min-width:0;font-size:12px;overflow-wrap:anywhere; }
.sw-donut-legend strong { font-size:14px;white-space:nowrap;text-align:right; }
.sw-donut-legend small { display:block;font-size:12px;color:var(--muted);font-weight:400; }
.sw-empty { color:var(--muted);text-align:center;font-size:14px;padding:28px 12px;margin:0; }
.sw-chart-empty { min-height:220px;display:grid;place-items:center; }
.sw-source-note,.sw-context-note { color:var(--muted);font-size:12px;line-height:1.5;margin:0; }
.sw-context-note { border-left:3px solid var(--brand);padding:8px 12px;background:#eeeffa; }
.sw-toolbar { display:flex;gap:16px;justify-content:space-between;align-items:center; }
.sw-toolbar p { margin:0;font-size:14px;color:var(--muted); }
.sw-utility-chart { position:relative;min-width:0; }
.sw-utility-chart .sw-card { height:100%;padding-bottom:54px; }
.sw-peak { position:absolute;bottom:14px;left:20px;right:20px;margin:0;color:var(--muted);font-size:12px;line-height:1.4; }
.sw-peak strong { color:var(--ink);font-weight:600; }
.sw-ledger { padding:0;overflow:hidden; }
.sw-table-wrap { max-width:100%;overflow:auto; }
.sw-table-wrap table { width:100%;border-collapse:collapse; }
.sw-table-wrap th { background:var(--canvas);color:var(--muted);font-size:12px;text-align:left;font-weight:600; }
.sw-table-wrap td,.sw-table-wrap th { border-bottom:1px solid var(--line);padding:12px 16px;vertical-align:middle; }
.sw-table-wrap td { font-size:14px; }
.sw-table-wrap td small { display:block;font-size:12px;color:var(--muted);margin-top:4px; }
.sw-table-wrap td .dh-select { min-width:150px; }
.sw-center-list { display:grid;gap:4px; }
.sw-center-list button { display:flex;justify-content:space-between;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;padding:12px 0;color:var(--ink);gap:16px; }
.sw-center-list strong { display:block;font-size:14px; }
.sw-center-list small { display:block;font-size:12px;color:var(--muted); }
.sw-center-list b { font-size:16px; }
.sw-source-dialog { width:min(960px,calc(100vw - 32px));max-height:85vh;overflow:auto;border:1px solid var(--line);padding:0;border-radius:16px;background:#fff;color:var(--ink);box-shadow:0 20px 60px #17224530; }
.sw-source-dialog::backdrop { background:#17224566; }
.sw-source-dialog > header { position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;background:#fff;border-bottom:1px solid var(--line);z-index:1; }
.sw-source-dialog h2 { font-size:18px;margin:0; }
.sw-source-dialog p { font-size:14px;margin:4px 0 0;color:var(--muted); }
@media(min-width:901px) { #page-statistics .sw-filter-panel .filter-panel-header { display:none !important; } }
@media(max-width:1500px) and (min-width:1024px) {
  .sw-kpi { padding:12px;gap:8px; }
  .sw-kpi > .dh-kpi-icon { width:32px;height:32px; }
  .sw-kpi > .dh-kpi-icon svg { width:22px;height:22px; }
  .sw-kpi strong { font-size:18px; }
  .sw-quantity-kpi strong { font-size:14px; }
  .sw-card { padding:16px; }
  .sw-donut-layout { grid-template-columns:130px minmax(0,1fr);gap:16px; }
  .sw-donut { width:130px;height:130px; }.sw-donut>span{width:90px;height:90px;}
}
@media(max-width:1023px) {
  .sw-kpis,.sw-kpis-four { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
  .sw-kpi { min-height:96px; }
  .sw-quantity-kpi { grid-column:1/-1;min-height:auto;padding:12px 16px; }
  .sw-quantity-kpi > .sw-kpi-content { gap:6px; }
  .sw-three,.sw-two { grid-template-columns:1fr; }
  .sw-section-head { flex-wrap:wrap;gap:10px; }
  .sw-section-head h2 { font-size:18px; }
  .sw-card { padding:16px; }
  .sw-chart-card svg { min-height:0; }
  #page-statistics .sw-filter-main { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #page-statistics .sw-filter-main > #resetFilters { justify-self:end;max-width:none; }
  #page-statistics .sw-filter-main > .sw-comparison { justify-content:flex-start; }
  #page-statistics .sw-filter-dates { grid-template-columns:minmax(0,1fr); }
  #page-statistics .sw-filter-grid select,#page-statistics .sw-custom-dates input { font-size:16px; }
  .sw-custom-dates { grid-column:auto; }
  .sw-toolbar { align-items:flex-start;flex-wrap:wrap; }
  .sw-table-wrap table { min-width:650px; }
  .sw-source-dialog .sw-table-wrap table { min-width:600px; }
  .sw-rank-copy strong,.sw-rank-copy b { font-size:14px; }
}
@media(max-width:520px) {
  #page-statistics .sw-comparison { flex-wrap:wrap;gap:4px; }
  #page-statistics .sw-comparison #resetFilters { margin-left:auto; }
  .sw-kpi { padding:12px;gap:8px; }
  .sw-kpi > .dh-kpi-icon { width:30px;height:30px; }
  .sw-kpi > .dh-kpi-icon svg { width:20px;height:20px; }
  .sw-kpi strong { font-size:20px; }
  .sw-quantity-kpi strong { font-size:16px; }
  .sw-donut-layout { grid-template-columns:1fr;justify-items:center;gap:16px; }
  .sw-donut-legend { width:100%; }
  .sw-toggle button { min-height:40px;padding:8px 10px;font-size:12px; }
  .sw-table-wrap td,.sw-table-wrap th { padding:12px; }
}

/* Vivid chart accents keep the FE indigo shell and use consistent metric colors. */
.sw-kpi { background:linear-gradient(120deg,color-mix(in srgb,var(--sw-color,#4353df) 6%,white),white 70%); }
#page-statistics .sw-kpi > .dh-kpi-icon { color:var(--sw-color,var(--brand));background:color-mix(in srgb,var(--sw-color,#4353df) 12%,white); }
.sw-rank-card > header h3 { border-left:3px solid var(--sw-color);padding-left:8px; }
.sw-rank-number { display:grid;place-items:center;min-width:22px;height:22px;border-radius:6px;background:color-mix(in srgb,var(--sw-color) 12%,white);color:var(--sw-color);font-weight:700; }
.sw-card-foot,.sw-chart-source-hint { margin:14px 0 0;font-size:11px;line-height:1.45;color:var(--muted); }
.sw-chart-card { position:relative; }
.sw-chart-summary { display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:52px;margin:0 0 8px;flex-wrap:wrap; }
.sw-chart-summary > div { display:grid;gap:3px; }
.sw-chart-summary > div > span { font-size:11px;color:var(--muted); }
.sw-chart-summary strong { font-size:22px;line-height:1.2;color:var(--sw-color,var(--ink));font-variant-numeric:tabular-nums; }
.sw-chart-peak-label { display:grid;gap:3px;font-size:11px;color:var(--muted);text-align:right; }
.sw-chart-peak-label b { color:var(--ink);font-weight:600; }
.sw-trend-chip { border-radius:6px;padding:5px 7px;font-size:11px;font-weight:600;background:color-mix(in srgb,var(--sw-color) 10%,white);color:var(--sw-color); }
.sw-chart-point { transition:r .15s ease,stroke-width .15s ease; }
.sw-chart-card g[role="button"]:hover .sw-chart-point,.sw-chart-card g[role="button"]:focus .sw-chart-point { r:6;stroke-width:3px; }
.sw-total-chip { display:grid;text-align:right;gap:2px;color:var(--brand);font-size:16px;font-weight:700;font-variant-numeric:tabular-nums; }
.sw-total-chip small { color:var(--muted);font-size:11px;font-weight:400; }
.sw-stack-legend { display:flex;flex-wrap:wrap;gap:8px 12px;margin:10px 0 0; }
.sw-stack-legend > span { display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--muted); }
.sw-stack-legend i,.sw-type-label i { display:block;width:9px;height:9px;flex:none;border-radius:3px; }
.sw-economic-grid { display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px; }
.sw-economic-grid .sw-distribution { display:flex;flex-direction:column; }
.sw-economic-grid .sw-donut-layout { flex:1; }
.sw-utility-selector { display:flex;flex-wrap:wrap;gap:8px; }
.sw-utility-selector > button { display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:6px 12px;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:13px;font-weight:600;transition:background .18s ease,border-color .18s ease; }
.sw-utility-selector > button.active { background:color-mix(in srgb,var(--sw-color) 10%,white);border-color:var(--sw-color);color:var(--sw-color); }
#page-statistics .sw-utility-selector .dh-kpi-icon { width:26px;height:26px;background:transparent;color:var(--sw-color);padding:0; }
#page-statistics .sw-utility-selector .dh-kpi-icon svg { width:22px;height:22px; }
.sw-consumption-grid[data-count="1"] { grid-template-columns:minmax(0,1fr); }
.sw-consumption-grid[data-count="1"] .sw-chart-card svg { max-height:310px; }
.sw-type-label { display:inline-flex;align-items:center;gap:8px; }
.sw-center-list button { padding-left:10px;border-left:3px solid var(--sw-color); }
.sw-center-list button b { color:var(--sw-color,var(--brand)); }
@media(min-width:1024px) and (max-width:1280px) {
  #page-statistics .sw-filter-main { gap:10px 8px; }
  #page-statistics .sw-filter-main select { font-size:13px;padding-left:8px; }
  #page-statistics .sw-filter-main > #resetFilters { font-size:11px; }
  #page-statistics .sw-check { gap:4px;font-size:11px; }
  .sw-economic-grid { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); }
}
@media(max-width:1023px) {
  .sw-economic-grid { grid-template-columns:minmax(0,1fr); }
  .sw-economic-grid .sw-donut-layout { min-height:180px; }
  .sw-chart-summary strong { font-size:20px; }
}
@media(max-width:520px) {
  .sw-utility-selector { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sw-utility-selector > button { padding:8px; }
  .sw-chart-summary { gap:12px; }
  .sw-chart-source-hint { font-size:12px; }
}
@media(prefers-reduced-motion:no-preference) {
  .sw-chart-area,.sw-chart-line,.sw-stack-bar { animation:sw-chart-appear .4s ease-out both; }
  .sw-rank-copy em { animation:sw-bar-appear .35s ease-out both; }
  .sw-donut { animation:sw-chart-appear .4s ease-out both; }
}
@media(prefers-reduced-motion:reduce) {
  .sw-chart-point,.sw-utility-selector > button { transition:none; }
}
@keyframes sw-chart-appear { from { opacity:0; } to { opacity:1; } }
@keyframes sw-bar-appear { from { transform:scaleX(.15); } to { transform:scaleX(1); } }

/* Separate purchase-based metrics from the comprehensive V3 expense base. */
.sw-ledger-scope { margin:0;color:var(--muted);font-size:12px;line-height:1.5; }
.sw-incidence-description { margin:-2px 0 14px;font-size:12px;line-height:1.5;color:var(--muted); }
.sw-incidence-note { margin:0;padding:10px 12px;border-left:3px solid #8654d8;border-radius:0 6px 6px 0;background:#f5f1fc;color:#5d4d73;font-size:12px;line-height:1.5; }
.sw-incidence-note[data-sw-payroll-excluded] { border-color:var(--line);background:#f1f3f7;color:var(--muted); }
.sw-distribution .sw-total-chip small { white-space:normal;line-height:1.4;max-width:180px; }
@media(max-width:520px) { .sw-incidence-description,.sw-incidence-note { font-size:12px; } }

/* One summary per employee; the payroll ledger lives in a bounded dialog. */
.sw-sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.sw-personnel-intro { margin:0;padding:14px 16px;border-bottom:1px solid var(--line);font-size:12px;line-height:1.5;color:var(--muted); }
.sw-employees-table th:nth-child(3),.sw-employees-table td:nth-child(3) { text-align:center; }
.sw-employees-table th:nth-child(4),.sw-employees-table td:nth-child(4) { text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap; }
.sw-employee-action { text-align:right;white-space:nowrap; }
.sw-department { display:inline-block;padding:5px 8px;border-radius:6px;background:#f0f1fa;color:#414b71;font-size:12px;line-height:1.3; }
.sw-department-multiple { background:#f3edfc;color:#7443b8; }
.sw-personnel-pagination { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;color:var(--muted);font-size:12px; }
.sw-personnel-pagination nav { display:flex;align-items:center;gap:10px; }
.sw-personnel-pagination button { min-height:36px; }
.sw-personnel-pagination button:disabled { opacity:.4;cursor:default; }
.sw-employee-dialog[open] { display:flex;flex-direction:column;overflow:hidden;max-height:min(820px,calc(100dvh - 40px)); }
.sw-employee-dialog > header { flex:none;position:static;align-items:flex-start;padding:18px 22px; }
.sw-employee-dialog > header > div { min-width:0; }
.sw-employee-dialog #sw-employee-period { font-size:12px; }
.sw-employee-overview { flex:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:16px 22px;background:#f7f5fc;border-bottom:1px solid var(--line); }
.sw-employee-overview > div { display:grid;gap:5px;min-width:0; }
.sw-employee-overview span,.sw-employee-overview small { color:var(--muted);font-size:12px;line-height:1.4; }
.sw-employee-overview strong { font-size:22px;line-height:1.2;color:#7443b8;font-variant-numeric:tabular-nums; }
.sw-employee-dialog .sw-employee-body { flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain; }
.sw-payroll-table th { position:sticky;top:0;z-index:1; }
.sw-payroll-table td:first-child { overflow-wrap:anywhere; }
.sw-payroll-table td:nth-child(3) { white-space:nowrap;font-variant-numeric:tabular-nums; }
.sw-employee-dialog .sw-payroll-table .dh-select { min-height:40px;height:40px;font:inherit;font-size:14px;max-width:100%;border:1px solid #aeb6c6;border-radius:7px;background:#fff;padding:8px 12px; }
.sw-employee-footnote { flex:none;margin:0;padding:12px 22px;border-top:1px solid var(--line);font-size:12px;line-height:1.5;color:var(--muted); }
@media(max-width:600px) {
  .sw-personnel-pagination { align-items:flex-start;flex-wrap:wrap; }
  .sw-personnel-pagination nav { justify-content:space-between;gap:8px;width:100%; }
  .sw-personnel-intro { padding:14px; }
  .sw-employees-table,.sw-employee-dialog .sw-payroll-table { display:block;min-width:0!important; }
  .sw-employees-table thead,.sw-payroll-table thead { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0); }
  .sw-employees-table tbody,.sw-payroll-table tbody { display:block; }
  .sw-employees-table tr,.sw-payroll-table tr { display:grid;grid-template-columns:minmax(0,1fr);gap:9px;padding:14px;border-bottom:1px solid var(--line); }
  .sw-employees-table td,.sw-payroll-table td { display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:0!important;border:0;text-align:right!important; }
  .sw-employees-table td:first-child,.sw-payroll-table td:first-child { display:block;text-align:left!important; }
  .sw-employees-table td[data-label]:not(:first-child)::before,.sw-payroll-table td[data-label]:not(:first-child)::before { content:attr(data-label);flex:none;font-size:12px;color:var(--muted);text-align:left; }
  .sw-employees-table .sw-employee-action,.sw-payroll-table .sw-employee-action { justify-content:flex-end; }
  .sw-employee-dialog[open] { width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:12px; }
  .sw-employee-dialog > header { padding:16px; }
  .sw-employee-overview { padding:14px 16px;gap:12px; }
  .sw-employee-overview strong { font-size:20px; }
  .sw-employee-dialog .sw-payroll-table .dh-select { flex:1;min-width:0;width:auto;font-size:16px; }
  .sw-employee-footnote { padding:12px 16px; }
}
