/* A bounded body keeps every field reachable and Save in the viewport. */
#employee-drawer.employee-file-workspace {
  display:flex; flex-direction:column; height:100vh; height:100dvh;
  bottom:auto; overflow:hidden; max-height:100dvh;
}
#app #employee-drawer.employee-file-workspace {padding:0; gap:0;}
body:has(#employee-drawer.open) .voice-fab,
body:has(#employee-drawer.open) .voice-panel {z-index:70;}
#employee-drawer.employee-file-workspace > .drawer-head {
  position:relative; top:auto; flex:0 0 auto; padding:10px 16px; min-height:0;
}
#employee-drawer .employee-drawer-workspace {
  flex:1 1 0; min-height:0; overflow:auto; overscroll-behavior:contain;
  scrollbar-gutter:stable; margin:0; border:0; border-radius:0;
}
#employee-drawer.employee-file-workspace > .drawer-footer {
  position:relative; bottom:auto; flex:0 0 auto; display:flex; flex-direction:column;
  padding:8px 12px; gap:6px; max-height:32dvh; overflow:auto;
}
#employee-drawer .employee-file-actions-title { display:none; }
#employee-drawer [hidden] { display:none !important; }
.employee-guide {max-width:min(600px,92vw); max-height:85dvh; overflow:auto; background:#fff; color:#111; border-radius:12px;}
#employee-drawer .employee-primary-actions,
#employee-drawer .employee-secondary-actions {display:flex; gap:6px; align-items:center;}
#employee-drawer .employee-secondary-actions {overflow-x:auto; flex-wrap:nowrap; padding-bottom:3px;}
#employee-drawer .drawer-footer .btn { flex:0 0 auto; min-height:40px; padding:7px 12px; }
#employee-drawer .employee-primary-actions .btn {flex:1 1 auto;}
#app #employee-drawer :is(input,select,textarea) {
  background:#fff !important; color:#000 !important; -webkit-text-fill-color:#000 !important;
}
#employee-drawer :is(input,select,textarea):disabled { opacity:1; }
#employee-drawer .imported-file-summary {padding:6px 20px; margin:0;}
#employee-drawer .imported-file-message {padding:0 20px; color:#ffe092;}
#employee-drawer .imported-file-message:empty {display:none;}
#employee-drawer .employee-form textarea {min-height:90px; width:100%;}
#app #employee-drawer .btn {font-size:14px !important; line-height:1.4;}
@media(max-height:480px) {
  #employee-drawer .drawer-head h3 {margin:0; font-size:17px;}
  #employee-drawer .drawer-head .page-subtitle {display:none;}
  #employee-drawer .drawer-footer .btn {min-height:32px; padding:4px 10px;}
}

