:root{
  --s4s-blue:#0755A5;--s4s-blue-dark:#073B73;--s4s-green:#16A34A;--s4s-bg:#F5F8FC;--s4s-card:#fff;--s4s-text:#172033;--s4s-muted:#64748B;--s4s-border:#E2E8F0;
  --primary:hsl(211 91% 34%);--primary-foreground:hsl(0 0% 100%);--ring:hsl(211 91% 34%);
  --sidebar-primary:hsl(211 91% 34%);--sidebar-primary-foreground:hsl(0 0% 100%);--sidebar-accent:hsl(211 100% 96%);--sidebar-accent-foreground:hsl(211 82% 24%);
}
body{background:var(--s4s-bg)!important;color:var(--s4s-text)}
.s4s-topbar{position:sticky;top:0;z-index:9999;display:flex;align-items:center;gap:18px;min-height:62px;padding:8px 18px;background:#fff;border-bottom:1px solid var(--s4s-border);box-shadow:0 2px 10px rgba(15,39,71,.05)}
.s4s-brand{display:flex;align-items:center;gap:10px;min-width:max-content;text-decoration:none;color:var(--s4s-blue-dark);font-weight:800}.s4s-brand img{height:38px;width:auto;display:block}.s4s-brand small{display:block;color:var(--s4s-muted);font-weight:600;font-size:10px;letter-spacing:.04em}
.s4s-nav{display:flex;align-items:center;gap:4px;overflow:auto;flex:1;scrollbar-width:thin}.s4s-nav a{white-space:nowrap;text-decoration:none;color:#334155;font-size:13px;font-weight:700;padding:9px 10px;border-radius:9px}.s4s-nav a:hover{background:#eef6ff;color:var(--s4s-blue)}
.s4s-user{display:flex;align-items:center;gap:9px;min-width:max-content}.s4s-user-name{font-size:12px;color:var(--s4s-muted);max-width:140px;overflow:hidden;text-overflow:ellipsis}.s4s-logout{border:0;background:#fff0f0;color:#b42318;font-weight:800;border-radius:9px;padding:9px 12px;cursor:pointer}.s4s-logout:hover{background:#fee2e2}
.s4s-page{width:100%;max-width:none;margin:0;padding:clamp(16px,2vw,30px)}.s4s-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.s4s-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--s4s-green)}.s4s-h1{font-size:29px;line-height:1.15;margin:4px 0;color:var(--s4s-blue-dark)}.s4s-sub{color:var(--s4s-muted);font-size:14px}.s4s-actions{display:flex;gap:8px;flex-wrap:wrap}.s4s-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;border:1px solid var(--s4s-border);background:#fff;color:#334155;padding:9px 12px;border-radius:9px;font-weight:800;font-size:13px}.s4s-btn.primary{background:var(--s4s-blue);border-color:var(--s4s-blue);color:#fff}.s4s-btn.green{background:var(--s4s-green);border-color:var(--s4s-green);color:#fff}.s4s-btn:hover{filter:brightness(.98);box-shadow:0 3px 10px rgba(15,39,71,.08)}
.s4s-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.s4s-stat{background:#fff;border:1px solid var(--s4s-border);border-radius:14px;padding:17px;box-shadow:0 2px 8px rgba(15,39,71,.035)}.s4s-stat .label{font-size:12px;font-weight:800;color:var(--s4s-muted)}.s4s-stat .value{font-size:28px;line-height:1.1;font-weight:900;color:var(--s4s-blue-dark);margin:7px 0}.s4s-stat .hint{font-size:11px;color:#94a3b8}.s4s-stat.green .value{color:var(--s4s-green)}.s4s-stat.warn .value{color:#d97706}.s4s-stat.red .value{color:#dc2626}
.s4s-columns{display:grid;grid-template-columns:1.35fr .65fr;gap:16px;margin-top:16px}.s4s-card{background:#fff;border:1px solid var(--s4s-border);border-radius:14px;padding:18px;box-shadow:0 2px 8px rgba(15,39,71,.035)}.s4s-card h2{font-size:16px;margin:0 0 14px;color:var(--s4s-blue-dark)}.s4s-table-wrap{overflow:auto}.s4s-table{width:100%;border-collapse:collapse;font-size:12px}.s4s-table th{text-align:left;padding:10px;background:#f8fafc;color:#64748b;border-bottom:1px solid var(--s4s-border);white-space:nowrap}.s4s-table td{padding:10px;border-bottom:1px solid #eef2f6;vertical-align:top}.s4s-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef6ff;color:var(--s4s-blue);font-size:10px;font-weight:900;text-transform:capitalize}.s4s-badge.green{background:#ecfdf3;color:#067647}.s4s-badge.red{background:#fef3f2;color:#b42318}.s4s-badge.warn{background:#fffaeb;color:#b54708}
.s4s-quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.s4s-quick a{text-decoration:none;border:1px solid var(--s4s-border);border-radius:10px;padding:12px;font-size:12px;font-weight:800;color:#334155;background:#fff}.s4s-quick a:hover{border-color:#9cc4eb;background:#f8fbff;color:var(--s4s-blue)}
.s4s-bars{display:flex;flex-direction:column;gap:10px}.s4s-bar-row{display:grid;grid-template-columns:minmax(100px,1fr) 2fr 36px;align-items:center;gap:8px;font-size:11px}.s4s-track{height:8px;background:#edf2f7;border-radius:999px;overflow:hidden}.s4s-fill{height:100%;background:linear-gradient(90deg,var(--s4s-blue),#2b7dcc);border-radius:999px}.s4s-fill.green{background:linear-gradient(90deg,var(--s4s-green),#47bd6d)}
.s4s-filter{display:flex;gap:10px;align-items:end;flex-wrap:wrap;padding:14px;background:#fff;border:1px solid var(--s4s-border);border-radius:12px;margin-bottom:16px}.s4s-field label{display:block;font-size:11px;font-weight:800;color:#64748b;margin-bottom:5px}.s4s-field input{border:1px solid var(--s4s-border);border-radius:8px;padding:9px 10px;font:inherit}
.s4s-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.s4s-report{background:#fff;border:1px solid var(--s4s-border);border-radius:14px;padding:18px}.s4s-report h3{margin:0 0 6px;color:var(--s4s-blue-dark);font-size:16px}.s4s-report p{color:var(--s4s-muted);font-size:12px;min-height:36px}.s4s-report .buttons{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:1050px){.s4s-grid{grid-template-columns:repeat(2,1fr)}.s4s-columns{grid-template-columns:1fr}.s4s-report-grid{grid-template-columns:repeat(2,1fr)}.s4s-user-name{display:none}}
@media(max-width:680px){.s4s-topbar{padding:7px 9px;gap:8px}.s4s-brand span{display:none}.s4s-brand img{height:32px}.s4s-page{padding:15px}.s4s-grid,.s4s-report-grid{grid-template-columns:1fr}.s4s-quick{grid-template-columns:1fr}.s4s-h1{font-size:23px}.s4s-nav a{font-size:11px;padding:8px 7px}.s4s-logout{padding:8px 9px;font-size:11px}}
@media print{.s4s-topbar,.s4s-actions,.s4s-filter,.s4s-btn{display:none!important}.s4s-page{max-width:none;padding:0}.s4s-card,.s4s-stat{box-shadow:none;break-inside:avoid}}


.s4s-employee-portal .min-h-screen.bg-slate-50{background:linear-gradient(180deg,#f3f8fe 0,#f8fafc 260px)!important}
.s4s-employee-portal .min-h-screen.bg-slate-50>header{border-bottom:1px solid var(--s4s-border)!important;background:rgba(255,255,255,.96)!important;box-shadow:0 2px 10px rgba(15,39,71,.04)}
.s4s-employee-portal .min-h-screen.bg-slate-50>header .text-indigo-600{color:var(--s4s-blue)!important}
.s4s-employee-portal aside.rounded-2xl{border-color:var(--s4s-border)!important;border-radius:16px!important;box-shadow:0 5px 18px rgba(15,39,71,.05)!important;position:sticky;top:82px}
.s4s-employee-portal aside.rounded-2xl a{transition:.18s ease}
.s4s-employee-portal aside.rounded-2xl a:hover{background:#eef6ff!important;color:var(--s4s-blue)!important;transform:translateX(2px)}
.s4s-employee-portal main .rounded-2xl.border.bg-white{border-color:var(--s4s-border)!important;border-radius:16px!important;box-shadow:0 4px 14px rgba(15,39,71,.045)!important}
.s4s-employee-portal main .bg-indigo-600{background:var(--s4s-blue)!important}
.s4s-employee-portal main .text-indigo-600{color:var(--s4s-blue)!important}
.s4s-employee-portal main input,.s4s-employee-portal main select,.s4s-employee-portal main textarea{border-color:#cbd5e1!important;border-radius:10px!important}
.s4s-employee-portal main input:focus,.s4s-employee-portal main select:focus,.s4s-employee-portal main textarea:focus{border-color:#80afe0!important;box-shadow:0 0 0 3px rgba(7,85,165,.10)!important;outline:none!important}
.s4s-portal-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px}.s4s-value-text{font-size:20px!important;line-height:1.25!important}.s4s-report-grid-employee{grid-template-columns:repeat(2,minmax(0,1fr))}.s4s-report-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:#eef6ff;color:var(--s4s-blue);font-weight:900;margin-bottom:12px}.s4s-mini-form{margin:12px 0}.s4s-mini-form label{font-size:11px;font-weight:800;color:var(--s4s-muted)}.s4s-mini-form input{display:block;width:100%;margin-top:5px;border:1px solid var(--s4s-border);border-radius:9px;padding:9px 10px;background:#fff}.s4s-note{margin-top:16px;padding:13px 15px;border:1px solid #bfe3cb;background:#f1fbf4;border-radius:12px;color:#285c39;font-size:12px;line-height:1.5}
@media(max-width:800px){.s4s-employee-portal aside.rounded-2xl{position:static;display:flex;overflow:auto;gap:4px}.s4s-employee-portal aside.rounded-2xl a{white-space:nowrap}.s4s-report-grid-employee,.s4s-portal-kpis{grid-template-columns:1fr}}


.s4s-topbar,.s4s-page{font-family:'Instrument Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.s4s-nav a.active{background:#eef6ff;color:var(--s4s-blue);box-shadow:inset 0 0 0 1px #cfe3f7}
.s4s-card-empty,.s4s-empty-state{min-height:160px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.s4s-empty-state{margin-top:16px}.s4s-empty-state h2{margin:0 0 8px;color:var(--s4s-blue-dark)}.s4s-empty-state p{margin:0;color:var(--s4s-muted);font-size:13px;line-height:1.6}
.s4s-report-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:#eef6ff;color:var(--s4s-blue);font-weight:900;margin-bottom:12px}
.s4s-note{margin-top:16px;padding:13px 15px;border:1px solid #bfe3cb;background:#f1fbf4;border-radius:12px;color:#285c39;font-size:12px;line-height:1.5}
.s4s-table a{color:var(--s4s-blue);font-weight:700;text-decoration:none}.s4s-table a:hover{text-decoration:underline}
@media(max-width:900px){.s4s-topbar{align-items:flex-start;flex-wrap:wrap}.s4s-nav{order:3;flex-basis:100%;padding-bottom:2px}.s4s-user{margin-left:auto}}


.s4s-topbar{min-height:68px;padding-inline:clamp(12px,2vw,28px)}
.s4s-brand{min-width:220px}.s4s-nav{justify-content:flex-start}.s4s-nav a{position:relative}.s4s-nav a.active:after{content:"";position:absolute;left:10px;right:10px;bottom:3px;height:2px;border-radius:2px;background:var(--s4s-green)}
.s4s-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.s4s-card,.s4s-stat{box-shadow:0 8px 25px rgba(15,39,71,.055)}
.s4s-card:hover,.s4s-stat:hover{border-color:#cbd9ea}
.s4s-main-shell{display:grid;grid-template-columns:252px minmax(0,1fr);gap:20px;align-items:start}
.s4s-module-nav{position:sticky;top:88px;border:1px solid var(--s4s-border);border-radius:16px;background:#fff;padding:12px;box-shadow:0 8px 25px rgba(15,39,71,.055)}
.s4s-module-nav__title{padding:10px 11px 12px;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#94a3b8}
.s4s-module-nav a{display:flex;align-items:center;gap:10px;margin:2px 0;padding:10px 11px;border-radius:10px;color:#475569;text-decoration:none;font-size:13px;font-weight:750}
.s4s-module-nav a:before{content:"";width:7px;height:7px;border-radius:50%;background:#cbd5e1;flex:none}.s4s-module-nav a:hover,.s4s-module-nav a.active{background:#eef6ff;color:var(--s4s-blue)}.s4s-module-nav a.active:before{background:var(--s4s-green);box-shadow:0 0 0 4px rgba(22,163,74,.12)}
.s4s-dashboard-content{min-width:0}
.s4s-employee-avatar{width:38px;height:38px;border-radius:11px;object-fit:cover;background:#eef6ff;border:1px solid #d9e8f7}.s4s-employee-cell{display:flex;align-items:center;gap:10px}.s4s-avatar-fallback{display:grid;place-items:center;color:var(--s4s-blue);font-weight:900}
.min-h-screen.bg-slate-50>.mx-auto.grid{width:100%!important;max-width:none!important;margin-inline:0!important}
@media(max-width:1180px){.s4s-main-shell{grid-template-columns:210px minmax(0,1fr)}.s4s-columns{grid-template-columns:1fr}.s4s-brand{min-width:max-content}}
@media(max-width:900px){.s4s-main-shell{grid-template-columns:1fr}.s4s-module-nav{position:static;display:flex;gap:5px;overflow-x:auto}.s4s-module-nav__title{display:none}.s4s-module-nav a{white-space:nowrap;flex:none}.s4s-nav a.active:after{display:none}}


:root{
  --s4s-blue:#0B5DCC;--s4s-blue-dark:#0B2447;--s4s-blue-900:#071A33;--s4s-blue-800:#0A315F;
  --s4s-green:#16A34A;--s4s-green-dark:#087A36;--s4s-green-soft:#ECFDF3;--s4s-purple:#7C3AED;--s4s-orange:#F28C28;
  --s4s-bg:#F3F7FC;--s4s-card:#FFFFFF;--s4s-text:#122033;--s4s-muted:#64748B;--s4s-border:#DDE7F2;
}
html,body{min-height:100%;margin:0}body{background:var(--s4s-bg)!important}
.s4s-authenticated{--s4s-sidebar-width:272px}
body.s4s-authenticated{background:linear-gradient(90deg,var(--s4s-blue-900) 0 var(--s4s-sidebar-width),var(--s4s-bg) var(--s4s-sidebar-width))!important}
.s4s-topbar,.s4s-topbar *,.s4s-page,.s4s-page *{box-sizing:border-box}
.s4s-authenticated>.s4s-topbar{
  position:fixed;inset:0 auto 0 0;z-index:9998;width:var(--s4s-sidebar-width);height:100dvh;min-height:0;
  display:flex;flex-direction:column;align-items:stretch;gap:0;padding:18px 14px 14px;overflow:hidden;
  background:linear-gradient(180deg,var(--s4s-blue-900) 0%,var(--s4s-blue-dark) 55%,#073B36 130%);
  border:0;border-right:1px solid rgba(255,255,255,.08);box-shadow:12px 0 35px rgba(7,26,51,.13)
}
.s4s-authenticated .s4s-brand{width:100%;min-width:0;gap:11px;margin-bottom:18px;padding:10px;border-radius:14px;color:#fff;background:rgba(255,255,255,.07)}
.s4s-authenticated .s4s-brand img{height:38px;max-width:116px;padding:5px 7px;border-radius:9px;background:#fff;object-fit:contain}
.s4s-authenticated .s4s-brand span{min-width:0;flex:1;font-size:13px}.s4s-authenticated .s4s-brand small{margin-top:3px;color:#A9C5E7;font-size:7.5px;line-height:1.25;white-space:normal}
.s4s-authenticated .s4s-nav{display:flex;flex:1;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:3px;width:100%;overflow-x:hidden;overflow-y:auto;padding:0 3px 16px;scrollbar-color:#31577d transparent}
.s4s-nav-label{display:block;margin:17px 10px 6px;color:#7EA7CF;font-size:10px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.s4s-nav-label:first-child{margin-top:4px}
.s4s-authenticated .s4s-nav a{position:relative;display:flex;align-items:center;min-height:41px;padding:10px 12px 10px 35px;border-radius:10px;color:#D3E2F1;font-size:13px;font-weight:650}
.s4s-authenticated .s4s-nav a:before{content:"";position:absolute;left:14px;width:8px;height:8px;border:1.5px solid #79A4CF;border-radius:3px;transform:rotate(45deg)}
.s4s-authenticated .s4s-nav a:hover{background:rgba(255,255,255,.08);color:#fff;transform:translateX(2px)}
.s4s-authenticated .s4s-nav a.active{background:linear-gradient(90deg,rgba(11,93,204,.5),rgba(22,163,74,.17));color:#fff;box-shadow:inset 3px 0 0 var(--s4s-green),inset 0 0 0 1px rgba(255,255,255,.08)}
.s4s-authenticated .s4s-nav a.active:before{border-color:#fff;background:var(--s4s-green)}.s4s-authenticated .s4s-nav a.active:after{display:none}
.s4s-authenticated .s4s-user{width:100%;margin-top:auto;padding:12px 8px 2px;border-top:1px solid rgba(255,255,255,.1);justify-content:space-between}
.s4s-authenticated .s4s-user-name{display:block;color:#D7E4F1;max-width:138px}.s4s-authenticated .s4s-logout{background:rgba(255,255,255,.1);color:#fff}.s4s-authenticated .s4s-logout:hover{background:#B42318}
.s4s-sidebar-trigger{display:none;position:fixed;top:13px;left:13px;z-index:10001;width:43px;height:43px;padding:10px;border:0;border-radius:12px;background:var(--s4s-blue-dark);box-shadow:0 8px 24px rgba(7,26,51,.22);cursor:pointer}.s4s-sidebar-trigger span{display:block;height:2px;margin:4px 0;border-radius:2px;background:#fff}
.s4s-authenticated>.s4s-page{width:auto;max-width:none;margin-left:var(--s4s-sidebar-width);padding:clamp(18px,2vw,32px)}
body.s4s-authenticated>#app{width:auto;min-height:100vh;margin-left:var(--s4s-sidebar-width)}
body.s4s-authenticated #app .min-h-screen.bg-slate-50>.grid{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:clamp(18px,2vw,32px)!important}
body.s4s-authenticated #app .min-h-screen.bg-slate-50>header{display:none!important}
body.s4s-authenticated #app .min-h-screen.bg-slate-50>.grid>aside:first-child{display:none!important}
body.s4s-authenticated #app .min-h-screen.bg-slate-50>.grid>main{width:100%;max-width:none;min-width:0}
.s4s-module-nav{display:none!important}
.s4s-role-matrix>div.grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important}.s4s-role-matrix>div.grid>div{min-height:0!important}.s4s-role-matrix>div.grid>div>div{max-height:210px;overflow:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:#B9CDE1 transparent}
.s4s-columns>*{min-width:0}.s4s-dashboard-content>.s4s-columns{grid-template-columns:minmax(0,1fr)!important;align-items:start}.s4s-dashboard-content .s4s-quick{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.s4s-dashboard-content .s4s-quick a{display:flex;min-height:54px;align-items:center;justify-content:center;text-align:center;background:linear-gradient(145deg,#fff,#F3F8FE)}


.s4s-title-row{align-items:center;margin-bottom:20px}.s4s-h1{font-size:clamp(25px,2vw,34px);letter-spacing:-.025em}.s4s-eyebrow{color:var(--s4s-green)}
.s4s-card,.s4s-stat,.rounded-2xl.border.bg-white{border-color:var(--s4s-border)!important;box-shadow:0 8px 28px rgba(15,55,95,.06)!important}
.s4s-card,.s4s-stat{border-radius:16px}.s4s-stat{position:relative;overflow:hidden;padding:19px 19px 17px}.s4s-stat:after{content:"";position:absolute;right:-28px;top:-30px;width:92px;height:92px;border-radius:50%;background:rgba(11,93,204,.055)}.s4s-stat:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--s4s-blue)}.s4s-stat.green:before{background:var(--s4s-green)}.s4s-stat.green:after{background:rgba(22,163,74,.07)}.s4s-stat.warn:before{background:var(--s4s-orange)}.s4s-stat.warn:after{background:rgba(242,140,40,.09)}.s4s-stat.warn .value{color:#C66A12}.s4s-stat.red:before{background:#D24A62}.s4s-stat.red:after{background:rgba(210,74,98,.075)}.s4s-stat.red .value{color:#B9344B}.s4s-stat.purple:before{background:var(--s4s-purple)}.s4s-stat.purple:after{background:rgba(124,58,237,.07)}.s4s-stat.purple .value{color:var(--s4s-purple)}
.s4s-btn.primary,.bg-indigo-600,.bg-indigo-700{background:var(--s4s-blue)!important}.text-indigo-600,.text-indigo-700,.text-indigo-800{color:var(--s4s-blue)!important}.ring-indigo-500{--tw-ring-color:var(--s4s-blue)!important}
.s4s-btn.green{background:var(--s4s-green)!important}.s4s-badge.warn{background:#EAF3FF;color:#0B5DCC}
.s4s-visual-panel{display:grid;grid-template-columns:minmax(260px,1fr) 150px minmax(230px,.75fr);align-items:center;gap:24px;margin-top:16px;padding:22px 26px;border:1px solid #CFE0F2;border-radius:18px;background:linear-gradient(120deg,#fff 0%,#F2F8FF 58%,#F0FBF5 100%);box-shadow:0 10px 30px rgba(15,55,95,.06)}
.s4s-visual-copy h2{margin:5px 0 6px;color:var(--s4s-blue-dark);font-size:19px}.s4s-visual-copy p{margin:0;color:var(--s4s-muted);font-size:13px}
.s4s-donut{display:grid;place-items:center;width:124px;height:124px;margin:auto;border-radius:50%;background:conic-gradient(var(--s4s-green) calc(var(--value)*1%),#D9E8F7 0);box-shadow:0 8px 22px rgba(22,163,74,.12)}.s4s-donut:before{content:"";grid-area:1/1;width:88px;height:88px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #E0EAF4}.s4s-donut>div{grid-area:1/1;z-index:1;text-align:center}.s4s-donut strong{display:block;color:var(--s4s-blue-dark);font-size:23px}.s4s-donut span{color:var(--s4s-muted);font-size:10px;font-weight:750;text-transform:uppercase}
.s4s-chart-legend{display:grid;grid-template-columns:1fr 1fr;gap:10px}.s4s-chart-legend span{display:grid;grid-template-columns:9px 28px 1fr;align-items:center;gap:6px;color:#52657A;font-size:11px}.s4s-chart-legend i{width:8px;height:8px;border-radius:50%;background:var(--s4s-blue)}.s4s-chart-legend i.present{background:var(--s4s-green)}.s4s-chart-legend i.late{background:var(--s4s-orange)}.s4s-chart-legend i.absent{background:var(--s4s-purple)}.s4s-chart-legend i.leave{background:#72C992}.s4s-chart-legend b{color:var(--s4s-blue-dark);font-size:14px}
.s4s-section-gap{margin-top:22px!important}


.s4s-table-wrap,.overflow-x-auto{width:100%;max-width:100%;overflow:auto}.s4s-data-region{width:100%;min-width:0}.s4s-data-region table{width:100%!important;min-width:760px;border-collapse:separate;border-spacing:0}
.s4s-data-region thead th{position:sticky;top:0;z-index:3;padding:12px 13px!important;background:#EAF3FD!important;color:#274561!important;border-top:1px solid #D3E2F1;border-bottom:1px solid #C8D9EA!important;font-size:10px!important;font-weight:850!important;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
.s4s-data-region thead th:first-child{border-radius:10px 0 0}.s4s-data-region thead th:last-child{border-radius:0 10px 0 0}.s4s-data-region tbody td{padding:12px 13px!important;border-bottom:1px solid #E8EFF6!important}.s4s-data-region tbody tr:hover{background:#F5FAFF!important}
.s4s-table-toolbar{position:sticky;top:0;z-index:7;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin:0 0 12px;padding:10px 11px;border:1px solid #D9E5F1;border-radius:13px;background:rgba(255,255,255,.96);box-shadow:0 6px 18px rgba(15,55,95,.05);backdrop-filter:blur(12px)}
.s4s-toolbar-left,.s4s-toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.s4s-toolbar-left{flex:1;min-width:0}.s4s-toolbar-right{margin-left:auto}.s4s-table-search{width:clamp(210px,24vw,340px);height:38px!important;min-height:38px!important;padding:8px 11px 8px 34px!important;border:1px solid #C9D8E8!important;border-radius:10px!important;background:#fff linear-gradient(90deg,transparent,transparent);font:600 12px/1 system-ui}.s4s-search-wrap{position:relative;flex:none}.s4s-search-wrap:before{content:"";position:absolute;left:12px;top:11px;width:11px;height:11px;border:2px solid #7190AF;border-radius:50%;z-index:1}.s4s-search-wrap:after{content:"";position:absolute;left:22px;top:22px;width:6px;height:2px;background:#7190AF;transform:rotate(45deg);z-index:1}.s4s-table-toolbar .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.s4s-table-select{height:38px;min-height:38px!important;padding:7px 28px 7px 9px!important;border:1px solid #C9D8E8!important;border-radius:10px!important;background:#fff;color:#40566D;font:700 11px/1 system-ui}.s4s-table-count{white-space:nowrap;color:#64748B;font-size:11px;font-weight:700}
.s4s-tool-btn{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 12px;border:1px solid #C9D8E8;border-radius:10px;background:#fff;color:#36516D;font:750 11px/1 system-ui;cursor:pointer}.s4s-tool-btn:hover{border-color:#8FB7E1;background:#EFF7FF;color:var(--s4s-blue)}.s4s-tool-btn.primary{border-color:var(--s4s-green);background:var(--s4s-green);color:#fff}.s4s-tool-btn.primary:hover{background:var(--s4s-green-dark)}
.s4s-page-add-wrap{display:flex;justify-content:flex-end;gap:8px;margin:0 0 14px}.s4s-modalized-grid{display:block!important}.s4s-modalized-grid>.s4s-managed-form{display:none!important}.s4s-modalized-grid>section:not(.s4s-managed-form),.s4s-modalized-grid>div:not(.s4s-page-add-wrap){width:100%!important;max-width:none!important}.s4s-modalized-grid>.s4s-page-add-wrap{width:100%;margin-bottom:12px}
.s4s-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 2px 0}.s4s-page-info{color:#64748B;font-size:11px;font-weight:700}.s4s-page-buttons{display:flex;align-items:center;gap:5px}.s4s-page-btn{min-width:34px;height:34px;padding:0 9px;border:1px solid #C9D8E8;border-radius:9px;background:#fff;color:#35506C;font-size:12px;font-weight:800;cursor:pointer}.s4s-page-btn:hover:not(:disabled){border-color:var(--s4s-blue);color:var(--s4s-blue)}.s4s-page-btn:disabled{opacity:.4;cursor:not-allowed}.s4s-page-current{padding:0 7px;color:var(--s4s-blue-dark);font-size:11px;font-weight:800}
.s4s-pagination.s4s-pagination-empty{display:none}


.s4s-managed-form{display:none!important}.s4s-managed-form.s4s-modal-open{position:fixed!important;left:12px!important;right:12px!important;top:10px!important;z-index:10003!important;display:block!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 20px)!important;margin:0!important;padding:22px!important;overflow-y:auto!important;overscroll-behavior:contain;transform:none!important;border:1px solid #BFD3E8!important;border-radius:18px!important;background:#fff!important;box-shadow:0 32px 90px rgba(5,31,59,.3)!important}
.s4s-modal-backdrop{position:fixed;inset:0;z-index:10002;background:rgba(5,25,48,.62);backdrop-filter:blur(4px)}.s4s-modal-close{position:sticky;top:-12px;z-index:5;float:right;width:38px;height:38px;margin:-8px -8px 5px 10px;border:1px solid #D7E2ED;border-radius:11px;background:#fff;color:#24415E;font-size:22px;line-height:1;cursor:pointer;box-shadow:0 5px 15px rgba(15,55,95,.1)}.s4s-modal-close:hover{background:#FEF2F2;border-color:#FCA5A5;color:#DC2626;box-shadow:0 6px 18px rgba(220,38,38,.12)}body.s4s-modal-active{overflow:hidden}


body.s4s-native-form-modal-active{overflow:hidden!important}
.s4s-native-form-backdrop{position:fixed!important;inset:0!important;z-index:10010!important;background:rgba(7,26,51,.58)!important;backdrop-filter:blur(4px)!important}
#app section.s4s-native-form-modal{position:fixed!important;top:10px!important;right:12px!important;left:12px!important;z-index:10020!important;display:block!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 20px)!important;margin:0!important;padding:22px!important;overflow-y:auto!important;overscroll-behavior:contain;border:1px solid #C8D9EA!important;border-radius:18px!important;background:#fff!important;box-shadow:0 28px 80px rgba(7,26,51,.34)!important}
#app .s4s-native-existing-overlay{z-index:10010!important;padding:10px 12px!important}
#app .s4s-native-existing-overlay>.s4s-native-fullwidth-shell{width:100%!important;max-width:none!important;margin:0!important}
#app .s4s-native-existing-overlay>.s4s-native-fullwidth-shell>section{max-width:none!important}


body:not(.s4s-authenticated){background:#F3F7FC!important}.s4s-login-page,.s4s-login-page *{box-sizing:border-box}.s4s-login-page{display:grid;grid-template-columns:minmax(430px,1.08fr) minmax(480px,.92fr);min-height:100dvh;font-family:'Instrument Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--s4s-text);background:#F3F7FC}
.s4s-login-visual{position:relative;display:flex;flex-direction:column;min-height:100dvh;padding:clamp(28px,4vw,58px);overflow:hidden;color:#fff;background:linear-gradient(145deg,#061B35 0%,#0A4C91 57%,#087A55 125%)}.s4s-login-visual:before,.s4s-login-visual:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.s4s-login-visual:before{right:-130px;top:-100px;width:420px;height:420px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018)}.s4s-login-visual:after{left:-90px;bottom:-150px;width:360px;height:360px;background:radial-gradient(circle at 60% 35%,rgba(124,58,237,.26),rgba(22,163,74,.08) 55%,transparent 70%)}
.s4s-login-brand{position:relative;z-index:1;display:flex;align-items:center;gap:14px;width:max-content;padding:9px 13px 9px 9px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.08);box-shadow:0 12px 32px rgba(0,0,0,.12);backdrop-filter:blur(12px);font-size:15px;font-weight:850}.s4s-login-brand img{display:block;width:126px;height:43px;padding:5px 8px;border-radius:10px;background:#fff;object-fit:contain}.s4s-login-brand small{display:block;margin-top:3px;color:#B9D4EE;font-size:8px;font-weight:650}
.s4s-login-hero{position:relative;z-index:1;width:min(610px,92%);margin:auto 0}.s4s-login-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;color:#7DE4A5;font-size:11px;font-weight:850;letter-spacing:.17em;text-transform:uppercase}.s4s-login-kicker:before{content:"";width:9px;height:9px;border-radius:3px;background:#35D172;box-shadow:0 0 0 6px rgba(53,209,114,.13)}.s4s-login-hero h1{max-width:580px;margin:0;color:#fff;font-size:clamp(34px,4.1vw,58px);line-height:1.06;letter-spacing:-.045em}.s4s-login-hero p{max-width:560px;margin:22px 0 26px;color:#C5D8EA;font-size:clamp(14px,1.35vw,18px);line-height:1.65}.s4s-login-features{display:flex;flex-wrap:wrap;gap:9px}.s4s-login-features span{padding:8px 11px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.075);color:#E8F2FC;font-size:11px;font-weight:750}.s4s-login-features span:nth-child(3){border-color:rgba(124,58,237,.48);background:rgba(124,58,237,.18)}.s4s-login-features span:nth-child(4){border-color:rgba(242,140,40,.42);background:rgba(242,140,40,.14)}
.s4s-login-visual-foot{position:relative;z-index:1;display:flex;gap:22px;color:#9DBBD8;font-size:10px;font-weight:700}.s4s-login-visual-foot span{display:flex;align-items:center;gap:7px}.s4s-login-visual-foot span:before{content:"✓";display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:rgba(53,209,114,.17);color:#65E397;font-size:10px}
.s4s-login-panel{display:grid;place-items:center;min-width:0;padding:clamp(24px,5vw,74px);background:radial-gradient(circle at 90% 5%,rgba(11,93,204,.08),transparent 30%),radial-gradient(circle at 5% 95%,rgba(22,163,74,.08),transparent 28%),#F6F9FD}.s4s-login-card{width:min(470px,100%);padding:clamp(26px,3.2vw,42px);border:1px solid #D7E4F1;border-radius:24px;background:rgba(255,255,255,.96);box-shadow:0 28px 75px rgba(17,56,94,.14)}.s4s-login-mobile-brand{display:none}.s4s-login-card-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:28px}.s4s-login-lock{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,var(--s4s-blue),#0A79D8);box-shadow:0 9px 22px rgba(11,93,204,.22);color:#fff;font-size:18px;font-weight:900}.s4s-login-eyebrow{margin:1px 0 4px;color:var(--s4s-green);font-size:10px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.s4s-login-card h2{margin:0;color:var(--s4s-blue-dark);font-size:27px;line-height:1.2;letter-spacing:-.025em}.s4s-login-card-head p{margin:7px 0 0;color:#6B7D91;font-size:12px;line-height:1.5}
.s4s-login-form{display:flex;flex-direction:column}.s4s-login-form>label,.s4s-login-label-row label{margin:0 0 7px;color:#253C55;font-size:12px;font-weight:800}.s4s-login-label-row{display:flex;align-items:center;justify-content:space-between;margin-top:18px}.s4s-login-label-row a{color:var(--s4s-blue);font-size:11px;font-weight:800;text-decoration:none}.s4s-login-label-row a:hover{text-decoration:underline}.s4s-login-input{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;height:48px;border:1px solid #C9D8E8;border-radius:12px;background:#fff;transition:.18s ease}.s4s-login-input:focus-within{border-color:#5B9FE2;box-shadow:0 0 0 4px rgba(11,93,204,.1)}.s4s-login-input>span{display:grid;height:24px;place-items:center;border-right:1px solid #E1EAF3;color:#7591AD;font-size:12px;font-weight:900}.s4s-login-input input{width:100%;height:46px;padding:0 13px;border:0;outline:0;background:transparent;color:#14283E;font:650 13px/1 system-ui}.s4s-login-input input::placeholder{color:#9AAABD;font-weight:500}.s4s-login-error{margin:6px 2px 0;color:#C0354D;font-size:11px;font-weight:700}.s4s-login-status{margin:-10px 0 18px;padding:10px 12px;border:1px solid #BDE3C9;border-radius:10px;background:#F0FBF4;color:#14783A;font-size:11px;font-weight:700}

.s4s-login-form,.s4s-login-input,.s4s-login-input input{direction:ltr!important;unicode-bidi:normal!important}.s4s-login-input input{text-align:left!important}
.s4s-login-remember{display:flex;align-items:center;gap:9px!important;margin:17px 0 0!important;color:#52677E!important;font-size:11px!important;font-weight:650!important;cursor:pointer}.s4s-login-remember input{width:17px;height:17px;margin:0;accent-color:var(--s4s-green)}.s4s-login-submit{display:grid;grid-template-columns:24px 1fr 24px;align-items:center;width:100%;height:50px;margin-top:22px;padding:0 15px;border:0;border-radius:12px;background:linear-gradient(100deg,var(--s4s-blue),#0877D1 58%,#0B8B58 140%);box-shadow:0 12px 25px rgba(11,93,204,.22);color:#fff;font-size:13px;font-weight:850;cursor:pointer;transition:.18s ease}.s4s-login-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 15px 30px rgba(11,93,204,.27)}.s4s-login-submit:disabled{opacity:.7;cursor:wait}.s4s-login-submit i{width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:s4s-spin .7s linear infinite}.s4s-login-submit b{font-size:18px}.s4s-login-help{margin-top:23px;padding-top:19px;border-top:1px solid #E5EDF5;color:#788B9F;font-size:10px;line-height:1.5;text-align:center}@keyframes s4s-spin{to{transform:rotate(360deg)}}

@media(max-width:920px){
  body.s4s-authenticated{--s4s-sidebar-width:272px;background:var(--s4s-bg)!important}.s4s-authenticated>.s4s-topbar{transform:translateX(-105%);transition:transform .22s ease}.s4s-authenticated.s4s-sidebar-open>.s4s-topbar{transform:translateX(0)}
  .s4s-sidebar-trigger{display:block}.s4s-authenticated.s4s-sidebar-open .s4s-sidebar-trigger{left:220px;background:var(--s4s-green)}
  .s4s-authenticated>.s4s-page,body.s4s-authenticated>#app{width:auto;margin-left:0}.s4s-page{padding-top:70px!important}body.s4s-authenticated #app .min-h-screen.bg-slate-50>.grid{padding-top:72px!important}
  .s4s-visual-panel{grid-template-columns:1fr 130px}.s4s-chart-legend{grid-column:1/-1}.s4s-table-toolbar{position:static;align-items:flex-start;flex-direction:column}.s4s-toolbar-left,.s4s-toolbar-right{width:100%;flex-wrap:wrap}.s4s-table-search{width:100%}.s4s-search-wrap{flex:1}.s4s-pagination{align-items:flex-start;flex-direction:column}
}
@media(max-width:900px){.s4s-login-page{grid-template-columns:1fr}.s4s-login-visual{display:none}.s4s-login-panel{min-height:100dvh;padding:20px}.s4s-login-card{max-width:480px}.s4s-login-mobile-brand{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:25px}.s4s-login-mobile-brand img{width:132px;height:46px;padding:5px 8px;border:1px solid #DCE7F2;border-radius:10px;object-fit:contain}.s4s-login-mobile-brand b{color:var(--s4s-blue-dark);font-size:15px}}
@media(max-width:580px){.s4s-visual-panel{grid-template-columns:1fr;text-align:center}.s4s-chart-legend{grid-template-columns:1fr 1fr;text-align:left}.s4s-toolbar-right .s4s-tool-btn{flex:1}.s4s-managed-form.s4s-modal-open{left:7px!important;right:7px!important;top:7px!important;width:auto!important;max-height:calc(100dvh - 14px)!important;padding:16px!important}.s4s-native-form-backdrop{inset:0!important}#app section.s4s-native-form-modal{top:7px!important;right:7px!important;left:7px!important;max-height:calc(100dvh - 14px)!important;padding:16px!important;border-radius:15px!important}#app .s4s-native-existing-overlay{padding:7px!important}.s4s-title-row{align-items:flex-start}}
@media print{.s4s-authenticated>.s4s-topbar,.s4s-sidebar-trigger,.s4s-table-toolbar,.s4s-pagination,.s4s-modal-backdrop{display:none!important}.s4s-authenticated>.s4s-page,body.s4s-authenticated>#app{margin:0!important}.s4s-data-region tbody tr{display:table-row!important}}


.s4s-icon{display:block;width:18px;height:18px;flex:none}.s4s-btn .s4s-icon,.s4s-tool-btn .s4s-icon{width:15px;height:15px}.s4s-refresh-btn:disabled{opacity:.65;cursor:wait}.s4s-refresh-btn:disabled .s4s-icon{animation:s4s-spin .8s linear infinite}
.s4s-authenticated .s4s-nav a.s4s-has-icon{gap:12px;padding-left:12px}.s4s-authenticated .s4s-nav a.s4s-has-icon:before{display:none}.s4s-nav-icon{width:18px;height:18px;flex:none;color:#83B3DE;transition:.18s ease}.s4s-authenticated .s4s-nav a:hover .s4s-nav-icon,.s4s-authenticated .s4s-nav a.active .s4s-nav-icon{color:#55E28A}.s4s-authenticated .s4s-nav a.active .s4s-nav-icon{filter:drop-shadow(0 0 7px rgba(85,226,138,.25))}
.s4s-stat{min-height:132px}.s4s-stat .label,.s4s-stat .value,.s4s-stat .hint{position:relative;z-index:1;padding-right:42px}.s4s-stat-icon{position:absolute;z-index:2;right:14px;top:14px;display:grid;place-items:center;width:39px;height:39px;border:1px solid #CEE2F6;border-radius:12px;background:#EDF6FF;color:var(--s4s-blue);box-shadow:0 8px 18px rgba(11,93,204,.1)}.s4s-stat.green .s4s-stat-icon{border-color:#C8EBD5;background:#EFFBF3;color:var(--s4s-green)}.s4s-stat.red .s4s-stat-icon{border-color:#F2CED5;background:#FFF2F4;color:#C83953}.s4s-stat.warn .s4s-stat-icon{border-color:#F6DCC3;background:#FFF7EE;color:#D97817}.s4s-stat.purple .s4s-stat-icon{border-color:#DDCDFB;background:#F6F1FF;color:var(--s4s-purple)}
.s4s-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.s4s-graph-card{min-width:0;overflow:hidden;padding:20px 22px}.s4s-graph-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}.s4s-graph-heading h2{margin:2px 0 3px;font-size:17px}.s4s-graph-heading p{margin:0;color:var(--s4s-muted);font-size:11px}.s4s-graph-icon{display:grid;place-items:center;width:43px;height:43px;flex:none;border-radius:13px;background:linear-gradient(145deg,#EAF4FF,#F0FBF4);color:var(--s4s-blue);box-shadow:inset 0 0 0 1px #D5E7F7}.s4s-graph-icon .s4s-icon{width:21px;height:21px}
.s4s-mini-legend{display:flex;justify-content:flex-end;gap:13px;margin:0 0 9px;flex-wrap:wrap}.s4s-mini-legend span{display:flex;align-items:center;gap:5px;color:#6B7D91;font-size:9px;font-weight:750}.s4s-mini-legend span:before{content:"";width:7px;height:7px;border-radius:3px;background:currentColor}.s4s-mini-legend .present{color:var(--s4s-green)}.s4s-mini-legend .absent{color:var(--s4s-purple)}.s4s-mini-legend .late{color:var(--s4s-orange)}.s4s-mini-legend .leave{color:#57B990}
.s4s-chart-plot{display:grid;grid-template-columns:repeat(7,minmax(35px,1fr));gap:6px;height:205px;padding:12px 6px 0;border-bottom:1px solid #DDE7F2;background:repeating-linear-gradient(to bottom,#EAF0F6 0,#EAF0F6 1px,transparent 1px,transparent 25%)}.s4s-chart-column{display:grid;grid-template-rows:minmax(0,1fr) 18px 14px;min-width:0;text-align:center}.s4s-bar-cluster{display:flex;align-items:flex-end;justify-content:center;gap:3px;min-height:0}.s4s-bar-cluster span{width:clamp(4px,1.1vw,10px);min-height:0;border-radius:5px 5px 1px 1px;transition:height .3s ease}.s4s-bar-cluster .present{background:linear-gradient(180deg,#38CB71,var(--s4s-green))}.s4s-bar-cluster .absent{background:linear-gradient(180deg,#9B6AF0,var(--s4s-purple))}.s4s-bar-cluster .late{background:linear-gradient(180deg,#FFB45D,var(--s4s-orange))}.s4s-bar-cluster .leave{background:linear-gradient(180deg,#8ED8B5,#45AD7E)}.s4s-chart-column b{align-self:end;color:#344B63;font-size:10px}.s4s-chart-column small{color:#91A1B2;font-size:9px}
.s4s-payroll-chart{position:relative;min-height:225px}.s4s-payroll-chart svg{display:block;width:100%;height:220px;overflow:visible}.s4s-payroll-chart svg .grid{stroke:#E3EBF3;stroke-width:1}.s4s-payroll-chart svg text{fill:#7A8DA1;font:650 10px/1 system-ui}.s4s-payroll-total{position:absolute;right:11px;top:6px;display:flex;flex-direction:column;align-items:flex-end;padding:7px 9px;border:1px solid #D4E7DB;border-radius:10px;background:rgba(242,252,246,.9)}.s4s-payroll-total span{color:#6C8175;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.s4s-payroll-total strong{margin-top:2px;color:var(--s4s-green-dark);font-size:15px}.s4s-chart-empty{display:grid;place-items:center;min-height:220px;border:1px dashed #C9D8E8;border-radius:12px;color:var(--s4s-muted);font-size:12px;background:#FAFCFE}
.s4s-dashboard-content .s4s-quick a{display:grid;grid-template-columns:34px minmax(0,1fr) 15px;justify-content:stretch;text-align:left;gap:9px;padding:10px 12px}.s4s-dashboard-content .s4s-quick a>.s4s-icon{width:14px;height:14px;color:#8AA0B8}.s4s-quick-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#EAF4FF;color:var(--s4s-blue)}.s4s-quick a:nth-child(3n+2) .s4s-quick-icon{background:#EDFAF2;color:var(--s4s-green)}.s4s-quick a:nth-child(3n+3) .s4s-quick-icon{background:#F5F0FF;color:var(--s4s-purple)}.s4s-quick a:hover>.s4s-icon{transform:translateX(2px);color:var(--s4s-blue)}
.s4s-tool-btn{gap:6px}.s4s-tool-btn .s4s-icon{pointer-events:none}.s4s-tool-btn[data-excel] .s4s-icon{color:var(--s4s-green)}.s4s-tool-btn[data-print] .s4s-icon{color:var(--s4s-blue)}.s4s-tool-btn.primary .s4s-icon{color:#fff}
@media(max-width:1180px){.s4s-chart-grid{grid-template-columns:1fr}.s4s-graph-card{padding:18px}}
@media(max-width:640px){.s4s-actions{width:100%}.s4s-actions .s4s-btn{flex:1}.s4s-chart-plot{gap:2px;padding-inline:1px}.s4s-bar-cluster{gap:1px}.s4s-mini-legend{justify-content:flex-start}.s4s-payroll-total{position:static;align-items:flex-start;width:max-content;margin:-5px 0 4px}.s4s-graph-heading{align-items:flex-start}}


body.s4s-authenticated #app .min-h-screen.bg-gradient-to-br > .grid{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:clamp(18px,2vw,32px)!important;
}
body.s4s-authenticated #app .min-h-screen.bg-gradient-to-br > .grid > aside:first-child{
  display:none!important;
}
body.s4s-authenticated #app .min-h-screen.bg-gradient-to-br > .grid > main{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
@media(max-width:1350px){
  body.s4s-authenticated .s4s-table-toolbar{position:static;align-items:flex-start;flex-wrap:wrap}
  body.s4s-authenticated .s4s-toolbar-left{flex:1 1 100%;flex-wrap:wrap}
  body.s4s-authenticated .s4s-toolbar-right{margin-left:0}
}


.s4s-authenticated .s4s-nav{
  gap:2px;
  padding:0 2px 14px;
  scrollbar-gutter:stable;
}
.s4s-authenticated .s4s-nav-label{
  margin:12px 9px 4px;
  color:#78A9D4;
  font-size:9px;
  letter-spacing:.14em;
}
.s4s-authenticated .s4s-nav-label:first-child{margin-top:2px}
.s4s-authenticated .s4s-nav a{
  min-height:37px;
  padding-top:8px;
  padding-bottom:8px;
  font-size:12.5px;
}
.s4s-authenticated .s4s-nav a.s4s-has-icon{gap:11px;padding-left:11px;padding-right:9px}
.s4s-authenticated .s4s-nav .s4s-nav-icon{width:17px;height:17px;color:#88B5DE}
.s4s-authenticated .s4s-nav a.active .s4s-nav-icon{color:#63E694}
.s4s-authenticated .s4s-nav a.active{box-shadow:inset 3px 0 0 var(--s4s-green),inset 0 0 0 1px rgba(255,255,255,.09)}
@media(max-height:760px) and (min-width:921px){
  .s4s-authenticated>.s4s-topbar{padding-top:12px;padding-bottom:10px}
  .s4s-authenticated .s4s-brand{margin-bottom:10px}
  .s4s-authenticated .s4s-nav-label{margin-top:9px}
  .s4s-authenticated .s4s-nav a{min-height:34px;padding-top:7px;padding-bottom:7px;font-size:12px}
}


body.s4s-authenticated #app .min-h-screen.bg-gradient-to-br > .grid > aside:first-child{display:none!important}
body.s4s-authenticated #app .min-h-screen.bg-gradient-to-br > .grid{display:block!important;width:100%!important;max-width:none!important}
body.s4s-authenticated #app .min-h-screen.bg-gradient-to-br > .grid > main{width:100%!important;max-width:none!important;min-width:0!important}
body.s4s-employees-index .s4s-table-toolbar .s4s-search-wrap,
body.s4s-employees-index .s4s-table-toolbar .s4s-column-filter{display:none!important}
body.s4s-employees-index .s4s-table-toolbar{justify-content:flex-end!important}
body.s4s-employees-index .s4s-toolbar-left{flex:0 1 auto!important}
body.s4s-employees-index [data-s4s-add-record]{display:none!important}


body.s4s-employee-modal-active{overflow:auto!important}
body.s4s-employee-modal-active>.s4s-topbar,
body.s4s-employee-modal-active>.s4s-sidebar-trigger{
  visibility:hidden!important;
  pointer-events:none!important;
}
.s4s-employee-modal-backdrop{
  position:fixed!important;
  inset:0!important;
  z-index:10010!important;
  background:rgba(7,26,51,.54)!important;
  backdrop-filter:blur(3px)!important;
}
#app section.s4s-employee-modal{
  position:fixed!important;
  top:10px!important;
  right:12px!important;
  bottom:auto!important;
  left:12px!important;
  z-index:10020!important;
  width:auto!important;
  max-width:none!important;
  max-height:calc(100dvh - 20px)!important;
  margin:0!important;
  padding:20px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  border:1px solid #C8D9EA!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 28px 80px rgba(7,26,51,.34)!important;
  overscroll-behavior:contain;
}
#app section.s4s-employee-modal>div:first-child{
  position:sticky!important;
  top:-20px!important;
  z-index:8!important;
  margin:-20px -20px 20px!important;
  padding:17px 20px 14px!important;
  border-bottom:1px solid #E1EAF3!important;
  background:rgba(255,255,255,.98)!important;
  backdrop-filter:blur(12px)!important;
}
#app section.s4s-employee-modal form>div:last-child{
  position:sticky!important;
  bottom:-20px!important;
  z-index:7!important;
  margin:8px -20px -20px!important;
  padding:14px 20px 16px!important;
  border-top:1px solid #E1EAF3!important;
  background:rgba(255,255,255,.98)!important;
  backdrop-filter:blur(12px)!important;
}
@media(max-width:760px){
  .s4s-employee-modal-backdrop{inset:0!important}
  #app section.s4s-employee-modal{
    top:7px!important;
    right:7px!important;
    left:7px!important;
    max-height:calc(100dvh - 14px)!important;
    padding:16px!important;
    border-radius:15px!important;
  }
  #app section.s4s-employee-modal>div:first-child{top:-16px!important;margin:-16px -16px 16px!important;padding:14px 16px 12px!important}
  #app section.s4s-employee-modal form>div:last-child{bottom:-16px!important;margin:8px -16px -16px!important;padding:12px 16px 14px!important}
}


.s4s-letter-template-shell,.s4s-issued-letter-card{position:relative;min-width:0;border:1px solid #DCE6F0;border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(15,55,95,.05);transition:.18s ease}
.s4s-letter-template-shell:hover,.s4s-issued-letter-card:hover{border-color:#A9C8E7;box-shadow:0 12px 28px rgba(15,55,95,.09)}
.s4s-letter-template-shell.is-locked,.s4s-issued-letter-card.is-locked{border-color:#F0CF8D;background:linear-gradient(145deg,#FFFDF7,#FFF8E8)}
.s4s-letter-template-card{width:100%!important;border:0!important;border-radius:16px 16px 0 0!important;box-shadow:none!important;background:transparent!important}
.s4s-letter-template-card:disabled{cursor:default!important;opacity:1!important}
.s4s-letter-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.s4s-letter-stat{padding:15px 16px;border:1px solid;border-radius:15px}.s4s-letter-stat span{display:block;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;opacity:.75}.s4s-letter-stat strong{display:block;margin-top:5px;font-size:25px}.s4s-letter-stat.blue{border-color:#CFE2F7;background:#EFF7FF;color:#0755A5}.s4s-letter-stat.green{border-color:#CBEAD4;background:#EFFAF2;color:#15803D}.s4s-letter-stat.amber{border-color:#F2D9A8;background:#FFF9EC;color:#A15C00}.s4s-letter-stat.violet{border-color:#DDD4FA;background:#F6F3FF;color:#6D4BC3}
.s4s-letter-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 190px;gap:10px;margin:0 0 15px}.s4s-letter-toolbar label span{display:block;margin:0 0 5px;color:#5E7185;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.s4s-letter-toolbar input,.s4s-letter-toolbar select{width:100%;min-height:42px;padding:9px 11px;border:1px solid #D4E0EB;border-radius:11px;background:#fff;color:#263C52;font:inherit;font-size:12px;outline:none}.s4s-letter-toolbar input:focus,.s4s-letter-toolbar select:focus{border-color:#6EA7DD;box-shadow:0 0 0 3px rgba(7,85,165,.09)}
.s4s-letter-register-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 13px 10px;padding:9px 10px;border:1px solid #E3EBF4;border-radius:10px;background:#F7FAFD;color:#55697E;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}
.s4s-letter-actionbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 13px 13px}.s4s-letter-inline-form{display:inline-flex;margin:0!important}
.s4s-letter-action{min-height:36px;padding:0 13px;border:1px solid #CBD9E7;border-radius:10px;background:#fff;color:#36516D;font:800 11px/1 system-ui;cursor:pointer}.s4s-letter-action:hover{background:#F2F7FC}.s4s-letter-action.preview{border-color:#BBD5ED;color:#0755A5;background:#F2F8FE}.s4s-letter-action.lock{border-color:#EBC978;color:#93610B;background:#FFFBEB}.s4s-letter-action.delete{border-color:#F1B9BE;color:#B4232F;background:#FFF6F6}
.s4s-letter-protected-note{position:absolute;right:13px;top:13px;padding:5px 8px;border:1px solid #EDCF92;border-radius:999px;background:#FFF4D5;color:#86590B;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.s4s-issued-letter-card{padding:15px!important}.s4s-issued-letter-card .s4s-letter-register-meta{margin:10px 0}.s4s-issued-letter-card .s4s-letter-actionbar{margin:10px 0 0}
.s4s-letter-preview-overlay{position:fixed;z-index:10080;inset:0;display:grid;place-items:center;padding:22px;background:rgba(7,25,43,.68);backdrop-filter:blur(4px)}.s4s-letter-preview-dialog{display:flex;flex-direction:column;width:min(1080px,94vw);height:min(850px,92vh);overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:19px;background:#EFF4F9;box-shadow:0 30px 75px rgba(0,0,0,.35)}.s4s-letter-preview-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 16px;border-bottom:1px solid #D7E2EC;background:#fff}.s4s-letter-preview-head strong,.s4s-letter-preview-head span{display:block}.s4s-letter-preview-head strong{color:#073B73;font-size:14px}.s4s-letter-preview-head span{margin-top:2px;color:#708195;font-size:10px}.s4s-letter-preview-head button{min-height:36px;padding:8px 13px;border:1px solid #D6E1EB;border-radius:10px;background:#fff;color:#354A5F;font-size:11px;font-weight:800;cursor:pointer}.s4s-letter-preview-dialog iframe{width:100%;height:100%;border:0;background:#fff}
@media(max-width:760px){.s4s-letter-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.s4s-letter-toolbar{grid-template-columns:1fr}.s4s-letter-preview-overlay{padding:8px}.s4s-letter-preview-dialog{width:100%;height:96vh;border-radius:14px}}
@media(max-width:580px){.s4s-letter-register-meta{align-items:flex-start;flex-direction:column}.s4s-letter-actionbar{width:auto}.s4s-letter-inline-form{flex:1}.s4s-letter-action{width:100%}}


.s4s-reports-page .s4s-report-filter-card{padding:14px;margin-bottom:16px}
.s4s-report-filter-grid{display:grid;grid-template-columns:minmax(185px,.9fr) minmax(150px,.7fr) minmax(260px,1.4fr) minmax(170px,.8fr) minmax(145px,.7fr) 105px auto;gap:10px;align-items:end}
.s4s-report-filter-grid .s4s-field{min-width:0}
.s4s-report-filter-grid .s4s-field label{display:block;margin-bottom:6px;color:#52657A;font-size:10px;font-weight:850;letter-spacing:.045em;text-transform:uppercase}
.s4s-report-filter-grid input,.s4s-report-filter-grid select{width:100%;height:39px;border:1px solid #C9D8E8;border-radius:10px;background:#fff;padding:8px 10px;color:#24384D;font:650 12px/1.2 'Instrument Sans',system-ui,sans-serif;outline:none}
.s4s-report-filter-grid input:focus,.s4s-report-filter-grid select:focus{border-color:#7DAEDE;box-shadow:0 0 0 3px rgba(11,93,204,.10)}
.s4s-report-filter-actions{display:flex;gap:7px;align-items:center;white-space:nowrap}
.s4s-report-list-card{padding:0;overflow:hidden}
.s4s-report-list-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px;border-bottom:1px solid #DFE9F3;background:linear-gradient(100deg,#fff 0,#F7FBFF 68%,#F2FBF5 100%)}
.s4s-report-list-head h2{margin:3px 0 4px;font-size:17px;color:var(--s4s-blue-dark)}
.s4s-report-list-head p{margin:0;color:var(--s4s-muted);font-size:12px}
.s4s-report-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.s4s-record-count{display:inline-flex;align-items:center;min-height:36px;padding:7px 10px;border:1px solid #D7E4F1;border-radius:10px;background:#fff;color:#52657A;font-size:11px;font-weight:800}
.s4s-reports-page .s4s-data-region{padding:12px 14px 6px}
.s4s-reports-page .s4s-data-region table{min-width:860px}
.s4s-report-empty-row{text-align:center!important;padding:38px 16px!important;color:#8293A5!important;font-weight:650}
.s4s-report-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 15px 15px;color:#64748B;font-size:12px;font-weight:700;border-top:1px solid #EDF2F7}
.s4s-reports-page [hidden]{display:none!important}
@media(max-width:1450px){.s4s-report-filter-grid{grid-template-columns:repeat(4,minmax(150px,1fr))}.s4s-report-filter-actions{grid-column:auto}}
@media(max-width:900px){.s4s-report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.s4s-report-filter-actions{grid-column:1/-1}.s4s-report-list-head{align-items:flex-start;flex-direction:column}.s4s-report-list-actions{justify-content:flex-start}}
@media(max-width:560px){.s4s-report-filter-grid{grid-template-columns:1fr}.s4s-report-filter-actions{grid-column:auto}.s4s-report-pagination{align-items:flex-start;flex-direction:column}}


.s4s-app-switcher{position:relative;width:100%;margin:-8px 0 10px;padding:0 3px;color:#fff}.s4s-app-switcher summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid rgba(255,255,255,.11);border-radius:10px;background:rgba(255,255,255,.055)}.s4s-app-switcher summary::-webkit-details-marker{display:none}.s4s-app-switcher summary span{color:#86AED3;font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.s4s-app-switcher summary b{color:#fff;font-size:11px}.s4s-app-switcher-menu{position:absolute;z-index:10020;left:3px;right:3px;top:calc(100% + 5px);display:grid;gap:3px;padding:7px;border:1px solid #234A70;border-radius:12px;background:#0A294B;box-shadow:0 18px 35px rgba(0,0,0,.28)}.s4s-app-switcher-menu a{display:flex;align-items:center;gap:8px;min-height:34px;padding:8px 9px;border-radius:8px;color:#D7E6F5;text-decoration:none;font-size:11px;font-weight:750}.s4s-app-switcher-menu a:hover,.s4s-app-switcher-menu a.current{background:rgba(255,255,255,.09);color:#fff}.s4s-app-switcher-menu .s4s-app-all{margin-bottom:3px;border-bottom:1px solid rgba(255,255,255,.08);border-radius:8px 8px 3px 3px;color:#7FDBA1}.s4s-app-dot{width:9px;height:9px;border-radius:3px;background:#4F8CC9}.s4s-app-dot.erp{background:#F59E0B}.s4s-app-dot.admin{background:#16A34A}
.s4s-app-erp>.s4s-topbar,.s4s-app-sidebar.s4s-app-erp{--s4s-app-accent:#F59E0B}.s4s-app-admin>.s4s-topbar,.s4s-app-sidebar.s4s-app-admin{--s4s-app-accent:#16A34A}.s4s-app-sidebar .s4s-nav a.active{box-shadow:inset 3px 0 0 var(--s4s-app-accent,var(--s4s-green)),inset 0 0 0 1px rgba(255,255,255,.09)}


.s4s-workspace-body{margin:0;min-height:100vh;background:linear-gradient(145deg,#F4F8FC 0,#EEF6FF 45%,#F1FBF5 100%);font-family:'Instrument Sans',system-ui,sans-serif;color:#172033}.s4s-workspace-shell{width:min(1220px,calc(100% - 36px));margin:0 auto;padding:24px 0 28px}.s4s-workspace-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 14px 20px;border-bottom:1px solid #DDE8F2}.s4s-workspace-brand{display:flex;align-items:center;gap:13px;color:#073B73;text-decoration:none}.s4s-workspace-brand img{width:128px;height:46px;object-fit:contain;padding:5px 8px;border:1px solid #DCE7F2;border-radius:11px;background:#fff}.s4s-workspace-brand b{display:block;font-size:18px}.s4s-workspace-brand span{display:block;margin-top:2px;color:#718397;font-size:11px}.s4s-workspace-user{display:flex;align-items:center;gap:13px;text-align:right}.s4s-workspace-user b{display:block;color:#233A51;font-size:12px}.s4s-workspace-user span{display:block;color:#8191A2;font-size:10px}.s4s-workspace-user button{border:1px solid #D6E2ED;border-radius:9px;background:#fff;padding:8px 11px;color:#B42318;font-size:11px;font-weight:800;cursor:pointer}.s4s-workspace-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;padding:54px 12px 28px}.s4s-workspace-kicker{color:#16A34A;font-size:11px;font-weight:850;letter-spacing:.18em}.s4s-workspace-hero h1{margin:8px 0 7px;color:#073B73;font-size:clamp(30px,4vw,48px);letter-spacing:-.04em}.s4s-workspace-hero p{max-width:680px;margin:0;color:#64788D;font-size:14px;line-height:1.55}.s4s-workspace-count{display:grid;place-items:center;min-width:132px;padding:15px;border:1px solid #DCE8F3;border-radius:18px;background:rgba(255,255,255,.76);box-shadow:0 12px 28px rgba(33,67,102,.06)}.s4s-workspace-count strong{color:#0755A5;font-size:27px}.s4s-workspace-count span{color:#718397;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.s4s-app-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:10px 12px 30px}.s4s-app-card{position:relative;min-height:230px;overflow:hidden;padding:22px;border:1px solid #DCE7F2;border-radius:22px;background:#fff;color:#172033;text-decoration:none;box-shadow:0 16px 42px rgba(33,67,102,.07);transition:.2s}.s4s-app-card:hover{transform:translateY(-3px);box-shadow:0 20px 48px rgba(33,67,102,.12)}.s4s-app-card:after{content:"";position:absolute;width:180px;height:180px;right:-55px;bottom:-70px;border-radius:50%;background:rgba(7,85,165,.06)}.s4s-app-card.erp:after{background:rgba(245,158,11,.09)}.s4s-app-card.admin:after{background:rgba(22,163,74,.08)}.s4s-app-card-top{display:flex;align-items:center;justify-content:space-between}.s4s-app-monogram{display:grid;place-items:center;min-width:48px;height:48px;padding:0 9px;border-radius:14px;background:#EAF4FF;color:#0755A5;font-size:12px;font-weight:900}.erp .s4s-app-monogram{background:#FFF5E5;color:#C87500}.admin .s4s-app-monogram{background:#EAF9EF;color:#15803D}.s4s-app-open{color:#7B8B9D;font-size:11px;font-weight:800}.s4s-app-card-copy{position:relative;z-index:1;margin-top:28px}.s4s-app-card-copy>span{color:#7B8EA0;font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.s4s-app-card-copy h2{margin:5px 0 14px;color:#073B73;font-size:27px}.s4s-app-card-copy strong{display:block;color:#223C55;font-size:14px}.s4s-app-card-copy p{max-width:75%;margin:6px 0 0;color:#73879A;font-size:11px;line-height:1.5}.s4s-workspace-empty{margin:10px 12px 30px;padding:42px;border:1px dashed #BFD0E0;border-radius:20px;text-align:center;background:#fff}.s4s-workspace-footer{text-align:center;padding:18px;color:#8292A3;font-size:10px}


.s4s-platform-welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:24px 26px;border:1px solid #DCE7F2;border-radius:19px;background:linear-gradient(120deg,#fff,#F5FAFF 62%,#F2FBF5);box-shadow:0 10px 30px rgba(40,74,106,.05)}.s4s-platform-welcome span,.s4s-module-foundation>span{color:#16A34A;font-size:9px;font-weight:900;letter-spacing:.15em}.s4s-platform-welcome h2{margin:5px 0;color:#073B73;font-size:21px}.s4s-platform-welcome p{margin:0;color:#6E8093;font-size:12px}.s4s-platform-welcome>b{display:grid;place-items:center;min-width:74px;height:74px;border-radius:22px;background:#EAF4FF;color:#0755A5;font-size:18px}.s4s-app-erp .s4s-platform-welcome>b{background:#FFF4E1;color:#C87500}.s4s-app-admin .s4s-platform-welcome>b{background:#EAF9EF;color:#15803D}.s4s-platform-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.s4s-platform-module{display:block;min-height:170px;padding:18px;border:1px solid #E0E9F2;border-radius:17px;background:#fff;color:#172033;text-decoration:none;box-shadow:0 8px 24px rgba(40,74,106,.04);transition:.18s}.s4s-platform-module:hover{transform:translateY(-2px);border-color:#BCD3E9}.s4s-platform-module>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#EEF6FF;color:#0755A5;font-size:9px;font-weight:900}.s4s-platform-module h3{margin:16px 0 5px;color:#173D62;font-size:15px}.s4s-platform-module p{min-height:36px;margin:0;color:#75879A;font-size:10.5px;line-height:1.45}.s4s-platform-module b{display:block;margin-top:14px;color:#0755A5;font-size:10px}.s4s-platform-module.featured{background:linear-gradient(145deg,#F2FBF5,#fff);border-color:#CEE8D6}.s4s-platform-module.featured>span{background:#E7F7EC;color:#15803D}.s4s-module-foundation{max-width:820px;padding:34px;border:1px solid #DCE7F2;border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(40,74,106,.05)}.s4s-module-foundation h2{margin:7px 0;color:#073B73;font-size:25px}.s4s-module-foundation p{max-width:680px;color:#6D8094;font-size:13px;line-height:1.6}.s4s-module-foundation>div{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:24px;padding:13px 15px;border-radius:12px;background:#F4F8FC}.s4s-module-foundation>div b{color:#75879A;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.s4s-module-foundation>div strong{color:#0755A5;font-size:11px}


.s4s-platform-alert{margin-bottom:14px;padding:11px 14px;border-radius:11px;font-size:12px;font-weight:750}.s4s-platform-alert.success{background:#ECF9F0;color:#15803D;border:1px solid #CBEAD4}.s4s-platform-alert.error{background:#FFF2F2;color:#B42318;border:1px solid #F4CDCD}.s4s-app-access-card{padding:0;overflow:hidden}.s4s-app-access-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid #E3ECF4;background:#F8FBFE}.s4s-app-access-head h2{margin:0 0 3px;color:#073B73;font-size:17px}.s4s-app-access-head p{margin:0;color:#718397;font-size:10.5px}.s4s-app-access-head>span{padding:6px 9px;border-radius:999px;background:#EAF4FF;color:#0755A5;font-size:10px;font-weight:800}.s4s-app-access-table td strong{display:block;color:#223A52}.s4s-app-access-table td small{display:block;margin-top:3px;color:#8191A2;font-size:9.5px}.s4s-app-toggle{display:inline-flex;cursor:pointer}.s4s-app-toggle input{position:absolute;opacity:0}.s4s-app-toggle span{position:relative;width:38px;height:21px;border-radius:999px;background:#D6E0E9;transition:.18s}.s4s-app-toggle span:after{content:"";position:absolute;top:3px;left:3px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18);transition:.18s}.s4s-app-toggle input:checked+span{background:#16A34A}.s4s-app-toggle input:checked+span:after{transform:translateX(17px)}.s4s-full-access{display:inline-flex;padding:6px 9px;border-radius:999px;background:#EAF9EF;color:#15803D;font-size:10px;font-weight:850}.s4s-lock-label{color:#8191A2;font-size:10px;font-weight:750}

@media(max-width:900px){.s4s-app-grid{grid-template-columns:1fr}.s4s-platform-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.s4s-workspace-hero{align-items:flex-start;flex-direction:column}.s4s-workspace-count{display:none}}
@media(max-width:620px){.s4s-workspace-shell{width:min(100% - 20px,1220px)}.s4s-workspace-header{align-items:flex-start}.s4s-workspace-brand div{display:none}.s4s-workspace-user span{display:none}.s4s-workspace-hero{padding-top:34px}.s4s-app-grid,.s4s-platform-module-grid{grid-template-columns:1fr}.s4s-app-card{min-height:210px}.s4s-platform-welcome{align-items:flex-start}.s4s-platform-welcome>b{display:none}}


.s4s-coming-soon{min-height:66vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;border:1px solid #dce7f1;border-radius:22px;background:linear-gradient(135deg,#fff,#f5f9fd)}.s4s-coming-soon>span{font-size:11px;font-weight:900;letter-spacing:.18em;color:#16a34a}.s4s-coming-soon h1{font-size:38px;color:#073b73;margin:10px 0}.s4s-coming-soon p{max-width:620px;color:#64748b;line-height:1.7;margin:0 0 22px}
.s4s-erp-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 16px}.s4s-erp-stats a{display:block;padding:15px;border:1px solid #dbe6f0;border-radius:15px;background:#fff;text-decoration:none}.s4s-erp-stats span{display:block;color:#64748b;font-size:10px;font-weight:800;text-transform:uppercase}.s4s-erp-stats b{display:block;margin-top:6px;color:#073b73;font-size:20px}.s4s-erp-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.s4s-erp-quick-grid a{padding:18px;border:1px solid #dce7f1;border-radius:16px;background:linear-gradient(135deg,#fff,#f7fbff);text-decoration:none}.s4s-erp-quick-grid strong{display:block;color:#073b73;font-size:15px}.s4s-erp-quick-grid span{display:block;margin-top:6px;color:#64748b;font-size:11px;line-height:1.5}
.s4s-erp-form-card{padding:16px;margin-bottom:16px}.s4s-erp-form-card h2{margin:0 0 14px;color:#073b73}.s4s-erp-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.s4s-erp-form label,.s4s-erp-report-filter label{display:block;color:#52657a;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.s4s-erp-form input,.s4s-erp-form select,.s4s-erp-form textarea,.s4s-erp-report-filter input,.s4s-erp-report-filter select{display:block;width:100%;margin-top:5px;border:1px solid #cbd9e6;border-radius:10px;background:#fff;padding:9px 10px;color:#24384d;font:600 12px/1.3 'Instrument Sans',sans-serif}.s4s-erp-form input,.s4s-erp-form select{height:40px}.s4s-erp-form textarea{min-height:76px;resize:vertical}.s4s-erp-form .wide{grid-column:span 2}.s4s-erp-form .actions{display:flex;align-items:end;gap:8px}.s4s-erp-form .actions.wide{grid-column:1/-1}.s4s-erp-form .check{display:flex;align-items:center;gap:8px;text-transform:none}.s4s-erp-form .check input{width:auto;height:auto;margin:0}.s4s-list-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;border-bottom:1px solid #e6edf4}.s4s-list-head h2{margin:0;color:#073b73}.s4s-list-head p{margin:2px 0 0;color:#64748b;font-size:11px}.s4s-inline-filter{display:flex;gap:7px;align-items:center}.s4s-inline-filter input,.s4s-inline-filter select{height:37px;border:1px solid #cbd9e6;border-radius:9px;padding:7px 9px;background:#fff}.s4s-table td small{display:block;color:#7b8b9b;margin-top:3px}.s4s-row-actions{white-space:nowrap}.s4s-row-actions>a,.s4s-row-actions form{display:inline-block;margin-right:6px}.s4s-row-actions button,.s4s-discount-form button,.s4s-courier-form button{border:0;background:#0755a5;color:#fff;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:800}.s4s-row-actions form button{background:#fff0f0;color:#b42318;border:1px solid #ffd5d5}.s4s-discount-form{display:flex;gap:4px;min-width:210px}.s4s-discount-form select{width:52px}.s4s-discount-form input{width:80px}.s4s-discount-form select,.s4s-discount-form input,.s4s-courier-form input{height:31px;border:1px solid #cbd9e6;border-radius:7px;padding:5px}.s4s-courier-form{display:flex;gap:5px;min-width:430px}.s4s-erp-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.s4s-erp-profile-grid .s4s-card,.s4s-erp-two-col .s4s-card{padding:16px}.s4s-erp-profile-grid h3,.s4s-erp-two-col h2{color:#073b73;margin:0 0 10px}.s4s-erp-profile-grid p,.s4s-erp-two-col p{font-size:12px;color:#52657a}.s4s-erp-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.s4s-price-preview{padding:10px 12px;border:1px solid #bfe1cb;border-radius:12px;background:#f2fbf5}.s4s-price-preview span,.s4s-price-preview small{display:block;color:#4e6c59;font-size:9px;font-weight:800}.s4s-price-preview b{display:block;color:#15803d;font-size:20px;margin:3px 0}.s4s-erp-report-filter{display:grid;grid-template-columns:1.2fr 1.5fr 1fr 1fr auto;gap:10px;align-items:end}.s4s-erp-report-filter .actions{display:flex;gap:6px}
@media(max-width:1250px){.s4s-erp-stats{grid-template-columns:repeat(3,1fr)}.s4s-erp-form{grid-template-columns:repeat(2,1fr)}.s4s-erp-quick-grid{grid-template-columns:repeat(2,1fr)}.s4s-erp-report-filter{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.s4s-erp-stats,.s4s-erp-quick-grid,.s4s-erp-form,.s4s-erp-profile-grid,.s4s-erp-two-col,.s4s-erp-report-filter{grid-template-columns:1fr}.s4s-erp-form .wide{grid-column:auto}.s4s-inline-filter{flex-wrap:wrap}.s4s-courier-form{min-width:520px}}


.s4s-erp-page{background:linear-gradient(180deg,#f7fbff,#f6fbf8)!important}.s4s-erp-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:14px;padding:25px 27px;border-radius:21px;background:linear-gradient(128deg,#062f5d,#0755a5 58%,#0f8c5b 135%);color:#fff;box-shadow:0 18px 42px rgba(7,59,115,.14)}.s4s-erp-hero-kicker{color:#90e6af;font-size:9px;font-weight:900;letter-spacing:.15em}.s4s-erp-hero h1{margin:6px 0;font-size:32px;letter-spacing:-.035em}.s4s-erp-hero p{max-width:720px;margin:0;color:#c8dff2;font-size:11px}.s4s-erp-hero-actions{display:flex;gap:7px;margin-top:16px}.s4s-erp-hero .s4s-btn{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff}.s4s-erp-hero .s4s-btn.primary{background:#16a34a}.s4s-erp-hero-mark{display:grid;place-items:center;min-width:145px;padding:18px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.08)}.s4s-erp-hero-mark span{font-size:29px;font-weight:900}.s4s-erp-hero-mark b,.s4s-erp-hero-mark small{display:block;margin-top:3px;font-size:9px}.s4s-erp-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:12px}.s4s-erp-kpi{display:flex;gap:10px;padding:13px;border:1px solid #d9e5f0;border-radius:15px;background:#fff;box-shadow:0 8px 22px rgba(35,68,98,.05)}.s4s-erp-kpi-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#eaf4ff;color:#0755a5}.s4s-erp-kpi small,.s4s-erp-kpi em{display:block;color:#8191a1;font-size:8px;font-style:normal}.s4s-erp-kpi strong{display:block;margin:2px 0;color:#0b3c6b;font-size:17px}.s4s-erp-kpi.green .s4s-erp-kpi-icon{background:#e9faef;color:#15803d}.s4s-erp-kpi.navy .s4s-erp-kpi-icon{background:#edf2ff;color:#334f9a}.s4s-erp-kpi.cyan .s4s-erp-kpi-icon{background:#e8f9fb;color:#0e7490}.s4s-erp-kpi.amber .s4s-erp-kpi-icon{background:#fff6e5;color:#b76a00}.s4s-erp-kpi.red .s4s-erp-kpi-icon{background:#fff0f0;color:#c43232}.s4s-erp-dashboard-grid{display:grid;grid-template-columns:1.4fr .75fr .95fr;gap:11px;margin-bottom:11px}.s4s-erp-chart-card{padding:17px;border:1px solid #dce7f1;border-radius:17px;background:#fff;box-shadow:0 9px 27px rgba(35,68,98,.05)}.s4s-chart-head{display:flex;justify-content:space-between;gap:10px}.s4s-chart-head span{color:#16a34a;font-size:8px;font-weight:900;letter-spacing:.12em}.s4s-chart-head h2{margin:3px 0;color:#073b73;font-size:14px}.s4s-chart-head p{margin:0;color:#8795a3;font-size:8.5px}.s4s-chart-head a{color:#0755a5;font-size:8px}.s4s-chart-legend{font-size:8px;color:#7c8a99}.s4s-chart-legend i,.s4s-donut-legend i{display:inline-block;width:8px;height:8px;margin:0 3px;border-radius:3px}.s4s-chart-legend .retail,.s4s-donut-legend .retail{background:#16a34a}.s4s-chart-legend .bp,.s4s-donut-legend .bp{background:#0755a5}.s4s-bar-chart{display:flex;align-items:flex-end;gap:10px;height:180px;margin-top:15px;padding:12px 7px 0;border-bottom:1px solid #dfe8f0;background:repeating-linear-gradient(to top,transparent 0,transparent 43px,#eef2f6 44px)}.s4s-bar-group{display:grid;grid-template-rows:1fr auto;flex:1;height:100%}.s4s-bars{display:flex;align-items:flex-end;justify-content:center;gap:4px}.s4s-bars span{width:14px;min-height:4px;border-radius:5px 5px 2px 2px}.s4s-bars .retail{background:#16a34a}.s4s-bars .bp{background:#0755a5}.s4s-bar-group>b{padding-top:5px;text-align:center;color:#7e8d9e;font-size:8px}.s4s-donut-wrap{display:flex;align-items:center;justify-content:center;gap:15px;min-height:180px}.s4s-donut{position:relative;display:grid;place-items:center;width:118px;height:118px;border-radius:50%;background:conic-gradient(#0755a5 0 var(--split),#16a34a var(--split) 360deg)}.s4s-donut:after{content:"";position:absolute;inset:22px;border-radius:50%;background:#fff}.s4s-donut>div{position:relative;z-index:1;text-align:center}.s4s-donut strong{display:block;color:#073b73;font-size:22px}.s4s-donut span{font-size:8px;color:#8493a2}.s4s-donut-legend p{margin:8px 0;color:#617587;font-size:8.5px}.s4s-employee-bars{display:grid;gap:10px;margin-top:15px}.s4s-employee-bar{display:grid;grid-template-columns:1fr 1.2fr 25px;gap:7px;align-items:center}.s4s-employee-bar b,.s4s-employee-bar span{display:block;font-size:8.5px}.s4s-employee-bar span{color:#8d9aa7;font-size:7px}.s4s-employee-bar .track{height:7px;border-radius:999px;background:#edf2f6;overflow:hidden}.s4s-employee-bar .track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0755a5,#16a34a)}.s4s-erp-lower-grid,.s4s-erp-two-col{display:grid;grid-template-columns:1fr 1fr;gap:11px}.s4s-erp-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.s4s-erp-action-grid a{padding:11px;border:1px solid #e1e9f0;border-radius:11px;text-decoration:none;background:#f9fbfd}.s4s-erp-action-grid b,.s4s-erp-action-grid span{display:block}.s4s-erp-action-grid b{color:#0755a5;font-size:9px}.s4s-erp-action-grid span{color:#8795a3;font-size:7.5px}.s4s-mini-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #eef2f5}.s4s-mini-row b,.s4s-mini-row span,.s4s-mini-row strong,.s4s-mini-row small{display:block;font-size:8.5px}.s4s-mini-row span,.s4s-mini-row small{color:#8b99a6;font-size:7px}.s4s-form-section{overflow:hidden;margin-bottom:11px;border:1px solid #dce7f1;border-radius:17px;background:#fff}.s4s-form-section>header{display:flex;gap:10px;padding:13px 16px;border-bottom:1px solid #e7eef4;background:linear-gradient(100deg,#f8fbff,#f6fcf8)}.s4s-form-section .icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#0755a5;color:#fff;font-size:8px}.s4s-form-section h2{margin:0;color:#123f68;font-size:13px}.s4s-form-section p{margin:3px 0 0;color:#7f8f9f;font-size:8.5px}.s4s-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:16px}.s4s-form-grid label{font-size:8.5px;font-weight:850;color:#536b82;text-transform:uppercase}.s4s-form-grid label.wide{grid-column:span 2}.s4s-form-grid input,.s4s-form-grid select{display:block;width:100%;min-height:39px;margin-top:5px;border:1px solid #cfdce8;border-radius:9px;background:#fff;padding:7px 9px;color:#213b53;font-size:10.5px}.s4s-form-grid select[multiple]{min-height:105px}.field-help{display:block;margin-top:4px;color:#93a1ae;font-size:7.5px;text-transform:none}.s4s-form-footer{display:flex;justify-content:space-between;gap:12px;padding:13px 16px;border:1px solid #cfe2d5;border-radius:15px;background:#f1faf4}.s4s-form-footer b,.s4s-form-footer span{display:block}.s4s-form-footer b{color:#16733a;font-size:9px}.s4s-form-footer span{color:#718393;font-size:8px}.s4s-partner-search-head{display:grid;grid-template-columns:minmax(280px,1.4fr) 180px auto;gap:8px;padding:12px}.s4s-live-search{display:flex;align-items:center;border:1px solid #cfdeea;border-radius:10px;padding:0 10px}.s4s-live-search input{width:100%;height:39px;border:0;outline:none}.s4s-partner-search-head>select{border:1px solid #cfdeea;border-radius:10px;padding:0 8px}.s4s-search-status{font-size:8px;color:#718295}.s4s-search-status i{display:none;width:11px;height:11px;border:2px solid #d7e3ed;border-top-color:#0755a5;border-radius:50%;animation:s4sspin .7s linear infinite}.s4s-search-status i.active{display:inline-block}@keyframes s4sspin{to{transform:rotate(360deg)}}.s4s-type-badge{display:inline-block;padding:3px 6px;border-radius:999px;background:#edf5ff;color:#0755a5;font-size:7px;font-weight:900}.s4s-type-badge.retail{background:#ebf9ef;color:#15803d}.s4s-company-chip{display:inline-block;margin:1px;padding:3px 5px;border-radius:6px;background:#eef5fc;color:#37658c;font-size:7px}.muted{color:#9aa6b2;font-size:8px}.s4s-partner-profile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:11px}.s4s-profile-card{padding:14px!important}.s4s-profile-card .label{color:#16a34a;font-size:7.5px;font-weight:900}.s4s-profile-card h3{margin:4px 0 9px;color:#0c477e;font-size:12px}.s4s-profile-card p{display:flex;justify-content:space-between;gap:8px;margin:6px 0;padding-bottom:5px;border-bottom:1px solid #edf2f5;font-size:8px}.s4s-profile-card.accent{background:#f1faf4}.s4s-company-chips span{display:inline-block;margin:2px;padding:4px 6px;border-radius:7px;background:#eaf4ff;color:#0755a5;font-size:7px}.s4s-erp-report-filter{display:grid;grid-template-columns:1.2fr 1.2fr 1.2fr .8fr .8fr auto;gap:8px;align-items:end}.s4s-erp-report-filter label{font-size:8px;font-weight:800;color:#5d7185}.s4s-erp-report-filter input,.s4s-erp-report-filter select{display:block;width:100%;height:38px;margin-top:4px;border:1px solid #d2dee9;border-radius:9px;padding:0 8px}.s4s-inline-filter{display:flex;gap:6px}.s4s-inline-filter input{min-width:260px;height:37px;border:1px solid #d2dee9;border-radius:9px;padding:0 8px}
.s4s-login-page{grid-template-columns:minmax(500px,1.12fr) minmax(460px,.88fr)!important;background:#eef5fb!important}.s4s-login-visual{padding:clamp(34px,4.5vw,68px)!important;background:linear-gradient(145deg,#041a34,#064f97 55%,#0a8657 122%)!important}.s4s-login-brand img{width:158px!important;height:52px!important;background:#fff!important;border-radius:12px!important;padding:6px 10px!important}.s4s-login-hero h1{font-size:clamp(34px,4vw,56px)!important;letter-spacing:-.04em!important}.s4s-login-hero p{color:#c5dcf0!important;line-height:1.65!important}.s4s-login-features{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:8px!important}.s4s-login-features span{justify-content:flex-start!important;min-height:40px!important;background:rgba(255,255,255,.07)!important}.s4s-login-panel{background:#f5f9fd!important}.s4s-login-card{width:min(485px,100%)!important;padding:38px!important;border-radius:24px!important;box-shadow:0 30px 80px rgba(15,55,91,.15)!important}.s4s-login-card h2{font-size:28px!important}.s4s-login-input,.s4s-login-submit{min-height:48px!important;border-radius:12px!important}.s4s-login-submit{background:linear-gradient(100deg,#0755a5,#0878c9 58%,#11914d)!important}
@media(max-width:1450px){.s4s-erp-kpi-grid{grid-template-columns:repeat(3,1fr)}.s4s-erp-dashboard-grid{grid-template-columns:1.25fr .8fr}.s4s-erp-dashboard-grid>.s4s-erp-chart-card:last-child{grid-column:1/-1}}@media(max-width:1000px){.s4s-erp-dashboard-grid,.s4s-erp-lower-grid{grid-template-columns:1fr}.s4s-partner-profile-grid{grid-template-columns:1fr 1fr}.s4s-form-grid{grid-template-columns:1fr 1fr}.s4s-login-page{grid-template-columns:1fr!important}}@media(max-width:700px){.s4s-erp-hero{flex-direction:column;align-items:flex-start}.s4s-erp-hero-mark{display:none}.s4s-erp-kpi-grid{grid-template-columns:1fr 1fr}.s4s-partner-profile-grid,.s4s-form-grid,.s4s-erp-lower-grid{grid-template-columns:1fr}.s4s-form-grid label.wide{grid-column:auto}.s4s-partner-search-head{grid-template-columns:1fr}.s4s-erp-report-filter{grid-template-columns:1fr 1fr}}
.s4s-erp-kpi-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}


:root{
  --s4s-ink:#0E1B2E;--s4s-ink-soft:#334157;
  --s4s-blue-50:#EEF5FF;--s4s-blue-100:#DCEBFF;--s4s-blue-glow:rgba(11,93,204,.16);
  --s4s-green-glow:rgba(22,163,74,.16);
  --s4s-surface:#FFFFFF;--s4s-surface-2:#F7FAFD;
  --s4s-border-soft:#E7EEF6;
  --s4s-ease:cubic-bezier(.2,.7,.3,1);--s4s-ease-fast:cubic-bezier(.3,.8,.4,1);
  --s4s-shadow-xs:0 1px 2px rgba(14,27,46,.05);
  --s4s-shadow-sm:0 2px 10px rgba(14,27,46,.05),0 1px 2px rgba(14,27,46,.04);
  --s4s-shadow-md:0 10px 28px rgba(16,42,74,.08),0 2px 6px rgba(16,42,74,.05);
  --s4s-shadow-lg:0 24px 60px rgba(9,32,61,.14),0 6px 16px rgba(9,32,61,.06);
  --s4s-shadow-brand:0 14px 30px rgba(11,93,204,.18);
}
body{background:radial-gradient(1100px 620px at 100% -8%,rgba(11,93,204,.05),transparent 55%),radial-gradient(900px 560px at -6% 8%,rgba(22,163,74,.045),transparent 50%),var(--s4s-bg)!important}
::selection{background:var(--s4s-blue-glow);color:var(--s4s-blue-dark)}
*{scrollbar-width:thin;scrollbar-color:#C4D6E8 transparent}
*::-webkit-scrollbar{width:9px;height:9px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:#C4D6E8;border-radius:999px;border:2px solid transparent;background-clip:padding-box}
*::-webkit-scrollbar-thumb:hover{background:#9FBBDB;background-clip:padding-box}


.s4s-card,.s4s-stat,.s4s-btn,.s4s-tool-btn,.s4s-quick a,.s4s-app-card,.s4s-platform-module,
.s4s-badge,.s4s-page-btn,.s4s-module-nav a,.s4s-authenticated .s4s-nav a,.s4s-login-input,
.s4s-login-submit,.s4s-app-toggle span,.s4s-app-toggle span:after{
  transition:transform .22s var(--s4s-ease),box-shadow .22s var(--s4s-ease),
    border-color .18s var(--s4s-ease-fast),background-color .18s var(--s4s-ease-fast),color .18s var(--s4s-ease-fast)
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}


a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,
.s4s-btn:focus-visible,.s4s-tool-btn:focus-visible,.s4s-quick a:focus-visible,.s4s-nav a:focus-visible{
  outline:2px solid var(--s4s-blue);outline-offset:2px;border-radius:8px
}


.s4s-h1{font-weight:850;letter-spacing:-.03em}
.s4s-stat .value,.s4s-erp-kpi strong,.s4s-donut strong,.s4s-payroll-total strong,.s4s-workspace-count strong{
  font-variant-numeric:tabular-nums;letter-spacing:-.02em
}
.s4s-eyebrow{position:relative;padding-left:15px}
.s4s-eyebrow:before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:3px;background:var(--s4s-green);box-shadow:0 0 0 4px var(--s4s-green-glow)}


.s4s-card,.s4s-stat,.s4s-report,.s4s-filter{border-color:var(--s4s-border-soft);box-shadow:var(--s4s-shadow-sm)}
.s4s-card:hover,.s4s-report:hover{box-shadow:var(--s4s-shadow-md);border-color:#D3E1F1;transform:translateY(-1px)}
.s4s-stat{position:relative;overflow:hidden;isolation:isolate}
.s4s-stat:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--s4s-blue),#4C9BEE)}
.s4s-stat.green:before{background:linear-gradient(90deg,var(--s4s-green),#4CD07E)}
.s4s-stat.red:before{background:linear-gradient(90deg,#dc2626,#f4726a)}
.s4s-stat.warn:before{background:linear-gradient(90deg,#d97706,#f7b155)}
.s4s-stat.purple:before{background:linear-gradient(90deg,var(--s4s-purple),#b490fb)}
.s4s-stat:hover{box-shadow:var(--s4s-shadow-md);transform:translateY(-2px)}
.s4s-stat .label{letter-spacing:.02em}
.s4s-stat-icon{box-shadow:0 6px 16px rgba(11,93,204,.12),inset 0 0 0 1px rgba(255,255,255,.6)}


.s4s-btn{position:relative;font-weight:750;box-shadow:var(--s4s-shadow-xs)}
.s4s-btn.primary{background:linear-gradient(155deg,var(--s4s-blue),#0A72CC);box-shadow:var(--s4s-shadow-brand)}
.s4s-btn.green{background:linear-gradient(155deg,var(--s4s-green),#12963f);box-shadow:0 12px 26px rgba(22,163,74,.2)}
.s4s-btn:hover{transform:translateY(-1px)}
.s4s-btn:active{transform:translateY(0);filter:brightness(.95)}
.s4s-tool-btn:hover{transform:translateY(-1px);box-shadow:var(--s4s-shadow-sm)}
.s4s-tool-btn.primary{box-shadow:0 10px 22px rgba(22,163,74,.18)}


.s4s-badge{position:relative;padding-left:18px;font-weight:800;letter-spacing:.01em}
.s4s-badge:before{content:"";position:absolute;left:8px;top:50%;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;background:currentColor}


.s4s-table th{color:#52657A;font-weight:800;letter-spacing:.02em}
.s4s-table tbody tr{transition:background-color .15s var(--s4s-ease-fast)}
.s4s-table tbody tr:hover{background:var(--s4s-surface-2)}
.s4s-data-region thead th{box-shadow:0 1px 0 #C8D9EA}
.s4s-table-wrap{border-radius:12px}


.s4s-quick a:hover,.s4s-dashboard-content .s4s-quick a:hover{transform:translateY(-1px);box-shadow:var(--s4s-shadow-sm)}
.s4s-module-nav a{transition:background-color .15s var(--s4s-ease-fast),color .15s var(--s4s-ease-fast),transform .15s var(--s4s-ease-fast)}
.s4s-module-nav a:hover{transform:translateX(2px)}


.s4s-authenticated>.s4s-topbar{backdrop-filter:saturate(1.1)}
.s4s-authenticated .s4s-nav a{transition:background-color .16s var(--s4s-ease-fast),color .16s var(--s4s-ease-fast),transform .16s var(--s4s-ease-fast)}
.s4s-authenticated .s4s-nav a.active{box-shadow:inset 3px 0 0 var(--s4s-green),inset 0 0 0 1px rgba(255,255,255,.08),0 6px 18px rgba(0,0,0,.14)}


.s4s-bar-cluster span{box-shadow:0 2px 5px rgba(15,39,71,.12)}
.s4s-payroll-chart svg polyline{filter:drop-shadow(0 4px 8px rgba(11,93,204,.18))}
.s4s-donut{box-shadow:0 10px 24px rgba(22,163,74,.14)}


.s4s-field input,.s4s-mini-form input,.s4s-erp-form input,.s4s-erp-form select,.s4s-erp-form textarea,
.s4s-form-grid input,.s4s-form-grid select,.s4s-live-search input{transition:border-color .16s var(--s4s-ease-fast),box-shadow .16s var(--s4s-ease-fast)}
.s4s-field input:focus,.s4s-mini-form input:focus,.s4s-erp-form input:focus,.s4s-erp-form select:focus,
.s4s-form-grid input:focus,.s4s-form-grid select:focus,.s4s-live-search input:focus-within{
  border-color:#7EB0E8!important;box-shadow:0 0 0 3px var(--s4s-blue-glow)!important;outline:none
}


.s4s-empty-state{position:relative;padding-left:2px}
.s4s-chart-empty,.s4s-coming-soon{background:linear-gradient(180deg,var(--s4s-surface-2),#fff)}


.s4s-login-card{backdrop-filter:blur(6px)}
.s4s-login-submit{background-size:180% 180%}
.s4s-login-submit:hover:not(:disabled){background-position:100% 0}
.s4s-login-features span{transition:transform .18s var(--s4s-ease-fast),background-color .18s var(--s4s-ease-fast)}
.s4s-login-features span:hover{transform:translateY(-1px);background:rgba(255,255,255,.13)}


.s4s-app-card,.s4s-platform-module{transition:transform .2s var(--s4s-ease),box-shadow .2s var(--s4s-ease),border-color .2s var(--s4s-ease-fast)}
.s4s-app-card:hover{box-shadow:0 26px 56px rgba(33,67,102,.16)}
.s4s-platform-module:hover{box-shadow:var(--s4s-shadow-md)}


@media print{
  .s4s-card,.s4s-stat,.s4s-report{box-shadow:none!important;background:#fff!important}
  .s4s-stat:before{display:none}
  body{background:#fff!important}
}


.s4s-multi-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:7px}
.s4s-multi-check-grid .s4s-checkline{min-width:0;margin:0;padding:9px 10px;border:1px solid #dbe6f0;border-radius:10px;background:#fbfdff;overflow-wrap:anywhere}
.s4s-field-label{display:block;margin-bottom:6px;color:#52657a;font-size:10px;font-weight:850;letter-spacing:.045em;text-transform:uppercase}
.s4s-form-grid>*{min-width:0}.s4s-form-grid input,.s4s-form-grid select,.s4s-form-grid textarea{min-width:0;max-width:100%}
.s4s-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:900px){.s4s-multi-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.s4s-title-row{align-items:flex-start;flex-direction:column}.s4s-title-row>div:last-child{width:100%}.s4s-form-footer{align-items:flex-start;flex-direction:column;gap:14px}.s4s-form-footer>div:last-child{display:flex;width:100%;gap:8px}.s4s-form-footer .s4s-btn{flex:1;text-align:center}.s4s-multi-check-grid{grid-template-columns:1fr}.s4s-page,.s4s-erp-page{min-width:0;overflow-x:hidden}}


@media(max-width:640px){
  #app .grid.grid-cols-2{grid-template-columns:minmax(0,1fr)!important}
  #app input,#app select,#app textarea{min-width:0;max-width:100%}
  #app main{min-width:0;overflow-x:hidden}
}


.s4s-app-erp{font-size:14px}.s4s-app-erp .s4s-page{line-height:1.5}
.s4s-app-erp .s4s-h1{font-size:clamp(28px,2.4vw,36px);font-weight:700}.s4s-app-erp .s4s-sub{font-size:14px;line-height:1.55}.s4s-app-erp .s4s-eyebrow{font-size:11px;font-weight:700}
.s4s-app-erp .s4s-btn{min-height:40px;padding:9px 14px;font-size:13px;font-weight:600}.s4s-app-erp .s4s-card h2,.s4s-app-erp .s4s-list-head h2{font-size:18px;font-weight:650}
.s4s-app-erp .s4s-form-section h2{font-size:15px;font-weight:650}.s4s-app-erp .s4s-form-section p{font-size:11px}.s4s-app-erp .s4s-form-section .icon{width:38px;height:38px;font-size:10px;font-weight:700}
.s4s-app-erp .s4s-form-grid label,.s4s-app-erp .s4s-field-label,.s4s-app-erp .s4s-erp-form label{font-size:10px;font-weight:650}
.s4s-app-erp .s4s-form-grid input,.s4s-app-erp .s4s-form-grid select,.s4s-app-erp .s4s-form-grid textarea,.s4s-app-erp .s4s-erp-form input,.s4s-app-erp .s4s-erp-form select,.s4s-app-erp .s4s-erp-form textarea{min-height:43px;font-size:13px;font-weight:500}.s4s-app-erp .field-help{font-size:9px;line-height:1.45}
.s4s-app-erp .s4s-table{font-size:13px}.s4s-app-erp .s4s-table th{padding:12px;font-size:11px;font-weight:650;background:#eef5fb;color:#36536e}.s4s-app-erp .s4s-table td{padding:12px;line-height:1.45}.s4s-app-erp .s4s-table td small{font-size:11px}
.s4s-app-erp .s4s-type-badge,.s4s-app-erp .s4s-company-chip,.s4s-app-erp .muted{font-size:10px;font-weight:600}.s4s-app-erp .s4s-list-head p{font-size:12px}
.s4s-app-erp .s4s-erp-kpi small,.s4s-app-erp .s4s-erp-kpi em{font-size:10px}.s4s-app-erp .s4s-erp-kpi strong{font-size:21px;font-weight:700}.s4s-app-erp .s4s-chart-head span{font-size:10px;font-weight:700}.s4s-app-erp .s4s-chart-head h2{font-size:17px}.s4s-app-erp .s4s-chart-head p,.s4s-app-erp .s4s-chart-head a,.s4s-app-erp .s4s-chart-legend{font-size:10px}
.s4s-app-erp .s4s-employee-bar b,.s4s-app-erp .s4s-employee-bar span,.s4s-app-erp .s4s-mini-row b,.s4s-app-erp .s4s-mini-row span,.s4s-app-erp .s4s-mini-row strong,.s4s-app-erp .s4s-mini-row small{font-size:10px}
.s4s-report-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:14px}.s4s-report-nav a{display:flex;align-items:center;gap:9px;min-height:54px;padding:10px 12px;border:1px solid #dbe6f0;border-radius:13px;background:#fff;color:#36536e;text-decoration:none;font-size:12px;font-weight:600;box-shadow:0 5px 16px rgba(35,68,98,.04)}
.s4s-report-nav a:before{content:'▥';display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:9px;background:#eaf4ff;color:#0755a5;font-size:15px}.s4s-report-nav a:nth-child(3n+2):before{background:#eaf9ef;color:#15803d}.s4s-report-nav a:nth-child(3n):before{background:#fff6e5;color:#b76a00}.s4s-report-nav a.active{border-color:#75aee5;background:#f1f7ff;color:#0755a5;box-shadow:0 8px 22px rgba(7,85,165,.10)}
.s4s-report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.s4s-report-summary>div{padding:14px 16px;border:1px solid #dce7f1;border-radius:14px;background:#fff}.s4s-report-summary span{display:block;color:#6b7f92;font-size:11px;font-weight:600}.s4s-report-summary strong{display:block;margin-top:3px;color:#073b73;font-size:21px;font-weight:700}.s4s-report-summary .green{background:#f1faf4;border-color:#cfe8d6}.s4s-report-summary .green strong{color:#15803d}
.s4s-report-filter-card{border-top:3px solid #0755a5!important}.s4s-app-erp .s4s-erp-report-filter label{font-size:10px;font-weight:650}.s4s-app-erp .s4s-erp-report-filter input,.s4s-app-erp .s4s-erp-report-filter select{height:43px;font-size:13px}.s4s-app-erp .s4s-list-head{background:linear-gradient(100deg,#f7fbff,#f5fbf7)}
@media(max-width:1100px){.s4s-report-nav{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.s4s-report-nav,.s4s-report-summary{grid-template-columns:1fr}.s4s-app-erp .s4s-table{font-size:12px}}


#app .s4s-row-actions-cell{min-width:max-content!important;white-space:normal!important;text-align:right}
#app .s4s-row-action-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:36px!important;margin:3px 0 3px 6px!important;padding:7px 10px!important;border:1px solid #cbd9e6!important;border-radius:9px!important;background:#fff!important;color:#36536e!important;font-size:12px!important;font-weight:650!important;line-height:1!important;text-decoration:none!important;white-space:nowrap!important;box-shadow:0 2px 6px rgba(35,68,98,.04)!important;transition:background-color .15s,border-color .15s,transform .15s,box-shadow .15s!important}
#app .s4s-row-action-btn:hover{transform:translateY(-1px)!important;box-shadow:0 5px 12px rgba(35,68,98,.10)!important}
#app .s4s-row-action-icon{width:15px!important;height:15px!important;flex:0 0 15px!important}
#app .s4s-row-action-edit{border-color:#b9d5f1!important;background:#eef6ff!important;color:#0755a5!important}
#app .s4s-row-action-view{border-color:#d4dee8!important;background:#f7f9fb!important;color:#40556b!important}
#app .s4s-row-action-warning{border-color:#f4d59d!important;background:#fff8e9!important;color:#a85c00!important}
#app .s4s-row-action-delete,#app .s4s-row-action-danger{border-color:#f2c2c2!important;background:#fff2f2!important;color:#b42318!important}
#app .s4s-row-action-success{border-color:#bfe2ca!important;background:#eefaf2!important;color:#147a3c!important}
@media(max-width:700px){#app .s4s-row-actions-cell{min-width:170px!important}#app .s4s-row-action-btn{margin-left:4px!important;padding:7px 9px!important}}
.s4s-company-login-editor{padding:14px;border:1px solid #d9e6f2;border-radius:14px;background:#f8fbfe}.s4s-company-login-row{display:grid;grid-template-columns:1.1fr 1fr .9fr 1fr .75fr 1fr;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #e4edf5}.s4s-company-login-row:last-child{border-bottom:0}.s4s-company-login-row input,.s4s-company-login-row select{min-height:39px!important;margin:0!important;font-size:12px!important}.s4s-company-login-row .s4s-checkline{margin:0!important;text-transform:none!important}@media(max-width:1100px){.s4s-company-login-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.s4s-company-login-row{grid-template-columns:1fr}}
.s4s-discount-form select{display:none}.s4s-discount-form:before{content:'₹ Fixed';display:inline-flex;align-items:center;padding:0 8px;border-radius:7px;background:#eefaf2;color:#147a3c;font-size:10px;font-weight:700;white-space:nowrap}


.s4s-partner-form{max-width:1440px;margin:0 auto}
.s4s-partner-form .s4s-form-section{margin-bottom:18px;border-color:#cddfeb;border-radius:18px;box-shadow:0 8px 24px rgba(7,59,115,.045)}
.s4s-partner-form .s4s-form-section>header{align-items:center;gap:12px;padding:16px 18px;border-bottom-color:#d8e6f0;background:linear-gradient(105deg,#eff7ff 0%,#f5fbff 52%,#f1faf4 100%)}
.s4s-partner-form .s4s-form-section .icon{width:40px;height:40px;border-radius:11px;background:linear-gradient(145deg,#0755a5,#0873c8);font-size:11px;box-shadow:0 7px 16px rgba(7,85,165,.18)}
.s4s-app-erp .s4s-partner-form .s4s-form-section h2{color:#073b73!important;font-size:17px!important;font-weight:700!important;letter-spacing:-.015em}
.s4s-app-erp .s4s-partner-form .s4s-form-section p{color:#687f94!important;font-size:11px!important;line-height:1.45}
.s4s-partner-form .s4s-form-grid{gap:17px 14px;padding:20px 18px}
.s4s-partner-form .s4s-form-grid>div.wide{grid-column:span 2}
.s4s-app-erp .s4s-partner-form .s4s-form-grid>label,.s4s-app-erp .s4s-partner-form .s4s-field-label{color:#0b3f70!important;font-size:11px!important;font-weight:700!important;letter-spacing:.035em!important;line-height:1.35;text-transform:uppercase}
.s4s-partner-form .s4s-form-grid input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.s4s-partner-form .s4s-form-grid select,.s4s-partner-form .s4s-form-grid textarea{min-height:46px!important;margin-top:7px!important;padding:10px 12px!important;border:1px solid #bed1e3!important;border-radius:11px!important;background:#fff!important;color:#173651!important;font-size:13px!important;font-weight:500!important;box-shadow:0 1px 2px rgba(7,59,115,.02)}
.s4s-partner-form .s4s-form-grid input:not([type=checkbox]):not([type=radio]):focus,.s4s-partner-form .s4s-form-grid select:focus,.s4s-partner-form .s4s-form-grid textarea:focus{border-color:#4c91d4!important;box-shadow:0 0 0 3px rgba(7,85,165,.11)!important;outline:none}
.s4s-partner-form .s4s-form-grid input::placeholder,.s4s-partner-form .s4s-form-grid textarea::placeholder{color:#8999a9;font-weight:450}
.s4s-app-erp .s4s-partner-form .field-help{margin-top:6px;color:#71869a!important;font-size:9.5px!important;font-weight:550!important;letter-spacing:0!important;line-height:1.45;text-transform:none!important}


.s4s-partner-form input[type=checkbox],.s4s-partner-form input[type=radio]{display:inline-block!important;width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;min-height:18px!important;margin:0!important;padding:0!important;flex:0 0 18px!important;border-radius:4px!important;accent-color:#0755a5;box-shadow:none!important}
.s4s-partner-form .s4s-checkline{display:flex!important;align-items:center!important;gap:9px!important;min-width:0;min-height:44px;margin:7px 0 0!important;padding:10px 12px!important;border:1px solid #d3e1ec!important;border-radius:11px!important;background:#f8fbfe!important;color:#234b70!important;font-size:12px!important;font-weight:650!important;letter-spacing:0!important;line-height:1.3;text-transform:none!important}
.s4s-partner-form .s4s-checkline>span{display:block;min-width:0}
.s4s-partner-form .s4s-checkline b{display:block;color:#123f68;font-size:12px;font-weight:700}
.s4s-partner-form .s4s-checkline small{display:block;margin-top:2px;color:#71869a;font-size:10px;font-weight:500;line-height:1.35;text-transform:none}
.s4s-partner-form .s4s-form-section>.s4s-checkline{margin:16px 18px!important;background:#f5faff!important}
.s4s-partner-form .s4s-multi-check-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin-top:9px}
.s4s-partner-form .s4s-multi-check-grid .s4s-checkline{margin:0!important;background:#fff!important}


.s4s-partner-form .s4s-company-login-editor{grid-column:1/-1!important;padding:18px!important;border-color:#bed7ec!important;border-radius:14px!important;background:linear-gradient(145deg,#f5faff,#f5fbf7)!important}
.s4s-company-login-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.s4s-company-login-title .s4s-field-label{margin:0 0 3px!important;font-size:13px!important}
.s4s-company-login-title .field-help{max-width:760px;margin:0!important}
.s4s-record-chip{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border:1px solid #bfe2ca;border-radius:999px;background:#eefaf2;color:#147a3c;font-size:10px;font-weight:700;white-space:nowrap}
.s4s-company-login-head,.s4s-company-login-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(125px,.9fr) minmax(125px,.9fr) minmax(180px,1.15fr) minmax(105px,.7fr) minmax(130px,.85fr);gap:10px;align-items:center}
.s4s-company-login-head{padding:9px 10px;border-radius:9px;background:#e8f2fb;color:#315879;font-size:9.5px;font-weight:750;letter-spacing:.035em;text-transform:uppercase}
.s4s-company-login-row{padding:11px 0;border-bottom:1px solid #dfeaf3}
.s4s-company-login-row:last-child{border-bottom:0;padding-bottom:0}
.s4s-partner-form .s4s-company-login-row input:not([type=checkbox]):not([type=hidden]),.s4s-partner-form .s4s-company-login-row select{min-height:42px!important;margin:0!important;padding:8px 10px!important;font-size:12px!important}
.s4s-partner-form .s4s-company-login-row .s4s-checkline{min-height:42px!important;margin:0!important;background:#fff!important}
.s4s-company-login-empty{padding:18px;border:1px dashed #bfd2e4;border-radius:11px;background:#fff;color:#60788e;font-size:12px;text-align:center}


.s4s-otp-options{grid-column:1/-1;min-width:0}
.s4s-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:7px}
.s4s-option-grid .s4s-checkline{margin:0!important;min-height:62px!important;background:linear-gradient(145deg,#f8fbff,#fff)!important}
.s4s-login-status .s4s-checkline{min-height:62px!important}
.s4s-partner-form .s4s-form-footer{position:sticky;bottom:10px;z-index:5;align-items:center;padding:14px 18px;border-color:#bfe0ca;background:rgba(241,250,244,.96);box-shadow:0 12px 34px rgba(7,59,115,.12);backdrop-filter:blur(8px)}
.s4s-partner-form .s4s-form-footer b{color:#126c37;font-size:11px}.s4s-partner-form .s4s-form-footer span{margin-top:2px;color:#60788e;font-size:10px}

@media(max-width:1180px){
  .s4s-partner-form .s4s-multi-check-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}
  .s4s-company-login-head{display:none}
  .s4s-company-login-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px 0}
  .s4s-partner-form .s4s-company-login-row .s4s-checkline{grid-column:1/-1}
}
@media(max-width:700px){
  .s4s-partner-form .s4s-form-section{border-radius:14px}
  .s4s-partner-form .s4s-form-section>header,.s4s-partner-form .s4s-form-grid{padding:15px}
  .s4s-partner-form .s4s-form-grid>div.wide{grid-column:auto}
  .s4s-partner-form .s4s-multi-check-grid,.s4s-option-grid,.s4s-company-login-row{grid-template-columns:1fr}
  .s4s-company-login-title{display:block}.s4s-record-chip{margin-top:10px}
  .s4s-partner-form .s4s-company-login-row .s4s-checkline{grid-column:auto}
  .s4s-partner-form .s4s-form-footer{bottom:4px}
}


.s4s-partner-search-head{grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(150px,.72fr)) auto}
@media(max-width:1100px){.s4s-partner-search-head{grid-template-columns:1fr 1fr}.s4s-partner-search-head .s4s-live-search{grid-column:1/-1}}
@media(max-width:700px){.s4s-partner-search-head{grid-template-columns:1fr}.s4s-partner-search-head .s4s-live-search{grid-column:auto}}


@media (min-width:901px){
  body.s4s-authenticated.s4s-app-erp > .s4s-page.s4s-erp-page{
    width:calc(100vw - var(--s4s-sidebar-width))!important;
    max-width:none!important;
    margin-left:var(--s4s-sidebar-width)!important;
    margin-right:0!important;
    padding-left:clamp(18px,1.6vw,30px)!important;
    padding-right:clamp(18px,1.6vw,30px)!important;
  }
  body.s4s-authenticated.s4s-app-erp .s4s-card,
  body.s4s-authenticated.s4s-app-erp .s4s-table-wrap{
    width:100%;
    max-width:none;
  }
  body.s4s-authenticated.s4s-app-erp .s4s-table{
    width:100%;
  }
}


.s4s-erp-two-col > :only-child{grid-column:1/-1!important;width:100%!important;max-width:none!important}
/* S4S COMPACT UI V6 */
.s4s-eyebrow,.s4s-sub,.s4s-erp-hero-kicker,.field-help,.s4s-ledger-note,.s4s-note{display:none!important}
.s4s-erp-hero>div>p,.s4s-workspace-hero>div>p,.s4s-form-card-head p,.s4s-form-card-head>span,.s4s-form-section>header .icon,.s4s-form-section>header p,.s4s-list-head>div>p,.s4s-chart-head>div>p,.s4s-chart-head>div>span,.s4s-erp-kpi em,.s4s-app-access-head p,.s4s-platform-welcome p,.s4s-platform-welcome>div>span,.s4s-platform-module p{display:none!important}
.s4s-form-card-head{display:block!important}.s4s-form-card-head h2,.s4s-form-section>header h2{margin:0!important}
body.s4s-authenticated:not(.s4s-employee-portal) #app main>.mb-5>.min-w-0>div.mb-1,
body.s4s-authenticated:not(.s4s-employee-portal) #app main>.mb-5>.min-w-0>p.mt-1{display:none!important}
body.s4s-employee-portal #app main>.mb-5>div:first-child>div.text-xs,
body.s4s-employee-portal #app main>.mb-5>div:first-child>div.mt-1.text-sm{display:none!important}
body.s4s-employee-portal #app main>.mb-5>div:first-child>h1{margin-top:0!important}
body.s4s-employee-portal #app aside>.mb-3.rounded-xl{display:none!important}
.s4s-graph-heading .s4s-eyebrow,.s4s-graph-heading p{display:none!important}

/* ERP reporting upgrade - 2026-09-04 */
.s4s-report-title-row{margin-bottom:12px}.s4s-report-title-row p{margin:4px 0 0;color:#718399;font-size:11px}.s4s-report-filter-card{padding:14px;margin-bottom:12px}.s4s-report-filter-card .s4s-erp-report-filter{grid-template-columns:minmax(190px,1.25fr) minmax(220px,1.35fr) minmax(190px,1fr) minmax(170px,1fr) minmax(130px,.75fr) minmax(130px,.75fr) auto}.s4s-report-filter-card [hidden]{display:none!important}.report-filter-actions{display:flex;gap:7px;align-items:end;min-height:40px}.s4s-report-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:9px;margin:0 0 12px}.s4s-report-summary{display:block;grid-template-columns:none;gap:0;margin:0;position:relative;overflow:hidden;padding:13px 14px;border:1px solid #dce7f1;border-radius:14px;background:#fff;box-shadow:0 7px 20px rgba(35,68,98,.045)}.s4s-report-summary:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#94a3b8}.s4s-report-summary.blue:before{background:#0755a5}.s4s-report-summary.navy:before{background:#334f9a}.s4s-report-summary.green:before{background:#16a34a}.s4s-report-summary.warn:before{background:#d97706}.s4s-report-summary.red:before{background:#dc2626}.s4s-report-summary small,.s4s-report-summary span{display:block;color:#7a8b9d;font-size:8px;font-weight:700}.s4s-report-summary strong{display:block;margin-top:4px;color:#123f68;font-size:17px;font-variant-numeric:tabular-nums}.s4s-report-summary span{margin-top:3px}.s4s-report-result-card{padding:0;overflow:hidden}.s4s-report-result-head{align-items:flex-start}.s4s-report-result-head>div:first-child{min-width:0;flex:1}.s4s-report-result-head h2{margin:0}.s4s-report-result-head p{max-width:900px;margin:4px 0 0;color:#718399;font-size:9px;line-height:1.45}.s4s-report-meta{display:flex;flex-wrap:wrap;gap:5px 11px;margin-top:8px}.s4s-report-meta span{padding:3px 7px;border:1px solid #e1e9f0;border-radius:999px;background:#f8fbfd;color:#607489;font-size:8px}.s4s-report-export-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.s4s-report-row-count{margin-right:2px;color:#7b8b9b;font-size:9px;font-weight:800}.s4s-report-table-wrap{max-height:68vh;overflow:auto}.s4s-report-table{font-variant-numeric:tabular-nums}.s4s-report-table thead th{position:sticky;top:0;z-index:3;background:#f5f8fb;box-shadow:0 1px 0 #dce5ee}.s4s-report-table td.money{text-align:right;white-space:nowrap;font-weight:700;color:#334b62}.s4s-report-empty{padding:22px;text-align:center}.s4s-report-empty b,.s4s-report-empty span{display:block}.s4s-report-empty b{color:#52677c}.s4s-report-empty span{margin-top:4px;color:#8a98a6;font-size:10px}
@media(max-width:1450px){.s4s-report-filter-card .s4s-erp-report-filter{grid-template-columns:repeat(4,minmax(0,1fr))}.report-filter-actions{grid-column:span 1}}
@media(max-width:1000px){.s4s-report-filter-card .s4s-erp-report-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.s4s-report-result-head{flex-direction:column}.s4s-report-export-actions{justify-content:flex-start}}
@media(max-width:650px){.s4s-report-filter-card .s4s-erp-report-filter{grid-template-columns:1fr}.s4s-report-summary-grid{grid-template-columns:1fr 1fr}.report-filter-actions{grid-column:auto}.s4s-report-table-wrap{max-height:none}}
.s4s-erp-health-card{padding:0;margin-bottom:11px;overflow:hidden}.s4s-erp-health-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-top:1px solid #e7eef4}.s4s-erp-health-grid a{display:block;padding:13px 14px;border-right:1px solid #e7eef4;text-decoration:none;background:#fff}.s4s-erp-health-grid a:last-child{border-right:0}.s4s-erp-health-grid a:hover{background:#f8fbff}.s4s-erp-health-grid small,.s4s-erp-health-grid strong,.s4s-erp-health-grid span{display:block}.s4s-erp-health-grid small{color:#7b8d9d;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.03em}.s4s-erp-health-grid strong{margin:4px 0 2px;color:#0b3c6b;font-size:18px}.s4s-erp-health-grid span{color:#8a98a6;font-size:7.5px}.s4s-erp-health-note{padding:8px 14px;border-top:1px solid #e7eef4;background:#fffbeb;color:#8a5a08;font-size:9px}.s4s-erp-health-card .s4s-list-head p{margin:3px 0 0;color:#7d8d9c;font-size:8.5px}
@media(max-width:1300px){.s4s-erp-health-grid{grid-template-columns:repeat(3,1fr)}.s4s-erp-health-grid a:nth-child(3){border-right:0}.s4s-erp-health-grid a:nth-child(-n+3){border-bottom:1px solid #e7eef4}}
@media(max-width:700px){.s4s-erp-health-grid{grid-template-columns:1fr 1fr}.s4s-erp-health-grid a{border-bottom:1px solid #e7eef4}.s4s-erp-health-grid a:nth-child(odd){border-right:1px solid #e7eef4}.s4s-erp-health-grid a:nth-child(even){border-right:0}}
.s4s-b2c-payment-summary{margin-bottom:12px}.s4s-b2c-payments-area{align-items:start;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr)}.s4s-b2c-payments-area>.s4s-card{padding:0;overflow:hidden}.s4s-b2c-payments-area [data-s4s-inline-form]{display:block!important;position:static!important;transform:none!important;visibility:visible!important;opacity:1!important;max-height:none!important}.s4s-b2c-payment-form{padding:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.s4s-b2c-payment-history .s4s-table-wrap{max-height:360px}.s4s-b2c-payment-history .s4s-table th{position:sticky;top:0;z-index:2}.s4s-b2c-payment-history .s4s-btn{padding:6px 8px;font-size:9px}
@media(max-width:1000px){.s4s-b2c-payments-area{grid-template-columns:1fr}}@media(max-width:800px){.s4s-b2c-payment-form{grid-template-columns:1fr}.s4s-b2c-payment-form .wide{grid-column:auto}}

/* ERP finance/payment status color system - 2026-09-04 */
.s4s-money-chip,.s4s-payment-chip,.s4s-order-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid transparent;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:850;line-height:1.2;white-space:nowrap}
.s4s-money-chip.outstanding{background:#fff1f2;border-color:#fecdd3;color:#b42318}.s4s-money-chip.advance{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}.s4s-money-chip.settled{background:#ecfdf3;border-color:#bbf7d0;color:#067647}
.s4s-payment-chip.cash{background:#ecfdf3;border-color:#bbf7d0;color:#067647}.s4s-payment-chip.bank{background:#eff6ff;border-color:#bfdbfe;color:#0755a5}.s4s-payment-chip.advance{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}.s4s-payment-chip.partial{background:#fff7ed;border-color:#fed7aa;color:#b54708}.s4s-payment-chip.pending{background:#fff1f2;border-color:#fecdd3;color:#b42318}.s4s-payment-chip.received{background:#ecfdf3;border-color:#bbf7d0;color:#067647}.s4s-payment-chip.excess{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}
.s4s-order-chip.completed{background:#ecfdf3;border-color:#bbf7d0;color:#067647}.s4s-order-chip.pending{background:#fff7ed;border-color:#fed7aa;color:#b54708}.s4s-order-chip.payment{background:#fff1f2;border-color:#fecdd3;color:#b42318}
.s4s-report-table td.money.outstanding{color:#b42318;background:#fff8f8}.s4s-report-table td.money.advance{color:#6d28d9;background:#faf8ff}.s4s-report-table td.position-advance{color:#6d28d9;font-weight:800}.s4s-report-table td.position-outstanding{color:#b42318;font-weight:800}.s4s-report-table td.position-settled{color:#067647;font-weight:800}
.s4s-report-summary.purple:before{background:#7c3aed}.s4s-report-summary.purple strong{color:#6d28d9}.s4s-report-summary.red strong{color:#b42318}.s4s-report-summary.warn strong{color:#b54708}.s4s-report-summary.green strong{color:#067647}
.s4s-erp-health-grid a.outstanding{background:#fff8f8;box-shadow:inset 0 3px 0 #dc2626}.s4s-erp-health-grid a.outstanding strong{color:#b42318}.s4s-erp-health-grid a.advance{background:#faf8ff;box-shadow:inset 0 3px 0 #7c3aed}.s4s-erp-health-grid a.advance strong{color:#6d28d9}.s4s-erp-health-grid a.collection{background:#f4fbf7;box-shadow:inset 0 3px 0 #16a34a}.s4s-erp-health-grid a.collection strong{color:#067647}.s4s-erp-health-grid a.pending{background:#fffbf5;box-shadow:inset 0 3px 0 #d97706}.s4s-erp-health-grid a.pending strong{color:#b54708}
.client-stat.outstanding{background:#fff8f8;border-color:#fecdd3}.client-stat.outstanding strong{color:#b42318}.client-stat.advance{background:#faf8ff;border-color:#ddd6fe}.client-stat.advance strong{color:#6d28d9}.client-stat.settled{background:#f4fbf7;border-color:#bbf7d0}.client-stat.settled strong{color:#067647}

/* ================================================================
   Safe4Sign HRMS — close button hover feedback (No-NPM hotfix)
   2026-09-08
   Covers HRMS form close buttons + Radix Dialog/Sheet close controls.
   ================================================================ */
.hrms-close-button,
button[title^="Close"],
button[aria-label^="Close"] {
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent;
  transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease, opacity .16s ease !important;
}

/* Radix Dialog / Sheet default close buttons have an X icon and sr-only Close label. */
button:has(> svg.lucide-x):has(> span.sr-only) {
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #dbe4ee !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #64748b !important;
  opacity: 1 !important;
  cursor: pointer !important;
  transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease !important;
}

.hrms-close-button:hover,
button[title^="Close"]:hover,
button[aria-label^="Close"]:hover,
button:has(> svg.lucide-x):has(> span.sr-only):hover {
  background: #fee2e2 !important;
  border-color: #ef4444 !important;
  color: #b91c1c !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 3px rgba(239,68,68,.16), 0 6px 16px rgba(185,28,28,.14) !important;
  transform: translateY(-1px) !important;
}

.hrms-close-button:hover svg,
button[title^="Close"]:hover svg,
button[aria-label^="Close"]:hover svg,
button:has(> svg.lucide-x):has(> span.sr-only):hover svg {
  color: #b91c1c !important;
  stroke: #b91c1c !important;
  transform: scale(1.12);
}

.hrms-close-button svg,
button[title^="Close"] svg,
button[aria-label^="Close"] svg,
button:has(> svg.lucide-x):has(> span.sr-only) svg {
  transition: color .16s ease, stroke .16s ease, transform .16s ease !important;
}

.hrms-close-button:active,
button[title^="Close"]:active,
button[aria-label^="Close"]:active,
button:has(> svg.lucide-x):has(> span.sr-only):active {
  transform: translateY(0) scale(.96) !important;
}

.hrms-close-button:focus-visible,
button[title^="Close"]:focus-visible,
button[aria-label^="Close"]:focus-visible,
button:has(> svg.lucide-x):has(> span.sr-only):focus-visible {
  outline: 2px solid #ef4444 !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 4px rgba(239,68,68,.12) !important;
}

/* ================================================================
   Safe4Sign HRMS — Employees Letters action icon optical centering
   2026-09-08 | No-NPM live CSS hotfix + future React class support
   ================================================================ */
.s4s-employees-index .hrms-employee-letter-action,
.s4s-employees-index table tbody td:last-child > div > a:nth-child(3) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  line-height: 0 !important;
  text-align: center !important;
}

.s4s-employees-index .hrms-employee-letter-action > svg,
.s4s-employees-index table tbody td:last-child > div > a:nth-child(3) > svg {
  display: block !important;
  width: 17px !important;
  height: 17px !important;
  flex: 0 0 17px !important;
  margin: 0 !important;
  position: relative !important;
  left: .5px !important;
  top: 0 !important;
  transform: none !important;
}

/* Keep the whole action strip vertically aligned. */
.s4s-employees-index table tbody td:last-child > div {
  align-items: center !important;
}

/* ================================================================
   Safe4Sign HRMS — Employees Letters action button fixed-size repair
   2026-09-08 | No-NPM production hotfix
   Previous rule removed padding from the 3rd action link but the live
   compiled React bundle still uses auto-sized p-2 action links. That made
   the Letters button shrink around the icon. Force the same 40x40 action
   box as View / Edit / Delete, then center the glyph normally.
   ================================================================ */
body.s4s-employees-index a[title="Letters"],
body.s4s-employees-index .hrms-employee-letter-action {
  box-sizing: border-box !important;
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 40px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

body.s4s-employees-index a[title="Letters"] > svg,
body.s4s-employees-index .hrms-employee-letter-action > svg {
  display: block !important;
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
  margin: 0 !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
}

/* ================================================================
   Safe4Sign HRMS — Recruitment View / Edit / Delete action repair
   2026-09-14 | Sticky action strip, visible icons, no blank kebab button
   ================================================================ */
body.s4s-recruitment-index #app .s4s-recruitment-actions-heading,
body.s4s-recruitment-index #app .s4s-recruitment-actions-cell{
  width:154px!important;
  min-width:154px!important;
  max-width:154px!important;
  text-align:right!important;
  white-space:nowrap!important;
}
body.s4s-recruitment-index #app .s4s-recruitment-actions-cell{
  position:sticky!important;
  right:0!important;
  z-index:5!important;
  background:#fff!important;
  box-shadow:-10px 0 16px -14px rgba(15,55,95,.42)!important;
}
body.s4s-recruitment-index #app tbody tr:hover .s4s-recruitment-actions-cell{background:#f5faff!important}
body.s4s-recruitment-index #app .s4s-recruitment-actions{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
  min-width:130px!important;
}
body.s4s-recruitment-index #app .s4s-recruitment-delete-form{display:inline-flex!important;margin:0!important;padding:0!important}
body.s4s-recruitment-index #app .s4s-recruitment-action-button{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #cbd9e6!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#40566d!important;
  line-height:0!important;
  text-decoration:none!important;
  cursor:pointer!important;
  box-shadow:0 2px 6px rgba(35,68,98,.04)!important;
  transition:background-color .15s,border-color .15s,color .15s,transform .15s,box-shadow .15s!important;
}
body.s4s-recruitment-index #app .s4s-recruitment-action-button:hover{transform:translateY(-1px)!important;box-shadow:0 5px 12px rgba(35,68,98,.11)!important}
body.s4s-recruitment-index #app .s4s-recruitment-action-button.view{border-color:#cfd9e4!important;background:#f8fafc!important;color:#40566d!important}
body.s4s-recruitment-index #app .s4s-recruitment-action-button.view:hover{border-color:#9eb1c4!important;background:#eef3f7!important;color:#173651!important}
body.s4s-recruitment-index #app .s4s-recruitment-action-button.edit{border-color:#b9d5f1!important;background:#eef6ff!important;color:#0755a5!important}
body.s4s-recruitment-index #app .s4s-recruitment-action-button.edit:hover{border-color:#7fb1e2!important;background:#e1efff!important;color:#064987!important}
body.s4s-recruitment-index #app .s4s-recruitment-action-button.delete{border-color:#f0c1c1!important;background:#fff3f3!important;color:#c62828!important}
body.s4s-recruitment-index #app .s4s-recruitment-action-button.delete:hover{border-color:#ef8f8f!important;background:#ffe8e8!important;color:#b71c1c!important}
body.s4s-recruitment-index #app .s4s-recruitment-action-icon{display:block!important;width:17px!important;height:17px!important;flex:0 0 17px!important;margin:0!important}
body.s4s-recruitment-index #app .s4s-recruitment-action-button .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body.s4s-recruitment-index #app .s4s-row-menu{display:none!important}
@media(max-width:767px){
  body.s4s-recruitment-index #app .s4s-recruitment-actions-heading,
  body.s4s-recruitment-index #app .s4s-recruitment-actions-cell{width:154px!important;min-width:154px!important;max-width:154px!important}
}

/* ================================================================
   Safe4Sign HRMS — Recruitment candidate detail UI/UX repair
   2026-09-14 | Keep interview/offer forms inline; prevent cramped summary
   ================================================================ */
body.s4s-recruitment-show #app .s4s-recruitment-show-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(340px,380px)!important;
  align-items:start!important;
  gap:20px!important;
  width:100%!important;
  min-width:0!important;
}
body.s4s-recruitment-show #app .s4s-recruitment-main-column,
body.s4s-recruitment-show #app .s4s-recruitment-side-column{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
body.s4s-recruitment-show #app .s4s-recruitment-side-column>.s4s-managed-form,
body.s4s-recruitment-show #app .s4s-recruitment-side-column>section{
  display:block!important;
  position:static!important;
  inset:auto!important;
  width:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  overflow:visible!important;
  transform:none!important;
}
body.s4s-recruitment-show #app .s4s-recruitment-side-column .s4s-modal-close,
body.s4s-recruitment-show #app .s4s-page-add-wrap{
  display:none!important;
}
body.s4s-recruitment-show #app .s4s-candidate-summary-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:24px!important;
  row-gap:18px!important;
}
body.s4s-recruitment-show #app .s4s-candidate-summary-grid>div{
  min-width:0!important;
}
body.s4s-recruitment-show #app .s4s-candidate-summary-grid>div>div:last-child{
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
  line-height:1.4!important;
}
body.s4s-recruitment-show #app .s4s-recruitment-side-column form{
  min-width:0!important;
}
body.s4s-recruitment-show #app .s4s-recruitment-side-column input,
body.s4s-recruitment-show #app .s4s-recruitment-side-column select,
body.s4s-recruitment-show #app .s4s-recruitment-side-column textarea{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.s4s-recruitment-show #app .s4s-recruitment-side-column form>button[type="submit"]{
  width:100%!important;
  justify-content:center!important;
}
@media(max-width:1350px){
  body.s4s-recruitment-show #app .s4s-recruitment-show-grid{
    grid-template-columns:minmax(0,1fr) minmax(320px,350px)!important;
    gap:16px!important;
  }
}
@media(max-width:1180px){
  body.s4s-recruitment-show #app .s4s-recruitment-show-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.s4s-recruitment-show #app .s4s-recruitment-side-column{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
  body.s4s-recruitment-show #app .s4s-recruitment-side-column>section{
    height:100%!important;
  }
}
@media(max-width:760px){
  body.s4s-recruitment-show #app .s4s-candidate-summary-grid,
  body.s4s-recruitment-show #app .s4s-recruitment-side-column{
    grid-template-columns:minmax(0,1fr)!important;
  }
}

/* Safe4Sign ERP Walk-in / B2C workflow v4 — 2026-09-15 */
.s4s-walkin-tabs{display:flex;gap:8px;align-items:stretch;margin:0 0 14px;padding:6px;border:1px solid #dce7f1;border-radius:14px;background:#fff;overflow-x:auto;scrollbar-width:thin}.s4s-walkin-tabs>a,.s4s-walkin-tabs>span{display:flex;align-items:center;gap:8px;min-width:max-content;padding:9px 12px;border-radius:10px;color:#52657a;text-decoration:none;font-size:10px;font-weight:800}.s4s-walkin-tabs>a b,.s4s-walkin-tabs>span b{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#eef5fc;color:#0755a5;font-size:10px}.s4s-walkin-tabs>a.active{background:#eaf4ff;color:#0755a5;box-shadow:inset 0 0 0 1px #cfe2f6}.s4s-walkin-tabs>a.active b{background:#0755a5;color:#fff}.s4s-walkin-tabs>span.disabled{opacity:.55;cursor:not-allowed}.s4s-walkin-stepper{margin-bottom:12px}.s4s-walkin-view-card{padding:0;overflow:hidden}.s4s-walkin-view-card>.s4s-list-head{margin:0}.s4s-read-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:4px 16px 16px}.s4s-read-grid>div{min-width:0;padding:13px 12px;border-bottom:1px solid #edf2f6}.s4s-read-grid>div.wide{grid-column:span 2}.s4s-read-grid small{display:block;margin-bottom:5px;color:#8191a2;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.s4s-read-grid strong{display:block;color:#233c55;font-size:12px;line-height:1.45;word-break:break-word}.s4s-read-grid strong em{display:block;margin-top:2px;color:#8191a2;font-size:9px;font-style:normal;font-weight:600}.s4s-walkin-note{margin:14px 16px;padding:13px 14px;border:1px solid #d7e4ef;border-radius:11px;background:#f7fbfe;color:#52657a;font-size:11px;line-height:1.55}.s4s-walkin-form-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}.s4s-walkin-mobile-list,.s4s-walkin-mobile-payments{display:none}.s4s-walkin-timeline{padding:6px 18px 18px}.s4s-walkin-timeline article{position:relative;display:grid;grid-template-columns:14px 118px minmax(0,1fr);gap:10px;padding:14px 0}.s4s-walkin-timeline article:not(:last-child):before{content:"";position:absolute;left:6px;top:27px;bottom:-14px;width:1px;background:#d8e5ef}.s4s-timeline-dot{position:relative;z-index:2;width:13px;height:13px;margin-top:3px;border:3px solid #d9ecff;border-radius:50%;background:#0755a5}.s4s-timeline-time strong,.s4s-timeline-time small{display:block}.s4s-timeline-time strong{color:#35526d;font-size:10px}.s4s-timeline-time small{margin-top:3px;color:#8695a5;font-size:9px}.s4s-timeline-body{padding-bottom:12px;border-bottom:1px solid #eef3f7}.s4s-timeline-body>span{display:inline-flex;padding:3px 7px;border-radius:999px;background:#eef5fc;color:#0755a5;font-size:7px;font-weight:900}.s4s-timeline-body h3{margin:5px 0 3px;color:#123f68;font-size:12px}.s4s-timeline-body p{margin:0 0 4px;color:#60768c;font-size:10px;line-height:1.5}.s4s-timeline-body small{color:#8a98a6;font-size:8.5px}.s4s-walkin-sale-card{padding:14px;border-bottom:1px solid #e8eff5}.s4s-walkin-sale-card .head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.s4s-walkin-sale-card .head strong,.s4s-walkin-sale-card .head small{display:block}.s4s-walkin-sale-card .head strong{color:#073b73;font-size:13px}.s4s-walkin-sale-card .head small{margin-top:3px;color:#667b90;font-size:9.5px}.s4s-walkin-sale-card .product{margin-top:10px;padding:9px 10px;border-radius:10px;background:#f6f9fc}.s4s-walkin-sale-card .product small,.s4s-walkin-sale-card .product b{display:block}.s4s-walkin-sale-card .product small{color:#8795a4;font-size:8px}.s4s-walkin-sale-card .product b{margin-top:2px;color:#2d4963;font-size:10px}.s4s-walkin-sale-card .money-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:9px}.s4s-walkin-sale-card .money-grid>div{padding:8px;border:1px solid #e3ebf2;border-radius:9px}.s4s-walkin-sale-card .money-grid small,.s4s-walkin-sale-card .money-grid strong{display:block}.s4s-walkin-sale-card .money-grid small{color:#8593a2;font-size:7.5px}.s4s-walkin-sale-card .money-grid strong{margin-top:2px;color:#24425f;font-size:10.5px}.s4s-walkin-sale-card .money-grid strong.due{color:#b42318}.s4s-walkin-sale-card .money-grid strong.advance{color:#6d28d9}.s4s-walkin-sale-card .money-grid strong.settled{color:#15803d}.s4s-walkin-sale-card .meta{display:flex;justify-content:space-between;gap:10px;margin-top:9px;color:#8392a1;font-size:8.5px}.s4s-walkin-sale-card .actions{display:flex;gap:7px;margin-top:10px}.s4s-walkin-sale-card .actions form{display:flex;flex:1}.s4s-walkin-sale-card .actions .s4s-btn,.s4s-walkin-sale-card .actions form .s4s-btn{flex:1;text-align:center;justify-content:center}.s4s-walkin-mobile-payments article{padding:12px 14px;border-bottom:1px solid #e8eff5}.s4s-walkin-mobile-payments article>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.s4s-walkin-mobile-payments article small{color:#8594a4;font-size:8.5px}.s4s-walkin-mobile-payments article strong{color:#0f6b3f;font-size:14px}.s4s-walkin-mobile-payments article p{margin:5px 0 9px;color:#587086;font-size:9.5px}
@media(max-width:900px){.s4s-read-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.s4s-walkin-title-row{align-items:flex-start;flex-direction:column}.s4s-walkin-title-row .s4s-actions{width:100%;flex-wrap:wrap}.s4s-walkin-title-row .s4s-actions .s4s-btn{flex:1;justify-content:center;min-width:120px}}
@media(max-width:700px){.s4s-walkin-index-card,.s4s-walkin-view-card,.s4s-walkin-part{border-radius:12px}.s4s-walkin-desktop-table{display:none}.s4s-walkin-mobile-list,.s4s-walkin-mobile-payments{display:block}.s4s-walkin-payment-table{display:none}.s4s-walkin-list-head{align-items:stretch;flex-direction:column}.s4s-walkin-list-head .s4s-inline-filter{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto}.s4s-walkin-list-head .s4s-inline-filter input{min-width:0;width:100%}.s4s-walkin-tabs{margin-inline:-2px;padding:5px}.s4s-walkin-tabs>a,.s4s-walkin-tabs>span{padding:8px 9px;font-size:9px}.s4s-walkin-tabs>a b,.s4s-walkin-tabs>span b{width:22px;height:22px}.s4s-walkin-view-card .s4s-list-head,.s4s-walkin-part .s4s-list-head{align-items:flex-start;flex-direction:column}.s4s-walkin-view-card .s4s-list-head>.s4s-btn{width:100%;justify-content:center}.s4s-read-grid{grid-template-columns:1fr;padding:4px 12px 12px}.s4s-read-grid>div.wide{grid-column:auto}.s4s-read-grid>div{padding:11px 8px}.s4s-walkin-form{grid-template-columns:1fr!important;gap:10px}.s4s-walkin-form .wide{grid-column:auto!important}.s4s-walkin-form input,.s4s-walkin-form select{height:44px;font-size:13px}.s4s-walkin-form textarea{min-height:90px;font-size:13px}.s4s-walkin-form-actions{display:grid!important;grid-template-columns:1fr!important}.s4s-walkin-form-actions .s4s-btn{width:100%;justify-content:center}.s4s-b2c-payment-summary{grid-template-columns:1fr 1fr!important}.s4s-b2c-payment-summary .s4s-report-summary{padding:11px}.s4s-b2c-payment-summary .s4s-report-summary strong{font-size:14px}.s4s-walkin-timeline{padding:4px 12px 12px}.s4s-walkin-timeline article{grid-template-columns:14px minmax(0,1fr);gap:8px}.s4s-timeline-time{grid-column:2;display:flex;gap:7px;align-items:center}.s4s-timeline-time small{margin:0}.s4s-timeline-body{grid-column:2}.s4s-walkin-note{margin:12px}.s4s-page.s4s-erp-page{padding-inline:10px}}
@media(max-width:420px){.s4s-b2c-payment-summary{grid-template-columns:1fr!important}.s4s-walkin-sale-card .money-grid{grid-template-columns:1fr 1fr}.s4s-walkin-sale-card .money-grid>div:last-child{grid-column:1/-1}.s4s-walkin-title-row .s4s-actions{display:grid;grid-template-columns:1fr 1fr}.s4s-walkin-title-row .s4s-actions .s4s-btn{min-width:0;width:100%}}

/* ERP V7: CA settlement + DSC expiry */
.s4s-walkin-tabs{overflow-x:auto;scrollbar-width:thin}.s4s-walkin-tabs>a,.s4s-walkin-tabs>span{min-width:120px;flex:0 0 auto}.s4s-ca-settlement-note{padding:12px 14px;border:1px solid var(--s4s-border,#dbe3ef);border-radius:12px;background:#f8fafc;margin-bottom:14px}.s4s-ca-ref{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}
@media(max-width:760px){.s4s-inline-filter{display:grid!important;grid-template-columns:1fr!important;width:100%}.s4s-inline-filter input,.s4s-inline-filter select,.s4s-inline-filter button{width:100%!important;min-width:0}.s4s-ca-payment-grid{grid-template-columns:1fr!important}.s4s-walkin-tabs{display:flex!important;gap:8px!important}.s4s-walkin-tabs>a,.s4s-walkin-tabs>span{min-width:112px}}


/* ERP V8 - DSC expiry monitor */
.s4s-expiry-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 16px}.s4s-expiry-summary{display:flex;flex-direction:column;gap:3px;padding:16px;border:1px solid #dfe5ec;border-radius:14px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 5px 18px rgba(15,23,42,.04)}.s4s-expiry-summary small{color:#64748b;font-weight:700}.s4s-expiry-summary strong{font-size:26px;line-height:1.05}.s4s-expiry-summary span{font-size:12px;color:#64748b}.s4s-expiry-summary.active{border-color:#166534;box-shadow:0 0 0 2px rgba(22,101,52,.1)}.s4s-expiry-summary.danger strong{color:#b42318}.s4s-expiry-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.s4s-expiry-filter label{min-width:170px}.s4s-expiry-filter label.grow{flex:1;min-width:240px}.s4s-expiry-filter input,.s4s-expiry-filter select{width:100%}.s4s-expiry-result-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:2px 0 12px}.s4s-expiry-result-head h2{margin:0}.s4s-expiry-result-head p{margin:4px 0 0;color:#64748b}.s4s-expiry-mobile{display:none}.s4s-expiry-mobile-card{border:1px solid #e2e8f0;border-radius:14px;padding:14px;background:#fff}.s4s-expiry-mobile-card .head{display:flex;justify-content:space-between;align-items:center;gap:10px}.s4s-expiry-mobile-card .head>div{display:flex;flex-direction:column}.s4s-expiry-mobile-card h3{margin:12px 0 2px;font-size:16px}.s4s-expiry-mobile-card p{margin:0;color:#64748b;font-size:13px}.s4s-expiry-mobile-card .grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.s4s-expiry-mobile-card .grid>div{display:flex;flex-direction:column;padding:10px;border-radius:10px;background:#f8fafc}.s4s-expiry-mobile-card .grid small,.s4s-expiry-mobile-card .grid span{font-size:11px;color:#64748b}.s4s-expiry-mobile-card .meta{margin-bottom:10px}.s4s-expiry-mobile-card .actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:900px){.s4s-expiry-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.s4s-expiry-desktop{display:none}.s4s-expiry-mobile{display:grid;gap:12px}.s4s-expiry-filter{display:grid;grid-template-columns:1fr 1fr}.s4s-expiry-filter label,.s4s-expiry-filter label.grow{min-width:0}.s4s-expiry-filter .grow,.s4s-expiry-filter .actions{grid-column:1/-1}.s4s-expiry-title-row{align-items:flex-start}}
@media(max-width:560px){.s4s-expiry-summary-grid{grid-template-columns:1fr 1fr;gap:8px}.s4s-expiry-summary{padding:12px}.s4s-expiry-filter{grid-template-columns:1fr}.s4s-expiry-filter .grow,.s4s-expiry-filter .actions{grid-column:auto}.s4s-expiry-mobile-card .grid{grid-template-columns:1fr}.s4s-expiry-title-row .s4s-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.s4s-expiry-title-row .s4s-actions .s4s-btn{text-align:center}}

/* Shared responsive shell and accessible controls. */
.s4s-authenticated main,.s4s-page,.s4s-card{min-width:0}
.s4s-authenticated :is(input,select,textarea){max-width:100%;box-sizing:border-box}
.s4s-authenticated :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #176dc2;outline-offset:3px}
.s4s-authenticated .s4s-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.s4s-authenticated .s4s-title-row{gap:16px;flex-wrap:wrap}
.s4s-authenticated :is(.s4s-actions,.s4s-inline-filter){flex-wrap:wrap}
.s4s-navigation-backdrop{display:none}
@media(max-width:920px){
 .s4s-authenticated :is(.s4s-erp-form,.s4s-form-grid){grid-template-columns:minmax(0,1fr)!important}
 .s4s-authenticated :is(.s4s-erp-form,.s4s-form-grid)>*{min-width:0;grid-column:auto!important}
 .s4s-authenticated :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px!important;min-height:44px}
 .s4s-authenticated :is(.s4s-btn,.s4s-nav a,button,summary){min-height:44px}
 .s4s-authenticated .s4s-page{max-width:100%;box-sizing:border-box}
 .s4s-authenticated .s4s-title-row .s4s-actions{width:100%}
 .s4s-authenticated .s4s-page-subtitle{line-height:1.55}
 .s4s-authenticated .s4s-card{border-radius:14px}
 .s4s-authenticated .s4s-topbar{max-width:calc(100vw - 60px)}
 .s4s-sidebar-open .s4s-navigation-backdrop{display:block;position:fixed;inset:0;background:rgba(15,23,42,.42);z-index:1040;border:0;border-radius:0}
 .s4s-sidebar-open .s4s-topbar{z-index:1050!important}
 .s4s-sidebar-trigger{z-index:1060!important}
 body.s4s-sidebar-open{overflow:hidden}
}
@media(prefers-reduced-motion:reduce){
 .s4s-authenticated *, .s4s-authenticated *::before, .s4s-authenticated *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}
.s4s-skip-link{position:fixed;left:12px;top:-100px;z-index:12000;padding:12px 16px;background:#fff;color:#123c67;border:2px solid #176dc2;border-radius:8px}
.s4s-skip-link:focus{top:12px}
