.people-panel{padding:0}.people-toolbar{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line)}.people-search{width:320px}.people-count{font-size:12px;color:var(--muted)}.people-panel table{min-width:790px}.people-panel td:last-child{text-align:right}.row-button{border:0;background:#f1f4f9;color:#49617e;border-radius:var(--radius-pill);padding:6px 12px;font-size:11px;font-weight:700}.status.inactive-status{background:#f0f2f5;color:#778495}.status.leave-status{background:#fff2e1;color:#b87526}.empty-state{text-align:center;padding:64px 20px}.empty-state>span{font-size:30px;color:var(--blue)}.empty-state h2{font-size:17px;margin:10px 0 5px}.empty-state p{font-size:13px;color:var(--muted);margin:0}.employee-dialog{width:min(700px,calc(100vw - 32px));max-height:90vh;overflow:hidden;padding:0;border-radius:var(--radius-card)}.employee-dialog>.dialog-scroll{max-height:90vh;overflow-y:auto;padding:28px;scrollbar-gutter:stable}.employee-dialog h2{margin:0;font-size:22px}.dialog-subtitle{color:var(--muted);font-size:12px;margin:7px 0 21px}.form-section{border-top:1px solid var(--line);padding:19px 0}.form-section h3{font-size:13px;margin:0 0 14px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid label{color:#526174;font-size:12px;font-weight:650}.form-grid input:not([type="checkbox"]):not([type="radio"]),.form-grid select{display:block;width:100%;margin-top:6px;border:1px solid #dce3ec;border-radius:7px;padding:9px 10px;background:white;color:var(--ink);font-size:13px;outline-color:var(--color-focus)}.form-grid .span-2{grid-column:span 2}.toggle-field{display:flex;align-items:center;gap:8px}.toggle-field input{width:15px;margin:0;accent-color:var(--blue)}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:5px}
.form-grid .field-help{display:block;margin-top:5px;font-size:11px;font-weight:600;color:var(--muted)}
.people-panel tbody tr{vertical-align:middle}.people-panel tbody td{vertical-align:middle}.people-panel tbody td:first-child{display:table-cell!important;vertical-align:middle!important;white-space:nowrap}.people-panel tbody td:first-child .avatar.small{display:inline-grid;vertical-align:middle;margin-right:8px}.people-panel tbody td:first-child{line-height:1.25}
.form-grid .field-help.field-ok{color:var(--color-primary)}
.form-grid .field-help.field-error{color:var(--color-danger-text,#c0392b)}@media(max-width:720px){.people-toolbar{padding:14px}.people-search{width:100%}.people-count{display:none}.employee-dialog>.dialog-scroll{padding:23px 18px}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:span 1}.form-actions{position:sticky;bottom:-23px;background:#fff;padding:14px 0 0}.form-actions button{flex:1}}

/* Ações agrupadas no cabeçalho e filtros seguindo a mesma ordem visual das
   colunas Cargo, Jornada e Situação. */
.people-page-actions{display:flex;align-items:center;gap:8px}
.people-panel .people-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) auto max-content;align-items:center;gap:12px}
.people-panel .people-toolbar .people-search{grid-column:auto;width:100%;min-width:0}
.people-filters{display:grid;grid-template-columns:repeat(3,minmax(140px,165px)) max-content;align-items:center;gap:8px}
.people-filters select{width:100%;min-width:0;border:1px solid #dce3ec;border-radius:var(--radius-pill);padding:8px 30px 8px 11px;background:#fff;color:#41536a;font-size:11px;font-weight:650}
.people-clear-filters{grid-column:auto;border:0;background:transparent;color:var(--color-primary);font-size:11px;font-weight:750;padding:7px 4px}
.people-count{grid-column:auto;justify-self:end;white-space:nowrap}

/* A Central usa o mesmo diálogo rolável dos cadastros. Antes ela recebia
   padding:0 de .employee-dialog, mas não tinha .dialog-scroll, cortando o topo. */
.signature-center-dialog{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0!important;width:min(1100px,calc(100vw - 40px));max-width:calc(100vw - 40px);max-height:min(92vh,850px)}
.signature-center-dialog.signature-center-inline{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:1370px;max-height:none;margin:0 auto!important;border-radius:0;box-shadow:none}
.signature-center-dialog.signature-center-inline>.signature-center-scroll{max-height:none;padding:38px 40px 50px}
.signature-center-inline .people-section-tabs{margin:-6px 0 18px}
.signature-center-dialog>.signature-center-scroll{max-height:min(92vh,850px);padding:28px}
.signable-position-dialog{width:min(1100px,calc(100vw - 40px));max-width:calc(100vw - 40px);max-height:min(92vh,880px)}
.signable-position-dialog>.dialog-scroll{max-height:min(92vh,880px);padding:22px}
.signable-position-layout{display:flex;gap:20px;align-items:flex-start}
.signable-position-main{flex:1;min-width:0}
#signablePositionMainWrap{position:relative;border:1px solid var(--line);border-radius:8px;overflow:auto;height:min(80vh,850px);display:flex}
#signablePositionCanvas{margin:auto}
.signable-position-zoom{position:absolute;top:10px;right:10px;z-index:2;display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:var(--radius-pill);padding:4px 6px;box-shadow:0 2px 10px rgba(15,23,42,.15)}
.signable-position-zoom button{width:24px;height:24px;border:0;border-radius:50%;background:#eef2f7;color:var(--ink);font-size:15px;font-weight:700;line-height:1;cursor:pointer}
.signable-position-zoom button:hover{background:#dde5ef}
.signable-position-zoom span{min-width:38px;text-align:center;font-size:11px;font-weight:700;color:#526174}
.signable-position-sidebar{width:260px;flex:0 0 260px;display:flex;flex-direction:column;gap:10px;max-height:min(80vh,850px);overflow-y:auto;padding-right:2px}
.signable-position-sidebar h2{margin:0;font-size:18px}
.signable-position-sidebar .dialog-subtitle{margin:2px 0 4px}
.signable-position-thumbs-label{margin:4px 0 0;font-size:11px;font-weight:700;color:var(--muted)}
.signable-position-thumbs-vertical{display:flex;flex-direction:column;align-items:center;gap:6px;max-height:220px;overflow-y:auto;padding:2px}
.signable-position-sidebar-actions{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:8px}
.signable-position-sidebar-actions .create-button,.signable-position-sidebar-actions .outline-button{width:100%}
.signature-center-toolbar{display:flex!important;gap:12px;align-items:center}
.signature-center-section,#signatureCenterDialog .table-panel{padding:0}
.signature-center-inline{align-self:stretch;min-height:calc(100vh - 72px)}
.signature-center-inline>.signature-center-scroll{width:100%;min-height:calc(100vh - 72px)}
#signatureCenterDialog .table-panel,#signatureCenterDialog .signature-center-section{min-height:480px}
#signatureCenterDialog tbody td{height:58px;vertical-align:middle}
#signatureCenterDialog tbody td:first-child{display:table-cell!important;vertical-align:middle!important}
#signatureCenterDialog tbody td:first-child>strong{display:inline-flex;align-items:center;min-height:28px}
#relatoriosAssinaturasPanel tbody td,
#recibosAssinaturasPanel tbody td{height:58px;vertical-align:middle}
#relatoriosAssinaturasPanel tbody td:first-child,
#recibosAssinaturasPanel tbody td:first-child{display:table-cell!important;vertical-align:middle!important}
#relatoriosAssinaturasPanel tbody td:first-child>strong,
#recibosAssinaturasPanel tbody td:first-child>strong{display:inline-flex;align-items:center;min-height:28px}
.signature-center-section .panel-heading{align-items:center;padding:18px 22px;margin-bottom:0;border-bottom:1px solid var(--line)}
.signature-center-toolbar .people-search{flex:1;width:auto}
.signature-center-toolbar select{min-width:180px;padding:9px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:12px;color:#334155;background:#fff}
.signature-center-table{margin:16px 0 0}
.signature-center-table table{min-width:800px}
.signature-center-actions{display:flex;justify-content:flex-end;gap:6px;white-space:nowrap}
.signature-center-actions .outline-button{margin:0!important;padding:6px 9px!important;font-size:11px!important}
.signature-proof-btn{color:#2563eb;border-color:#93c5fd!important;background:#eff6ff!important}
.signature-proof-btn:hover{background:#dbeafe!important;border-color:#60a5fa!important}
.signature-locked-note{display:inline-flex;align-items:center;justify-content:center;padding:6px 8px;border-radius:8px;background:#f1f5f9;color:#64748b;font-size:10px;font-weight:700}
.signature-photo-dialog{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0!important;width:min(560px,calc(100vw - 32px));max-height:90vh;padding:28px;border:0;border-radius:18px;box-shadow:0 26px 70px rgba(15,23,42,.3)}
.signature-photo-dialog::backdrop{background:rgba(15,23,42,.58)}
.signature-photo-frame{position:relative;display:flex;align-items:center;justify-content:center;min-height:320px;margin-top:18px;overflow:hidden;border:1px solid #dbe4ef;border-radius:14px;background:#0f1f33}
.signature-photo-frame img{display:none;width:100%;max-height:62vh;object-fit:contain}
.signature-photo-frame.is-loaded img{display:block}
.signature-photo-frame.is-loaded .signature-photo-loading{display:none}
.signature-photo-loading{color:#cbd5e1;font-size:13px}
.signature-photo-retention{margin:14px 0 0;padding:11px 13px;border-radius:10px;background:#f8fafc;color:#475569;font-size:12px;line-height:1.45}

@media(max-width:1050px){
  .people-panel .people-toolbar{grid-template-columns:1fr}
  .people-panel .people-toolbar .people-search{grid-column:auto}
  .people-filters{display:flex;justify-content:flex-start;flex-wrap:wrap}
  .people-filters select{width:auto;min-width:145px}
  .people-clear-filters,.people-count{grid-column:auto}
  .people-count{justify-self:start}
}
@media(max-width:720px){
  .people-page-actions{align-items:stretch;flex-direction:column}
  .people-page-actions button{width:100%}
  .people-filters{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .people-filters select{max-width:none;width:100%}
  .people-clear-filters{grid-column:1/-1;justify-self:start}
  .signature-center-dialog{width:calc(100vw - 20px)}
  .signature-center-dialog>.signature-center-scroll{padding:22px 16px}
  .signature-center-inline>.signature-center-scroll{padding:28px 18px}
  .signature-center-toolbar{align-items:stretch;flex-direction:column}
  .signature-center-toolbar select{width:100%}
  .signable-position-dialog{width:calc(100vw - 20px)}
  .signable-position-dialog>.dialog-scroll{padding:18px 14px}
  .signable-position-layout{flex-direction:column}
  .signable-position-sidebar{width:100%;flex:none;max-height:none}
  #signablePositionMainWrap{height:min(50vh,520px)}
  .signature-center-actions{align-items:flex-end;flex-direction:column}
  .signature-photo-dialog{padding:22px 18px}
  .signature-photo-frame{min-height:260px}
}

/* O cartão da empresa também navega para Configurações e precisa preservar
   nome fantasia/código em duas linhas mesmo antes de app.js terminar de abrir. */
.workspace{text-decoration:none;cursor:pointer}
.workspace:hover,.workspace.active{border-color:#44658f;background:#203a5d}
.workspace-details{display:flex;min-width:0;flex:1;flex-direction:column;align-items:flex-start;gap:3px}
.workspace-details strong{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;line-height:1.2}
.workspace-details small{display:block;color:#9dafc7;font-size:9px;line-height:1.25}
.employee-schedule-planned{display:block;margin-top:3px;color:#315fd4;font-size:9px;font-weight:700;white-space:nowrap}

/* Fase 2 — autorização de dispositivos (2026-08-04). */
#employeeDeviceAuthHint{margin:8px 0 12px}
#employeeDevicesList{display:grid;gap:8px;margin-top:6px}
.employee-device-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}
.employee-device-row>div:first-child{flex:1;min-width:0}
.employee-device-row strong{display:block;font-size:12px;color:var(--ink)}
.employee-device-row small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.employee-device-actions{display:flex;gap:6px;flex:none}
.employee-device-actions .outline-button{padding:6px 10px!important;font-size:11px!important;margin:0!important}

/* Recibos de pagamento em lote — diálogo mais largo (a tabela de
   revisão tem 5 colunas + notas, apertava demais no .employee-dialog
   padrão de 700px, forçando rolagem lateral com espaço sobrando na
   tela) e visual modernizado (pedido do usuário: os selects/inputs da
   revisão pareciam "estilo padrão do navegador", destoando do resto do
   app). 2026-08-06. */
.payroll-batch-dialog{width:min(980px,calc(100vw - 40px));max-width:calc(100vw - 40px)}
.payroll-batch-dialog>.dialog-scroll{padding:26px}
#payrollBatchReviewRows td{vertical-align:top;padding:14px 10px}
#payrollBatchReviewRows tr:hover{background:#fafbfd}
#payrollBatchReviewRows select.payroll-review-employee,
#payrollBatchReviewRows input.payroll-review-net-value{
  display:block;width:100%;border:1px solid #dce3ec;border-radius:7px;padding:8px 10px;
  background:#fff;color:var(--ink);font-size:12px;outline-color:var(--color-focus)
}
#payrollBatchReviewRows select.payroll-review-employee{min-width:200px}
#payrollBatchReviewRows input.payroll-review-net-value{width:120px}
#payrollBatchReviewRows td:nth-child(3){text-align:center}
.payroll-code-badge-wrap{display:inline-flex}
.payroll-review-summary{margin:14px 0 0;padding:11px 14px;border-radius:10px;background:#f8fafc;color:#475569;font-size:12px;font-weight:650}

@media(max-width:720px){
  .payroll-batch-dialog{width:calc(100vw - 20px)}
  .payroll-batch-dialog>.dialog-scroll{padding:18px 14px}
  #payrollBatchReviewRows select.payroll-review-employee{min-width:0}
}