/* Local employee chooser: fixed code + name, a compact searchable scrolling list. */
#app .employee-code-selector {display:inline-flex;gap:8px;align-items:center;justify-content:space-between;max-width:100%;min-height:38px;padding:6px 10px;border:1px solid #c5a146;border-radius:8px;background:#fff;color:#000!important;cursor:pointer;font:inherit;}
#app .employee-code-selector :is(b,span) {color:#000!important;}
#app .employee-code-selector:hover {border-color:#f1d879;background:#fff7da;}
#app .employee-code-selector:focus-visible {outline:3px solid #267bbd;outline-offset:2px;}
#app #employee-drawer .employee-file-identity {min-width:0;flex:1;}
#app #employee-drawer .employee-selected-name {display:block!important;font-size:17px;font-weight:800;line-height:1.5;overflow-wrap:anywhere;color:#fff!important;}
#app #employee-drawer .employee-file-identity h3 {font-size:12px;margin:0;color:#dfd1ae!important;}
#app #employee-drawer .drawer-head {gap:10px;align-items:center;}
#app #employee-drawer .drawer-head-tools {flex-shrink:0;gap:6px;}
.employee-picker-dialog {position:fixed;inset:auto;margin:0;padding:0;box-sizing:border-box;max-width:calc(100vw - 24px);overflow:hidden;background:#fff;color:#000;border:1px solid #b99c4d;border-radius:12px;box-shadow:0 14px 42px #0006;font-family:inherit;}
.employee-picker-dialog[open] {display:flex;flex-direction:column;}
.employee-picker-dialog::backdrop {background:#0004;}
.employee-picker-dialog>header {display:flex;flex:0 0 auto;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid #ddd;gap:12px;}
.employee-picker-dialog>header strong {font-size:17px;}
.employee-picker-dialog .btn {background:#f3f4f6;color:#000!important;border:1px solid #a7adb4;min-height:34px;padding:4px 12px;font:inherit;}
.employee-picker-search {display:grid;flex:0 0 auto;gap:4px;padding:8px 12px;font-size:13px;}
.employee-picker-search input {box-sizing:border-box;width:100%;background:#fff!important;color:#000!important;-webkit-text-fill-color:#000!important;padding:9px;border:1px solid #8c9298;border-radius:7px;font:inherit;font-size:15px;color-scheme:light;}
.employee-picker-count {flex:0 0 auto;padding:0 12px 7px;color:#51565c;font-size:12px;}
.employee-picker-last {display:grid;grid-template-columns:auto auto;gap:3px 10px;align-items:center;flex:0 0 auto;margin:7px 12px 0;padding:7px 10px;background:#fff9e7;color:#000;border:1px solid #b99c4d;border-radius:8px;text-align:right;font:inherit;cursor:pointer;}
.employee-picker-last small {font-size:12px;color:#614c17;}
.employee-picker-last b {text-align:left;font-size:14px;}
.employee-picker-last strong {grid-column:1 / -1;font-size:14px;overflow-wrap:anywhere;}
.employee-picker-last:focus-visible {outline:2px solid #267bbd;}
.employee-picker-results {flex:1 1 auto;min-height:0;max-height:350px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:0 8px 8px;}
.employee-picker-option {display:grid;gap:3px;text-align:right;width:100%;box-sizing:border-box;padding:9px 12px;margin:0 0 5px;background:#fff;color:#000;border:1px solid #d9dfe4;border-radius:8px;font:inherit;cursor:pointer;}
.employee-picker-option>strong {font-size:16px;color:#000;}
.employee-picker-option>small {font-size:12px;color:#545a62;}
.employee-picker-code {font-size:14px;font-weight:800;text-align:right;color:#715916;}
.employee-picker-option:hover,.employee-picker-option:focus-visible {background:#edf5ff;outline:2px solid #267bbd;outline-offset:-2px;}
.employee-picker-option.is-selected {border:2px solid #ad851c;background:#fff9e7;}
.employee-picker-more {display:block;width:100%;}
.employee-picker-notice {margin:0 12px 7px;padding:7px;background:#fff3cf;color:#6e4800;font-size:13px;flex-shrink:0;}
.employee-picker-dialog [hidden] {display:none!important;}
@media(max-width:600px){
  #app #employee-drawer .employee-selected-name {font-size:15px;}
  #app #employee-drawer .drawer-head {padding:7px 9px;}
  #app #employee-drawer .drawer-head-tools {flex-wrap:nowrap;}
  #app #employee-drawer .employee-code-selector {font-size:12px;min-height:34px;padding:4px 7px;}
}

/* Read-only local submission history stays separate from server approval/scoring. */
#app .checklist-local-submissions {margin:8px 0;padding:10px;border:1px solid #b89b4b;border-radius:8px;}
#app .checklist-local-submissions[hidden] {display:none!important;}
#app .checklist-local-submissions-list {max-height:260px;overflow:auto;overscroll-behavior:contain;margin-top:7px;}
#app .checklist-local-submission {background:#fff;color:#000!important;border:1px solid #b89b4b;border-radius:7px;margin:5px 0;padding:9px;}
#app .checklist-local-submission :is(strong,span,small,p,summary) {color:#000!important;}
#app .checklist-local-submission summary {cursor:pointer;display:grid;gap:4px;}
#app .checklist-local-submission summary small {font-size:12px;}
#app .checklist-local-submission[data-local-status="review"] {background:#fff4d7;}
#app .checklist-local-answers article {border-top:1px solid #bbb;padding:7px;display:grid;gap:4px;}
#app .checklist-local-answers p {white-space:pre-wrap;margin:0;}

/* Keep a real bounded work area even when shared workspace rules change flex. */
#app #employee-drawer.employee-file-workspace {display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:0;position:fixed;top:0;bottom:0;height:100vh;height:100dvh;max-height:100dvh;overflow:hidden;}
#app #employee-drawer.employee-file-workspace > .employee-drawer-workspace {display:block;min-height:0;height:auto;max-height:none;overflow:auto;min-width:0;padding-bottom:16px;scrollbar-gutter:stable;}
#app #employee-drawer.employee-file-workspace > .drawer-footer {max-height:30vh;min-height:0;overflow:auto;}
#app #employee-drawer .imported-file-details {padding:10px 20px;}
#app #employee-drawer .imported-file-details h4 {margin:6px 0 12px;}
#app #employee-drawer .imported-file-details .form-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
#app #employee-drawer .imported-file-details input {width:100%;min-width:0;box-sizing:border-box;}
#app #employee-drawer .training-employment-note {grid-column:1/-1;color:#fff2ca;}
@media(max-width:480px){#app #employee-drawer .imported-file-details .form-grid {grid-template-columns:1fr;}}
