/* Attendance, leave and payable-day workspaces */
.attendance-action-shell{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(320px,1.2fr);gap:30px;align-items:center;min-height:340px;margin:22px 0;padding:clamp(24px,5vw,55px);background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(208,233,223,.56))}.attendance-action-copy h2,.attendance-running-card h2{font-size:clamp(2rem,4vw,3.3rem);margin:5px 0 10px}.attendance-action-copy p,.attendance-running-card p{color:var(--muted)}.attendance-capture-form{display:grid;gap:13px;padding:22px;border:1px solid rgba(255,255,255,.82);border-radius:22px;background:rgba(255,255,255,.62);box-shadow:var(--soft-shadow)}.attendance-primary{min-height:62px;font-size:1rem}.gps-status{min-height:42px;margin:0;padding:10px 12px;border-radius:13px;background:rgba(121,83,110,.06);color:var(--muted);font-size:.75rem}.attendance-running-card{display:flex;align-items:flex-start;gap:17px}.live-dot{flex:0 0 auto;width:14px;height:14px;margin-top:14px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 8px rgba(104,168,143,.14);animation:pulseLive 2s ease-in-out infinite}@keyframes pulseLive{50%{box-shadow:0 0 0 14px rgba(104,168,143,.03)}}.attendance-day-list,.attendance-report-list,.leave-request-list,.payable-ledger-list,.import-job-list{display:grid;gap:15px}.attendance-day-card{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(300px,1.2fr);gap:20px;align-items:center}.attendance-day-card h3{margin:0 0 6px}.attendance-day-card p{margin:0;color:var(--muted)}.attendance-time-pair{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.attendance-time-pair span{padding:12px;border-radius:14px;background:rgba(121,83,110,.055)}.attendance-time-pair small,.attendance-time-pair strong{display:block}.attendance-time-pair small{color:var(--muted);font-size:.6875rem}.attendance-time-pair strong{margin-top:4px;font-size:.8125rem}.attendance-exception{grid-column:1/-1;padding:15px;border-radius:16px;background:rgba(234,114,93,.08)}.attendance-exception p{margin:7px 0}.privacy-links{grid-column:1/-1;display:flex;gap:16px}.privacy-links a{display:inline-flex;align-items:center;min-height:44px;font-size:.75rem;font-weight:800}.exception-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.exception-review-card h2{margin:13px 0}.exception-reason{margin:15px 0;padding:13px;border-radius:15px;background:rgba(121,83,110,.055)}.exception-reason small{color:var(--muted);font-size:.6875rem}.exception-reason p{margin:5px 0 0;white-space:pre-wrap}.attendance-report-row{display:grid;grid-template-columns:1.1fr .8fr .8fr 1.2fr auto;align-items:center;gap:16px;padding:18px 20px}.attendance-report-row strong,.attendance-report-row small{display:block}.attendance-report-row small{color:var(--muted);font-size:.6875rem}
.leave-balance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0}.leave-balance-card{padding:20px;border:1px solid rgba(255,255,255,.84);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.85),rgba(242,221,181,.54));box-shadow:var(--soft-shadow)}.leave-balance-card>span,.leave-balance-card>strong,.leave-balance-card>small{display:block}.leave-balance-card>span{color:var(--muted);font-size:.75rem;font-weight:800;text-transform:uppercase}.leave-balance-card>strong{margin:10px 0 2px;font:800 2.3rem "Manrope",sans-serif}.leave-balance-card>small{color:var(--muted);font-size:.6875rem}.leave-balance-card summary,.leave-request-card summary,.payable-actions summary{display:flex;align-items:center;min-height:44px;color:var(--coral-dark);font-size:.75rem;font-weight:800;cursor:pointer}.leave-balance-card details p{margin:0;padding:7px 0;border-top:1px solid var(--line);font-size:.6875rem}.leave-apply-panel{background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(242,223,185,.48))}.leave-request-card h2{margin:12px 0 6px}.leave-request-card>p{color:var(--muted)}.leave-decision-list{display:grid;gap:7px;margin:12px 0}.leave-decision-list span{padding:9px 11px;border-radius:12px;background:rgba(121,83,110,.05)}.leave-decision-list strong,.leave-decision-list small{display:block}.leave-decision-list small{color:var(--muted);font-size:.6875rem}
.payable-ledger-row{display:grid;grid-template-columns:minmax(170px,.8fr) 120px minmax(250px,1.3fr) minmax(170px,.7fr);align-items:center;gap:17px}.payable-ledger-row h3{margin:3px 0}.payable-ledger-row p{margin:0;color:var(--muted)}.payable-units{text-align:center}.payable-units strong,.payable-units small{display:block}.payable-units strong{font:800 2rem "Manrope",sans-serif}.payable-units small{color:var(--muted);font-size:.6875rem}.payable-explanation{display:grid;gap:8px}.payable-actions{display:grid;gap:7px}.payable-adjustment{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px;border-top:1px solid var(--line)}.payable-adjustment strong,.payable-adjustment small{display:block}.payable-adjustment small{color:var(--muted);font-size:.6875rem}.crm-metric-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.crm-metric-grid.compact .crm-metric{min-height:110px}
@media(max-width:1050px){.leave-balance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-report-row,.payable-ledger-row{grid-template-columns:repeat(2,minmax(0,1fr))}.payable-adjustment{grid-column:1/-1}}
@media(max-width:800px){.attendance-action-shell,.attendance-day-card,.exception-review-grid{grid-template-columns:1fr}.privacy-links,.attendance-exception{grid-column:1}.attendance-day-card{align-items:stretch}}
@media(max-width:600px){.leave-balance-grid,.attendance-report-row,.payable-ledger-row,.crm-metric-grid.compact{grid-template-columns:1fr}.attendance-time-pair{grid-template-columns:repeat(3,minmax(80px,1fr));overflow:auto}.payable-adjustment{grid-column:1;align-items:flex-start;flex-direction:column}}

