.body-grid.three-panels { grid-template-columns: repeat(3,minmax(0,1fr)); gap:16px; height: auto; min-height:440px; align-items:stretch; }
.three-panels > article { min-width:0; padding:22px; height:100%; min-height:440px; box-sizing:border-box; }
.three-panels .section-title { min-height:64px; gap:10px; align-items:center; }
.three-panels .section-title h2 { font-size:clamp(20px,1.4vw,27px); line-height:1.2; }
.three-panels .section-title > div { min-width:0; }
.three-panels .sequence-label { font-size:10px; padding:8px; white-space:nowrap; flex-shrink:0; }
.three-panels .slide { display:flex; flex-direction:column; justify-content:center; align-items:stretch; gap:14px; height:auto; min-height:320px; padding-top:18px; }
.three-panels .bars { display:none; }
.three-panels .person { display:grid; grid-template-columns:104px minmax(0,1fr); gap:12px 16px; align-items:center; }
.three-panels .person > div:last-child { display:contents; }
.three-panels .person .avatar { grid-column:1; grid-row:1 / 3; }
.three-panels .person h3 { grid-column:2; margin:0; font-size:clamp(23px,1.7vw,32px); line-height:1.14; overflow-wrap:anywhere; align-self:end; }
.three-panels .person p:not(.personal-note) { grid-column:2; margin:0; font-size:13px; align-self:start; }
.three-panels .person .avatar:has(img),.three-panels .department .avatar:has(img) { width:104px!important; height:130px!important; }
.three-panels .deputy-metrics { grid-column:1 / -1; grid-template-columns:repeat(5,minmax(0,1fr)); margin-top:12px; }
.three-panels .deputy-metrics > span { min-height:60px; padding:0 7px; font-size:10px; white-space:normal; }
.three-panels .deputy-metrics b,.three-panels .deputy-metrics .blue-number { font-size:23px!important; }
.three-panels .person .personal-note { grid-column:1 / -1; justify-self:start; margin:0; }
.three-panels .department { gap:14px; }
.three-panels .department h3 { font-size:clamp(20px,1.45vw,28px); line-height:1.18; margin:5px 0; overflow-wrap:anywhere; }
.three-panels .department p { font-size:12px; line-height:1.45; margin:7px 0 0; }
.three-panels .department .tag { font-size:9px; }
.three-panels .dept-card { padding:14px; }
.three-panels .dept-card > div:first-child b { font-size:38px; }
.three-panels .dept-card > div:first-child span { font-size:10px; }
.three-panels .dept-card > .track { margin:10px 0 14px!important; height:6px; }
.three-panels .dept-card .details { grid-template-columns:repeat(5,minmax(0,1fr))!important; }
.three-panels .dept-card .details > span { padding:0 5px; min-height:43px; font-size:9px; white-space:normal; margin:0; }
.three-panels .dept-card .details b { font-size:16px; }
.three-panels .debt-panel > .section-title > div { padding:0 42px 0 0; }
.three-panels .debt-row { grid-template-columns:30px minmax(0,1fr) 48px; gap:9px; }
.three-panels .debt-row > span { width:30px; height:34px; }
.three-panels .debt-row b { font-size:13px; }
.three-panels .debt-row small { font-size:11px; }
.attendance-panel { background:#fff; border:1px solid #e3d7c4; border-top:4px solid #b77a1c; border-radius:7px; box-shadow:0 4px 16px #1b334e0b; }
.attendance-panel .section-title { position:relative; justify-content:center; text-align:center; }
.attendance-panel .section-title > div { width:100%; padding-right:42px; }
.attendance-panel .section-title span { color:#9a6518; }
.attendance-panel .section-title > b { position:absolute; right:0; width:40px; height:40px; display:grid; place-items:center; background:#fff1d9; border-radius:7px; color:#966019; font-size:22px; }
.attendance-empty { min-height:300px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:24px 12px; }
.attendance-clock { width:64px; height:64px; border-radius:50%; background:#fff5e5; color:#aa7728; display:grid; place-items:center; font-size:42px; }
.attendance-empty h3 { font-size:22px; margin:20px 0 8px; }
.attendance-empty p { max-width:330px; font-size:14px; color:#68798d; line-height:1.6; margin:0; }
.attendance-empty small { margin-top:22px; color:#95671e; font-size:11px; background:#fff5e5; padding:7px 10px; border-radius:5px; }
@media(max-width:1200px) { .body-grid.three-panels { grid-template-columns:1fr; } .three-panels > article { height:auto; min-height:360px; } }
.attendance-empty.has-employees{align-items:stretch;text-align:left;padding:12px 0 0;justify-content:flex-start;gap:14px}
.attendance-sequence{align-self:flex-end;font-size:10px;font-weight:700;letter-spacing:.6px;color:#996b29;background:#fff5e5;padding:6px 9px;border-radius:5px}
.attendance-person{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:center;min-height:144px}
.attendance-avatar{width:96px;height:120px;display:grid;place-items:center;background:#f5f7fa;border:1px solid #dce4ec;border-radius:7px;overflow:hidden;font-size:25px;color:#637e98}
.attendance-avatar img{width:100%;height:100%;object-fit:contain}
.attendance-person-text{min-width:0}
.attendance-person h3{font-size:clamp(19px,1.35vw,26px);line-height:1.2;margin:0 0 8px;overflow-wrap:anywhere}
.attendance-person p{font-size:12px;line-height:1.5;max-width:none;overflow-wrap:anywhere}
.attendance-late{margin-top:12px;display:flex;gap:8px;align-items:baseline;color:#9b6516}
.attendance-late b{font-size:21px}.attendance-late span{font-size:12px}
.attendance-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;margin-top:12px}
.attendance-stats>div{background:#f8f9fb;border:1px solid #edf0f4;border-radius:7px;padding:10px 6px;text-align:center}
.attendance-stats b{display:block;font-size:21px;color:#34506e}.attendance-stats span{font-size:10px;color:#6c7d90;display:block;margin-top:4px}
.attendance-empty.has-employees small{align-self:center;margin:0;background:none;font-size:10px}
@media(max-width:1400px) and (min-width:1201px){.attendance-person{grid-template-columns:76px minmax(0,1fr);gap:12px}.attendance-avatar{width:76px;height:98px}.attendance-person h3{font-size:20px}}
@media(max-width:420px){.attendance-person{grid-template-columns:76px minmax(0,1fr);gap:12px}.attendance-avatar{width:76px;height:98px}.attendance-person h3{font-size:19px}}
.attendance-timing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:10px;margin-top:14px}
.attendance-arrival,.attendance-timing .attendance-late{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;border-radius:8px;padding:10px 12px;margin:0;min-width:0}
.attendance-arrival{background:#f1f5fa;border:1px solid #dfe7f0;color:#264968}
.attendance-timing .attendance-late{background:#fff0f1;border:1px solid #f2c5cc;border-left:3px solid #c43c50;color:#b1273e}
.attendance-timing span{font-size:9px;font-weight:700;letter-spacing:.6px}
.attendance-timing b{font-size:22px;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.attendance-stats>div:nth-child(2){background:#fff5f6;border-color:#f4dce1}
.attendance-stats>div:nth-child(2) b{color:#b1273e}
@media(max-width:1400px) and (min-width:1201px){.attendance-timing{gap:6px}.attendance-arrival,.attendance-timing .attendance-late{padding:9px 8px}.attendance-timing b{font-size:19px}}
@media(max-width:420px){.attendance-timing{gap:6px}.attendance-arrival,.attendance-timing .attendance-late{padding:9px 8px}.attendance-timing b{font-size:18px}}
