
@media print{.sidebar,.top,.foot,.reportnav,form,.btn,button,.nav-tools{display:none!important}.main{margin:0!important;padding:0!important}.card,.tablewrap,.voucher{box-shadow:none!important;border:1px solid #ddd!important;break-inside:avoid}body{background:#fff!important}.print-title{display:block!important}} 
.print-title{display:none}.badge{display:inline-block;padding:3px 8px;border-radius:999px;background:#eef2ff;font-size:11px;white-space:nowrap}.badge.warn{background:#fff3cd}.badge.ok{background:#d1e7dd}.badge.bad{background:#f8d7da}
:root{--iwp-primary:#123c69;--iwp-sidebar:#0f2742;--iwp-sidebar2:#17385a;--iwp-line:#e5e7eb;--iwp-soft:#f8fafc;--iwp-muted:#64748b}
body{font-size:13px;line-height:1.35;background:#f4f7fb} .sidebar{width:235px;background:linear-gradient(180deg,#0f2742,#102d4f);box-shadow:6px 0 22px rgba(15,39,66,.12)} .main{margin-left:235px;padding:14px 16px;max-width:none}.brand{padding:12px 14px;gap:10px;position:sticky;top:0;z-index:3;background:rgba(15,39,66,.96);backdrop-filter:blur(8px)}.brand .logo{width:34px;height:34px;border-radius:10px;font-size:13px}.brand b{font-size:13px;line-height:1.15}.brand small{font-size:10px;color:#cbd5e1}.top{margin-bottom:12px;gap:12px}.top h1{font-size:20px;line-height:1.15}.userbox{padding:7px 10px;border-radius:12px;font-size:12px}.card{padding:12px;margin-bottom:12px;border-radius:14px;box-shadow:0 6px 20px rgba(16,24,40,.035)}.card h3{margin-top:0;margin-bottom:9px}.grid{gap:10px}.kpis{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.kpis .card span{font-size:11px}.kpis .card strong{font-size:22px;margin-top:4px}.formgrid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:9px}label{gap:4px;font-size:12px}input,select,textarea{border-radius:9px;padding:7px 9px;font-size:12px}button,.btn{border-radius:9px;padding:7px 10px;font-size:12px}.reportnav{gap:7px}.reportnav a:not(.btn){padding:6px 8px;border-radius:8px;font-size:12px}th,td{padding:7px 8px;font-size:12px;vertical-align:top}th{position:sticky;top:0;z-index:1}.tablewrap{border:1px solid var(--iwp-line);border-radius:12px;background:#fff}.alert{padding:9px 11px;border-radius:11px;margin-bottom:10px}.pill{font-size:11px;padding:3px 7px}.foot{margin-top:12px;font-size:11px}.two{gap:10px}
.sidebar nav{padding:8px 8px 14px}.nav-tools{padding:8px 10px 4px}.nav-search{width:100%;padding:7px 9px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(255,255,255,.09);color:#fff;outline:none;font-size:12px}.nav-search::placeholder{color:#bdd0e3}.nav-section{margin:6px 0;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.035);overflow:hidden}.nav-section[open]{background:rgba(255,255,255,.06)}.nav-section summary{list-style:none;cursor:pointer;padding:8px 10px;color:#dbeafe;font-size:11px;text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;justify-content:space-between;gap:8px}.nav-section summary::-webkit-details-marker{display:none}.nav-section summary .left{display:flex;align-items:center;gap:7px}.nav-section summary .chev{transition:transform .18s ease;color:#9fb7d3}.nav-section[open] summary .chev{transform:rotate(90deg)}.nav-section a{display:block;color:#eef4ff;padding:7px 10px 7px 28px;border-left:3px solid transparent;border-radius:0;font-size:12px;line-height:1.25}.nav-section a.active{background:rgba(255,255,255,.14);border-left-color:#fff;font-weight:700}.nav-section a:hover{background:rgba(255,255,255,.09)}.active-dot{width:7px;height:7px;border-radius:999px;background:#22c55e;display:inline-block;box-shadow:0 0 0 3px rgba(34,197,94,.16)}.nav-count{font-size:10px;color:#cbd5e1;background:rgba(255,255,255,.1);padding:1px 6px;border-radius:99px}.nav-hidden{display:none!important}.compact-note{font-size:11px;color:#8ca6c2;padding:2px 10px 6px}

.page-hero{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;margin-bottom:12px;border-radius:16px;background:linear-gradient(135deg,#ffffff,#eef6ff);border:1px solid #dbeafe;box-shadow:0 8px 24px rgba(15,39,66,.04)}.page-hero h2{margin:2px 0 0;font-size:18px}.page-hero p{margin:4px 0 0;color:#64748b}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#2563eb;font-size:10px;font-weight:800}.action-preview{border:1px dashed #93c5fd;background:#f8fbff;border-radius:14px;padding:12px;margin:10px 0}.softbar{height:8px;background:#e2e8f0;border-radius:99px;overflow:hidden}.softbar span{display:block;height:100%;background:linear-gradient(90deg,#123c69,#60a5fa)}.metric-mini{display:flex;align-items:center;justify-content:space-between;border:1px solid #e5e7eb;border-radius:12px;padding:8px 10px;background:#fff}.print-brand{display:none}@media print{.print-brand{display:block;text-align:center;margin-bottom:10px}.page-hero{box-shadow:none;border:0;background:white;padding:0}.page-hero .btn{display:none}.badge{border:1px solid #ddd}.tablewrap{overflow:visible}}

@media(max-width:860px){.sidebar{position:static;width:auto}.main{margin-left:0;padding:10px}.two{grid-template-columns:1fr}.top{display:block}.userbox{margin-top:8px}.nav-section:not([open]){display:block}}


/* =========================================================
   Investa Workforce Pro — Universal UI System v1.1W
   Purpose: visual/customization layer separated from PHP logic.
   Edit this file for colors, spacing, compactness and UI style.
   ========================================================= */
:root{
  --iwp-bg:#f3f6fb;
  --iwp-surface:#ffffff;
  --iwp-surface-2:#f8fbff;
  --iwp-primary:#0f3a64;
  --iwp-primary-2:#15558a;
  --iwp-accent:#2f80ed;
  --iwp-success:#16a34a;
  --iwp-warning:#d97706;
  --iwp-danger:#dc2626;
  --iwp-info:#0284c7;
  --iwp-text:#0f172a;
  --iwp-text-2:#475569;
  --iwp-muted:#64748b;
  --iwp-border:#dbe3ef;
  --iwp-shadow:0 10px 28px rgba(15,23,42,.07);
  --iwp-shadow-soft:0 5px 18px rgba(15,23,42,.045);
  --iwp-radius:14px;
  --iwp-radius-sm:10px;
  --iwp-sidebar-w:226px;
  --iwp-compact-font:12.5px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{color:var(--iwp-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:var(--iwp-compact-font);background:radial-gradient(circle at top left,#eaf4ff 0,#f4f7fb 34%,#eef3f9 100%);}
a{color:var(--iwp-primary-2);text-decoration:none}a:hover{text-decoration:none;color:var(--iwp-accent)}
.sidebar{width:var(--iwp-sidebar-w)!important;background:linear-gradient(180deg,#0b2139 0%,#0f3154 54%,#10243b 100%)!important;border-right:1px solid rgba(255,255,255,.08)}
.main{margin-left:var(--iwp-sidebar-w)!important;padding:12px 14px!important}
.brand{border-bottom:1px solid rgba(255,255,255,.08)}.brand .logo{background:linear-gradient(135deg,#3b82f6,#0f3a64)!important;box-shadow:0 10px 24px rgba(59,130,246,.22)}
.nav-section{border-color:rgba(219,234,254,.1)!important}.nav-section a{transition:background .15s ease,border .15s ease,transform .15s ease}.nav-section a:hover{transform:translateX(1px)}.nav-section a.active{background:linear-gradient(90deg,rgba(59,130,246,.30),rgba(255,255,255,.08))!important;border-left-color:#60a5fa!important;color:#fff!important}
.nav-search:focus{border-color:#60a5fa!important;box-shadow:0 0 0 3px rgba(96,165,250,.18)}
.top{position:sticky;top:0;z-index:9;background:rgba(244,247,251,.82);backdrop-filter:blur(10px);border:1px solid rgba(219,227,239,.75);border-radius:16px;padding:9px 12px;box-shadow:var(--iwp-shadow-soft)}
.top h1{font-weight:800;letter-spacing:-.02em}.userbox{background:#fff;border:1px solid var(--iwp-border);box-shadow:var(--iwp-shadow-soft)}
.page-hero{background:linear-gradient(135deg,#ffffff 0%,#f4f9ff 55%,#edf6ff 100%)!important;border-color:#cfe3ff!important;box-shadow:var(--iwp-shadow)!important}.page-hero h2{font-weight:850;letter-spacing:-.02em}.eyebrow{color:#1d4ed8!important}
.card,.tablewrap,.voucher{border:1px solid rgba(219,227,239,.95)!important;background:rgba(255,255,255,.94)!important;box-shadow:var(--iwp-shadow-soft)!important}.card{border-radius:var(--iwp-radius)!important}.card:hover{box-shadow:var(--iwp-shadow)!important}.card h3{font-size:15px;font-weight:800;letter-spacing:-.01em;color:#10243b}
.kpis .card{position:relative;overflow:hidden}.kpis .card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#2f80ed,#0f3a64)}.kpis .card strong{letter-spacing:-.04em;color:#0f2742}.kpis .card span{color:var(--iwp-muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}
button,.btn,input[type=submit],input[type=button]{border:0!important;background:linear-gradient(135deg,var(--iwp-primary),var(--iwp-primary-2));color:#fff!important;font-weight:700;box-shadow:0 4px 12px rgba(15,58,100,.16);transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.btn:hover,button:hover,input[type=submit]:hover,input[type=button]:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,58,100,.2);opacity:.96}.btn.secondary,button.secondary{background:#f8fafc!important;color:#0f172a!important;border:1px solid var(--iwp-border)!important}.btn.danger,button.danger{background:linear-gradient(135deg,#b91c1c,#ef4444)!important}.btn.ok,button.ok{background:linear-gradient(135deg,#15803d,#22c55e)!important}
input,select,textarea{border:1px solid var(--iwp-border)!important;background:#fff;color:var(--iwp-text);outline:none;transition:border .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{border-color:#60a5fa!important;box-shadow:0 0 0 3px rgba(96,165,250,.18)}label{color:#334155;font-weight:700}.formgrid{align-items:end}
.tablewrap{overflow:auto;max-width:100%;border-radius:14px!important}table{width:100%;border-collapse:separate;border-spacing:0}th{background:#f1f6fc!important;color:#263b53;font-size:11px;text-transform:uppercase;letter-spacing:.035em;border-bottom:1px solid var(--iwp-border)}td{border-bottom:1px solid #edf2f7}tbody tr:hover td{background:#f8fbff}.tablewrap tbody tr:last-child td{border-bottom:0}
.badge,.pill{font-weight:800}.badge.ok,.pill.ok{background:#dcfce7!important;color:#166534}.badge.warn,.pill.warn{background:#fef3c7!important;color:#92400e}.badge.bad,.pill.bad{background:#fee2e2!important;color:#991b1b}.badge.info,.pill.info{background:#dbeafe!important;color:#1e40af}
.alert{border:1px solid transparent;font-weight:700}.alert.success{background:#dcfce7;border-color:#bbf7d0;color:#166534}.alert.error{background:#fee2e2;border-color:#fecaca;color:#991b1b}.alert.warn{background:#fef3c7;border-color:#fde68a;color:#92400e}
.table-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px 0;padding:8px;border:1px solid var(--iwp-border);border-radius:12px;background:linear-gradient(135deg,#fff,#f8fbff)}.table-tools .left,.table-tools .right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.table-filter{min-width:220px;max-width:360px}.rows-info{font-size:11px;color:var(--iwp-muted);font-weight:700}.table-density{background:#fff!important;color:#0f172a!important;border:1px solid var(--iwp-border)!important;box-shadow:none!important}.is-dense th,.is-dense td{padding:5px 7px!important;font-size:11.5px!important}.empty-state{padding:20px;text-align:center;color:var(--iwp-muted);background:#f8fbff;border:1px dashed var(--iwp-border);border-radius:14px}
.reportnav{background:#fff;border:1px solid var(--iwp-border);padding:8px;border-radius:14px;box-shadow:var(--iwp-shadow-soft)}.reportnav a:not(.btn){background:#f8fafc;border:1px solid #e2e8f0;color:#334155;font-weight:700}.reportnav a:not(.btn):hover{background:#eef6ff;color:#0f3a64}
@media(max-width:860px){:root{--iwp-sidebar-w:100%}.main{margin-left:0!important}.top{position:static}.sidebar{position:relative!important;width:100%!important}.table-tools{align-items:stretch}.table-tools,.table-tools .left,.table-tools .right{flex-direction:column}.table-filter{width:100%;max-width:none}}
@media print{body{background:#fff!important;color:#000;font-size:11px}.top,.sidebar,.foot,.reportnav,form,.btn,button,.nav-tools,.table-tools{display:none!important}.main{margin:0!important;padding:0!important}.card,.tablewrap,.voucher{box-shadow:none!important;border:1px solid #ddd!important;background:#fff!important}.page-hero{border-bottom:2px solid #222!important;margin-bottom:10px!important}.print-brand{display:block!important}.tablewrap{overflow:visible!important}th{position:static!important;background:#f1f1f1!important;color:#000!important}}


/* =========================================================
   Investa Workforce Pro — Professional Compact UI v1.1W3
   Purpose: make dashboard and overall screens smaller, cleaner,
   more executive-friendly, while preserving all PHP/business logic.
   ========================================================= */
:root{
  --iwp-sidebar-w:214px;
  --iwp-compact-font:11.8px;
  --iwp-radius:11px;
  --iwp-radius-sm:8px;
  --iwp-shadow:0 8px 22px rgba(15,23,42,.055);
  --iwp-shadow-soft:0 4px 14px rgba(15,23,42,.035);
}
body{font-size:var(--iwp-compact-font)!important;line-height:1.28!important;background:linear-gradient(180deg,#f3f7fb 0%,#eef4fa 100%)!important;}
.sidebar{width:var(--iwp-sidebar-w)!important;box-shadow:5px 0 18px rgba(15,39,66,.10)!important;}
.main{margin-left:var(--iwp-sidebar-w)!important;padding:9px 11px!important;}
.brand{padding:9px 10px!important;gap:8px!important;}
.brand .logo{width:30px!important;height:30px!important;border-radius:9px!important;font-size:11px!important;}
.brand b{font-size:11.5px!important;line-height:1.08!important;}
.brand small{font-size:9px!important;}
.sidebar nav{padding:6px 6px 10px!important;}
.nav-tools{padding:6px 7px 3px!important;}
.nav-search{height:29px!important;padding:5px 8px!important;font-size:11px!important;border-radius:8px!important;}
.compact-note{font-size:9.5px!important;padding:2px 7px 4px!important;}
.nav-section{margin:4px 0!important;border-radius:9px!important;}
.nav-section summary{padding:6px 8px!important;font-size:9.6px!important;letter-spacing:.045em!important;}
.nav-section a{padding:5.5px 8px 5.5px 24px!important;font-size:11px!important;line-height:1.12!important;}
.active-dot{width:6px!important;height:6px!important;box-shadow:0 0 0 2px rgba(34,197,94,.16)!important;}
.top{padding:7px 9px!important;margin-bottom:8px!important;border-radius:12px!important;min-height:42px!important;}
.top h1{font-size:15px!important;line-height:1.05!important;margin:0!important;}
.top .muted{font-size:10.5px!important;}
.userbox{padding:5px 8px!important;border-radius:9px!important;font-size:10.8px!important;}
.page-hero{padding:9px 11px!important;margin-bottom:8px!important;border-radius:12px!important;}
.page-hero h2{font-size:14px!important;margin:1px 0 0!important;}
.page-hero p{font-size:10.8px!important;margin-top:2px!important;}
.eyebrow{font-size:8.8px!important;letter-spacing:.07em!important;}
.grid{gap:7px!important;}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
.kpis{grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;gap:7px!important;}
.card{padding:8px 9px!important;margin-bottom:8px!important;border-radius:11px!important;}
.card h3{font-size:12.5px!important;margin:0 0 6px!important;}
.card p{margin-top:4px!important;margin-bottom:6px!important;}
.kpis .card{min-height:70px!important;padding:8px 9px!important;}
.kpis .card:before{height:2px!important;}
.kpis .card span{font-size:9.2px!important;letter-spacing:.035em!important;}
.kpis .card strong{display:block!important;font-size:15.5px!important;line-height:1.1!important;margin:3px 0 1px!important;word-break:break-word!important;}
.kpis .card small{font-size:9.8px!important;line-height:1.15!important;}
.formgrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:6px!important;}
label{font-size:10.8px!important;gap:3px!important;}
input,select,textarea{padding:5.5px 7px!important;font-size:11px!important;border-radius:7px!important;min-height:29px!important;}
textarea{min-height:58px!important;}
button,.btn,input[type=submit],input[type=button]{padding:5.5px 8px!important;font-size:10.8px!important;border-radius:7px!important;box-shadow:0 3px 9px rgba(15,58,100,.12)!important;}
.reportnav{padding:6px!important;gap:5px!important;border-radius:10px!important;margin:6px 0!important;}
.reportnav a:not(.btn){padding:5px 7px!important;font-size:10.5px!important;border-radius:7px!important;}
.table-tools{padding:5px 6px!important;margin-bottom:5px!important;border-radius:9px!important;}
.table-filter{min-width:170px!important;height:28px!important;}
.rows-info{font-size:9.8px!important;}
.tablewrap{border-radius:10px!important;}
th,td{padding:4.8px 6px!important;font-size:10.8px!important;line-height:1.22!important;}
th{font-size:9.3px!important;letter-spacing:.03em!important;}
.badge,.pill{font-size:9.5px!important;padding:2px 5px!important;}
.alert{padding:7px 9px!important;border-radius:9px!important;margin-bottom:7px!important;font-size:11px!important;}
.metric-mini{padding:6px 8px!important;border-radius:9px!important;}
.softbar{height:6px!important;}
.voucher{padding:10px!important;border-radius:11px!important;}
.workerCheckList{max-height:210px!important;grid-template-columns:repeat(auto-fit,minmax(225px,1fr))!important;gap:5px!important;}
.workerCheckList label{font-size:10.5px!important;padding:4px!important;}
.foot{font-size:9.8px!important;margin-top:7px!important;}
body:has(.kpis) .card .tablewrap{max-height:280px;overflow:auto;}
body:has(.kpis) .grid.two .card{min-height:auto;}
body:has(.kpis) .table-tools{display:none;}
@media(min-width:1400px){
  :root{--iwp-sidebar-w:218px;--iwp-compact-font:11.8px;}
  .kpis{grid-template-columns:repeat(10,minmax(0,1fr))!important;}
}
@media(max-width:1100px){
  .grid.two{grid-template-columns:1fr!important;}
  .kpis{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important;}
}
@media(max-width:860px){
  :root{--iwp-sidebar-w:100%;--iwp-compact-font:12px;}
  .main{margin-left:0!important;padding:8px!important;}
  .top{position:static!important;}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .page-hero{display:block!important;}
}
@media print{
  body{font-size:10.5px!important;background:#fff!important;}
  .card{padding:6px!important;margin-bottom:6px!important;}
  th,td{padding:4px 5px!important;font-size:10px!important;}
}

/* V1.1W4 — Worker Picker Card & Form Layout Refinement */
.refinedPicker{
  border:1px solid var(--border, #d8dee8) !important;
  border-radius:16px !important;
  padding:12px !important;
  background:linear-gradient(180deg,#fbfdff,#f7faff) !important;
}
.pickerToolbar{
  display:flex;
  gap:8px;
  align-items:center;
  margin-bottom:10px;
  flex-wrap:wrap;
}
.pickerToolbar input{
  flex:1;
  min-width:280px;
}
.refinedWorkerGrid{
  max-height:300px !important;
  overflow:auto !important;
  border:1px solid #edf1f7 !important;
  border-radius:14px !important;
  background:#fff !important;
  padding:8px !important;
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr)) !important;
  gap:8px !important;
}
.refinedWorkerCard{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:9px 10px !important;
  border:1px solid #e8edf5 !important;
  border-radius:14px !important;
  background:#ffffff !important;
  cursor:pointer;
  min-height:74px;
  transition:box-shadow .16s ease, border-color .16s ease, transform .16s ease, background .16s ease;
}
.refinedWorkerCard:hover{
  border-color:#9bbce3 !important;
  background:#f8fbff !important;
  box-shadow:0 5px 15px rgba(18,62,107,.08);
  transform:translateY(-1px);
}
.refinedWorkerCard input[type="checkbox"]{
  width:19px !important;
  height:19px !important;
  min-width:19px !important;
  margin:2px 0 0 0 !important;
  accent-color:#164f86;
}
.workerCardBody{
  display:flex;
  flex-direction:column;
  gap:2px;
  line-height:1.22;
  min-width:0;
}
.workerCardBody strong{
  font-size:13px;
  font-weight:800;
  color:#1e2b3d;
  white-space:normal;
}
.workerCardBody small{
  font-size:11.5px;
  color:#56657a;
  font-weight:650;
}
.workerCardBody em{
  font-size:11.5px;
  color:#164f86;
  font-style:normal;
  font-weight:800;
}
.pickerHint{
  display:block;
  margin-top:8px;
  color:#5f6d82;
  line-height:1.35;
}
.refinedForm .formSection{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  padding:10px;
  border:1px solid #edf1f7;
  border-radius:14px;
  background:#fbfdff;
}
.refinedForm .formSection>b{
  grid-column:1/-1;
  color:#1f2d3f;
  font-size:13px;
  letter-spacing:.01em;
}
.readonlyInfo{
  background:#f5f8fc !important;
  border-color:#d8e2ef !important;
  color:#1f3d61 !important;
  font-weight:700 !important;
}
.selectedProjectContext{
  grid-column:1/-1;
  padding:8px 10px;
  border:1px solid #dce8f6;
  background:#f5faff;
  border-radius:12px;
  color:#254263;
  font-weight:700;
  font-size:12px;
}
@media (max-width: 760px){
  .pickerToolbar input{min-width:100%;}
  .refinedWorkerGrid{grid-template-columns:1fr !important;}
  .refinedForm .formSection{grid-template-columns:1fr;}
}

/* =========================================================
   V1.1W5 — Dashboard Professional Layout Refinement
   UI/UX only. No business logic affected.
   ========================================================= */
.main > .kpis,
.kpis{
  grid-template-columns:repeat(auto-fit,minmax(122px,1fr)) !important;
  gap:8px !important;
  margin-bottom:10px !important;
}
.kpis .card{
  position:relative;
  min-height:76px !important;
  padding:9px 10px 10px 11px !important;
  border-radius:12px !important;
  border:1px solid #dbe5f1 !important;
  border-top:3px solid #195e9f !important;
  box-shadow:0 4px 14px rgba(18,43,73,.045) !important;
  background:linear-gradient(180deg,#ffffff 0%,#f9fbfe 100%) !important;
  overflow:hidden;
}
.kpis .card:nth-child(6),
.kpis .card:nth-child(7),
.kpis .card:nth-child(8),
.kpis .card:nth-child(9),
.kpis .card:nth-child(10){
  border-top-color:#0f766e !important;
}
.kpis .card span{
  display:block;
  font-size:9.8px !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase;
  color:#52647b !important;
  min-height:22px;
}
.kpis .card strong{
  display:block;
  margin-top:2px;
  font-size:18px !important;
  line-height:1.05 !important;
  letter-spacing:-.035em;
  color:#172235 !important;
  font-weight:900 !important;
  font-variant-numeric:tabular-nums;
  word-break:break-word;
}
.kpis .card small{
  display:block;
  margin-top:3px;
  font-size:10.7px !important;
  line-height:1.15 !important;
  color:#69798c !important;
}
.grid.two{
  align-items:start !important;
  gap:10px !important;
}
.grid.two > .card{
  align-self:start !important;
}
.card h3{
  font-size:14px !important;
  letter-spacing:-.01em;
  color:#162437;
  margin-bottom:4px !important;
}
.card h3 + .muted{
  font-size:11.3px !important;
  margin-top:0 !important;
  margin-bottom:8px !important;
  line-height:1.28 !important;
}
.card table{
  border-radius:10px !important;
  overflow:hidden;
  border-collapse:separate !important;
  border-spacing:0 !important;
}
.card table th{
  background:#f1f5fb !important;
  color:#34435a !important;
  font-size:10px !important;
  letter-spacing:.045em;
  text-transform:uppercase;
  white-space:nowrap;
}
.card table td{
  font-size:11px !important;
  line-height:1.22 !important;
  vertical-align:middle !important;
}
.card table tr:hover td{
  background:#fbfdff !important;
}
.card table td:last-child,
.card table th:last-child{
  text-align:left;
}
.card table td:nth-child(n+2):not(:last-child){
  font-variant-numeric:tabular-nums;
}
.reportnav,
.card p:has(.btn){
  margin-top:7px !important;
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.reportnav .btn,
.card p .btn,
.reportnav button{
  min-height:26px !important;
  padding:6px 9px !important;
  font-size:10.8px !important;
  border-radius:8px !important;
}
/* Dashboard readability: prevent wide activity details from visually dominating */
.card table td:nth-child(4){
  max-width:420px;
}
.card table td:nth-child(4),
.card table td:nth-child(1){
  overflow-wrap:anywhere;
}
@media (min-width: 1500px){
  .kpis{grid-template-columns:repeat(10,minmax(112px,1fr)) !important;}
}
@media (max-width: 980px){
  .kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important;}
  .grid.two{grid-template-columns:1fr !important;}
}
@media print{
  .kpis .card{box-shadow:none !important; border:1px solid #cfd8e3 !important;}
  .grid.two{display:block !important;}
  .grid.two .card{break-inside:avoid; margin-bottom:10px;}
}


/* =========================================================
   V1.1W6 — Executive Dashboard Full Visual Rebuild
   Scope: Dashboard presentation only. No PHP business logic.
   ========================================================= */
.dash-page{display:flex;flex-direction:column;gap:10px}
.dash-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border-radius:16px;border:1px solid rgba(194,215,238,.95);background:linear-gradient(135deg,#ffffff 0%,#f5f9ff 58%,#eaf4ff 100%);box-shadow:0 10px 28px rgba(15,39,66,.055)}
.dash-hero h2{font-size:18px;line-height:1.05;margin:3px 0 0;font-weight:900;letter-spacing:-.025em;color:#10243b}.dash-hero p{margin:4px 0 0;color:#64748b;font-size:11.3px}.dash-eyebrow{font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:#2563eb}.dash-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.dash-actions .btn,.dash-actions button{white-space:nowrap}
.exec-kpi-row{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px}.exec-kpi{position:relative;min-height:82px;padding:9px 9px 8px;border:1px solid #d9e5f2;border-radius:14px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 6px 18px rgba(15,23,42,.045);overflow:hidden}.exec-kpi:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#2f80ed}.exec-kpi.kpi-green:before{background:#16a34a}.exec-kpi.kpi-amber:before{background:#d97706}.exec-kpi.kpi-red:before{background:#dc2626}.exec-kpi.kpi-blue:before{background:#2563eb}.kpi-top{display:flex;align-items:center;justify-content:space-between;gap:5px}.kpi-group{font-size:8.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#64748b}.kpi-icon{font-size:13px;line-height:1}.exec-kpi strong{display:block;font-size:17px;line-height:1.05;margin:5px 0 2px;font-weight:950;letter-spacing:-.04em;color:#0f2742;overflow-wrap:anywhere}.exec-kpi b{display:block;font-size:10.7px;line-height:1.1;color:#1e293b}.exec-kpi small{display:block;margin-top:2px;font-size:9.5px;line-height:1.12;color:#64748b}
.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dash-grid-main{grid-template-columns:1.05fr .95fr}.dash-card{border:1px solid rgba(211,224,238,.95);border-radius:15px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(15,23,42,.045);padding:0;overflow:hidden}.dash-card-focus{border-color:#bfdbfe;background:linear-gradient(180deg,#fff,#f8fbff)}.dash-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 12px 7px;border-bottom:1px solid #edf2f7;background:linear-gradient(180deg,#fff,#fbfdff)}.dash-card h3{margin:0!important;font-size:13px!important;line-height:1.1;font-weight:900;color:#10243b}.dash-card p{margin:3px 0 0!important;font-size:10.5px!important;line-height:1.22;color:#64748b}.dash-card .tablewrap{border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}.dash-card table{margin:0}.dash-card th{background:#f3f7fc!important;font-size:9px!important;color:#334155}.dash-card td{font-size:10.4px!important;padding:4.5px 7px!important}.dash-card tbody tr:nth-child(even) td{background:#fbfdff}.dash-tag{display:inline-flex;align-items:center;justify-content:center;height:20px;padding:0 8px;border-radius:999px;font-size:8.8px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;white-space:nowrap}.dash-tag.warn{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.dash-tag.info{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.dash-tag.ok{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}.dash-tag.danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.dash-button-row{display:flex;gap:6px;flex-wrap:wrap;padding:8px 10px;border-top:1px solid #edf2f7;background:#fbfdff}.dash-button-row .btn,.dash-button-row button{padding:5px 8px!important;font-size:10px!important;border-radius:8px!important}
body:has(.dash-page) .top{margin-bottom:8px!important}body:has(.dash-page) .card{box-shadow:0 8px 24px rgba(15,23,42,.045)}body:has(.dash-page) .table-tools{display:none!important}body:has(.dash-page) .foot{margin-top:8px!important}
@media(max-width:1450px){.exec-kpi-row{grid-template-columns:repeat(5,minmax(0,1fr))}.exec-kpi{min-height:76px}.dash-grid,.dash-grid-main{grid-template-columns:1fr 1fr}}
@media(max-width:980px){.exec-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid,.dash-grid-main{grid-template-columns:1fr}.dash-hero{display:block}.dash-actions{justify-content:flex-start;margin-top:8px}}
@media print{.dash-hero{box-shadow:none;border:0;background:#fff;padding:0;margin-bottom:8px}.dash-actions{display:none}.exec-kpi-row{grid-template-columns:repeat(5,1fr);gap:5px}.exec-kpi{box-shadow:none;border:1px solid #ddd;min-height:58px;padding:5px}.exec-kpi strong{font-size:12px}.exec-kpi b,.exec-kpi small,.kpi-group{font-size:8px}.dash-grid,.dash-grid-main{grid-template-columns:1fr;gap:6px}.dash-card{box-shadow:none;border:1px solid #ddd}.dash-card-head{padding:5px}.dash-button-row{display:none}.dash-card td,.dash-card th{font-size:8.5px!important;padding:3px!important}}

/* =========================================================
   V1.1W7 — Premium Sidebar Navigation Refinement
   UI/CSS-only: improves left panel appearance without touching logic.
   ========================================================= */
.sidebar{
  background:
    radial-gradient(circle at 20% 0%, rgba(72,149,239,.25) 0%, rgba(72,149,239,0) 28%),
    linear-gradient(180deg,#071b31 0%, #0b2a49 48%, #071f38 100%) !important;
  border-right:1px solid rgba(148,163,184,.22) !important;
  box-shadow:10px 0 30px rgba(2,8,23,.18) !important;
}
.brand{
  min-height:52px !important;
  padding:10px 11px !important;
  border-bottom:1px solid rgba(148,163,184,.18) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.015)) !important;
}
.brand .logo{
  background:linear-gradient(135deg,#2f80ed 0%,#15508b 58%,#0a2c4f 100%) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 12px 28px rgba(37,99,235,.28), inset 0 1px 0 rgba(255,255,255,.22) !important;
  color:#eaf4ff !important;
  font-weight:900 !important;
}
.brand b{
  color:#f8fbff !important;
  font-weight:850 !important;
  letter-spacing:.01em !important;
}
.brand small{
  color:#afc5dc !important;
  font-weight:650 !important;
}
.nav-tools{
  padding:9px 10px 6px !important;
  border-bottom:1px solid rgba(148,163,184,.08) !important;
  margin-bottom:5px !important;
}
.nav-search{
  background:rgba(255,255,255,.075) !important;
  border:1px solid rgba(191,219,254,.32) !important;
  color:#fff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease !important;
}
.nav-search:focus{
  background:rgba(255,255,255,.12) !important;
  border-color:#93c5fd !important;
  box-shadow:0 0 0 3px rgba(96,165,250,.18), inset 0 1px 0 rgba(255,255,255,.1) !important;
}
.compact-note{
  color:#8fb1d3 !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  font-weight:800 !important;
  font-size:8.8px !important;
  padding:5px 2px 0 !important;
}
.sidebar nav{
  padding:7px 7px 12px !important;
}
.nav-section{
  margin:5px 0 !important;
  border:1px solid rgba(191,219,254,.13) !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05) !important;
  overflow:hidden !important;
}
.nav-section[open]{
  background:linear-gradient(180deg,rgba(37,99,235,.18),rgba(255,255,255,.035)) !important;
  border-color:rgba(147,197,253,.24) !important;
}
.nav-section summary{
  min-height:31px !important;
  padding:7px 9px !important;
  color:#dcecff !important;
  font-weight:850 !important;
  letter-spacing:.055em !important;
  border-radius:12px !important;
  position:relative !important;
}
.nav-section summary .left{
  gap:8px !important;
  min-width:0 !important;
}
.nav-section summary .left span:last-child{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.nav-section summary:hover{
  background:rgba(255,255,255,.07) !important;
}
.nav-section summary .chev{
  width:18px !important;
  height:18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.07) !important;
  color:#c7dcf4 !important;
  font-size:14px !important;
}
.nav-section[open] summary .chev{
  background:rgba(96,165,250,.22) !important;
  color:#fff !important;
}
.active-dot{
  width:7px !important;
  height:7px !important;
  background:#22c55e !important;
  box-shadow:0 0 0 3px rgba(34,197,94,.15),0 0 12px rgba(34,197,94,.55) !important;
}
.nav-section a{
  margin:2px 7px !important;
  padding:7px 8px 7px 25px !important;
  border-left:0 !important;
  border-radius:10px !important;
  color:#dbeafe !important;
  font-weight:700 !important;
  position:relative !important;
  transition:background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease !important;
}
.nav-section a:before{
  content:"";
  position:absolute;
  left:12px;
  top:50%;
  width:4px;
  height:4px;
  border-radius:999px;
  background:rgba(191,219,254,.62);
  transform:translateY(-50%);
}
.nav-section a:hover{
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  transform:translateX(2px) !important;
}
.nav-section a.active{
  background:linear-gradient(90deg,#2f80ed 0%,rgba(47,128,237,.58) 58%,rgba(255,255,255,.08) 100%) !important;
  color:#fff !important;
  box-shadow:0 7px 18px rgba(15,78,140,.22), inset 0 1px 0 rgba(255,255,255,.16) !important;
  font-weight:900 !important;
}
.nav-section a.active:before{
  width:5px;
  height:5px;
  background:#fff;
  box-shadow:0 0 10px rgba(255,255,255,.65);
}
.nav-section a.active:after{
  content:"";
  position:absolute;
  right:8px;
  top:50%;
  width:5px;
  height:18px;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  transform:translateY(-50%);
}
.nav-section:not([open]) summary .active-dot{display:none!important;}
.nav-hidden{display:none!important;}
@media(max-width:860px){
  .sidebar{box-shadow:none!important;border-right:0!important;border-bottom:1px solid rgba(148,163,184,.25)!important;}
  .brand{position:relative!important;}
  .nav-section a.active:after{display:none!important;}
}

/* V1.1W8 — Workers Page Professional Layout */
.pageHero.compactHero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin-bottom:12px;background:linear-gradient(135deg,#ffffff 0%,#f7fbff 100%);border:1px solid rgba(30,64,104,.12);border-radius:18px;box-shadow:0 10px 28px rgba(16,38,72,.07)}
.pageHero .eyebrow{display:block;font-size:10px;letter-spacing:.12em;font-weight:800;color:#1d66c1;text-transform:uppercase;margin-bottom:4px}
.pageHero h2{font-size:20px;margin:0 0 3px;color:#12223a}
.pageHero p{font-size:12px;color:#64748b;margin:0;max-width:780px}
.heroActions{display:flex;align-items:center;gap:8px;white-space:nowrap}
.workerSummaryGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;margin-bottom:12px}
.miniKpi{padding:11px 12px;border-radius:15px;border:1px solid rgba(148,163,184,.28);background:#fff;box-shadow:0 6px 18px rgba(15,23,42,.045)}
.miniKpi small{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800;color:#64748b;line-height:1.15}
.miniKpi strong{display:block;margin-top:4px;font-size:19px;line-height:1;font-weight:900;color:#0f172a}
.miniKpi.tone-blue{border-top:3px solid #2563eb}.miniKpi.tone-green{border-top:3px solid #16a34a}.miniKpi.tone-red{border-top:3px solid #dc2626}.miniKpi.tone-amber{border-top:3px solid #d97706}.miniKpi.tone-gray{border-top:3px solid #64748b}
.collapsibleForm{padding:0;overflow:hidden}.collapsibleForm summary{cursor:pointer;list-style:none;padding:13px 16px;font-weight:900;color:#0f172a;border-bottom:1px solid rgba(148,163,184,.22);background:linear-gradient(180deg,#fff,#f8fbff)}
.collapsibleForm summary::-webkit-details-marker{display:none}.collapsibleForm summary:before{content:'+';display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:7px;background:#eaf3ff;color:#174f89;font-weight:900}.collapsibleForm[open] summary:before{content:'–'}
.professionalForm{padding:14px 16px}.smallNote{font-size:12px;margin:0 16px 14px}.listControlCard{padding:13px 14px}.sectionTitle{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:10px}.sectionTitle h3{margin:0;font-size:16px}.sectionTitle p{margin:3px 0 0;color:#64748b;font-size:12px}.tableActions{display:flex;gap:7px;align-items:center}.filterGrid{display:grid;grid-template-columns:1.5fr repeat(6,minmax(120px,1fr)) auto auto;gap:8px;align-items:end;margin-bottom:10px;padding:10px;border:1px solid rgba(148,163,184,.25);border-radius:14px;background:#f8fbff}.filterGrid label{font-size:11px;font-weight:800;color:#334155}.filterGrid input,.filterGrid select{margin-top:4px;height:34px;font-size:12px}.professionalTable table{font-size:11.5px}.professionalTable th{position:sticky;top:0;z-index:2;background:#eef5ff!important;color:#1e3a5f!important;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.workersTable td{vertical-align:middle}.workersTable tr:hover td{background:#f8fbff}.statusBadge{display:inline-flex;align-items:center;justify-content:center;min-width:68px;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap;border:1px solid transparent}.st-active{background:#eafaf0;color:#166534;border-color:#bbf7d0}.st-inactive{background:#f1f5f9;color:#475569;border-color:#cbd5e1}.st-blacklisted{background:#fee2e2;color:#991b1b;border-color:#fecaca}.doc-submitted{background:#e0f2fe;color:#075985;border-color:#bae6fd}.doc-partially-submitted{background:#fef3c7;color:#92400e;border-color:#fde68a}.doc-not-submitted{background:#f1f5f9;color:#475569;border-color:#cbd5e1}.rowActions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;white-space:nowrap}.rowActions a,.miniAction{display:inline-flex;align-items:center;min-height:24px;padding:3px 7px;border-radius:8px;background:#eef5ff;color:#174f89!important;text-decoration:none!important;font-size:10px;font-weight:900}.rowActions a:hover,.miniAction:hover{background:#dbeafe}.rowActions .muted{font-size:10px;padding:3px 6px;border-radius:8px;background:#f1f5f9;color:#64748b!important}
@media(max-width:1400px){.workerSummaryGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.filterGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.heroActions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:800px){.pageHero.compactHero,.sectionTitle{flex-direction:column;align-items:stretch}.workerSummaryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.filterGrid{grid-template-columns:1fr}.tableActions,.heroActions{justify-content:flex-start}}

/* V1.1W9 — Clients page professional layout refinements */
.clientSummaryGrid{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:10px}
.clientsTable td{vertical-align:middle}
.clientsTable tr:hover td{background:#f8fbff}
.statusBadge.st-used{background:#fff7ed;color:#9a3412;border-color:#fed7aa;min-width:auto}
.statusBadge.pay-term{background:#eef5ff;color:#174f89;border-color:#dbeafe;min-width:auto}
@media(max-width:1400px){.clientSummaryGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.clientSummaryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V1.1W11 Trades/Skills professional layout helpers */
.summaryCards.compactSummary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:12px}.summaryCards .miniStat{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(148,163,184,.28);border-radius:14px;padding:10px 12px;box-shadow:0 8px 20px rgba(15,39,66,.04)}.summaryCards .miniStat span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:900}.summaryCards .miniStat strong{display:block;margin-top:4px;font-size:20px;color:#0f172a;line-height:1}.formDrawer{padding:0;overflow:hidden}.formDrawer>summary{cursor:pointer;list-style:none;padding:12px 14px;font-size:14px;font-weight:950;color:#0f172a;border-bottom:1px solid rgba(148,163,184,.18);background:linear-gradient(90deg,#fff,#f8fbff)}.formDrawer>summary::-webkit-details-marker{display:none}.formDrawer form{padding:12px 14px}.tableCard{padding:0;overflow:hidden}.tableHead{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid rgba(148,163,184,.22);background:linear-gradient(90deg,#fff,#f8fbff)}.tableHead p{margin:3px 0 0;font-size:11px}.miniAction.disabled{background:#f1f5f9!important;color:#64748b!important;cursor:not-allowed}.miniAction.dangerText{background:#fff1f2!important;color:#be123c!important}.badge.neutral,.badge.mutedBadge{background:#f1f5f9!important;color:#475569!important}.tablewrap td strong{font-weight:900;color:#0f172a}@media(max-width:1200px){.summaryCards.compactSummary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.summaryCards.compactSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.tableHead{flex-direction:column;align-items:flex-start}}

/* V1.1W12 Client Demands professional layout helpers */
.progressTiny{height:7px;width:76px;background:#e5edf6;border-radius:999px;overflow:hidden;display:inline-block;vertical-align:middle;margin-right:6px;border:1px solid rgba(148,163,184,.24)}
.progressTiny span{display:block;height:100%;background:linear-gradient(90deg,#0f6fb7,#19a3a3);border-radius:999px}
.btn.tiny{padding:4px 8px;font-size:11px;line-height:1;border-radius:8px;margin:1px;display:inline-block;text-decoration:none;white-space:nowrap}
.btn.dangerSoft{background:#fff1f2!important;color:#be123c!important;border:1px solid rgba(244,63,94,.24)!important;box-shadow:none!important}
.badge.bad{background:#fee2e2!important;color:#991b1b!important;border-color:#fecaca!important}
.badge.locked{background:#f1f5f9!important;color:#64748b!important;border-color:#cbd5e1!important}

/* V1.1W13 Deployments professional layout */
.deploymentSummary{grid-template-columns:repeat(8,minmax(0,1fr))!important}.deployDrawer>summary{background:linear-gradient(90deg,#ffffff,#f3f8ff)!important}.deployForm{gap:10px!important}.deployStep{border:1px solid rgba(148,163,184,.22);border-radius:14px;background:#fbfdff;padding:10px 12px!important}.deployStep>b{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:#0f172a}.deployStep>b span{display:inline-grid;place-items:center;min-width:48px;height:20px;border-radius:999px;background:#dbeafe;color:#1e40af;font-size:10px;font-weight:950;text-transform:uppercase}.sectionHint{font-size:11px;color:#64748b;margin:-2px 0 8px}.workerStep{grid-column:1/-1}.deployForm .workerGrid,.deployForm .workerPickerGrid{max-height:230px;overflow:auto}.deployForm .workerCard{min-height:58px!important;padding:8px 10px!important}.filterCard{padding:12px 14px}.filtergrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;align-items:end}.filtergrid label{font-size:11px;font-weight:850;color:#334155}.filtergrid input,.filtergrid select{height:34px!important}.filtergrid button,.filtergrid .btn{height:34px!important;display:inline-flex;align-items:center;justify-content:center}.actionsCell{white-space:nowrap}.actionsCell a,.miniAction{display:inline-flex;align-items:center;justify-content:center;margin:1px 2px;padding:3px 7px;border-radius:8px;background:#eff6ff;color:#0f4c81!important;font-size:10px;font-weight:900;text-decoration:none}.actionsCell a:hover,.miniAction:hover{background:#dbeafe}.tableHead h3{margin:0;font-size:15px}.tableHead .btn{padding:6px 10px!important;font-size:11px!important}@media(max-width:1400px){.deploymentSummary{grid-template-columns:repeat(4,minmax(0,1fr))!important}.filtergrid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.deploymentSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.filtergrid{grid-template-columns:1fr}.deployStep{grid-column:1/-1}}

/* V1.1W14 — Timesheets page professional layout */
.timesheetSummary{grid-template-columns:repeat(8,minmax(0,1fr))!important}
.timesheetSummary .miniStat:nth-child(5){border-top:3px solid #f59e0b}
.timesheetSummary .miniStat:nth-child(6){border-top:3px solid #ef4444}
.timesheetSummary .miniStat:nth-child(7){border-top:3px solid #3b82f6}
.timesheetSummary .miniStat:nth-child(8){border-top:3px solid #22c55e}
.timesheetEntryForm{display:block;padding:0!important}
.formStep{padding:12px 14px;border-bottom:1px solid rgba(148,163,184,.18)}
.formStep:last-child{border-bottom:0}
.stepTitle{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:#0f172a}
.stepTitle span{display:inline-flex;align-items:center;justify-content:center;height:22px;min-width:50px;padding:0 8px;border-radius:999px;background:#eaf2ff;color:#174f89;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.04em}
.stepTitle b{font-size:13px}
.compactForm{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.compactForm label{font-size:11px;font-weight:850;color:#334155}
.compactForm input,.compactForm select{height:34px;font-size:12px;margin-top:4px}
.formActionSlot{align-self:end;display:flex;align-items:end}
.formActionSlot button{width:100%;height:34px}
.noPad{padding:0!important;margin:8px 0 0!important}
.timesheetFilterGrid{grid-template-columns:1.35fr 1fr 1fr 1fr auto auto!important}
.statusQuickFilters{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.statusQuickFilters .pill{font-size:10px;border:1px solid rgba(37,99,235,.18);background:#eef5ff;color:#174f89;text-decoration:none}.statusQuickFilters .pill.active{background:#174f89;color:#fff}
.timesheetTable table{min-width:1280px}.timesheetTable td{vertical-align:middle}.timesheetTable .badge{max-width:160px;white-space:normal;line-height:1.15;text-align:center}.inlineSearch{height:32px;min-width:260px;border:1px solid rgba(148,163,184,.35);border-radius:10px;padding:0 10px;background:#fff}
.timesheetWorkerCheckList{max-height:255px;overflow:auto}.timesheetWorkerCheckRow.refinedWorkerCard{min-height:62px}.selectedProjectContext{font-size:12px;border-radius:12px;padding:9px 12px;background:#eef6ff;border:1px solid rgba(59,130,246,.16);color:#334155;margin-top:8px}.readonlyInfo{background:#f8fafc!important;color:#475569!important}
@media(max-width:1500px){.timesheetSummary{grid-template-columns:repeat(4,minmax(0,1fr))!important}.compactForm{grid-template-columns:repeat(3,minmax(0,1fr))}.timesheetFilterGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:780px){.timesheetSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.compactForm,.timesheetFilterGrid{grid-template-columns:1fr!important}.inlineSearch{min-width:0;width:100%}}

/* V1.1W16 — Worker Advances page professional layout */
.advanceSummary{grid-template-columns:repeat(8,minmax(0,1fr))!important}
.advanceSummary .miniStat:nth-child(3){border-top:3px solid #f59e0b}
.advanceSummary .miniStat:nth-child(4){border-top:3px solid #ef4444}
.advanceSummary .miniStat:nth-child(7){border-top:3px solid #d97706}
.advanceSummary .miniStat:nth-child(8){border-top:3px solid #be123c}
.advanceDrawer .badge.neutral{margin-left:8px;font-size:10px;vertical-align:middle}
.advanceForm{display:block!important;padding:0!important}
.advancePreview{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:10px 14px;background:#f8fbff;border-top:1px solid rgba(148,163,184,.18);font-size:12px;color:#475569}
.advancePreview b{color:#0f172a;margin-right:4px}.advancePreview span{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#eef6ff;border:1px solid rgba(59,130,246,.16);font-weight:800}.noMargin{margin:0!important}.advanceFilterGrid{grid-template-columns:1.35fr repeat(8,minmax(105px,1fr)) auto auto!important}.advanceTable table{min-width:1180px}.advanceTable td{vertical-align:middle}.statusBadge.st-pending{background:#fef3c7;color:#92400e;border-color:#fde68a}.statusBadge.st-partial{background:#e0f2fe;color:#075985;border-color:#bae6fd}.statusBadge.st-approved{background:#eafaf0;color:#166534;border-color:#bbf7d0}.statusBadge.st-approved-over-limit{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.statusBadge.st-pending-over-limit-approval{background:#fef3c7;color:#92400e;border-color:#fde68a}
@media(max-width:1500px){.advanceSummary{grid-template-columns:repeat(4,minmax(0,1fr))!important}.advanceFilterGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:780px){.advanceSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.advanceFilterGrid{grid-template-columns:1fr!important}.advancePreview{align-items:flex-start;flex-direction:column}}

/* =========================================================
   V1.1W17 — Salary / Wage Page Professional Layout
   UI/layout only. Keeps salary/payment calculations untouched.
   ========================================================= */
.salarySummary.compactSummary{grid-template-columns:repeat(8,minmax(0,1fr))!important}
.salarySummary .miniStat strong{font-size:17px!important;letter-spacing:-.03em;white-space:nowrap}.salarySummary .miniStat small{display:block;margin-top:4px;color:#64748b;font-size:10px;font-weight:700}
.salaryDrawer>summary{background:linear-gradient(90deg,#ffffff,#f3f8ff)!important}.salaryGenerateForm{display:grid!important;grid-template-columns:1fr 1fr 1fr;gap:10px!important}.salaryGenerateForm .deployStep{min-height:112px}.salaryGenerateForm .formgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:0!important}.salaryConfirmBar{display:flex;gap:8px;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid rgba(148,163,184,.22)}
.salaryFilterGrid{grid-template-columns:1.4fr repeat(8,minmax(95px,1fr)) auto auto!important}.salaryTable table{min-width:1280px}.salaryTable td{vertical-align:middle}.salaryTable .smallNote{margin:2px 0 0!important;padding:0!important;font-size:10.5px!important}.salaryTable .rowActions{gap:4px}.salaryTable .rowActions a{padding:3px 6px;font-size:10px}.statusBadge.st-generated,.statusBadge.st-draft{background:#fef3c7;color:#92400e;border-color:#fde68a}.statusBadge.st-reviewed{background:#e0f2fe;color:#075985;border-color:#bae6fd}.statusBadge.st-approved{background:#dcfce7;color:#166534;border-color:#bbf7d0}.statusBadge.st-locked{background:#e2e8f0;color:#334155;border-color:#cbd5e1}.statusBadge.st-partially-paid{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.statusBadge.st-paid{background:#dcfce7;color:#166534;border-color:#bbf7d0}.statusBadge.neutral{background:#f1f5f9;color:#475569;border-color:#cbd5e1;min-width:auto}
@media(max-width:1450px){.salarySummary.compactSummary{grid-template-columns:repeat(4,minmax(0,1fr))!important}.salaryGenerateForm{grid-template-columns:1fr!important}.salaryFilterGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.salarySummary.compactSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.salaryFilterGrid{grid-template-columns:1fr!important}}

/* =========================================================
   V1.1W18 — Worker Payments Page Professional Layout
   UI/layout only. Keeps posting, overpayment block, and lock logic untouched.
   ========================================================= */
.paymentSummary.compactSummary,.paymentSummary{grid-template-columns:repeat(8,minmax(0,1fr))!important}
.paymentSummary .summaryCard:nth-child(3){border-top:3px solid #d97706}
.paymentSummary .summaryCard:nth-child(4){border-top:3px solid #0ea5e9}
.paymentSummary .summaryCard:nth-child(5){border-top:3px solid #f59e0b}
.paymentSummary .summaryCard:nth-child(8){border-top:3px solid #16a34a}
.paymentDrawer>summary{background:linear-gradient(90deg,#ffffff,#f3f8ff)!important}
.paymentForm{display:block!important;padding:0!important}
.paymentPreview{border:1px solid rgba(148,163,184,.26);background:linear-gradient(180deg,#f8fbff,#ffffff);border-radius:14px;padding:10px 12px;color:#475569;font-size:12px}
.previewGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.previewGrid div{border:1px solid rgba(148,163,184,.22);border-radius:12px;padding:8px 10px;background:#fff}
.previewGrid small{display:block;text-transform:uppercase;letter-spacing:.06em;font-size:9px;font-weight:900;color:#64748b}
.previewGrid b{display:block;margin-top:3px;color:#0f172a;font-size:13px}
.previewGrid span{display:block;margin-top:2px;color:#64748b;font-size:10.5px;line-height:1.25}
.formActions{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fbfdff;border-top:1px solid rgba(148,163,184,.18)}
.formActions button{min-width:170px}
.paymentFilterGrid{grid-template-columns:1.5fr repeat(5,minmax(110px,1fr)) auto auto!important}
.paymentPendingTable table{min-width:900px}.paymentVoucherTable table{min-width:1160px}
.paymentPendingTable td,.paymentVoucherTable td{vertical-align:middle}.paymentVoucherTable .smallNote{margin:2px 0 0!important;padding:0!important;font-size:10.5px!important}
.paymentHero .heroActions button{white-space:nowrap}
@media(max-width:1500px){.paymentSummary{grid-template-columns:repeat(4,minmax(0,1fr))!important}.previewGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.paymentFilterGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.paymentSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.previewGrid,.paymentFilterGrid{grid-template-columns:1fr!important}.formActions{flex-direction:column;align-items:stretch}.formActions button{width:100%}}


/* V1.1W18A — Worker Payments visual alignment fix */
.paymentSummary.summaryCards.compactSummary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:8px 0 10px!important}
.paymentSummary .summaryCard,.paymentSummary .miniStat{display:block!important;background:linear-gradient(180deg,#ffffff,#f8fbff)!important;border:1px solid rgba(148,163,184,.28)!important;border-radius:12px!important;padding:9px 10px!important;box-shadow:0 5px 16px rgba(15,23,42,.04)!important;border-top:3px solid #1d4e7a!important}
.paymentSummary .summaryCard small,.paymentSummary .miniStat span{display:block!important;font-size:8.8px!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#64748b!important;font-weight:900!important;margin-bottom:3px!important}
.paymentSummary .summaryCard strong,.paymentSummary .miniStat strong{display:block!important;font-size:14px!important;line-height:1.1!important;color:#0f172a!important;font-weight:950!important}
.paymentSummary .summaryCard span{display:block!important;font-size:9.6px!important;color:#64748b!important;margin-top:2px!important}
.paymentSummary .summaryCard:nth-child(3){border-top-color:#d97706!important}.paymentSummary .summaryCard:nth-child(4){border-top-color:#0ea5e9!important}.paymentSummary .summaryCard:nth-child(5){border-top-color:#f59e0b!important}.paymentSummary .summaryCard:nth-child(8){border-top-color:#16a34a!important}
.paymentHero{margin-bottom:8px!important}.paymentDrawer{margin-bottom:9px!important}.paymentPendingTable .table-tools,.paymentVoucherTable .table-tools{display:none!important}
.tableHead .tableActions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tableHead .inlineSearch{min-width:220px;max-width:330px;height:28px!important}
@media(max-width:1300px){.paymentSummary.summaryCards.compactSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){.paymentSummary.summaryCards.compactSummary{grid-template-columns:1fr!important}}

/* V1.1W20A Payment Eligibility Visual Alignment Fix */
.eligibilitySummary.summaryCards.compactSummary{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin:10px 0 12px!important;
  align-items:stretch!important;
}
.eligibilitySummary .summaryCard{
  display:block!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  border:1px solid rgba(148,163,184,.28)!important;
  border-top:3px solid #1d4e7a!important;
  border-radius:14px!important;
  padding:10px 12px!important;
  box-shadow:0 8px 20px rgba(15,39,66,.045)!important;
  min-height:78px!important;
}
.eligibilitySummary .summaryCard small{
  display:block!important;
  font-size:9px!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
  letter-spacing:.065em!important;
  color:#64748b!important;
  font-weight:950!important;
  margin:0 0 5px!important;
}
.eligibilitySummary .summaryCard strong{
  display:block!important;
  font-size:18px!important;
  line-height:1.05!important;
  color:#0f172a!important;
  font-weight:950!important;
  margin:0!important;
  white-space:normal!important;
}
.eligibilitySummary .summaryCard span{
  display:block!important;
  font-size:10px!important;
  line-height:1.2!important;
  color:#64748b!important;
  margin-top:5px!important;
  font-weight:750!important;
}
.eligibilitySummary .summaryCard:nth-child(1){border-top-color:#2563eb!important}
.eligibilitySummary .summaryCard:nth-child(2){border-top-color:#16a34a!important}
.eligibilitySummary .summaryCard:nth-child(3){border-top-color:#f59e0b!important}
.eligibilitySummary .summaryCard:nth-child(4){border-top-color:#0ea5e9!important}
.eligibilitySummary .summaryCard:nth-child(5){border-top-color:#64748b!important}
.eligibilitySummary .summaryCard:nth-child(6){border-top-color:#dc2626!important}
.eligibilitySummary .summaryCard:nth-child(7){border-top-color:#7c3aed!important}
.eligibilitySummary .summaryCard:nth-child(8){border-top-color:#ef4444!important}
.eligibilityTable td:nth-child(4),
.eligibilityTable td:nth-child(5),
.eligibilityTable td:nth-child(6){
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
  min-width:86px!important;
}
.eligibilityTable td:nth-child(4) strong,
.eligibilityTable td:nth-child(5) strong,
.eligibilityTable td:nth-child(6) strong{white-space:nowrap!important;}
.eligibilityTable td{vertical-align:middle!important;}
.eligibilityTable .rowActions{display:flex!important;flex-wrap:wrap!important;gap:5px!important;align-items:center!important;}
.eligibilityTable .miniAction{padding:5px 8px!important;border-radius:9px!important;line-height:1!important;}
.eligibilityHero{margin-bottom:10px!important;}
.eligibilityFilterGrid{align-items:end!important;}
@media(max-width:1300px){.eligibilitySummary.summaryCards.compactSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){.eligibilitySummary.summaryCards.compactSummary{grid-template-columns:1fr!important}.eligibilityTable td:nth-child(4),.eligibilityTable td:nth-child(5),.eligibilityTable td:nth-child(6){white-space:normal!important}}

/* V1.1W21A - Advance Risk visual alignment */
.advanceRiskSummary.summaryCards.compactSummary{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:8px!important;
  margin:8px 0 12px!important;
}
.advanceRiskSummary .summaryCard{
  display:block!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border:1px solid rgba(148,163,184,.28)!important;
  border-top:3px solid #1d4e7a!important;
  border-radius:12px!important;
  padding:9px 10px!important;
  box-shadow:0 5px 16px rgba(15,23,42,.04)!important;
  min-height:58px!important;
}
.advanceRiskSummary .summaryCard small{
  display:block!important;
  font-size:8.8px!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
  font-weight:900!important;
  margin-bottom:3px!important;
}
.advanceRiskSummary .summaryCard strong{
  display:block!important;
  font-size:14px!important;
  line-height:1.12!important;
  color:#0f172a!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
.advanceRiskSummary .summaryCard span{
  display:block!important;
  font-size:9.4px!important;
  color:#64748b!important;
  margin-top:2px!important;
  line-height:1.25!important;
}
.advanceRiskSummary .summaryCard:nth-child(1){border-top-color:#2563eb!important}
.advanceRiskSummary .summaryCard:nth-child(2){border-top-color:#dc2626!important}
.advanceRiskSummary .summaryCard:nth-child(3){border-top-color:#f59e0b!important}
.advanceRiskSummary .summaryCard:nth-child(4){border-top-color:#0ea5e9!important}
.advanceRiskSummary .summaryCard:nth-child(5){border-top-color:#7c3aed!important}
.advanceRiskSummary .summaryCard:nth-child(6){border-top-color:#16a34a!important}
.moneyCell{white-space:nowrap!important;font-variant-numeric:tabular-nums!important;}
.advanceRiskTable .badge,.professionalTable .badge{white-space:nowrap!important;}
@media(max-width:1300px){.advanceRiskSummary.summaryCards.compactSummary{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:720px){.advanceRiskSummary.summaryCards.compactSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* V1.1W21B — Universal Summary Card Alignment Fix
   Ensures all summary cards render as cards even when a page uses generic summaryCards/summaryCard classes. */
.summaryCards.compactSummary{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:10px!important;
  margin:10px 0 14px!important;
  align-items:stretch!important;
}
.summaryCards.compactSummary .summaryCard{
  display:block!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  border:1px solid rgba(148,163,184,.28)!important;
  border-radius:14px!important;
  padding:10px 12px!important;
  box-shadow:0 8px 20px rgba(15,23,42,.045)!important;
  border-top:3px solid #1d4e7a!important;
  min-height:66px!important;
  overflow:hidden!important;
}
.summaryCards.compactSummary .summaryCard small{
  display:block!important;
  font-size:9px!important;
  line-height:1.2!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
  font-weight:900!important;
  margin:0 0 4px!important;
}
.summaryCards.compactSummary .summaryCard strong{
  display:block!important;
  font-size:17px!important;
  line-height:1.05!important;
  color:#0f172a!important;
  font-weight:950!important;
  margin:0!important;
  white-space:normal!important;
}
.summaryCards.compactSummary .summaryCard span{
  display:block!important;
  font-size:10px!important;
  line-height:1.2!important;
  color:#64748b!important;
  font-weight:700!important;
  margin-top:4px!important;
}
.advanceRiskSummary.summaryCards.compactSummary,
.summaryCards.compactSummary.advanceRiskSummary{
  grid-template-columns:repeat(6,minmax(130px,1fr))!important;
}
.advanceRiskSummary .summaryCard:nth-child(2),
.summaryCards.compactSummary .summaryCard:nth-child(2){border-top-color:#dc2626!important}
.advanceRiskSummary .summaryCard:nth-child(3),
.summaryCards.compactSummary .summaryCard:nth-child(3){border-top-color:#f59e0b!important}
.advanceRiskSummary .summaryCard:nth-child(4),
.summaryCards.compactSummary .summaryCard:nth-child(4){border-top-color:#0ea5e9!important}
.advanceRiskSummary .summaryCard:nth-child(5),
.summaryCards.compactSummary .summaryCard:nth-child(5){border-top-color:#7c3aed!important}
.advanceRiskSummary .summaryCard:nth-child(6),
.summaryCards.compactSummary .summaryCard:nth-child(6){border-top-color:#16a34a!important}
.professionalTable td.moneyCell,
.moneyCell{
  white-space:nowrap!important;
  min-width:92px!important;
  font-variant-numeric:tabular-nums!important;
}
.professionalTable td,
.professionalTable th{vertical-align:middle!important}
@media(max-width:1400px){.advanceRiskSummary.summaryCards.compactSummary,.summaryCards.compactSummary.advanceRiskSummary{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.advanceRiskSummary.summaryCards.compactSummary,.summaryCards.compactSummary.advanceRiskSummary,.summaryCards.compactSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* V1.1W22 — Mgmt Reports Professional Layout */
.reportHero{margin-bottom:10px!important}.reportTabCard{padding:10px 12px!important}.reportTabs{display:flex;flex-wrap:wrap;gap:7px}.reportTab{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:10px;background:#f1f5f9;color:#0f2742!important;text-decoration:none;font-weight:900;font-size:11px;border:1px solid rgba(148,163,184,.28)}.reportTab:hover{background:#eaf3ff}.reportTab.active{background:#174f89!important;color:#fff!important;box-shadow:0 6px 16px rgba(23,79,137,.18)}.reportTab.quick{background:#fff;color:#1e4f7d!important}.reportSummary.summaryCards.compactSummary{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:10px 0 12px}.reportSummary .summaryCard{border-top:3px solid #1d4e7a!important}.reportSummary .summaryCard:nth-child(2){border-top-color:#16a34a!important}.reportSummary .summaryCard:nth-child(3){border-top-color:#f59e0b!important}.reportSummary .summaryCard:nth-child(4){border-top-color:#dc2626!important}.reportSummary .summaryCard:nth-child(5){border-top-color:#7c3aed!important}.reportSummary .summaryCard:nth-child(6){border-top-color:#0ea5e9!important}.reportFilter{grid-template-columns:repeat(6,minmax(0,1fr))!important}.reportTableCard .tableHead{align-items:flex-start}.reportDataTable td{vertical-align:middle!important}.reportDataTable th{white-space:nowrap}.reportDataTable td:nth-child(5),.reportDataTable td:nth-child(6),.reportDataTable td:nth-child(7){white-space:nowrap}.reportDataTable .statusBadge{font-size:10px!important;white-space:nowrap}.reportDataTable .miniAction{margin:2px;padding:4px 8px}.statusBadge.ok{background:#dcfce7!important;color:#166534!important}.statusBadge.warn{background:#fef3c7!important;color:#92400e!important}.statusBadge.bad{background:#fee2e2!important;color:#991b1b!important}.statusBadge.neutral{background:#f1f5f9!important;color:#475569!important}@media(max-width:1400px){.reportSummary.summaryCards.compactSummary{grid-template-columns:repeat(3,minmax(0,1fr))}.reportFilter{grid-template-columns:repeat(3,minmax(0,1fr))!important}}@media(max-width:760px){.reportSummary.summaryCards.compactSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.reportFilter{grid-template-columns:1fr!important}.reportTabs{display:grid;grid-template-columns:1fr 1fr}.reportDataTable td{white-space:normal!important}}
@media print{.reportTabCard,.filterCard,.tableActions,.heroActions{display:none!important}.reportHero{border:0!important;box-shadow:none!important}.reportTableCard{border:0!important;box-shadow:none!important}.reportDataTable{font-size:10px!important}.reportSummary.summaryCards.compactSummary{grid-template-columns:repeat(3,1fr)!important}}

/* V1.1W23 - Worker Profile 360 professional layout */
.workerProfileHero{margin-bottom:10px!important}
.profileSearchCard{padding:12px 14px!important;margin-bottom:10px!important}
.profileSearchForm{grid-template-columns:2fr auto auto!important;align-items:end!important}
.workerIdentity{display:grid;grid-template-columns:62px 1fr minmax(170px,260px);gap:14px;align-items:center;padding:15px 16px!important;margin-bottom:10px!important;border-top:3px solid #1d4e7a!important}
.workerAvatar{width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,#0f4c81,#2f80ed);display:flex;align-items:center;justify-content:center;color:#fff;font-size:26px;font-weight:950;box-shadow:0 10px 24px rgba(15,76,129,.22)}
.workerIdentityMain h2{margin:0 0 4px!important;font-size:22px!important;letter-spacing:-.04em;color:#0f172a}
.workerIdentityMain p{margin:0 0 8px!important;color:#475569;font-size:12.5px!important}
.profileBadges{display:flex;gap:6px;flex-wrap:wrap}.profileBadges .statusBadge{min-width:auto!important}
.workerIdentityMeta{display:grid;grid-template-columns:auto 1fr;gap:4px 9px;padding:10px 12px;border:1px solid rgba(148,163,184,.25);border-radius:14px;background:#f8fbff;font-size:11px}.workerIdentityMeta b{color:#64748b;text-transform:uppercase;letter-spacing:.05em}.workerIdentityMeta span{font-weight:900;color:#0f172a;text-align:right}
.workerProfileKpis{grid-template-columns:repeat(8,minmax(0,1fr))!important;margin:0 0 10px!important}.workerProfileKpis .miniStat{min-height:62px!important}.workerProfileKpis .miniStat strong{font-size:15px!important;line-height:1.1!important;word-break:normal!important;overflow-wrap:anywhere}.profileHint{margin:8px 0 10px!important}
.profileGrid.twoCol{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.profileSection{padding:12px 14px!important;margin-bottom:10px!important}.profileSection .tablewrap{max-height:360px;overflow:auto}.profileSection table{font-size:11px!important}.profileSection th{font-size:9.5px!important}.profileSection td{vertical-align:middle!important}.profileSection .table-tools{margin:6px 0!important}.profileSection .table-tools input{height:30px!important;font-size:11px!important}.profileSection .sectionTitle{margin-bottom:8px!important}
.timelineList{display:flex;flex-direction:column;gap:7px;max-height:356px;overflow:auto;padding-right:4px}.timelineItem{position:relative;padding:8px 10px 8px 14px;border:1px solid rgba(148,163,184,.22);border-radius:12px;background:#fff}.timelineItem:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:999px;background:#2f80ed}.timelineItem span{display:block;font-size:10px;color:#64748b;font-weight:800}.timelineItem b{display:block;margin:2px 0;font-size:12px;color:#0f2742}.timelineItem p{margin:0;color:#475569;font-size:11px;line-height:1.25}.emptyMini{padding:14px;border:1px dashed rgba(148,163,184,.45);border-radius:12px;color:#64748b;background:#f8fafc;text-align:center;font-weight:800}
.emptyState{padding:22px!important;text-align:center}.emptyState h3{margin:0 0 6px!important}.emptyState p{margin:0!important;color:#64748b}
@media(max-width:1350px){.workerProfileKpis{grid-template-columns:repeat(4,minmax(0,1fr))!important}.profileGrid.twoCol{grid-template-columns:1fr}.workerIdentity{grid-template-columns:52px 1fr}.workerIdentityMeta{grid-column:1/-1}}
@media(max-width:760px){.profileSearchForm{grid-template-columns:1fr!important}.workerProfileKpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.workerIdentity{grid-template-columns:1fr;text-align:left}.workerAvatar{width:48px;height:48px;font-size:22px}.workerIdentityMeta span{text-align:left}}
@media print{.profileSearchCard,.workerProfileHero .heroActions,.profileSection .table-tools{display:none!important}.workerIdentity,.profileSection{box-shadow:none!important;border:1px solid #ddd!important}.profileGrid.twoCol{grid-template-columns:1fr!important}.workerProfileKpis{grid-template-columns:repeat(4,1fr)!important}.timelineList,.profileSection .tablewrap{max-height:none!important;overflow:visible!important}}

/* V1.1W23D — Worker Profile Deployment Table Width Refinement
   UI/CSS-only: improves readability of Current / Recent Deployments in Worker 360 Profile. */
.workerProfileDeployments .tablewrap,
.profileSection.workerProfileDeployments .tablewrap,
.profileSection .profileDeploymentTableWrap{
  overflow-x:auto!important;
}
.workerProfileDeployments table,
.profileSection table.profileDeploymentTable,
.profileDeploymentTable{
  table-layout:fixed!important;
  width:100%!important;
}
.workerProfileDeployments th:nth-child(1),
.workerProfileDeployments td:nth-child(1),
.profileDeploymentTable th:nth-child(1),
.profileDeploymentTable td:nth-child(1){
  width:96px!important;
  min-width:96px!important;
  white-space:normal!important;
}
.workerProfileDeployments th:nth-child(2),
.workerProfileDeployments td:nth-child(2),
.profileDeploymentTable th:nth-child(2),
.profileDeploymentTable td:nth-child(2){
  width:34%!important;
  min-width:230px!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  line-height:1.25!important;
}
.workerProfileDeployments th:nth-child(3),
.workerProfileDeployments td:nth-child(3),
.workerProfileDeployments th:nth-child(4),
.workerProfileDeployments td:nth-child(4),
.workerProfileDeployments th:nth-child(5),
.workerProfileDeployments td:nth-child(5),
.profileDeploymentTable th:nth-child(3),
.profileDeploymentTable td:nth-child(3),
.profileDeploymentTable th:nth-child(4),
.profileDeploymentTable td:nth-child(4),
.profileDeploymentTable th:nth-child(5),
.profileDeploymentTable td:nth-child(5){
  width:92px!important;
  min-width:86px!important;
  white-space:nowrap!important;
  text-align:center!important;
}
.workerProfileDeployments th:nth-child(6),
.workerProfileDeployments td:nth-child(6),
.profileDeploymentTable th:nth-child(6),
.profileDeploymentTable td:nth-child(6){
  width:150px!important;
  min-width:135px!important;
  text-align:right!important;
}
.workerProfileDeployments td strong,
.profileDeploymentTable td strong{
  display:block!important;
  white-space:normal!important;
  line-height:1.2!important;
}
.workerProfileDeployments td .muted,
.profileDeploymentTable td .muted{
  display:block!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  line-height:1.22!important;
}
.workerProfileDeployments .statusBadge,
.profileDeploymentTable .statusBadge{
  white-space:nowrap!important;
  min-width:auto!important;
  padding:5px 9px!important;
}
@media(max-width:980px){
  .workerProfileDeployments table,
  .profileDeploymentTable{min-width:760px!important;}
}

/* V1.1W24 Project Summary professional layout */
.pageHero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin-bottom:12px;background:linear-gradient(135deg,#ffffff 0%,#f7fbff 100%);border:1px solid rgba(30,64,104,.12);border-radius:18px;box-shadow:0 10px 28px rgba(16,38,72,.07)}
.pageHero .heroActions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.heroActions .btn,.pageHero button{white-space:nowrap}
.projectIdentity{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:4px solid #174f7f!important}.projectIdentity h2{margin:2px 0 4px;font-size:20px}.projectIdentity p{margin:0 0 8px;color:#64748b;font-size:12px}.projectSummaryCards.summaryCards.compactSummary{grid-template-columns:repeat(6,minmax(0,1fr))!important;margin:8px 0 12px!important}.projectSummaryCards .summaryCard:nth-child(1){border-top-color:#2563eb!important}.projectSummaryCards .summaryCard:nth-child(2){border-top-color:#16a34a!important}.projectSummaryCards .summaryCard:nth-child(3){border-top-color:#f59e0b!important}.projectSummaryCards .summaryCard:nth-child(6){border-top-color:#dc2626!important}.projectSummaryCards .summaryCard:nth-child(8){border-top-color:#dc2626!important}.projectSummaryCards .summaryCard:nth-child(12){border-top-color:#7c3aed!important}
.grid.twoCol{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.sectionHead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.sectionHead h3{margin:0;font-size:15px}.sectionHead p{margin:3px 0 0;color:#64748b;font-size:11px}.miniBars{display:grid;gap:8px}.miniBarRow{display:grid;grid-template-columns:170px 42px 1fr;align-items:center;gap:8px;font-size:11px}.miniBarRow span{font-weight:800;color:#334155}.miniBarRow b{text-align:right;color:#0f172a}.miniBarRow em{height:8px;background:#eaf1f8;border-radius:999px;overflow:hidden}.miniBarRow em i{display:block;height:100%;background:linear-gradient(90deg,#174f7f,#2f80d1);border-radius:999px}.tableWrap{overflow:auto}.emptyState{text-align:center;padding:28px!important}.emptyState h3{margin:0 0 6px}.emptyState p{margin:0;color:#64748b}
@media(max-width:1300px){.projectSummaryCards.summaryCards.compactSummary{grid-template-columns:repeat(3,minmax(0,1fr))!important}.grid.twoCol{grid-template-columns:1fr}.projectIdentity,.pageHero{align-items:flex-start;flex-direction:column}.miniBarRow{grid-template-columns:1fr 42px 1fr}}
@media(max-width:720px){.projectSummaryCards.summaryCards.compactSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.miniBarRow{grid-template-columns:1fr}.miniBarRow b{text-align:left}}
@media print{.pageHero .heroActions,.projectIdentity .heroActions,.formgrid button,.sectionHead .miniAction{display:none!important}.pageHero,.projectIdentity,.card{box-shadow:none!important;border:1px solid #d1d5db!important}.grid.twoCol{grid-template-columns:1fr!important}.projectSummaryCards.summaryCards.compactSummary{grid-template-columns:repeat(4,1fr)!important}}

/* V1.1W24A Project Summary KPI Cards Visual Fix */
.projectSummaryCards,
.summaryGrid.projectSummaryCards{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin:12px 0 14px!important;
  align-items:stretch!important;
}
.projectSummaryCards .summaryCard{
  display:block!important;
  min-height:72px!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border:1px solid rgba(148,163,184,.30)!important;
  border-top:3px solid #1d4e7a!important;
  border-radius:14px!important;
  padding:10px 12px!important;
  box-shadow:0 8px 22px rgba(15,23,42,.045)!important;
  overflow:hidden!important;
}
.projectSummaryCards .summaryCard span{
  display:block!important;
  font-size:9px!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
  letter-spacing:.075em!important;
  color:#64748b!important;
  font-weight:950!important;
  margin-bottom:4px!important;
}
.projectSummaryCards .summaryCard strong{
  display:block!important;
  font-size:18px!important;
  line-height:1.08!important;
  color:#0f172a!important;
  font-weight:950!important;
  white-space:normal!important;
}
.projectSummaryCards .summaryCard small{
  display:block!important;
  margin-top:4px!important;
  font-size:10px!important;
  line-height:1.25!important;
  color:#64748b!important;
  font-weight:700!important;
}
.projectSummaryCards .summaryCard.tone-success{border-top-color:#16a34a!important}
.projectSummaryCards .summaryCard.tone-warn{border-top-color:#f59e0b!important}
.projectSummaryCards .summaryCard.tone-danger{border-top-color:#dc2626!important}
.projectSummaryCards .summaryCard.tone-info{border-top-color:#2563eb!important}
.projectSummaryCards .summaryCard.tone-money{border-top-color:#0ea5e9!important}
.projectSummaryCards .summaryCard.tone-neutral{border-top-color:#64748b!important}
.projectIdentity.card{margin-bottom:12px!important}
.projectIdentity .profileBadges{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-top:8px!important}
@media(max-width:1400px){.projectSummaryCards,.summaryGrid.projectSummaryCards{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:900px){.projectSummaryCards,.summaryGrid.projectSummaryCards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.projectSummaryCards,.summaryGrid.projectSummaryCards{grid-template-columns:1fr!important}}

/* V1.1W26 Dashboard Final Polish & Visual Balance */
body:has(.dash-page) .content{max-width:1720px!important;}
body:has(.dash-page) .dash-page{gap:12px!important;}
body:has(.dash-page) .dash-hero{
  min-height:78px!important;
  padding:14px 16px!important;
  border-radius:18px!important;
  border:1px solid rgba(191,219,254,.8)!important;
  background:linear-gradient(135deg,#ffffff 0%,#f7fbff 52%,#eef6ff 100%)!important;
}
body:has(.dash-page) .dash-hero h2{font-size:23px!important;line-height:1.05!important;margin:3px 0!important;}
body:has(.dash-page) .dash-hero p{font-size:12.5px!important;line-height:1.3!important;}
body:has(.dash-page) .dash-actions{gap:8px!important;align-items:center!important;}
body:has(.dash-page) .dash-actions .btn,
body:has(.dash-page) .dash-actions button{
  height:34px!important;
  min-width:92px!important;
  padding:0 14px!important;
  font-size:11px!important;
  border-radius:11px!important;
  font-weight:950!important;
  box-shadow:0 7px 15px rgba(15,23,42,.10)!important;
}

body:has(.dash-page) .exec-kpi-row{
  grid-template-columns:repeat(10,minmax(118px,1fr))!important;
  gap:9px!important;
}
body:has(.dash-page) .exec-kpi{
  min-height:91px!important;
  padding:10px 11px 9px!important;
  border-radius:16px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  box-shadow:0 10px 24px rgba(15,23,42,.055)!important;
  border-color:rgba(191,213,234,.95)!important;
}
body:has(.dash-page) .exec-kpi:before{width:4px!important;}
body:has(.dash-page) .kpi-top{height:18px!important;margin-bottom:2px!important;}
body:has(.dash-page) .kpi-group{font-size:8px!important;letter-spacing:.13em!important;color:#64748b!important;}
body:has(.dash-page) .kpi-icon{font-size:14px!important;opacity:.9!important;}
body:has(.dash-page) .exec-kpi strong{
  font-size:18px!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  margin:4px 0 3px!important;
  color:#0b1f36!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body:has(.dash-page) .exec-kpi b{font-size:10.8px!important;line-height:1.12!important;color:#172033!important;}
body:has(.dash-page) .exec-kpi small{font-size:9.4px!important;line-height:1.18!important;margin-top:3px!important;color:#64748b!important;}
body:has(.dash-page) .exec-kpi.kpi-red strong,
body:has(.dash-page) .exec-kpi.kpi-amber strong{font-size:16px!important;}

body:has(.dash-page) .dash-grid,
body:has(.dash-page) .dash-grid-main{gap:12px!important;align-items:stretch!important;}
body:has(.dash-page) .dash-card{
  border-radius:17px!important;
  box-shadow:0 10px 26px rgba(15,23,42,.055)!important;
  border-color:rgba(211,224,238,.95)!important;
}
body:has(.dash-page) .dash-card-head{padding:11px 13px 8px!important;}
body:has(.dash-page) .dash-card h3{font-size:14px!important;letter-spacing:-.015em!important;}
body:has(.dash-page) .dash-card p{font-size:10.8px!important;}
body:has(.dash-page) .dash-card th{
  background:linear-gradient(180deg,#eef5ff,#e8f0fb)!important;
  font-size:9px!important;
  padding:6px 8px!important;
  color:#253c5b!important;
  border-bottom:1px solid #dbe7f5!important;
}
body:has(.dash-page) .dash-card td{
  font-size:10.5px!important;
  padding:5.25px 8px!important;
  vertical-align:middle!important;
}
body:has(.dash-page) .dash-card tbody tr:hover td{background:#f2f8ff!important;}
body:has(.dash-page) .dash-button-row{gap:7px!important;padding:9px 11px!important;}
body:has(.dash-page) .dash-button-row .btn,
body:has(.dash-page) .dash-button-row button{
  height:28px!important;
  padding:0 10px!important;
  font-size:10.5px!important;
  border-radius:9px!important;
}

.dash-priority,.dash-activity{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:20px!important;
  padding:3px 8px!important;
  border-radius:999px!important;
  font-size:9.2px!important;
  font-weight:950!important;
  border:1px solid transparent!important;
  white-space:nowrap!important;
}
.dash-priority.neutral,.dash-activity.neutral{background:#f1f5f9!important;color:#475569!important;border-color:#cbd5e1!important;}
.dash-priority.info,.dash-activity.info{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important;}
.dash-priority.warn{background:#fff7ed!important;color:#c2410c!important;border-color:#fed7aa!important;}
.dash-priority.danger,.dash-activity.danger{background:#fef2f2!important;color:#b91c1c!important;border-color:#fecaca!important;}
.dash-activity.ok{background:#f0fdf4!important;color:#15803d!important;border-color:#bbf7d0!important;}
.dash-activity.money{background:#ecfeff!important;color:#0e7490!important;border-color:#a5f3fc!important;}
.dash-date{font-weight:900!important;color:#334155!important;white-space:nowrap!important;}
.dash-detail{display:block!important;max-width:360px!important;line-height:1.25!important;color:#334155!important;}
.dash-activity-card td:nth-child(1){width:76px!important;white-space:nowrap!important;}
.dash-activity-card td:nth-child(2){width:74px!important;}
.dash-activity-card td:nth-child(3){width:92px!important;}
.dash-activity-card td:nth-child(4){max-width:380px!important;}

@media(max-width:1500px){
  body:has(.dash-page) .exec-kpi-row{grid-template-columns:repeat(5,minmax(0,1fr))!important;}
  body:has(.dash-page) .exec-kpi{min-height:84px!important;}
}
@media(max-width:980px){
  body:has(.dash-page) .exec-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body:has(.dash-page) .dash-grid,body:has(.dash-page) .dash-grid-main{grid-template-columns:1fr!important;}
  .dash-detail{max-width:100%!important;}
}
@media print{
  body:has(.dash-page) .exec-kpi-row{grid-template-columns:repeat(5,1fr)!important;}
  body:has(.dash-page) .dash-card{box-shadow:none!important;border:1px solid #d8dee8!important;break-inside:avoid!important;}
  .dash-priority,.dash-activity{border:1px solid #999!important;background:#fff!important;color:#111!important;}
}

/* V1.1W26A Dashboard Button Text Alignment Fix
   UI-only refinement for dashboard action buttons. */
body:has(.dash-page) .dash-actions .btn,
body:has(.dash-page) .dash-actions button,
body:has(.dash-page) .dash-button-row .btn,
body:has(.dash-page) .dash-button-row button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  vertical-align:middle!important;
  line-height:1!important;
  white-space:nowrap!important;
  gap:4px!important;
}
body:has(.dash-page) .dash-actions .btn,
body:has(.dash-page) .dash-actions button{
  min-height:34px!important;
}
body:has(.dash-page) .dash-button-row .btn,
body:has(.dash-page) .dash-button-row button{
  min-height:28px!important;
}
body:has(.dash-page) .dash-button-row{
  align-items:center!important;
}

/* V1.1W27 — Workers Page Minor Table Refinement */
.workersTable th:first-child,
.workersTable td:first-child{
  min-width:82px;
  width:82px;
  white-space:nowrap;
}
.workersTable th:nth-child(7),
.workersTable td:nth-child(7){
  min-width:76px;
  white-space:nowrap;
}
.workersTable td:nth-child(11){
  min-width:138px;
}
.workersTable .rowActions{
  display:flex;
  align-items:center;
  gap:4px;
  flex-wrap:wrap;
}
.workersTable .rowActions .miniAction,
.rowActions .miniAction{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:3px 7px;
  border-radius:999px;
  background:#eef5ff;
  color:#164f86;
  font-weight:700;
  font-size:11px;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
.rowActions .miniAction:hover{background:#dcecff;}
.rowActions .miniAction.disabled{
  background:#f1f5f9;
  color:#64748b;
  cursor:default;
}
.rowActions .miniAction.dangerText{
  background:#fff1f2;
  color:#b42318;
}
.workersTable .statusBadge,
.workersTable .badge{
  white-space:nowrap;
}

/* V1.1W29 — Worker Advances density and finance readability */
.advanceTable.financeReadableTable table{min-width:1040px!important;table-layout:fixed!important;}
.advanceTable.financeReadableTable th,.advanceTable.financeReadableTable td{vertical-align:middle!important;}
.advanceTable.financeReadableTable th:nth-child(1){width:92px!important;}
.advanceTable.financeReadableTable th:nth-child(2){width:185px!important;}
.advanceTable.financeReadableTable th:nth-child(3){width:185px!important;}
.advanceTable.financeReadableTable th:nth-child(4){width:138px!important;}
.advanceTable.financeReadableTable th:nth-child(5){width:190px!important;}
.advanceTable.financeReadableTable th:nth-child(6){width:118px!important;}
.advanceTable.financeReadableTable th:nth-child(7){width:150px!important;}
.advanceTable.financeReadableTable th:nth-child(8){width:108px!important;}
.advanceTable .advanceIdCell strong,.advanceTable .dateNowrap{white-space:nowrap!important;display:inline-block;}
.advanceTable .projectCell{font-weight:750;color:#1e293b;line-height:1.22;}
.advanceTable .smallNote{margin:2px 0 0!important;padding:0!important;font-size:10.5px!important;line-height:1.22!important;}
.financeStack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;align-items:stretch;min-width:170px;}
.financeStack div{border:1px solid rgba(148,163,184,.18);background:#fbfdff;border-radius:9px;padding:4px 6px;line-height:1.1;}
.financeStack span{display:block;font-size:8.6px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#64748b;margin-bottom:2px;white-space:nowrap;}
.financeStack b{display:block;font-size:10.4px;font-weight:950;color:#0f172a;white-space:nowrap;font-variant-numeric:tabular-nums;}
.advanceActions{gap:4px!important;align-items:center!important;justify-content:flex-start!important;}
.advanceActions .miniAction,.advanceActions a{font-size:10px!important;padding:3px 7px!important;border-radius:8px!important;}
.advanceActions .dangerText{color:#b91c1c!important;background:#fff1f2!important;}
.advanceTable .statusBadge{min-width:auto!important;padding:4px 7px!important;font-size:9.5px!important;}
@media(max-width:1200px){
 .advanceTable.financeReadableTable table{min-width:980px!important;}
 .financeStack{grid-template-columns:1fr;gap:3px;}
 .financeStack div{display:flex;justify-content:space-between;gap:8px;align-items:center;}
 .financeStack span{margin:0;}
}

/* V1.1W29A — Worker Advances finance block width and action alignment polish */
.advanceTable.financeReadableTable table{
  min-width:1180px!important;
  table-layout:fixed!important;
}
.advanceTable.financeReadableTable th:nth-child(1){width:92px!important;}
.advanceTable.financeReadableTable th:nth-child(2){width:178px!important;}
.advanceTable.financeReadableTable th:nth-child(3){width:168px!important;}
.advanceTable.financeReadableTable th:nth-child(4){width:130px!important;}
.advanceTable.financeReadableTable th:nth-child(5){width:248px!important;}
.advanceTable.financeReadableTable th:nth-child(6){width:104px!important;}
.advanceTable.financeReadableTable th:nth-child(7){width:132px!important;}
.advanceTable.financeReadableTable th:nth-child(8){width:130px!important;}
.advanceTable .financeStack{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(72px,1fr))!important;
  gap:7px!important;
  min-width:230px!important;
}
.advanceTable .financeStack div{
  min-width:0!important;
  padding:5px 7px!important;
  border-radius:10px!important;
}
.advanceTable .financeStack span{
  font-size:8.2px!important;
  letter-spacing:.055em!important;
  line-height:1.05!important;
}
.advanceTable .financeStack b{
  font-size:10.8px!important;
  line-height:1.1!important;
}
.advanceTable .advanceActions{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:5px!important;
  white-space:nowrap!important;
}
.advanceTable .advanceActions .miniAction,
.advanceTable .advanceActions a,
.advanceTable .advanceActions .muted{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:22px!important;
  padding:3px 7px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.advanceTable .projectCell{max-width:168px;}
@media(max-width:1200px){
  .advanceTable.financeReadableTable table{min-width:1100px!important;}
  .advanceTable .financeStack{grid-template-columns:repeat(3,minmax(68px,1fr))!important;min-width:210px!important;}
  .advanceTable .financeStack div{display:block!important;}
}

/* V1.1W29B — Worker Advances summary cards consistency fix */
.advanceSummary.compactSummary,
.summaryCards.compactSummary.advanceSummary{
  display:grid!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:8px!important;
  margin:8px 0 12px!important;
  align-items:stretch!important;
}
.advanceSummary.compactSummary .miniStat,
.summaryCards.compactSummary.advanceSummary .miniStat{
  min-height:66px!important;
  padding:9px 10px!important;
  border-radius:14px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  background:linear-gradient(180deg,#fff,#f8fbff)!important;
  box-shadow:0 6px 16px rgba(15,23,42,.04)!important;
}
.advanceSummary.compactSummary .miniStat span,
.summaryCards.compactSummary.advanceSummary .miniStat span{
  font-size:8.8px!important;
  letter-spacing:.07em!important;
  line-height:1.1!important;
  min-height:18px!important;
  display:flex!important;
  align-items:flex-start!important;
  color:#64748b!important;
}
.advanceSummary.compactSummary .miniStat strong,
.summaryCards.compactSummary.advanceSummary .miniStat strong{
  margin-top:5px!important;
  font-size:17px!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.advanceSummary.compactSummary .miniStat strong:has(+ small),
.summaryCards.compactSummary.advanceSummary .miniStat strong:has(+ small){margin-bottom:1px!important;}
.advanceSummary.compactSummary .miniStat small,
.summaryCards.compactSummary.advanceSummary .miniStat small{
  font-size:9px!important;
  line-height:1.1!important;
  color:#64748b!important;
  margin-top:2px!important;
}
@media(max-width:1500px){
  .advanceSummary.compactSummary,
  .summaryCards.compactSummary.advanceSummary{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(max-width:780px){
  .advanceSummary.compactSummary,
  .summaryCards.compactSummary.advanceSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* V1.1W29C — Worker Advances table readability and badge spacing */
.advanceTable.financeReadableTable{
  overflow-x:auto!important;
}
.advanceTable.financeReadableTable table{
  min-width:1260px!important;
  table-layout:fixed!important;
}
.advanceTable.financeReadableTable th:nth-child(1){width:96px!important;}
.advanceTable.financeReadableTable th:nth-child(2){width:178px!important;}
.advanceTable.financeReadableTable th:nth-child(3){width:170px!important;}
.advanceTable.financeReadableTable th:nth-child(4){width:132px!important;}
.advanceTable.financeReadableTable th:nth-child(5){width:230px!important;}
.advanceTable.financeReadableTable th:nth-child(6){width:122px!important;}
.advanceTable.financeReadableTable th:nth-child(7){width:142px!important;}
.advanceTable.financeReadableTable th:nth-child(8){width:118px!important;}
.advanceTable.financeReadableTable td{
  padding-top:10px!important;
  padding-bottom:10px!important;
  vertical-align:middle!important;
  overflow:visible!important;
}
.advanceTable.financeReadableTable tr{
  min-height:54px!important;
}
.advanceTable .financeStack{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:4px!important;
  min-width:205px!important;
  max-width:225px!important;
}
.advanceTable .financeStack div{
  display:grid!important;
  grid-template-columns:72px 1fr!important;
  align-items:center!important;
  column-gap:8px!important;
  padding:4px 7px!important;
  border-radius:9px!important;
  background:#fbfdff!important;
}
.advanceTable .financeStack span{
  display:block!important;
  margin:0!important;
  font-size:8.4px!important;
  line-height:1!important;
  letter-spacing:.06em!important;
  color:#64748b!important;
  white-space:nowrap!important;
}
.advanceTable .financeStack b{
  display:block!important;
  text-align:right!important;
  font-size:10.6px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
.advanceTable .riskCell,
.advanceTable .advanceStatusCell{
  overflow:visible!important;
}
.advanceTable .riskCell .statusBadge,
.advanceTable .advanceStatusCell .statusBadge{
  max-width:126px!important;
  min-width:0!important;
  white-space:normal!important;
  line-height:1.12!important;
  text-align:center!important;
  padding:4px 7px!important;
}
.advanceTable .advanceActions{
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  gap:4px!important;
  max-width:112px!important;
}
.advanceTable .advanceActions .miniAction,
.advanceTable .advanceActions a,
.advanceTable .advanceActions .muted{
  min-height:21px!important;
  padding:3px 7px!important;
  font-size:9.6px!important;
}
.advanceTable .projectCell{
  max-width:none!important;
  line-height:1.25!important;
}
.advanceTable .advanceIdCell .smallNote{
  max-width:84px!important;
}
@media(max-width:1200px){
  .advanceTable.financeReadableTable table{min-width:1220px!important;}
  .advanceTable .financeStack{max-width:215px!important;}
}

/* V1.1W30A Salary / Wage Table Finance Readability & Action Clarity */
.salaryTableReadable table{
  min-width:1120px!important;
  table-layout:fixed!important;
}
.salaryTableReadable th:nth-child(1), .salaryTableReadable td:nth-child(1){width:98px!important;white-space:nowrap!important;}
.salaryTableReadable th:nth-child(2), .salaryTableReadable td:nth-child(2){width:165px!important;}
.salaryTableReadable th:nth-child(3), .salaryTableReadable td:nth-child(3){width:185px!important;}
.salaryTableReadable th:nth-child(4), .salaryTableReadable td:nth-child(4){width:122px!important;white-space:nowrap!important;}
.salaryTableReadable th:nth-child(5), .salaryTableReadable td:nth-child(5){width:180px!important;}
.salaryTableReadable th:nth-child(6), .salaryTableReadable td:nth-child(6){width:135px!important;}
.salaryTableReadable th:nth-child(7), .salaryTableReadable td:nth-child(7){width:105px!important;text-align:center!important;}
.salaryTableReadable th:nth-child(8), .salaryTableReadable td:nth-child(8){width:112px!important;text-align:center!important;}
.salaryTableReadable th:nth-child(9), .salaryTableReadable td:nth-child(9){width:130px!important;}
.salaryTableReadable td{vertical-align:middle!important;padding-top:10px!important;padding-bottom:10px!important;}
.salaryTableReadable .dateStack{white-space:nowrap!important;line-height:1.35!important;font-weight:800!important;color:#0f172a!important;}
.salaryTableReadable .dateStack span{display:block!important;color:#64748b!important;font-size:11px!important;font-weight:800!important;white-space:nowrap!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock{display:grid!important;gap:5px!important;min-width:0!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock div{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:2px 0!important;border-bottom:1px dashed rgba(148,163,184,.25)!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock div:last-child{border-bottom:0!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock span{font-size:9px!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-weight:950!important;color:#64748b!important;white-space:nowrap!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock strong{font-size:11px!important;font-weight:950!important;color:#0f172a!important;white-space:nowrap!important;text-align:right!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock .warnMoney{color:#b45309!important;background:#fff7ed!important;border:1px solid #fed7aa!important;border-radius:999px!important;padding:2px 7px!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock .balanceDue{color:#0f172a!important;font-size:12px!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock .mutedMoney{color:#64748b!important;background:#f1f5f9!important;border:1px solid #e2e8f0!important;border-radius:999px!important;padding:2px 7px!important;}
.salaryTableReadable .salaryActions{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:5px!important;flex-wrap:wrap!important;min-width:120px!important;}
.salaryTableReadable .salaryActions .miniAction,
.salaryTableReadable .salaryActions .statusBadge,
.salaryTableReadable .salaryActions a{margin:0!important;white-space:nowrap!important;line-height:1.15!important;padding:5px 8px!important;font-size:11px!important;}
.salaryTableReadable .statusBadge{white-space:nowrap!important;}
@media(max-width:1200px){.salaryTableReadable table{min-width:1060px!important}.salaryTableReadable .financeMiniBlock.salaryMoneyBlock strong{font-size:10px!important}}

/* V1.1W31 — Client Payment Status Finance Table Readability */
.clientPaymentTable.clientPayReadableTable table{
  min-width:1180px!important;
  table-layout:fixed!important;
}
.clientPayReadableTable th:nth-child(1), .clientPayReadableTable td:nth-child(1){width:92px!important;white-space:nowrap!important;}
.clientPayReadableTable th:nth-child(2), .clientPayReadableTable td:nth-child(2){width:220px!important;}
.clientPayReadableTable th:nth-child(3), .clientPayReadableTable td:nth-child(3){width:190px!important;}
.clientPayReadableTable th:nth-child(4), .clientPayReadableTable td:nth-child(4){width:132px!important;}
.clientPayReadableTable th:nth-child(5), .clientPayReadableTable td:nth-child(5){width:122px!important;text-align:right!important;}
.clientPayReadableTable th:nth-child(6), .clientPayReadableTable td:nth-child(6){width:132px!important;text-align:center!important;}
.clientPayReadableTable th:nth-child(7), .clientPayReadableTable td:nth-child(7){width:112px!important;}
.clientPayReadableTable th:nth-child(8), .clientPayReadableTable td:nth-child(8){width:128px!important;text-align:center!important;}
.clientPayReadableTable th:nth-child(9), .clientPayReadableTable td:nth-child(9){width:132px!important;}
.clientPayReadableTable td{vertical-align:middle!important;padding-top:10px!important;padding-bottom:10px!important;}
.clientPayReadableTable .periodStack{line-height:1.28!important;white-space:nowrap!important;}
.clientPayReadableTable .periodStack strong{display:block!important;color:#0f172a!important;font-size:11px!important;font-weight:950!important;white-space:nowrap!important;}
.clientPayReadableTable .periodStack span{display:inline-flex!important;margin-top:3px!important;padding:2px 7px!important;border-radius:999px!important;background:#eef5ff!important;color:#174f89!important;font-size:10px!important;font-weight:900!important;white-space:nowrap!important;}
.clientPayReadableTable .invoiceStack{line-height:1.25!important;}
.clientPayReadableTable .invoiceStack strong{display:block!important;white-space:nowrap!important;color:#0f172a!important;font-weight:950!important;}
.clientPayReadableTable .invoiceStack span{display:block!important;white-space:nowrap!important;color:#64748b!important;font-size:10.5px!important;font-weight:800!important;margin-top:2px!important;}
.clientPayReadableTable .moneyNowrap{display:inline-flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:4px!important;white-space:nowrap!important;font-variant-numeric:tabular-nums!important;font-weight:950!important;}
.clientPayReadableTable .moneyNowrap small{font-size:9px!important;letter-spacing:.04em!important;color:#334155!important;font-weight:950!important;}
.clientPayReadableTable .dateNowrap{white-space:nowrap!important;font-variant-numeric:tabular-nums!important;}
.clientPayReadableTable .statusBadge{white-space:nowrap!important;min-width:auto!important;padding-left:8px!important;padding-right:8px!important;}
.clientPayReadableTable .clientPayActions{justify-content:flex-start!important;gap:5px!important;max-width:130px!important;}
.clientPayReadableTable .clientPayActions .miniAction,
.clientPayReadableTable .clientPayActions a,
.clientPayReadableTable .clientPayActions .muted{font-size:10px!important;padding:4px 7px!important;min-height:22px!important;}
@media(max-width:1200px){
  .clientPaymentTable.clientPayReadableTable table{min-width:1120px!important;}
  .clientPayReadableTable th:nth-child(2), .clientPayReadableTable td:nth-child(2){width:205px!important;}
  .clientPayReadableTable th:nth-child(3), .clientPayReadableTable td:nth-child(3){width:180px!important;}
}

/* V1.1W31A — Client Payment Status Summary Cards Alignment Fix
   CSS-only: aligns receivable summary cards with approved finance card style. */
.clientPaymentSummaryGrid.workerSummaryGrid,
.workerSummaryGrid.clientPaymentSummaryGrid{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:10px!important;
  margin:10px 0 14px!important;
  align-items:stretch!important;
}
.clientPaymentSummaryGrid .miniKpi{
  min-height:64px!important;
  height:64px!important;
  padding:9px 12px!important;
  border-radius:15px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.clientPaymentSummaryGrid .miniKpi small{
  display:block!important;
  margin:0 0 4px!important;
  font-size:9px!important;
  line-height:1.05!important;
  letter-spacing:.085em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.clientPaymentSummaryGrid .miniKpi strong{
  display:block!important;
  margin:0!important;
  font-size:20px!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-variant-numeric:tabular-nums!important;
}
.clientPaymentSummaryGrid .miniKpi strong br{display:none!important;}
.clientPaymentSummaryGrid .miniKpi.tone-blue{border-top-color:#2563eb!important;}
.clientPaymentSummaryGrid .miniKpi.tone-gray{border-top-color:#64748b!important;}
.clientPaymentSummaryGrid .miniKpi.tone-amber{border-top-color:#d97706!important;}
.clientPaymentSummaryGrid .miniKpi.tone-green{border-top-color:#16a34a!important;}
.clientPaymentSummaryGrid .miniKpi.tone-red{border-top-color:#dc2626!important;}
@media(max-width:1500px){
  .clientPaymentSummaryGrid.workerSummaryGrid,
  .workerSummaryGrid.clientPaymentSummaryGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(max-width:900px){
  .clientPaymentSummaryGrid.workerSummaryGrid,
  .workerSummaryGrid.clientPaymentSummaryGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .clientPaymentSummaryGrid .miniKpi{height:auto!important;min-height:62px!important;}
}
@media(max-width:560px){
  .clientPaymentSummaryGrid.workerSummaryGrid,
  .workerSummaryGrid.clientPaymentSummaryGrid{grid-template-columns:1fr!important;}
}

/* =========================================================
   V1.1W32B — Universal UI Component Standards
   Purpose: unify cards, buttons, badges, filters, tables, finance values
   across existing page-specific classes without changing PHP/business logic.
   ========================================================= */

:root{
  --iwp-radius-sm:8px;
  --iwp-radius-md:12px;
  --iwp-radius-lg:16px;
  --iwp-border:#e2e8f0;
  --iwp-bg-soft:#f8fafc;
  --iwp-text:#0f172a;
  --iwp-muted:#64748b;
  --iwp-primary:#1e3a8a;
  --iwp-primary-2:#2563eb;
  --iwp-success:#16a34a;
  --iwp-warning:#d97706;
  --iwp-danger:#dc2626;
  --iwp-info:#0284c7;
  --iwp-shadow-sm:0 1px 2px rgba(15,23,42,.06);
  --iwp-shadow-md:0 10px 24px rgba(15,23,42,.07);
}

/* ---------- Universal page header / hero ---------- */
.pageHero,.page-hero,.iwp-page-hero,.dash-hero,.heroPanel{
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:var(--iwp-radius-lg)!important;
  background:linear-gradient(135deg,#ffffff 0%,#f8fafc 52%,#eef6ff 100%)!important;
  box-shadow:var(--iwp-shadow-md)!important;
  padding:14px 16px!important;
  margin-bottom:12px!important;
}
.pageHero h1,.pageHero h2,.page-hero h1,.page-hero h2,.dash-hero h1,.heroPanel h1,
.pageTitle,.iwp-page-title{
  color:var(--iwp-text)!important;
  font-size:20px!important;
  line-height:1.18!important;
  letter-spacing:-.02em!important;
  margin:0 0 5px!important;
  font-weight:900!important;
}
.pageHero p,.page-hero p,.dash-hero p,.heroPanel p,.pageSubtitle,.iwp-page-subtitle{
  color:var(--iwp-muted)!important;
  font-size:12px!important;
  line-height:1.45!important;
  margin:0!important;
  max-width:980px!important;
}

/* ---------- Universal summary/KPI card system ---------- */
.summaryCards,.compactSummary,.workerSummaryGrid,.clientSummaryGrid,.projectSummaryGrid,
.demandSummaryGrid,.deploymentSummaryGrid,.timesheetSummaryGrid,.advanceSummaryGrid,
.salarySummaryGrid,.paymentSummaryGrid,.clientPaymentSummaryGrid,.eligibilitySummaryGrid,
.riskSummaryGrid,.reportSummaryGrid,.dashboardKpiGrid,.kpiGrid,.iwp-summary-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
  margin:10px 0 12px!important;
}
.summaryCard,.miniStat,.miniKpi,.exec-kpi,.dash-card.kpi,.kpi-card,.iwp-summary-card,
.workerSummaryGrid>*,.clientSummaryGrid>*,.projectSummaryGrid>*,.demandSummaryGrid>*,
.deploymentSummaryGrid>*,.timesheetSummaryGrid>*,.advanceSummaryGrid>*,.salarySummaryGrid>*,
.paymentSummaryGrid>*,.clientPaymentSummaryGrid>*,.eligibilitySummaryGrid>*,.riskSummaryGrid>*,
.reportSummaryGrid>*,.dashboardKpiGrid>*{
  min-height:66px!important;
  height:auto!important;
  padding:10px 12px!important;
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:var(--iwp-radius-md)!important;
  background:#fff!important;
  box-shadow:var(--iwp-shadow-sm)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:3px!important;
  overflow:hidden!important;
  position:relative!important;
}
.summaryCard:before,.miniStat:before,.miniKpi:before,.exec-kpi:before,.kpi-card:before,.iwp-summary-card:before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--iwp-primary-2),#7dd3fc);
  opacity:.9;
}
.summaryCard .label,.summaryCard label,.summaryCard small,.miniStat .label,.miniStat small,
.miniKpi .label,.miniKpi small,.exec-kpi .label,.kpi-card .label,.iwp-summary-label,
.summaryCards .label,.compactSummary .label{
  font-size:10px!important;
  line-height:1.08!important;
  font-weight:850!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  color:#475569!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  margin:0!important;
}
.summaryCard strong,.miniStat strong,.miniKpi strong,.exec-kpi strong,.kpi-card strong,
.iwp-summary-value,.summaryCard .value,.miniStat .value,.miniKpi .value{
  display:block!important;
  font-size:19px!important;
  line-height:1.08!important;
  font-weight:950!important;
  letter-spacing:-.025em!important;
  color:#0f172a!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-variant-numeric:tabular-nums!important;
  margin:0!important;
}
.summaryCard strong br,.miniStat strong br,.miniKpi strong br,.exec-kpi strong br,.kpi-card strong br{display:none!important;}
.summaryCard .note,.miniStat .note,.miniKpi .note,.exec-kpi .note,.kpi-card .note,
.iwp-summary-note,.summaryCard span:not(.badge):not(.statusBadge):not(.pill),
.miniKpi span:not(.badge):not(.statusBadge):not(.pill),.miniStat span:not(.badge):not(.statusBadge):not(.pill){
  font-size:11px!important;
  line-height:1.22!important;
  color:#64748b!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
/* tone aliases */
.tone-green:before,.summaryCard.success:before,.miniKpi.success:before{background:linear-gradient(90deg,#16a34a,#86efac)!important;}
.tone-amber:before,.summaryCard.warning:before,.miniKpi.warning:before{background:linear-gradient(90deg,#d97706,#fde68a)!important;}
.tone-red:before,.summaryCard.danger:before,.miniKpi.danger:before{background:linear-gradient(90deg,#dc2626,#fca5a5)!important;}
.tone-blue:before,.summaryCard.info:before,.miniKpi.info:before{background:linear-gradient(90deg,#2563eb,#93c5fd)!important;}
.tone-gray:before,.summaryCard.muted:before,.miniKpi.muted:before{background:linear-gradient(90deg,#64748b,#cbd5e1)!important;}

/* ---------- Universal money / finance values ---------- */
.iwp-money,.money,.amount,.financeValue,.cellMoney,.iwp-cell-money,
td.money,td.amount,td.finance, .professionalTable td.money, .professionalTable td.amount{
  font-variant-numeric:tabular-nums!important;
  white-space:nowrap!important;
  text-align:right!important;
  letter-spacing:-.01em!important;
}
.financeBlock,.amountBlock,.recoveryBlock,.payableBlock,.paymentBlock{
  display:grid!important;
  gap:2px!important;
  min-width:128px!important;
  white-space:normal!important;
}
.financeBlock div,.amountBlock div,.recoveryBlock div,.payableBlock div,.paymentBlock div{
  display:flex!important;
  justify-content:space-between!important;
  gap:10px!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
.financeBlock .label,.amountBlock .label,.recoveryBlock .label,.payableBlock .label,.paymentBlock .label{
  color:#64748b!important;font-size:10.5px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.04em!important;
}
.financeBlock strong,.amountBlock strong,.recoveryBlock strong,.payableBlock strong,.paymentBlock strong{
  color:#0f172a!important;font-size:12px!important;font-weight:900!important;
}

/* ---------- Universal buttons / action links ---------- */
.btn,.iwp-btn,.miniAction,.actionBtn,.toolbarBtn,.heroActions a,.dash-button-row a,
.tableActions a,.rowActions a,.filterActions button,.filterActions a,
button.btn,input[type="submit"].btn,input[type="button"].btn{
  min-height:30px!important;
  padding:7px 11px!important;
  border-radius:10px!important;
  border:1px solid #dbe3ef!important;
  background:#fff!important;
  color:#1e293b!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:800!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  text-decoration:none!important;
  vertical-align:middle!important;
  box-shadow:0 1px 1px rgba(15,23,42,.04)!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.btn:hover,.iwp-btn:hover,.miniAction:hover,.actionBtn:hover,.toolbarBtn:hover,.heroActions a:hover,
.tableActions a:hover,.rowActions a:hover{background:#f8fafc!important;border-color:#bcd0ea!important;transform:translateY(-1px);}
.btn.primary,.iwp-btn-primary,.btnPrimary,.heroActions .primary,.dash-button-row .primary{background:#1e3a8a!important;border-color:#1e3a8a!important;color:#fff!important;}
.btn.danger,.iwp-btn-danger,.miniAction.danger,.deleteBtn{background:#fff5f5!important;border-color:#fecaca!important;color:#b91c1c!important;}
.btn.success,.iwp-btn-success{background:#f0fdf4!important;border-color:#bbf7d0!important;color:#166534!important;}
.btn.muted,.iwp-btn-muted,.miniAction.muted,.lockedAction{background:#f1f5f9!important;border-color:#e2e8f0!important;color:#64748b!important;cursor:not-allowed!important;}
.tableActions,.rowActions,.iwp-cell-actions{display:flex!important;flex-wrap:wrap!important;gap:5px!important;align-items:center!important;justify-content:flex-start!important;min-width:104px!important;}
.tableActions .miniAction,.rowActions .miniAction{min-height:26px!important;padding:6px 8px!important;font-size:11px!important;border-radius:999px!important;}

/* ---------- Universal badges / status pills ---------- */
.badge,.pill,.statusBadge,.mutedBadge,.iwp-badge,.riskBadge,.paymentBadge,.lockBadge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:21px!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  border:1px solid #e2e8f0!important;
  background:#f8fafc!important;
  color:#475569!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.015em!important;
  white-space:nowrap!important;
  max-width:100%!important;
}
.badge.green,.pill.green,.statusBadge.green,.iwp-badge-success,.successBadge{background:#ecfdf5!important;border-color:#bbf7d0!important;color:#166534!important;}
.badge.red,.pill.red,.statusBadge.red,.iwp-badge-danger,.dangerBadge{background:#fef2f2!important;border-color:#fecaca!important;color:#991b1b!important;}
.badge.amber,.pill.amber,.statusBadge.amber,.iwp-badge-warning,.warningBadge{background:#fffbeb!important;border-color:#fde68a!important;color:#92400e!important;}
.badge.blue,.pill.blue,.statusBadge.blue,.iwp-badge-info,.infoBadge{background:#eff6ff!important;border-color:#bfdbfe!important;color:#1d4ed8!important;}
.badge.gray,.pill.gray,.statusBadge.gray,.iwp-badge-muted,.mutedBadge{background:#f1f5f9!important;border-color:#e2e8f0!important;color:#475569!important;}
.badge.locked,.pill.locked,.statusBadge.locked,.iwp-badge-locked,.lockBadge{background:#0f172a!important;border-color:#0f172a!important;color:#fff!important;}

/* ---------- Universal filter panels ---------- */
.filterCard,.filter-panel,.iwp-filter-card,.listFilter,.reportFilters,.filterBox{
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:var(--iwp-radius-lg)!important;
  background:#fff!important;
  box-shadow:var(--iwp-shadow-sm)!important;
  padding:12px!important;
  margin:10px 0 12px!important;
}
.filterGrid,.iwp-filter-grid,.filtersGrid,.reportFilterGrid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:9px!important;
  align-items:end!important;
}
.filterCard label,.filter-panel label,.iwp-filter-label,.listFilter label,.reportFilters label{
  display:block!important;
  font-size:10.5px!important;
  font-weight:850!important;
  color:#475569!important;
  text-transform:uppercase!important;
  letter-spacing:.055em!important;
  margin:0 0 4px!important;
}
.filterCard input,.filterCard select,.filter-panel input,.filter-panel select,.listFilter input,.listFilter select,
.reportFilters input,.reportFilters select,.iwp-filter-control{
  min-height:32px!important;
  border:1px solid #dbe3ef!important;
  border-radius:10px!important;
  padding:6px 9px!important;
  font-size:12px!important;
  background:#fff!important;
  width:100%!important;
}

/* ---------- Universal table cards / tables ---------- */
.tableCard,.tablewrap,.iwp-table-card,.professionalTableWrap,.dataTableWrap{
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:var(--iwp-radius-lg)!important;
  background:#fff!important;
  box-shadow:var(--iwp-shadow-sm)!important;
  overflow:auto!important;
  margin:10px 0 12px!important;
}
.professionalTable,.iwp-table,.dataTable,.tableCard table,.tablewrap table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  font-size:12px!important;
}
.professionalTable th,.iwp-table th,.dataTable th,.tableCard table th,.tablewrap table th{
  background:#f8fafc!important;
  color:#334155!important;
  font-size:10.5px!important;
  line-height:1.1!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  padding:9px 10px!important;
  border-bottom:1px solid #e2e8f0!important;
  white-space:nowrap!important;
  text-align:left!important;
}
.professionalTable td,.iwp-table td,.dataTable td,.tableCard table td,.tablewrap table td{
  padding:9px 10px!important;
  border-bottom:1px solid #edf2f7!important;
  vertical-align:middle!important;
  color:#1e293b!important;
  line-height:1.25!important;
}
.professionalTable tr:hover td,.iwp-table tr:hover td,.dataTable tr:hover td,.tableCard table tr:hover td,.tablewrap table tr:hover td{background:#fbfdff!important;}
.cellMain,.iwp-cell-main{font-weight:850!important;color:#0f172a!important;line-height:1.22!important;}
.cellMuted,.iwp-cell-muted,.mutedLine{color:#64748b!important;font-size:11px!important;line-height:1.25!important;}
.cellDate,.iwp-cell-date,td.date{white-space:nowrap!important;font-variant-numeric:tabular-nums!important;}

/* ---------- Collapsible/forms/common cards ---------- */
.card,.formCard,.formDrawer,.iwp-form-drawer,.sectionCard,.controlCard{
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:var(--iwp-radius-lg)!important;
  background:#fff!important;
  box-shadow:var(--iwp-shadow-sm)!important;
}
.formGrid,.iwp-form-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;gap:10px!important;}
.formActions,.iwp-form-actions{display:flex!important;gap:8px!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:wrap!important;margin-top:10px!important;}
.stepCard,.iwp-step-card{border:1px solid #e2e8f0!important;border-radius:14px!important;background:#fbfdff!important;padding:12px!important;}

/* ---------- Empty states ---------- */
.emptyState,.iwp-empty-state,.noRecords{
  border:1px dashed #cbd5e1!important;
  border-radius:var(--iwp-radius-lg)!important;
  background:#f8fafc!important;
  color:#475569!important;
  padding:18px!important;
  text-align:center!important;
  font-size:13px!important;
}

/* ---------- Responsive standards ---------- */
@media(max-width:1300px){
  .summaryCards,.compactSummary,.workerSummaryGrid,.clientSummaryGrid,.projectSummaryGrid,
  .demandSummaryGrid,.deploymentSummaryGrid,.timesheetSummaryGrid,.advanceSummaryGrid,
  .salarySummaryGrid,.paymentSummaryGrid,.clientPaymentSummaryGrid,.eligibilitySummaryGrid,
  .riskSummaryGrid,.reportSummaryGrid,.dashboardKpiGrid,.kpiGrid,.iwp-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:900px){
  .summaryCards,.compactSummary,.workerSummaryGrid,.clientSummaryGrid,.projectSummaryGrid,
  .demandSummaryGrid,.deploymentSummaryGrid,.timesheetSummaryGrid,.advanceSummaryGrid,
  .salarySummaryGrid,.paymentSummaryGrid,.clientPaymentSummaryGrid,.eligibilitySummaryGrid,
  .riskSummaryGrid,.reportSummaryGrid,.dashboardKpiGrid,.kpiGrid,.iwp-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .summaryCard,.miniStat,.miniKpi,.exec-kpi,.dash-card.kpi,.kpi-card,.iwp-summary-card{min-height:62px!important;}
  .summaryCard strong,.miniStat strong,.miniKpi strong,.exec-kpi strong,.kpi-card strong,.iwp-summary-value{font-size:17px!important;}
}
@media(max-width:560px){
  .summaryCards,.compactSummary,.workerSummaryGrid,.clientSummaryGrid,.projectSummaryGrid,
  .demandSummaryGrid,.deploymentSummaryGrid,.timesheetSummaryGrid,.advanceSummaryGrid,
  .salarySummaryGrid,.paymentSummaryGrid,.clientPaymentSummaryGrid,.eligibilitySummaryGrid,
  .riskSummaryGrid,.reportSummaryGrid,.dashboardKpiGrid,.kpiGrid,.iwp-summary-grid{grid-template-columns:1fr!important;}
  .btn,.iwp-btn,.miniAction,.actionBtn,.toolbarBtn{width:auto!important;}
}

/* ---------- Print consistency ---------- */
@media print{
  .summaryCards,.compactSummary,.workerSummaryGrid,.clientSummaryGrid,.projectSummaryGrid,
  .advanceSummaryGrid,.salarySummaryGrid,.paymentSummaryGrid,.clientPaymentSummaryGrid,
  .reportSummaryGrid,.dashboardKpiGrid{grid-template-columns:repeat(4,1fr)!important;gap:6px!important;}
  .summaryCard,.miniStat,.miniKpi,.exec-kpi,.kpi-card{box-shadow:none!important;break-inside:avoid!important;min-height:50px!important;padding:8px!important;}
  .btn,.miniAction,.toolbarBtn,.filterCard,.filter-panel,.no-print{display:none!important;}
}

/* =========================================================
   V1.1W32C — Universal UI Structure Normalization Layer
   Purpose: one reusable visual language for Mgmt Reports,
   Payroll & Payments, and all finance/reporting pages.
   ========================================================= */
:root{
  --iwp-card-min-h: 72px;
  --iwp-card-pad-y: 11px;
  --iwp-card-pad-x: 13px;
  --iwp-card-label: 10px;
  --iwp-card-value: 18px;
  --iwp-card-note: 10.5px;
  --iwp-btn-h: 30px;
  --iwp-btn-pad-x: 11px;
  --iwp-badge-h: 22px;
}

/* Universal summary grids: force one component model across all aliases. */
.iwp-summary-grid,
.summaryCards,
.compactSummary,
.workerSummaryGrid,
.clientSummaryGrid,
.projectSummaryGrid,
.demandSummaryGrid,
.deploymentSummaryGrid,
.timesheetSummaryGrid,
.advanceSummaryGrid,
.salarySummaryGrid,
.paymentSummaryGrid,
.clientPaymentSummaryGrid,
.eligibilitySummaryGrid,
.riskSummaryGrid,
.reportSummaryGrid,
.exposureSummary,
.dashboardKpiGrid,
.kpiGrid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
  margin:10px 0 13px!important;
}

.iwp-summary-card,
.summaryCard,
.miniStat,
.miniKpi,
.exec-kpi,
.kpi-card,
.dash-card.kpi{
  min-height:var(--iwp-card-min-h)!important;
  padding:var(--iwp-card-pad-y) var(--iwp-card-pad-x)!important;
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  box-shadow:0 6px 18px rgba(15,23,42,.045)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:4px!important;
  overflow:hidden!important;
}
.iwp-summary-card span:first-child,
.summaryCard small,
.summaryCard>span:first-child,
.miniStat>span:first-child,
.miniKpi>span:first-child,
.exec-kpi .kpi-label,
.iwp-summary-label{
  font-size:var(--iwp-card-label)!important;
  font-weight:900!important;
  line-height:1.15!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
  margin:0!important;
}
.iwp-summary-card strong,
.summaryCard strong,
.miniStat strong,
.miniKpi strong,
.exec-kpi .kpi-value,
.iwp-summary-value{
  display:block!important;
  font-size:var(--iwp-card-value)!important;
  line-height:1.12!important;
  font-weight:950!important;
  color:#0f172a!important;
  letter-spacing:-.025em!important;
  margin:0!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
.iwp-summary-card small,
.summaryCard>span:last-child,
.miniStat small,
.miniKpi small,
.iwp-summary-note{
  display:block!important;
  color:#64748b!important;
  font-size:var(--iwp-card-note)!important;
  line-height:1.2!important;
  font-weight:700!important;
  margin:0!important;
}

/* Finance/SAR values: one readable approach everywhere. */
.iwp-money,
.moneyCell,
.cellMoney,
.financeMiniBlock,
.salaryMoneyBlock,
td[class*="amount"],
td[class*="Amount"]{
  font-variant-numeric:tabular-nums!important;
}
.iwp-money strong,
.moneyCell strong,
.financeMiniBlock strong,
.salaryMoneyBlock strong,
.iwp-cell-money,
td .amountLine,
.moneyText{
  white-space:nowrap!important;
  font-size:12px!important;
  line-height:1.22!important;
}
td strong:has(+ .muted.smallNote),
.moneyCell strong{
  white-space:nowrap!important;
}

/* Universal buttons and action links. */
.iwp-btn,
.btn,
button,
.miniAction,
.actionBtn,
.toolbarBtn,
.heroActions a,
.tableActions a,
.rowActions a,
a.btn{
  min-height:var(--iwp-btn-h)!important;
  height:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  padding:7px var(--iwp-btn-pad-x)!important;
  border-radius:10px!important;
  font-size:11.5px!important;
  line-height:1!important;
  font-weight:850!important;
  text-decoration:none!important;
  vertical-align:middle!important;
  white-space:nowrap!important;
}
.iwp-btn-sm,
.miniAction,
.tableActions a,
.rowActions a{
  min-height:25px!important;
  padding:6px 8px!important;
  border-radius:9px!important;
  font-size:10.8px!important;
}
.iwp-btn-secondary,
.btn.secondary,
a.secondary{
  background:#f8fafc!important;
  color:#0f172a!important;
  border:1px solid #dbe4ee!important;
}
.iwp-btn-danger,
.dangerText{
  color:#b91c1c!important;
  border-color:#fecaca!important;
  background:#fff7f7!important;
}
.iwp-btn.disabled,.miniAction.disabled,.btn.disabled,
span.miniAction,span.btn{
  opacity:.75!important;
  cursor:not-allowed!important;
  background:#f1f5f9!important;
  color:#64748b!important;
  border-color:#e2e8f0!important;
}
.heroActions,.dash-button-row,.tableActions,.rowActions{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}

/* Universal badges/status pills. */
.iwp-badge,
.statusBadge,
.badge,
.pill,
.mutedBadge{
  min-height:var(--iwp-badge-h)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  font-size:10.5px!important;
  line-height:1.05!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
  border:1px solid rgba(203,213,225,.9)!important;
}
.statusBadge.neutral,.badge.neutral,.iwp-badge-muted{background:#f8fafc!important;color:#475569!important;border-color:#e2e8f0!important;}
.statusBadge.st-active,.badge.ok,.iwp-badge-success{background:#ecfdf5!important;color:#047857!important;border-color:#a7f3d0!important;}
.statusBadge.st-pending,.statusBadge.warn,.badge.warn,.iwp-badge-warning{background:#fffbeb!important;color:#b45309!important;border-color:#fde68a!important;}
.statusBadge.danger,.statusBadge.st-cancelled,.iwp-badge-danger{background:#fef2f2!important;color:#b91c1c!important;border-color:#fecaca!important;}
.statusBadge.st-approved,.statusBadge.info,.badge.info,.iwp-badge-info{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important;}
.statusBadge.st-paid,.iwp-badge-finance{background:#ecfdf5!important;color:#065f46!important;border-color:#a7f3d0!important;}
.statusBadge.st-used,.statusBadge.st-locked,.iwp-badge-locked{background:#f1f5f9!important;color:#334155!important;border-color:#cbd5e1!important;}

/* Universal filter/form panels. */
.iwp-filter-card,
.filterCard,
.card.filterCard{
  padding:12px!important;
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 6px 16px rgba(15,23,42,.035)!important;
}
.iwp-filter-grid,
.filterGrid,
.filtergrid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:9px!important;
  align-items:end!important;
}
.iwp-filter-card label,.filterCard label,
.iwp-form-grid label,.formgrid label{
  font-size:10.5px!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  color:#475569!important;
}
.iwp-filter-card input,.iwp-filter-card select,.filterCard input,.filterCard select,
.formgrid input,.formgrid select,.formgrid textarea{
  min-height:31px!important;
  border-radius:10px!important;
  font-size:12px!important;
}

/* Universal table structure. */
.iwp-table-wrap,
.tablewrap,
.tableCard,
.card.tableCard{
  overflow-x:auto!important;
  border-radius:15px!important;
  border:1px solid rgba(226,232,240,.9)!important;
  background:#fff!important;
  box-shadow:0 7px 18px rgba(15,23,42,.035)!important;
}
.iwp-table,
.professionalTable,
.dataTable,
.tablewrap table,
.tableCard table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  font-size:12px!important;
}
.iwp-table th,
.professionalTable th,
.dataTable th,
.tablewrap table th,
.tableCard table th{
  background:#f8fafc!important;
  color:#334155!important;
  font-size:10.5px!important;
  font-weight:950!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  padding:9px 10px!important;
  white-space:nowrap!important;
  border-bottom:1px solid #e2e8f0!important;
}
.iwp-table td,
.professionalTable td,
.dataTable td,
.tablewrap table td,
.tableCard table td{
  padding:9px 10px!important;
  vertical-align:middle!important;
  border-bottom:1px solid #edf2f7!important;
  line-height:1.24!important;
}
.iwp-table tr:hover td,
.professionalTable tr:hover td,
.dataTable tr:hover td{background:#fbfdff!important;}
.iwp-cell-main,.cellMain{font-weight:900!important;color:#0f172a!important;line-height:1.22!important;}
.iwp-cell-muted,.cellMuted,.mutedLine,.muted.smallNote{font-size:11px!important;color:#64748b!important;line-height:1.25!important;}
.iwp-cell-date,.dateNowrap,td.date{white-space:nowrap!important;font-variant-numeric:tabular-nums!important;}
.iwp-cell-actions,.tableActions,.rowActions{min-width:86px!important;}

/* Page headers/empty states. */
.iwp-page-hero,.pageHero,.compactHero,.page-hero{
  border-radius:18px!important;
  border:1px solid rgba(226,232,240,.9)!important;
}
.iwp-empty-state,.empty-state,.emptyState,.noRecords{
  border:1px dashed #cbd5e1!important;
  background:#f8fafc!important;
  color:#475569!important;
  border-radius:16px!important;
  padding:18px!important;
  text-align:center!important;
  font-weight:700!important;
}

/* Responsive: keep standards graceful. */
@media(max-width:1200px){
  .iwp-summary-grid,.summaryCards,.compactSummary{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .iwp-summary-card,.summaryCard,.miniStat,.miniKpi{min-height:66px!important;}
}
@media(max-width:760px){
  .iwp-summary-grid,.summaryCards,.compactSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .iwp-summary-card strong,.summaryCard strong,.miniStat strong,.miniKpi strong{font-size:16px!important;}
}
@media(max-width:520px){
  .iwp-summary-grid,.summaryCards,.compactSummary{grid-template-columns:1fr!important;}
}

/* =========================================================
   V1.1W33A — Master / Operations UI Standardization
   Scope: Workers, Clients, Projects, Trades/Skills, Client Demands,
          Deployments, Timesheets. UI-only rules.
   ========================================================= */

/* Global master/operations hero alignment */
.iwp-ops-hero,
.pageHero.compactHero{
  margin-bottom:14px!important;
}
.iwp-ops-hero .heroActions button,
.pageHero .heroActions button,
.pageHero .heroActions .btn{
  min-height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}

/* Universal KPI card standard for master/operations pages */
.workerSummaryGrid,
.summaryCards.compactSummary,
.summaryCards.compactSummary.advanceRiskSummary,
.summaryCards.compactSummary.deploymentSummary{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:10px!important;
  margin:10px 0 14px!important;
  align-items:stretch!important;
}
.workerSummaryGrid .miniKpi,
.summaryCards.compactSummary .miniStat,
.summaryCards.compactSummary .miniKpi{
  min-height:62px!important;
  height:62px!important;
  padding:9px 12px!important;
  border-radius:14px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:3px!important;
  overflow:hidden!important;
}
.workerSummaryGrid .miniKpi small,
.summaryCards.compactSummary .miniStat span,
.summaryCards.compactSummary .miniKpi small{
  display:block!important;
  margin:0!important;
  font-size:9px!important;
  line-height:1.08!important;
  letter-spacing:.085em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.workerSummaryGrid .miniKpi strong,
.summaryCards.compactSummary .miniStat strong,
.summaryCards.compactSummary .miniKpi strong{
  display:block!important;
  margin:0!important;
  font-size:19px!important;
  line-height:1.05!important;
  letter-spacing:-.02em!important;
  font-weight:950!important;
  color:#0f172a!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-variant-numeric:tabular-nums!important;
}
.workerSummaryGrid .miniKpi strong br,
.summaryCards.compactSummary .miniStat strong br{display:none!important;}

/* Universal filter rhythm for master/operations forms */
.filterGrid,
.filtergrid,
.filterCard .filtergrid,
.listControlCard .filterGrid{
  gap:10px!important;
  align-items:end!important;
}
.filterGrid label,
.filtergrid label{
  font-size:10px!important;
  line-height:1.1!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  font-weight:950!important;
  color:#334155!important;
}
.filterGrid input,
.filterGrid select,
.filtergrid input,
.filtergrid select{
  min-height:34px!important;
  height:34px!important;
  font-size:12px!important;
  text-transform:none!important;
  letter-spacing:0!important;
  font-weight:650!important;
}
.filterGrid button,
.filtergrid button,
.filterGrid .btn,
.filtergrid .btn{
  min-height:34px!important;
  height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 14px!important;
  font-size:11.5px!important;
  line-height:1!important;
}

/* Universal master/operations table standard */
.professionalTable,
.tablewrap{
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.professionalTable table,
.tablewrap table{
  border-collapse:separate!important;
  border-spacing:0!important;
}
.professionalTable th,
.tablewrap th{
  font-size:9.5px!important;
  line-height:1.15!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
.professionalTable td,
.tablewrap td{
  font-size:11px!important;
  line-height:1.25!important;
  vertical-align:middle!important;
  padding-top:8px!important;
  padding-bottom:8px!important;
}
.professionalTable td strong,
.tablewrap td strong{font-weight:950!important;}
.professionalTable .muted,
.tablewrap .muted{line-height:1.2!important;}
.professionalTable .smallNote,
.tablewrap .smallNote{line-height:1.15!important;}
.professionalTable .badge,
.tablewrap .badge,
.professionalTable .statusBadge,
.tablewrap .statusBadge{
  min-height:21px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:3px 8px!important;
  border-radius:999px!important;
  font-size:9.8px!important;
  line-height:1.1!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.professionalTable .btn.tiny,
.tablewrap .btn.tiny,
.professionalTable .miniAction,
.tablewrap .miniAction,
.professionalTable .actionsCell a,
.tablewrap .actionsCell a{
  min-height:22px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:3px 8px!important;
  border-radius:999px!important;
  font-size:9.8px!important;
  line-height:1!important;
  white-space:nowrap!important;
  margin:1px 2px!important;
}
.actionsCell,
td:last-child{
  overflow:visible!important;
}
.actionsCell{
  min-width:96px!important;
  white-space:normal!important;
}

/* Workers page: keep compact approved look */
.workersTable{table-layout:fixed!important;width:100%!important;min-width:1120px!important;}
.workersTable th:nth-child(1),.workersTable td:nth-child(1){width:86px!important;}
.workersTable th:nth-child(2),.workersTable td:nth-child(2){width:145px!important;}
.workersTable th:nth-child(3),.workersTable td:nth-child(3){width:110px!important;white-space:nowrap!important;}
.workersTable th:nth-child(11),.workersTable td:nth-child(11){width:136px!important;}

/* Clients page: reduce excessive row height and make actions compact */
.clientsTable{table-layout:fixed!important;width:100%!important;min-width:1040px!important;}
.clientsTable th:nth-child(1),.clientsTable td:nth-child(1){width:90px!important;}
.clientsTable th:nth-child(2),.clientsTable td:nth-child(2){width:210px!important;}
.clientsTable th:nth-child(3),.clientsTable td:nth-child(3){width:125px!important;}
.clientsTable th:nth-child(4),.clientsTable td:nth-child(4){width:145px!important;}
.clientsTable th:nth-child(5),.clientsTable td:nth-child(5){width:88px!important;text-align:center!important;}
.clientsTable th:nth-child(8),.clientsTable td:nth-child(8){width:132px!important;text-align:right!important;white-space:nowrap!important;}
.clientsTable th:nth-child(9),.clientsTable td:nth-child(9){width:88px!important;text-align:center!important;}
.clientsTable th:nth-child(10),.clientsTable td:nth-child(10){width:150px!important;}
.clientsTable td{padding-top:10px!important;padding-bottom:10px!important;}
.clientsTable td:last-child{white-space:normal!important;}
.clientsTable td:last-child .btn,
.clientsTable td:last-child a,
.clientsTable td:last-child .badge{margin:2px!important;}

/* Projects page: fix clipped action column and reduce tall rows */
.projectsTable{table-layout:fixed!important;width:100%!important;min-width:1120px!important;}
.projectsTable th:nth-child(1),.projectsTable td:nth-child(1){width:85px!important;}
.projectsTable th:nth-child(2),.projectsTable td:nth-child(2){width:205px!important;}
.projectsTable th:nth-child(3),.projectsTable td:nth-child(3){width:150px!important;}
.projectsTable th:nth-child(4),.projectsTable td:nth-child(4){width:135px!important;}
.projectsTable th:nth-child(5),.projectsTable td:nth-child(5){width:78px!important;text-align:center!important;}
.projectsTable th:nth-child(6),.projectsTable td:nth-child(6){width:92px!important;text-align:center!important;}
.projectsTable th:nth-child(7),.projectsTable td:nth-child(7){width:150px!important;}
.projectsTable th:nth-child(8),.projectsTable td:nth-child(8){width:125px!important;text-align:right!important;white-space:nowrap!important;}
.projectsTable th:nth-child(9),.projectsTable td:nth-child(9){width:82px!important;text-align:center!important;}
.projectsTable th:nth-child(10),.projectsTable td:nth-child(10){width:136px!important;}
.projectsTable td{padding-top:10px!important;padding-bottom:10px!important;}
.projectsTable .badge{max-width:145px!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.projectsTable td:last-child{white-space:normal!important;overflow:visible!important;}
.projectsTable td:last-child .btn,
.projectsTable td:last-child a,
.projectsTable td:last-child .badge{margin:2px!important;}

/* Trades / Skills table: keep it as the clean reference master list */

/* Client Demands: compact rows, readable dates/progress/actions */
body .tablewrap table th:nth-child(11),
body .tablewrap table td:nth-child(11){overflow:visible!important;}
.progressMini,.progressbar,.progressBar{min-width:72px!important;max-width:110px!important;}
.tablewrap td:nth-child(7){white-space:nowrap!important;}
.tablewrap td:nth-child(5){white-space:nowrap!important;}

/* Deployments: dense operational register standard */
.tablewrap table th,
.tablewrap table td{word-break:normal!important;overflow-wrap:normal!important;}
.tablewrap table td:nth-child(6),
.tablewrap table td:nth-child(7),
.tablewrap table td:nth-child(8),
.timesheetTable td:nth-child(4){white-space:nowrap!important;font-variant-numeric:tabular-nums!important;}
.tablewrap table td:nth-child(12),
.timesheetTable td:nth-child(13){min-width:96px!important;overflow:visible!important;}

/* Timesheets: period and worker/client columns */
.timesheetTable table{table-layout:fixed!important;min-width:1180px!important;width:100%!important;}
.timesheetTable th:nth-child(1),.timesheetTable td:nth-child(1){width:88px!important;}
.timesheetTable th:nth-child(2),.timesheetTable td:nth-child(2){width:150px!important;}
.timesheetTable th:nth-child(3),.timesheetTable td:nth-child(3){width:190px!important;}
.timesheetTable th:nth-child(4),.timesheetTable td:nth-child(4){width:118px!important;white-space:nowrap!important;}
.timesheetTable th:nth-child(5),.timesheetTable td:nth-child(5),
.timesheetTable th:nth-child(6),.timesheetTable td:nth-child(6),
.timesheetTable th:nth-child(10),.timesheetTable td:nth-child(10),
.timesheetTable th:nth-child(11),.timesheetTable td:nth-child(11){width:88px!important;text-align:right!important;white-space:nowrap!important;}
.timesheetTable th:nth-child(7),.timesheetTable td:nth-child(7){width:150px!important;text-align:center!important;}
.timesheetTable th:nth-child(8),.timesheetTable td:nth-child(8),
.timesheetTable th:nth-child(9),.timesheetTable td:nth-child(9){width:105px!important;text-align:center!important;}
.timesheetTable th:nth-child(12),.timesheetTable td:nth-child(12){width:82px!important;text-align:center!important;}
.timesheetTable th:nth-child(13),.timesheetTable td:nth-child(13){width:128px!important;}
.timesheetTable td{padding-top:10px!important;padding-bottom:10px!important;}

/* Mobile / smaller screens keep safe horizontal scroll instead of clipping */
@media(max-width:1200px){
  .clientsTable{min-width:1000px!important;}
  .projectsTable{min-width:1080px!important;}
  .timesheetTable table{min-width:1120px!important;}
  .professionalTable,.tablewrap{overflow-x:auto!important;}
}

/* =========================================================
   V1.1W33B — Payroll / Reports Standardization Layer
   Scope: Worker Advances, Salary/Wage, Worker Payments,
   Client Payment Status, Payment Eligibility, Advance Risk,
   Reports, Worker Profile, Project Summary, Client Exposure.
   UI-only: table density, card alignment, finance formatting,
   badges, filters, actions and wrapped detail cells.
   ========================================================= */

/* Payroll/report KPI cards use the Dashboard card rhythm */
.salarySummary .summaryCard,.salarySummary .miniStat,
.advanceSummary .summaryCard,.advanceSummary .miniStat,
.paymentSummary .summaryCard,.paymentSummary .miniStat,
.clientPaymentSummaryGrid .summaryCard,.clientPaymentSummaryGrid .miniStat,
.eligibilitySummary .summaryCard,.eligibilitySummary .miniStat,
.advanceRiskSummary .summaryCard,.advanceRiskSummary .miniStat,
.reportSummary .summaryCard,.reportSummary .miniStat,
.workerProfileKpis .summaryCard,.workerProfileKpis .miniStat,
.projectSummaryCards .summaryCard,.exposureSummary .summaryCard,.exposureSummary .miniStat{
  min-height:78px!important;
  padding:13px 16px!important;
  border-radius:16px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:4px!important;
}
.salarySummary .summaryCard b,.salarySummary .miniStat b,
.advanceSummary .summaryCard b,.advanceSummary .miniStat b,
.paymentSummary .summaryCard b,.paymentSummary .miniStat b,
.clientPaymentSummaryGrid .summaryCard b,.clientPaymentSummaryGrid .miniStat b,
.eligibilitySummary .summaryCard b,.eligibilitySummary .miniStat b,
.advanceRiskSummary .summaryCard b,.advanceRiskSummary .miniStat b,
.reportSummary .summaryCard b,.reportSummary .miniStat b,
.workerProfileKpis .summaryCard b,.workerProfileKpis .miniStat b,
.projectSummaryCards .summaryCard b,.exposureSummary .summaryCard b,.exposureSummary .miniStat b{
  font-size:21px!important;
  line-height:1.05!important;
  letter-spacing:-.02em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.salarySummary .summaryCard span,.salarySummary .miniStat span,
.advanceSummary .summaryCard span,.advanceSummary .miniStat span,
.paymentSummary .summaryCard span,.paymentSummary .miniStat span,
.clientPaymentSummaryGrid .summaryCard span,.clientPaymentSummaryGrid .miniStat span,
.eligibilitySummary .summaryCard span,.eligibilitySummary .miniStat span,
.advanceRiskSummary .summaryCard span,.advanceRiskSummary .miniStat span,
.reportSummary .summaryCard span,.reportSummary .miniStat span,
.workerProfileKpis .summaryCard span,.workerProfileKpis .miniStat span,
.projectSummaryCards .summaryCard span,.exposureSummary .summaryCard span,.exposureSummary .miniStat span{
  font-size:10.5px!important;
  line-height:1.15!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  color:#66768e!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.salarySummary .summaryCard small,.salarySummary .miniStat small,
.advanceSummary .summaryCard small,.advanceSummary .miniStat small,
.paymentSummary .summaryCard small,.paymentSummary .miniStat small,
.clientPaymentSummaryGrid .summaryCard small,.clientPaymentSummaryGrid .miniStat small,
.eligibilitySummary .summaryCard small,.eligibilitySummary .miniStat small,
.advanceRiskSummary .summaryCard small,.advanceRiskSummary .miniStat small,
.reportSummary .summaryCard small,.reportSummary .miniStat small,
.workerProfileKpis .summaryCard small,.workerProfileKpis .miniStat small,
.projectSummaryCards .summaryCard small,.exposureSummary .summaryCard small,.exposureSummary .miniStat small{
  font-size:11px!important;
  line-height:1.2!important;
  color:#67758a!important;
  font-weight:650!important;
}

/* Global payroll/report finance values: prevent uncontrolled wrapping/truncation */
.salaryTable .iwp-money,.advanceTable .iwp-money,.paymentVoucherTable .iwp-money,
.clientPaymentTable .iwp-money,.eligibilityTable .iwp-money,.financeReadableTable .iwp-money,
.exposureSummary b,.clientPaymentSummaryGrid b,.paymentSummary b,.salarySummary b,
.advanceSummary b,.advanceRiskSummary b,.workerProfileKpis b,.projectSummaryCards b{
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-variant-numeric:tabular-nums!important;
}

/* Universal payroll/report table card density */
.salaryTable,.advanceTable,.paymentPendingTable,.paymentVoucherTable,
.clientPaymentTable,.eligibilityTable,.reportDataTable,
.profileSection table,.projectSummaryCards + .tableCard table,.professionalTable{
  border-collapse:separate!important;
  border-spacing:0!important;
}
.salaryTable th,.advanceTable th,.paymentPendingTable th,.paymentVoucherTable th,
.clientPaymentTable th,.eligibilityTable th,.reportDataTable th,
.profileSection table th{
  font-size:10.5px!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
  color:#314056!important;
  background:#f3f7fc!important;
  white-space:nowrap!important;
}
.salaryTable td,.advanceTable td,.paymentPendingTable td,.paymentVoucherTable td,
.clientPaymentTable td,.eligibilityTable td,.reportDataTable td,
.profileSection table td{
  padding-top:10px!important;
  padding-bottom:10px!important;
  vertical-align:middle!important;
  line-height:1.25!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* Badges and small actions in Payroll/Reports */
.salaryTable .badge,.advanceTable .badge,.paymentVoucherTable .badge,
.clientPaymentTable .badge,.eligibilityTable .badge,.advanceRiskSummary .badge,
.reportDataTable .badge,.profileSection .badge,.statusBadge,
.salaryTable a,.advanceTable a,.paymentVoucherTable a,.clientPaymentTable a,
.eligibilityTable a,.reportDataTable a,.profileSection a{
  font-size:10.5px!important;
  line-height:1.15!important;
  border-radius:999px!important;
  padding:5px 9px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  white-space:nowrap!important;
  margin:2px!important;
}
.rowActions,.salaryActions,.advanceActions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:4px!important;
  overflow:visible!important;
}

/* Salary / Wage table: keep action and finance groups visible */
.salaryTable{table-layout:fixed!important;min-width:1220px!important;width:100%!important;}
.salaryTable th:nth-child(1),.salaryTable td:nth-child(1){width:95px!important;}
.salaryTable th:nth-child(2),.salaryTable td:nth-child(2){width:150px!important;}
.salaryTable th:nth-child(3),.salaryTable td:nth-child(3){width:185px!important;}
.salaryTable th:nth-child(4),.salaryTable td:nth-child(4){width:120px!important;white-space:nowrap!important;}
.salaryTable th:nth-child(5),.salaryTable td:nth-child(5),
.salaryTable th:nth-child(6),.salaryTable td:nth-child(6),
.salaryTable th:nth-child(7),.salaryTable td:nth-child(7),
.salaryTable th:nth-child(8),.salaryTable td:nth-child(8){width:92px!important;text-align:right!important;white-space:nowrap!important;}
.salaryTable th:nth-child(9),.salaryTable td:nth-child(9),
.salaryTable th:nth-child(10),.salaryTable td:nth-child(10){width:110px!important;text-align:center!important;}
.salaryTable th:nth-child(11),.salaryTable td:nth-child(11){width:150px!important;overflow:visible!important;}
.salaryMoneyBlock{font-size:12px!important;line-height:1.2!important;white-space:nowrap!important;}

/* Worker Advances and Advance Risk: readable finance/risk columns */
.advanceTable,.financeReadableTable{table-layout:fixed!important;min-width:1120px!important;width:100%!important;}
.advanceTable th:nth-child(1),.advanceTable td:nth-child(1){width:90px!important;}
.advanceTable th:nth-child(2),.advanceTable td:nth-child(2){width:165px!important;}
.advanceTable th:nth-child(3),.advanceTable td:nth-child(3){width:170px!important;}
.advanceTable th:nth-child(4),.advanceTable td:nth-child(4){width:150px!important;}
.advanceTable th:nth-child(5),.advanceTable td:nth-child(5){width:190px!important;}
.advanceTable th:nth-child(6),.advanceTable td:nth-child(6),
.advanceTable th:nth-child(7),.advanceTable td:nth-child(7){width:120px!important;text-align:center!important;}
.advanceTable th:nth-child(8),.advanceTable td:nth-child(8){width:120px!important;overflow:visible!important;}
.advanceTable .financeMiniBlock{display:block!important;font-size:11.5px!important;line-height:1.22!important;white-space:nowrap!important;margin:0!important;}

/* Worker Payments */
.paymentPendingTable{table-layout:fixed!important;min-width:900px!important;width:100%!important;}
.paymentPendingTable th:nth-child(1),.paymentPendingTable td:nth-child(1){width:270px!important;}
.paymentPendingTable th:nth-child(2),.paymentPendingTable td:nth-child(2){width:115px!important;text-align:center!important;}
.paymentPendingTable th:nth-child(3),.paymentPendingTable td:nth-child(3),
.paymentPendingTable th:nth-child(4),.paymentPendingTable td:nth-child(4),
.paymentPendingTable th:nth-child(5),.paymentPendingTable td:nth-child(5){width:155px!important;text-align:right!important;white-space:nowrap!important;}
.paymentPendingTable th:nth-child(6),.paymentPendingTable td:nth-child(6){width:110px!important;text-align:center!important;}
.paymentVoucherTable{table-layout:fixed!important;min-width:1050px!important;width:100%!important;}
.paymentVoucherTable th:nth-child(1),.paymentVoucherTable td:nth-child(1){width:90px!important;}
.paymentVoucherTable th:nth-child(2),.paymentVoucherTable td:nth-child(2){width:160px!important;}
.paymentVoucherTable th:nth-child(3),.paymentVoucherTable td:nth-child(3){width:170px!important;}
.paymentVoucherTable th:nth-child(4),.paymentVoucherTable td:nth-child(4){width:105px!important;white-space:nowrap!important;}
.paymentVoucherTable th:nth-child(5),.paymentVoucherTable td:nth-child(5){width:110px!important;text-align:right!important;white-space:nowrap!important;}
.paymentVoucherTable th:nth-child(6),.paymentVoucherTable td:nth-child(6),
.paymentVoucherTable th:nth-child(7),.paymentVoucherTable td:nth-child(7){width:105px!important;text-align:center!important;}
.paymentVoucherTable th:nth-child(8),.paymentVoucherTable td:nth-child(8){width:235px!important;}
.paymentVoucherTable th:nth-child(9),.paymentVoucherTable td:nth-child(9){width:115px!important;text-align:center!important;}

/* Client Payment Status: protect action column */
.clientPaymentTable{table-layout:fixed!important;min-width:1160px!important;width:100%!important;}
.clientPaymentTable th:nth-child(1),.clientPaymentTable td:nth-child(1){width:95px!important;}
.clientPaymentTable th:nth-child(2),.clientPaymentTable td:nth-child(2){width:190px!important;}
.clientPaymentTable th:nth-child(3),.clientPaymentTable td:nth-child(3){width:170px!important;}
.clientPaymentTable th:nth-child(4),.clientPaymentTable td:nth-child(4){width:150px!important;}
.clientPaymentTable th:nth-child(5),.clientPaymentTable td:nth-child(5){width:110px!important;text-align:right!important;white-space:nowrap!important;}
.clientPaymentTable th:nth-child(6),.clientPaymentTable td:nth-child(6){width:130px!important;text-align:center!important;}
.clientPaymentTable th:nth-child(7),.clientPaymentTable td:nth-child(7){width:105px!important;white-space:nowrap!important;}
.clientPaymentTable th:nth-child(8),.clientPaymentTable td:nth-child(8){width:125px!important;text-align:center!important;}
.clientPaymentTable th:nth-child(9),.clientPaymentTable td:nth-child(9){width:135px!important;overflow:visible!important;}

/* Payment Eligibility: keep priority/actions available */
.eligibilityTable{table-layout:fixed!important;min-width:1240px!important;width:100%!important;}
.eligibilityTable th:nth-child(1),.eligibilityTable td:nth-child(1){width:130px!important;}
.eligibilityTable th:nth-child(2),.eligibilityTable td:nth-child(2){width:170px!important;}
.eligibilityTable th:nth-child(3),.eligibilityTable td:nth-child(3){width:205px!important;}
.eligibilityTable th:nth-child(4),.eligibilityTable td:nth-child(4),
.eligibilityTable th:nth-child(5),.eligibilityTable td:nth-child(5),
.eligibilityTable th:nth-child(6),.eligibilityTable td:nth-child(6){width:105px!important;text-align:right!important;white-space:nowrap!important;}
.eligibilityTable th:nth-child(7),.eligibilityTable td:nth-child(7),
.eligibilityTable th:nth-child(8),.eligibilityTable td:nth-child(8),
.eligibilityTable th:nth-child(9),.eligibilityTable td:nth-child(9),
.eligibilityTable th:nth-child(10),.eligibilityTable td:nth-child(10){width:125px!important;text-align:center!important;}
.eligibilityTable th:nth-child(11),.eligibilityTable td:nth-child(11){width:140px!important;overflow:visible!important;}

/* Reports tabs and report data table */
.reportTabs{display:flex!important;flex-wrap:wrap!important;gap:7px!important;align-items:center!important;}
.reportTab,.reportTabs a,.reportTabCard a{
  border-radius:999px!important;
  padding:7px 12px!important;
  min-height:31px!important;
  font-size:11px!important;
  font-weight:800!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
}
.reportTab.active,.reportTabs a.active{background:#0f4c81!important;color:#fff!important;box-shadow:0 8px 16px rgba(15,76,129,.18)!important;}
.reportDataTable{table-layout:fixed!important;min-width:1120px!important;width:100%!important;}
.reportDataTable th:nth-child(1),.reportDataTable td:nth-child(1){width:95px!important;}
.reportDataTable th:nth-child(2),.reportDataTable td:nth-child(2){width:190px!important;}
.reportDataTable th:nth-child(3),.reportDataTable td:nth-child(3){width:260px!important;}
.reportDataTable th:nth-child(4),.reportDataTable td:nth-child(4),
.reportDataTable th:nth-child(5),.reportDataTable td:nth-child(5){width:105px!important;white-space:nowrap!important;}
.reportDataTable th:nth-child(6),.reportDataTable td:nth-child(6){width:95px!important;text-align:center!important;}
.reportDataTable th:nth-child(7),.reportDataTable td:nth-child(7){width:150px!important;text-align:center!important;}
.reportDataTable th:nth-child(8),.reportDataTable td:nth-child(8){width:100px!important;text-align:center!important;}

/* Worker Profile embedded detail tables: prevent broken words */
.profileSection table{table-layout:fixed!important;width:100%!important;}
.profileSection table td,.profileSection table th{word-break:normal!important;overflow-wrap:normal!important;}
.profileSection table td:nth-child(1){white-space:normal!important;}
.profileSection table td:nth-child(2),.profileSection table td:nth-child(3){min-width:130px!important;}
.profileSection .muted,.profileSection small{word-break:normal!important;overflow-wrap:normal!important;}
.profileBadges .badge,.profileBadges span{font-size:11px!important;padding:5px 10px!important;border-radius:999px!important;}

/* Project Summary and Client Exposure */
.projectSummaryCards{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:12px!important;}
.summaryGrid.projectSummaryCards .summaryCard b{font-size:21px!important;white-space:nowrap!important;}
.exposureSummary{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;}
.exposureSummary b{font-size:19px!important;white-space:nowrap!important;}
.exposureSummary .summaryCard,.exposureSummary .miniStat{min-width:0!important;}
.tableWrap table,.tablewrap table{width:100%!important;}
.tableWrap td,.tablewrap td{vertical-align:middle!important;}
.tableWrap td:last-child,.tablewrap td:last-child{overflow:visible!important;}

/* Filter cards in payroll/reports */
.salaryFilterGrid,.advanceFilterGrid,.paymentFilterGrid,.clientPaymentFilterGrid,
.eligibilityFilterGrid,.reportFilter{
  gap:11px!important;
  align-items:end!important;
}
.salaryFilterGrid label,.advanceFilterGrid label,.paymentFilterGrid label,
.clientPaymentFilterGrid label,.eligibilityFilterGrid label,.reportFilter label{
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  color:#314056!important;
}
.salaryFilterGrid input,.salaryFilterGrid select,.advanceFilterGrid input,.advanceFilterGrid select,
.paymentFilterGrid input,.paymentFilterGrid select,.clientPaymentFilterGrid input,.clientPaymentFilterGrid select,
.eligibilityFilterGrid input,.eligibilityFilterGrid select,.reportFilter input,.reportFilter select{
  min-height:38px!important;
}

/* Safe scroll for wide finance/report tables; never clip right-side actions */
.tableCard,.tablewrap,.iwp-table-wrap,.professionalTable{overflow-x:auto!important;}
@media(max-width:1280px){
  .salaryTable{min-width:1180px!important;}
  .advanceTable,.financeReadableTable{min-width:1080px!important;}
  .clientPaymentTable{min-width:1120px!important;}
  .eligibilityTable{min-width:1200px!important;}
  .reportDataTable{min-width:1080px!important;}
  .exposureSummary b{font-size:18px!important;}
}

/* =========================================================
   V1.1W33B1 — Payroll / Reports Universal Card Typography Alignment Fix
   Purpose: make Payroll & Reports summary/KPI cards visually match the approved Dashboard/Master pages.
   CSS-only: no PHP, database, or business logic changes.
   ========================================================= */

/* Payroll / Reports / Detail summary-card typography baseline */
.salarySummary .summaryCard,.salarySummary .miniStat,
.advanceSummary .summaryCard,.advanceSummary .miniStat,
.paymentSummary .summaryCard,.paymentSummary .miniStat,
.clientPaymentSummaryGrid .summaryCard,.clientPaymentSummaryGrid .miniStat,
.eligibilitySummary .summaryCard,.eligibilitySummary .miniStat,
.advanceRiskSummary .summaryCard,.advanceRiskSummary .miniStat,
.reportSummary .summaryCard,.reportSummary .miniStat,
.workerProfileKpis .summaryCard,.workerProfileKpis .miniStat,
.projectSummaryCards .summaryCard,.projectSummaryCards .miniStat,
.exposureSummary .summaryCard,.exposureSummary .miniStat,
.financeSummary .summaryCard,.financeSummary .miniStat,
.payrollSummary .summaryCard,.payrollSummary .miniStat,
.summaryGrid .summaryCard,
.compactSummary .summaryCard,
.compactSummary .miniStat {
  min-height: 82px !important;
  padding: 13px 14px 12px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(15, 76, 129, .10) !important;
  border-top: 3px solid rgba(15, 76, 129, .52) !important;
  box-shadow: 0 8px 18px rgba(16, 24, 40, .045) !important;
  background: #fff !important;
}

/* Labels: reduce heavy/bold appearance and unify color */
.salarySummary .summaryCard span,.salarySummary .miniStat span,
.advanceSummary .summaryCard span,.advanceSummary .miniStat span,
.paymentSummary .summaryCard span,.paymentSummary .miniStat span,
.clientPaymentSummaryGrid .summaryCard span,.clientPaymentSummaryGrid .miniStat span,
.eligibilitySummary .summaryCard span,.eligibilitySummary .miniStat span,
.advanceRiskSummary .summaryCard span,.advanceRiskSummary .miniStat span,
.reportSummary .summaryCard span,.reportSummary .miniStat span,
.workerProfileKpis .summaryCard span,.workerProfileKpis .miniStat span,
.projectSummaryCards .summaryCard span,.projectSummaryCards .miniStat span,
.exposureSummary .summaryCard span,.exposureSummary .miniStat span,
.financeSummary .summaryCard span,.financeSummary .miniStat span,
.payrollSummary .summaryCard span,.payrollSummary .miniStat span,
.summaryGrid .summaryCard span,
.compactSummary .summaryCard span,
.compactSummary .miniStat span,
.salarySummary .summaryCard .label,.advanceSummary .summaryCard .label,
.paymentSummary .summaryCard .label,.clientPaymentSummaryGrid .summaryCard .label,
.eligibilitySummary .summaryCard .label,.advanceRiskSummary .summaryCard .label,
.reportSummary .summaryCard .label,.workerProfileKpis .summaryCard .label,
.projectSummaryCards .summaryCard .label,.exposureSummary .summaryCard .label {
  display: block !important;
  font-size: 10px !important;
  line-height: 1.15 !important;
  letter-spacing: .105em !important;
  text-transform: uppercase !important;
  color: #7a8799 !important;
  font-weight: 700 !important;
  margin: 0 0 7px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Values: match Dashboard strength but avoid oversized/heavy text */
.salarySummary .summaryCard b,.salarySummary .miniStat b,
.advanceSummary .summaryCard b,.advanceSummary .miniStat b,
.paymentSummary .summaryCard b,.paymentSummary .miniStat b,
.clientPaymentSummaryGrid .summaryCard b,.clientPaymentSummaryGrid .miniStat b,
.eligibilitySummary .summaryCard b,.eligibilitySummary .miniStat b,
.advanceRiskSummary .summaryCard b,.advanceRiskSummary .miniStat b,
.reportSummary .summaryCard b,.reportSummary .miniStat b,
.workerProfileKpis .summaryCard b,.workerProfileKpis .miniStat b,
.projectSummaryCards .summaryCard b,.projectSummaryCards .miniStat b,
.exposureSummary .summaryCard b,.exposureSummary .miniStat b,
.financeSummary .summaryCard b,.financeSummary .miniStat b,
.payrollSummary .summaryCard b,.payrollSummary .miniStat b,
.summaryGrid .summaryCard b,
.compactSummary .summaryCard b,
.compactSummary .miniStat b,
.salarySummary .summaryCard .value,.advanceSummary .summaryCard .value,
.paymentSummary .summaryCard .value,.clientPaymentSummaryGrid .summaryCard .value,
.eligibilitySummary .summaryCard .value,.advanceRiskSummary .summaryCard .value,
.reportSummary .summaryCard .value,.workerProfileKpis .summaryCard .value,
.projectSummaryCards .summaryCard .value,.exposureSummary .summaryCard .value {
  display: block !important;
  font-size: clamp(18px, 1.45vw, 21px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.015em !important;
  color: #18283d !important;
  font-weight: 750 !important;
  margin: 0 0 5px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  font-variant-numeric: tabular-nums !important;
}

/* Finance values inside cards: prevent overly bold / oversized SAR display */
.salarySummary .summaryCard b,
.advanceSummary .summaryCard b,
.paymentSummary .summaryCard b,
.clientPaymentSummaryGrid .summaryCard b,
.eligibilitySummary .summaryCard b,
.advanceRiskSummary .summaryCard b,
.reportSummary .summaryCard b,
.workerProfileKpis .summaryCard b,
.projectSummaryCards .summaryCard b,
.exposureSummary .summaryCard b {
  max-width: 100% !important;
}

/* Notes/subtitles: lighter and consistent */
.salarySummary .summaryCard small,.salarySummary .miniStat small,
.advanceSummary .summaryCard small,.advanceSummary .miniStat small,
.paymentSummary .summaryCard small,.paymentSummary .miniStat small,
.clientPaymentSummaryGrid .summaryCard small,.clientPaymentSummaryGrid .miniStat small,
.eligibilitySummary .summaryCard small,.eligibilitySummary .miniStat small,
.advanceRiskSummary .summaryCard small,.advanceRiskSummary .miniStat small,
.reportSummary .summaryCard small,.reportSummary .miniStat small,
.workerProfileKpis .summaryCard small,.workerProfileKpis .miniStat small,
.projectSummaryCards .summaryCard small,.projectSummaryCards .miniStat small,
.exposureSummary .summaryCard small,.exposureSummary .miniStat small,
.financeSummary .summaryCard small,.financeSummary .miniStat small,
.payrollSummary .summaryCard small,.payrollSummary .miniStat small,
.summaryGrid .summaryCard small,
.compactSummary .summaryCard small,
.compactSummary .miniStat small,
.salarySummary .summaryCard .note,.advanceSummary .summaryCard .note,
.paymentSummary .summaryCard .note,.clientPaymentSummaryGrid .summaryCard .note,
.eligibilitySummary .summaryCard .note,.advanceRiskSummary .summaryCard .note,
.reportSummary .summaryCard .note,.workerProfileKpis .summaryCard .note,
.projectSummaryCards .summaryCard .note,.exposureSummary .summaryCard .note {
  display: block !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  color: #7b8797 !important;
  font-weight: 500 !important;
  margin: 0 !important;
}

/* Reduce accent intensity for report/payroll cards so they match approved pages */
.salarySummary .summaryCard:nth-child(n),.salarySummary .miniStat:nth-child(n),
.advanceSummary .summaryCard:nth-child(n),.advanceSummary .miniStat:nth-child(n),
.paymentSummary .summaryCard:nth-child(n),.paymentSummary .miniStat:nth-child(n),
.clientPaymentSummaryGrid .summaryCard:nth-child(n),.clientPaymentSummaryGrid .miniStat:nth-child(n),
.eligibilitySummary .summaryCard:nth-child(n),.eligibilitySummary .miniStat:nth-child(n),
.advanceRiskSummary .summaryCard:nth-child(n),.advanceRiskSummary .miniStat:nth-child(n),
.reportSummary .summaryCard:nth-child(n),.reportSummary .miniStat:nth-child(n),
.workerProfileKpis .summaryCard:nth-child(n),.workerProfileKpis .miniStat:nth-child(n),
.projectSummaryCards .summaryCard:nth-child(n),.projectSummaryCards .miniStat:nth-child(n),
.exposureSummary .summaryCard:nth-child(n),.exposureSummary .miniStat:nth-child(n) {
  border-top-color: rgba(15, 76, 129, .52) !important;
}

/* Ensure summary card grids have consistent rhythm */
.salarySummary,.advanceSummary,.paymentSummary,.clientPaymentSummaryGrid,
.eligibilitySummary,.advanceRiskSummary,.reportSummary,.workerProfileKpis,
.projectSummaryCards,.exposureSummary,.financeSummary,.payrollSummary,
.compactSummary,.summaryGrid {
  gap: 12px !important;
  align-items: stretch !important;
}

/* Small screens: keep card values readable without becoming heavy */
@media(max-width: 900px){
  .salarySummary .summaryCard b,.advanceSummary .summaryCard b,.paymentSummary .summaryCard b,
  .clientPaymentSummaryGrid .summaryCard b,.eligibilitySummary .summaryCard b,
  .advanceRiskSummary .summaryCard b,.reportSummary .summaryCard b,
  .workerProfileKpis .summaryCard b,.projectSummaryCards .summaryCard b,
  .exposureSummary .summaryCard b,.compactSummary .summaryCard b,.summaryGrid .summaryCard b{
    font-size: 18px !important;
  }
  .salarySummary .summaryCard,.advanceSummary .summaryCard,.paymentSummary .summaryCard,
  .clientPaymentSummaryGrid .summaryCard,.eligibilitySummary .summaryCard,
  .advanceRiskSummary .summaryCard,.reportSummary .summaryCard,
  .workerProfileKpis .summaryCard,.projectSummaryCards .summaryCard,
  .exposureSummary .summaryCard,.compactSummary .summaryCard,.summaryGrid .summaryCard{
    min-height: 78px !important;
    padding: 12px 13px !important;
  }
}

/* =========================================================
   V1.1W33B2 — Payroll / Reports Card Visibility & Universal KPI Reset
   Purpose: fix card text overflow/hidden issues introduced by over-strict typography rules.
   CSS-only: no PHP, database, or business logic changes.
   ========================================================= */

/* Safe universal card reset: allow card content to remain visible and inside the card */
.salarySummary .summaryCard,.salarySummary .miniStat,
.advanceSummary .summaryCard,.advanceSummary .miniStat,
.paymentSummary .summaryCard,.paymentSummary .miniStat,
.clientPaymentSummaryGrid .summaryCard,.clientPaymentSummaryGrid .miniStat,
.eligibilitySummary .summaryCard,.eligibilitySummary .miniStat,
.advanceRiskSummary .summaryCard,.advanceRiskSummary .miniStat,
.reportSummary .summaryCard,.reportSummary .miniStat,
.workerProfileKpis .summaryCard,.workerProfileKpis .miniStat,
.projectSummaryCards .summaryCard,.projectSummaryCards .miniStat,
.exposureSummary .summaryCard,.exposureSummary .miniStat,
.financeSummary .summaryCard,.financeSummary .miniStat,
.payrollSummary .summaryCard,.payrollSummary .miniStat,
.compactSummary .summaryCard,.compactSummary .miniStat,
.summaryGrid .summaryCard,.summaryGrid .miniStat,
.summaryCards .summaryCard,.summaryCards .miniStat,
.miniKpi,.miniStat{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:4px!important;
  min-height:86px!important;
  height:auto!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  padding:12px 14px!important;
}

/* Labels must not disappear or sit outside the card */
.salarySummary .summaryCard > span,.salarySummary .miniStat > span,
.advanceSummary .summaryCard > span,.advanceSummary .miniStat > span,
.paymentSummary .summaryCard > span,.paymentSummary .miniStat > span,
.clientPaymentSummaryGrid .summaryCard > span,.clientPaymentSummaryGrid .miniStat > span,
.eligibilitySummary .summaryCard > span,.eligibilitySummary .miniStat > span,
.advanceRiskSummary .summaryCard > span,.advanceRiskSummary .miniStat > span,
.reportSummary .summaryCard > span,.reportSummary .miniStat > span,
.workerProfileKpis .summaryCard > span,.workerProfileKpis .miniStat > span,
.projectSummaryCards .summaryCard > span,.projectSummaryCards .miniStat > span,
.exposureSummary .summaryCard > span,.exposureSummary .miniStat > span,
.financeSummary .summaryCard > span,.financeSummary .miniStat > span,
.payrollSummary .summaryCard > span,.payrollSummary .miniStat > span,
.compactSummary .summaryCard > span,.compactSummary .miniStat > span,
.summaryGrid .summaryCard > span,.summaryGrid .miniStat > span,
.summaryCards .summaryCard > span,.summaryCards .miniStat > span,
.miniKpi > span,.miniStat > span,
.salarySummary .summaryCard .label,.advanceSummary .summaryCard .label,
.paymentSummary .summaryCard .label,.clientPaymentSummaryGrid .summaryCard .label,
.eligibilitySummary .summaryCard .label,.advanceRiskSummary .summaryCard .label,
.reportSummary .summaryCard .label,.workerProfileKpis .summaryCard .label,
.projectSummaryCards .summaryCard .label,.exposureSummary .summaryCard .label{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-size:10px!important;
  line-height:1.18!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  color:#718096!important;
  font-weight:650!important;
  margin:0!important;
}

/* Values: visible, inside card, lighter than previous W33B1, still professional */
.salarySummary .summaryCard > b,.salarySummary .miniStat > b,
.advanceSummary .summaryCard > b,.advanceSummary .miniStat > b,
.paymentSummary .summaryCard > b,.paymentSummary .miniStat > b,
.clientPaymentSummaryGrid .summaryCard > b,.clientPaymentSummaryGrid .miniStat > b,
.eligibilitySummary .summaryCard > b,.eligibilitySummary .miniStat > b,
.advanceRiskSummary .summaryCard > b,.advanceRiskSummary .miniStat > b,
.reportSummary .summaryCard > b,.reportSummary .miniStat > b,
.workerProfileKpis .summaryCard > b,.workerProfileKpis .miniStat > b,
.projectSummaryCards .summaryCard > b,.projectSummaryCards .miniStat > b,
.exposureSummary .summaryCard > b,.exposureSummary .miniStat > b,
.financeSummary .summaryCard > b,.financeSummary .miniStat > b,
.payrollSummary .summaryCard > b,.payrollSummary .miniStat > b,
.compactSummary .summaryCard > b,.compactSummary .miniStat > b,
.summaryGrid .summaryCard > b,.summaryGrid .miniStat > b,
.summaryCards .summaryCard > b,.summaryCards .miniStat > b,
.miniKpi > b,.miniStat > b,
.salarySummary .summaryCard .value,.advanceSummary .summaryCard .value,
.paymentSummary .summaryCard .value,.clientPaymentSummaryGrid .summaryCard .value,
.eligibilitySummary .summaryCard .value,.advanceRiskSummary .summaryCard .value,
.reportSummary .summaryCard .value,.workerProfileKpis .summaryCard .value,
.projectSummaryCards .summaryCard .value,.exposureSummary .summaryCard .value{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-size:clamp(17px,1.25vw,20px)!important;
  line-height:1.12!important;
  color:#162337!important;
  font-weight:680!important;
  margin:0!important;
  letter-spacing:-.01em!important;
  font-variant-numeric:tabular-nums!important;
  overflow-wrap:normal!important;
}

/* Notes/helper text: visible and aligned */
.salarySummary .summaryCard > small,.salarySummary .miniStat > small,
.advanceSummary .summaryCard > small,.advanceSummary .miniStat > small,
.paymentSummary .summaryCard > small,.paymentSummary .miniStat > small,
.clientPaymentSummaryGrid .summaryCard > small,.clientPaymentSummaryGrid .miniStat > small,
.eligibilitySummary .summaryCard > small,.eligibilitySummary .miniStat > small,
.advanceRiskSummary .summaryCard > small,.advanceRiskSummary .miniStat > small,
.reportSummary .summaryCard > small,.reportSummary .miniStat > small,
.workerProfileKpis .summaryCard > small,.workerProfileKpis .miniStat > small,
.projectSummaryCards .summaryCard > small,.projectSummaryCards .miniStat > small,
.exposureSummary .summaryCard > small,.exposureSummary .miniStat > small,
.financeSummary .summaryCard > small,.financeSummary .miniStat > small,
.payrollSummary .summaryCard > small,.payrollSummary .miniStat > small,
.compactSummary .summaryCard > small,.compactSummary .miniStat > small,
.summaryGrid .summaryCard > small,.summaryGrid .miniStat > small,
.summaryCards .summaryCard > small,.summaryCards .miniStat > small,
.miniKpi > small,.miniStat > small,
.salarySummary .summaryCard .note,.advanceSummary .summaryCard .note,
.paymentSummary .summaryCard .note,.clientPaymentSummaryGrid .summaryCard .note,
.eligibilitySummary .summaryCard .note,.advanceRiskSummary .summaryCard .note,
.reportSummary .summaryCard .note,.workerProfileKpis .summaryCard .note,
.projectSummaryCards .summaryCard .note,.exposureSummary .summaryCard .note{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-size:11px!important;
  line-height:1.25!important;
  color:#7b8797!important;
  font-weight:480!important;
  margin:0!important;
}

/* Finance values in KPI cards: stay visible; no hidden clipping */
.summaryCard b,.miniStat b,.miniKpi b,
.summaryCard .value,.miniStat .value,.miniKpi .value{
  overflow:visible!important;
  text-overflow:clip!important;
}

/* Keep grids consistent, but do not force content into too-small cards */
.salarySummary,.advanceSummary,.paymentSummary,.clientPaymentSummaryGrid,
.eligibilitySummary,.advanceRiskSummary,.reportSummary,.workerProfileKpis,
.projectSummaryCards,.exposureSummary,.financeSummary,.payrollSummary,
.compactSummary,.summaryGrid,.summaryCards{
  align-items:stretch!important;
  overflow:visible!important;
}

/* Very long financial values: reduce font slightly instead of hiding */
.exposureSummary .summaryCard > b,
.clientPaymentSummaryGrid .summaryCard > b,
.paymentSummary .summaryCard > b,
.salarySummary .summaryCard > b,
.eligibilitySummary .summaryCard > b,
.projectSummaryCards .summaryCard > b{
  font-size:clamp(16px,1.15vw,19px)!important;
}

/* =========================================================
   V1.1W33B3 — Payroll / Reports Card + Salary Table Recovery Fix
   Purpose: restore approved Dashboard-style cards and fix Salary/Wage table overlap.
   CSS-only: no PHP, database, or business logic changes.
   ========================================================= */

/* Payroll/report KPI cards: use one stable dashboard-like rhythm without clipping */
.salarySummary.summaryCards.compactSummary,
.payrollSummary.summaryCards.compactSummary,
.financeSummary.summaryCards.compactSummary,
.paymentSummary.summaryCards.compactSummary,
.advanceSummary.summaryCards.compactSummary,
.clientPaymentSummaryGrid.summaryCards.compactSummary,
.eligibilitySummary.summaryCards.compactSummary,
.advanceRiskSummary.summaryCards.compactSummary,
.reportSummary.summaryCards.compactSummary,
.workerProfileKpis.summaryCards.compactSummary,
.projectSummaryCards.summaryCards.compactSummary,
.exposureSummary.summaryCards.compactSummary{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
  overflow:visible!important;
}
.salarySummary .summaryCard,.salarySummary .miniStat,
.payrollSummary .summaryCard,.payrollSummary .miniStat,
.financeSummary .summaryCard,.financeSummary .miniStat,
.paymentSummary .summaryCard,.paymentSummary .miniStat,
.advanceSummary .summaryCard,.advanceSummary .miniStat,
.clientPaymentSummaryGrid .summaryCard,.clientPaymentSummaryGrid .miniStat,
.eligibilitySummary .summaryCard,.eligibilitySummary .miniStat,
.advanceRiskSummary .summaryCard,.advanceRiskSummary .miniStat,
.reportSummary .summaryCard,.reportSummary .miniStat,
.workerProfileKpis .summaryCard,.workerProfileKpis .miniStat,
.projectSummaryCards .summaryCard,.projectSummaryCards .miniStat,
.exposureSummary .summaryCard,.exposureSummary .miniStat{
  display:block!important;
  min-height:78px!important;
  height:auto!important;
  padding:11px 13px!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border:1px solid rgba(148,163,184,.28)!important;
  border-top-width:3px!important;
  box-shadow:0 8px 20px rgba(15,39,66,.045)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.salarySummary .summaryCard > span,.salarySummary .miniStat > span,
.payrollSummary .summaryCard > span,.payrollSummary .miniStat > span,
.financeSummary .summaryCard > span,.financeSummary .miniStat > span,
.paymentSummary .summaryCard > span,.paymentSummary .miniStat > span,
.advanceSummary .summaryCard > span,.advanceSummary .miniStat > span,
.clientPaymentSummaryGrid .summaryCard > span,.clientPaymentSummaryGrid .miniStat > span,
.eligibilitySummary .summaryCard > span,.eligibilitySummary .miniStat > span,
.advanceRiskSummary .summaryCard > span,.advanceRiskSummary .miniStat > span,
.reportSummary .summaryCard > span,.reportSummary .miniStat > span,
.workerProfileKpis .summaryCard > span,.workerProfileKpis .miniStat > span,
.projectSummaryCards .summaryCard > span,.projectSummaryCards .miniStat > span,
.exposureSummary .summaryCard > span,.exposureSummary .miniStat > span{
  display:block!important;
  font-size:9.5px!important;
  line-height:1.2!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
  font-weight:800!important;
  margin:0 0 4px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
}
.salarySummary .summaryCard > b,.salarySummary .miniStat > b,
.payrollSummary .summaryCard > b,.payrollSummary .miniStat > b,
.financeSummary .summaryCard > b,.financeSummary .miniStat > b,
.paymentSummary .summaryCard > b,.paymentSummary .miniStat > b,
.advanceSummary .summaryCard > b,.advanceSummary .miniStat > b,
.clientPaymentSummaryGrid .summaryCard > b,.clientPaymentSummaryGrid .miniStat > b,
.eligibilitySummary .summaryCard > b,.eligibilitySummary .miniStat > b,
.advanceRiskSummary .summaryCard > b,.advanceRiskSummary .miniStat > b,
.reportSummary .summaryCard > b,.reportSummary .miniStat > b,
.workerProfileKpis .summaryCard > b,.workerProfileKpis .miniStat > b,
.projectSummaryCards .summaryCard > b,.projectSummaryCards .miniStat > b,
.exposureSummary .summaryCard > b,.exposureSummary .miniStat > b{
  display:block!important;
  font-size:18px!important;
  line-height:1.08!important;
  color:#0f172a!important;
  font-weight:780!important;
  letter-spacing:-.02em!important;
  margin:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
  font-variant-numeric:tabular-nums!important;
}
.salarySummary .summaryCard > small,.salarySummary .miniStat > small,
.payrollSummary .summaryCard > small,.payrollSummary .miniStat > small,
.financeSummary .summaryCard > small,.financeSummary .miniStat > small,
.paymentSummary .summaryCard > small,.paymentSummary .miniStat > small,
.advanceSummary .summaryCard > small,.advanceSummary .miniStat > small,
.clientPaymentSummaryGrid .summaryCard > small,.clientPaymentSummaryGrid .miniStat > small,
.eligibilitySummary .summaryCard > small,.eligibilitySummary .miniStat > small,
.advanceRiskSummary .summaryCard > small,.advanceRiskSummary .miniStat > small,
.reportSummary .summaryCard > small,.reportSummary .miniStat > small,
.workerProfileKpis .summaryCard > small,.workerProfileKpis .miniStat > small,
.projectSummaryCards .summaryCard > small,.projectSummaryCards .miniStat > small,
.exposureSummary .summaryCard > small,.exposureSummary .miniStat > small{
  display:block!important;
  font-size:10.5px!important;
  line-height:1.25!important;
  color:#64748b!important;
  font-weight:560!important;
  margin:4px 0 0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
}

/* Salary/Wage table: prevent financial blocks from overlapping nearby columns */
.salaryTableReadable{
  overflow-x:auto!important;
  overflow-y:visible!important;
  max-width:100%!important;
}
.salaryTableReadable table{
  min-width:1320px!important;
  width:1320px!important;
  table-layout:fixed!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
.salaryTableReadable th,
.salaryTableReadable td{
  box-sizing:border-box!important;
  overflow:visible!important;
}
.salaryTableReadable th:nth-child(1), .salaryTableReadable td:nth-child(1){width:92px!important;}
.salaryTableReadable th:nth-child(2), .salaryTableReadable td:nth-child(2){width:160px!important;}
.salaryTableReadable th:nth-child(3), .salaryTableReadable td:nth-child(3){width:190px!important;}
.salaryTableReadable th:nth-child(4), .salaryTableReadable td:nth-child(4){width:132px!important;}
.salaryTableReadable th:nth-child(5), .salaryTableReadable td:nth-child(5){width:210px!important;}
.salaryTableReadable th:nth-child(6), .salaryTableReadable td:nth-child(6){width:170px!important;}
.salaryTableReadable th:nth-child(7), .salaryTableReadable td:nth-child(7){width:110px!important;text-align:center!important;}
.salaryTableReadable th:nth-child(8), .salaryTableReadable td:nth-child(8){width:120px!important;text-align:center!important;}
.salaryTableReadable th:nth-child(9), .salaryTableReadable td:nth-child(9){width:150px!important;}
.salaryTableReadable td{padding:11px 9px!important;vertical-align:middle!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock div{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  min-width:0!important;
  padding:1px 0!important;
  border-bottom:1px dashed rgba(148,163,184,.22)!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock div:last-child{border-bottom:0!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock span{
  display:block!important;
  font-size:8.7px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock strong{
  display:block!important;
  font-size:11.3px!important;
  line-height:1.15!important;
  color:#0f172a!important;
  font-weight:850!important;
  text-align:right!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  min-width:0!important;
  max-width:100%!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock .warnMoney,
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock .mutedMoney{
  justify-self:end!important;
  max-width:100%!important;
  padding:2px 6px!important;
  border-radius:999px!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock .balanceDue{
  font-size:11.7px!important;
  font-weight:900!important;
}
.salaryTableReadable .dateStack strong,
.salaryTableReadable .dateStack span{
  white-space:nowrap!important;
}
.salaryTableReadable .salaryActions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-width:0!important;
}
.salaryTableReadable .salaryActions a,
.salaryTableReadable .salaryActions .miniAction,
.salaryTableReadable .salaryActions .statusBadge{
  font-size:10.5px!important;
  padding:4px 7px!important;
  margin:0!important;
  white-space:nowrap!important;
}

/* Stop global link/badge rules from turning entire salary cells into overlapping inline-flex blocks */
.salaryTableReadable td > a:not(.miniAction),
.salaryTableReadable td > .statusBadge{
  max-width:100%!important;
}

@media(max-width:1400px){
  .salaryTableReadable table{min-width:1320px!important;width:1320px!important;}
}

/* =========================================================
   V1.1W33B5 — Salary / Wage Page Focused Stabilization Fix
   Purpose: correct Payroll Control Center card clipping and salary table squeezing
   without touching other page logic or global business workflows.
   CSS-only replacement.
   ========================================================= */

/* Salary page KPI cards: stop inherited compact/card overrides from clipping text */
.salarySummary.summaryCards.compactSummary,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(205px,1fr))!important;
  gap:14px!important;
  align-items:stretch!important;
  overflow:visible!important;
  margin:14px 0 18px!important;
}
.salarySummary.summaryCards.compactSummary .iwp-summary-card,
.salarySummary.summaryCards.compactSummary .summaryCard,
.salarySummary.summaryCards.compactSummary .miniStat,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .iwp-summary-card,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .summaryCard,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .miniStat{
  min-height:94px!important;
  height:auto!important;
  padding:16px 18px 14px!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:4px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  border:1px solid rgba(148,163,184,.30)!important;
  border-top:4px solid #3b82f6!important;
  border-radius:16px!important;
  box-shadow:0 8px 22px rgba(15,39,66,.055)!important;
}
.salarySummary.summaryCards.compactSummary .iwp-summary-card > span,
.salarySummary.summaryCards.compactSummary .summaryCard > span,
.salarySummary.summaryCards.compactSummary .miniStat > span,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .iwp-summary-card > span,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .summaryCard > span,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .miniStat > span{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#64748b!important;
  font-size:10.5px!important;
  line-height:1.35!important;
  font-weight:800!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.salarySummary.summaryCards.compactSummary .iwp-summary-card > strong,
.salarySummary.summaryCards.compactSummary .summaryCard > strong,
.salarySummary.summaryCards.compactSummary .miniStat > strong,
.salarySummary.summaryCards.compactSummary .iwp-summary-card > b,
.salarySummary.summaryCards.compactSummary .summaryCard > b,
.salarySummary.summaryCards.compactSummary .miniStat > b,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .iwp-summary-card > strong,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .summaryCard > strong,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .miniStat > strong,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .iwp-summary-card > b,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .summaryCard > b,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .miniStat > b{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#0f172a!important;
  font-size:22px!important;
  line-height:1.18!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-variant-numeric:tabular-nums!important;
}
.salarySummary.summaryCards.compactSummary .iwp-summary-card > small,
.salarySummary.summaryCards.compactSummary .summaryCard > small,
.salarySummary.summaryCards.compactSummary .miniStat > small,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .iwp-summary-card > small,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .summaryCard > small,
.iwp-summary-grid.summaryCards.compactSummary.salarySummary .miniStat > small{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#64748b!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:650!important;
  letter-spacing:.015em!important;
  text-transform:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}

/* Salary / Wage table: use breathing room and horizontal scroll instead of squeezing. */
.salaryTableReadable{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  -webkit-overflow-scrolling:touch!important;
}
.salaryTableReadable table{
  width:1580px!important;
  min-width:1580px!important;
  table-layout:fixed!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
.salaryTableReadable th,
.salaryTableReadable td{
  box-sizing:border-box!important;
  vertical-align:middle!important;
  overflow:visible!important;
}
.salaryTableReadable th:nth-child(1), .salaryTableReadable td:nth-child(1){width:105px!important;}
.salaryTableReadable th:nth-child(2), .salaryTableReadable td:nth-child(2){width:180px!important;}
.salaryTableReadable th:nth-child(3), .salaryTableReadable td:nth-child(3){width:230px!important;}
.salaryTableReadable th:nth-child(4), .salaryTableReadable td:nth-child(4){width:150px!important;}
.salaryTableReadable th:nth-child(5), .salaryTableReadable td:nth-child(5){width:235px!important;}
.salaryTableReadable th:nth-child(6), .salaryTableReadable td:nth-child(6){width:245px!important;}
.salaryTableReadable th:nth-child(7), .salaryTableReadable td:nth-child(7){width:130px!important;text-align:center!important;}
.salaryTableReadable th:nth-child(8), .salaryTableReadable td:nth-child(8){width:130px!important;text-align:center!important;}
.salaryTableReadable th:nth-child(9), .salaryTableReadable td:nth-child(9){width:175px!important;}
.salaryTableReadable td{padding:12px 11px!important;}
.salaryTableReadable .cellMain strong,
.salaryTableReadable .cellMain b,
.salaryTableReadable td strong{
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.salaryTableReadable .cellMuted,
.salaryTableReadable .muted,
.salaryTableReadable .dateStack span{
  line-height:1.25!important;
}
.salaryTableReadable .dateStack strong,
.salaryTableReadable .dateStack span{
  white-space:nowrap!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock div{
  display:grid!important;
  grid-template-columns:74px minmax(118px,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  padding:2px 0!important;
  border-bottom:1px dashed rgba(148,163,184,.20)!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock div:last-child{border-bottom:0!important;}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock span{
  display:block!important;
  color:#64748b!important;
  font-size:8.8px!important;
  line-height:1.1!important;
  font-weight:850!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock strong{
  display:block!important;
  color:#0f172a!important;
  font-size:12.2px!important;
  line-height:1.2!important;
  font-weight:850!important;
  text-align:right!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  max-width:none!important;
  font-variant-numeric:tabular-nums!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock .warnMoney,
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock .mutedMoney{
  justify-self:end!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  max-width:none!important;
}
.salaryTableReadable .financeMiniBlock.salaryMoneyBlock .balanceDue{
  font-size:12.4px!important;
  font-weight:900!important;
}
.salaryTableReadable .salaryActions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-width:0!important;
  overflow:visible!important;
}
.salaryTableReadable .salaryActions a,
.salaryTableReadable .salaryActions .miniAction,
.salaryTableReadable .salaryActions .statusBadge{
  white-space:nowrap!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  padding:5px 8px!important;
  margin:0!important;
}

@media(max-width:1500px){
  .salaryTableReadable table{width:1580px!important;min-width:1580px!important;}
}
@media(max-width:900px){
  .salarySummary.summaryCards.compactSummary,
  .iwp-summary-grid.summaryCards.compactSummary.salarySummary{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:560px){
  .salarySummary.summaryCards.compactSummary,
  .iwp-summary-grid.summaryCards.compactSummary.salarySummary{grid-template-columns:1fr!important;}
}

/* =========================================================
   V1.1W34A - UI Format Audit Diagnostic Page
   Read-only diagnostics styling. Does not alter business logic.
   ========================================================= */
.ui-audit-hero{align-items:center;gap:18px;}
.ui-audit-summary.summaryCards{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-top:14px;}
.ui-audit-summary .summaryCard{min-height:86px;overflow:visible;}
.ui-audit-summary .summaryCard b{white-space:nowrap;overflow:visible;text-overflow:clip;}
.ui-audit-note{margin-top:14px;}
.ui-audit-table-card{margin-top:14px;}
.ui-audit-table-card .table-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;}
.ui-audit-table-card .table-toolbar h3{margin:0 0 4px 0;}
.ui-audit-table-card .table-toolbar p{margin:0;}
.ui-audit-table-card .quickFilter{max-width:360px;min-width:240px;}
.ui-audit-wrap{overflow-x:auto;}
.ui-audit-table{min-width:1500px;font-size:12px;}
.ui-audit-table th{white-space:nowrap;}
.ui-audit-table td{vertical-align:top;line-height:1.45;}
.ui-audit-table td:nth-child(3),
.ui-audit-table td:nth-child(4),
.ui-audit-table td:nth-child(5),
.ui-audit-table td:nth-child(9){min-width:210px;}
.ui-audit-table td:nth-child(10){white-space:nowrap;text-align:center;}
.ui-audit-standards{margin-top:14px;}
.ui-audit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:10px;}
.ui-audit-grid>div{border:1px solid var(--line,#dbe6f1);border-radius:14px;padding:12px;background:rgba(255,255,255,.72);}
.ui-audit-grid p{margin:6px 0 0;color:var(--muted,#64748b);font-size:12px;line-height:1.45;}
@media print{.ui-audit-hero .heroActions,.ui-audit-table-card .quickFilter,.ui-audit-table td:nth-child(10),.ui-audit-table th:nth-child(10){display:none!important}.ui-audit-table{min-width:0;font-size:9px}.ui-audit-table td:nth-child(3),.ui-audit-table td:nth-child(4),.ui-audit-table td:nth-child(5),.ui-audit-table td:nth-child(9){min-width:0}.ui-audit-wrap{overflow:visible}}

/* =========================================================
   V1.1W34A1 UI FORMAT AUDIT PRINT & REPORT LAYOUT FIX
   Scope: UI Format Audit page only. Keeps screen comparison table,
   adds print-friendly stacked audit cards without horizontal scroll.
   ========================================================= */
.ui-audit-note p{margin:6px 0 0;line-height:1.55;}
.ui-audit-table-card{overflow:hidden;}
.ui-audit-wrap{overflow-x:auto;max-width:100%;}
.ui-audit-table{min-width:1500px;}
.ui-audit-table th,.ui-audit-table td{word-break:normal;overflow-wrap:anywhere;}
.ui-audit-print-report{margin-top:14px;display:none;}
.ui-print-report-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;}
.ui-print-report-head h3{margin:0 0 4px 0;}
.ui-print-report-head p{margin:0;}
.ui-print-priority-title{margin:18px 0 10px;padding:8px 10px;border-radius:12px;border:1px solid var(--line,#dbe6f1);font-size:13px;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.72);}
.ui-print-priority-title.danger{color:#991b1b;background:#fff1f2;border-color:#fecdd3;}
.ui-print-priority-title.warn{color:#92400e;background:#fffbeb;border-color:#fde68a;}
.ui-print-priority-title.info{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe;}
.ui-print-priority-title.ok{color:#047857;background:#ecfdf5;border-color:#bbf7d0;}
.ui-audit-print-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px;}
.ui-audit-print-card{border:1px solid var(--line,#dbe6f1);border-radius:16px;background:#fff;padding:14px;box-shadow:0 8px 24px rgba(15,23,42,.06);break-inside:avoid;page-break-inside:avoid;}
.ui-audit-print-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line,#e5edf6);padding-bottom:10px;margin-bottom:10px;}
.ui-audit-print-group{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800;color:var(--blue,#155a91);margin-bottom:4px;}
.ui-audit-print-top h4{margin:0;font-size:17px;line-height:1.2;color:var(--ink,#0f172a);}
.ui-audit-print-top small{display:block;margin-top:3px;color:var(--muted,#64748b);font-weight:650;}
.ui-audit-print-card dl{display:grid;grid-template-columns:130px minmax(0,1fr);gap:8px 12px;margin:0;}
.ui-audit-print-card dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#64748b);font-weight:850;}
.ui-audit-print-card dd{margin:0;font-size:12px;line-height:1.45;color:var(--ink,#0f172a);overflow-wrap:anywhere;}
.ui-audit-standards{break-inside:avoid;page-break-inside:avoid;}
@media print{
  @page{size:A4 landscape;margin:9mm;}
  body{background:#fff!important;}
  .sidebar,.topbar,.nav,.noPrint,.heroActions,.table-toolbar .quickFilter,.ui-audit-table-card,.ui-audit-note .mutedBadge{display:none!important;}
  .main,.content,.wrap{margin:0!important;width:100%!important;max-width:none!important;padding:0!important;}
  .iwp-page-hero.ui-audit-hero{display:block!important;padding:10px 12px!important;margin:0 0 8px 0!important;border:1px solid #dbe6f1!important;box-shadow:none!important;background:#fff!important;}
  .iwp-page-hero.ui-audit-hero h1{font-size:22px!important;margin:0 0 4px 0!important;}
  .iwp-page-hero.ui-audit-hero p{font-size:11px!important;line-height:1.35!important;margin:0!important;}
  .ui-audit-summary.summaryCards{display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:6px!important;margin:6px 0!important;}
  .ui-audit-summary .summaryCard{min-height:54px!important;padding:8px 10px!important;box-shadow:none!important;border:1px solid #dbe6f1!important;break-inside:avoid;}
  .ui-audit-summary .summaryCard span{font-size:8px!important;line-height:1.1!important;}
  .ui-audit-summary .summaryCard b{font-size:16px!important;line-height:1.1!important;}
  .ui-audit-summary .summaryCard small{font-size:8px!important;line-height:1.1!important;}
  .ui-audit-note{display:block!important;margin:6px 0!important;padding:8px 10px!important;border:1px solid #dbe6f1!important;box-shadow:none!important;background:#fff!important;}
  .ui-audit-note h3{font-size:13px!important;margin:0 0 4px!important;}
  .ui-audit-note p{font-size:10px!important;line-height:1.35!important;margin:0 0 3px!important;}
  .ui-audit-print-report{display:block!important;margin-top:8px!important;padding:0!important;border:0!important;box-shadow:none!important;background:#fff!important;}
  .ui-print-report-head{margin-bottom:6px!important;border-bottom:1px solid #dbe6f1!important;padding-bottom:5px!important;}
  .ui-print-report-head h3{font-size:15px!important;margin:0!important;}
  .ui-print-report-head p{font-size:9px!important;line-height:1.25!important;}
  .ui-print-priority-title{font-size:10px!important;margin:8px 0 5px!important;padding:4px 6px!important;border-radius:6px!important;}
  .ui-audit-print-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:6px!important;}
  .ui-audit-print-card{padding:8px!important;border-radius:8px!important;box-shadow:none!important;border:1px solid #dbe6f1!important;break-inside:avoid!important;page-break-inside:avoid!important;}
  .ui-audit-print-top{padding-bottom:5px!important;margin-bottom:5px!important;}
  .ui-audit-print-group{font-size:7px!important;margin-bottom:2px!important;color:#1e40af!important;}
  .ui-audit-print-top h4{font-size:12px!important;line-height:1.1!important;}
  .ui-audit-print-top small{font-size:7px!important;}
  .ui-audit-print-card dl{grid-template-columns:76px 1fr!important;gap:3px 6px!important;}
  .ui-audit-print-card dt{font-size:7px!important;line-height:1.15!important;}
  .ui-audit-print-card dd{font-size:8.5px!important;line-height:1.25!important;}
  .statusBadge,.mutedBadge{font-size:7px!important;padding:2px 5px!important;border-radius:999px!important;white-space:nowrap!important;}
  .ui-audit-standards{display:block!important;margin-top:8px!important;padding:8px!important;border:1px solid #dbe6f1!important;box-shadow:none!important;}
  .ui-audit-standards h3{font-size:13px!important;margin:0 0 5px!important;}
  .ui-audit-grid{grid-template-columns:repeat(4,1fr)!important;gap:5px!important;}
  .ui-audit-grid>div{padding:6px!important;border-radius:7px!important;}
  .ui-audit-grid b{font-size:9px!important;}
  .ui-audit-grid p{font-size:7.5px!important;line-height:1.2!important;margin-top:2px!important;}
}

/* =========================================================
   V1.1W34B — Salary / Wage Critical UI Stabilization Patch
   Scope: Salary / Wage page only. Uses unique classes to avoid conflict
   with legacy/global summary card rules.
   ========================================================= */
.salary-kpi-grid-critical{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:14px!important;
  align-items:stretch!important;
  margin:16px 0 20px!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
.salary-kpi-card-critical{
  position:relative!important;
  box-sizing:border-box!important;
  min-height:112px!important;
  height:auto!important;
  padding:18px 18px 15px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:5px!important;
  overflow:visible!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  border:1px solid rgba(148,163,184,.30)!important;
  border-top:4px solid #60a5fa!important;
  border-radius:16px!important;
  box-shadow:0 10px 24px rgba(15,39,66,.06)!important;
  color:#0f172a!important;
}
.salary-kpi-card-critical *,
.salary-kpi-card-critical *::before,
.salary-kpi-card-critical *::after{
  box-sizing:border-box!important;
  max-height:none!important;
  clip:auto!important;
  -webkit-line-clamp:unset!important;
}
.salary-kpi-card-critical .salary-kpi-label{
  display:block!important;
  width:100%!important;
  color:#64748b!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.salary-kpi-card-critical .salary-kpi-value{
  display:block!important;
  width:100%!important;
  color:#0f172a!important;
  font-size:23px!important;
  line-height:1.16!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-variant-numeric:tabular-nums!important;
}
.salary-kpi-card-critical .salary-kpi-note{
  display:block!important;
  width:100%!important;
  color:#64748b!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:650!important;
  letter-spacing:.01em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
@media(max-width:1200px){
  .salary-kpi-grid-critical{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;}
  .salary-kpi-card-critical{min-height:108px!important;padding:16px!important;}
  .salary-kpi-card-critical .salary-kpi-value{font-size:21px!important;}
}
@media(max-width:640px){
  .salary-kpi-grid-critical{grid-template-columns:1fr!important;}
}

/* Salary table: preserve readable finance cells and prevent squeeze/ellipsis. */
.salaryTableCritical{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  -webkit-overflow-scrolling:touch!important;
  padding-bottom:4px!important;
}
.salaryTableCritical table{
  table-layout:fixed!important;
  width:1580px!important;
  min-width:1580px!important;
  max-width:none!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
.salaryTableCritical th,
.salaryTableCritical td{
  box-sizing:border-box!important;
  overflow:visible!important;
  vertical-align:middle!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.salaryTableCritical th:nth-child(1), .salaryTableCritical td:nth-child(1){width:105px!important;}
.salaryTableCritical th:nth-child(2), .salaryTableCritical td:nth-child(2){width:185px!important;}
.salaryTableCritical th:nth-child(3), .salaryTableCritical td:nth-child(3){width:245px!important;}
.salaryTableCritical th:nth-child(4), .salaryTableCritical td:nth-child(4){width:155px!important;}
.salaryTableCritical th:nth-child(5), .salaryTableCritical td:nth-child(5){width:245px!important;}
.salaryTableCritical th:nth-child(6), .salaryTableCritical td:nth-child(6){width:245px!important;}
.salaryTableCritical th:nth-child(7), .salaryTableCritical td:nth-child(7){width:130px!important;text-align:center!important;}
.salaryTableCritical th:nth-child(8), .salaryTableCritical td:nth-child(8){width:130px!important;text-align:center!important;}
.salaryTableCritical th:nth-child(9), .salaryTableCritical td:nth-child(9){width:140px!important;}
.salaryTableCritical td{padding:12px 12px!important;}
.salaryTableCritical td:nth-child(2) .smallNote,
.salaryTableCritical td:nth-child(3) .smallNote{
  white-space:normal!important;
  overflow:visible!important;
  line-height:1.25!important;
}
.salaryTableCritical .dateStack strong,
.salaryTableCritical .dateStack span{
  white-space:nowrap!important;
  display:block!important;
}
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
  width:100%!important;
  overflow:visible!important;
}
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock div{
  display:grid!important;
  grid-template-columns:72px minmax(130px,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  padding:2px 0!important;
  width:100%!important;
  border-bottom:1px dashed rgba(148,163,184,.18)!important;
}
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock div:last-child{border-bottom:0!important;}
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock span{
  display:block!important;
  color:#64748b!important;
  font-size:8.5px!important;
  line-height:1.1!important;
  font-weight:850!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock strong,
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock .warnMoney,
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock .mutedMoney,
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock .balanceDue{
  display:block!important;
  justify-self:end!important;
  color:#0f172a!important;
  font-size:12px!important;
  line-height:1.16!important;
  font-weight:850!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  max-width:none!important;
  font-variant-numeric:tabular-nums!important;
}
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock .warnMoney{color:#b45309!important;}
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock .mutedMoney{color:#64748b!important;font-weight:700!important;}
.salaryTableCritical .financeMiniBlock.salaryMoneyBlock .balanceDue{font-weight:900!important;}
.salaryTableCritical .rowActions.salaryActions{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  align-items:flex-start!important;
  justify-content:center!important;
  overflow:visible!important;
}
.salaryTableCritical .rowActions.salaryActions a,
.salaryTableCritical .rowActions.salaryActions .miniAction,
.salaryTableCritical .rowActions.salaryActions .statusBadge{
  white-space:nowrap!important;
  font-size:10px!important;
  line-height:1.15!important;
  padding:5px 8px!important;
  margin:0!important;
}
@media print{
  .salary-kpi-grid-critical{grid-template-columns:repeat(4,1fr)!important;gap:6px!important;}
  .salary-kpi-card-critical{min-height:58px!important;padding:7px 8px!important;box-shadow:none!important;}
  .salary-kpi-card-critical .salary-kpi-label{font-size:7px!important;line-height:1.1!important;}
  .salary-kpi-card-critical .salary-kpi-value{font-size:13px!important;line-height:1.1!important;}
  .salary-kpi-card-critical .salary-kpi-note{font-size:7px!important;line-height:1.1!important;}
}

/* V1.1W35 — Premium Summary Strip Framework
   Purpose: use readable strip/panel summaries outside Dashboard; no clipping, no oversized KPI boxes. */
.iwp-premium-summary-strip{
  margin: 12px 0 14px;
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(248,250,252,.96));
  box-shadow: 0 12px 28px rgba(15,23,42,.07);
  overflow: hidden;
}
.premiumStripHead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding: 11px 16px;
  border-bottom: 1px solid rgba(15,23,42,.07);
  background: linear-gradient(90deg, rgba(18,60,86,.08), rgba(245,158,11,.05));
}
.premiumStripHead b{
  color:#123c56;
  font-size:13px;
  letter-spacing:.02em;
}
.premiumStripHead span{
  color:#64748b;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.premiumStripMetrics{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  gap:0;
}
.premiumMetricItem{
  position:relative;
  padding: 12px 14px 11px;
  min-height: 76px;
  border-right:1px solid rgba(15,23,42,.065);
  border-bottom:1px solid rgba(15,23,42,.045);
}
.premiumMetricItem:before{
  content:"";
  position:absolute;
  left:14px;
  top:9px;
  width:24px;
  height:3px;
  border-radius:99px;
  background:linear-gradient(90deg,#123c56,#f59e0b);
  opacity:.7;
}
.premiumMetricLabel{
  display:block;
  margin-top:7px;
  color:#64748b;
  font-size:10px;
  line-height:1.15;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.055em;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
}
.premiumMetricValue{
  display:block;
  margin-top:5px;
  color:#0f172a;
  font-size:20px;
  line-height:1.12;
  font-weight:800;
  white-space:nowrap;
  overflow:visible;
  text-overflow:clip;
  font-variant-numeric: tabular-nums;
}
.premiumMetricNote{
  display:block;
  margin-top:4px;
  color:#64748b;
  font-size:11px;
  line-height:1.25;
  font-weight:600;
  white-space:normal;
  overflow:visible;
}
.salaryPremiumStrip .premiumMetricValue{font-size:19px;}
/* remove repeated currency pressure in dense UI; values are shown in the page/strip currency note */
.financeMiniBlock b,
.financeStack b,
.iwp-money,
.iwp-cell-money,
.salaryMoneyBlock strong{
  font-variant-numeric: tabular-nums;
}
/* Salary page after W35: let summary strip breathe and keep finance table readable. */
.salaryTableCritical,
.salaryTableReadable{
  overflow-x:auto !important;
}
.salaryTableCritical table,
.salaryTableReadable table{
  min-width:1180px;
}
.salaryTableCritical .financeMiniBlock,
.salaryTableReadable .financeMiniBlock{
  min-width:145px;
}
@media (max-width: 900px){
  .premiumStripHead{align-items:flex-start;flex-direction:column;padding:10px 13px;gap:4px;}
  .premiumStripHead span{white-space:normal;}
  .premiumStripMetrics{grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));}
  .premiumMetricItem{min-height:74px;padding:11px 12px 10px;}
  .premiumMetricValue{font-size:18px;}
}
@media print{
  .iwp-premium-summary-strip{box-shadow:none;border-color:#d1d5db;break-inside:avoid;}
  .premiumStripHead{background:#f8fafc!important;}
}

/* V1.1W35A3 — Payroll Strip Label & Button Consistency
   Stable premium strip behavior for Payroll & Payments pages. */
.iwp-premium-summary-strip.premiumSummaryStrip{
  overflow: visible !important;
}
.iwp-premium-summary-strip .premiumStripHead{
  display: grid !important;
  grid-template-columns: minmax(220px, auto) 1fr !important;
  align-items: center !important;
  column-gap: 20px !important;
  row-gap: 4px !important;
  padding: 12px 18px !important;
}
.iwp-premium-summary-strip .premiumStripHead b{
  white-space: nowrap !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
}
.iwp-premium-summary-strip .premiumStripHead span{
  white-space: normal !important;
  text-align: right !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  color: #64748b !important;
}
.iwp-premium-summary-strip .premiumStripMetrics{
  display:grid !important;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
}
.iwp-premium-summary-strip.metricCount8 .premiumStripMetrics{
  grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
}
.iwp-premium-summary-strip.metricCount6 .premiumStripMetrics{
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}
.iwp-premium-summary-strip .premiumMetricItem{
  min-height: 86px !important;
  padding: 13px 16px 12px !important;
  overflow: visible !important;
}
.iwp-premium-summary-strip .premiumMetricItem:before{
  left: 16px !important;
  width: 28px !important;
}
.iwp-premium-summary-strip .premiumMetricLabel{
  font-size: 10px !important;
  letter-spacing: .06em !important;
  line-height: 1.18 !important;
  min-height: 12px !important;
  white-space: normal !important;
  overflow: visible !important;
}
.iwp-premium-summary-strip .premiumMetricValue{
  font-size: 20px !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
.iwp-premium-summary-strip .premiumMetricNote{
  font-size: 11px !important;
  line-height: 1.22 !important;
  font-weight: 600 !important;
  white-space: normal !important;
  overflow: visible !important;
}
@media (max-width: 1200px){
  .iwp-premium-summary-strip.metricCount8 .premiumStripMetrics,
  .iwp-premium-summary-strip.metricCount6 .premiumStripMetrics{
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
  }
}
@media (max-width: 900px){
  .iwp-premium-summary-strip .premiumStripHead{
    grid-template-columns: 1fr !important;
  }
  .iwp-premium-summary-strip .premiumStripHead span{
    text-align: left !important;
  }
}
@media print{
  .iwp-premium-summary-strip .premiumStripHead{
    grid-template-columns: 1fr !important;
  }
  .iwp-premium-summary-strip .premiumStripHead span{
    text-align:left !important;
  }
  .iwp-premium-summary-strip.metricCount8 .premiumStripMetrics,
  .iwp-premium-summary-strip.metricCount6 .premiumStripMetrics{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}


/* V1.1W35A4 — Payroll strip micro alignment
   Keep eight Payroll metrics on one row on normal desktop content width and shorten helper visual pressure. */
@media (min-width: 901px){
  .iwp-premium-summary-strip.metricCount8 .premiumStripMetrics{
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  }
  .iwp-premium-summary-strip.metricCount8 .premiumMetricItem{
    padding-left: 13px !important;
    padding-right: 12px !important;
  }
  .iwp-premium-summary-strip.metricCount8 .premiumMetricItem:before{
    left: 13px !important;
    width: 24px !important;
  }
  .iwp-premium-summary-strip.metricCount8 .premiumMetricLabel{
    font-size: 9.5px !important;
    letter-spacing: .052em !important;
  }
  .iwp-premium-summary-strip.metricCount8 .premiumMetricValue{
    font-size: 19px !important;
  }
  .iwp-premium-summary-strip.metricCount8 .premiumMetricNote{
    font-size: 10.5px !important;
    line-height: 1.18 !important;
  }
}
@media (max-width: 900px){
  .iwp-premium-summary-strip.metricCount8 .premiumStripMetrics{
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)) !important;
  }
}

/* V1.1W35A5 — Salary / Wage strip 8-column alignment fix
   Keep the Salary / Wage Payroll Snapshot eight metrics on one desktop row without affecting other pages. */
@media (min-width: 901px){
  .salaryPremiumStrip .premiumStripMetrics{
    display: grid !important;
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  }
  .salaryPremiumStrip .premiumMetricItem{
    min-width: 0 !important;
  }
  .salaryPremiumStrip .premiumMetricLabel,
  .salaryPremiumStrip .premiumMetricValue,
  .salaryPremiumStrip .premiumMetricNote{
    max-width: 100% !important;
  }
}
@media (max-width: 900px){
  .salaryPremiumStrip .premiumStripMetrics{
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)) !important;
  }
}

/* =========================================================
   V1.2B1 Universal Report Block & Safe Badge Standard
   Purpose: reusable detail/report layout for dense sections.
   Safe rules: no global nowrap, no global table min-width forcing.
   ========================================================= */
.reportBlockList{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.reportDetailBlock{
  border:1px solid rgba(148,163,184,.28);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,255,.98));
  padding:12px 14px;
  overflow:hidden;
  box-shadow:0 8px 20px rgba(15,23,42,.04);
}
.reportBlockHead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.reportBlockHead strong{
  display:block;
  font-size:13px;
  color:#0f172a;
  line-height:1.25;
}
.reportBlockHead span:not(.statusBadge):not(.iwp-badge){
  display:block;
  margin-top:2px;
  color:#64748b;
  font-size:12px;
  line-height:1.25;
}
.reportInfoGrid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
  gap:8px 12px;
}
.reportInfoGrid div{
  min-width:0;
}
.reportInfoGrid b{
  display:block;
  color:#64748b;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  line-height:1.15;
  margin-bottom:3px;
}
.reportInfoGrid span{
  display:block;
  color:#0f172a;
  font-weight:700;
  font-size:12px;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.safeBadgeWrap,
.profileBadges{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}
.safeBadge,
.safeBadgeWrap .statusBadge,
.profileBadges .statusBadge,
.profileSection .statusBadge{
  max-width:100%;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  line-height:1.18;
  text-align:center;
}
.profileSection .reportBlockList .statusBadge{
  flex-shrink:1;
}
.deploymentBlock .reportBlockHead .statusBadge,
.advanceBlock .reportBlockHead .statusBadge{
  max-width:180px;
}
@media (max-width: 1100px){
  .reportBlockHead{flex-direction:column;align-items:flex-start;}
  .deploymentBlock .reportBlockHead .statusBadge,
  .advanceBlock .reportBlockHead .statusBadge{max-width:100%;}
}