/* Consolidated attendance and leave workspace */
.workforce-workspace{--workforce-gap:clamp(14px,2vw,22px)}
.workforce-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--workforce-gap);margin:24px 0}
.workforce-summary-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:142px;padding:22px;border:1px solid rgba(255,255,255,.86);border-radius:24px;box-shadow:var(--soft-shadow)}
.workforce-summary-card:after{content:"";position:absolute;right:-45px;top:-55px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.45)}
.workforce-summary-card.coral{background:linear-gradient(145deg,#fffaf7,#f5d2c6)}
.workforce-summary-card.amber{background:linear-gradient(145deg,#fffdf6,#f2dfb7)}
.workforce-summary-card.mint{background:linear-gradient(145deg,#fbfffd,#cfe7dd)}
.workforce-summary-card.plum{background:linear-gradient(145deg,#fffafd,#dfccdf)}
.workforce-summary-card>span{color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.workforce-summary-card>strong{margin:auto 0 5px;font:800 clamp(1.25rem,2vw,1.75rem) "Manrope",sans-serif;line-height:1.1}
.workforce-summary-card>small{color:var(--muted)}
.workforce-primary-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.workforce-primary-actions .btn{min-width:140px}
.workforce-accordion>details{scroll-margin-top:92px}
.workforce-accordion>details>summary span{display:grid;gap:3px}
.workforce-accordion>details>summary b{font-size:1rem}
.workforce-accordion>details>summary small{color:var(--muted);font-weight:500}
.workforce-accordion .attendance-action-shell{margin:0;min-height:0;box-shadow:none}
.attendance-view-tabs{margin-top:-6px;margin-bottom:22px}
.management-view-note{margin-bottom:20px;background:linear-gradient(135deg,rgba(242,216,190,.62),rgba(226,210,230,.54))}.management-view-note h2{margin:5px 0 7px}.management-view-note p{max-width:920px;margin:0;color:var(--muted)}
.attendance-location-picker{display:grid;gap:6px;padding:14px;border:1px solid rgba(104,168,143,.24);border-radius:16px;background:linear-gradient(135deg,rgba(215,238,226,.62),rgba(255,255,255,.7))}
.attendance-location-picker small{color:var(--muted);font-size:.75rem;line-height:1.45}
.location-enable{width:100%}
.remote-approval-choice{padding:13px 14px;border:1px solid rgba(234,114,93,.25);border-radius:15px;background:rgba(234,114,93,.09);font-weight:800}
.attendance-summary-expander{padding:0;overflow:hidden}
.attendance-summary-expander>summary{display:flex;align-items:center;justify-content:space-between;min-height:68px;padding:15px 18px;cursor:pointer;list-style:none}
.attendance-summary-expander>summary::-webkit-details-marker{display:none}
.attendance-summary-expander>summary span{display:grid;gap:3px}.attendance-summary-expander>summary b{font-size:1rem}.attendance-summary-expander>summary small{color:var(--muted)}
.attendance-summary-expander>.accordion-content{padding:0 18px 18px}
.location-journey-link{display:inline-flex;align-items:center;min-height:34px;margin-top:4px;color:var(--coral-dark);font-size:.75rem;font-weight:800}
.journey-timeline{position:relative;display:grid;gap:12px}.journey-timeline:before{content:"";position:absolute;top:26px;bottom:26px;left:13px;width:2px;background:linear-gradient(var(--mint),var(--plum))}
.journey-point{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px;border-radius:16px;background:rgba(104,168,143,.07)}
.journey-point.changed{background:rgba(234,114,93,.09)}.journey-dot{position:relative;z-index:1;width:13px;height:13px;border:3px solid #fff;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(104,168,143,.16)}.journey-point.changed .journey-dot{background:var(--coral)}
.journey-point h2{margin:3px 0;font-size:1rem}.journey-point p,.journey-point small{margin:0;color:var(--muted)}
.work-progress{height:10px;margin:18px 0 7px;overflow:hidden;border-radius:99px;background:rgba(121,83,110,.09)}
.work-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),var(--amber));transition:width .45s ease}
.workforce-form{max-width:1040px}
.review-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.review-timeline article{padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.5)}
.review-timeline article span,.review-timeline article strong,.review-timeline article small{display:block}
.review-timeline article span,.review-timeline article small{color:var(--muted)}
.review-timeline article strong{margin:5px 0}.review-timeline article p{margin:6px 0;white-space:pre-wrap}
.accordion-content>.attendance-day-list,.accordion-content>.leave-request-list{margin:0}
.accordion-content .attendance-day-card,.accordion-content .leave-request-card{padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.48);box-shadow:none}
@media(max-width:1050px){.workforce-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.workforce-accordion .attendance-action-shell,.review-timeline{grid-template-columns:1fr}.workforce-accordion .attendance-action-shell{padding:18px}}
@media(max-width:560px){.workforce-summary{grid-template-columns:1fr}.workforce-summary-card{min-height:118px}.workforce-primary-actions{display:grid}.workforce-primary-actions .btn{width:100%}}
@media(max-width:600px){.journey-point{grid-template-columns:24px 1fr}.journey-point>.status-chip{grid-column:2}.attendance-view-tabs{margin-top:0}}

/* Company assets */
.asset-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0}.asset-chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 24px}.asset-bars{display:grid;gap:12px}.asset-bars>div{display:grid;grid-template-columns:minmax(100px,.9fr) minmax(80px,1.4fr) 32px;align-items:center;gap:10px}.asset-bars span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.8125rem}.asset-bars i{height:9px;overflow:hidden;border-radius:99px;background:rgba(121,83,110,.08)}.asset-bars b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--coral),var(--amber));transition:width .4s ease}.asset-bars.status b{background:linear-gradient(90deg,var(--mint),var(--plum))}.asset-bars.location b{background:linear-gradient(90deg,var(--amber),var(--mint))}.asset-master-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.glass-inset{padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.52)}.asset-register,.asset-employee-grid{display:grid;gap:16px}.asset-employee-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}.asset-register-card{display:grid;gap:13px}.asset-register-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.asset-register-head h2,.asset-employee-card h2{margin:5px 0}.asset-register-head p,.asset-employee-card>p{margin:0;color:var(--muted)}.asset-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.asset-facts div{padding:11px;border-radius:13px;background:rgba(121,83,110,.05)}.asset-facts dt{color:var(--muted);font-size:.6875rem}.asset-facts dd{margin:3px 0 0;font-weight:750}.asset-custody-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border-radius:16px;background:rgba(104,168,143,.1)}.asset-custody-strip strong,.asset-custody-strip small{display:block}.asset-custody-strip small{color:var(--muted)}.asset-register-card>details>summary,.asset-admin .ess-accordion summary{display:flex;align-items:center;min-height:44px;color:var(--coral-dark);font-weight:800;cursor:pointer}.asset-history{display:grid;gap:8px}.asset-history>div{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:12px;padding:10px;border-bottom:1px solid var(--line)}.asset-history span,.asset-history small{color:var(--muted)}
@media(max-width:1050px){.asset-metric-grid,.asset-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-chart-grid{grid-template-columns:1fr}.asset-master-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.asset-metric-grid,.asset-employee-grid,.asset-master-grid,.asset-facts{grid-template-columns:1fr}.asset-register-head,.asset-custody-strip{align-items:flex-start;flex-direction:column}.asset-history>div{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.live-dot{animation:none}}

/* Attendance workspace: primary scopes, concise role dashboards and true tab panels */
.compact-hero{min-height:unset;padding-block:clamp(22px,3vw,38px)}
.attendance-scope-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 18px}
.attendance-scope-tabs a{display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:11px 19px;border:1px solid rgba(121,83,110,.14);border-radius:999px;background:rgba(255,255,255,.58);color:var(--ink);font-size:.95rem;font-weight:800;text-decoration:none;box-shadow:0 8px 22px rgba(80,52,65,.05);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.attendance-scope-tabs a:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(80,52,65,.11)}
.attendance-scope-tabs a.active{border-color:#2f2330;background:linear-gradient(145deg,#362936,#251d29);color:#fff;box-shadow:0 14px 30px rgba(46,32,45,.2)}
.action-badge{display:inline-grid;min-width:24px;height:24px;padding:0 6px;place-items:center;border-radius:99px;background:linear-gradient(135deg,#ef7b65,#c95358);color:#fff;font-size:.72rem;line-height:1;box-shadow:0 5px 13px rgba(201,83,88,.25)}
.attendance-scope-tabs .active .action-badge{background:#fff;color:#8d403d}
.attendance-dashboard{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;margin:0 0 16px}
.attendance-kpi{position:relative;min-height:142px;padding:19px;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:24px;box-shadow:0 14px 34px rgba(70,46,57,.08)}
.attendance-kpi:after{content:"";position:absolute;right:-25px;top:-34px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,.35)}
.attendance-kpi>span,.attendance-kpi>strong,.attendance-kpi>small{position:relative;z-index:1;display:block}
.attendance-kpi>span{color:#766a76;font-size:.72rem;font-weight:850;letter-spacing:.065em;text-transform:uppercase}
.attendance-kpi>strong{margin:24px 0 7px;color:#2c2430;font-size:clamp(1.15rem,1.5vw,1.55rem);line-height:1.12}
.attendance-kpi>small{color:#766e77;font-size:.82rem;line-height:1.35}
.attendance-kpi.coral{background:linear-gradient(145deg,#fff3ed,#f6d6cc)}.attendance-kpi.amber{background:linear-gradient(145deg,#fff9e9,#f2e3b7)}.attendance-kpi.mint{background:linear-gradient(145deg,#effaf6,#cde8dc)}.attendance-kpi.plum{background:linear-gradient(145deg,#fbf3fb,#e7d5e8)}.attendance-kpi.rose{background:linear-gradient(145deg,#fff5f5,#efd5d7)}.attendance-kpi.action{background:linear-gradient(145deg,#f7f3ef,#e9ded7)}
.attendance-trend{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(320px,1.2fr);align-items:center;gap:22px;padding:20px 24px;margin:0 0 16px}
.attendance-trend h2{margin:4px 0;font-size:1.2rem}.attendance-trend p{margin:0;color:var(--muted);font-size:.9rem}
.attendance-mini-chart{display:grid;grid-template-columns:repeat(7,minmax(30px,1fr));align-items:end;gap:9px;height:102px}
.attendance-mini-chart>div{display:grid;grid-template-rows:78px auto;gap:5px;text-align:center}.attendance-mini-chart i{display:flex;align-items:flex-end;overflow:hidden;border-radius:9px;background:rgba(121,83,110,.07)}
.attendance-mini-chart b{display:block;width:100%;min-height:3px;border-radius:9px;background:linear-gradient(180deg,#ef9073,#c95859);transition:height .45s ease}.attendance-mini-chart span{color:var(--muted);font-size:.7rem;font-weight:750}
.attendance-subtabs{display:flex;gap:6px;margin:18px 0 0;padding:7px;overflow-x:auto;border:1px solid rgba(121,83,110,.11);border-bottom:0;border-radius:20px 20px 0 0;background:rgba(255,255,255,.45);scrollbar-width:thin}
.attendance-subtabs a{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:9px 14px;border-radius:14px;color:#655a66;font-size:.88rem;font-weight:780;text-decoration:none;white-space:nowrap;transition:background .16s ease,color .16s ease,transform .16s ease}
.attendance-subtabs a:hover{background:rgba(255,255,255,.72);transform:translateY(-1px)}.attendance-subtabs a.active{background:#fff;color:#302632;box-shadow:0 8px 18px rgba(70,44,58,.09)}
.attendance-tab-panel{min-height:280px;padding:clamp(18px,2.5vw,30px);border-radius:0 0 26px 26px}
.attendance-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.attendance-panel-heading h2{margin:4px 0}.attendance-panel-heading p{margin:5px 0 0;color:var(--muted)}
.attendance-tab-panel .attendance-action-shell{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(420px,1.22fr);gap:28px;padding:0;background:none}
.attendance-tab-panel .attendance-existing-record .attendance-action-copy h2{font-size:clamp(1.9rem,2.5vw,2.35rem);line-height:1.08}.attendance-existing-record .attendance-day-card{align-self:stretch;padding:20px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.52)}
.compact-note{margin:22px 0 0;padding:14px 17px;font-size:.83rem}
.balance-activity{display:grid;gap:5px;margin-top:14px}.balance-activity p{margin:0;padding-top:7px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}
.inline-decision{display:grid;grid-template-columns:minmax(140px,.35fr) 1fr;gap:12px;margin:10px 0;padding:10px 12px;border-radius:12px;background:rgba(104,168,143,.08);font-size:.82rem}.inline-decision span{color:var(--muted)}
.identity-link-expired{display:grid;gap:12px;margin-top:24px}.identity-link-expired h2,.identity-link-expired p{margin:0}
@media(max-width:1280px){.attendance-dashboard{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.attendance-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-trend,.attendance-tab-panel .attendance-action-shell{grid-template-columns:1fr}.attendance-trend{align-items:start}}
@media(max-width:600px){.attendance-dashboard{grid-template-columns:1fr}.attendance-kpi{min-height:122px}.attendance-kpi>strong{margin-top:16px}.attendance-scope-tabs{display:grid;grid-template-columns:1fr}.attendance-scope-tabs a{justify-content:space-between}.attendance-panel-heading{align-items:flex-start;flex-direction:column}.attendance-tab-panel{padding:16px}.inline-decision{grid-template-columns:1fr}}
.attendance-distribution-bars{display:grid;gap:10px}.attendance-distribution-bars>div{display:grid;grid-template-columns:minmax(110px,.55fr) minmax(120px,1.2fr) 35px;align-items:center;gap:10px}.attendance-distribution-bars span{overflow:hidden;color:var(--muted);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.attendance-distribution-bars i{height:10px;overflow:hidden;border-radius:99px;background:rgba(121,83,110,.08)}.attendance-distribution-bars b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),var(--coral));transition:width .4s ease}.attendance-distribution-bars strong{font-size:.85rem}
.review-evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0}.review-evidence-grid>span{display:grid;gap:3px;padding:12px;border-radius:14px;background:rgba(121,83,110,.055)}.review-evidence-grid small,.review-evidence-grid em{color:var(--muted);font-size:.72rem;font-style:normal}.review-evidence-grid strong{font-size:.88rem}
.queue-heading{margin:26px 0 12px;font-size:1rem}.queue-heading:first-of-type{margin-top:0}
.attendance-filter-bar{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;margin-bottom:20px}.attendance-filter-bar label{display:block;margin-bottom:6px;font-size:.78rem;font-weight:780}
.organisation-overview-grid,.regularisation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.organisation-overview-grid h3,.organisation-overview-grid p{margin:0}.organisation-overview-grid strong{display:block;margin:18px 0 6px;font-size:1.45rem}.organisation-overview-grid p{color:var(--muted);font-size:.84rem}.regularisation-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:22px}.regularisation-grid p{color:var(--muted)}
@media(max-width:900px){.review-evidence-grid,.organisation-overview-grid{grid-template-columns:1fr}.regularisation-grid{grid-template-columns:1fr}.attendance-filter-bar{grid-template-columns:repeat(2,minmax(140px,1fr))}}
@media(max-width:600px){.attendance-filter-bar{grid-template-columns:1fr}.attendance-distribution-bars>div{grid-template-columns:minmax(88px,.7fr) minmax(70px,1fr) 30px}}

/* Accessible monthly and annual attendance registers */
.workforce-workspace,.attendance-tab-panel,.attendance-register-shell{min-width:0;max-width:100%}
.workforce-workspace{overflow-x:clip}
.history-period-controls{display:flex;align-items:flex-end;gap:12px;margin-bottom:20px}.history-period-controls .attendance-filter-bar{flex:1;margin:0}
.attendance-register-toolbar{display:grid;gap:15px;margin-bottom:16px}.attendance-month-navigation{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.attendance-month-navigation>div{min-width:170px;text-align:center}.attendance-month-navigation h3{margin:2px 0 0}
.attendance-register-filters{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr)) auto;align-items:end;gap:10px}.attendance-register-filters label{display:block;margin-bottom:5px;color:var(--muted);font-size:.72rem;font-weight:800}
.attendance-register-legend{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0 16px}.attendance-register-legend>span{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid rgba(121,83,110,.12);border-radius:999px;background:#fff;color:#544a55;font-size:.7rem;font-weight:760}.attendance-register-legend b{display:inline-grid;min-width:27px;height:27px;padding:0 4px;place-items:center;border-radius:50%;font-size:.61rem}
.attendance-register-legend .present b,.attendance-calendar-cell.present{background:#32845f;color:#fff}.attendance-register-legend .absent b,.attendance-calendar-cell.absent{background:#c84c50;color:#fff}.attendance-register-legend .non-working b,.attendance-calendar-cell.non-working{background:#e2dedf;color:#625b63}.attendance-register-legend .not-applicable b,.attendance-calendar-cell.not-applicable{color:#756d76;background:repeating-linear-gradient(135deg,#f2eff0,#f2eff0 4px,#e4dfe1 4px,#e4dfe1 8px)}.attendance-register-legend .remote b,.attendance-calendar-cell.remote{background:#a97805;color:#fff}.attendance-register-legend .hours-exception b,.attendance-calendar-cell.hours-exception{background:#c75e13;color:#fff}.attendance-register-legend .approved-leave b,.attendance-calendar-cell.approved-leave{background:#3979be;color:#fff}.attendance-register-legend .pending b,.attendance-calendar-cell.pending{border:2px solid #89647e;background:#fff8fc;color:#67455d}.attendance-register-legend .half-day b,.attendance-calendar-cell.half-day{background:linear-gradient(135deg,#3979be 50%,#32845f 50%);color:#fff}
.attendance-secondary-tabs{display:flex;gap:7px;margin:0 0 18px;padding-bottom:4px;overflow-x:auto;scrollbar-width:thin}.attendance-secondary-tabs a{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 11px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.5);color:var(--muted);font-size:.75rem;font-weight:800;white-space:nowrap}.attendance-secondary-tabs a.active{border-color:rgba(92,58,82,.3);background:#332735;color:#fff}.attendance-secondary-tabs b{display:inline-grid;min-width:21px;height:21px;place-items:center;border-radius:50%;background:rgba(121,83,110,.11);font-size:.65rem}.attendance-secondary-tabs .active b{background:rgba(255,255,255,.2)}
.attendance-register-viewport{position:relative;max-width:100%;max-height:68vh;overflow:auto;overscroll-behavior:contain;border:1px solid rgba(121,83,110,.14);border-radius:18px;background:rgba(255,255,255,.58);scrollbar-color:rgba(121,83,110,.34) rgba(121,83,110,.06)}
.attendance-register-grid{width:max-content;min-width:100%}.attendance-register-row{display:grid;grid-template-columns:minmax(220px,260px) repeat(var(--attendance-days),44px);min-height:49px;border-bottom:1px solid rgba(121,83,110,.09)}.attendance-register-row:last-child{border-bottom:0}.attendance-register-header{position:sticky;top:0;z-index:4;background:#f8f3f1;box-shadow:0 4px 12px rgba(70,46,57,.06)}
.attendance-employee-cell{position:sticky;left:0;z-index:2;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:8px 12px;border-right:1px solid rgba(121,83,110,.12);background:#fffaf8}.attendance-register-header .attendance-employee-cell{z-index:6;background:#f4ece9;font-size:.77rem;font-weight:850;text-transform:uppercase}.attendance-employee-cell a{overflow:hidden;color:#302630;font-size:.8rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.attendance-employee-cell small{overflow:hidden;margin-top:2px;color:var(--muted);font-size:.62rem;text-overflow:ellipsis;white-space:nowrap}
.attendance-date-heading{display:grid;place-items:center;padding:5px 2px;border-right:1px solid rgba(121,83,110,.07);font-size:.72rem}.attendance-date-heading strong,.attendance-date-heading small{display:block}.attendance-date-heading small{color:var(--muted);font-size:.55rem}.attendance-date-heading.today{background:rgba(104,168,143,.17);box-shadow:inset 0 -3px #4a9877}
.attendance-calendar-cell{align-self:center;justify-self:center;display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(255,255,255,.78);border-radius:50%;box-shadow:0 2px 7px rgba(59,42,52,.1);font-size:.58rem;font-weight:900;line-height:1;text-align:center;text-decoration:none;transition:transform .14s ease,box-shadow .14s ease}.attendance-calendar-cell:hover,.attendance-calendar-cell:focus-visible{z-index:3;transform:scale(1.12);box-shadow:0 5px 13px rgba(55,36,48,.22);outline:3px solid rgba(69,126,176,.26);outline-offset:2px}.attendance-calendar-cell.requires-action{box-shadow:0 0 0 3px rgba(137,100,126,.22),0 3px 8px rgba(55,36,48,.16)}.attendance-register-empty{position:sticky;left:0;width:min(620px,90vw);padding:32px;color:var(--muted);text-align:center}
.employee-attendance-profile{padding:18px;margin-bottom:16px}.employee-attendance-profile dl{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0}.employee-attendance-profile dl>div{padding:10px;border-radius:12px;background:rgba(121,83,110,.05)}.employee-attendance-profile dt{color:var(--muted);font-size:.66rem}.employee-attendance-profile dd{margin:4px 0 0;font-size:.8rem;font-weight:800}.attendance-dashboard-employee{grid-template-columns:repeat(5,minmax(0,1fr))}
.annual-attendance-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:15px}.annual-attendance-month{min-width:0;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.52)}.annual-attendance-month.selected{border-color:rgba(104,168,143,.6);box-shadow:0 0 0 3px rgba(104,168,143,.12)}.annual-month-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px;color:var(--ink)}.annual-month-heading h3{margin:0}.annual-month-heading span{color:var(--muted);font-size:.7rem}.annual-month-days{display:grid;grid-template-columns:repeat(7,minmax(27px,1fr));gap:5px}.annual-month-days .attendance-calendar-cell{position:relative;width:100%;height:auto;aspect-ratio:1;border-radius:9px}.annual-month-days .attendance-calendar-cell small{position:absolute;left:3px;top:3px;font-size:.48rem;opacity:.82}.annual-month-days .attendance-calendar-cell span{font-size:.48rem}
@media(max-width:1300px){.attendance-register-filters{grid-template-columns:repeat(4,minmax(135px,1fr))}.employee-attendance-profile dl{grid-template-columns:repeat(3,minmax(0,1fr))}.annual-attendance-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}}
@media(max-width:850px){.history-period-controls{align-items:stretch;flex-direction:column}.attendance-register-filters{grid-template-columns:repeat(2,minmax(135px,1fr))}.attendance-register-row{grid-template-columns:minmax(180px,210px) repeat(var(--attendance-days),42px)}.attendance-employee-cell{padding-inline:9px}.annual-attendance-grid{grid-template-columns:1fr}.attendance-dashboard-employee{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.attendance-register-filters,.employee-attendance-profile dl{grid-template-columns:1fr}.attendance-register-viewport{max-height:72vh}.attendance-register-row{grid-template-columns:minmax(155px,180px) repeat(var(--attendance-days),40px)}.attendance-calendar-cell{width:32px;height:32px}.attendance-month-navigation>div{order:-1;flex:1 0 100%;text-align:left}.attendance-dashboard-employee{grid-template-columns:1fr}}
