/* APM / Finance CIS reference: apm-system commit 95dc85f16b1bdf7acd1c930d4c57e4c1c6ab8a14.
   Legacy business-component names adapt the same canonical semantic tokens. */
:root {
  --brand:#EA880C;--brand-strong:#B45309;--brand-soft:#FFF4E4;
  --background:#F7F3EC;--surface:#FFFFFF;--surface-subtle:#FFF4E4;--surface-hover:#FFF7ED;--surface-header:#FFFAF5;
  --text:#2F2A26;--muted:#6E6259;--border:#F1CFA8;
  --success:#2A6010;--success-soft:#E6F4D8;--warning:#7A4500;--warning-soft:#FDE8BC;
  --danger:#8A1010;--danger-soft:#FDE0E0;--info:#1A4080;--info-soft:#E0EEFF;--neutral:#6A5840;--neutral-soft:#F0ECE6;
  --shell-sidebar:linear-gradient(180deg,#FFFAF2 0%,#FFF6EB 100%);
  --shell-header:rgba(255,250,242,.92);--shell-mobile-header:rgba(255,252,248,.97);--shell-mobile-nav:rgba(255,252,248,.98);--shell-mobile-selected:#FFF1DF;
  --shadow-card:0 2px 8px rgb(180 83 9 / 4%);--shadow-dialog:0 18px 46px rgb(92 56 0 / 12%);--backdrop:rgb(61 33 13 / 48%);
  --primary:var(--brand);--navigation:var(--brand-strong);--accent:var(--brand-soft);--focus:var(--brand-strong);
  --font-body:'Noto Sans TC','PingFang TC','Microsoft JhengHei',ui-sans-serif,system-ui,sans-serif;--font-display:var(--font-body);
  --radius:8px;--radius-lg:12px;--scrollbar-track:var(--surface);--scrollbar-thumb:var(--border);--scrollbar-hover:var(--muted);--scrollbar-active:var(--brand-strong);
  --line-subtle:color-mix(in srgb,var(--border) 42%,var(--surface));
  --surface-mist:color-mix(in srgb,var(--background) 45%,var(--surface));
  --shadow-surface:0 3px 18px rgb(47 42 38 / 3%);
  --z-skip:40;--z-sticky:20;--z-navigation:30;--z-toast:50;
}
/* One visual system: APM brand tokens above; shared reading and work surfaces below. */
html{background:var(--background);scrollbar-gutter:stable;scroll-padding-top:110px;scroll-padding-bottom:88px}
*{box-sizing:border-box;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:thin}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:5px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}::-webkit-scrollbar-thumb:active{background:var(--scrollbar-active)}
body{margin:0;color:var(--text);background:var(--background);font:16px/1.65 var(--font-body);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input,select,textarea{font:inherit}button,a,select,input[type=checkbox]{-webkit-tap-highlight-color:transparent}button,a,select{cursor:pointer}
a{color:var(--brand-strong);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{text-decoration:underline}
h1,h2,h3,p{margin-top:0}h1{font:800 32px/1.35 var(--font-display);letter-spacing:-.035em;margin-bottom:8px;overflow-wrap:anywhere}h2{font-size:18px;line-height:1.5;margin-bottom:16px;font-weight:700}h3{font-size:16px;line-height:1.6}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
button:disabled{cursor:not-allowed;opacity:.5}input:disabled,select:disabled{background:var(--surface-mist);color:var(--muted)}
input,select,textarea{width:100%;min-height:46px;padding:10px 13px;border:1px solid var(--border);border-radius:var(--radius);color:var(--text);background:var(--surface);font-size:15px;line-height:1.55}
input:hover,select:hover,textarea:hover{border-color:var(--brand-strong)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.85}textarea{resize:none;min-height:120px}input[type=checkbox]{width:20px;min-height:20px;accent-color:var(--primary)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger)}
.app-icon{display:block;flex-shrink:0;stroke:currentColor}.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}
.skip-link{position:fixed;top:-100px;left:12px;z-index:var(--z-skip);background:var(--surface);padding:12px}.skip-link:focus{top:12px}
.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.page-heading{min-width:0}.eyebrow{display:none}.subtitle{font-size:14px;line-height:1.75;color:var(--muted);margin-bottom:0;max-width:720px}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-actions{padding-top:2px;justify-content:flex-end}
.btn{min-height:44px;min-width:44px;border-radius:var(--radius);padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;text-decoration:none;white-space:nowrap;line-height:1.4;font-size:14px;font-weight:600;position:relative;transition:background-color 140ms,border-color 140ms,color 140ms}
.btn:hover{text-decoration:none}.btn-primary{background:var(--primary);color:var(--text);border-color:var(--primary)}.btn-primary:hover{background:var(--brand-soft);border-color:var(--brand-strong)}
.btn-outline,.btn-secondary{background:var(--surface);color:var(--brand-strong);border-color:var(--border)}.btn-outline:hover,.btn-secondary:hover{background:var(--brand-soft);border-color:var(--brand-strong)}
.btn-ghost{background:transparent;color:var(--muted)}.btn-ghost:hover{background:var(--surface-mist);color:var(--text)}.btn-danger{background:var(--danger);color:var(--surface)}.btn-danger:hover{filter:brightness(.9)}
.btn[aria-busy=true]{color:transparent;transition:background-color 140ms,border-color 140ms}.btn[aria-busy=true]:after{content:'處理中';position:absolute;inset:0;display:grid;place-items:center;color:var(--text)}.btn-outline[aria-busy=true]:after{color:var(--brand-strong)}.btn-danger[aria-busy=true]:after{color:var(--surface)}.btn:active{transform:translateY(1px)}
.panel{background:var(--surface);border:1px solid var(--line-subtle);border-radius:var(--radius-lg);padding:24px;margin-bottom:22px;min-width:0;box-shadow:var(--shadow-surface)}
.panel-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.panel-heading h2,.section-heading h2{margin:0}.muted{color:var(--muted)}.small{font-size:13px}
.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px;padding:14px;background:var(--surface);border:1px solid var(--line-subtle);border-radius:var(--radius-lg)}
.panel .toolbar,.dialog-body .toolbar{padding:0;border:0;background:transparent}.toolbar input,.toolbar select{width:auto;max-width:100%}
.search-box{display:flex;align-items:center;gap:4px;position:relative;flex:1;min-width:210px;max-width:440px}.search-box> .app-icon{position:absolute;left:14px;color:var(--muted);pointer-events:none}.search-box input{padding-left:42px;padding-right:70px;width:100%}.search-box .btn{position:absolute;right:2px;font-size:12px;padding:6px 10px;min-height:44px}
.table-scroll{overflow-x:auto;scrollbar-gutter:stable;max-width:100%;border:1px solid var(--line-subtle);border-radius:var(--radius);background:var(--surface)}
table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;line-height:1.65}th{background:var(--surface-mist);color:var(--muted);font-size:13px;padding:13px 16px;white-space:nowrap;font-weight:600;border-bottom:1px solid var(--line-subtle)}td{padding:14px 16px;border-bottom:1px solid var(--line-subtle);vertical-align:middle;min-width:95px}tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-hover)}td .btn{min-height:44px;font-size:13px;padding:9px 12px}td .actions{flex-wrap:nowrap}
.badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--neutral-soft);color:var(--neutral)}
.badge:before{content:'';width:5px;height:5px;flex-shrink:0;border-radius:50%;background:currentColor}.status-active,.status-approved,.status-completed,.status-published{color:var(--success);background:var(--success-soft)}.status-pending,.status-submitted,.status-paused,.status-draft{color:var(--warning);background:var(--warning-soft)}.status-returned,.status-rejected,.status-closed{color:var(--danger);background:var(--danger-soft)}
.pagination,.list-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;font-size:13px;color:var(--muted)}.list-footer>.pagination{width:100%;padding:0}
.empty-state{padding:38px 22px;text-align:center;border:1px dashed var(--line-subtle);border-radius:var(--radius);color:var(--muted);background:var(--surface-mist)}.empty-mark{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 14px;border:1px solid var(--line-subtle);border-radius:50%;color:var(--brand-strong);background:var(--surface)}.empty-state p{margin:0;font-size:14px;line-height:1.8}
.error-state{padding:24px;border:1px solid var(--danger);border-radius:var(--radius);background:var(--surface)}.error-state h2{color:var(--danger)}.loading-state{min-height:200px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted)}.spinner{width:20px;height:20px;border:2px solid var(--line-subtle);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
/* The dashboard puts real work first; summary values remain secondary. */
.dashboard-context{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:13px;margin:-8px 0 24px}.dashboard-context > span{display:inline-flex;align-items:center;gap:6px}.dashboard-context .app-icon{color:var(--brand-strong)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(245px,1fr);gap:22px;align-items:start}.dashboard-schedule,.dashboard-next{margin-bottom:0}.dashboard-schedule .section-heading{align-items:flex-start}.dashboard-schedule .section-heading .small{max-width:220px;text-align:right}
.dashboard-service-list{list-style:none;padding:0;margin:0}.dashboard-service-row{display:grid;grid-template-columns:110px minmax(0,1fr) minmax(0,.8fr) 95px;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line-subtle);font-size:14px}.dashboard-service-row:last-child{border-bottom:0;padding-bottom:0}.dashboard-service-row:first-child{padding-top:0}.dashboard-service-time{min-width:0;font-weight:600;font-size:13px;white-space:normal;overflow-wrap:anywhere}.dashboard-service-case{min-width:0;overflow-wrap:anywhere;min-height:44px;display:flex;align-items:center;font-weight:600}.dashboard-service-employee{min-width:0;color:var(--muted);overflow-wrap:anywhere}.dashboard-service-status{justify-self:end}.dashboard-next h2{margin-bottom:14px}.next-action{display:block;position:relative;padding:16px 28px 16px 0;border-bottom:1px solid var(--line-subtle);text-decoration:none}.next-action:hover{text-decoration:none;background:var(--surface-hover)}.next-action:last-child{border-bottom:0}.next-action strong{display:block;font-size:15px;line-height:1.6}.next-action span{display:block;font-size:13px;line-height:1.7;color:var(--muted);margin-top:5px}.next-action>.app-icon{position:absolute;right:0;top:20px;color:var(--brand-strong)}
.dashboard-summary{margin:26px 0}.dashboard-summary h2,.dashboard-shortcuts h2{font-size:16px;margin-bottom:14px}.dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:18px 0;border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface)}
.dashboard-metric{padding:0 22px;border-right:1px solid var(--line-subtle);min-width:0}.dashboard-metric:last-child{border-right:0}.dashboard-metric span{display:block;font-size:13px;color:var(--muted)}.dashboard-metric strong{display:block;margin:6px 0;font-size:28px;font-weight:700;line-height:1.2}.dashboard-metric small{font-size:12px;color:var(--muted);display:block;line-height:1.6}
.dashboard-shortcuts{margin-top:26px}.dashboard-shortcut-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dashboard-shortcut{display:flex;align-items:flex-start;gap:14px;padding:20px;min-width:0;border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface);color:var(--text);text-decoration:none}.dashboard-shortcut:hover{border-color:var(--brand);background:var(--surface-hover);text-decoration:none}.dashboard-shortcut>.app-icon:first-child{padding:9px;box-sizing:content-box;border-radius:10px;background:var(--brand-soft);color:var(--brand-strong)}.dashboard-shortcut strong{display:block;font-size:14px}.dashboard-shortcut span{font-size:13px;color:var(--muted);line-height:1.6}.dashboard-shortcut .shortcut-copy{min-width:0;flex:1}.dashboard-shortcut>.app-icon:last-child{margin-top:8px;color:var(--muted)}
/* Existing report stats and detail cards share the same quiet surfaces. */
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px}.stat{padding:20px 22px;border:1px solid var(--line-subtle);background:var(--surface);border-radius:var(--radius-lg)}.stat span{font-size:13px;color:var(--muted)}.stat strong{display:block;font-size:30px;font-weight:600;margin:6px 0 2px}.stat small{font-size:12px;color:var(--muted)}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.detail-grid dt{font-size:12px;color:var(--muted);margin-bottom:6px}.detail-grid dd{margin:0;overflow-wrap:anywhere;font-size:15px}.detail-grid>div{border-bottom:1px solid var(--line-subtle);padding-bottom:14px}
.case-section-navigation{display:flex;gap:6px;flex-wrap:wrap;padding:10px;margin-bottom:20px;border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface)}.case-section-navigation .btn{font-size:13px;color:var(--text)}.case-section-navigation .btn:hover{background:var(--brand-soft);color:var(--brand-strong)}.case-status-action{color:var(--warning);border-style:dashed}.panel h2[tabindex]{scroll-margin-top:110px}
.service-relay{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;background:transparent;padding:0;margin:18px 0 0;list-style:none;counter-reset:relay}
.relay-step{position:relative;min-width:0;padding:20px 16px 16px;border:1px solid var(--line-subtle);border-radius:10px;background:var(--surface-mist);counter-increment:relay}
.relay-step:before{content:counter(relay);display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--brand-strong);font-size:12px;font-weight:700;margin-bottom:12px}.relay-step strong{display:block;font-size:16px;margin:6px 0 12px}.relay-step>span{font-size:13px;color:var(--muted)}.relay-step .btn{background:var(--surface);font-size:13px;width:100%}
.service-list{display:grid;gap:16px}.service-card{background:var(--surface);border:1px solid var(--line-subtle);padding:22px;border-radius:var(--radius-lg);box-shadow:var(--shadow-surface)}.card-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin:8px 0 14px}.service-items{font-size:14px;padding-left:20px}
.app-dialog{border:1px solid var(--line-subtle);border-radius:var(--radius-lg);padding:0;color:var(--text);background:var(--surface);width:min(680px,calc(100% - 24px));max-height:calc(100svh - 32px);overflow-y:auto;box-shadow:var(--shadow-dialog)}.app-dialog::backdrop{background:var(--backdrop)}
.dialog-header{padding:23px 25px 19px;border-bottom:1px solid var(--line-subtle);background:var(--surface-mist)}.dialog-header h2{margin:0;font-size:20px;font-weight:700}.dialog-body{padding:24px 25px}.app-form{padding:24px 25px 0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}.field{min-width:0}.field-wide{grid-column:1/-1}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.field input,.field select,.field textarea{scroll-margin:20px}.field-help{font-size:12px;line-height:1.75;color:var(--muted);margin:7px 0 0}.required{color:var(--danger)}.field-error{font-size:13px;color:var(--danger);margin:6px 0 0}.form-summary{background:var(--danger-soft);border-left:3px solid var(--danger);padding:14px;margin:0 0 20px;font-size:14px;color:var(--danger)}
.dialog-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px 0;border-top:1px solid var(--line-subtle);margin-top:24px;position:sticky;bottom:0;background:var(--surface);z-index:1}.app-dialog>.dialog-footer{padding:16px 25px;margin-top:0}.password-toggle{min-height:44px;margin-top:4px;font-size:12px}.services-picker{border:1px solid var(--line-subtle);border-radius:var(--radius);padding:4px 14px}.service-option{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line-subtle)}.service-option:last-child{border-bottom:0}.service-option label{font-weight:400;margin:0;font-size:14px}.service-option input{width:90px;flex:0 0 90px}
.toast-region{position:fixed;right:22px;bottom:22px;pointer-events:none;display:grid;gap:10px;max-width:min(400px,calc(100% - 44px));z-index:var(--z-toast)}.toast{padding:16px 18px;border:1px solid var(--line-subtle);border-left:4px solid var(--primary);background:var(--surface);border-radius:var(--radius);font-size:14px;box-shadow:var(--shadow-dialog)}.toast-error{border-left-color:var(--danger)}
.notice{padding:14px 16px;border:1px solid var(--line-subtle);border-left:3px solid var(--primary);border-radius:var(--radius);background:var(--brand-soft);font-size:13px;line-height:1.75;margin:18px 0}.notice p{margin:6px 0 0}.help-list{display:grid;gap:22px}.help-list p{margin-bottom:0}.inline-label{display:flex;align-items:center;gap:8px;font-size:13px}.inline-label input,.inline-label select{width:auto}
/* All authorized roles keep the original APM shell and one modal navigation owner. */
.layout{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:100dvh}.workspace{grid-column:2;min-width:0;padding-top:82px}
.sidebar{display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:300px;height:100dvh;min-height:0;background:var(--shell-sidebar);border-right:1px solid var(--line-subtle);z-index:var(--z-navigation)}
.sidebar-brand{flex-shrink:0;padding:25px 24px;border-bottom:1px solid var(--line-subtle)}.brand{display:flex;align-items:center;gap:12px;min-height:44px;min-width:0;color:var(--brand-strong);text-decoration:none;border-radius:10px}.brand:hover{text-decoration:none}.brand-mark{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border:1px solid var(--line-subtle);border-radius:12px;background:var(--surface);overflow:hidden}.brand-mark img{display:block;width:48px;height:48px;object-fit:contain}.brand-copy{min-width:0}.brand strong{display:block;font-size:21px;font-weight:800;line-height:1.35;white-space:nowrap;color:var(--brand-strong)}.brand small{display:block;margin-top:5px;font-size:11px;font-weight:500;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
.sidebar-navigation{flex:1;min-height:0;overflow-y:auto;padding:12px 16px;overscroll-behavior:contain}.nav-group{display:grid;gap:4px;margin-bottom:14px}.nav-label{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--muted);padding:10px 12px 7px;margin:0}.nav-link{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;min-height:48px;padding:7px 12px;border-radius:10px;color:var(--muted);font-size:15px;font-weight:500;text-decoration:none}.nav-link:hover{background:var(--surface-hover);color:var(--text);text-decoration:none}.nav-link[aria-current=page]{background:var(--brand-soft);box-shadow:inset 3px 0 var(--brand);color:var(--brand-strong);font-weight:700}.nav-link .nav-icon{display:grid;place-items:center;width:30px;height:30px;color:var(--muted)}.nav-link[aria-current=page] .nav-icon{color:var(--brand-strong)}.nav-text{min-width:0;overflow-wrap:anywhere}
.sidebar-footer{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;flex-shrink:0;margin:10px 16px 16px;padding:13px;border:1px solid var(--line-subtle);border-radius:12px;background:var(--surface)}.user-avatar{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border-radius:10px;background:var(--brand-soft);color:var(--brand-strong);font-size:14px;font-weight:700}.member-copy{min-width:0}.member-copy strong,.member-copy small{display:block;overflow-wrap:anywhere}.member-copy strong{font-size:13px}.member-copy small{margin-top:3px;font-size:11px;color:var(--muted)}.sidebar-footer .btn{font-size:12px;padding:8px;min-width:44px}.sidebar-portal{grid-column:1/-1;text-align:center;min-height:44px;display:grid;place-items:center;font-size:13px;border-radius:8px}.sidebar-portal:hover{background:var(--brand-soft)}
.topbar{position:fixed;inset:0 0 auto 300px;display:grid;grid-template-columns:minmax(0,1fr) max-content minmax(0,max-content);align-items:center;gap:14px;height:82px;padding:0 28px;border-bottom:1px solid var(--line-subtle);background:var(--shell-header);backdrop-filter:blur(16px);z-index:var(--z-sticky)}.topbar-left{display:flex;align-items:center;gap:8px;min-width:0}.workspace-page-title{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:700;color:var(--text)}.topbar-actions{display:flex;align-items:center;gap:8px}.topbar-actions .btn{min-height:44px;font-size:13px;padding:9px 13px}.workspace-status{font-size:13px;color:var(--muted);min-width:0;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-tag{font-size:12px}.mobile-brand,.menu-toggle,.notification-link,.mobile-navigation{display:none}
.workspace-scope{display:flex;align-items:center;gap:12px;padding:12px 28px;border-bottom:1px solid var(--line-subtle);background:var(--surface);min-width:0}.workspace-scope label{font-size:13px;color:var(--muted);font-weight:500;white-space:nowrap}.org-select{max-width:440px;min-width:0;min-height:44px;font-size:13px;padding:8px 10px;background:var(--surface-mist)}.scope-role{margin-left:auto;color:var(--muted);font-size:12px;white-space:nowrap}.test-banner{padding:8px 28px;border-bottom:1px solid var(--line-subtle);background:var(--brand-soft);color:var(--brand-strong);font-size:12px;line-height:1.5}
main{width:100%;min-width:0;padding:28px;margin:0;max-width:none}
.auth-local-screen,.auth-loading-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:28px;background:var(--background)}.auth-card{width:min(480px,100%);padding:30px 28px;border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-dialog)}.auth-card .brand{margin-bottom:28px}.auth-card h2{font-size:23px;line-height:1.5}.auth-card .app-form{padding:0}.auth-card .form-grid{grid-template-columns:1fr}.auth-card .dialog-footer .btn{flex:1}
.auth-loading-screen{text-align:center;background:var(--shell-sidebar)}.auth-loading-card{width:min(360px,100%);padding:28px 26px;border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-dialog)}.auth-loading-card img{display:block;width:54px;height:54px;margin:0 auto 14px;object-fit:contain}.auth-loading-card h1{font-size:18px;line-height:1.5;margin-bottom:6px}.auth-loading-card p{font-size:13px;line-height:1.6;color:var(--muted);margin-bottom:0}.auth-loading-card .btn{margin-top:20px;max-width:100%;white-space:normal}.auth-loading-bar{height:6px;margin-top:18px;overflow:hidden;border-radius:999px;background:var(--brand-soft)}.auth-loading-bar b{display:block;width:44%;height:100%;border-radius:inherit;background:var(--brand);animation:auth-loading 1.1s ease-in-out infinite alternate}@keyframes auth-loading{from{transform:translateX(-80%)}to{transform:translateX(210%)}}
.navigation-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(360px,88vw);height:100dvh;max-height:100dvh;border-radius:0;border-right:0;background:var(--shell-sidebar);overflow:hidden}.navigation-drawer[open]{display:flex;flex-direction:column}.navigation-drawer .dialog-header{flex-shrink:0;padding:18px 20px}.navigation-drawer .dialog-header h2{font-size:18px}.navigation-drawer .dialog-body{flex:1;min-height:0;display:flex;padding:0;overflow:hidden}.navigation-drawer .sidebar{position:static;display:flex;min-height:0;width:100%;height:100%;border:0;z-index:auto}.navigation-drawer .sidebar-brand{padding:20px}.navigation-drawer .brand-mark{flex-basis:44px;width:44px;height:44px}.navigation-drawer .brand-mark img{width:40px;height:40px}.navigation-drawer .brand strong{font-size:20px}.navigation-drawer>.dialog-footer{padding:12px 20px;margin:0;flex-shrink:0}.navigation-drawer .sidebar-footer{margin-bottom:12px}
@media(max-width:1180px){.topbar{padding:0 18px;grid-template-columns:minmax(0,1fr) max-content}.workspace-status{display:none}}
@media(max-width:1100px){.dashboard-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1023px){
 .layout{display:block}.workspace{padding-top:64px}.sidebar{display:none}.topbar{inset:0 0 auto 0;height:64px;padding:0 12px;background:var(--shell-mobile-header);grid-template-columns:minmax(0,1fr) 44px 44px;gap:4px}.topbar-actions,.workspace-status{display:none}.mobile-brand{display:flex;align-items:center;gap:6px;flex-shrink:0;text-decoration:none;color:var(--brand-strong);min-height:44px;font-size:13px;font-weight:700;border-radius:8px}.mobile-brand img{display:block;width:28px;height:28px;object-fit:contain}.mobile-brand:hover{text-decoration:none;background:var(--brand-soft)}.workspace-page-title{font-size:15px;font-weight:600;border-left:1px solid var(--line-subtle);padding-left:8px}.menu-toggle,.notification-link{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--brand-strong);font-size:12px}.notification-link{text-decoration:none}.notification-link:hover,.menu-toggle:hover{background:var(--brand-soft);text-decoration:none}.workspace-scope{padding:10px 14px;gap:8px}.org-select{flex:1;max-width:none}.scope-role{display:none}.test-banner{padding:8px 14px}main{padding:24px 16px calc(76px + env(safe-area-inset-bottom))}.mobile-navigation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;inset:auto 0 0;min-height:48px;padding:4px 4px max(4px,env(safe-area-inset-bottom));border-top:1px solid var(--line-subtle);background:var(--shell-mobile-nav);backdrop-filter:blur(16px);z-index:var(--z-navigation)}.mobile-nav-link,.mobile-nav-more{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:48px;border:0;border-radius:10px;padding:4px;color:var(--muted);background:transparent;text-decoration:none;font:600 11px/1.3 var(--font-body)}.mobile-nav-link .nav-icon,.mobile-nav-more .nav-icon{display:grid;place-items:center;width:22px;height:22px}.mobile-nav-link:hover,.mobile-nav-more:hover{background:var(--surface-hover);color:var(--brand-strong);text-decoration:none}.mobile-nav-link[aria-current=page],.mobile-nav-more[aria-expanded=true],.mobile-nav-more.is-current{background:var(--shell-mobile-selected);color:var(--brand-strong)}.toast-region{bottom:calc(76px + env(safe-area-inset-bottom))}.stats-grid{gap:12px}
 input,select,textarea{font-size:16px}.org-select{font-size:16px}
}
@media(max-width:600px){
 .dashboard-service-row{grid-template-columns:100px minmax(0,1fr);gap:4px 12px;padding:18px 0}.dashboard-service-time{align-self:start;margin-top:10px;grid-row:1 / span 2}.dashboard-service-case{grid-column:2;min-height:44px}.dashboard-service-employee{grid-column:2;font-size:13px}.dashboard-service-status{grid-column:2;justify-self:start;margin-top:4px}h1{font-size:27px;letter-spacing:-.025em}.page-header{display:block;margin-bottom:22px}.page-actions{margin-top:16px;justify-content:flex-start}.panel{padding:18px;margin-bottom:18px}.dashboard-grid{gap:18px}.dashboard-schedule,.dashboard-next{margin-bottom:0}.dashboard-schedule .section-heading{display:block}.dashboard-schedule .section-heading .small{display:block;text-align:left;max-width:none;margin-top:6px}.dashboard-context{margin:-6px 0 20px}.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 0;padding:18px 0}.dashboard-metric{padding:0 18px}.dashboard-metric:nth-child(2){border-right:0}.dashboard-metric strong{font-size:26px}.dashboard-shortcut-grid{grid-template-columns:1fr}.dashboard-shortcut{padding:18px}.dashboard-summary,.dashboard-shortcuts{margin-top:22px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat{padding:18px}.stat strong{font-size:26px}.form-grid{grid-template-columns:1fr}.app-form{padding:20px 18px 0}.dialog-header,.dialog-body{padding:20px 18px}.toolbar{gap:10px;padding:12px}.search-box{min-width:100%;max-width:none}.detail-grid{grid-template-columns:1fr 1fr;gap:16px}.detail-grid dd{font-size:14px}.pagination{align-items:flex-start;gap:8px;font-size:12px;flex-wrap:wrap}.pagination .btn{padding:9px 10px;font-size:13px}.service-relay{grid-template-columns:1fr 1fr;gap:10px}.relay-step{padding:16px 12px}.relay-step strong{font-size:15px}.toast-region{right:12px;max-width:calc(100% - 24px)}.service-card .actions .btn{flex:1}.section-heading{flex-wrap:wrap}.auth-local-screen,.auth-loading-screen{padding:20px}.auth-card{padding:24px 20px}.auth-card .brand strong{font-size:20px}.case-section-navigation{gap:4px;padding:8px}.case-section-navigation .btn{font-size:12px;padding:8px 10px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms;transition-duration:.01ms;scroll-behavior:auto}.spinner{animation:none}.auth-loading-bar b{animation:none;transform:translateX(64%)}}
