/* AMC + HR home additions.
   Kept as a separately versioned file so an older installed service worker
   cannot combine current PHP markup with stale shared CSS. */
.module-section-head{min-height:38px;display:flex;align-items:center;justify-content:space-between;padding:15px 1px 7px;color:#365477;font-size:10px;font-weight:750;letter-spacing:.03em;text-transform:uppercase}
.module-section-head a{display:inline-flex;align-items:center;gap:2px;color:var(--primary);font-size:10.5px;letter-spacing:0;text-transform:none}
.amc-expiring-list{overflow:hidden;padding:0 12px;border:1px solid #dbe4f0;border-radius:14px;background:var(--card);box-shadow:var(--shadow-sm)}
.amc-expiring-row{min-height:76px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px}
.amc-expiring-row+.amc-expiring-row{border-top:1px solid var(--line)}
.amc-expiring-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:#5d42a5;background:#f0eafb;font-size:10px;font-weight:800}
.amc-expiring-copy{min-width:0}
.amc-expiring-copy strong,.amc-expiring-copy small,.amc-expiring-copy em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.amc-expiring-copy strong{font-size:12.5px}
.amc-expiring-copy small,.amc-expiring-copy em{margin-top:2px;color:#718198;font-size:9.5px;font-style:normal}
.amc-expiring-row>b{min-width:40px;padding:6px 7px;border-radius:8px;text-align:center;font-size:11px}
.amc-expiring-row>b.normal{color:#174b96;background:#edf4ff}
.amc-expiring-row>b.warning{color:#a65a00;background:#fff2df}
.amc-expiring-row>b.urgent{color:#c92c2c;background:#fdeaea}
.module-empty{padding:24px 12px;text-align:center;color:#718198;font-size:11px}

.module-page-skeleton{display:none;padding:14px 16px 8px}
.module-page-skeleton>*{position:relative;overflow:hidden}
.module-sk-kpis{height:68px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid #dbe4f0;border-radius:14px;background:#e5eaf1}
.module-sk-kpis i{background:#edf1f6}
.module-sk-heading{display:block;width:112px;height:9px;margin:18px 1px 9px;border-radius:5px}
.module-sk-heading.short{width:76px}
.module-sk-primary{height:72px;display:grid;grid-template-columns:44px 1fr 12px;align-items:center;gap:11px;padding:13px;border:1px solid #dbe4f0;border-radius:14px;background:#fff}
.module-sk-primary>i:first-child{width:44px;height:44px;border-radius:12px}
.module-sk-primary>i:last-child{width:8px;height:16px;border-radius:4px}
.module-sk-primary span b,.module-sk-primary span em{display:block;height:10px;border-radius:5px}
.module-sk-primary span b{width:48%}
.module-sk-primary span em{width:72%;height:8px;margin-top:8px}
.module-sk-list{padding:0 12px;border:1px solid #dbe4f0;border-radius:14px;background:#fff}
.module-sk-list>div{height:76px;display:grid;grid-template-columns:38px 1fr 40px;align-items:center;gap:10px}
.module-sk-list>div+div{border-top:1px solid var(--line)}
.module-sk-list>div>i:first-child{height:38px;border-radius:10px}
.module-sk-list>div>i:last-child{height:28px;border-radius:8px}
.module-sk-list span b,.module-sk-list span em,.module-sk-list span u{display:block;height:9px;border-radius:5px}
.module-sk-list span b{width:65%}
.module-sk-list span em{width:88%;height:8px;margin-top:7px}
.module-sk-list span u{width:58%;height:7px;margin-top:6px}
.module-sk-tiles{height:112px;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.module-sk-tiles i{border:1px solid #dbe4f0;border-radius:12px;background:#fff}
.module-page-skeleton-amc{padding-top:12px}
.module-page-skeleton-amc .module-sk-kpis{height:72px;border-color:#cbd6e4;border-radius:12px;background:#d5dee9}
.module-page-skeleton-amc .module-sk-kpis i:first-child{border-radius:11px 0 0 11px}.module-page-skeleton-amc .module-sk-kpis i:last-child{border-radius:0 11px 11px 0}
.module-page-skeleton-amc .module-sk-heading{margin-top:17px;margin-bottom:8px}
.module-page-skeleton-amc .module-sk-primary{height:74px;grid-template-columns:44px minmax(0,1fr) 12px;padding:14px 13px;border-color:#cbd6e4;border-radius:12px}
.module-page-skeleton-amc .module-sk-list{padding:0 12px;border-color:#cbd6e4;border-radius:12px;box-shadow:0 3px 10px rgba(24,34,53,.06)}
.module-page-skeleton-amc .module-sk-list>div{height:76px;grid-template-columns:38px minmax(0,1fr) 40px}
.module-page-skeleton-amc .module-sk-list>div>i:last-child{width:40px;justify-self:end}
.module-page-skeleton-amc .module-sk-tiles{height:110px}
.module-page-skeleton-amc .module-sk-tiles i{border-color:#cbd6e4;border-radius:12px;box-shadow:0 3px 10px rgba(24,34,53,.05)}
.module-page-skeleton-amc i,.module-page-skeleton-amc b,.module-page-skeleton-amc em,.module-page-skeleton-amc u,.module-page-skeleton-amc .module-sk-kpis i{background-color:#d5dee9}
.module-page-skeleton-amc i:after,.module-page-skeleton-amc b:after,.module-page-skeleton-amc em:after,.module-page-skeleton-amc u:after,.module-page-skeleton-amc .module-sk-kpis i:after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent)}
.module-page-skeleton-amc{animation:moduleSkeletonEnter .24s ease-out both}
.module-sk-more{display:grid;gap:1px;height:91px;margin-top:10px;border:1px solid #dbe4f0;border-radius:14px;background:#e5eaf1}
.module-sk-more i{background:#fff}
.module-page-skeleton-hr{padding-top:10px}
.module-page-skeleton i,.module-page-skeleton b,.module-page-skeleton em,.module-page-skeleton u,.module-sk-kpis i{position:relative;overflow:hidden;background-color:#e5eaf1;background-size:220% 100%}
.module-page-skeleton i:after,.module-page-skeleton b:after,.module-page-skeleton em:after,.module-page-skeleton u:after,.module-sk-kpis i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);background-size:220% 100%;animation:moduleSkeletonShimmer 1.15s ease-in-out infinite}
.page-amc.view-home[data-page-loading="true"] .module-page-skeleton,
.page-hr.view-home[data-page-loading="true"] #hrMenu>.module-page-skeleton{display:block}
.page-amc.view-home[data-page-loading="true"] .module-overview,
.page-hr.view-home[data-page-loading="true"] #hrMenu>.module-overview{display:none}
.page-amc.view-home[data-page-loading="false"] .module-overview>.reveal-item,
.page-hr.view-home[data-page-loading="false"] .module-overview>.reveal-item{animation:moduleHomeReveal .58s cubic-bezier(.16,1,.3,1) var(--module-delay,40ms) both}
.module-overview>.reveal-item:nth-child(2){--module-delay:110ms}
.module-overview>.reveal-item:nth-child(3){--module-delay:170ms}
.module-overview>.reveal-item:nth-child(4){--module-delay:240ms}
.module-overview>.reveal-item:nth-child(5){--module-delay:310ms}
.module-overview>.reveal-item:nth-child(6){--module-delay:380ms}
.module-overview>.reveal-item:nth-child(7){--module-delay:450ms}
@keyframes moduleSkeletonShimmer{from{background-position:100% 0}to{background-position:-120% 0}}
@keyframes moduleSkeletonEnter{from{opacity:0;transform:translate3d(0,5px,0)}to{opacity:1;transform:none}}
@keyframes moduleHomeReveal{from{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){.module-page-skeleton *:after{animation:none!important}.page-amc.view-home[data-page-loading="false"] .reveal-item,.page-hr.view-home[data-page-loading="false"] .reveal-item{animation:none!important}}

/* AMC home skeleton follows the same card-by-card pattern as Service home. */
.amc-service-skeleton{display:none;padding:12px 12px 22px}
.page-amc.view-home[data-page-loading="true"] .amc-service-skeleton{display:block}
.amc-sk-kpis{height:68px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid #d5deeb;border-radius:13px;background:#fff;box-shadow:0 4px 14px rgba(26,52,103,.055)}
.amc-sk-kpis>span{position:relative;display:grid;place-content:center;text-align:center}.amc-sk-kpis>span+span:before{content:"";position:absolute;left:0;top:13px;bottom:13px;width:1px;background:#e1e7ef}
.amc-sk-kpis i,.amc-sk-kpis b{display:block;margin:auto}.amc-sk-kpis i{width:46px;height:18px}.amc-sk-kpis b{width:60px;height:9px;margin-top:8px}
.amc-sk-summary{height:78px;margin-top:12px;padding:14px 15px;display:grid;grid-template-columns:46px minmax(0,1fr) 12px;align-items:center;gap:12px;border:1px solid #d5deeb;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(26,52,103,.055)}
.amc-sk-summary>i{width:46px;height:46px}.amc-sk-summary span b,.amc-sk-summary span em{display:block}.amc-sk-summary span b{width:44%;height:13px}.amc-sk-summary span em{width:72%;height:9px;margin-top:8px}.amc-sk-summary>u{width:9px;height:18px}
.amc-sk-heading{height:40px;padding:15px 2px 7px;display:flex;align-items:center;justify-content:space-between}.amc-sk-heading i,.amc-sk-heading b{width:78px;height:9px}.amc-sk-heading b{width:54px}.amc-sk-heading.quick{justify-content:flex-start;padding-top:17px}
.amc-sk-contracts{overflow:hidden;padding:0 12px;border:1px solid #d5deeb;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(26,52,103,.055)}
.amc-sk-contracts>div{height:78px;display:grid;grid-template-columns:38px minmax(0,1fr) 40px;align-items:center;gap:10px}.amc-sk-contracts>div+div{border-top:1px solid #e5eaf1}.amc-sk-contracts>div>i:first-child{width:38px;height:38px}.amc-sk-contracts>div>i:last-child{width:40px;height:28px}.amc-sk-contracts span b,.amc-sk-contracts span em,.amc-sk-contracts span u{display:block;height:9px}.amc-sk-contracts span b{width:70%}.amc-sk-contracts span em{width:90%;margin-top:7px}.amc-sk-contracts span u{width:55%;height:8px;margin-top:6px}
.amc-sk-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.amc-sk-quick>div{height:108px;padding:11px 10px;border:1px solid #d5deeb;border-radius:12px;background:#fff;box-shadow:0 4px 12px rgba(26,52,103,.05)}.amc-sk-quick i{display:block;width:39px;height:39px}.amc-sk-quick b,.amc-sk-quick em{display:block;height:10px;margin-top:9px}.amc-sk-quick b{width:78%}.amc-sk-quick em{width:58%}
.amc-sk-kpis i,.amc-sk-kpis b,.amc-sk-summary i,.amc-sk-summary b,.amc-sk-summary em,.amc-sk-summary u,.amc-sk-heading i,.amc-sk-heading b,.amc-sk-contracts i,.amc-sk-contracts b,.amc-sk-contracts em,.amc-sk-contracts u,.amc-sk-quick i,.amc-sk-quick b,.amc-sk-quick em{border-radius:5px;background:linear-gradient(90deg,#e5eaf1 25%,#f5f7fa 48%,#e5eaf1 72%);background-size:220% 100%;animation:moduleSkeletonShimmer 1.15s ease-in-out infinite}
@media(max-width:340px){.amc-service-skeleton{padding-left:10px;padding-right:10px}.amc-sk-quick{gap:6px}.amc-sk-quick>div{padding-left:7px;padding-right:7px}}
@media(prefers-reduced-motion:reduce){.amc-service-skeleton *{animation:none!important}}

/* HR home skeleton mirrors attendance, requests, quick access and extra menu rows. */
.hr-service-skeleton{display:none;padding:10px 16px 22px}
.page-hr.view-home[data-page-loading="true"] #hrMenu>.hr-service-skeleton{display:block}
.hr-sk-status{height:72px;padding:12px 13px;display:grid;grid-template-columns:44px minmax(0,1fr) 76px;align-items:center;gap:11px;border:1px solid #d5deeb;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(26,52,103,.055)}
.hr-sk-status>i{width:44px;height:44px}.hr-sk-status span b,.hr-sk-status span em{display:block}.hr-sk-status span b{width:70%;height:9px}.hr-sk-status span em{width:48%;height:13px;margin-top:7px}.hr-sk-status>u{width:76px;height:10px;justify-self:end}
.hr-sk-heading{height:40px;padding:16px 2px 7px;display:flex;align-items:center}.hr-sk-heading i{width:112px;height:9px}
.hr-sk-actions{overflow:hidden;padding:0 12px;border:1px solid #d5deeb;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(26,52,103,.055)}
.hr-sk-actions>div{height:62px;display:grid;grid-template-columns:38px minmax(0,1fr) 10px;align-items:center;gap:10px}.hr-sk-actions>div+div{border-top:1px solid #e5eaf1}.hr-sk-actions>div>i{width:38px;height:38px}.hr-sk-actions span b,.hr-sk-actions span em{display:block}.hr-sk-actions span b{width:68%;height:10px}.hr-sk-actions span em{width:88%;height:8px;margin-top:7px}.hr-sk-actions>div>u{width:8px;height:15px}
.hr-sk-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.hr-sk-quick>div{height:108px;padding:11px 10px;border:1px solid #d5deeb;border-radius:12px;background:#fff;box-shadow:0 4px 12px rgba(26,52,103,.05)}.hr-sk-quick i{display:block;width:39px;height:39px}.hr-sk-quick b,.hr-sk-quick em{display:block;height:10px;margin-top:9px}.hr-sk-quick b{width:78%}.hr-sk-quick em{width:58%}
.hr-sk-more{margin-top:10px;overflow:hidden;border:1px solid #d5deeb;border-radius:12px;background:#fff;box-shadow:0 4px 12px rgba(26,52,103,.05)}.hr-sk-more>div{height:58px;padding:9px 12px;display:grid;grid-template-columns:34px minmax(0,1fr) 10px;align-items:center;gap:10px}.hr-sk-more>div+div{border-top:1px solid #e5eaf1}.hr-sk-more>div>i{width:34px;height:34px}.hr-sk-more span b,.hr-sk-more span em{display:block}.hr-sk-more span b{width:54%;height:10px}.hr-sk-more span em{width:72%;height:8px;margin-top:7px}.hr-sk-more>div>u{width:8px;height:15px}
.hr-sk-status i,.hr-sk-status b,.hr-sk-status em,.hr-sk-status u,.hr-sk-heading i,.hr-sk-actions i,.hr-sk-actions b,.hr-sk-actions em,.hr-sk-actions u,.hr-sk-quick i,.hr-sk-quick b,.hr-sk-quick em,.hr-sk-more i,.hr-sk-more b,.hr-sk-more em,.hr-sk-more u{border-radius:5px;background:linear-gradient(90deg,#e5eaf1 25%,#f5f7fa 48%,#e5eaf1 72%);background-size:220% 100%;animation:moduleSkeletonShimmer 1.15s ease-in-out infinite}
@media(max-width:340px){.hr-service-skeleton{padding-left:10px;padding-right:10px}.hr-sk-quick{gap:6px}.hr-sk-quick>div{padding-left:7px;padding-right:7px}}
@media(prefers-reduced-motion:reduce){.hr-service-skeleton *{animation:none!important}}
