/* Nhân sự (staff.mjs; Owner 28/10/2026, the drawings approved): the phone first (one column, big buttons), the Desktop with the
   whole Bảng chấm công. The line of the main screen (createStaffNote) at the end. */
.staff{--staff-line:#dbe5df;--staff-muted:#5d6f64;--staff-green:#284b3e;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;overflow-wrap:anywhere;color:#203930}
.staff.busy{opacity:.75}
.staff-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
#module-panel .staff-head :is(h1,h2){margin:0;font-size:24px}
.staff-desktop .staff-head h1{font-size:26px}
.staff-when{flex:0 0 auto;font-size:14px;color:var(--staff-muted)}
.staff-tabs{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:6px;padding:2px}
#module-panel .staff button{margin:0}
.staff .staff-tab{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:6px 4px;border:0;border-radius:22px;background:#e9f1eb;color:#294c3d;font-size:14.5px;font-weight:700;white-space:nowrap}
.staff .staff-tab[aria-selected=true]{background:var(--staff-green);color:#fff}
.staff-count{position:absolute;top:-6px;right:2px;min-width:20px;padding:1px 6px;border-radius:10px;background:#c62f22;color:#fff;font-size:12px;line-height:1.4;text-align:center}
.staff-status{margin:0;font-size:14px;color:#7d4210}.staff-status:empty{display:none}
.staff-body{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}
.staff-caption{margin:6px 2px 0;font-size:12.5px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--staff-muted)}
.staff-note{margin:0;font-size:13.5px;color:var(--staff-muted)}
.staff-empty{list-style:none;padding:14px;background:#fff;border:1px dashed #c5d6cb;border-radius:12px;color:var(--staff-muted);font-size:14px}
p.staff-empty{margin:0}

/* Hôm nay: three numbers, then who is off, who is out, who works. */
.staff-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.staff-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:84px;padding:10px;background:#fff;border:1px solid var(--staff-line);border-radius:14px;text-align:center}
.staff-stat b{font-size:34px;line-height:1.1;color:#2f6b48}
.staff-stat[data-stat=leave] b{color:#9a6400}.staff-stat[data-stat=out] b{color:#1d4f91}
.staff-stat span{margin-top:4px;font-size:13.5px;color:var(--staff-muted)}
.staff-list,.staff-cards{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.staff-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:#fff;border:1px solid var(--staff-line);border-radius:14px}
.staff-person{display:flex;align-items:center;gap:12px;min-width:0}
.staff-avatar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#e9f1eb;color:#284b3e;font-weight:800;font-size:17px}
.staff-person>div{min-width:0}
.staff-person strong{font-size:16.5px}
.staff-role{font-size:14.5px;color:var(--staff-muted)}
.staff-person small{display:block;margin-top:2px;font-size:14px;color:#3d5449}
.staff-badge{flex:0 0 auto;padding:4px 10px;border-radius:999px;background:#eef3f0;color:#294c3d;font-size:12.5px;font-weight:700;white-space:nowrap}
.staff-badge[data-kind=green]{background:#e3f2e8;color:#245b3a}
.staff-badge[data-kind=amber]{background:#fff4d7;color:#7a5a00}
.staff-badge[data-kind=blue]{background:#e3eefc;color:#1d4f91}
.staff-badge[data-kind=red]{background:#fde8e6;color:#a1271d}
.staff-badge[data-kind=grey]{background:#eef0ef;color:#5d6660}
.staff-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.staff-chips li{padding:7px 12px;background:#fff;border:1px solid var(--staff-line);border-radius:999px;font-size:14px}
.staff-send{display:grid;gap:8px}

/* Buttons. */
.staff :is(.staff-primary,.staff-secondary,.staff-danger),.staff-home :is(.staff-primary){min-height:48px;padding:10px 16px;border-radius:10px;font-size:15.5px;font-weight:700}
.staff .staff-primary,.staff-home .staff-primary{background:#365f49;border:1px solid #365f49;color:#fff}
.staff .staff-secondary{background:#fff;border:1px solid #b9d0c0;color:#1e5138}
.staff .staff-danger{background:#fff;border:1px solid #e3b4ad;color:#a1271d}
.staff .staff-wide{width:100%}
.staff .staff-send>.staff-wide,.staff .work-jobs-buttons>.staff-wide{min-height:52px;background:#fff;border:1.5px solid #b9d0c0;border-radius:14px;color:#1e5138;font-size:16px;font-weight:700}
.staff .staff-small{flex:0 0 auto;min-height:40px;padding:6px 14px;border:1px solid #b9d0c0;border-radius:10px;background:#fff;color:#1e5138;font-size:14px;font-weight:700}
.staff .staff-link{flex:0 0 auto;white-space:nowrap;min-height:0;padding:2px 4px;border:0;background:transparent;color:#1d4f91;font:inherit;font-weight:700;text-decoration:underline dotted}
.staff .staff-back{justify-self:start;min-height:40px;padding:4px 0;border:0;background:transparent;color:#365f49;font-size:15px;font-weight:700}
.staff button:disabled{opacity:.5;cursor:not-allowed}
.staff-actions{display:flex;flex-wrap:wrap;gap:8px}
.staff-card .staff-actions>button{flex:1 1 120px}
.staff-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;border-radius:10px;background:#fdf1ef}
.staff-confirm span{flex:1 1 100%;font-size:14px;font-weight:650;color:#7d2a20}

/* Đơn (drawing 4): who, the days and the reason, the way, the actions. */
.staff-card{display:grid;gap:8px;padding:14px;background:#fff;border:1px solid var(--staff-line);border-radius:16px}
.staff-card[data-state=rejected],.staff-card[data-state=cancelled]{background:#fbfcfb}
.staff-card.staff-focus{outline:3px solid #f0b429;outline-offset:2px}
.staff-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.staff-card-head strong{font-size:17px}
.staff-line,.staff-counted,.staff-refused{margin:0;font-size:14.5px;line-height:1.45;color:#3d5449}
.staff-counted{color:#245b3a;font-weight:650}
.staff-refused{color:#a1271d}
.staff-steps{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.staff-steps li{display:flex;align-items:center;gap:10px;font-size:14.5px;color:var(--staff-muted)}
.staff-steps li::before{content:'';flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#eef3f0;font-size:13px;font-weight:800}
.staff-steps li[data-kind=done]{color:#2f6b48}
.staff-steps li[data-kind=done]::before{content:'✓';background:#2f6b48;color:#fff}
.staff-steps li[data-kind=now]{color:#203930;font-weight:700}
.staff-steps li[data-kind=now]::before{content:'…';background:#f3c969;color:#5b4300}
.staff-steps li[data-kind=todo]::before{content:'·'}
.staff-steps li[data-kind=no]{color:#a1271d}
.staff-steps li[data-kind=no]::before{content:'✕';background:#fde8e6;color:#a1271d}

/* Forms: ghi người ra ngoài, xin nghỉ, từ chối, phép năm. */
.staff-form{display:grid;gap:10px}
.staff-form h3{margin:0;font-size:17px}
.staff-field{display:grid;gap:4px;margin:0;font-size:14.5px;font-weight:700}
.staff-field>span{color:#203930}
.staff-form :is(input,select,textarea){display:block;width:100%;margin:0;font:inherit;font-size:16px;font-weight:400;line-height:1.4}
.staff-form select{min-height:48px;padding:10px 12px;border:1px solid #becfc4;border-radius:8px;background:#fff;color:#203930}
.staff-message{margin:0;font-size:14px;font-weight:600;color:#a1271d}.staff-message:empty{display:none}
.staff-group{display:grid;gap:6px;margin:0;padding:0;border:0}
.staff-group legend{padding:0 0 6px;font-size:14.5px;font-weight:700}
.staff-choice{display:flex;flex-wrap:wrap;gap:8px}
.staff .staff-option{min-height:48px;padding:10px 18px;border:1px solid #becfc4;border-radius:12px;background:#fff;color:#203930;font-size:16px;font-weight:500}
.staff .staff-option[aria-checked=true]{background:var(--staff-green);border-color:var(--staff-green);color:#fff;font-weight:700}
.staff-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.staff-annual{padding:12px 14px;border-radius:12px;background:#e3f2e8;color:#245b3a;font-size:15.5px}
.staff-annual[data-kind=amber]{background:#fff4d7;color:#6b4f00}
.staff-annual[data-kind=red]{background:#fde8e6;color:#8a2219}
.staff-split{padding:12px 14px;border-radius:12px;background:#fde8e6;color:#8a2219;font-size:15px}
.staff-split p{margin:0}.staff-split ul{margin:4px 0 0;padding-left:20px}
.staff-way{padding:14px 16px;background:#fff;border:1px solid var(--staff-line);border-radius:16px}
.staff-way h3{margin:0 0 8px;font-size:17px}
.staff-way ol{list-style:none;margin:0;padding:0;display:grid;gap:8px;counter-reset:way}
.staff-way li{display:flex;align-items:center;gap:10px;font-size:15px;counter-increment:way}
.staff-way li::before{content:counter(way);flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#e9f1eb;color:#284b3e;font-weight:800;font-size:14px}
.staff-way li[data-kind=now]{font-weight:700}.staff-way li[data-kind=now]::before{background:#f3c969;color:#5b4300}
.staff-reject,.staff-allowance{padding:10px;border-radius:10px;background:#f6f9f7}
.staff-soon{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:#fff;border:1px solid var(--staff-line);border-radius:14px;font-weight:650}
.staff-soon small{padding:3px 8px;border-radius:999px;background:#eef3f0;color:#637369;font-size:11.5px;font-weight:700}
.staff-out{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #9db8de;border-radius:14px;background:#eef4fd;color:#1d3f6e}
.staff-out strong{display:block;font-size:16px}.staff-out small{display:block;margin-top:2px;font-size:13.5px;color:#3a5680}
.staff-out .staff-primary{flex:0 0 auto;min-height:44px;margin:0;padding:8px 16px}
.staff-out.busy{opacity:.6}

/* Bảng chấm công: the month, then a line a person (phone) or the whole table (Desktop). */
.staff-month{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.staff-month>strong{flex:1;text-align:center;font-size:16px}
.staff-desktop .staff-month>strong{flex:0 0 auto;padding:0 6px}
.staff-month .staff-secondary{min-height:40px;padding:6px 12px;font-size:14px}
.staff-tools{display:flex;gap:8px;margin-left:auto}
.staff-tools button{min-height:40px;padding:6px 16px;font-size:14px}
.staff-table-wrap{overflow-x:auto;border:1px solid #cfdcd4;border-radius:10px;background:#fff}
.staff-table{border-collapse:collapse;width:100%;font-size:12.5px;white-space:nowrap;overflow-wrap:normal}
.staff-table caption{caption-side:top;padding:8px 10px;text-align:left;font-size:15px;font-weight:800}
.staff-table th{padding:4px 5px;background:#284b3e;color:#fff;font-weight:700;border:1px solid #3c6150}
.staff-table th[data-sunday]{background:#4b6a5d}
/* desktop.css sets every third table cell in monospace (an older read-back table): not here. */
.staff-table :is(th,td){vertical-align:middle}
.staff-table td{padding:4px 5px;border:1px solid #e1e8e3;text-align:center;font-family:inherit;max-width:none}
.staff-table td.staff-name{text-align:left;font-weight:650}
/* The month fits the Desktop's width: the days narrow, the totals' headings on two lines. */
.staff-table tbody td:not(:nth-child(-n+3)){padding:3px 2px;min-width:22px;font-size:11.5px}
.staff-table thead tr:last-child th,.staff-table thead tr:first-child th:not([rowspan]){padding:3px 2px;font-size:11.5px}
.staff-table thead th[rowspan]{white-space:normal;line-height:1.2}
.staff-table thead th[rowspan]:nth-last-child(-n+4){width:54px}
.staff-table td.staff-total{font-weight:800}
.staff-table td[data-code=DL]{background:#e3f2e8;color:#245b3a}
.staff-table td:is([data-code=NP],[data-code='NP½']){background:#dfe9fb;color:#1d4f91;font-weight:700}
.staff-table td:is([data-code=KL],[data-code='KL½'],[data-code='NP/KL']){background:#fde4e1;color:#8a2219;font-weight:700}
.staff-table td[data-open]{background:#f4f4f4;color:#7b827e;font-style:italic;font-weight:500}
.staff-table td[data-sunday]{background:#f6f8f7}
.staff-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--staff-muted)}
.staff-legend li{display:flex;align-items:center;gap:6px}
.staff-code{padding:2px 6px;border-radius:5px;background:#e3f2e8;color:#245b3a;font-weight:700}
.staff-code:is([data-code=NP],[data-code='NP½']){background:#dfe9fb;color:#1d4f91}
.staff-code:is([data-code=KL],[data-code='KL½'],[data-code='NP/KL']){background:#fde4e1;color:#8a2219}
.staff-code[data-open]{background:#f0f0f0;color:#7b827e;font-style:italic}
.staff-editor:empty{display:none}
/* Nhập phép năm còn lại (Kế toán): a line a person, the number on the right. */
.staff-entry{display:grid;gap:8px}
.staff .staff-entry-open{justify-self:start}
.staff-entry-list{list-style:none;margin:0;padding:0;display:grid;gap:0;border:1px solid var(--staff-line);border-radius:12px;overflow:hidden}
.staff-entry-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-bottom:1px solid #edf2ef;background:#fff}
.staff-entry-row:last-child{border-bottom:0}
.staff-entry-row>div{min-width:0}
.staff-entry-row small{display:block;font-size:12.5px;color:var(--staff-muted)}
.staff-form .staff-entry-row input{flex:0 0 96px;width:96px;min-height:44px;text-align:right}
.staff-entry-row input[aria-invalid=true]{border-color:#c0392b;outline:2px solid #f3b7ae}
.staff-soon-text{flex:0 0 auto}
.staff-annual small{display:block;margin-top:2px;font-size:13px;opacity:.85}
.staff-table td[data-unset] small{color:#9a6400;font-size:10.5px}
/* By hồ sơ (staff-profiles.sql): Mã NV, a hồ sơ without an account, the accounts without a hồ sơ. */
.staff-table td.staff-code-cell{white-space:nowrap;color:var(--staff-muted)}
.staff-table td.staff-name small.staff-noacct{display:block;font-size:10.5px;font-weight:600;color:#8a6100}
.staff-unlinked{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;padding:10px 14px;border-radius:12px;background:#fff4d7;color:#5a4300;font-size:14px;line-height:1.45}
.staff-unlinked p{margin:0;flex:1 1 320px}.staff-unlinked strong{color:#3f2f00}
.staff .staff-unlinked .staff-link{color:#1d4f91;font-weight:700}
.staff-desktop .staff-allowances{max-width:640px}
.staff-editor .staff-allowance{max-width:420px}
.staff-desktop .staff-cards{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));align-items:start}
.staff-desktop .staff-leave{max-width:620px}
/* In: the table alone, A4 across (a page of its own name: the phiếu tiếp nhận keeps its A4 upright). */
.staff-print-root{display:none}
@page staff-sheet{size:A4 landscape;margin:8mm}
/* As the A4 sheets (intake-desk.css): no room for the browser's own lines; the 8 mm edges as padding, on every page. */
@supports (box-decoration-break:clone){
  @page staff-sheet{margin:0}
  @media print{body.staff-printing>.staff-print-root{box-sizing:border-box;padding:8mm;box-decoration-break:clone}}
}
@media print{
  html:has(body.staff-printing){height:auto!important;overflow:visible!important;background:#fff!important;page:staff-sheet}
  body.staff-printing{page:staff-sheet;display:block!important;height:auto!important;min-height:0!important;overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important;color:#000}
  body.staff-printing>:not(.staff-print-root){display:none!important}
  body.staff-printing>.staff-print-root{display:block!important}
  .staff-print-root .staff-table-wrap{overflow:visible;border:0;border-radius:0}
  .staff-print-root .staff-table{font-size:8pt}
  .staff-print-root h2{margin:0 0 6px;font-size:13pt}
  .staff-print-root .staff-table caption{display:none}
  .staff-print-root .staff-table tr{break-inside:avoid}
  .staff-print-root .staff-legend{margin-top:6px;font-size:8pt}
}
@media(max-width:380px){.staff .staff-tab{font-size:13.5px}.staff-stat b{font-size:28px}.staff-dates{grid-template-columns:1fr}}

/* The line of Nhân sự on the main screen (drawing 1) and "Đang đi cứu pan · Đã về". */
.staff-home{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:10px 12px 0}
.staff-home[hidden]{display:none}
.staff-home .staff-home-line{display:flex;align-items:center;gap:12px;width:100%;min-height:0;margin:0;padding:10px 12px 10px 14px;background:#fff;color:#203930;border:1px solid #dce5df;border-left:4px solid #3a6fb5;border-radius:14px;text-align:left;font-weight:400;box-shadow:0 1px 2px #0000000a}
.staff-home-icon{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#e3eefc;color:#1d4f91}
.staff-home-icon svg{width:22px;height:22px}
.staff-home-text{flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:1px}
.staff-home-text strong{font-size:16px}
.staff-home-text small{display:block;overflow:hidden;font-size:13px;color:#637369;white-space:nowrap;text-overflow:ellipsis}
/* The requests waiting on this account, first on the line (review of TPDV's flow on the phone, Owner 11/11/2026 "Sửa cả 8"). */
.staff-home-text .staff-home-wait{color:#a15c00;font-weight:700}
.staff-home-chevron{flex:0 0 auto;font-size:26px;line-height:1;color:#9aaaa0}
/* With the line, HÔM NAY and the bars a little tighter, so that the main screen still fits one screen. */
:is(body.workshop-mode,body.office-mode):has(#home-hero:not([hidden]) .staff-home:not([hidden])) .workshop-stat{min-height:58px;padding:6px 8px}
:is(body.workshop-mode,body.office-mode):has(#home-hero:not([hidden]) .staff-home:not([hidden])) .workshop-stat b{font-size:clamp(24px,3.6vh,34px)}
:is(body.workshop-mode,body.office-mode):has(#home-hero:not([hidden]) .staff-home:not([hidden])) .workshop-stat span{min-height:0;margin-top:2px;font-size:12px}
:is(body.workshop-mode,body.office-mode):has(#home-hero:not([hidden]) .staff-home:not([hidden])) .workshop-today{padding-top:10px}
:is(body.workshop-mode,body.office-mode):has(#home-hero:not([hidden]) .staff-home:not([hidden])) #home-tasks.workshop-bars{gap:8px;padding-top:10px}
:is(body.workshop-mode,body.office-mode):has(#home-hero:not([hidden]) .staff-home:not([hidden])) #home-tasks.workshop-bars .workshop-bar{min-height:66px;padding:9px 12px}
:is(body.workshop-mode,body.office-mode):has(#home-hero:not([hidden]) .staff-home:not([hidden])) #home-tasks .workshop-bar-icon{width:44px;height:44px;border-radius:12px}
@media(max-height:780px){.staff-home{padding-top:8px}.staff-home .staff-home-line{padding:8px 10px}.staff-home-icon{width:38px;height:38px}}
/* The office's KHÁC keeps its small icons beside the line; a low screen tightens the office as mobile-home.css does without it
   (PLAN-MAN-CHINH-QL-DIEN-THOAI-001 "1A"). */
body.office-mode:has(#home-hero:not([hidden]) .staff-home:not([hidden])) #home-tasks .office-tile .workshop-bar-icon{width:36px;height:36px;border-radius:10px}
@media(max-height:760px){
  body.office-mode:has(#home-hero:not([hidden]) .staff-home:not([hidden])) .workshop-stat{min-height:48px;padding:4px 6px}
  body.office-mode:has(#home-hero:not([hidden]) .staff-home:not([hidden])) .workshop-stat b{font-size:24px}
  body.office-mode:has(#home-hero:not([hidden]) .staff-home:not([hidden])) #home-tasks.workshop-bars{gap:6px;padding-top:8px}
  body.office-mode:has(#home-hero:not([hidden]) .staff-home:not([hidden])) #home-tasks.workshop-bars .workshop-bar{min-height:54px;padding:6px 12px}
  body.office-mode:has(#home-hero:not([hidden]) .staff-home:not([hidden])) #home-tasks .workshop-bar-icon{width:38px;height:38px}
  body.office-mode:has(#home-hero:not([hidden]) .staff-home:not([hidden])) #home-tasks .office-tile .workshop-bar-icon{width:30px;height:30px}
  body.office-mode .staff-home .staff-home-line{padding:6px 10px 6px 12px}body.office-mode .staff-home-icon{width:36px;height:36px}}
/* The badge of Nhân sự in the bottom bar: the requests waiting on this account. */
[data-mobile-home] #home-bottom button{position:relative}
.staff-nav-count{position:absolute;top:2px;left:calc(50% + 4px);min-width:20px;padding:1px 6px;border-radius:10px;background:#c62f22;color:#fff;font-size:11.5px;font-weight:800;line-height:1.4}
.staff-nav-count[hidden]{display:none}
body.privacy-hidden .staff,body.privacy-hidden .staff-home{visibility:hidden}
/* Đi làm by Văn phòng / Xưởng, a line a role (Owner 28/10/2026: "nhóm lại ... cho nó gọn lại"). */
.staff-groups{display:grid;gap:4px;padding:8px 14px;background:#fff;border:1px solid var(--staff-line);border-radius:14px}
.staff .staff-group-title{display:block;width:100%;min-height:44px;margin:0;padding:6px 0;border:0;border-radius:0;background:transparent;color:#1e5138;font:inherit;font-size:16px;font-weight:700;text-align:left;cursor:pointer}
/* Đang chờ / Đã xong of Chờ duyệt: a line until tapped. */
.staff .staff-fold{display:block;width:100%;min-height:52px;margin:0;padding:12px 16px;border:1.5px solid var(--staff-line);border-radius:14px;background:#fff;color:#1e5138;font:inherit;font-size:16px;font-weight:700;text-align:left;cursor:pointer}
.staff-group dl{display:grid;grid-template-columns:84px minmax(0,1fr);margin:0}
.staff-group :is(dt,dd){margin:0;padding:6px 0;border-top:1px solid #eef3f0;font-size:15px;line-height:1.4}
.staff-group dt{color:var(--staff-muted)}
/* ＋ Thêm công việc at the top of Công việc (work-jobs.mjs). */
.work-jobs{margin-bottom:14px}
.work-jobs[hidden]{display:none}
.work-job .staff-person{flex:1 1 auto}
.work-job small{display:block;margin-top:2px;font-size:14px;color:#3d5449}
.work-job-actions{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:0 0 auto}
.work-job-actions .staff-link{min-height:32px;padding:2px 6px;font-size:14px}
.work-jobs-hours{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.work-jobs-hours[hidden]{display:none}
.work-jobs .staff-field-label{font-size:14px;font-weight:600}
.work-jobs-done{justify-self:start}
.work-jobs .work-jobs-ok{color:#2f6b48}
.work-jobs-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px}
.work-jobs-buttons .staff-wide:disabled{opacity:.55}
.work-jobs .work-jobs-wait{margin-top:8px}
.work-job.work-focus,.work-jobs .staff-out.work-focus{outline:3px solid #f3c969;outline-offset:2px}