@media(forced-colors:active){*{scrollbar-color:auto}.btn,.badge,.panel{border:1px solid CanvasText}:focus-visible{outline:3px solid Highlight}}
@media print{html{background:white}.navigation-drawer{display:none!important}.sidebar,.topbar,.workspace-scope,.mobile-navigation,.test-banner,.actions,.toast-region,.case-section-navigation{display:none}.workspace{padding-top:0;grid-column:auto}main{padding:0}body{background:white}.panel{break-inside:avoid;box-shadow:none}.table-scroll{overflow:visible}th,td{font-size:11px}}

.row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.filter-field{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.filter-field input,.filter-field select{width:auto;max-width:100%}.pre-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.template-section{border-top:1px solid var(--border);padding-top:15px;margin-top:10px}.template-section:first-child{border-top:0}.list-content{min-height:160px}.loading{padding:24px;color:var(--muted)}
/* Explicit display rules on buttons must never override the semantic hidden attribute. */
[hidden]{display:none!important}

/* A version snapshot sits inside a narrow table cell, so its fields stack vertically. */
.personnel-history-fields{grid-template-columns:minmax(0,1fr);min-width:220px;gap:12px}

/* Case and plan snapshots stack their fields so every saved value remains readable on phones. */
.history-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:14px 0}
.history-fields dt{font-size:12px;color:var(--muted);margin-bottom:4px}
.history-fields dd{margin:0;overflow-wrap:anywhere}
.history-version>summary{min-height:44px;padding:12px 0;cursor:pointer}
.history-date{white-space:nowrap}
.history-reference code{overflow-wrap:anywhere}
.app-dialog-wide{width:min(960px,calc(100% - 24px))}
.record-history .table-scroll table{min-width:620px}
.record-history .table-scroll :is(th,td):nth-child(n+2){min-width:220px}

