/* F09 Funcionarios electorales (V360-HTML-04B). Scoped to the route and its dialog; shared controls come from base. */
.workforce-kpis{padding-top:14px;}
.workforce-chart{position:relative;box-sizing:border-box;height:292px;min-height:292px;padding:0;gap:0;display:block;overflow:hidden;}
.workforce-chart>h3{position:absolute;left:17px;top:13px;margin:0;font:600 18px/26px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--ink);}
.workforce-chart--donut>h3{top:15px;}
.workforce-chart>.chart-sub{position:absolute;left:17px;top:42px;margin:0;font:400 14px/20px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--muted);}
.workforce-chart__scroll{position:absolute;inset:0;overflow-x:auto;overflow-y:hidden;}
.workforce-chart__svg{display:block;width:678px;height:290px;max-width:none;}
.workforce-chart__rule{stroke:#d8dee9;}
.workforce-grid{stroke:#e3e8ef;}
.workforce-chart__label{font:400 11px/14px Inter,ui-sans-serif,system-ui,sans-serif;fill:#596579;}
.workforce-chart__legend{font:400 14px/20px Inter,ui-sans-serif,system-ui,sans-serif;fill:#182033;}
.workforce-chart__legend--value{font-weight:600;}
.workforce-donut__total{font:600 24px/28px Inter,ui-sans-serif,system-ui,sans-serif;fill:#182033;}
.workforce-donut__label{font:400 12px/18px Inter,ui-sans-serif,system-ui,sans-serif;fill:#596579;}
@media (max-width:1180px){
  .workforce-chart{height:auto;min-height:0;}
  .workforce-chart>h3{position:static;padding:14px 16px 0;}
  .workforce-chart>.chart-sub{position:static;margin:0;padding:4px 16px 0;}
  .workforce-chart__scroll{position:relative;inset:auto;height:218px;}
  .workforce-chart__svg{margin-top:-72px;}
}
.workforce-toolbar{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(140px,1fr)) auto auto;gap:12px;align-items:end;margin:16px 0 0;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);}
.workforce-toolbar .button{height:48px;}
.workforce-toolbar .field-error{grid-column:1/-1;margin:0;}
.workforce-toolbar [aria-invalid="true"]{border-color:var(--danger);}
.workforce-counts{display:grid;gap:8px;margin:16px 0 0;}
.workforce-summary-card{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);}
.workforce-summary-card__head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.workforce-summary-card__head h2{font:600 18px/26px Inter,ui-sans-serif,system-ui,sans-serif;}
.workforce-sample{margin:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;}
.workforce-sample:focus{outline:3px solid #ffbf47;outline-offset:3px;}
.workforce-note{margin:0;color:var(--muted);}
.workforce-h3{margin:0 0 8px;font:600 14px/20px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--ink);}
.workforce-totals{margin-top:8px;}
.workforce-totals dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;}
.workforce-totals dl>div{min-width:0;display:grid;align-content:start;gap:6px;padding:14px 16px;background:var(--surface-subtle);border:1px solid var(--line);border-radius:var(--radius-md);}
.workforce-totals dt{font:600 12px/16px Inter,ui-sans-serif,system-ui,sans-serif;text-transform:uppercase;color:var(--muted);overflow-wrap:anywhere;}
.workforce-totals dd{margin:0;font:700 24px/32px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
.workforce-totals .workforce-summary-stat--trained{border-color:var(--green);}
.workforce-totals .workforce-summary-stat--vacant{border-color:var(--amber);}
.workforce-table-card{margin-top:16px;}
.workforce-table-head{height:68px;padding:0 18px;border-bottom:0;}
.workforce-table-head h2{margin:0;font:600 18px/28px Inter,ui-sans-serif,system-ui,sans-serif;}
.workforce-table{width:100%;}
.workforce-table th,.workforce-table td{height:44px;padding:0 12px;vertical-align:middle;}
.workforce-table thead th{background:var(--surface-subtle);font:600 11px/16px Inter,ui-sans-serif,system-ui,sans-serif;text-transform:uppercase;color:var(--muted);}
.workforce-table td{font:400 14px/20px Inter,ui-sans-serif,system-ui,sans-serif;}
.workforce-table tbody tr:nth-child(even){background:var(--surface-subtle);}
.workforce-college{font:600 14px/20px Inter,ui-sans-serif,system-ui,sans-serif;min-height:44px;}
.workforce-status-cell{text-align:center;}
.workforce-empty-cell{text-align:left;}
.workforce-empty-cell .empty{margin:0;padding:24px 18px 12px;}
.workforce-empty-cell .button{margin:0 18px 16px;}
@media (min-width:861px){
  .workforce-table{table-layout:fixed;}
  .workforce-table th:nth-child(1){width:27.1802%;}
  .workforce-table th:nth-child(2){width:7.9941%;}
  .workforce-table th:nth-child(3){width:7.2674%;}
  .workforce-table th:nth-child(4){width:12.3547%;}
  .workforce-table th:nth-child(5){width:11.6279%;}
  .workforce-table th:nth-child(6){width:12.3547%;}
  .workforce-table th:nth-child(7){width:21.2209%;}
}
.modal--workforce{width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);}
.modal--workforce:not([open]){display:none;}
.modal--workforce[open]{display:flex;flex-direction:column;}
.modal--workforce>.modal__head,.modal--workforce>.modal__actions{flex:none;}
.modal--workforce .modal__body{min-height:0;overflow:auto;flex:1 1 auto;}
.workforce-dialog__head{position:relative;display:grid;gap:4px;padding:18px 64px 12px 20px;}
.workforce-dialog__title{min-width:0;display:grid;gap:4px;}
.workforce-dialog__head h2{margin:0;font:600 20px/28px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--ink);overflow-wrap:anywhere;}
.workforce-dialog__close{position:absolute;top:8px;right:8px;display:inline-grid;place-items:center;width:44px;height:44px;margin:0;padding:0;color:var(--navy-950);background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);font:400 24px/1 Inter,ui-sans-serif,system-ui,sans-serif;cursor:pointer;}
.workforce-dialog__close:focus-visible{outline:2px solid var(--navy-950);outline-offset:2px;}
.workforce-detail .tabs{margin:0 0 14px;}
.workforce-dl{display:grid;gap:8px;margin:0 0 14px;}
.workforce-dl>div{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr);gap:12px;align-items:center;}
.workforce-dl dt{font:600 12px/16px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--muted);text-transform:uppercase;}
.workforce-dl dd{margin:0;font:400 15px/22px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--ink);overflow-wrap:anywhere;}
.workforce-persons{width:100%;}
.workforce-persons th,.workforce-persons td{padding:8px 10px;}
.workforce-empty{margin:0 0 12px;color:var(--ink);}
@media (max-width:720px){
  .workforce-toolbar{grid-template-columns:minmax(0,1fr);}
  .workforce-toolbar .button{width:100%;}
  .workforce-totals dl{grid-template-columns:repeat(2,minmax(0,1fr));}
  .workforce-dl>div{grid-template-columns:minmax(0,1fr);gap:2px;}
}
@media (max-width:1180px) and (min-width:721px){
  .workforce-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));}
  .workforce-toolbar .button{width:100%;}
}
@media (max-width:860px){
  .modal.modal--workforce{width:calc(100vw - 32px);max-height:calc(100dvh - 32px);}
  .modal.modal--workforce>div{max-height:calc(100dvh - 32px);}
}
