

/* Central MySTS shell v0.14: isolated demonstration, visually scoped to p- classes */
.p-login,.p-shell{font-family:system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
.p-login{min-height:100vh;display:grid;grid-template-columns:minmax(350px,1.05fr) minmax(420px,.95fr);background:#071627;color:#fff}
.p-login-hero{position:relative;overflow:hidden;padding:clamp(40px,6vw,100px);display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#081b30 0%,#0c2e4b 60%,#10416c 100%)}
.p-login-hero:after{content:'';height:490px;width:490px;border:1px solid #458cc844;border-radius:50%;position:absolute;top:12%;right:-250px;box-shadow:0 0 0 85px #5c9bcc0a,0 0 0 170px #5c9bcc07;pointer-events:none}
.p-signature{font-size:12px;letter-spacing:2.9px;font-weight:850;color:#97c4ed}
.p-wordmark{font-size:clamp(48px,7vw,85px);font-weight:850;letter-spacing:-4px;line-height:1;margin:21px 0 7px}.p-wordmark span{color:#42acfa}
.p-hero-sub{letter-spacing:2.8px;font-size:13px;color:#aac7df}
.p-login-hero h1{font-size:clamp(30px,3.5vw,48px);line-height:1.13;max-width:680px;letter-spacing:-1.3px;margin-bottom:17px}
.p-login-hero p{font-size:15px;color:#c2d6e7;max-width:510px;line-height:1.75}
.p-mini-row{display:flex;align-items:center;gap:10px;font-size:12px;color:#aac7de;flex-wrap:wrap}
.p-login-formside{display:grid;place-items:center;padding:42px;background:#f5f8fc;color:#152b40}
.p-login-card{width:min(100%,460px);border:1px solid #e0e9f1;background:white;box-shadow:0 25px 75px #051b3215;border-radius:22px;padding:39px}
.p-login-eyebrow{font-size:11px;letter-spacing:2px;color:#2688d2;text-transform:uppercase;font-weight:850}
.p-login-card h2{font-size:31px;letter-spacing:-1px;margin:9px 0 4px}
.p-login-card p{color:#6a8095;font-size:13px;line-height:1.7;margin-bottom:26px}
.p-label{display:block;font-size:11px;color:#60778a;font-weight:800;margin:15px 0 7px;letter-spacing:.3px}
.p-input,.p-select,.p-textarea{width:100%;padding:12px 13px;border:1px solid #d8e3ed;background:white;color:#21354b;border-radius:9px;font-size:13px;min-height:43px}
.p-textarea{min-height:80px;resize:vertical}
.p-input:focus,.p-select:focus,.p-textarea:focus{outline:3px solid #acd9fb;outline-offset:1px}
.p-button{border:1px solid #d4e2ee;border-radius:9px;min-height:38px;padding:10px 16px;color:#1a415e;background:white;font-weight:750;font-size:12px;display:inline-flex;gap:8px;align-items:center;justify-content:center;white-space:normal;text-align:center;cursor:pointer}
.p-button:hover{background:#ebf6fe}.p-button.blue{background:#168cf0;border-color:#168cf0;color:#fff}.p-button.blue:hover{background:#057cdb}.p-button.dark{background:#152c43;color:#fff;border-color:#152c43}.p-button.green{background:#0d956f;color:white;border-color:#0d956f}.p-button:disabled{opacity:.45;cursor:not-allowed}.p-button.full{width:100%}.p-button.small{font-size:11px;padding:7px 10px;min-height:31px}
.p-demo-note{background:#fff6e8;border:1px solid #f1d9b3;border-radius:9px;color:#825d29;font-size:11px;padding:12px 14px;margin-top:22px;line-height:1.65}
.p-shell{min-height:100vh;background:#f0f5fa;display:grid;grid-template-columns:242px minmax(0,1fr);color:#173049}
.p-sidebar{background:#0a1b2e;color:#b5cadd;display:flex;flex-direction:column;padding:24px 14px;min-height:100vh}
.p-sidebar-brand{padding:10px 14px 25px;border-bottom:1px solid #22415e;margin-bottom:18px}
.p-sidebar-logo{font-size:29px;line-height:1.1;font-weight:850;letter-spacing:-1px;color:#fff}.p-sidebar-logo span{color:#3aa8fb}
.p-sidebar-label{color:#6f92b2;font-size:10px;letter-spacing:1.9px;font-weight:900;padding:16px 12px 7px}
.p-side-link{border:0;background:transparent;color:#bed0de;text-align:left;padding:12px 13px;width:100%;border-radius:8px;margin:2px 0;font-size:13px;font-weight:640;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px}
.p-side-link:hover,.p-side-link.active{background:#173b59;color:white}.p-side-link.active{box-shadow:inset 3px 0 #41adfb}
.p-sidebar-bottom{margin-top:auto;border:1px solid #2a4460;padding:15px;border-radius:10px;font-size:11px;line-height:1.7;background:#12283e;color:#a8c4dc}
.p-main{min-width:0}.p-top{min-height:77px;background:white;border-bottom:1px solid #e0e9f1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px clamp(20px,3vw,42px)}
.p-top-title{font-weight:800;color:#14324c}.p-top-sub{color:#8194a8;font-size:11px;margin-top:3px}
.p-top-right{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.p-identity{font-size:12px;color:#3b5670;font-weight:700}.p-identity-avatar{display:inline-grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#d5edfc;color:#1a78ae;margin-left:7px}
.p-content{padding:32px clamp(19px,3vw,43px) 55px;max-width:1550px;margin:0 auto}.p-eyebrow{font-weight:850;letter-spacing:2px;font-size:10px;text-transform:uppercase;color:#1882d4}
.p-h1{font-size:30px;line-height:1.2;letter-spacing:-1px;margin:4px 0 6px;color:#0d2840}.p-desc{font-size:13px;color:#6f869b;line-height:1.65;margin:0 0 22px}
.p-hero-card{background:linear-gradient(110deg,#0b2845,#174f7a);border-radius:15px;padding:25px 28px;color:white;display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:24px}
.p-hero-card h2{font-size:23px;letter-spacing:-.6px;margin:3px 0 5px;color:white}.p-hero-card p{font-size:12px;color:#d0e3f2;margin:0;max-width:750px}
.p-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:0 0 24px}
.p-metric{background:white;border:1px solid #e1e9f1;border-radius:12px;padding:18px;text-align:left;cursor:pointer;box-shadow:0 5px 25px #0b2f4b07}
.p-metric span{font-size:11px;color:#66819a}.p-metric strong{display:block;font-size:29px;color:#14304c;line-height:1.3}.p-metric small{color:#177ac3;font-size:11px;font-weight:750}
.p-panel{background:#fff;border:1px solid #e0e9f1;border-radius:13px;box-shadow:0 6px 26px #0b2f4b07;margin-bottom:20px;overflow:hidden}
.p-panel-head{padding:19px 21px;border-bottom:1px solid #ecf1f5;display:flex;justify-content:space-between;gap:12px;align-items:center}.p-panel-head h3{font-size:15px;margin:0;color:#12324d}.p-panel-head p{font-size:11px;color:#7c92a5;margin:3px 0 0}.p-panel-body{padding:21px}
.p-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.p-module{display:flex;flex-direction:column;border:1px solid #dee9f2;border-radius:13px;padding:20px;background:#fff;gap:9px;min-height:188px}.p-module-icon{width:42px;height:42px;background:#eaf5ff;border-radius:11px;display:grid;place-items:center;color:#177dc4;font-size:23px}.p-module h3{font-size:15px;margin:2px 0 0}.p-module p{margin:0;color:#71879b;font-size:11px;line-height:1.6;flex:1}
.p-tag{display:inline-block;border-radius:99px;padding:4px 8px;font-size:10px;font-weight:850;background:#e8f1f8;color:#3a6b8e;white-space:nowrap}.p-tag.green{background:#dff5e9;color:#087747}.p-tag.amber{background:#fff1d7;color:#996a0b}.p-tag.blue{background:#e8f2ff;color:#1f6eb0}.p-tag.grey{background:#edf1f5;color:#738598}
.p-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.p-space{justify-content:space-between}.p-tablewrap{overflow:auto}.p-table{width:100%;min-width:730px;border-collapse:collapse}.p-table th{text-align:left;color:#788ba0;background:#f7fafc;padding:12px 14px;font-size:10px;letter-spacing:.65px;text-transform:uppercase}.p-table td{padding:14px;border-bottom:1px solid #eef2f6;color:#405970;font-size:12px;vertical-align:middle}.p-table tr:last-child td{border-bottom:0}.p-table strong{color:#14334e}
.p-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:19px}.p-toolbar .p-input{max-width:280px}.p-toolbar .p-select{max-width:195px}
.p-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 16px}.p-span2{grid-column:1/-1}.p-line-items{margin:20px 0 0;padding:16px;border:1px solid #e2ebf1;border-radius:10px;background:#f9fbfd}.p-line{border-bottom:1px solid #e3ebf2;padding:12px 0;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:11px}.p-line:last-child{border-bottom:0}
.p-order-banner{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;background:#eaf5fc;border-radius:10px;padding:18px;margin:15px 0}.p-order-banner small{display:block;color:#6a8ca7;font-size:11px;margin-top:3px}.p-section-title{font-size:15px;font-weight:850;color:#16334d;margin:26px 0 13px}.p-note{font-size:11px;color:#6e8498;line-height:1.6}.p-empty{padding:45px 22px;text-align:center;color:#75889a}.p-success{padding:13px 15px;border-radius:10px;background:#e5f6ef;border:1px solid #c6e9d9;color:#107a5d;font-size:12px}
#portalHrReturn{display:block;width:calc(100% - 20px);margin:12px 10px 5px;padding:10px;background:#204a6d;border:1px solid #38698f;border-radius:8px;color:#fff;text-align:left;font-weight:800;font-size:12px;cursor:pointer}
#portalHrReturn:hover{background:#28648d}
@media (max-width:1100px){.p-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:850px){.p-shell{grid-template-columns:1fr}.p-sidebar{min-height:unset}.p-login{grid-template-columns:1fr}.p-login-hero{min-height:295px;padding:30px}.p-login-hero h1{font-size:29px}.p-login-formside{padding:22px}.p-login-card{padding:26px}.p-card-grid{grid-template-columns:1fr}.p-form-grid,.p-line{grid-template-columns:1fr}.p-top{flex-wrap:wrap}}

:root{--navy:#0b1626;--navy2:#101f32;--navy3:#182c43;--blue:#168cf0;--sky:#9fc9ec;--red:#df4450;--bg:#f1f5fa;--white:#fff;--text:#192839;--muted:#718398;--line:#dfE8f0;--green:#158e68;--amber:#aa6f14;--shadow:0 12px 34px rgba(9,29,51,.06)}*{box-sizing:border-box}body{margin:0;font:14px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #80c5ff;outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.45}.app{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.side{background:var(--navy);color:#c2d1df;padding:28px 16px;display:flex;flex-direction:column}.brand{padding:2px 13px 32px;border-bottom:1px solid #22364b}.brand-small{font-size:10px;letter-spacing:2.15px;color:#94b5d6;font-weight:700}.brand-main{font-size:30px;font-weight:850;line-height:1.13;letter-spacing:-.9px;color:white}.brand-main span{color:#3aa8ff}.brand-sub{font-size:10px;letter-spacing:1.65px;color:#b5c7d9;margin-top:6px}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:1.8px;color:#718da7;padding:25px 14px 9px;font-weight:700}.nav{display:flex;flex-direction:column;gap:4px}.nav button{background:transparent;color:#aabfd1;border:0;padding:12px 14px;text-align:left;border-radius:9px;display:flex;align-items:center;gap:12px;font-weight:550;width:100%}.nav button:hover{background:#152b43;color:white}.nav button.active{background:#173657;color:#fff;box-shadow:inset 3px 0 #3bafff}.nav .glyph{display:inline-grid;place-items:center;width:21px;height:21px;font-size:17px}.side-foot{margin-top:auto;background:#15283c;border:1px solid #23405b;padding:14px;border-radius:12px;color:#c4d7e7}.side-foot strong{display:block;color:#fff;font-size:12px}.side-foot small{display:block;font-size:11px;color:#95adc3;margin-top:3px}.main{min-width:0}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);padding:0 34px;display:flex;justify-content:space-between;align-items:center}.breadcrumbs{display:flex;align-items:center;gap:10px;color:#6b8197;font-size:13px}.breadcrumbs b{color:#203449}.top-right{display:flex;align-items:center;gap:13px}.demo-pill{color:#965a0d;background:#fff4e1;border:1px solid #f5dfa9;font-size:11px;font-weight:750;border-radius:99px;padding:7px 10px;white-space:nowrap}.avatar-top{width:34px;height:34px;border-radius:50%;background:#dceefc;color:#1565a0;display:grid;place-items:center;font-weight:800}.content{padding:32px 36px 46px;max-width:1430px;margin:auto}.page-title{font-size:30px;letter-spacing:-1.1px;margin:0;font-weight:780;color:#11263d}.subtitle{color:#728498;font-size:13px;margin:5px 0 25px}.hero{background:linear-gradient(110deg,#0c2036,#153e60 75%,#155585);border-radius:16px;padding:26px 30px;color:white;display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:24px;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero:after{content:"";height:230px;width:230px;border:1px solid #468abd44;position:absolute;right:80px;top:-115px;border-radius:50%;box-shadow:0 0 0 35px #70a8c80c,0 0 0 85px #70a8c80a;pointer-events:none}.hero .eyebrow{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:#9ec8e8;font-weight:850}.hero h2{font-size:22px;margin:6px 0 3px;letter-spacing:-.5px}.hero p{margin:0;color:#c1d4e5;max-width:620px;font-size:12px}.btn{border:1px solid #cad8e4;background:white;border-radius:8px;padding:10px 14px;color:#18324a;font-weight:750;font-size:12px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn:hover{background:#f3f8fc}.btn.primary{background:#1687e2;border-color:#1687e2;color:white}.btn.primary:hover{background:#0878d6}.btn.dark{background:#203d5a;color:white;border-color:#203d5a}.btn.danger{color:#bd3b46;border-color:#efcbd0;background:#fff}.btn.ghost{background:transparent;border-color:#d8e3ed}.btn.small{padding:7px 10px;font-size:11px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:23px}.stat,.panel{background:white;border:1px solid #e2e9f0;border-radius:12px;box-shadow:var(--shadow)}.stat{padding:19px 20px}.stat .stat-label{font-size:11px;color:#73859a;font-weight:650}.stat-value{font-size:30px;letter-spacing:-1px;color:#142b43;font-weight:800;margin-top:2px}.stat-small{font-size:11px;color:#7c8ea0;margin-top:3px}.accent-bar{width:28px;height:3px;background:#2b98e7;margin-top:13px;border-radius:4px}.accent-bar.rose{background:#d95862}.accent-bar.amber{background:#efb255}.accent-bar.green{background:#2aad88}.columns{display:grid;grid-template-columns:1.55fr 1fr;gap:20px}.panel{overflow:hidden}.panel-head{padding:19px 21px;border-bottom:1px solid #edf1f6;display:flex;align-items:center;justify-content:space-between;gap:13px}.panel-head h3{font-size:14px;color:#152d46;margin:0;font-weight:780}.panel-head p{font-size:11px;color:#8192a5;margin:3px 0 0}.panel-body{padding:19px 21px}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:590px}th{text-align:left;background:#f8fafc;color:#7c8d9d;font-size:10px;text-transform:uppercase;letter-spacing:.7px;font-weight:800;padding:12px 14px}td{padding:13px 14px;border-bottom:1px solid #edf1f4;color:#405265;font-size:12px}tr:last-child td{border-bottom:0}td strong{color:#182f47;font-weight:750}.avatar{display:inline-grid;place-items:center;border-radius:50%;width:34px;height:34px;background:#dcecf9;color:#176eae;font-size:11px;font-weight:800;flex-shrink:0}.avatar.violet{background:#e8e5fb;color:#6254bb}.avatar.green{background:#ddf4eb;color:#168265}.avatar.coral{background:#fde7e6;color:#b75b54}.person{display:flex;gap:10px;align-items:center}.person span small{display:block;color:#8a9aab;font-size:10px}.badge{border-radius:99px;padding:4px 8px;font-size:10px;font-weight:750;white-space:nowrap;display:inline-block}.badge.green{background:#e4f6ee;color:#13825f}.badge.amber{background:#fff3da;color:#a1680d}.badge.red{background:#fde8ec;color:#b53e4a}.badge.blue{background:#e8f3fd;color:#286da1}.badge.grey{background:#e9eff4;color:#64798e}.text-btn{border:0;background:transparent;color:#147cce;font-weight:750;padding:7px 3px;font-size:11px}.text-btn:hover{text-decoration:underline}.actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.empty{color:#7d8d9f;padding:24px;text-align:center}.itemline{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #edf1f4}.itemline:last-child{border-bottom:0}.itemline strong{font-size:12px;display:block}.itemline small{color:#8294a5;font-size:11px}.alerts{display:grid;gap:8px}.alert{display:flex;gap:10px;align-items:start;background:#f8fafc;border-radius:8px;padding:11px;border:1px solid #e5edf5}.alert .dot{height:8px;width:8px;flex-shrink:0;border-radius:50%;background:#e4a147;margin-top:5px}.alert strong{display:block;font-size:12px}.alert small{color:#73899f;font-size:11px}.subheader{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.search{border:1px solid #dce5ed;border-radius:8px;padding:11px 12px;min-width:235px;background:white;color:#1e364e}.filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.minor{font-size:12px;color:#7d90a4}.progress-track{height:8px;background:#e6eef6;border-radius:12px;overflow:hidden}.progress-bar{height:100%;background:#228fe2;border-radius:12px}.employee-detail{display:grid;grid-template-columns:290px 1fr;gap:20px}.idpanel{text-align:center;padding:22px}.idpanel .bigavatar{display:grid;place-items:center;margin:0 auto 13px;border-radius:50%;height:85px;width:85px;background:linear-gradient(150deg,#dceffb,#d4e7fd);color:#2379b3;font-weight:800;font-size:26px}.idpanel h3{margin:0;font-size:20px}.idpanel p{margin:2px 0 14px;color:#8094a5;font-size:12px}.kv{display:grid;grid-template-columns:1fr 1fr;gap:14px}.kv>div{background:#f8fafc;border:1px solid #edf2f6;border-radius:8px;padding:12px;min-width:0}.kv span{display:block;color:#8192a4;font-size:10px;margin-bottom:4px}.kv strong{font-size:12px;overflow-wrap:anywhere}.section-kicker{font-weight:800;font-size:12px;letter-spacing:.5px;color:#234966;margin-bottom:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{display:flex;flex-direction:column;gap:6px;color:#567087;font-size:11px;font-weight:750}.form-grid input,.form-grid select,.form-grid textarea{border-radius:8px;border:1px solid #dbe5ed;padding:10px;background:white;color:#152a3e;min-width:0}.form-grid .span2{grid-column:span 2}.form-grid .form-actions{grid-column:span 2;display:flex;justify-content:flex-end;gap:9px;margin-top:7px}.checklist{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.checktile{border:1px solid #e0e8ef;border-radius:9px;padding:12px;display:flex;align-items:start;gap:10px;background:#fafcfe}.checktile input{accent-color:#188ee7;margin-top:3px}.checktile strong{font-size:12px;display:block}.checktile small{font-size:10px;display:block;color:#8b9ba9;margin-top:3px}.demo-note{font-size:11px;color:#73899f;line-height:1.6;margin-top:17px}.toast{position:fixed;bottom:24px;right:25px;background:#132b44;color:white;padding:13px 17px;border-radius:9px;box-shadow:0 9px 30px #0004;font-size:13px;z-index:100;display:none;max-width:450px}.toast.show{display:block}.modalbg{position:fixed;inset:0;background:#0b1b2fc9;display:none;align-items:center;justify-content:center;z-index:50;padding:14px}.modalbg.open{display:flex}.modal{width:min(550px,100%);background:white;border-radius:15px;box-shadow:0 22px 60px #06152644;overflow:hidden;max-height:calc(100vh - 28px);overflow-y:auto}.modal-h{padding:19px 23px;border-bottom:1px solid #e4ebf2;display:flex;justify-content:space-between;align-items:center}.modal-h h3{font-size:17px;margin:0}.modal-b{padding:22px}.close{border:0;background:transparent;font-size:23px;color:#788b9b;padding:0 5px}.footer-note{padding-top:22px;color:#8d9fb0;text-align:center;font-size:11px}.divider{height:1px;background:#e9eff5;margin:18px 0}.back{border:0;background:none;color:#2787c8;padding:0 0 15px;font-weight:800;font-size:12px}@media(max-width:1050px){.stats{grid-template-columns:repeat(2,1fr)}.columns,.employee-detail{grid-template-columns:1fr}.content{padding:24px}.topbar{padding:0 24px}}@media(max-width:720px){.app{grid-template-columns:1fr}.side{padding:13px}.brand{padding:4px 6px 10px;border:0}.brand-main{font-size:22px}.brand-small,.brand-sub,.nav-label,.side-foot{display:none}.nav{flex-direction:row;overflow-x:auto}.nav button{white-space:nowrap;font-size:12px;padding:9px 10px}.topbar{height:auto;padding:12px 18px}.content{padding:20px 15px}.page-title{font-size:25px}.hero{padding:21px;display:block}.hero .btn{margin-top:16px}.stats{gap:10px}.stat{padding:14px}.stat-value{font-size:25px}.subheader{display:block}.filters{margin-top:12px}.search{min-width:0;width:100%}.kv,.checklist{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .span2,.form-grid .form-actions{grid-column:span 1}}
@media print{.side,.topbar,.btn,.text-btn,.nav,.demo-note{display:none!important}.app{display:block}.content{padding:0}.panel,.stat{box-shadow:none}.page-title{font-size:24px}}

.stat-link{width:100%;text-align:left;font-family:inherit;transition:transform .15s,border-color .15s,box-shadow .15s;cursor:pointer}.stat-link:hover{transform:translateY(-2px);border-color:#a4cbed;box-shadow:0 12px 25px #13304d18}.stat-link:focus-visible{outline:3px solid #168cf0;outline-offset:3px}.stat-link .stat-foot{color:#167fd0;font-size:11px;font-weight:750;margin-top:9px}.clickalert{width:100%;text-align:left;cursor:pointer}.clickalert:hover{border-color:#9bc8ec;background:#eef7fd}.click-row{cursor:pointer}.click-row:hover{background:#f6faff}.leave-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.leave-total{background:#f4f8fc;border:1px solid #dfe8f2;border-radius:8px;padding:10px;text-align:center}.leave-total strong{display:block;font-size:21px;color:#102d46}.leave-total span{font-size:10px;color:#688199}.leave-total.available{background:#eaf7f1;border-color:#b9dfcc}.leave-total.available strong{color:#13805d}.leave-warning{border:1px solid #efb6bc;background:#fff0f2;color:#a53240;border-radius:8px;padding:11px 12px;margin:12px 0;font-size:12px;font-weight:700}.leave-ok{border:1px solid #b4decf;background:#f0faf4;color:#087653;border-radius:8px;padding:11px 12px;margin:12px 0;font-size:12px;font-weight:700}.bigavatar img,.avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.bigavatar.photo{overflow:hidden;padding:0}.secure-field{background:#fff9f1!important;border-color:#f0e4d5!important}.profile-note{color:#93580d;font-size:11px;background:#fff6e5;border:1px solid #f0dfba;border-radius:8px;padding:10px;margin:12px 0}.action-strip{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.empty-state{font-size:12px;color:#647e95}.mini{font-size:10px;color:#7890a2}.stat-stack{display:flex;gap:4px;flex-direction:column}.pill-link{background:transparent;color:#167dc7;border:none;padding:3px 0;font-size:11px;font-weight:750;text-decoration:underline}@media(max-width:720px){.leave-totals{grid-template-columns:repeat(2,1fr)}}

/* HR revision v0.3: certificate drill-down and development scope */
.cert-open .modal{width:min(920px,100%)}
.cert-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:15px;flex-wrap:wrap}
.cert-warning{font-size:11px;font-weight:850;color:#ae3441;background:#fff0f1;border:1px solid #f2c6ca;border-radius:8px;padding:9px}
.cert-page{position:relative;min-height:445px;background:#fff;border:10px solid #f5f8fb;outline:2px solid #d5e5f1;padding:24px 34px 18px;text-align:center;overflow:hidden;color:#0b2740}
.cert-accent{height:6px;background:linear-gradient(90deg,#0b2842 55%,#178ce8 55%,#178ce8 93%,#d74651 93%);position:absolute;top:0;left:0;right:0}
.cert-brand{font-weight:850;letter-spacing:3px;font-size:17px;text-align:left;color:#1266a9;position:relative;z-index:1}
.cert-brand span{display:block;letter-spacing:2px;font-size:12px;color:#bb2c41}
.cert-brand small{display:block;color:#637a8c;letter-spacing:.4px;font-size:10px;font-weight:600;margin-top:2px}
.cert-label{margin:21px 0 9px;font-weight:800;letter-spacing:4px;font-size:18px}
.cert-desc{font-size:12px;color:#687e90;position:relative;z-index:1}
.cert-person{font-size:30px;line-height:1.2;font-weight:850;margin:5px 0 10px;position:relative;z-index:1}
.cert-course{font-size:22px;font-weight:850;color:#1665a0;margin:6px 0 18px;position:relative;z-index:1}
.cert-info{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;border-top:1px solid #dce7f0;padding-top:15px;position:relative;z-index:1}
.cert-info div{display:flex;flex-direction:column;gap:4px}.cert-info small{color:#728599;font-size:10px}.cert-info strong{font-size:12px}
.cert-watermark{position:absolute;top:40%;left:0;right:0;font-size:88px;transform:rotate(-20deg);font-weight:950;letter-spacing:12px;color:#cd243315;pointer-events:none;z-index:0}
.cert-footer{border-top:1px solid #dce7f0;margin-top:18px;padding-top:11px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;text-align:left;font-size:10px;color:#6e8599;position:relative;z-index:1}
.cert-footer strong{font-weight:900;color:#c52f41;letter-spacing:.5px}
.scope-item{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-bottom:1px solid #e4edf5}.scope-item:last-child{border:0}.scope-num{border:1px solid #cddfec;border-radius:9px;background:#f3f8fd;font-size:12px;padding:9px;color:#1875b5;font-weight:850}.scope-content{flex:1}.scope-header{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between}.scope-header strong{font-size:13px}.scope-status{font-size:10px;color:#2277a9;background:#eaf4fb;padding:4px 9px;border-radius:50px;font-weight:800}.scope-content p{color:#647d91;margin:5px 0 0;font-size:12px}
@media print{
 @page{size:A4 landscape;margin:12mm}
 body{margin:0!important;padding:0!important;background:white!important}
 .app{display:none!important}
 .modalbg{display:block!important;position:static!important;inset:auto!important;padding:0!important;background:white!important}
 .modalbg .modal{display:block!important;position:static!important;width:100%!important;max-height:none!important;overflow:visible!important;box-shadow:none!important}
 .modalbg .modal-h{display:none!important}
 .modalbg .modal-b{display:block!important;padding:0!important}
 .modalbg .modal-b>*:not(#printCertificate){display:none!important}
 .cert-page{position:static;top:0;left:0;width:100%;height:170mm;min-height:0;border:9px solid #e2ebf2;outline:none;margin:0;padding:16mm 19mm;background:white!important;color:#0b2740!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .cert-watermark{color:#c1262d22!important;font-size:140px;top:36%}
 .cert-label{font-size:24px;margin:22px 0}.cert-person{font-size:38px}.cert-course{font-size:30px;margin-bottom:25px}
 .cert-info strong{font-size:14px}.cert-footer{margin-top:34px}
}

.view-switch{display:flex;align-items:center;gap:8px;color:#64798e;font-size:11px;font-weight:700}
.view-switch select,.who-switch{border:1px solid #cbdbea;padding:8px 9px;background:#f5faff;color:#1c3b57;border-radius:8px;font-size:12px;max-width:165px}
.side-note{font-size:11px;color:#9fb8ce;border-top:1px solid #273e54;margin-top:15px;padding:13px 7px;line-height:1.6}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 21px}
.quick{background:#fff;border:1px solid #e0e9f1;border-radius:12px;padding:17px;text-align:left;box-shadow:var(--shadow);min-height:112px;display:flex;flex-direction:column;gap:7px}
.quick:hover,.stat-link:hover{border-color:#8dc8f6;box-shadow:0 9px 28px #1077bc17;transform:translateY(-1px)}
.quick strong{font-size:13px;color:#12324f}.quick small{color:#6e8295;font-size:11px}
.quick .qi{color:#177dcc;font-size:19px}
.notice-list{display:grid;gap:10px}.notice{border:1px solid #dce7f0;background:#f8fbfe;border-radius:10px;padding:13px 15px;display:flex;justify-content:space-between;gap:15px;align-items:center}
.notice.urgent{background:#fff8f4;border-color:#f4dccd}.notice.warn{background:#fffbf2;border-color:#f0e5c8}
.notice strong{display:block;font-size:12px;color:#243b50}.notice small{display:block;font-size:11px;color:#6f8499;margin-top:3px}.notice .btn{flex-shrink:0}
.vehicle-banner{display:flex;gap:16px;align-items:center;padding:16px;border:1px solid #e2ebf3;border-radius:12px;background:#f7fbff}
.vehicle-photo{width:124px;height:85px;object-fit:cover;border-radius:9px;background:#e1effa;display:grid;place-items:center;color:#2d668e;flex-shrink:0;font-size:32px;border:1px solid #d6e6f3}
.vehicle-photo img{width:100%;height:100%;object-fit:cover;border-radius:9px}
.vehicle-banner h3{margin:0;font-size:17px;color:#163049}.vehicle-banner p{margin:2px 0;color:#72869a;font-size:12px}
.vehicle-card{background:white;border:1px solid #e3ebf2;border-radius:12px;box-shadow:var(--shadow);padding:17px;margin-bottom:13px}
.vehicle-card-top{display:flex;align-items:center;gap:15px}.vehicle-card-top .grow{flex:1}
.kv.tight>div{padding:10px}.smallnote{font-size:11px;color:#8192a4;margin-top:12px;line-height:1.6}
.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 18px}.tab{border-radius:8px;border:1px solid #d8e5ef;background:#fff;color:#587188;padding:9px 13px;font-size:11px;font-weight:750;cursor:pointer}.tab.active{background:#163c5e;border-color:#163c5e;color:#fff}
.year-group{margin:12px 0;background:white;border:1px solid #e1e9f1;border-radius:10px;overflow:hidden}
.year-group summary{list-style:none;padding:15px 17px;cursor:pointer;display:flex;justify-content:space-between;font-size:13px;font-weight:750;color:#19364f}
.year-group summary::-webkit-details-marker{display:none}.year-group[open] summary{background:#f4f9fd;border-bottom:1px solid #dfeaf3}
.year-group .tablewrap{margin:0}.year-arrow{font-size:16px;color:#328bd0}.year-group[open] .year-arrow{transform:rotate(90deg)}
.compact-stat{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0 17px}.compact-stat span{font-size:11px;color:#72859b;background:#f3f8fc;border:1px solid #e0eaf2;padding:8px 10px;border-radius:8px}.compact-stat b{font-size:15px;color:#193e60}
.inline-danger{padding:12px;background:#fff4f3;border:1px solid #ffdddd;color:#a83b48;border-radius:9px;font-size:12px}
@media(max-width:1150px){.card-grid{grid-template-columns:repeat(2,1fr)}.top-right{gap:7px}}
@media(max-width:700px){.card-grid{grid-template-columns:1fr}.topbar{height:auto;min-height:76px;flex-wrap:wrap;padding:11px 16px;gap:8px}.top-right{flex-wrap:wrap}.view-switch span{display:none}.content{padding:22px 13px}.vehicle-banner{flex-wrap:wrap}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* v0.5: training requests and director approval queue */
.training-inline-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.training-inline-actions .badge{margin-left:2px}
.request-caption{font-size:11px;color:#7589a0;display:block;margin-top:5px}
.training-queue .itemline{align-items:flex-start}
.training-queue .actions{justify-content:flex-end}
.training-queue .itemline>div:first-child{min-width:0}
@media (max-width:840px){.training-queue .itemline{display:block}.training-queue .actions{justify-content:flex-start;margin-top:9px}}

/* HR v0.8 — executive confirmations and audit history */
.notify-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d9e5f0;background:#f5faff;color:#1b5e94;border-radius:9px;height:36px;min-width:40px;font-size:18px;cursor:pointer}
.notify-count{position:absolute;right:-6px;top:-7px;border-radius:15px;background:#dc4354;color:white;padding:1px 5px;min-width:19px;font-size:10px;border:2px solid white;font-weight:850}
.waiting-stat{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.trace-row{display:flex;align-items:center;gap:12px;justify-content:space-between;border-bottom:1px solid #e8eff5;padding:13px 0}
.trace-row:last-child{border:0}.trace-row strong{font-size:12px;display:block;color:#1a344e}.trace-row small{display:block;color:#7a8d9f;font-size:11px;margin-top:2px}
.trace-when{color:#607890;font-size:11px;white-space:nowrap}.history-filters{display:flex;gap:10px;flex-wrap:wrap;padding:17px 20px;background:#f8fbff;border-bottom:1px solid #e6eef5}
.history-filters label{color:#5a738a;font-size:11px;font-weight:750;display:flex;flex-direction:column;gap:5px}
.history-filters select{background:white;border:1px solid #cedde9;border-radius:7px;padding:8px;color:#173a55;min-width:135px}
.section-green{background:#ecf9f3;border:1px solid #cceadc;color:#12714e;padding:12px;border-radius:9px;font-size:12px}
.demo-flow{border:1px solid #cfe4f4;border-radius:10px;background:#f1f9ff;padding:13px;color:#315979;font-size:11px;margin:12px 0}
@media(max-width:850px){.trace-row{flex-wrap:wrap}.history-filters{display:grid;grid-template-columns:1fr 1fr}.notify-bell{min-width:34px}}

.vehicle-demo-clock{background:#eaf4fe;border:1px solid #c9dff2;border-radius:12px;padding:15px 18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.vehicle-demo-clock strong{display:block;color:#183a58;font-size:13px}.vehicle-demo-clock small{display:block;color:#66829a;font-size:11px}.vehicle-demo-clock input[type="date"]{border:1px solid #b8d0e4;padding:8px;border-radius:7px;background:#fff;color:#213f57}
.vehicle-card .notice{flex-wrap:wrap}.modal .activity-archive{margin:16px 0 0}
@media(max-width:900px){.vehicle-demo-clock{flex-direction:column;align-items:flex-start}}

/* v0.9: lean document library and per-staff expandable drawers */
.doc-index-controls{display:flex;align-items:end;gap:13px;flex-wrap:wrap;padding:14px 19px;background:#f8fbff;border-bottom:1px solid #e0e9f1}
.doc-index-controls label{display:grid;gap:5px;min-width:170px;flex:1;font-size:11px;color:#58758f;font-weight:750}
.doc-index-controls select,.doc-index-controls input{padding:10px;border:1px solid #cbdbe8;border-radius:8px;background:white;color:#1d3c57;font-size:13px}
.doc-accordion{border:1px solid #dfebf4;border-radius:11px;margin:10px 16px;background:#fff;overflow:hidden}
.doc-accordion>summary{list-style:none;display:flex;gap:12px;align-items:center;padding:13px 16px;cursor:pointer;background:#f8fbff;color:#193751}
.doc-accordion>summary::-webkit-details-marker{display:none}
.doc-accordion[open]>summary{background:#edf6ff;border-bottom:1px solid #d9e8f4}
.doc-accordion>summary .doc-title{flex:1;min-width:0}
.doc-accordion>summary .doc-title small{display:block;color:#68839b;font-weight:500;margin-top:2px}
.doc-accordion>summary .doc-count{font-size:11px;font-weight:800;padding:5px 8px;border-radius:6px;background:#e3eff9;color:#245171}
.doc-accordion>summary .doc-chevron{color:#5688ae;transition:transform .18s}
.doc-accordion[open]>summary .doc-chevron{transform:rotate(90deg)}
.doc-accordion .doc-inner{padding:13px 15px}
.doc-accordion .doc-inner table{min-width:580px}
.doc-accordion .doc-actions{margin-bottom:12px;display:flex;gap:9px;align-items:center;flex-wrap:wrap}


/* v0.11: compact expandable director registers and voluntary social connection */
.fold-section{background:#fff;border:1px solid #dbe5ef;border-radius:13px;margin:0 0 18px;box-shadow:var(--shadow);overflow:hidden}
.fold-section>summary{list-style:none;cursor:pointer;padding:17px 22px;display:flex;gap:12px;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#f8fbfe,#fff);border-bottom:0}
.fold-section>summary::-webkit-details-marker{display:none}
.fold-section[open]>summary{border-bottom:1px solid #e3ecf3}
.fold-section>summary strong{display:block;color:#142d45;font-size:14px}
.fold-section>summary small{display:block;color:#74869a;font-size:12px;margin-top:2px}
.fold-section .fold-caret{font-size:19px;color:#3a88c8;transition:transform .2s}.fold-section[open] .fold-caret{transform:rotate(90deg)}
.fold-section .fold-inner{padding:0}.fold-section .fold-inner>.panel{box-shadow:none;border:0;margin:0;border-radius:0}
.fold-section .fold-inner .panel-head{display:none}.fold-section .fold-inner .panel-body{padding:16px 20px}
.linkedin-icon{display:inline-flex;align-items:center;justify-content:center;background:#0a66c2;border-radius:4px;font-weight:850;color:white;width:23px;height:23px;font-size:15px;letter-spacing:-1px;font-family:Arial,sans-serif}
.linkedin-link{display:inline-flex;align-items:center;gap:9px;color:#075ea8;font-weight:700;text-decoration:none}.linkedin-link:hover{text-decoration:underline}
.notify-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.notify-clear{font-size:11px;color:#42627f}
@media (max-width:800px){.fold-section>summary{padding:14px}}

/* Stage 1 operations upgrades */
.p-compact-head,.p-compact-row{display:grid;grid-template-columns:105px minmax(126px,1.05fr) minmax(195px,1.6fr) 120px 98px 84px;gap:11px;align-items:center}
.p-compact-head{background:#f2f7fb;border-radius:9px;padding:12px 10px;color:#6a8196;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.2px}
.p-compact-row{border-bottom:1px solid #e9eff5;padding:13px 10px;font-size:12px;color:#3a526a}
.p-compact-row>div{min-width:0;overflow-wrap:anywhere}.p-compact-row strong{color:#163a54;font-size:12px}.p-compact-row small{display:block;color:#71869a;font-size:10.5px;line-height:1.5;margin-top:3px}
.p-ordercourse+ .p-ordercourse{margin-top:8px;padding-top:7px;border-top:1px solid #e6edf4}.p-ordercourse strong{font-size:11.5px}
.p-line-stage1{grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #d9e7f2;padding:15px;margin:12px 0;border-radius:10px;background:#fbfdff}.p-linehead{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}
.p-price-summary{padding:16px;border:1px solid #cfe6f8;border-radius:10px;background:#f1f8fe;color:#264b65;font-size:12px;line-height:1.8}
@media(max-width:1250px){.p-compact-head,.p-compact-row{grid-template-columns:95px minmax(115px,1fr) minmax(160px,1.6fr) 105px 76px 78px;gap:7px}}
@media(max-width:1080px){.p-compact-head{display:none}.p-compact-row{grid-template-columns:minmax(80px,.7fr) minmax(115px,1fr) minmax(170px,1.5fr);align-items:start;gap:10px;border:1px solid #dfeaf2;border-radius:9px;margin:9px 0}.p-compact-row>div:nth-child(4),.p-compact-row>div:nth-child(5),.p-compact-row>div:nth-child(6){grid-column:auto}}
@media(max-width:630px){.p-compact-row{grid-template-columns:1fr 1fr}.p-compact-row>div:nth-child(3){grid-column:1/-1}.p-line-stage1{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.p-line-stage1{grid-template-columns:1fr}}


/* Stage 2: co-branded customer view and order actions */
.p-brand-banner{display:flex;align-items:center;gap:16px;background:linear-gradient(105deg,#0a2037,#164e75);color:white;border-radius:14px;padding:20px 24px;margin:15px 0 18px;min-height:118px;box-shadow:0 9px 24px #00294a19}
.p-brand-mark{flex:0 0 auto;padding:7px;border-radius:9px;background:white;display:grid;place-items:center;min-width:124px}
.p-brand-support{flex:1;min-width:0;display:grid;gap:3px}.p-brand-support span{font-size:10px;letter-spacing:1.7px;color:#abcfe8;font-weight:800}.p-brand-support strong{font-size:18px;color:white}.p-brand-support small{font-size:11px;color:#abcfe8}
.p-company-logo{display:grid;place-items:center;background:#e1f2ff;color:#075a91;border:2px solid #81c8ee;border-radius:12px;font-weight:900}
.p-customer-tabs{display:flex;gap:8px;margin:21px 0 12px}.p-customer-tabs button{padding:11px 17px;border:1px solid #d4e2ee;border-radius:9px;background:white;color:#426079;font-weight:800;font-size:12px}.p-customer-tabs button.active{background:#126fbc;color:white;border-color:#126fbc}.p-customer-tabs span{font-size:11px;opacity:.7;margin-left:5px}
.p-customer-order{border:1px solid #dfebf5;border-radius:11px;padding:17px 18px;margin:0 0 14px;background:#fbfdff}.p-customer-order:last-child{margin-bottom:0}.p-customer-course{border-top:1px solid #e2edf5;padding:13px 0 10px;margin-top:11px}.p-customer-course strong{color:#1c3c58}.p-stage2-controls{margin-top:20px;border-top:1px solid #e4eaf1;padding-top:17px}.p-delegate-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:14px}.p-delegate-grid label{display:grid;gap:5px;color:#567087;font-size:11px;font-weight:750}.p-accept-label{display:flex;align-items:flex-start;gap:11px;padding:13px;margin-top:13px;background:#f2f8fc;border-radius:8px;font-size:12px}.p-accept-label input{margin-top:3px;flex:0 0 auto}
@media(max-width:760px){.p-brand-banner{flex-wrap:wrap}.p-brand-support{flex-basis:48%}.p-delegate-grid{grid-template-columns:1fr}.p-customer-tabs{flex-wrap:wrap}}

/* MySTS 2.0 Stage 3 / Instructor allocation and work schedule */
.p-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0}
.p-work-stat{background:#f2f7fb;border:1px solid #dce7f0;border-radius:12px;padding:15px}.p-work-stat strong{display:block;font-size:26px;color:#0a3554}.p-work-stat small{color:#62798b}
.p-work-list{display:grid;gap:12px}.p-work-item{border:1px solid #dce7f0;border-radius:12px;padding:17px;background:#fff}
.p-work-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.p-work-top h3{margin:0;font-size:16px;color:#173954}
.p-work-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 16px;margin:11px 0;font-size:12px;color:#526c81}
.p-work-info strong{color:#1b3950}.p-work-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.p-work-pending{background:#fff8ea;border:1px solid #f2d99a;border-radius:9px;padding:10px 12px;font-size:12px;color:#7a5a15;margin:12px 0}
.p-work-alert{background:#fdf2f0;border:1px solid #f4c8c2;border-radius:9px;padding:10px 12px;font-size:12px;color:#8d3733;margin:11px 0}
.p-work-neutral{padding:10px 12px;background:#eff7fd;border:1px solid #d2e8f8;color:#255a7c;border-radius:9px;font-size:12px;margin:10px 0}
.p-work-history{font-size:11px;color:#728599;border-top:1px solid #e5ecf2;padding-top:9px;margin-top:11px}
.p-work-price-shield{background:#ebf6ef;color:#2e6951;padding:10px 12px;border-radius:9px;font-size:12px;margin-bottom:15px}
.p-work-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:15px 0}.p-work-toolbar select{max-width:300px}
.p-work-empty{text-align:center;padding:36px 15px;background:#f7fafc;border:1px dashed #c7d9e6;border-radius:12px;color:#607a90}
.p-work-step{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.p-work-step .p-tag{font-size:10px}
@media(max-width:800px){.p-work-grid{grid-template-columns:1fr}.p-work-info{grid-template-columns:1fr}}

/* MySTS Stage 4 — learners, customers & departments */
.s4-top{align-items:flex-start;gap:20px;flex-wrap:wrap}
.s4-metrics{margin-top:15px}
.s4-filter-grid{display:grid;grid-template-columns:1.35fr 1fr .8fr;gap:12px;align-items:end;margin-bottom:14px}
.s4-filter-grid label,.s4-lbl{display:block;font-size:11px;color:#627d95;font-weight:850;letter-spacing:.35px}
.s4-filter-grid input,.s4-filter-grid select,.s4-lbl input,.s4-lbl select{margin-top:7px}
.s4-lbl{margin:12px 0 6px}.s4-lbl .p-textarea{margin-top:8px}
.s4-list{display:grid;gap:7px}
.s4-learner-row{border:1px solid #e0e9f2;border-radius:10px;padding:11px;display:flex;align-items:center;gap:12px;background:#fff}
.s4-avatar{height:45px;width:45px;flex:0 0 45px;object-fit:cover;border-radius:50%;border:1px solid #dbe9f3}
.s4-placeholder{display:grid;place-items:center;font-size:13px;font-weight:800;color:#297fbd;background:#e4f2fd}
.s4-person{flex:1;min-width:0}.s4-person strong{display:block;color:#1b3e5b;font-size:13px}.s4-person small{display:block;color:#6e8398;font-size:11px;line-height:1.6}
.s4-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}
.s4-actions{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;margin-top:16px}
.s4-candidate{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid #dce7ef;border-radius:9px;margin:8px 0}.s4-candidate>div:nth-child(2){flex:1}
.s4-profile-top{display:flex;gap:13px;align-items:center;border-bottom:1px solid #e1eaf3;padding-bottom:16px}
.s4-profile-top h3{font-size:21px;margin:0 0 3px}.s4-profile-top .s4-avatar{height:64px;width:64px;flex-basis:64px}
.s4-profile-section{border-top:1px solid #dce7f0;margin-top:18px;padding-top:14px}.s4-profile-section h4{margin:0 0 10px;font-size:14px;color:#153953}
.s4-cert-row{border:1px solid #e3eaf1;border-radius:7px;padding:10px 12px;margin:7px 0}.s4-cert-row strong{display:block;font-size:12px}.s4-cert-row small{display:block;color:#6b8295;font-size:11px;line-height:1.7;margin-top:3px}
.s4-details{border:1px solid #e1e9ef;border-radius:8px;margin:13px 0;padding:13px;background:#fafcff}.s4-details summary{cursor:pointer;color:#315773;font-size:12px;font-weight:800}.s4-details>.s4-grid-two{padding-top:12px}.s4-details p{font-size:12px;margin:5px 0;color:#4d677d}
.s4-reg-table{width:100%;border-collapse:collapse;font-size:12px}.s4-reg-table td{padding:9px 10px;border-bottom:1px solid #e2ebf2}.s4-reg-table td:first-child{color:#5a728a;width:42%}.s4-muted{color:#9caec0}
.s4-accept{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid #e2e9f0;border-radius:8px;margin:8px 0;font-size:12px;line-height:1.5}.s4-accept input{margin-top:3px}
.s4-alert{background:#fff4e6;color:#8a5720;border:1px solid #efcfa5;padding:12px;border-radius:9px;font-size:12px;line-height:1.7}
.s4-dept-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e0e8ef;padding:10px 4px;font-size:12px}
.s4-department-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.s4-department-card{display:flex;justify-content:space-between;gap:7px;align-items:center;text-align:left;padding:15px;border:1px solid #dce7f0;background:white;border-radius:9px;color:#1e4b6d;cursor:pointer}.s4-department-card:hover{background:#f2f8fc}.s4-department-card span{font-size:12px;font-weight:750}.s4-department-card strong{font-size:11px;color:#2186c6}
.s4-customer-panel{margin-top:18px}
@media(max-width:950px){.s4-filter-grid{grid-template-columns:1fr}.s4-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.s4-grid-two,.s4-department-cards{grid-template-columns:1fr}.s4-learner-row{flex-wrap:wrap}.s4-learner-row .p-tag{display:none}}

/* MySTS Stage 5 — compact course delivery & paperwork queue */
.s5-metrics{margin:16px 0}.s5-list{display:grid;gap:11px}.s5-item{border:1px solid #dbe6ef;border-radius:10px;padding:14px;background:#fff}.s5-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.s5-item-top strong{font-size:13px;color:#173b56}.s5-item-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px;border-top:1px solid #e8eef3;padding-top:12px}.s5-paper-pills{display:inline-flex;gap:4px;flex-wrap:wrap;vertical-align:middle;margin-top:5px}.s5-pill{display:inline-block;border-radius:5px;padding:4px 6px;font-size:10px;font-weight:800;letter-spacing:.25px;white-space:nowrap}.s5-pill.yes{background:#dff5eb;color:#197154}.s5-pill.no{background:#eef3f7;color:#72879a}.s5-state{display:inline-block;white-space:nowrap;font-size:10px;font-weight:800;border-radius:6px;padding:5px 9px;background:#eaf1f7;color:#526d83}.s5-state.bad{background:#fde8e5;color:#aa352f}.s5-state.ok{background:#e1f4e9;color:#277755}.s5-test-row{display:flex;flex-wrap:wrap;gap:9px;align-items:flex-end}.s5-test-row>label{flex:1;min-width:215px}.s5-warning{border:1px solid #d8e5ee;border-left:3px solid #3186c5;background:#f3f8fc;color:#435f76;font-size:12px;padding:12px;border-radius:7px;margin:12px 0;line-height:1.7}.s5-attendee{border:1px solid #dce7ef;border-radius:9px;padding:13px;margin:10px 0;background:#fbfdff}.s5-row-top{display:flex;justify-content:space-between;align-items:center}.s5-row-top strong{font-size:12px}.s5-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:10px}.s5-input-grid label{font-size:11px}.s5-input-grid input,.s5-input-grid select{margin-top:5px}.s5-paper-steps{border:1px solid #dde8f2;border-radius:9px;overflow:hidden;margin-top:15px}.s5-checkline{padding:12px;display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid #e2e9f0;font-size:12px}.s5-checkline:last-child{border-bottom:0}.s5-checkline strong{text-align:right;font-size:11px;color:#23765c}.s5-checkline small{display:block;color:#627d91}.s5-action-buttons{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.s5-history{border:1px solid #dde9f2;border-radius:9px;margin-top:13px;padding:12px}.s5-history summary{cursor:pointer;color:#194765;font-size:12px;font-weight:800}.s5-log{border-top:1px solid #e6edf2;padding:10px 1px;margin-top:10px}.s5-log strong{font-size:11px}.s5-mini{display:flex;align-items:center;justify-content:space-between;border:1px solid #e1e9f1;padding:10px;border-radius:8px;margin:8px 0;gap:12px}.s5-mini strong{font-size:12px}.s5-order-detail{border-top:2px solid #dce8f1;margin-top:19px;padding-top:4px}.s5-instructor-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #e0e9f1;padding:12px 0}.s5-instructor-row strong{font-size:12px}@media(max-width:680px){.s5-input-grid{grid-template-columns:1fr}.s5-item-top,.s5-mini,.s5-instructor-row{flex-wrap:wrap}.s5-state{white-space:normal}.s5-checkline{align-items:flex-start;flex-direction:column}}

/* Stage 5 design refinement: sharper executive contrast and compact customer cards. */
.p-shell{background:#e8eff7}
.p-top{border-bottom:1px solid #cbdbe9;box-shadow:0 3px 16px rgba(13,39,63,.035)}
.p-panel{border-color:#cbd9e7;box-shadow:0 7px 24px rgba(10,39,66,.065)}
.p-panel-head{background:#f5f9fd;border-color:#d9e4ef}
.p-panel-head p,.p-desc,.p-note{color:#4f6880}
.p-metric{border-color:#cbd9e7;box-shadow:0 5px 18px rgba(10,39,66,.055)}
.p-customer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px}
.p-customer-grid .p-customer-order{min-width:0;margin:0;display:flex;flex-direction:column;gap:5px;border:1px solid #bfcfdf;border-top:4px solid #198ce2;background:#fff;padding:15px;border-radius:11px;box-shadow:0 6px 16px rgba(12,44,73,.07);overflow-wrap:anywhere}
.p-customer-grid .p-customer-course{padding:11px;margin-top:5px;background:#f1f6fb;border:1px solid #d6e3ef;border-radius:8px}
.p-customer-grid .p-customer-order>.p-row:last-child{margin-top:auto!important;padding-top:9px;border-top:1px solid #dce7f1}
.p-customer-grid .p-price-block{margin:10px 0 4px}
.p-customer-grid .p-customer-order .p-tag{white-space:normal}
.p-customer-grid .p-customer-order .p-button{max-width:100%}
.p-back-home{display:inline-flex;align-items:center;gap:7px;border:1px solid #c6d9ea;background:#fff;color:#165784;border-radius:8px;padding:7px 12px;font-weight:800;font-size:12px;margin:0 0 12px;cursor:pointer;box-shadow:0 2px 9px rgba(12,40,68,.035)}
.p-back-home:hover,.p-back-home:focus-visible{background:#e6f4fe;border-color:#278fd0;outline-offset:2px}
@media(max-width:1030px){.p-customer-grid{grid-template-columns:1fr}}
@media print{.p-back-home{display:none!important}}

/* Stage 6: Office processing / compact customer status and invoice flows */
.s6-metrics{margin:15px 0}.s6-queue{display:grid;gap:8px}.s6-queue-item{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1.35fr) auto;gap:15px;align-items:center;border:1px solid #dce6ef;border-radius:9px;padding:12px 14px;background:#fff}.s6-queue-item strong{display:block;font-size:12px;color:#193d5b}.s6-queue-item small,.s6-task small{display:block;font-size:11px;color:#678197;margin-top:4px;line-height:1.5}.s6-queue-item .p-tag{max-width:100%;white-space:normal}.s6-notice{border-radius:9px;padding:11px 13px;margin:13px 0;background:#eef5fb;border-left:3px solid #2b86cc;color:#47677f;font-size:12px;line-height:1.65}.s6-course,.s6-invoice-box{background:#fafcff;border:1px solid #dce8f1;border-radius:9px;padding:13px;margin:10px 0}.s6-course .p-button{margin-top:10px}.s6-task-progress{font-weight:700;color:#2379b9;margin-top:9px;font-size:12px}.s6-task{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e6edf3;padding:12px 0}.s6-task-main{min-width:0}.s6-task strong{color:#254e6f;font-size:12px}.s6-task .p-button{flex-shrink:0}.s6-logs{margin-top:15px;padding:12px;border:1px solid #dce8f2;border-radius:9px}.s6-logs summary{cursor:pointer;color:#234f73;font-weight:700;font-size:12px}.s6-log{font-size:11px;color:#4c667b;padding:9px 0;border-bottom:1px solid #e3edf5;line-height:1.6}.s6-info-row,.s6-order-action{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.s6-order-action{padding-top:17px;margin-top:17px;border-top:1px solid #dce8f2}.s6-buttons{justify-content:flex-end;margin-top:16px;gap:9px;flex-wrap:wrap}.s6-customer-status{background:#eff6fc;padding:11px 12px;border-radius:8px;margin:12px 0;border:1px solid #dcebf8;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.s6-customer-status p{width:100%;margin:0;color:#456781}.s6-customer-alert{border-left:3px solid #e6a33d;background:#fff7eb;padding:9px 12px;color:#795c34;border-radius:5px;margin:10px 0;font-size:11px;line-height:1.6}.s6-customer-alert button{margin-top:8px}.p-compact-row>.p-tag{max-width:100%}@media(max-width:730px){.s6-queue-item{grid-template-columns:1fr}.s6-task{flex-wrap:wrap}.s6-task .p-button{margin-left:auto}}

/* Stage 7 — Certification, processing and safety passports */
.s7-list{display:grid;gap:10px}.s7-course{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:13px 15px;background:#fff;border:1px solid #cbdce9;border-radius:9px}.s7-course>div{min-width:0}.s7-course strong{font-size:12px;color:#214868}.s7-course .p-note{line-height:1.6}.s7-notice{background:#edf6fc;border-left:4px solid #2088cf;border-radius:6px;padding:12px 14px;margin:13px 0;color:#345d7a;line-height:1.65;font-size:12px}.s7-person{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;border:1px solid #d3e2eb;border-radius:9px;background:#fff;margin:9px 0}.s7-person>div{min-width:0}.s7-person strong{color:#1c4265}.s7-profile{display:flex;align-items:center;gap:14px;padding:14px;background:#f1f6fb;border:1px solid #d7e5ee;border-radius:9px;margin-bottom:13px}.s7-profile>div{min-width:0}.s7-checkbox{display:flex;align-items:flex-start;gap:9px;padding:13px;border:1px solid #c9d9e8;border-radius:8px;background:#fcfeff;font-size:12px;line-height:1.6;margin:13px 0}.s7-checkbox input{margin-top:3px;accent-color:#1a86c9;flex-shrink:0}.s7-controls{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0}.s7-file{display:flex;gap:13px;align-items:center;justify-content:space-between;margin:8px 0;padding:10px 12px;border:1px solid #d2e1ec;background:white;border-radius:7px}.s7-file>div{min-width:0}.s7-file strong{font-size:12px;color:#214966}.s7-customer-section{border:1px solid #cadce9;background:#f6fafd;border-radius:9px;padding:14px;margin-top:15px}.s7-customer-section .p-row{flex-wrap:wrap}@media(max-width:690px){.s7-course,.s7-person,.s7-file{align-items:stretch;flex-direction:column}.s7-course .p-button,.s7-person .p-button,.s7-file .p-button{align-self:flex-start}}

/* STAGE 8 — Communications & Cancellations */
.s8-highlight{padding:14px;background:#f0f6fc;border:1px solid #c7ddeb;border-left:4px solid #1889d2;border-radius:8px;color:#183d5e;line-height:1.7;margin:10px 0 15px}.s8-highlight strong{color:#174765}.s8-highlight p{margin:5px 0}.s8-line{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid #d9e5ef;min-width:0}.s8-line:last-child{border-bottom:0}.s8-line>div:first-child{min-width:0}.s8-line strong{display:block;color:#1d405c;font-size:12px;line-height:1.5}.s8-line small{display:block;color:#627c93;font-size:11px;line-height:1.6;overflow-wrap:anywhere}.s8-customer-note{background:#f2f7fb;border:1px solid #cbdde9;border-radius:10px;padding:16px;margin:17px 0;color:#325371;font-size:12px;line-height:1.7}.s8-customer-note p{margin:7px 0}.s8-warn{color:#b65c13!important;font-weight:650}.s8-email-body{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f9fd;padding:15px;border:1px solid #d7e3ef;border-radius:8px;line-height:1.8;max-height:350px;overflow-y:auto}.s8-buttons,.s8-actions{justify-content:flex-end;gap:9px;margin-top:16px;flex-wrap:wrap}.s8-actions{justify-content:flex-start;margin-top:12px}.s8-controls{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.s8-controls label{min-width:230px;flex:1;max-width:370px}.s8-list{max-height:510px;overflow-y:auto}.s8-line .p-row{flex-wrap:wrap;gap:7px}@media(max-width:720px){.s8-line{align-items:flex-start;flex-direction:column}.s8-line .p-button{max-width:100%}}

/* v0.23 — Release Readiness: offline-only governance workspace. */
.s9-banner{background:linear-gradient(112deg,#0d2137,#193d62);color:white;padding:22px;border-radius:13px;margin:0 0 18px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;border:1px solid #36628c}
.s9-banner h2{margin:0 0 6px;color:white;font-size:20px}.s9-banner p{font-size:13px;color:#c9deef;margin:0;line-height:1.55;max-width:780px}
.s9-gates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:15px 0 22px}.s9-gate{background:#fff;border:1px solid #cbd9e9;border-radius:12px;padding:16px;min-width:0}.s9-gate small{font-size:11px;color:#536982;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.s9-gate strong{display:block;color:#15385e;font-size:25px;margin:5px 0}
.s9-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 18px;padding:5px;background:#dfe9f5;border-radius:11px}.s9-tab{background:transparent;color:#24435f;border:0;border-radius:8px;padding:10px 14px;font-weight:800;font-size:12px;cursor:pointer}.s9-tab.active{background:#fff;box-shadow:0 2px 8px #15385818;color:#03539b}.s9-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.s9-card{background:#fff;border:1px solid #ccdbe8;border-radius:12px;padding:17px;min-width:0;margin-bottom:14px}.s9-card h3{font-size:15px;color:#153a60;margin:0 0 8px}.s9-card p,.s9-help{font-size:12px;line-height:1.65;color:#526a81;margin:3px 0 11px}.s9-flag{display:inline-block;border-radius:30px;padding:4px 9px;font-size:10px;font-weight:900;white-space:nowrap}.s9-flag.red{color:#8a2731;background:#ffedf0}.s9-flag.blue{color:#154c88;background:#e6f2ff}.s9-flag.green{color:#16624c;background:#e6f8ef}.s9-flag.amber{color:#875600;background:#fff0ce}
.s9-table{width:100%;border-collapse:collapse;font-size:12px}.s9-table th{text-align:left;background:#e7eff8;padding:10px;color:#294d6d;white-space:normal}.s9-table td{padding:11px 10px;vertical-align:top;border-bottom:1px solid #e4edf5;line-height:1.5;color:#354d66}.s9-table td:first-child{font-weight:700;color:#173b61}.s9-scroll{overflow-x:auto}.s9-mini{font-size:11px;color:#58728c}.s9-checkrow{display:grid;grid-template-columns:minmax(0,1fr) 168px;gap:12px;align-items:center;border-bottom:1px solid #e7eef6;padding:12px 0}.s9-checkrow:last-child{border-bottom:0}.s9-checkrow strong{display:block;font-size:12px;color:#15375a}.s9-checkrow p{margin:4px 0 0;font-size:11px;color:#587089}.s9-checkrow select{width:100%;padding:9px;border-radius:7px;border:1px solid #bfcee0;font-size:11px;background:white;color:#173652}.s9-checkrow select:focus-visible,.s9-textarea:focus-visible{outline:2px solid #1680d8}.s9-note{background:#fff5e9;color:#825000;border:1px solid #f0d4aa;padding:12px 15px;border-radius:10px;font-size:12px;line-height:1.6;margin:12px 0}.s9-message{background:#eaf4ff;border:1px solid #bed8f1;border-radius:9px;padding:11px;color:#174674;font-size:12px;line-height:1.6;margin:12px 0}.s9-result{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 3px;border-bottom:1px solid #e3ebf4}.s9-result strong{font-size:12px;color:#163c62}.s9-result small{display:block;font-size:11px;color:#5c7288;margin-top:5px}.s9-textarea{display:block;width:100%;resize:vertical;border:1px solid #bfcee0;border-radius:8px;padding:12px;font:inherit;font-size:13px;color:#1c3854;min-height:92px}.s9-stamp{display:flex;gap:8px;flex-wrap:wrap}.s9-sign{border:1px solid #c8d8e7;background:#f4f8fd;padding:14px;border-radius:10px;margin-top:10px}.s9-sign h4{margin:0 0 5px;color:#143b5b;font-size:13px}.s9-sign p{margin:0;font-size:12px;color:#44617f}.s9-controls{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:12px}
@media(max-width:900px){.s9-gates{grid-template-columns:repeat(2,minmax(0,1fr))}.s9-layout{grid-template-columns:1fr}}
@media(max-width:600px){.s9-gates{grid-template-columns:repeat(2,minmax(0,1fr))}.s9-checkrow{grid-template-columns:1fr}.s9-table{font-size:11px}.s9-banner{padding:16px}}
@media print{#portalWorkspace .p-sidebar,#portalWorkspace .p-top,.s9-tabs,.s9-controls,.p-back-home,.s9-banner button,.s9-checkrow select{display:none!important}#portalWorkspace .p-main{margin:0!important;width:100%!important}.s9-card{break-inside:avoid;box-shadow:none}.s9-gates{grid-template-columns:repeat(4,1fr)}}

/* Fast demonstration account navigation. Does not authenticate accounts: OFFLINE ONLY. */
.p-review-label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:800;color:#336084;letter-spacing:.05em;white-space:nowrap}
.p-review-switch{min-width:155px;max-width:210px;padding:8px 28px 8px 9px;border:1px solid #81add1;border-radius:8px;background:#f2f8fd;color:#103758;font-weight:750;cursor:pointer;font-size:12px}
.p-review-switch:focus{outline:3px solid #69bcff}
.p-review-label-hr{color:#315d7a}
@media(max-width:900px){.p-review-switch{max-width:150px;min-width:125px}.p-review-label{font-size:9px}}

/* V0.25 – fictional test data workspace */
.p-test-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
.p-test-section{border:1px solid #c8dcea;background:#fff;border-radius:14px;min-width:0;overflow:hidden;box-shadow:0 4px 13px rgba(11,38,63,.06)}
.p-test-head{background:#eaf3fa;padding:13px;border-bottom:1px solid #c8dcea;display:flex;align-items:center;justify-content:space-between;gap:8px}
.p-test-head h3{margin:0;color:#153e61;font-size:15px}
.p-test-body{padding:11px}.p-test-person{padding:10px 2px;border-bottom:1px solid #ebf0f4;display:flex;align-items:center;justify-content:space-between;gap:8px}.p-test-person:last-child{border:0}.p-test-person strong{font-size:12px;color:#103551}.p-test-person small{display:block;font-size:11px;color:#52708b;margin-top:4px}.p-test-person>div{min-width:0;overflow-wrap:anywhere}
.p-test-danger{border:1px solid #e0a7a7;background:#fff9f9;border-radius:12px;padding:15px;margin:17px 0}.p-test-danger h3{margin:0 0 5px;color:#8e232a}.p-test-banner{border-left:5px solid #2d87ba;background:#eaf4fd;padding:13px 16px;border-radius:6px;margin:12px 0;color:#18486a;font-size:13px}.p-button.p-test-delete{border:1px solid #e0b1b2;color:#94363b;background:#fff6f6;flex-shrink:0}.p-button.p-test-delete:hover{background:#feeaea}
@media(max-width:1100px){.p-test-grid{grid-template-columns:1fr}}

/* v0.26: six-department executive navigation - existing module routes retained */
#portalWorkspace .p-sidebar .p-side-link:not(.p-dept-link){display:none !important}
#portalWorkspace .p-sidebar-label{display:none !important}
#portalWorkspace .p-sidebar{gap:3px}
#portalWorkspace .p-sidebar .p-dept-link{display:flex !important;min-height:52px;border:1px solid transparent;margin:2px 0;font-size:13px;line-height:1.35;gap:10px;padding:12px 10px}
#portalWorkspace .p-sidebar .p-dept-link .p-dept-ico{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#193854;color:#acd5f4;font-size:15px;flex-shrink:0}
#portalWorkspace .p-sidebar .p-dept-link .p-dept-label{flex:1}
#portalWorkspace .p-sidebar .p-dept-link .p-dept-arr{opacity:.65;font-size:17px}
#portalWorkspace .p-sidebar .p-dept-link.active{background:#19486c;border-color:#2e6896;box-shadow:inset 3px 0 #43b3fa}
#portalWorkspace .p-sidebar-brand{cursor:pointer;border-radius:8px;outline-offset:-3px}
#portalWorkspace .p-sidebar-brand:hover{background:#112c44}
#portalWorkspace .p-sidebar-brand:focus-visible{outline:2px solid #69b9f4}
#portalWorkspace.p-limited .p-dept-link{display:none !important}
#portalWorkspace.p-limited .p-sidebar{min-height:100vh}
#portalWorkspace.p-limited .p-sidebar-bottom{margin-top:22px}
.p-top-home{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:#2474aa;font-size:11px;font-weight:800;cursor:pointer;padding:0;margin:0 0 3px}
.p-top-home:hover{text-decoration:underline}
.p-dept-intro{display:flex;align-items:start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:25px}
.p-dept-intro .p-h1{font-size:30px}
.p-dept-headline{margin:18px 0 11px;font-weight:830;color:#1d496b;font-size:12px;letter-spacing:.4px;text-transform:uppercase}
.p-dept-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:24px}
.p-dept-tile{display:flex;align-items:center;gap:15px;width:100%;min-height:103px;padding:18px;background:#fff;border:1px solid #c9d9e8;border-radius:13px;text-align:left;box-shadow:0 5px 17px #0927440a;color:#14344e;cursor:pointer}
.p-dept-tile:hover,.p-dept-tile:focus-visible{border-color:#3c97d6;background:#f6fbff;box-shadow:0 9px 24px #0b487c18;outline-offset:2px}
.p-dept-tile .p-dept-icon{display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;background:#e8f3fc;border-radius:11px;color:#196eaa;font-size:22px}
.p-dept-tile .p-dept-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.p-dept-tile strong{font-size:14px;color:#113451}
.p-dept-tile small{font-size:12px;color:#526d83;line-height:1.45}
.p-dept-tile .p-arrow{font-size:21px;color:#1b7dbb}
.p-dept-tag{font-size:10px;font-weight:760;color:#497792;background:#e7f2fa;border-radius:30px;padding:5px 8px}
.p-dept-back{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:790;color:#165c8e;background:white;border:1px solid #c5d8e8;border-radius:9px;padding:9px 13px;cursor:pointer}
.p-dept-back:hover{background:#e9f5ff}
.p-dept-note{border-left:3px solid #278ac4;background:#e7f1fa;padding:14px 16px;font-size:12px;border-radius:8px;color:#2b5777;line-height:1.6}
.p-dept-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:19px}
.p-dept-home-grid .p-dept-tile{min-height:117px}
.p-dept-info{max-width:680px;padding:24px;background:#fff;border:1px solid #c9dbe8;border-radius:13px}
.p-dept-info p{color:#5b7288;line-height:1.7}
@media(max-width:1060px){.p-dept-grid,.p-dept-home-grid{grid-template-columns:1fr}}
@media(max-width:850px){#portalWorkspace .p-sidebar{min-height:unset}#portalWorkspace .p-sidebar .p-dept-link{min-height:42px;padding:8px 12px}}
@media print{#portalWorkspace .p-dept-back{display:none}}


/* Stage 4 HR review improvements: reversible leavers archive & STS departments */
.hr-employee-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 15px}
.hr-archived-banner{margin-top:12px;border:1px solid #e2b6ad;background:#fff5f2;border-radius:9px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;text-align:left;color:#8b3c2f}
.hr-archived-banner small{font-size:11px;color:#8b554b}
.hr-department-list{margin:8px 0 20px;border:1px solid #dfebf4;border-radius:10px;overflow:hidden}
.hr-department-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #dfebf4;gap:12px}
.hr-department-item:last-child{border-bottom:0}
.hr-department-item strong{font-size:11px;color:#53718b}

.p-clean-preview-banner{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#ecf5ff;border:1px solid #bad7f1;padding:11px 15px;border-radius:10px;color:#173d61;font-size:13px;font-weight:650;margin-bottom:16px}

/* v0.30 — HR employee lifecycle, exact executive profile order and universal headshot crop */
.hr30-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.hr30-field{background:#f8fbfe;border:1px solid #e1eaf3;border-radius:9px;padding:12px;min-width:0}
.hr30-field.wide{grid-column:1/-1}.hr30-field span{display:block;font-size:10px;font-weight:750;color:#76899d;margin-bottom:4px}
.hr30-field strong{color:#183750;font-size:13px;line-height:1.55;overflow-wrap:anywhere;white-space:pre-wrap}
.hr30-section{margin:19px 0 12px;font-size:12px;text-transform:uppercase;font-weight:850;letter-spacing:.6px;color:#1b5178}
.hr30-emergency{grid-column:1/-1;border:2px solid #e9a5aa;border-left:6px solid #d64753;border-radius:11px;background:#fff1f2;padding:17px;color:#80303a}
.hr30-emergency h3{margin:0 0 10px;font-size:15px;color:#a73542}
.hr30-emergency .hr30-grid{gap:9px}.hr30-emergency .hr30-field{background:#fff;border-color:#edced2}
.hr30-sens{font-size:11px;color:#826029;background:#fff8e8;border:1px solid #eedbab;border-radius:8px;padding:11px 13px;margin:15px 0}
.hr30-formrow{display:grid;grid-template-columns:1fr 1fr;gap:12px 15px}.hr30-formrow label{min-width:0;display:grid;gap:6px;font-size:11px;font-weight:800;color:#53718b}
.hr30-formrow input,.hr30-formrow textarea,.hr30-formrow select{width:100%;border:1px solid #d7e4ef;border-radius:8px;padding:10px 11px;font-size:13px;color:#213a50;background:#fff}
.hr30-formrow .wide{grid-column:1/-1}.hr30-formrow .hr30-emergency{grid-column:1/-1}.hr30-formrow .hr30-emergency label{color:#8b3b46}
.hr30-formrow .hr30-emergency h3{margin-bottom:12px}.hr30-formrow .hr30-emergency .hr30-formrow{gap:11px}
.hr30-formactions{display:flex;gap:9px;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin-top:20px}
.hr30-history{border:1px solid #dfebf3;border-radius:10px;background:#fafcff;margin-top:17px;overflow:hidden}.hr30-history summary{padding:12px 14px;cursor:pointer;font-size:12px;font-weight:800;color:#1d5178}
.hr30-history .hr30-log{padding:8px 14px;border-top:1px solid #e8eff5;font-size:11px;color:#566d81}.hr30-history .hr30-log strong{display:block;color:#153c58;margin-bottom:2px}
.hr30-crop{display:grid;grid-template-columns:minmax(215px,280px) 1fr;gap:22px;align-items:center}.hr30-cropcanvas{width:260px;max-width:100%;height:auto;aspect-ratio:1;border:4px solid white;outline:2px solid #a9cfe7;border-radius:50%;box-shadow:0 7px 24px #0b31552c;touch-action:none;cursor:grab;background:#dcebf6}.hr30-cropcanvas:active{cursor:grabbing}
.hr30-crophelp{font-size:12px;color:#607a91;line-height:1.7}.hr30-croppreview{width:84px;height:84px;border-radius:50%;border:3px solid #dbeaf5;object-fit:cover;background:#d7eaf7}
.hr30-deptrow{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #e0e9f1}.hr30-deptrow strong{display:block;font-size:12px}.hr30-deptrow small{color:#7890a1;font-size:11px}
.hr30-auditrow{padding:12px 3px;border-bottom:1px solid #e4edf4;font-size:12px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.hr30-auditrow small{display:block;font-size:11px;color:#7990a4}
.hr30-warning{padding:12px 14px;background:#fff3e7;border:1px solid #efcfab;border-radius:9px;color:#83582d;font-size:12px}
.hr30-checkline{display:flex;gap:9px;align-items:start;font-size:12px;margin:9px 0;color:#426077}.hr30-checkline input{margin-top:4px}
.modalbg.hr30-wide .modal{width:min(840px,100%)}
@media(max-width:700px){.hr30-grid,.hr30-formrow{grid-template-columns:1fr}.hr30-field.wide,.hr30-formrow .wide{grid-column:auto}.hr30-emergency{grid-column:1}.hr30-crop{grid-template-columns:1fr}.hr30-cropcanvas{margin:auto}.hr30-formrow .hr30-emergency .hr30-formrow{grid-template-columns:1fr}}

