/* HR dashboard only: a quiet, responsive executive workspace. */
.people-workspace { --people-ink:#1c353b; --people-accent:#205e66; --people-muted:#63777d; --people-line:#e0e8ea; color:var(--people-ink); display:grid; gap:22px; padding-bottom:16px; }
.people-workspace * { box-sizing:border-box; }
.people-workspace a { color:inherit; text-decoration:none; }
.people-workspace a:focus-visible,.people-workspace button:focus-visible,.people-workspace summary:focus-visible { outline:3px solid #7baab2; outline-offset:4px; }
.people-workspace h1,.people-workspace h2,.people-workspace h3,.people-workspace p { margin:0; }
.people-workspace small { color:var(--people-muted); }
.people-hero { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(180px,.7fr) 224px; gap:32px; align-items:center; position:relative; padding:34px 36px; border:1px solid #d6e4e7; border-radius:20px; background:linear-gradient(115deg,#e8f0f1 0%,#f5f8f8 45%,#fff 100%); overflow:hidden; }
.people-eyebrow { font-size:.76rem; font-weight:600; color:var(--people-accent); display:inline-flex; align-items:center; gap:8px; }
.people-hero h1 { font-size:clamp(1.65rem,2.1vw,2.4rem); line-height:1.5; font-weight:750; margin:8px 0 10px; letter-spacing:-.6px; }
.people-hero p { line-height:1.9; color:var(--people-muted); font-size:.95rem; }
.people-hero p strong { color:var(--people-ink); font-weight:500; }
.people-meta { display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:20px; font-size:.75rem; color:var(--people-muted); }
.people-meta span { display:inline-flex; align-items:center; gap:7px; }
.people-hero-note { border-inline-start:1px solid #cddfe2; padding-inline-start:30px; display:flex; flex-direction:column; gap:9px; color:#456d75; }
.people-hero-note>i { font-size:2.3rem; }
.people-hero-note>span { font-size:.7rem; }
.people-hero-note strong { font-weight:500; font-size:1.2rem; line-height:1.85; }
.people-period { display:grid; gap:10px; padding:20px; border:1px solid #dce6e8; border-radius:14px; background:#ffffffd9; }
.people-period label { font-weight:600; font-size:.8rem; }
.people-period .form-select { min-height:42px; font-size:.85rem; }
.people-period .btn { min-height:42px; font-size:.8rem; }
.people-period small { text-align:center; font-size:.67rem; }
.people-shortcuts { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; }
.people-shortcuts:empty { display:none; }
.people-shortcuts a { display:flex; align-items:center; gap:10px; padding:14px 12px; border:1px solid var(--people-line); border-radius:12px; background:#fff; font-size:.78rem; font-weight:600; transition:border-color .15s,background .15s; }
.people-shortcuts a:hover,.people-panel-links a:hover { background:#f0f6f6; border-color:#a4c1c6; }
.people-shortcuts a>i:last-child { margin-inline-start:auto; color:#91a6ac; font-size:.7rem; }
.people-action-icon { color:var(--people-accent); font-size:1.2rem; }
.people-section-label { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:-10px; }
.people-section-label h2 { font-size:1rem; font-weight:700; }
.people-section-label>span { color:var(--people-muted); font-size:.72rem; }
.people-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.people-kpi { position:relative; display:flex; flex-direction:column; padding:23px; border:1px solid var(--people-line); border-radius:15px; background:#fff; box-shadow:0 4px 12px #1d343b03; }
.people-kpi>span:not(.people-kpi-icon) { font-size:.85rem; padding-inline-end:30px; min-height:26px; }
.people-kpi>strong { font-size:2.35rem; line-height:1.4; font-weight:650; margin:8px 0 3px; font-variant-numeric:tabular-nums; }
.people-kpi>small { font-size:.7rem; }
.people-kpi-icon { position:absolute; inset-inline-end:20px; top:19px; color:#6c9299; font-size:1.25rem; }
.people-kpi.is-primary { background:#205e66; border-color:#205e66; color:#fff; }
.people-kpi.is-primary small,.people-kpi.is-primary .people-kpi-icon { color:#d2e5e8; }
.people-main-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:20px; }
.people-bottom-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.13fr) minmax(0,1fr); gap:20px; }
.people-panel { min-width:0; background:#fff; border:1px solid var(--people-line); border-radius:16px; padding:24px; }
.people-panel>header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:20px; }
.people-panel h2 { font-size:1.05rem; line-height:1.7; font-weight:700; margin-top:4px; }
.people-panel h3 { font-size:.78rem; font-weight:650; margin:22px 0 4px; }
.people-panel>header>i { font-size:1.25rem; color:#6c9299; }
.people-tag { font-size:.69rem; padding:6px 9px; border:1px solid var(--people-line); border-radius:7px; white-space:nowrap; color:var(--people-muted); }
.people-chart-summary { display:flex; gap:16px; align-items:center; margin-bottom:24px; }
.people-chart-summary>strong { font-size:2.25rem; font-weight:600; line-height:1.3; }
.people-chart-summary>span { display:flex; flex-direction:column; gap:4px; font-size:.8rem; }
.people-chart-summary>span>span { color:var(--people-muted); font-size:.69rem; }
.people-chart { display:flex; align-items:stretch; justify-content:space-around; direction:ltr; gap:12px; padding:8px 10px 0; background:repeating-linear-gradient(to top,transparent 0,transparent 51px,#eaf0f1 51px,#eaf0f1 52px); }
.people-chart-column { flex:1; min-width:0; max-width:58px; text-align:center; }
.people-chart-column>strong { font-size:.7rem; color:var(--people-muted); font-weight:500; display:block; margin-bottom:8px; }
.people-chart-column>div { height:132px; display:flex; align-items:flex-end; justify-content:center; }
.people-chart-column>div>span { display:block; background:#6b969e; width:64%; border-radius:5px 5px 0 0; min-width:7px; }
.people-chart-column:last-child>div>span { background:var(--people-accent); }
.people-chart-column small { display:block; font-size:.64rem; margin-top:9px; }
.people-chart-data { margin-top:14px; font-size:.72rem; color:var(--people-muted); }
.people-chart-data summary { cursor:pointer; width:fit-content; }
.people-chart-data table { font-size:.75rem; }
.people-panel-links { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; padding-top:16px; border-top:1px solid var(--people-line); }
.people-panel-links a { font-size:.7rem; display:flex; align-items:center; gap:7px; padding:8px 10px; border:1px solid var(--people-line); border-radius:7px; }
.people-attention-row { display:flex; align-items:center; gap:12px; border-bottom:1px solid #edf1f2; padding:16px 0; }
.people-attention-row:hover strong,.people-leave-row:hover strong { color:var(--people-accent); }
.people-attention-icon { background:#f0f5f5; color:var(--people-accent); width:36px; height:36px; display:grid; place-items:center; border-radius:9px; flex-shrink:0; }
.people-attention-row>span:nth-child(2) { display:flex; flex-direction:column; gap:4px; min-width:0; }
.people-attention-row strong { font-size:.8rem; font-weight:600; }
.people-attention-row small { font-size:.66rem; }
.people-attention-row>b { font-size:.9rem; min-width:30px; padding:3px 7px; border-radius:6px; background:#eff3f4; text-align:center; margin-inline-start:auto; }
.people-attention-row>b.has-items { color:#825822; background:#f8f1e6; }
.people-footnote { color:var(--people-muted); font-size:.69rem; line-height:1.8; }
.people-attention .people-footnote { margin-top:18px; }
.people-department { margin:18px 0; }
.people-department>div { display:flex; justify-content:space-between; gap:10px; font-size:.77rem; margin-bottom:8px; }
.people-department strong { white-space:nowrap; font-size:.85rem; }
.people-department small { font-size:.65rem; font-weight:400; }
.people-workspace progress { appearance:none; display:block; width:100%; height:7px; border:0; border-radius:6px; background:#edf2f3; overflow:hidden; }
.people-workspace progress::-webkit-progress-bar { background:#edf2f3; border-radius:6px; }
.people-workspace progress::-webkit-progress-value { background:#6b969e; border-radius:6px; }
.people-workspace progress::-moz-progress-bar { background:#6b969e; border-radius:6px; }
.people-team-footer { display:flex; align-items:center; gap:12px; background:#f3f7f7; border-radius:9px; padding:14px; margin-top:22px; }
.people-team-footer>i { font-size:1.4rem; color:var(--people-accent); }
.people-team-footer>div { display:flex; flex-direction:column; gap:4px; }
.people-team-footer strong { font-size:.8rem; }
.people-team-footer small { font-size:.66rem; }
.people-mini-stats { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--people-line); border-radius:11px; padding:15px 10px; gap:10px; }
.people-mini-stats>div { display:flex; flex-direction:column; text-align:center; gap:3px; }
.people-mini-stats>div+div { border-inline-start:1px solid var(--people-line); }
.people-mini-stats strong { font-size:1.65rem; font-weight:600; }
.people-mini-stats span { font-size:.66rem; color:var(--people-muted); }
.people-leave-row { display:flex; align-items:center; justify-content:space-between; gap:10px; border-bottom:1px solid #edf1f2; padding:13px 0; }
.people-leave-row>span:first-child { display:flex; flex-direction:column; gap:5px; min-width:0; }
.people-leave-row strong { font-size:.77rem; font-weight:600; overflow-wrap:anywhere; }
.people-leave-row bdi { font-weight:400; font-size:.67rem; color:var(--people-muted); }
.people-leave-row small { font-size:.66rem; }
.people-status { display:inline-flex; align-items:center; justify-content:center; padding:4px 7px; border-radius:5px; font-size:.63rem; background:#f5f0e6; color:#7d5929; flex-shrink:0; }
.people-status.is-effective { background:#eaf2ef; color:#386958; }
.people-payroll-count { display:flex; align-items:baseline; gap:12px; margin:22px 0 15px; }
.people-payroll-count strong { font-size:3rem; font-weight:600; }
.people-payroll-count span { color:var(--people-muted); font-size:.8rem; }
.people-payroll-key { display:flex; justify-content:space-between; gap:10px; margin-top:10px; font-size:.72rem; color:var(--people-muted); }
.people-payroll-key i { display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--people-accent); margin-inline-end:4px; }
.people-latest-payroll { display:flex; flex-direction:column; gap:10px; border:1px solid var(--people-line); border-radius:10px; padding:16px; margin-top:24px; }
.people-latest-payroll>small { font-size:.69rem; }
.people-latest-payroll>strong { display:flex; justify-content:space-between; gap:8px; font-size:.85rem; overflow-wrap:anywhere; }
.people-latest-payroll>span { font-size:.71rem; color:var(--people-muted); }
.people-primary-link { display:flex; justify-content:space-between; align-items:center; gap:10px; background:#edf4f4; border:1px solid #d8e5e7; border-radius:8px; padding:12px 14px; font-size:.77rem; margin-top:18px; font-weight:600; }
.people-primary-link:hover { background:#e0eded; }
.people-reports { display:flex; align-items:center; flex-wrap:wrap; gap:12px 24px; padding:20px 24px; background:#fff; border:1px solid var(--people-line); border-radius:12px; }
.people-reports>div { display:flex; align-items:center; gap:10px; font-size:.85rem; margin-inline-end:auto; }
.people-reports>div>i { color:var(--people-accent); }
.people-reports a { display:inline-flex; align-items:center; gap:10px; font-size:.75rem; color:var(--people-accent); }
.people-scope { color:var(--people-muted); font-size:.7rem; line-height:1.9; display:flex; gap:8px; align-items:baseline; }
.people-empty { min-height:160px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; text-align:center; padding:22px; color:var(--people-muted); }
.people-empty>i { font-size:1.7rem; color:#8aa6ac; }
.people-empty>strong { font-size:.87rem; font-weight:500; line-height:1.8; }
.people-empty>small { font-size:.74rem; }
.people-loading { min-height:300px; }
@media (max-width:1450px) {
    .people-shortcuts { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .people-hero { grid-template-columns:minmax(0,1fr) 224px; }
    .people-hero-note { display:none; }
    .people-bottom-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .people-payroll { grid-column:1/-1; }
    .people-kpi { padding:18px; }
    .people-kpi>span:not(.people-kpi-icon) { font-size:.78rem; }
}
@media (max-width:1100px) {
    .people-main-grid { grid-template-columns:minmax(0,1fr); }
    .people-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:650px) {
    .people-workspace { gap:16px; }
    .people-hero { grid-template-columns:minmax(0,1fr); padding:23px; gap:22px; border-radius:14px; }
    .people-hero h1 { font-size:1.7rem; }
    .people-hero p { font-size:.86rem; }
    .people-hero .people-meta { font-size:.7rem; margin-top:15px; }
    .people-period { grid-template-columns:1fr 1fr; padding:14px; gap:9px; }
    .people-period label,.people-period small { grid-column:1/-1; text-align:start; }
    .people-period .form-select,.people-period .btn { font-size:.74rem; padding-inline:9px; }
    .people-shortcuts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    .people-shortcuts a { font-size:.73rem; padding:12px 10px; gap:8px; min-height:48px; }
    .people-shortcuts a>i:last-child { display:none; }
    .people-kpis { gap:10px; }
    .people-kpi { padding:15px 12px; }
    .people-kpi-icon { position:static; margin-bottom:8px; }
    .people-kpi>span:not(.people-kpi-icon) { padding:0; font-size:.72rem; min-height:40px; }
    .people-kpi>strong { font-size:1.9rem; margin-top:0; }
    .people-kpi>small { font-size:.64rem; min-height:36px; }
    .people-section-label { align-items:baseline; margin-bottom:-3px; }
    .people-section-label h2 { font-size:.87rem; }
    .people-section-label>span { font-size:.63rem; }
    .people-panel { padding:18px; }
    .people-panel h2 { font-size:.96rem; }
    .people-panel>header { gap:8px; flex-wrap:wrap; }
    .people-chart { gap:5px; padding-inline:0; }
    .people-chart-column>strong { font-size:.53rem; }
    .people-chart-column small { font-size:.54rem; }
    .people-chart-summary { gap:12px; }
    .people-chart-summary>strong { font-size:1.85rem; }
    .people-chart-summary>span>span { font-size:.63rem; }
    .people-bottom-grid { grid-template-columns:minmax(0,1fr); }
    .people-attention-row { gap:9px; }
    .people-attention-row strong { font-size:.74rem; }
    .people-attention-row small { font-size:.63rem; }
    .people-attention-icon { width:30px; height:32px; }
    .people-reports { gap:16px; padding:18px; }
    .people-reports>div { width:100%; }
    .people-scope { font-size:.64rem; }
}
@media (prefers-reduced-motion:reduce) { .people-workspace * { transition:none!important; } }
