.uw-workspace { --uw-blue: #174b82; --uw-border: #dce5f1; }
.uw-workspace .page-heading { margin-bottom: 24px; }
.uw-filters { padding: 24px; }
.uw-filter-grid { display: grid; grid-template-columns: minmax(160px, .8fr) minmax(190px, 1fr) auto; align-items: end; gap: 20px; }
.uw-filter-grid .field { margin: 0; display: grid; gap: 8px; }
.uw-filter-grid .field[hidden] { display: none; }
.uw-filter-grid label span { font-size: 14px; font-weight: 600; }
.uw-filter-grid input, .uw-filter-grid select { width: 100%; min-height: 46px; padding: 10px 13px; border: 1px solid #cbd9eb; border-radius: 10px; background: white; color: #173456; font: inherit; }
.uw-filter-grid input:focus, .uw-filter-grid select:focus { outline: 2px solid #2d63bd; outline-offset: 2px; }
.uw-filter-note { margin: 16px 0 0; color: #63768f; font-size: 13px; line-height: 1.6; }
.uw-scope { border-left: 3px solid #d1a451; padding: 3px 0 3px 16px; margin: 22px 0; }
.uw-scope b { font-size: 13px; color: #173456; }
.uw-scope p { margin: 6px 0 0; font-size: 13px; color: #63768f; line-height: 1.65; }
.uw-status { color: #536985; font-size: 14px; margin: 16px 0; min-height: 22px; }
.uw-warning-box { background: #fffbf2; border: 1px solid #ead29d; border-radius: 12px; padding: 16px 20px; margin-bottom: 20px; color: #72531a; font-size: 13px; line-height: 1.7; }
.uw-warning-box ul { margin: 8px 0 0; padding-left: 20px; }
.uw-warning-box details { margin-top: 12px; }
.uw-warning-box summary { font-weight: 600; cursor: pointer; }
.uw-warning-box a { margin-left: 8px; text-decoration: underline; }
.uw-output { overflow: hidden; }
.uw-output-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; padding: 24px; border-bottom: 1px solid var(--uw-border); }
.uw-output-toolbar h2 { margin: 0; font-size: 20px; }
.uw-output-toolbar p { margin: 7px 0 0; font-size: 13px; color: #63768f; }
.uw-export-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.uw-workspace button:disabled { opacity: .5; cursor: not-allowed; }
.uw-workspace #uw-restore[hidden] { display: none; }
.uw-preview { padding: 24px; overflow-x: auto; background: #f4f7fb; }
.uw-empty { padding: 64px 24px; text-align: center; color: #6b7d96; background: white; border: 1px dashed #cbd9eb; border-radius: 12px; }
.uw-paper-table { width: 100%; table-layout: fixed; border-collapse: collapse; background: #fff; color: #111; font-family: Arial, Helvetica, sans-serif; font-size: 10px; }
.uw-preview .uw-paper-table { min-width: 1040px; box-shadow: 0 4px 18px #1734560c; }
.uw-paper-table th, .uw-paper-table td { padding: 5px 3px; border: .5pt solid #111; text-align: center; white-space: pre-wrap; overflow-wrap: anywhere; word-break: normal; vertical-align: middle; line-height: 1.25; }
.uw-paper-table .uw-name-cell { text-align: left; }
.uw-paper-table .uw-heading-row th, .uw-paper-table .uw-title-row th, .uw-paper-table .uw-date-row th { border: 0; padding: 4px 0; text-align: center; background: white; color: #111; letter-spacing: normal; text-transform: none; }
.uw-paper-table .uw-heading-row th { padding-top: 18px; font-size: 20px; font-weight: 700; }
.uw-paper-table .uw-title-row th { font-size: 17px; font-weight: 700; }
.uw-paper-table .uw-date-row th { font-size: 13px; padding-bottom: 20px; }
.uw-paper-table .uw-column-row th { background: #fff; color: #111; font-size: 10px; letter-spacing: 0; font-weight: 700; padding: 8px 2px; }
.uw-paper-table .uw-padding-row td { height: 28px; }
.uw-paper-table tfoot td { border: 0; text-align: left; font-size: 9px; color: #444; padding: 12px 3px 4px; white-space: normal; }
.uw-paper-table .uw-col-name { width: 17%; }
.uw-paper-table .uw-col-age, .uw-paper-table .uw-col-sex, .uw-paper-table .uw-col-ph { width: 4%; }
.uw-paper-table .uw-col-color, .uw-paper-table .uw-col-trans, .uw-paper-table .uw-col-auap { width: 8%; }
.uw-paper-table .uw-col-sg { width: 5%; }
.uw-paper-table .uw-col-gluc, .uw-paper-table .uw-col-prot, .uw-paper-table .uw-col-rbc, .uw-paper-table .uw-col-wbc, .uw-paper-table .uw-col-ec, .uw-paper-table .uw-col-mt, .uw-paper-table .uw-col-bac { width: 6%; }
.uw-pager { display: flex; align-items: center; justify-content: center; gap: 16px; padding: 18px 24px; border-top: 1px solid var(--uw-border); color: #536985; font-size: 13px; }
.uw-pager[hidden] { display: none; }
.uw-privacy { padding: 18px 24px; margin: 0; color: #63768f; font-size: 12px; border-top: 1px solid var(--uw-border); line-height: 1.6; }
.uw-denied { padding: 28px; }
.pdc-worksheet-print { display: none; }
@media (max-width: 680px) {
  .uw-filter-grid { grid-template-columns: 1fr; gap: 16px; }
  .uw-filters, .uw-output-toolbar { padding: 18px; }
  .uw-preview { padding: 12px; }
  .uw-pager { gap: 10px; padding: 16px 10px; }
}
@media print {
  /* This stylesheet is loaded only by the staff workspace. Other patient
     report/print pages keep their existing A4 settings and styles. */
  @page { size: legal landscape; margin: 7mm 7.75mm; }
  body.pdc-worksheet-route { margin: 0 !important; padding: 0 !important; background: #fff !important; }
  body.pdc-worksheet-route > * { display: none !important; }
  body.pdc-worksheet-route > .pdc-worksheet-print { display: block !important; }
  .pdc-worksheet-print { width: auto; color: #000; font-family: Arial, Helvetica, sans-serif; }
  .uw-print-day { break-before: page; page-break-before: always; }
  .uw-print-day:first-child { break-before: auto; page-break-before: auto; }
  .pdc-worksheet-print .uw-paper-table { font-size: 8pt; table-layout: fixed; }
  .pdc-worksheet-print .uw-paper-table thead { display: table-header-group; }
  .pdc-worksheet-print .uw-paper-table tfoot { display: table-footer-group; }
  .pdc-worksheet-print .uw-paper-table tbody { display: table-row-group; }
  .pdc-worksheet-print .uw-paper-table tr { break-inside: avoid; page-break-inside: avoid; }
  .pdc-worksheet-print .uw-paper-table tr.uw-tall-row { break-inside: auto; page-break-inside: auto; }
  .pdc-worksheet-print .uw-paper-table td { padding: 5pt 2pt; }
  .pdc-worksheet-print .uw-heading-row th { font-size: 16pt; padding-top: 0; }
  .pdc-worksheet-print .uw-title-row th { font-size: 13pt; }
  .pdc-worksheet-print .uw-date-row th { font-size: 10pt; padding-bottom: 8pt; }
  .pdc-worksheet-print .uw-column-row th { font-size: 8pt; padding: 6pt 2pt; }
  .pdc-worksheet-print .uw-padding-row td { height: 17pt; }
  .pdc-worksheet-print .uw-paper-table tfoot td { font-size: 6.5pt; padding-top: 8pt; }
  .uw-print-notice { font-size: 12pt; }
}