/* A read-only calendar index points to the same complete daily tables on every viewport. */
.shift-calendar{min-width:0}
.shift-calendar-index{margin:22px 0}
.shift-calendar-index table{table-layout:fixed}
.shift-calendar-index :is(th,td){width:calc(100% / 7);min-width:0;padding:6px;text-align:center;vertical-align:top}
.shift-calendar-index td .btn{width:100%;min-height:80px;display:flex;flex-direction:column;white-space:normal;padding:8px 4px}
.shift-calendar-agenda{display:grid;gap:24px;min-width:0;margin-top:22px}
.shift-calendar-day{min-width:0}
.shift-calendar-day h3{scroll-margin-block:24px}
.shift-calendar-daily-table table{min-width:1200px}
.shift-calendar-daily-table :is(th,td){white-space:pre-wrap;overflow-wrap:anywhere}
.shift-calendar-daily-table td{vertical-align:top}
@media(max-width:600px){.shift-calendar-index{display:none}}

/* Each contact keeps its name, contact methods and actions together on every viewport. */
.contacts-list{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-height:160px}
.contact-card{border:1px solid var(--border);border-radius:var(--radius);padding:18px;min-width:0}
.contact-card .section-heading h3{margin:0;min-width:0;overflow-wrap:anywhere}
.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}
.contact-fields dt{font-size:12px;color:var(--muted);margin-bottom:4px}
.contact-fields dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}
.contact-note{grid-column:1/-1}
@media(max-width:600px){.contact-card{padding:14px}.contact-fields{grid-template-columns:minmax(0,1fr)}}

