*{box-sizing:border-box}.sp43{min-height:100vh;background:#f5f7f9;color:#182033;font-family:Inter,system-ui,sans-serif}.sp43 header{height:70px;background:#fff;border-bottom:1px solid #e5e8ed;padding:0 28px;display:flex;justify-content:space-between;align-items:center}.sp43 header small{display:block;color:#7a8494;font-size:11px;margin-top:3px}.sp43 main{max-width:1250px;margin:auto;padding:28px}.hero,.panel,.card,.section{background:#fff;border:1px solid #e5e8ed;border-radius:14px}.hero{padding:24px;display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.hero small{color:#7a8494;letter-spacing:.12em;font-weight:700}.hero h1{margin:7px 0}.hero p{margin:0;color:#687286}.hero select,.picker select{border:1px solid #dfe4eb;border-radius:7px;padding:10px;background:#fff}.picker{padding:14px;display:flex;gap:12px;align-items:end;margin-bottom:14px}.picker label{display:grid;gap:6px;flex:1;font-size:12px;color:#687286}.picker button,.action{border:0;border-radius:7px;background:#182033;color:#fff;padding:10px 14px}.identity{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:14px;margin-bottom:14px}.card{padding:20px}.identity h2{margin:0 0 5px}.muted{color:#687286}.badge{display:inline-block;padding:5px 8px;border-radius:99px;background:#f0f2f5;font-size:11px;margin:2px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:14px}.stat{padding:15px;background:#fff;border:1px solid #e5e8ed;border-radius:12px}.stat small{color:#7a8494}.stat b{display:block;font-size:22px;margin-top:5px}.section{padding:20px;margin-bottom:14px}.section h2{font-size:18px;margin-top:0}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:14px}.kv{display:grid;grid-template-columns:150px 1fr;gap:9px;padding:8px 0;border-bottom:1px solid #eef0f3}.kv b{font-weight:600}.tablewrap{overflow:auto}.sp43 table{width:100%;border-collapse:collapse;min-width:650px}.sp43 th,.sp43 td{text-align:left;padding:10px;border-bottom:1px solid #e8ebef;font-size:13px}.sp43 th{color:#687286}@media(max-width:800px){.sp43 main{padding:15px}.hero{display:block}.hero select{width:100%;margin-top:14px}.identity,.twocol{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.picker{display:grid}.picker select{width:100%}}

/* v4.4 hierarchy management */
.sp44 .h44-tabs{display:flex;gap:8px;margin-bottom:14px}
.sp44 .h44-tab{border:1px solid #dfe4eb;background:#fff;color:#687286;border-radius:9px;padding:10px 14px;cursor:pointer}
.sp44 .h44-tab.active{background:#182033;color:#fff;border-color:#182033}
.sp44 .h44-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}
.sp44 .h44-toolbar h2{margin:0 0 4px}
.sp44 .h44-toolbar p{margin:0}
.sp44 .h44-company,.sp44 .h44-dept,.sp44 .h44-team{border:1px solid #e5e8ed;border-radius:12px;background:#fff}
.sp44 .h44-company{padding:16px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}
.sp44 .h44-dept{margin:0 0 12px;padding:12px}
.sp44 .h44-team{margin:10px 0 0 42px;padding:12px}
.sp44 .h44-node-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.sp44 .h44-node-head>div:first-child,.sp44 .h44-company>div:first-child{display:flex;align-items:center;gap:11px}
.sp44 .h44-icon,.sp44 .avatar{width:34px;height:34px;border-radius:9px;background:#182033;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex:0 0 auto}
.sp44 .h44-icon.dept{background:#eef1f5;color:#182033}
.sp44 .h44-icon.team{background:#f4f5f7;color:#182033}
.sp44 .h44-node-head small,.sp44 .h44-company small,.sp44 .h44-member small,.sp44 .h44-people-table small{display:block;color:#7a8494;font-size:11px;margin-top:3px}
.sp44 .h44-mini{border:1px solid #dfe4eb;background:#fff;border-radius:7px;padding:6px 9px;cursor:pointer;font-size:12px;color:#344054}
.sp44 .h44-mini:hover{background:#f5f7f9}
.sp44 .h44-mini.danger{color:#a33}
.sp44 .h44-members{margin:10px 0 0 45px;display:grid;gap:7px}
.sp44 .h44-member{display:flex;align-items:center;gap:10px;padding:9px;border-top:1px solid #eef0f3}
.sp44 .h44-member .avatar{width:28px;height:28px;border-radius:50%;font-size:11px;background:#eef1f5;color:#182033}
.sp44 .h44-empty{padding:20px;text-align:center;color:#7a8494;border:1px dashed #dfe4eb;border-radius:10px}
.sp44 .h44-empty.child{margin:10px 0 0 45px;padding:12px}
.sp44 .h44-modal{position:fixed;inset:0;background:rgba(18,24,38,.42);display:flex;align-items:center;justify-content:center;padding:20px;z-index:99999}
.sp44 .h44-modal[hidden],.sp44 [hidden]{display:none}
.sp44 .h44-dialog{width:min(520px,100%);background:#fff;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.18);overflow:hidden}
.sp44 .h44-dialog-head{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid #e5e8ed}
.sp44 .h44-dialog-head h3{margin:0}
.sp44 .h44-dialog-head button{border:0;background:transparent;font-size:25px;color:#687286;cursor:pointer}
.sp44 .h44-dialog form{padding:18px}
.sp44 .h44-dialog label{display:grid;gap:6px;margin-bottom:13px;font-size:12px;color:#687286}
.sp44 .h44-dialog input,.sp44 .h44-dialog select{width:100%;border:1px solid #dfe4eb;border-radius:8px;padding:10px;background:#fff;color:#182033}
.sp44 .h44-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.sp44 .h44-cancel{border:1px solid #dfe4eb;background:#fff;border-radius:7px;padding:10px 14px}
.sp44 .h44-people-table{min-width:900px}
.sp44 .h44-people-table td{vertical-align:middle}
@media(max-width:800px){
 .sp44 .h44-toolbar{display:block}
 .sp44 .h44-toolbar .action{margin-top:12px;width:100%}
 .sp44 .h44-tabs{overflow:auto}
 .sp44 .h44-tab{white-space:nowrap}
 .sp44 .h44-team{margin-left:12px}
 .sp44 .h44-members,.sp44 .h44-empty.child{margin-left:12px}
 .sp44 .h44-node-head{align-items:flex-start}
 .sp44 .h44-node-head>span{display:flex;flex-wrap:wrap;justify-content:flex-end}
}

/* Dedicated SWAP People live shell */
html,body.swap-people-live{margin:0!important;padding:0!important;background:#f5f7f9!important}
body.swap-people-live{overflow-x:hidden}
body.swap-people-live #wpadminbar{display:none!important}
.sp-live-app{min-height:100vh;background:#f5f7f9;color:#182033;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.sp-live-header{position:fixed;z-index:1000;top:0;left:0;right:0;height:68px;background:#fff;border-bottom:1px solid #e5e8ed;display:flex;align-items:center;justify-content:space-between;padding:0 24px 0 22px}
.sp-brand{display:flex;align-items:center;gap:12px}.sp-brand b{font-size:15px;letter-spacing:.03em}.sp-brand small{display:block;color:#7a8494;font-size:11px;margin-top:3px}
.sp-header-right{display:flex;align-items:center;gap:14px;font-size:12px}.sp-role{padding:6px 9px;border-radius:99px;background:#f0f2f5;font-weight:600}.sp-user{font-weight:600}.sp-logout{color:#687286;text-decoration:none}.sp-logout:hover{text-decoration:underline}
.sp-mobile-menu{display:none;border:0;background:transparent;font-size:22px;cursor:pointer}
.sp-sidebar{position:fixed;z-index:900;top:68px;bottom:0;left:0;width:240px;background:#182033;color:#dfe4eb;padding:22px 14px;display:flex;flex-direction:column}.sp-sidebar-title{font-size:10px;letter-spacing:.14em;color:#8e98a8;padding:0 12px 10px;font-weight:700}.sp-nav{display:grid;gap:4px}.sp-nav-item{width:100%;border:0;background:transparent;color:#b9c1ce;text-align:left;padding:11px 12px;border-radius:9px;display:flex;align-items:center;gap:11px;font:inherit;font-size:13px;cursor:pointer}.sp-nav-item span{width:18px;text-align:center;font-size:15px}.sp-nav-item:hover{background:rgba(255,255,255,.06);color:#fff}.sp-nav-item.active{background:#fff;color:#182033;font-weight:650}.sp-sidebar-foot{margin-top:auto;padding:14px 12px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;color:#8e98a8;font-size:10px}.sp-sidebar-foot b{color:#dfe4eb}
.sp-live-main{margin-left:240px;padding:96px 30px 34px;min-height:100vh}.sp-live-tab{max-width:1320px;margin:0 auto}.sp-page-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.sp-page-head span{font-size:10px;letter-spacing:.14em;font-weight:700;color:#7a8494}.sp-page-head h1{font-size:28px;margin:7px 0 5px}.sp-page-head p{margin:0;color:#687286}.sp-page-head select{min-width:230px;border:1px solid #dfe4eb;border-radius:9px;padding:11px;background:#fff}
.sp-live-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sp-live-card,.sp-placeholder{background:#fff;border:1px solid #e5e8ed;border-radius:14px;padding:22px}.sp-live-card small{display:block;color:#7a8494;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:700}.sp-live-card b{display:block;font-size:17px;margin:9px 0 7px}.sp-live-card p,.sp-placeholder p{color:#687286;font-size:13px;line-height:1.6}.sp-placeholder{min-height:180px}.sp-placeholder b{font-size:17px}
.sp-live-app .section{box-shadow:none}.sp-live-app .hero{margin-top:0}
@media(max-width:900px){.sp-mobile-menu{display:block}.sp-header-right .sp-user{display:none}.sp-sidebar{transform:translateX(-100%);transition:transform .2s ease;box-shadow:10px 0 30px rgba(0,0,0,.12)}.sp-sidebar.open{transform:translateX(0)}.sp-sidebar-overlay{position:fixed;inset:68px 0 0;background:rgba(18,24,38,.35);z-index:850;display:none}.sp-sidebar-overlay.open{display:block}.sp-live-main{margin-left:0;padding:88px 16px 25px}.sp-live-cards{grid-template-columns:1fr}.sp-page-head{display:block}.sp-page-head select{width:100%;margin-top:14px}.sp-live-header{padding:0 14px}.sp-header-right{gap:8px}.sp-logout{font-size:11px}}
@media(max-width:560px){.sp-live-header{height:62px}.sp-sidebar{top:62px}.sp-sidebar-overlay{inset:62px 0 0}.sp-live-main{padding-top:80px}.sp-page-head h1{font-size:23px}.sp-live-card,.sp-placeholder{padding:17px}.sp-live-app .h44-team{margin-left:4px}.sp-live-app .h44-members,.sp-live-app .h44-empty.child{margin-left:4px}}

/* v4.4.3 — SWAP OS Company ERP two-level navigation */
.sp-live-header{height:68px}
.sp-header-center{position:absolute;left:50%;transform:translateX(-50%);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7a8494}
.sp-workspace{min-height:100vh}
.sp-modulebar{position:fixed;z-index:920;top:68px;bottom:0;left:0;width:76px;background:#111827;color:#cbd5e1;display:flex;flex-direction:column;align-items:center;border-right:1px solid rgba(255,255,255,.06)}
.sp-module-brand{height:66px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;color:#fff;border-bottom:1px solid rgba(255,255,255,.08);width:100%}.sp-module-brand b{font-size:16px;letter-spacing:.08em}.sp-module-brand small{font-size:8px;color:#94a3b8;margin-top:4px;letter-spacing:.15em}
.sp-module-nav{width:100%;display:grid;gap:6px;padding:12px 8px}
.sp-module-item{border:0;background:transparent;color:#94a3b8;border-radius:10px;min-height:62px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer}.sp-module-item span{font-size:20px;line-height:1;filter:grayscale(.25)}.sp-module-item small{font-size:9px;font-weight:700;letter-spacing:.02em}.sp-module-item:hover{background:rgba(255,255,255,.07);color:#fff}.sp-module-item.active{background:#fff;color:#111827;box-shadow:0 4px 12px rgba(0,0,0,.15)}
.sp-sidebar{left:76px;width:238px;top:68px;padding:0 13px 16px;background:#1b2435}
.sp-context-head{padding:22px 12px 18px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:10px}.sp-context-kicker{display:block;font-size:9px;letter-spacing:.14em;color:#8290a5;font-weight:700;margin-bottom:6px}.sp-context-head>b{display:block;color:#fff;font-size:17px}.sp-context-head small{display:block;color:#93a0b3;font-size:10px;margin-top:4px;line-height:1.4}.sp-subnav{display:grid;gap:3px}.sp-subnav[hidden]{display:none}.sp-nav-item{padding:10px 12px;color:#b7c0ce}.sp-nav-item span{font-size:14px}.sp-nav-item.active{background:#fff;color:#182033}.sp-sidebar-foot{padding:14px 12px}
.sp-live-main{margin-left:314px}
.sp-sidebar-overlay{left:314px}
@media(max-width:900px){
 .sp-header-center{display:none}
 .sp-modulebar{top:62px;width:64px}
 .sp-sidebar{top:62px;left:64px;width:245px;transform:translateX(-110%)}
 .sp-sidebar.open{transform:translateX(0)}
 .sp-live-main{margin-left:64px}
 .sp-sidebar-overlay{inset:62px 0 0 64px}
 .sp-mobile-menu{display:block}
}
@media(max-width:560px){
 .sp-modulebar{width:58px}.sp-sidebar{left:58px;width:235px}.sp-live-main{margin-left:58px}.sp-sidebar-overlay{left:58px}
 .sp-module-item{min-height:56px}.sp-module-item small{font-size:8px}.sp-module-item span{font-size:18px}
 .sp-context-head{padding-top:17px}
}

/* v4.4.4 — ERP shell UX polish */
.sp-live-header{height:72px;padding:0 22px;border-bottom:1px solid #dfe4eb;box-shadow:0 1px 0 rgba(16,24,40,.02)}
.sp-brand{min-width:310px;gap:12px}.sp-brand-mark{width:38px;height:38px;border-radius:10px;background:#111827;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;box-shadow:0 5px 14px rgba(17,24,39,.16)}.sp-brand-mark b{font-size:11px;letter-spacing:.06em}.sp-brand-mark small{font-size:7px;color:#aab4c3;letter-spacing:.14em;margin-top:3px}.sp-brand-copy{display:flex;flex-direction:column;gap:2px}.sp-brand-copy strong{font-size:13px;letter-spacing:.01em}.sp-brand-copy span{font-size:10px;color:#7a8494}
.sp-header-tools{display:flex;align-items:center;gap:9px;flex:1;justify-content:center}.sp-global-search{width:min(430px,42vw);height:38px;border:1px solid #dfe4eb;background:#f8fafc;border-radius:10px;display:flex;align-items:center;padding:0 11px;gap:8px;color:#8a94a5}.sp-global-search:focus-within{background:#fff;border-color:#aeb8c7;box-shadow:0 0 0 3px rgba(24,32,51,.06)}.sp-global-search input{border:0;outline:0;background:transparent;width:100%;font:inherit;font-size:12px;color:#182033}.sp-global-search input::placeholder{color:#9aa3b1}.sp-env{font-size:9px;font-weight:800;letter-spacing:.1em;color:#52606f;border:1px solid #dfe4eb;background:#fff;border-radius:99px;padding:6px 8px}
.sp-header-right{gap:10px}.sp-icon-button{width:34px;height:34px;border:1px solid #dfe4eb;background:#fff;border-radius:9px;color:#687286;cursor:pointer}.sp-icon-button:hover{background:#f8fafc;color:#182033}.sp-avatar{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#eef1f5;color:#182033;font-size:11px;font-weight:800}.sp-role{font-size:10px}.sp-user{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sp-modulebar{top:72px}.sp-sidebar{top:72px}.sp-live-main{padding-top:102px}
.sp-module-item{min-height:66px;border-radius:11px}.sp-module-icon{width:30px;height:30px;border:1px solid rgba(255,255,255,.1);border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;color:#aeb8c7}.sp-module-item.active .sp-module-icon{border-color:#e5e7eb;background:#f3f4f6;color:#182033}.sp-module-item small{font-size:8.5px;text-transform:uppercase;letter-spacing:.04em}
.sp-context-head{padding-top:20px}.sp-nav-item{min-height:42px}.sp-nav-item span{width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.04);color:#93a0b3}.sp-nav-item.active span{background:#eef1f5;color:#182033}
.sp-live-main{background:linear-gradient(180deg,#f7f9fb 0,#f5f7f9 240px)}.sp-page-head{padding:4px 2px 0}.sp-page-head h1{font-size:27px;letter-spacing:-.02em}.sp-page-head p{font-size:13px}.sp-live-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sp-live-card,.sp-placeholder{border-radius:16px;box-shadow:0 1px 2px rgba(16,24,40,.03)}.sp-live-card{min-height:190px;display:flex;flex-direction:column}.sp-live-card .action{margin-top:auto;align-self:flex-start}.sp-live-card small{font-size:9px}.sp-live-card b{font-size:16px}.sp-live-card p{margin-top:0}
.sp-live-tab>.section{box-shadow:0 1px 2px rgba(16,24,40,.03)}.h44-toolbar{padding-bottom:2px}.h44-company,.h44-dept,.h44-team{box-shadow:0 1px 2px rgba(16,24,40,.025)}
.sp-search-hit{animation:spHit .8s ease}.sp-search-none{color:#9aa3b1;font-size:12px;padding:12px}
@keyframes spHit{0%{box-shadow:0 0 0 4px rgba(24,32,51,.12)}100%{box-shadow:none}}
@media(max-width:1100px){.sp-brand{min-width:240px}.sp-header-tools{justify-content:flex-start}.sp-global-search{width:min(330px,35vw)}.sp-user{display:none}}
@media(max-width:900px){.sp-live-header{height:64px}.sp-modulebar{top:64px}.sp-sidebar{top:64px}.sp-live-main{padding-top:88px}.sp-header-tools{display:none}.sp-brand{min-width:0}.sp-brand-copy span{display:none}.sp-header-right .sp-role{display:none}.sp-live-main{margin-left:64px}}
@media(max-width:560px){.sp-live-header{height:60px;padding:0 10px}.sp-modulebar{top:60px}.sp-sidebar{top:60px}.sp-live-main{padding-top:80px;margin-left:58px}.sp-brand-mark{width:34px;height:34px}.sp-brand-copy strong{font-size:12px}.sp-brand{gap:8px}.sp-header-right{gap:6px}.sp-logout{font-size:10px}.sp-icon-button{width:31px;height:31px}.sp-avatar{width:28px;height:28px}.sp-live-cards{grid-template-columns:1fr}.sp-page-head h1{font-size:23px}}


/* =========================================================
   v4.4.5 — SWAP OS reference-shell UX + responsive hardening
   Design reference: supplied SWAP OS 43.44.x package.
   Principles adopted: consistent shell tokens, fixed header, compact
   icon rail, contextual secondary navigation, mobile-first overflow
   guards, touch-safe controls, contained tables and off-canvas nav.
   ========================================================= */
:root{
  --sp-navy:#111827;
  --sp-navy-2:#1b2435;
  --sp-ink:#182033;
  --sp-muted:#687286;
  --sp-bg:#f5f7fb;
  --sp-card:#fff;
  --sp-border:#e3e7f1;
  --sp-blue:#0012ff;
  --sp-focus:#7aa2ff;
  --sp-header:72px;
  --sp-rail:76px;
  --sp-subnav:238px;
}
html body.swap-people-live{
  margin:0;
  min-width:0;
  width:100%;
  overflow-x:hidden;
  background:var(--sp-bg);
  color:var(--sp-ink);
}
html body.swap-people-live *,html body.swap-people-live *::before,html body.swap-people-live *::after{box-sizing:border-box}
html body.swap-people-live button,
html body.swap-people-live input,
html body.swap-people-live select,
html body.swap-people-live textarea{max-width:100%;font:inherit}
html body.swap-people-live img,
html body.swap-people-live svg{max-width:100%;height:auto}
.sp-live-app{width:100%;min-width:0;min-height:100vh;background:var(--sp-bg)}

/* Header: one predictable 72px application bar, never consumed by page content. */
.sp-live-header{
  position:fixed!important;top:0;left:0;right:0;width:100%;height:var(--sp-header)!important;
  z-index:2000!important;display:grid!important;grid-template-columns:minmax(250px,1fr) minmax(280px,520px) minmax(250px,1fr);
  align-items:center;gap:20px;padding:0 22px!important;background:#fff!important;
  border-bottom:1px solid var(--sp-border)!important;box-shadow:0 1px 0 rgba(16,24,40,.02)!important;
}
.sp-brand{min-width:0!important;display:flex;align-items:center;gap:12px}
.sp-brand-copy strong{color:var(--sp-ink)}
.sp-brand-copy span{color:#7a8494}
.sp-header-tools{min-width:0!important;justify-content:center!important}
.sp-global-search{width:100%!important;max-width:520px!important}
.sp-header-right{min-width:0!important;justify-content:flex-end!important;display:flex;align-items:center}
.sp-header-right>*{min-width:0}
.sp-user{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sp-mobile-menu{display:none}

/* Sidebar 1: icon-only on desktop/tablet, labels become tooltips through title. */
.sp-modulebar{
  position:fixed!important;z-index:1900!important;left:0!important;top:var(--sp-header)!important;bottom:0!important;
  width:var(--sp-rail)!important;background:var(--sp-navy)!important;color:#cbd5e1!important;
  border-right:1px solid #253047!important;display:flex;flex-direction:column;align-items:center;
  box-shadow:4px 0 20px rgba(2,6,23,.08)!important;
}
.sp-module-brand{height:64px!important;min-height:64px!important}
.sp-module-nav{width:100%!important;padding:12px 8px!important;gap:5px!important}
.sp-module-item{
  position:relative;width:58px!important;min-width:58px!important;height:58px!important;min-height:58px!important;
  padding:0!important;border-radius:12px!important;display:grid!important;place-items:center!important;gap:0!important;
  color:#94a3b8!important;background:transparent!important;
}
.sp-module-item small{display:none!important}
.sp-module-icon{width:32px;height:32px;border:1px solid rgba(255,255,255,.1);border-radius:9px;display:grid;place-items:center;font-size:17px;line-height:1}
.sp-module-item:hover{background:#1d293d!important;color:#fff!important}
.sp-module-item.active{background:#fff!important;color:var(--sp-ink)!important;box-shadow:0 4px 12px rgba(0,0,0,.15)!important}
.sp-module-item.active .sp-module-icon{background:#f3f4f6;border-color:#e5e7eb;color:var(--sp-ink)}
.sp-module-item:focus-visible{outline:2px solid var(--sp-focus);outline-offset:2px}
.sp-module-item:hover::after,.sp-module-item:focus-visible::after{
  content:attr(title);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);z-index:2400;
  white-space:nowrap;padding:7px 10px;border-radius:8px;background:#111827;color:#fff;font-size:11px;font-weight:700;
  box-shadow:0 8px 24px rgba(2,6,23,.2);pointer-events:none;
}

/* Sidebar 2: contextual navigation. */
.sp-sidebar{
  position:fixed!important;z-index:1850!important;left:var(--sp-rail)!important;top:var(--sp-header)!important;bottom:0!important;
  width:var(--sp-subnav)!important;padding:0 13px 16px!important;background:var(--sp-navy-2)!important;
  border-right:1px solid #253047!important;box-shadow:none!important;overflow-y:auto;overscroll-behavior:contain;
}
.sp-context-head{padding:20px 12px 17px!important;border-bottom:1px solid rgba(255,255,255,.08)!important;margin-bottom:10px!important}
.sp-nav-item{min-height:42px!important;color:#b7c0ce!important;border-radius:10px!important}
.sp-nav-item:hover{background:#243149!important;color:#fff!important}
.sp-nav-item.active{background:#fff!important;color:var(--sp-ink)!important;box-shadow:0 2px 8px rgba(2,6,23,.08)!important}
.sp-nav-item span{flex:0 0 22px;width:22px!important;height:22px!important;background:rgba(255,255,255,.04);border-radius:6px;display:inline-flex!important;align-items:center;justify-content:center}
.sp-nav-item.active span{background:#eef1f5;color:var(--sp-ink)}
.sp-sidebar-foot{padding:14px 12px!important}

/* Main workspace: never hidden under the two fixed rails. */
.sp-live-main{
  margin-left:calc(var(--sp-rail) + var(--sp-subnav))!important;
  min-width:0!important;width:auto!important;max-width:none!important;
  min-height:100vh;padding:calc(var(--sp-header) + 28px) clamp(18px,2.2vw,32px) 40px!important;
  overflow-x:hidden;background:linear-gradient(180deg,#f7f9fb 0,#f5f7f9 240px)!important;
}
.sp-live-tab{width:100%;max-width:1600px!important;margin:0 auto!important;min-width:0}
.sp-page-head{min-width:0;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px;padding:0 2px}
.sp-page-head h1{font-size:28px!important;line-height:1.15;margin:7px 0 5px!important;letter-spacing:-.025em}
.sp-page-head p{max-width:780px;line-height:1.55}
.sp-live-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))!important;gap:16px!important}
.sp-live-card,.sp-placeholder{min-width:0;border:1px solid var(--sp-border)!important;border-radius:16px!important;box-shadow:0 1px 2px rgba(16,24,40,.03)!important}

/* Tables, hierarchy panels and tabs obey a contained overflow contract. */
.sp-live-app .tablewrap,.sp-live-app .table-responsive{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.sp-live-app .h44-people-table{min-width:760px}
.sp-live-app .h44-tabs{max-width:100%;overflow-x:auto;display:flex;gap:6px;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}
.sp-live-app .h44-tabs>*{flex:0 0 auto}
.sp-live-app .h44-tree,.sp-live-app .h44-company,.sp-live-app .h44-dept,.sp-live-app .h44-team,.sp-live-app .h44-members{min-width:0;max-width:100%}
.sp-live-app .h44-company,.sp-live-app .h44-dept,.sp-live-app .h44-team{overflow-wrap:anywhere}
.sp-live-app .action,.sp-live-app .btn,.sp-live-app .h44-tab,.sp-live-app .h44-mini{min-height:40px}
.sp-live-app input,.sp-live-app select,.sp-live-app textarea{min-height:40px}

/* Laptop: keep the two-level concept but reclaim width. */
@media (min-width:981px) and (max-width:1199px){
  :root{--sp-rail:68px;--sp-subnav:224px;--sp-header:68px}
  .sp-live-header{grid-template-columns:minmax(210px,1fr) minmax(220px,360px) minmax(210px,1fr);padding:0 16px!important}
  .sp-brand-copy span,.sp-user{display:none}
  .sp-live-main{padding-left:20px!important;padding-right:20px!important}
}

/* Tablet: module rail remains visible; secondary navigation becomes an off-canvas drawer. */
@media (min-width:768px) and (max-width:980px){
  :root{--sp-rail:68px;--sp-header:64px}
  .sp-live-header{grid-template-columns:auto 1fr auto;height:64px!important;padding:0 14px!important}
  .sp-brand{min-width:0!important}
  .sp-brand-copy span,.sp-user,.sp-header-tools{display:none!important}
  .sp-mobile-menu{display:inline-flex!important;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--sp-border);background:#fff;border-radius:9px;cursor:pointer;margin-right:8px}
  .sp-sidebar{top:64px!important;left:var(--sp-rail)!important;width:min(320px,78vw)!important;transform:translateX(-110%);transition:transform .2s ease!important;box-shadow:18px 0 48px rgba(2,6,23,.28)!important}
  .sp-sidebar.open{transform:translateX(0)!important}
  .sp-sidebar-overlay{display:none;position:fixed;z-index:1800;top:64px;right:0;bottom:0;left:var(--sp-rail);background:rgba(18,24,38,.38)}
  .sp-sidebar-overlay.open{display:block}
  .sp-live-main{margin-left:var(--sp-rail)!important;padding-top:90px!important;padding-left:16px!important;padding-right:16px!important}
  .sp-page-head{flex-wrap:wrap;align-items:flex-start}
  .sp-page-head>*{max-width:100%;min-width:0}
  .sp-page-head select{width:100%;max-width:360px}
}

/* Phone: content becomes full width; module switcher becomes a fixed bottom icon rail.
   Secondary navigation is an off-canvas sheet opened from the header. */
@media (max-width:767px){
  :root{--sp-header:60px;--sp-rail:0px}
  html body.swap-people-live{font-size:14px;padding-bottom:68px}
  .sp-live-header{
    height:60px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:8px;padding:0 10px!important;
  }
  .sp-mobile-menu{display:inline-flex!important;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--sp-border);background:#fff;border-radius:9px;cursor:pointer}
  .sp-brand{min-width:0!important;gap:8px}
  .sp-brand-mark{width:34px!important;height:34px!important}
  .sp-brand-copy strong{font-size:12px!important}
  .sp-brand-copy span,.sp-role,.sp-user,.sp-logout,.sp-header-tools{display:none!important}
  .sp-icon-button{width:34px;height:34px}
  .sp-modulebar{
    top:auto!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:68px!important;
    min-height:68px!important;flex-direction:row!important;justify-content:center!important;z-index:2100!important;
    border-right:0!important;border-top:1px solid #253047!important;box-shadow:0 -8px 28px rgba(2,6,23,.12)!important;
  }
  .sp-module-brand{display:none!important}
  .sp-module-nav{height:100%!important;display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:2px!important;padding:5px 6px!important}
  .sp-module-item{width:100%!important;min-width:0!important;height:58px!important;min-height:58px!important;border-radius:10px!important}
  .sp-module-item:hover::after,.sp-module-item:focus-visible::after{display:none!important}
  .sp-sidebar{
    top:60px!important;left:0!important;bottom:68px!important;width:min(88vw,340px)!important;
    transform:translateX(-110%)!important;transition:transform .2s ease!important;box-shadow:18px 0 48px rgba(2,6,23,.32)!important;
  }
  .sp-sidebar.open{transform:translateX(0)!important}
  .sp-sidebar-overlay{display:none;position:fixed;z-index:2050;top:60px;right:0;bottom:68px;left:0;background:rgba(18,24,38,.4)}
  .sp-sidebar-overlay.open{display:block}
  .sp-live-main{margin-left:0!important;width:100%!important;max-width:100%!important;padding:78px 12px 24px!important;overflow-x:hidden!important}
  .sp-page-head{display:block;margin-bottom:16px}
  .sp-page-head h1{font-size:22px!important}
  .sp-page-head p{font-size:13px}
  .sp-page-head select{width:100%;margin-top:12px}
  .sp-live-cards{grid-template-columns:1fr!important;gap:12px!important}
  .sp-live-card,.sp-placeholder{padding:17px!important}
  .sp-live-app .h44-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:12px}
  .sp-live-app .h44-toolbar .action{width:100%}
  .sp-live-app .h44-company,.sp-live-app .h44-dept,.sp-live-app .h44-team{margin-left:0!important}
  .sp-live-app .h44-members,.sp-live-app .h44-empty.child{margin-left:0!important}
  .sp-live-app .h44-dialog{width:min(92vw,520px)!important;max-height:calc(100dvh - 90px)!important;overflow:auto}
}

@media (max-width:480px){
  .sp-brand-mark{width:32px!important;height:32px!important}
  .sp-brand-copy strong{font-size:11px!important}
  .sp-live-main{padding-left:10px!important;padding-right:10px!important}
  .sp-live-app .action,.sp-live-app .btn,.sp-live-app .h44-tab,.sp-live-app .h44-mini{min-height:42px}
  .sp-live-app .h44-tabs{padding-bottom:2px}
  .sp-live-app .h44-people-table{min-width:720px}
}

@media (prefers-reduced-motion:reduce){
  html body.swap-people-live *,html body.swap-people-live *::before,html body.swap-people-live *::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
}

/* =========================================================
   v4.4.6 — Company ERP foundation + responsive workspace polish
   Based on the supplied SWAP OS responsive UX reference.
   ========================================================= */
.sp-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0}
.sp-head-actions select{min-width:210px;height:42px;border:1px solid var(--sp-border);border-radius:10px;background:#fff;padding:0 12px;color:var(--sp-ink)}
.sp-company-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.sp-company-kpis article{min-width:0;background:#fff;border:1px solid var(--sp-border);border-radius:14px;padding:16px;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.sp-company-kpis small{display:block;color:#7a8494;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800}
.sp-company-kpis b{display:block;font-size:26px;line-height:1.1;margin:8px 0 5px}
.sp-company-kpis span{color:var(--sp-muted);font-size:12px}
.sp-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sp-inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:16px}
.sp-secondary{min-height:40px;padding:10px 14px;border-radius:8px;border:1px solid var(--sp-border);background:#fff;color:var(--sp-ink);cursor:pointer;font-weight:600}
.sp-secondary:hover{background:#f7f9fb}
.sp-company-profile-card{display:flex;gap:20px;align-items:flex-start;background:#fff;border:1px solid var(--sp-border);border-radius:16px;padding:24px;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.sp-company-avatar{width:68px;height:68px;flex:0 0 auto;border-radius:16px;display:grid;place-items:center;background:var(--sp-navy);color:#fff;font-size:25px;font-weight:800}
.sp-company-profile-main{min-width:0}.sp-company-profile-main>small{font-size:9px;letter-spacing:.1em;font-weight:800;color:#7a8494}.sp-company-profile-main h2{margin:5px 0 5px;font-size:24px;letter-spacing:-.02em}.sp-company-profile-main p{margin:0;color:var(--sp-muted)}
.sp-company-meta{display:flex;gap:34px;flex-wrap:wrap;margin-top:20px;padding-top:15px;border-top:1px solid #eef0f4}.sp-company-meta span{display:grid;gap:3px}.sp-company-meta b{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#7a8494}.sp-company-meta em{font-style:normal;font-size:13px;color:var(--sp-ink)}
.sp-section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.sp-section-head h2{margin:0 0 4px}.sp-section-head p{margin:0}
.sp-department-table{width:100%;border-collapse:collapse;min-width:620px}.sp-department-table th,.sp-department-table td{text-align:left;padding:13px 12px;border-bottom:1px solid #eef0f4;font-size:13px}.sp-department-table th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#7a8494}.sp-department-table td small{display:block;margin-top:3px;color:#98a2b3;font-size:11px}.sp-empty-cell{text-align:center!important;color:#7a8494;padding:28px!important}
.sp-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sp-settings-grid .sp-live-card{min-height:210px}
@media(max-width:1100px){.sp-company-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-settings-grid{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.sp-head-actions{width:100%;justify-content:stretch}.sp-head-actions select,.sp-head-actions .action{flex:1 1 100%;width:100%}.sp-company-kpis{grid-template-columns:1fr 1fr;gap:8px}.sp-company-kpis article{padding:13px}.sp-company-kpis b{font-size:22px}.sp-company-grid,.sp-settings-grid{grid-template-columns:1fr}.sp-company-profile-card{padding:17px;gap:14px}.sp-company-avatar{width:52px;height:52px;border-radius:13px;font-size:20px}.sp-company-profile-main h2{font-size:20px}.sp-company-meta{gap:18px;margin-top:16px}.sp-inline-actions{display:grid;grid-template-columns:1fr}.sp-inline-actions .action,.sp-inline-actions .sp-secondary{width:100%}.sp-section-head{display:block}.sp-department-table{min-width:600px}}
@media(max-width:420px){.sp-company-kpis{grid-template-columns:1fr}.sp-company-kpis article{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px}.sp-company-kpis article small{grid-column:1}.sp-company-kpis article b{grid-column:2;grid-row:1/3;margin:0;font-size:24px}.sp-company-kpis article span{grid-column:1}}

/* =========================================================
   v4.4.7 — Employee workspace / Employee 360
   ========================================================= */
.sp-employee-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.sp-employee-kpis article{min-width:0;background:#fff;border:1px solid var(--sp-border);border-radius:14px;padding:15px 16px;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.sp-employee-kpis small{display:block;color:#7a8494;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800}
.sp-employee-kpis b{display:block;font-size:25px;line-height:1.1;margin:8px 0 4px}
.sp-employee-kpis span{font-size:12px;color:var(--sp-muted)}
.sp-employee-panel{background:#fff;border:1px solid var(--sp-border);border-radius:16px;padding:0;overflow:hidden;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.sp-employee-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) 150px 180px;gap:8px;padding:13px;border-bottom:1px solid #eef0f4;background:#fbfcfd}
.sp-employee-toolbar select,.sp-employee-search{height:42px;border:1px solid var(--sp-border);border-radius:9px;background:#fff}
.sp-employee-toolbar select{padding:0 10px;color:var(--sp-ink);min-width:0}
.sp-employee-search{display:flex;align-items:center;gap:7px;padding:0 11px}.sp-employee-search span{color:#8b95a5;font-size:17px}.sp-employee-search input{border:0;outline:0;width:100%;min-width:0;height:38px;background:transparent;color:var(--sp-ink)}
.sp-employee-table{width:100%;border-collapse:collapse;min-width:980px}.sp-employee-table th,.sp-employee-table td{text-align:left;padding:12px;border-bottom:1px solid #eef0f4;font-size:13px;vertical-align:middle}.sp-employee-table th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#7a8494;background:#fff}.sp-employee-table tbody tr:hover{background:#fafbfc}.sp-employee-cell{display:flex;align-items:center;gap:10px;min-width:210px}.sp-employee-cell small{display:block;margin-top:3px;color:#8b95a5;font-size:11px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-employee-avatar{width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:#edf1f5;color:var(--sp-ink);display:grid;place-items:center;font-size:13px;font-weight:800}.sp-employee-avatar.large{width:54px;height:54px;flex-basis:54px;border-radius:15px;font-size:20px;background:var(--sp-navy);color:#fff}.sp-row-actions{display:flex;gap:5px;white-space:nowrap}.badge.active{background:#e9f7ef;color:#18794e}.badge.inactive{background:#f1f3f5;color:#667085}.badge.on_leave{background:#fff4e5;color:#9a6700}
.sp-employee-form{max-width:760px}.sp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sp-form-grid label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#344054}.sp-form-grid input,.sp-form-grid select{width:100%;height:42px;border:1px solid var(--sp-border);border-radius:9px;padding:0 11px;background:#fff;color:var(--sp-ink)}
.sp-360{max-width:760px}.sp-360-hero{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid #eef0f4}.sp-360-hero h2{margin:3px 0 3px;font-size:23px;letter-spacing:-.02em}.sp-360-hero p{margin:0;color:var(--sp-muted)}.eyebrow{font-size:9px;letter-spacing:.1em;font-weight:800;color:#7a8494;text-transform:uppercase}.sp-360-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}.sp-360-grid article{border:1px solid #eef0f4;border-radius:10px;padding:12px;min-width:0}.sp-360-grid small{display:block;font-size:9px;letter-spacing:.08em;color:#7a8494;font-weight:800}.sp-360-grid b{display:block;margin:7px 0 3px;font-size:17px}.sp-360-grid span{display:block;color:var(--sp-muted);font-size:11px;line-height:1.4}.sp-360-section{border-top:1px solid #eef0f4;padding-top:16px}.sp-360-section h3{font-size:14px;margin:0 0 12px}.sp-360-details{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sp-360-details span{display:grid;gap:3px;font-size:12px;color:var(--sp-ink)}.sp-360-details b{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#7a8494}
@media(max-width:1050px){.sp-employee-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-employee-toolbar{grid-template-columns:1fr 150px 180px}.sp-360-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.sp-employee-toolbar{grid-template-columns:1fr;padding:10px}.sp-employee-toolbar select,.sp-employee-search{width:100%}.sp-employee-kpis{grid-template-columns:1fr 1fr;gap:8px}.sp-employee-kpis article{padding:13px}.sp-employee-kpis b{font-size:22px}.sp-form-grid{grid-template-columns:1fr}.sp-360-grid{grid-template-columns:1fr 1fr}.sp-360-details{grid-template-columns:1fr}.sp-employee-panel{border-radius:13px}.sp-employee-table{min-width:960px}}
@media(max-width:420px){.sp-employee-kpis{grid-template-columns:1fr}.sp-360-grid{grid-template-columns:1fr}}
/* v4.4.8 — Attendance workspace */
.sp-attendance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 16px}.sp-attendance-kpis article,.sp-summary-grid article{background:var(--sp-card,#fff);border:1px solid var(--sp-border,#e7e9ee);border-radius:14px;padding:16px;min-width:0}.sp-attendance-kpis small,.sp-summary-grid small{display:block;color:#7b8190;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.sp-attendance-kpis b,.sp-summary-grid b{display:block;font-size:28px;line-height:1.1;margin:7px 0}.sp-attendance-kpis span,.sp-summary-grid span{color:#7b8190;font-size:12px}.sp-attendance-control{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:14px;align-items:center;margin-bottom:16px}.sp-attendance-control h2{margin:4px 0 3px}.sp-attendance-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sp-attendance-actions select{min-width:220px}.sp-attendance-status{grid-column:1/-1;background:#f7f8fa;border:1px solid #e9ebef;border-radius:10px;padding:11px 13px;display:flex;gap:12px;align-items:center}.sp-attendance-status b{text-transform:capitalize}.sp-attendance-status span{color:#747b88;font-size:13px}.sp-attendance-filters{display:flex;gap:8px;flex-wrap:wrap}.sp-attendance-filters input{min-width:220px}.sp-attendance-table td,.sp-attendance-table th{white-space:nowrap}.sp-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.badge.warn{background:#fff3df;color:#9a6200}.sp-empty-cell{text-align:center;color:#7b8190;padding:28px!important}
@media(max-width:1100px){.sp-attendance-kpis,.sp-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-attendance-control{grid-template-columns:1fr}.sp-attendance-status{grid-column:auto}}
@media(max-width:680px){.sp-attendance-kpis,.sp-summary-grid{grid-template-columns:1fr 1fr;gap:9px}.sp-attendance-kpis article,.sp-summary-grid article{padding:12px}.sp-attendance-kpis b,.sp-summary-grid b{font-size:22px}.sp-attendance-actions,.sp-attendance-actions select,.sp-attendance-actions button{width:100%}.sp-attendance-filters,.sp-attendance-filters input,.sp-attendance-filters select{width:100%}.sp-attendance-status{align-items:flex-start;flex-direction:column;gap:4px}.sp-attendance-control{padding:14px}}

/* v4.4.9 — Leave & Requests responsive workspace */
.sp-leave-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 16px}.sp-leave-kpis article{background:var(--sp-card,#fff);border:1px solid var(--sp-border,#e7e9ee);border-radius:14px;padding:16px;min-width:0}.sp-leave-kpis small{display:block;color:#7b8190;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.sp-leave-kpis b{display:block;font-size:28px;line-height:1.1;margin:7px 0}.sp-leave-kpis span{color:#7b8190;font-size:12px}.sp-leave-filters{display:flex;gap:8px;flex-wrap:wrap}.sp-leave-filters input{min-width:200px}.sp-leave-table{width:100%;border-collapse:collapse;min-width:1050px}.sp-leave-table th,.sp-leave-table td{text-align:left;padding:12px;border-bottom:1px solid #eef0f4;font-size:13px;vertical-align:middle}.sp-leave-table th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#7a8494;background:#fff;white-space:nowrap}.sp-reason-cell{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge.warn{background:#fff4e5;color:#9a6700}.h44-mini.danger{color:#9a2e2e}.sp-form-wide{grid-column:1/-1}.sp-request-panel{margin-top:16px}
@media(max-width:1100px){.sp-leave-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-page-head .sp-head-actions{width:100%}.sp-leave-filters input{min-width:180px}}
@media(max-width:680px){.sp-leave-kpis{grid-template-columns:1fr 1fr;gap:9px}.sp-leave-kpis article{padding:12px}.sp-leave-kpis b{font-size:22px}.sp-leave-filters,.sp-leave-filters input,.sp-leave-filters select{width:100%}.sp-live-app .sp-page-head .sp-head-actions,.sp-live-app .sp-page-head .sp-head-actions select,.sp-live-app .sp-page-head .sp-head-actions button{width:100%}.sp-leave-table{min-width:920px}.sp-reason-cell{max-width:180px}.sp-form-wide{grid-column:auto}}
/* v4.4.10 — Schedules & Holidays responsive workspace */
.sp-schedule-kpis,.sp-holiday-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}.sp-schedule-kpis article,.sp-holiday-kpis article{padding:16px;border:1px solid var(--line,#e5e7eb);border-radius:16px;background:var(--surface,#fff);display:grid;gap:5px}.sp-schedule-kpis small,.sp-holiday-kpis small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#6b7280}.sp-schedule-kpis b,.sp-holiday-kpis b{font-size:24px}.sp-schedule-kpis span,.sp-holiday-kpis span{font-size:12px;color:#6b7280}.sp-schedule-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:16px}.sp-schedule-cards{display:grid;gap:8px}.sp-schedule-card{width:100%;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;text-align:left;padding:13px;border:1px solid var(--line,#e5e7eb);background:var(--surface,#fff);border-radius:14px;cursor:pointer}.sp-schedule-card.active{border-color:#111827;box-shadow:0 0 0 1px #111827 inset}.sp-schedule-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#f3f4f6;font-size:18px}.sp-schedule-card b,.sp-schedule-card small{display:block}.sp-schedule-card small{margin-top:3px;color:#6b7280}.sp-schedule-card em{font-style:normal;font-size:11px;color:#6b7280;max-width:140px;text-align:right}.sp-pattern{display:grid;gap:12px}.sp-pattern>div{padding:15px;border:1px solid var(--line,#e5e7eb);border-radius:14px;background:#fafafa}.sp-pattern small,.sp-pattern strong,.sp-pattern span{display:block}.sp-pattern small{font-size:10px;letter-spacing:.08em;color:#6b7280}.sp-pattern strong{font-size:20px;margin:5px 0}.sp-pattern span{font-size:12px;color:#6b7280}.sp-year-input{width:110px}.sp-check-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}.sp-check{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--line,#e5e7eb);border-radius:10px;background:#fff}.sp-check input{margin:0}.sp-empty,.sp-empty-cell{text-align:center;color:#6b7280;padding:24px}.sp-holiday-table td,.sp-holiday-table th{white-space:nowrap}
@media(max-width:900px){.sp-schedule-grid{grid-template-columns:1fr}.sp-schedule-kpis,.sp-holiday-kpis{grid-template-columns:1fr 1fr}.sp-schedule-card{grid-template-columns:36px 1fr}.sp-schedule-card em{grid-column:2;text-align:left}}
@media(max-width:560px){.sp-schedule-kpis,.sp-holiday-kpis{grid-template-columns:1fr}.sp-page-head .sp-head-actions{width:100%;display:grid;grid-template-columns:1fr}.sp-page-head .sp-head-actions select,.sp-page-head .sp-head-actions button{width:100%}.sp-schedule-card{padding:12px}.sp-schedule-card em{max-width:none}}
/* v4.4.12 — Unified workforce calendar */
.sp-calendar-toolbar{display:flex;align-items:center;gap:8px;margin:0 0 10px}.sp-calendar-toolbar h2{font-size:20px;min-width:180px;text-align:center;margin:0;letter-spacing:-.02em}.sp-calendar-toolbar .sp-secondary{min-width:42px;height:40px}.sp-calendar-toolbar select{margin-left:auto;height:40px}.sp-calendar-legend{display:flex;gap:14px;flex-wrap:wrap;margin:0 0 12px;color:#667085;font-size:12px}.sp-calendar-legend span{display:inline-flex;align-items:center;gap:6px}.sp-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.sp-dot.holiday{background:#7c3aed}.sp-dot.leave{background:#d97706}.sp-dot.present{background:#15803d}.sp-dot.off{background:#98a2b3}.sp-calendar-panel{padding:0;overflow:hidden}.sp-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #e7e9ee;border-left:1px solid #e7e9ee}.sp-cal-weekday{padding:9px 10px;background:#f8fafc;color:#667085;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;border-right:1px solid #e7e9ee;border-bottom:1px solid #e7e9ee}.sp-cal-cell{min-height:122px;padding:8px;border-right:1px solid #e7e9ee;border-bottom:1px solid #e7e9ee;background:#fff;overflow:hidden}.sp-cal-cell.muted{background:#fafbfc}.sp-cal-cell.today{background:#f7fbff;box-shadow:inset 0 0 0 2px #1d4ed8}.sp-cal-cell.is-off{background:#fcfcfd}.sp-cal-day{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.sp-cal-day b{font-size:13px}.sp-cal-day small{font-size:9px;color:#98a2b3}.sp-cal-events{display:grid;gap:4px}.sp-cal-event{display:block;border-radius:6px;padding:4px 6px;font-size:10px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sp-cal-event.holiday{background:#f3e8ff;color:#6b21a8}.sp-cal-event.leave{background:#fff1db;color:#9a6700}.sp-cal-event.present{background:#e9f7ef;color:#18794e}.sp-cal-event.off{background:#f2f4f7;color:#667085}.sp-calendar-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.sp-calendar-summary article{background:#fff;border:1px solid var(--sp-border,#e7e9ee);border-radius:14px;padding:15px}.sp-calendar-summary small{display:block;color:#7b8190;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.sp-calendar-summary b{display:block;font-size:25px;margin:7px 0 3px}.sp-calendar-summary span{font-size:12px;color:#7b8190}.sp-calendar-empty{padding:40px;text-align:center;color:#667085;grid-column:1/-1}
@media(max-width:900px){.sp-cal-cell{min-height:105px}.sp-calendar-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sp-calendar-toolbar{display:grid;grid-template-columns:42px 1fr 42px}.sp-calendar-toolbar h2{min-width:0;font-size:17px}.sp-calendar-toolbar select{display:none}.sp-calendar-legend{gap:8px;font-size:11px}.sp-calendar-grid{min-width:700px}.sp-calendar-panel{overflow-x:auto}.sp-cal-cell{min-height:96px;padding:6px}.sp-cal-weekday{padding:8px 6px}.sp-cal-event{font-size:9px;padding:3px 5px}.sp-calendar-summary{grid-template-columns:1fr 1fr;gap:8px}.sp-calendar-summary article{padding:12px}.sp-calendar-summary b{font-size:21px}}
@media(max-width:390px){.sp-calendar-summary{grid-template-columns:1fr}}

/* v4.4.12 Employee 360 workspace */
.sp-360-nav{display:flex;gap:6px;border-bottom:1px solid #eef0f4;margin:0 -2px 14px;padding:0 0 8px;overflow-x:auto}.sp-360-nav button{appearance:none;border:0;background:transparent;color:var(--sp-muted);font:inherit;font-weight:700;font-size:12px;padding:9px 12px;border-radius:8px;white-space:nowrap;cursor:pointer}.sp-360-nav button:hover{background:#f6f7f9;color:var(--sp-ink)}.sp-360-nav button.active{background:#eef2ff;color:var(--sp-ink)}.sp-360-pane{display:none}.sp-360-pane.active{display:block}.sp-360-title{min-width:0}.sp-360-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sp-360-context span{border:1px solid #eef0f4;border-radius:10px;padding:11px;font-size:12px}.sp-360-context b{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#7a8494;margin-bottom:4px}.sp-360-tablewrap{max-height:360px;overflow:auto}.sp-360-tablewrap table{width:100%;min-width:620px;border-collapse:collapse;font-size:11px}.sp-360-tablewrap th,.sp-360-tablewrap td{padding:9px;border-bottom:1px solid #eef0f4;text-align:left;vertical-align:top}.sp-360-tablewrap th{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#7a8494;position:sticky;top:0;background:#fff}.sp-360 .badge{font-size:9px}.sp-360-section{margin-bottom:16px}
@media(max-width:600px){.sp-360-context{grid-template-columns:1fr}.sp-360-grid{grid-template-columns:1fr 1fr}.sp-360-hero{align-items:flex-start}.sp-360-hero h2{font-size:19px}.sp-360-nav{margin-left:-8px;margin-right:-8px;padding-left:4px}.sp-360-tablewrap{max-height:300px}.sp-360-details{grid-template-columns:1fr}}
@media(max-width:420px){.sp-360-grid{grid-template-columns:1fr}.sp-360-hero{gap:10px}}
/* v4.4.13 — Employee lifecycle UX */
.sp-lifecycle{display:grid;gap:12px;margin-top:12px}
.sp-lifecycle-item{display:grid;grid-template-columns:12px 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--sp-border,#e3e7f1)}
.sp-lifecycle-dot{width:10px;height:10px;border-radius:50%;background:var(--sp-blue,#0012ff);margin-top:5px;box-shadow:0 0 0 4px rgba(0,18,255,.08)}
.sp-lifecycle-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.sp-lifecycle-meta span{font-size:11px;color:var(--sp-muted,#687286);text-transform:capitalize}
.sp-lifecycle-item p{margin:6px 0 8px;color:var(--sp-muted,#687286);line-height:1.5;white-space:pre-wrap}
@media(max-width:767px){.sp-lifecycle-meta{align-items:flex-start}.sp-lifecycle-item{padding:10px 0}.sp-360-details{grid-template-columns:1fr!important}}

/* v4.4.14 — Employee onboarding/offboarding workflow UX */
.sp-workflow-actions{display:flex;gap:8px;flex-wrap:wrap}.sp-workflow-actions .secondary{background:#eef1f5;color:#182033;border:1px solid #dfe4eb}.sp-workflows{display:grid;gap:12px;margin-top:12px}.sp-workflow-card{border:1px solid #e3e7f1;border-radius:12px;padding:14px;background:#fff}.sp-workflow-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sp-workflow-head>div{display:grid;gap:3px}.sp-workflow-head b{text-transform:capitalize;font-size:13px}.sp-workflow-head span{font-size:10px;color:#687286;text-transform:capitalize}.sp-workflow-head strong{font-size:12px;color:#182033}.sp-workflow-progress{height:5px;background:#eef1f5;border-radius:99px;overflow:hidden;margin:11px 0}.sp-workflow-progress i{display:block;height:100%;background:#0012ff;border-radius:inherit}.sp-workflow-list{display:grid;gap:2px}.sp-workflow-item{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:8px;padding:9px 7px;border-radius:8px;font-size:12px;cursor:pointer}.sp-workflow-item:hover{background:#f7f8fa}.sp-workflow-item.done span{text-decoration:line-through;color:#7a8494}.sp-workflow-item input{width:16px;height:16px;margin:0}.sp-workflow-item em{font-size:9px;color:#8a94a5;font-style:normal}.sp-workflow-complete{display:inline-block;margin-top:9px;color:#18794e;font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:600px){.sp-workflow-actions{width:100%}.sp-workflow-actions button{flex:1;min-width:140px}.sp-workflow-card{padding:12px}.sp-workflow-item{grid-template-columns:20px minmax(0,1fr) auto;padding:10px 5px}}

/* v4.4.15 — Employee Documents & Compliance */
.sp-document-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.sp-document-kpis article{padding:18px;border:1px solid var(--line,#e5e7eb);border-radius:16px;background:var(--surface,#fff);min-width:0}
.sp-document-kpis small,.sp-document-track-card small{display:block;color:var(--muted,#6b7280);font-size:12px}
.sp-document-kpis b{display:block;font-size:28px;line-height:1.1;margin:7px 0}
.sp-document-kpis span{font-size:12px;color:var(--muted,#6b7280)}
.sp-document-filters{display:flex;gap:8px;flex-wrap:wrap}
.sp-document-filters input{min-width:240px}
.sp-document-table{width:100%;border-collapse:collapse}
.sp-document-table th,.sp-document-table td{padding:13px 12px;border-bottom:1px solid var(--line,#e5e7eb);text-align:left;vertical-align:middle}
.sp-document-table th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#6b7280)}
.sp-document-table td small{display:block;color:var(--muted,#6b7280);margin-top:3px}
.sp-onboarding-docs{margin-top:18px}
.sp-document-tracker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sp-document-track-card{border:1px solid var(--line,#e5e7eb);border-radius:14px;padding:15px;background:var(--surface,#fff)}
.sp-document-track-card>div{display:flex;justify-content:space-between;gap:12px;align-items:center}
.sp-document-track-card strong{display:block;font-size:24px;margin-top:14px}
.sp-document-track-card span{font-size:12px;color:var(--muted,#6b7280)}
.sp-document-panel .sp-section-head{gap:16px}
.sp-form-wide small{display:block;color:var(--muted,#6b7280);margin-top:5px}
@media(max-width:900px){
 .sp-document-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sp-document-tracker{grid-template-columns:1fr 1fr}
 .sp-document-table{min-width:900px}
 .sp-document-panel .tablewrap{overflow-x:auto}
}
@media(max-width:600px){
 .sp-document-kpis{grid-template-columns:1fr 1fr;gap:9px}
 .sp-document-kpis article{padding:13px}
 .sp-document-kpis b{font-size:23px}
 .sp-document-filters{display:grid;grid-template-columns:1fr}
 .sp-document-filters input,.sp-document-filters select{width:100%;min-width:0}
 .sp-document-tracker{grid-template-columns:1fr}
 .sp-document-track-card{padding:13px}
}

/* v4.4.16 — Document requirements & compliance intelligence */
.sp-compliance-panel,.sp-compliance-rules{margin-top:18px}
.sp-compliance-panel .sp-document-table,.sp-compliance-rules .sp-document-table{min-width:980px}
.sp-compliance-panel .tablewrap,.sp-compliance-rules .tablewrap{overflow-x:auto}
.sp-compliance-panel .badge.active{background:#e8f7ee;color:#18794e}
.sp-compliance-panel .badge.warn{background:#fff4d6;color:#8a5a00}
.sp-compliance-rules .sp-row-actions{justify-content:flex-end}
@media(max-width:900px){.sp-compliance-panel .sp-document-table,.sp-compliance-rules .sp-document-table{min-width:900px}}
@media(max-width:600px){.sp-compliance-panel,.sp-compliance-rules{margin-top:12px}.sp-compliance-panel .sp-section-head,.sp-compliance-rules .sp-section-head{align-items:flex-start}.sp-compliance-panel .sp-section-head button,.sp-compliance-rules .sp-section-head button{width:100%}}
.sp-compliance-dashboard{margin-top:18px}.sp-compliance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.sp-compliance-kpis article{background:#fff;border:1px solid var(--sp-border);border-radius:14px;padding:14px;min-width:0}.sp-compliance-kpis small,.sp-compliance-kpis span{display:block;color:var(--sp-muted);font-size:11px}.sp-compliance-kpis b{display:block;font-size:25px;line-height:1.15;margin:5px 0}.sp-compliance-alerts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.sp-compliance-alert{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;padding:10px 12px;background:#fff;border:1px solid var(--sp-border);border-radius:12px;cursor:pointer}.sp-compliance-alert:hover{border-color:#cbd5e1;box-shadow:0 3px 12px rgba(16,24,40,.05)}.sp-compliance-avatar{width:34px;height:34px;border-radius:10px;background:#eef1f5;display:grid;place-items:center;font-weight:800}.sp-compliance-alert span:nth-child(2){min-width:0}.sp-compliance-alert b,.sp-compliance-alert small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-compliance-alert small{color:var(--sp-muted);margin-top:2px}.sp-compliance-alert em{font-style:normal;white-space:nowrap}.sp-compliance-clear{padding:18px;border:1px dashed var(--sp-border);border-radius:12px;background:#fff}.sp-compliance-clear b,.sp-compliance-clear span{display:block}.sp-compliance-clear span{margin-top:4px;color:var(--sp-muted);font-size:13px}@media(max-width:900px){.sp-compliance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-compliance-alerts{grid-template-columns:1fr}}@media(max-width:520px){.sp-compliance-kpis{grid-template-columns:1fr}.sp-compliance-alert{grid-template-columns:34px minmax(0,1fr)}}

/* v4.4.19 — Compliance actions & audit trail */
.sp-compliance-actions-panel,.sp-compliance-audit-panel{margin-top:18px}.sp-compliance-action-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.sp-compliance-action-kpis article{background:#fff;border:1px solid var(--sp-border);border-radius:14px;padding:14px}.sp-compliance-action-kpis small,.sp-compliance-action-kpis span{display:block;color:var(--sp-muted);font-size:11px}.sp-compliance-action-kpis b{display:block;font-size:25px;line-height:1.15;margin:5px 0}.sp-due-overdue{font-weight:700}.sp-compliance-actions-panel .sp-document-table,.sp-compliance-audit-panel .sp-document-table{min-width:900px}.sp-compliance-actions-panel .tablewrap,.sp-compliance-audit-panel .tablewrap{overflow-x:auto}@media(max-width:900px){.sp-compliance-action-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.sp-compliance-action-kpis{grid-template-columns:1fr}.sp-compliance-actions-panel .sp-section-head{align-items:flex-start}.sp-compliance-actions-panel .sp-section-head button{width:auto}}

.sp-rejection-reason{display:block;max-width:240px;margin-top:4px;color:#b42318;white-space:normal}.sp-compliance-verification-panel .sp-compliance-alert{align-items:center}.sp-compliance-verification-panel .sp-row-actions{margin-left:auto}

/* v4.4.22 — employee compliance self-service */
.sp-self-compliance-panel{margin-top:18px}.sp-self-compliance-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.sp-self-stat{background:#fff;border:1px solid var(--sp-border);border-radius:14px;padding:14px}.sp-self-stat small,.sp-self-stat span{display:block;color:var(--sp-muted);font-size:11px}.sp-self-stat b{display:block;font-size:25px;line-height:1.15;margin:5px 0}.sp-self-compliance-docs{margin-top:12px}.sp-self-compliance-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sp-self-compliance-grid>div{border:1px solid var(--sp-border);border-radius:14px;background:#fff;padding:14px}.sp-self-compliance-grid h3{margin:0 0 10px;font-size:15px}.sp-self-requirement,.sp-self-doc{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:11px 0;border-top:1px solid var(--sp-border)}.sp-self-requirement:first-of-type,.sp-self-doc:first-of-type{border-top:0}.sp-self-requirement b,.sp-self-doc b,.sp-self-requirement small,.sp-self-doc small{display:block}.sp-self-requirement small,.sp-self-doc small{color:var(--sp-muted);margin-top:3px}.sp-self-doc .h44-mini{justify-self:end}.sp-self-compliance-grid .sp-rejection-reason{grid-column:1/-1;max-width:none}
@media(max-width:900px){.sp-self-compliance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-self-compliance-grid{grid-template-columns:1fr}}
@media(max-width:520px){.sp-self-compliance-summary{grid-template-columns:1fr 1fr}.sp-self-compliance-grid>div{padding:12px}.sp-self-compliance-panel .sp-section-head{align-items:flex-start;gap:10px}.sp-self-compliance-panel .sp-section-head button{width:100%}}

/* v4.4.23 — document version history */
.sp-version-history{display:grid;gap:16px}.sp-version-compare{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;padding:14px;border:1px solid var(--line,#e6e8ec);border-radius:14px;background:var(--soft,#f7f8fa)}.sp-version-compare>div:not(.sp-version-arrow){display:grid;gap:4px}.sp-version-compare small,.sp-version-item small{color:var(--muted,#6b7280)}.sp-version-compare em{font-style:normal;font-size:12px}.sp-version-arrow{font-size:20px;color:var(--muted,#6b7280)}.sp-version-list{display:grid;gap:8px;max-height:52vh;overflow:auto}.sp-version-item{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line,#e6e8ec);border-radius:12px}.sp-version-item.current{box-shadow:0 0 0 2px rgba(0,0,0,.05)}.sp-version-number{display:grid;gap:5px}.sp-version-main{display:grid;gap:3px;min-width:0}.sp-version-main b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-version-meta{display:flex;align-items:center;gap:8px}.sp-version-meta>span{font-size:12px;color:var(--muted,#6b7280)}@media(max-width:720px){.sp-version-compare{grid-template-columns:1fr}.sp-version-arrow{display:none}.sp-version-item{grid-template-columns:1fr}.sp-version-meta{justify-content:space-between}}

/* v4.4.24 compliance reporting */
.sp-report-filters{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.sp-report-filters input{min-width:220px;flex:1}.sp-report-filters select{min-width:170px}.sp-report-note{font-size:12px;margin-top:12px}@media print{body *{visibility:hidden!important}.sp-compliance-report-panel,.sp-compliance-report-panel *{visibility:visible!important}.sp-compliance-report-panel{position:absolute;inset:0;width:100%;box-shadow:none!important;border:0!important}.sp-compliance-report-panel button,.sp-report-filters,.sp-report-note{display:none!important}.sp-compliance-report-panel .tablewrap{overflow:visible!important}.sp-compliance-report-panel table{width:100%;font-size:10px}.sp-compliance-report-panel tr{break-inside:avoid}}
/* v4.4.27 — governance dashboard */
.sp-governance-dashboard{margin-top:18px}.sp-governance-dashboard .tablewrap{overflow-x:auto}.sp-governance-dashboard td small{display:block}.sp-governance-dashboard .badge{white-space:nowrap}
.sp-risk-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.sp-risk-grid>section{min-width:0}.sp-risk-grid h3{margin:0 0 10px}.sp-risk-panel small{display:block}.sp-risk-panel .sp-document-table td small{display:block;margin-top:3px}@media(max-width:900px){.sp-risk-grid{grid-template-columns:1fr}}
/* v4.4.30 — compliance risk analytics & trends */
.sp-risk-analytics-panel{margin-top:18px}.sp-risk-analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.sp-risk-analytics-grid>section{min-width:0}.sp-risk-analytics-grid h4{margin:0 0 10px}.sp-risk-trend-chart{display:grid;gap:6px;max-height:330px;overflow:auto;padding:2px}.sp-risk-trend-row{display:grid;grid-template-columns:88px minmax(0,1fr) 55px;gap:8px;align-items:center;font-size:11px}.sp-risk-trend-row>span{color:var(--sp-muted)}.sp-risk-trend-bar{height:10px;border-radius:999px;background:#eef1f5;overflow:hidden}.sp-risk-trend-bar i{display:block;height:100%;border-radius:999px;background:#64748b}.sp-risk-trend-row>b{text-align:right}.sp-risk-employee-trends{display:grid;gap:9px}.sp-risk-employee-trend{display:grid;grid-template-columns:145px minmax(0,1fr);gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--sp-border)}.sp-risk-employee-trend:last-child{border-bottom:0}.sp-risk-employee-trend b,.sp-risk-employee-trend small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-risk-employee-trend small{color:var(--sp-muted);margin-top:2px}.sp-risk-spark{height:34px;display:flex;align-items:flex-end;gap:2px;overflow:hidden}.sp-risk-spark i{display:block;flex:1;min-width:3px;border-radius:2px 2px 0 0;background:#94a3b8}.sp-risk-analytics-panel .sp-section-head select{min-width:120px}.sp-risk-analytics-panel .sp-document-table{min-width:520px}.sp-risk-analytics-panel .tablewrap{overflow-x:auto}
@media(max-width:900px){.sp-risk-analytics-grid{grid-template-columns:1fr}.sp-risk-employee-trend{grid-template-columns:130px minmax(0,1fr)}}
@media(max-width:600px){.sp-risk-trend-row{grid-template-columns:72px minmax(0,1fr) 42px}.sp-risk-employee-trend{grid-template-columns:1fr}.sp-risk-analytics-panel .sp-section-head{align-items:flex-start}.sp-risk-analytics-panel .sp-row-actions{width:100%}.sp-risk-analytics-panel .sp-row-actions select,.sp-risk-analytics-panel .sp-row-actions button{flex:1}}
