[data-page="personnel"]{padding:0!important;min-height:0;overflow:hidden}.personnel-frame{height:100%;display:flex;flex-direction:column;min-height:0;background:var(--paper,#fff);border:1px solid var(--line,#d9e2e7);border-radius:16px;overflow:hidden}.personnel-hero{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line,#d9e2e7)}.personnel-hero h1{font-size:24px;color:var(--ink,#20345c);margin:3px 0}.personnel-hero p{margin:4px 0;color:var(--muted,#69767d)}.personnel-hero .eyebrow{color:#4e9a9b}.personnel-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px}.personnel-toolbar>input[type="search"]{flex:1;min-width:180px;max-width:520px}.personnel-body{flex:1;min-height:0;overflow:auto;padding:6px 12px 12px}.personnel-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line,#d9e2e7);padding:4px 0 8px}.personnel-tabs [aria-pressed="true"]{border-bottom:3px solid #54bbbc;background:#edf8f8}.personnel-form{margin:8px 0 16px;padding:12px;border:1px solid var(--line,#d9e2e7);border-radius:12px}.personnel-form h2{font-size:18px;margin:0 0 12px;color:var(--ink,#20345c)}.personnel-fields{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px 14px}.personnel-field{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:var(--ink,#20345c)}.personnel-field input,.personnel-field select,.personnel-field textarea{width:100%;min-width:0;box-sizing:border-box;min-height:36px;padding:7px 9px;border:1px solid var(--line,#ccd8df);border-radius:8px;background:var(--paper,#fff);color:var(--ink,#20345c);font:inherit}.personnel-field textarea{height:64px;resize:vertical}.personnel-field input:disabled,.personnel-field select:disabled{background:var(--canvas,#f2f5f6)}.personnel-form footer{padding:12px 0 0}.personnel-grid{width:100%;border-spacing:5px;table-layout:auto}.personnel-grid th{background:#342e7e;color:#fff;border-radius:10px;padding:10px;font-size:12px;text-align:left;white-space:nowrap}.personnel-grid td{padding:7px 9px!important;border:1px solid var(--line,#d9e2e7);border-radius:9px;line-height:1.3;vertical-align:middle}.personnel-grid td>span{display:block;max-width:520px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.personnel-grid tr:nth-child(even) td{background:var(--canvas,#f7fbfb)}.personnel-row-link{font:inherit;text-align:left;border:0!important;background:transparent!important;color:inherit;padding:0!important;cursor:pointer;text-decoration:underline;text-decoration-color:#79acb0}.personnel-note{font-size:13px;color:var(--muted,#64727a);margin:6px 0 12px}.personnel-history{overflow:auto}.personnel-dialog{background:var(--paper,#fff);color:var(--ink,#20345c);border:1px solid var(--line,#ccd8df);border-top:4px solid #4e9a9b;border-radius:14px;max-width:90vw;max-height:85vh;overflow:auto;padding:18px}.personnel-qr{text-align:center}.personnel-qr img{display:block;width:280px;height:280px;max-width:65vw;margin:auto}.personnel-dialog::backdrop{background:#11243d80}@media(max-width:1100px){.personnel-fields{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media(max-width:600px){.personnel-fields{grid-template-columns:1fr}.personnel-hero{padding:10px}.personnel-hero h1{font-size:19px}.personnel-hero>strong{display:none}}
.personnel-desk-filters{padding:6px 0 10px;align-items:flex-end}.personnel-desk-filters .personnel-field{min-width:155px;max-width:260px;flex:1}.personnel-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.personnel-summary>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border:1px solid var(--line,#d9e2e7);border-radius:10px;background:var(--canvas,#f5f8f9);font-size:13px}.personnel-summary strong{color:var(--ink,#20345c);font-size:18px}.personnel-picker{width:min(680px,90vw)}.personnel-picker>div:not(.personnel-field):not(.personnel-toolbar){display:flex;flex-direction:column;gap:6px;max-height:48vh;overflow:auto}.personnel-grid td .personnel-toolbar{padding:0;flex-wrap:nowrap}.personnel-grid td .personnel-row-link{max-width:320px;white-space:normal}.personnel-body>.personnel-grid{min-width:680px}@media(max-width:600px){.personnel-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.personnel-desk-filters .personnel-field{min-width:130px;max-width:none}}

.personnel-photo{border:1px solid var(--line,#d9e2e7);border-radius:12px;padding:12px;margin:12px 0}.personnel-photo h2{font-size:18px;color:var(--ink,#20345c)}.personnel-photo-preview{width:128px;height:150px;border:1px solid var(--line,#d9e2e7);border-radius:10px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:13px;overflow:hidden;background:var(--canvas,#f5f8f9)}.personnel-photo-preview img{width:100%;height:100%;object-fit:contain}.personnel-photo input[type=file]{max-width:100%;color:var(--ink,#20345c)}

.personnel-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px;align-items:start}.personnel-profile-layout .personnel-photo{margin:8px 0 16px}.personnel-profile-layout .personnel-photo .personnel-toolbar{padding:10px 0;align-items:stretch;flex-direction:column}.personnel-profile-layout .personnel-photo .personnel-photo-preview{margin:auto}.personnel-profile-layout .personnel-photo input[type=file]{font-size:12px;width:100%}@media(max-width:1000px){.personnel-profile-layout{grid-template-columns:1fr}.personnel-profile-layout .personnel-photo .personnel-toolbar{flex-direction:row;flex-wrap:wrap}}
/* Personnel list proportions. Employee forms, photo panels and saved grid choices stay independent. */
@media screen {
 [data-page="personnel"] .personnel-frame:not(:has(> .personnel-body .personnel-form)) > .personnel-hero{gap:12px;padding:10px 14px}
 [data-page="personnel"] .personnel-frame:not(:has(> .personnel-body .personnel-form)) > .personnel-hero h1{font-size:18px;line-height:1.25;margin:0}
 [data-page="personnel"] .personnel-frame:not(:has(> .personnel-body .personnel-form)) > .personnel-hero .eyebrow{font-size:10px;line-height:1.4;margin:0 0 3px}
 [data-page="personnel"] .personnel-frame:not(:has(> .personnel-body .personnel-form)) > .personnel-hero p:not(.eyebrow){font-size:12px;line-height:1.4;margin:3px 0 0}
 [data-page="personnel"] .personnel-frame:not(:has(> .personnel-body .personnel-form)) > .personnel-hero > strong{font-size:14px;line-height:1.3;white-space:nowrap}
 [data-page="personnel"] .personnel-frame:not(:has(> .personnel-body .personnel-form)) > .personnel-toolbar{padding:8px 10px;gap:6px}
 [data-page="personnel"] .personnel-frame:not(:has(> .personnel-body .personnel-form)) > .personnel-toolbar > input[type="search"]{box-sizing:border-box;flex:0 1 360px;width:360px;max-width:100%;min-width:180px;height:32px;min-height:32px;padding:6px 10px;font:13px/1.3 var(--ui-font,Arial,sans-serif)}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]){table-layout:fixed;border-spacing:4px;min-width:1040px;font-size:13px}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) th{box-sizing:border-box;height:32px;padding:6px 9px;font-weight:700;letter-spacing:.2px}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]):not(.grid-appearance-large) th{font-size:12px;line-height:1.25}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) td{box-sizing:border-box;height:34px;padding:6px 9px!important}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]):not(.grid-appearance-large) :is(td,td > span,td > .personnel-row-link){font-size:13px;line-height:1.35}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) td > .personnel-row-link{display:block;width:100%;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) th[data-field="code"]{width:112px}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) th[data-field="name"]{width:calc(32% - 100.48px)}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) th[data-field="branch"]{width:calc(26% - 81.64px)}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) th[data-field="jobTitle"]{width:calc(22% - 69.08px)}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) th[data-field="department"]{width:calc(20% - 62.8px)}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) th[data-field="hireDate"]{width:112px}
 [data-page="personnel"] .personnel-body > .personnel-grid:has(th[data-field="code"]) th[data-field="state"]{width:90px}
 @media(max-width:600px){[data-page="personnel"] .personnel-frame:not(:has(> .personnel-body .personnel-form)) > .personnel-toolbar > input[type="search"]{flex-basis:100%;width:100%}}
}
/* End personnel list proportions. */
/* Personnel workflow controls retain the shared internal scrolling frame. */
.personnel-weekdays{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 14px;border:1px solid var(--line,#d9e2e7);border-radius:10px;padding:10px;min-width:0}
.personnel-weekdays legend{font-size:13px;font-weight:700;color:var(--ink,#20345c)}
.personnel-weekdays .personnel-field{flex-direction:row;align-items:center;gap:6px}
.personnel-workflow-panel{border:1px solid var(--line,#d9e2e7);border-radius:12px;padding:12px;margin:10px 0;min-width:0;overflow:auto;background:var(--paper,#fff)}
.personnel-workflow-panel h2{font-size:17px;color:var(--ink,#20345c);margin:0 0 10px}
.personnel-workflow-panel .personnel-field:has(input[type=checkbox]){flex-direction:row;align-items:center;margin:7px 0}
.personnel-field input[type=checkbox]{width:18px;min-height:18px;height:18px;padding:0;flex:0 0 18px;accent-color:#4e9a9b}
.personnel-workflow-panel .personnel-grid{min-width:380px}

/* Personnel card selection preserves saved field colors and widths. */
[data-page="personnel"] .personnel-grid tbody tr[aria-selected="true"] td{box-shadow:inset 0 0 0 2px var(--erp-accent,#4e999a)}

/* Each personnel register keeps its own visible columns inside the shared workspace. */
[data-page="personnel"] [hidden]{display:none!important}
.personnel-appearance{width:min(880px,92vw);overflow:hidden}
.personnel-appearance-body{max-height:60vh;overflow:auto;overscroll-behavior:contain;margin-bottom:12px}
.personnel-column-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:12px 0}
.personnel-column-choice{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--line,#d9e2e7);border-radius:8px;font-size:12px;min-width:0}
.personnel-column-choice input{width:18px;height:18px;accent-color:#4e9a9b}
.personnel-history-tools{justify-content:flex-end;padding:6px 0}
[data-page="personnel"] .personnel-body>.personnel-grid.personnel-extra-columns{table-layout:auto}
[data-page="personnel"] .personnel-grid.personnel-extra-columns th:not([hidden]){min-width:120px;width:auto}
[data-page="personnel"] .personnel-grid.personnel-extra-columns th:is([data-field="name"],[data-field="personnel"]){min-width:200px}
@media(max-width:600px){.personnel-column-options{grid-template-columns:1fr}}