/* A selected file stays visible beside its remove action, including after a failed save. */
.file-selection-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px;min-width:0}
.file-selection{font-size:13px;color:var(--muted);margin:0;overflow-wrap:anywhere;flex:1;min-width:0}
input[type=file]{font-size:13px;overflow:hidden}
input[type=file]::file-selector-button{font:inherit;min-height:30px;margin-right:10px;color:var(--primary);background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:4px 8px;cursor:pointer}
.attachments-list{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-height:160px}
.attachment-card{border:1px solid var(--border);border-radius:var(--radius);padding:18px;min-width:0}
.attachment-card .section-heading h3{margin:0;min-width:0;overflow-wrap:anywhere}
.attachment-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}
.attachment-fields dt{font-size:12px;color:var(--muted);margin-bottom:4px}
.attachment-fields dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}
.attachment-note{grid-column:1/-1}
.attachment-download{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.attachment-download p{margin:0}
@media(max-width:600px){.attachment-card{padding:14px}.attachment-fields{grid-template-columns:minmax(0,1fr)}}

.checkbox-picker{display:flex;gap:8px;flex-wrap:wrap;border:1px solid var(--border);border-radius:var(--radius);padding:8px}
.checkbox-picker[aria-invalid=true]{border-color:var(--danger)}
.field .choice-option{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px;margin:0;cursor:pointer;font-weight:400}
.choice-option input{flex:0 0 20px}
.choice-option:focus-within{outline:2px solid var(--focus);outline-offset:1px;border-radius:var(--radius)}
.form-preview{min-width:0;margin-top:22px;scroll-margin:20px}
.recurring-summary{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin:12px 0}
.recurring-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.recurring-date-card{border:1px solid var(--border);border-radius:var(--radius);padding:14px;min-width:0}
.recurring-date-card h3{margin-bottom:8px}
.recurring-date-card p{margin-bottom:8px}
.recurring-conflicts{padding-left:20px;font-size:13px;color:var(--danger);overflow-wrap:anywhere}
.recurring-preview{min-width:0}
@media(max-width:600px){.recurring-dates{grid-template-columns:minmax(0,1fr)}.app-form:has(.form-preview) .dialog-footer{flex-wrap:wrap}.checkbox-picker{gap:4px}.field .choice-option{padding:6px}}

/* The screen keeps wide report columns inside their own scroll area. */
.report-query .toolbar,.shift-report .toolbar{align-items:flex-end}
.report-query .toolbar .field{max-width:100%}
.report-table table,.shift-report-table table{min-width:1100px}
.service-report-table table{min-width:1350px}
.case-report-table table{min-width:1350px}
.employee-report-table table{min-width:960px}
.leave-report-table table{min-width:1100px}
.training-report-table table{min-width:1200px}
.certification-report-table table{min-width:1400px}
.certification-report-table :is(td:nth-child(6),td:nth-child(7)){white-space:nowrap}
.case-report-table td:first-child,.leave-report-table td:first-child{white-space:nowrap}
.training-report-table td:first-child{white-space:nowrap}
.report-table :is(th,td),.shift-report-table :is(th,td){white-space:normal;overflow-wrap:anywhere}
.report-print,.shift-report-print{min-width:0}
.report-print h2,.shift-report-print h2{margin-bottom:12px}
.report-print .detail-grid,.shift-report-print .detail-grid{margin-bottom:20px}
.app-dialog-printable .dialog-footer{flex-wrap:wrap}

/* Only the current preview prints; its semantic table can continue across pages. */
@page shift-report{size:A4 landscape;margin:12mm}
@media print{
  body.print-suppressed > *{display:none!important}
  body:has(> .app-dialog-printable[open]) > :not(.app-dialog-printable[open]){display:none!important}
  body:has(> .app-dialog-printable[open]){page:shift-report;background:white;color:black;margin:0}
  .app-dialog-printable[open]{font-family:'PingFang TC','Noto Sans TC',system-ui,sans-serif;page:shift-report;display:block;position:static!important;width:100%;max-width:none;max-height:none;height:auto;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;overflow:visible;color:black;background:white}
  .app-dialog-printable::backdrop{display:none}
  .app-dialog-printable :is(.dialog-header,.dialog-footer,[data-no-print]){display:none!important}
  .app-dialog-printable .dialog-body{padding:0;overflow:visible;max-height:none}
  .app-dialog-printable .table-scroll{border:0;overflow:visible;max-width:none;width:100%}
  .app-dialog-printable table{width:100%;min-width:0;table-layout:fixed;font-size:9pt;border-collapse:collapse}
  .app-dialog-printable thead{display:table-header-group}
  .app-dialog-printable tr{break-inside:avoid}
  .app-dialog-printable :is(th,td){min-width:0;padding:4pt;white-space:normal;overflow-wrap:anywhere;color:black;background:white;border-color:#777}
  .app-dialog-printable .shift-report-table th:nth-child(1){width:9%}
  .app-dialog-printable .shift-report-table th:nth-child(2){width:6%}
  .app-dialog-printable .shift-report-table th:nth-child(3){width:9%}
  .app-dialog-printable .shift-report-table th:nth-child(4){width:7%}
  .app-dialog-printable .shift-report-table th:nth-child(5){width:9%}
  .app-dialog-printable .shift-report-table :is(th:nth-child(6),th:nth-child(7)){width:5%}
  .app-dialog-printable .shift-report-table :is(th:nth-child(8),th:nth-child(11)){width:20%}
  .app-dialog-printable .shift-report-table th:nth-child(9){width:6%}
  .app-dialog-printable .shift-report-table th:nth-child(10){width:4%}
  .app-dialog-printable .service-report-table th:nth-child(1){width:8%}
  .app-dialog-printable .service-report-table :is(th:nth-child(2),th:nth-child(4),th:nth-child(8)){width:6%}
  .app-dialog-printable .service-report-table :is(th:nth-child(3),th:nth-child(6),th:nth-child(7)){width:6%}
  .app-dialog-printable .service-report-table :is(th:nth-child(5),th:nth-child(10)){width:7%}
  .app-dialog-printable .service-report-table :is(th:nth-child(9),th:nth-child(12)){width:13%}
  .app-dialog-printable .service-report-table th:nth-child(11){width:4%}
  .app-dialog-printable .service-report-table th:nth-child(13){width:12%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(1){width:8%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(2){width:8%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(3){width:6%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(4){width:8%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(5){width:6%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(6){width:8%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(7){width:5%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(8){width:5%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(9){width:16%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(10){width:6%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(11){width:4%}
  .app-dialog-printable .shift-report-table.calendar-span-report-table th:nth-child(12){width:20%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(1){width:7%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(2){width:7%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(3){width:5%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(4){width:7%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(5){width:5%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(6){width:7%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(7){width:5%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(8){width:5%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(9){width:5%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(10){width:13%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(11){width:6%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(12){width:4%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(13){width:12%}
  .app-dialog-printable .service-report-table.calendar-span-report-table th:nth-child(14){width:12%}
  .app-dialog-printable .leave-report-table.calendar-span-report-table th:nth-child(1){width:9%}
  .app-dialog-printable .leave-report-table.calendar-span-report-table th:nth-child(2){width:9%}
  .app-dialog-printable .leave-report-table.calendar-span-report-table th:nth-child(3){width:9%}
  .app-dialog-printable .leave-report-table.calendar-span-report-table th:nth-child(4){width:11%}
  .app-dialog-printable .leave-report-table.calendar-span-report-table th:nth-child(5){width:10%}
  .app-dialog-printable .leave-report-table.calendar-span-report-table th:nth-child(6){width:10%}
  .app-dialog-printable .leave-report-table.calendar-span-report-table th:nth-child(7){width:10%}
  .app-dialog-printable .leave-report-table.calendar-span-report-table th:nth-child(8){width:8%}
  .app-dialog-printable .leave-report-table.calendar-span-report-table th:nth-child(9){width:24%}
  .app-dialog-printable .case-report-table th:nth-child(1){width:10%}
  .app-dialog-printable .case-report-table th:nth-child(2){width:6%}
  .app-dialog-printable .case-report-table :is(th:nth-child(3),th:nth-child(9)){width:9%}
  .app-dialog-printable .case-report-table :is(th:nth-child(4),th:nth-child(5),th:nth-child(10)){width:4%}
  .app-dialog-printable .case-report-table :is(th:nth-child(6),th:nth-child(7),th:nth-child(8)){width:7%}
  .app-dialog-printable .case-report-table th:nth-child(11){width:13%}
  .app-dialog-printable .case-report-table th:nth-child(12){width:20%}
  .app-dialog-printable .employee-report-table :is(th:nth-child(1),th:nth-child(4)){width:8%}
  .app-dialog-printable .employee-report-table th:nth-child(2){width:14%}
  .app-dialog-printable .employee-report-table th:nth-child(3){width:12%}
  .app-dialog-printable .employee-report-table th:nth-child(5){width:28%}
  .app-dialog-printable .employee-report-table th:nth-child(6){width:30%}
  .app-dialog-printable .leave-report-table :is(th:nth-child(1),th:nth-child(2),th:nth-child(6)){width:10%}
  .app-dialog-printable .leave-report-table th:nth-child(3){width:12%}
  .app-dialog-printable .leave-report-table :is(th:nth-child(4),th:nth-child(5)){width:13%}
  .app-dialog-printable .leave-report-table th:nth-child(7){width:8%}
  .app-dialog-printable .leave-report-table th:nth-child(8){width:24%}
  .app-dialog-printable .training-report-table th:nth-child(1){width:9%}
  .app-dialog-printable .training-report-table :is(th:nth-child(2),th:nth-child(5),th:nth-child(7),th:nth-child(8)){width:7%}
  .app-dialog-printable .training-report-table th:nth-child(3){width:10%}
  .app-dialog-printable .training-report-table th:nth-child(4){width:16%}
  .app-dialog-printable .training-report-table th:nth-child(6){width:12%}
  .app-dialog-printable .training-report-table th:nth-child(9){width:25%}
  .app-dialog-printable .certification-report-table :is(th:nth-child(1),th:nth-child(8)){width:7%}
  .app-dialog-printable .certification-report-table :is(th:nth-child(2),th:nth-child(4)){width:10%}
  .app-dialog-printable .certification-report-table th:nth-child(3){width:13%}
  .app-dialog-printable .certification-report-table th:nth-child(5){width:11%}
  .app-dialog-printable .certification-report-table :is(th:nth-child(6),th:nth-child(7)){width:9%}
  .app-dialog-printable .certification-report-table th:nth-child(9){width:8%}
  .app-dialog-printable .certification-report-table th:nth-child(10){width:16%}
  .app-dialog-printable .detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8pt;margin-bottom:12pt}
  .app-dialog-printable :is(dt,.muted,.subtitle){color:black}
  .app-dialog-printable :is(h2,h3){break-after:avoid}
  .app-dialog-printable p{font-size:9pt}
}
