
:root{--p:#ef4444;--pd:#dc2626;--s:#f59e0b;--c:#06b6d4;--pu:#6366f1;--g:#10b981;--r:#ef4444;--a:#f59e0b;
--bg:#1a0a0a;--bg2:#200f0f;--bg3:#2a1515;--card:rgba(239,68,68,.04);
--border:rgba(239,68,68,.12);--sw:260px;
--soft:rgba(239,68,68,.06);--muted:#94a3b8;--text:#f1f5f9;--text-on-dark:#ffffff;--input:rgba(255,255,255,0.08);}
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,sans-serif;min-height:100vh;overflow-x:hidden;}
button,input,select,textarea{font:inherit;}button{cursor:pointer;}a{text-decoration:none;color:inherit;}
select option{background:var(--bg2);color:#ffffff;}
body::before{content:'';position:fixed;inset:0;z-index:0;
background:radial-gradient(ellipse 80% 60% at 5% 5%,rgba(239,68,68,.12) 0%,transparent 60%),
radial-gradient(ellipse 60% 50% at 90% 85%,rgba(99,102,241,.08) 0%,transparent 60%);
pointer-events:none;}
.layout{display:flex;min-height:100vh;position:relative;z-index:1;}
.sidebar{width:var(--sw);background:var(--bg2);border-right:1px solid var(--border);
display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;
transition:transform .35s cubic-bezier(.4,0,.2,1);overflow-y:auto;}
.sb-logo{display:flex;align-items:center;gap:12px;padding:22px 20px 18px;border-bottom:1px solid var(--border);}
.sb-logo .li{height:34px;width:auto;object-fit:contain;}
.sb-logo span{font-size:19px;font-weight:900;letter-spacing:-.5px;}
.sb-logo span em{color:var(--p);font-style:normal;}
.user-card{margin:14px 16px 6px;padding:14px;border-radius:14px;background:var(--card);border:1px solid var(--border);display:flex;align-items:center;gap:12px;}
.uc-av{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--p),var(--pd));display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;flex-shrink:0;}
.uc-name{font-size:14px;font-weight:800;margin-bottom:2px;}
.uc-role{font-size:11px;color:var(--p);font-weight:700;text-transform:uppercase;letter-spacing:.8px;}
.nav-sec{padding:10px 10px 4px;}
.nav-lbl{font-size:10px;font-weight:800;letter-spacing:1.5px;color:var(--muted);padding:0 8px 8px;text-transform:uppercase;}
.nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .2s;border:1px solid transparent;margin-bottom:2px;}
.nav-item:hover{background:var(--card);color:var(--text);border-color:var(--border);}
.nav-item.active{background:linear-gradient(135deg,rgba(239,68,68,.18),rgba(245,158,11,.08));color:var(--text);border-color:rgba(239,68,68,.3);}
.nav-item.active .ni{color:var(--p);}
.ni{width:18px;text-align:center;font-size:14px;}
.sb-foot{margin-top:auto;padding:14px 10px;border-top:1px solid var(--border);}
.logout-btn{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);color:#fca5a5;font-size:13px;font-weight:700;transition:all .2s;}
.logout-btn:hover{background:rgba(239,68,68,.25);color:var(--text-on-dark);}
.main{margin-left:var(--sw);flex:1;display:flex;flex-direction:column;min-height:100vh;}
.topbar{display:flex;align-items:center;gap:14px;padding:14px 28px;background:rgba(32,15,15,.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50;}
.menu-toggle{display:none;background:var(--card);border:1px solid var(--border);color:var(--text);width:36px;height:36px;border-radius:8px;align-items:center;justify-content:center;font-size:15px;}
.tb-title{font-size:17px;font-weight:800;flex:1;}
.tb-actions{display:flex;align-items:center;gap:8px;}
.ib{width:36px;height:36px;border-radius:9px;background:var(--card);border:1px solid var(--border);color:var(--muted);display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s;cursor:pointer;}
.ib:hover{background:var(--bg3);color:var(--text);}
.page{padding:26px 28px 60px;display:none;}
.page.active{display:block;animation:fsi .4s ease both;}
@keyframes fsi{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.hero{border-radius:20px;padding:30px 32px;flex-wrap:wrap;background:linear-gradient(135deg,#450a0a 0%,#1e1b4b 50%,var(--bg3) 100%);border:1px solid rgba(239,68,68,.3);display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px;overflow:hidden;position:relative;}
.hero::before{content:'';position:absolute;right:-50px;top:-50px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(239,68,68,.25),transparent 70%);}
.hero-txt h1{font-size:clamp(20px,2.8vw,30px);font-weight:900;margin-bottom:6px;}
.hero-txt p{color:#fca5a5;font-size:13px;line-height:1.6;max-width:420px;}
.hero-badge{display:flex;align-items:center;gap:10px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);border-radius:14px;padding:12px 16px;flex-shrink:0;z-index:1;}
.hb-icon{font-size:26px;}
.hb-role{font-size:10px;color:#fca5a5;font-weight:700;text-transform:uppercase;letter-spacing:1px;}
.hb-name{font-size:15px;font-weight:900;}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:26px;}
.sc{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:18px;display:flex;align-items:center;gap:14px;transition:transform .25s,box-shadow .25s;animation:fsi .5s ease both;}
.sc:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(0,0,0,.3);}
.si{width:48px;height:48px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}
.si-r{background:rgba(239,68,68,.15);color:#fca5a5;}
.si-c{background:rgba(6,182,212,.15);color:#67e8f9;}
.si-a{background:rgba(245,158,11,.15);color:#fcd34d;}
.si-g{background:rgba(16,185,129,.15);color:#6ee7b7;}
.si-p{background:rgba(99,102,241,.15);color:#a5b4fc;}
.si-d{background:rgba(239,68,68,.08);color:#ef4444;}
.sl{font-size:11px;color:var(--muted);font-weight:700;margin-bottom:3px;}
.sv{font-size:28px;font-weight:900;line-height:1;}
.ss{font-size:11px;color:var(--muted);margin-top:3px;}
.sh{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;}
.sh h2{font-size:17px;font-weight:800;display:flex;align-items:center;gap:9px;}
.sh h2 i{color:var(--p);}
.card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:22px;animation:fsi .5s ease both;}
.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.fg{display:grid;gap:13px;}
.tc{grid-template-columns:1fr 1fr;}
.field{display:grid;gap:5px;}
.field label{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;}
.field input,.field select,.field textarea{background:rgba(255,255,255,.08);border:1px solid var(--border);border-radius:10px;min-height:42px;padding:0 13px;color:#ffffff;outline:none;width:100%;transition:border-color .2s,box-shadow .2s;}
.field textarea{min-height:88px;padding:11px 13px;resize:vertical;}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--p);box-shadow:0 0 0 3px rgba(239,68,68,.2);}
.field select option{background:var(--bg2);color:#ffffff;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:10px;font-weight:800;font-size:13px;min-height:42px;padding:0 18px;transition:all .2s;cursor:pointer;}
.btn-p{background:linear-gradient(135deg,var(--p),var(--pd));color:var(--text-on-dark);box-shadow:0 4px 14px rgba(239,68,68,.35);}
.btn-p:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(239,68,68,.5);}
.btn-s{background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.3);color:#fcd34d;}
.btn-s:hover{background:rgba(245,158,11,.22);}
.btn-g{background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.3);color:#6ee7b7;}
.btn-g:hover{background:rgba(16,185,129,.22);}
.btn-c{background:rgba(6,182,212,.12);border:1px solid rgba(6,182,212,.3);color:#67e8f9;}
.btn-c:hover{background:rgba(6,182,212,.22);}
.btn-pu{background:rgba(99,102,241,.12);border:1px solid rgba(99,102,241,.3);color:#a5b4fc;}
.btn-pu:hover{background:rgba(99,102,241,.22);}
.btn-d{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.3);color:#fca5a5;min-height:34px;padding:0 12px;font-size:12px;}
.btn-d:hover{background:rgba(239,68,68,.28);color:var(--text-on-dark);}
.btn-sm{min-height:34px;padding:0 12px;font-size:12px;border-radius:8px;}
.btn-full{width:100%;}
.ilist{display:grid;gap:11px;}
.item{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:14px;padding:15px;transition:border-color .2s,background .2s;animation:fsi .4s ease both;}
.item:hover{border-color:rgba(239,68,68,.3);background:rgba(239,68,68,.04);}
.ih{display:flex;align-items:flex-start;gap:13px;justify-content:space-between;margin-bottom:9px;}
.ii h3{font-size:14px;font-weight:800;margin-bottom:2px;}
.ii p{font-size:12px;color:var(--muted);}
.chips{display:flex;flex-wrap:wrap;gap:7px;}
.chip{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.2);color:#fca5a5;font-size:11px;font-weight:800;padding:3px 9px;border-radius:999px;}
.chip-g{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.2);color:#6ee7b7;}
.chip-a{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.2);color:#fcd34d;}
.chip-c{background:rgba(6,182,212,.12);border-color:rgba(6,182,212,.2);color:#67e8f9;}
.chip-p{background:rgba(99,102,241,.12);border-color:rgba(99,102,241,.2);color:#a5b4fc;}
.chip-y{background:rgba(234,179,8,.12);border:1px solid rgba(234,179,8,.2);color:#facc15;}
.chip-o{background:rgba(251,146,60,.12);border:1px solid rgba(251,146,60,.2);color:#fb923c;}
.chip-r{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.2);color:#fca5a5;}
.chip-b{background:rgba(59,130,246,.12);border:1px solid rgba(59,130,246,.2);color:#60a5fa;}
.empty{text-align:center;padding:36px 20px;color:var(--muted);border:1px dashed var(--border);border-radius:14px;}
.empty i{font-size:32px;margin-bottom:10px;opacity:.35;display:block;}
.empty p{font-size:13px;}
/* Overview grid */
.ov-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;}
.ov-card{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:14px;padding:18px;display:flex;align-items:center;gap:14px;transition:transform .2s;}
.ov-card:hover{transform:translateY(-3px);}
.ov-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}
.ov-card h3{font-size:13px;font-weight:800;margin-bottom:2px;}
.ov-card p{font-size:12px;color:var(--muted);}
/* Search bar */
.search-bar{display:flex;gap:10px;margin-bottom:16px;}
.search-bar input{flex:1;background:rgba(255,255,255,.08);border:1px solid var(--border);border-radius:10px;min-height:40px;padding:0 14px;color:#ffffff;outline:none;}
.search-bar input:focus{border-color:var(--p);}
/* Role filter */
.role-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;}
.rf-btn{padding:6px 14px;border-radius:8px;font-size:12px;font-weight:700;border:1px solid var(--border);background:var(--card);color:var(--muted);cursor:pointer;transition:all .2s;}
.rf-btn.active{background:rgba(239,68,68,.15);border-color:rgba(239,68,68,.3);color:#fca5a5;}
/* Abar */
.abar{height:6px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden;margin-top:6px;}
.abar-fill{height:100%;border-radius:999px;transition:width .8s ease;}
.tw{position:fixed;bottom:22px;right:22px;z-index:9999;display:flex;flex-direction:column;gap:9px;}
.toast{background:var(--bg3);border:1px solid var(--border);border-radius:12px;padding:13px 16px;display:flex;align-items:center;gap:11px;font-size:13px;font-weight:600;min-width:min(240px, 90vw);box-shadow:0 8px 28px rgba(0,0,0,.4);animation:tin .35s ease both;}
.toast.success{border-color:rgba(16,185,129,.4);}
.toast.success i{color:var(--g);}
.toast.error{border-color:rgba(239,68,68,.4);}
.toast.error i{color:var(--p);}
@keyframes tin{from{opacity:0;transform:translateX(36px)}to{opacity:1;transform:translateX(0)}}
@keyframes tout{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(36px)}}
.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:90;}
.overlay.show{display:block;}
/* ─── Form Inputs (.fi, .inp) ─── */
.fi,.inp{background:rgba(255,255,255,.08);border:1px solid var(--border);border-radius:10px;min-height:42px;padding:0 13px;color:#ffffff;outline:none;width:100%;transition:border-color .2s,box-shadow .2s;font-size:13px;}
.fi:focus,.inp:focus{border-color:var(--p);box-shadow:0 0 0 3px rgba(239,68,68,.2);}
textarea.fi,textarea.inp{min-height:88px;padding:11px 13px;resize:vertical;}
select.fi,select.inp{cursor:pointer;}
select.fi option,select.inp option{background:var(--bg2);color:#ffffff;}
@keyframes mIn{from{opacity:0;transform:scale(0.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
/* ─── Modal System ─── */
.modal{background:var(--bg2);border:1px solid var(--border);border-radius:20px;padding:28px;max-width:520px;width:92%;box-shadow:0 24px 64px rgba(0,0,0,.4);animation:mIn .35s cubic-bezier(.16,1,.3,1) both;max-height:90vh;overflow-y:auto;}
.modal-h{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:16px;}
.modal-h h3{font-size:17px;font-weight:800;display:flex;align-items:center;gap:9px;}
.modal-h h3 i{color:var(--p);}
.modal-b{padding:4px 0;}
.modal-f{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:14px;border-top:1px solid var(--border);margin-top:16px;}
@media(max-width:1024px){
.layout{z-index:auto!important;}
.sidebar{transform:translateX(-100%);z-index:250;}
.sidebar.open{transform:translateX(0);box-shadow:4px 0 30px rgba(0,0,0,.5);}
.overlay{z-index:200;}
.main{margin-left:0!important;}
.menu-toggle{display:flex!important;}
.stats{grid-template-columns:1fr 1fr;}
.ov-grid{grid-template-columns:1fr 1fr;}
.card-grid,.tc{grid-template-columns:1fr;}
.hero{flex-direction:column;text-align:center;padding:24px 20px;}
.hero-badge{margin:0 auto;}
.page{padding:18px 14px 60px;}
.topbar{padding:12px 14px;gap:10px;}
.tb-title{font-size:15px;}
}
@media(max-width:600px){
.stats{grid-template-columns:1fr!important;}
.ov-grid{grid-template-columns:1fr!important;}
.page{padding:12px 10px 60px;}
.topbar{padding:10px 12px;}
.tb-title{font-size:14px;}
.sc{padding:14px;gap:10px;}
.si{width:40px;height:40px;font-size:16px;}
.sv{font-size:22px;}
.modal{max-width:100%!important;margin:8px!important;padding:18px!important;}
}
@media(max-width:480px){
.stats{grid-template-columns:1fr !important;}
.card-grid,.tc{grid-template-columns:1fr !important;}
.hero{padding:18px 14px !important;}
.page{padding:14px 10px 40px !important;}
.topbar{padding:10px 12px !important;}
.sc .sv{font-size:20px !important;}
.sc .sc-lbl{font-size:11px !important;}
}
::-webkit-scrollbar{width:5px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:3px;}
.hidden{display:none!important;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.4;transform:scale(.8);}}
.stat-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px 14px;border-left:3px solid var(--border);}
.stat-card .stat-val{font-size:22px;font-weight:900;line-height:1.2;color:var(--text);}
.stat-card .stat-lbl{font-size:11px;color:var(--muted);font-weight:600;margin-top:2px;text-transform:uppercase;letter-spacing:.5px;}
.deal-card{border:1px solid var(--border);border-radius:12px;padding:14px;background:var(--card);transition:border-color .2s,box-shadow .2s;}
.deal-card:hover{border-color:var(--s);box-shadow:0 4px 20px rgba(245,158,11,.08);}

/* ─── Employee Styles ─── */
.emp-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.3px;}
.emp-badge.active{background:rgba(16,185,129,.15);color:var(--g);}
.emp-badge.inactive{background:rgba(245,158,11,.15);color:var(--s);}
.emp-badge.terminated{background:rgba(239,68,68,.15);color:var(--p);}
.emp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.emp-chips .chip{font-size:10px;}
.cert-section{border:1px solid var(--border);border-radius:12px;padding:16px;margin-top:12px;background:var(--card);}
.cert-section h4{font-size:14px;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:8px;}
.cert-status{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:600;margin-bottom:8px;}
.cert-status.issued{background:rgba(16,185,129,.1);color:var(--g);}
.cert-status.pending{background:rgba(245,158,11,.1);color:var(--s);}
.cert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;}
.cert-card{border:1px solid var(--border);border-radius:12px;padding:16px;background:var(--bg2);}
.cert-card .cert-icon{font-size:32px;margin-bottom:8px;color:var(--pu);}
.cert-card h4{font-size:15px;font-weight:700;margin-bottom:4px;}
.cert-card p{font-size:12px;color:var(--muted);margin-bottom:10px;}
.cert-display{font-family:'Georgia',serif;color:var(--text);line-height:1.6;}
.cert-display h1{font-size:24px;font-weight:900;color:var(--p);margin-bottom:4px;}
.cert-display h2{font-size:18px;font-weight:700;margin-bottom:16px;color:var(--text);}
.cert-display .cert-seal{width:80px;height:80px;border-radius:50%;border:3px solid var(--p);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;color:var(--p);margin:16px auto;}

/* ─── Royal Certificate Design ─── */
.cert-royal{max-width:720px;margin:0 auto;font-family:Georgia,'Times New Roman',serif;}
.cr-top-band{height:8px;background:linear-gradient(90deg,#1a1a2e,#c9a84c,#8b6914,#c9a84c,#1a1a2e);border-radius:14px 14px 0 0;}
.cr-bottom-band{height:8px;background:linear-gradient(90deg,#1a1a2e,#c9a84c,#8b6914,#c9a84c,#1a1a2e);border-radius:0 0 14px 14px;margin-top:-1px;}
.cr-border{position:relative;background:linear-gradient(180deg,#fefcf3,#fdf6e3,#fefcf3);border:2px solid #c9a84c;padding:12px;border-top:none;border-bottom:none;}
.cr-corner{position:absolute;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#c9a84c;font-size:16px;pointer-events:none;z-index:5;}
.cr-tl{top:0;left:0;border-top:3px solid #8b6914;border-left:3px solid #8b6914;border-radius:14px 0 0 0;}
.cr-tr{top:0;right:0;border-top:3px solid #8b6914;border-right:3px solid #8b6914;border-radius:0 14px 0 0;}
.cr-bl{bottom:0;left:0;border-bottom:3px solid #8b6914;border-left:3px solid #8b6914;border-radius:0 0 0 14px;}
.cr-br{bottom:0;right:0;border-bottom:3px solid #8b6914;border-right:3px solid #8b6914;border-radius:0 0 14px 0;}
.cr-inner{position:relative;z-index:1;padding:22px 25px 18px;text-align:center;background:rgba(255,255,255,.5);border-radius:12px;}
.cr-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-25deg);font-size:110px;font-weight:900;color:rgba(201,168,76,.035);letter-spacing:10px;pointer-events:none;white-space:nowrap;z-index:0;font-family:Arial,Helvetica,sans-serif;}
.cr-header{margin-bottom:6px;}
.cr-logo{height:44px;margin-bottom:4px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.08));}
.cr-org{font-size:13px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:#8b6914;line-height:1.3;}
.cr-org-sub{font-size:9px;color:#c9a84c;letter-spacing:2px;text-transform:uppercase;margin-top:-1px;}
.cr-ribbon{display:flex;align-items:center;justify-content:center;margin:8px auto 6px;max-width:420px;}
.cr-ribbon-left,.cr-ribbon-right{flex:1;height:2px;background:linear-gradient(90deg,transparent,#c9a84c);}
.cr-ribbon-right{background:linear-gradient(270deg,transparent,#c9a84c);}
.cr-ribbon-center{font-size:20px;font-weight:900;letter-spacing:3px;color:#1a1a2e;padding:0 16px;text-shadow:1px 1px 0 rgba(201,168,76,.2);}
.cr-flourish{margin:6px 0;display:flex;align-items:center;justify-content:center;gap:10px;color:#c9a84c;font-size:10px;letter-spacing:6px;}
.cr-certify{font-size:14px;color:#666;margin-bottom:3px;font-style:italic;}
.cr-name-wrap{display:flex;align-items:center;justify-content:center;gap:14px;margin:6px 0;}
.cr-name-line{width:60px;height:1px;background:linear-gradient(90deg,transparent,#c9a84c);}
.cr-name-line:last-child{background:linear-gradient(270deg,transparent,#c9a84c);}
.cr-name{font-size:30px;font-weight:900;color:#1a1a2e;letter-spacing:1px;text-shadow:1px 2px 4px rgba(0,0,0,.06);}
.cr-role{font-size:18px;font-weight:700;color:#8b6914;margin:4px 0;background:linear-gradient(135deg,#8b6914,#c9a84c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.cr-dept{display:inline-block;background:rgba(201,168,76,.12);color:#8b6914;padding:1px 12px;border-radius:20px;font-size:14px;margin-left:4px;-webkit-text-fill-color:#8b6914;}
.cr-details{display:grid;grid-template-columns:1fr 1fr;gap:5px 20px;text-align:left;max-width:440px;margin:4px auto 0;}
.cr-dl{display:flex;justify-content:space-between;padding:5px 8px;border-bottom:1px dashed rgba(201,168,76,.25);font-size:12px;border-radius:4px;}
.cr-dl:nth-child(even){background:rgba(201,168,76,.04);}
.cr-dl span{color:#888;font-style:italic;}
.cr-dl strong{color:#1a1a2e;font-weight:700;}
.cr-thanks{margin:6px auto 0;padding:8px 14px;background:linear-gradient(135deg,rgba(201,168,76,.06),rgba(201,168,76,.02));border:1px dashed rgba(201,168,76,.35);border-radius:10px;font-size:12px;color:#666;font-style:italic;max-width:480px;text-align:center;line-height:1.5;}
.cr-sig-section{display:flex;justify-content:space-between;margin-top:14px;gap:20px;padding:0 10px;}
.cr-sig{text-align:center;flex:1;}
.cr-sig img{display:block;margin:0 auto;max-height:36px;filter:brightness(1.1) contrast(1.1);}
.cr-sig-line{width:130px;border-top:2px solid #8b6914;margin:3px auto;padding-top:3px;}
.cr-sig-label{display:block;font-size:11px;color:#555;font-weight:600;letter-spacing:.3px;}
.cr-sig-role{display:block;font-size:9px;color:#999;margin-top:1px;}
.cr-stamp{position:absolute;bottom:50px;right:35px;width:70px;height:70px;border-radius:50%;border:3px solid rgba(201,168,76,.3);display:flex;align-items:center;justify-content:center;transform:rotate(-12deg);opacity:.5;pointer-events:none;}
.cr-stamp-inner{width:56px;height:56px;border-radius:50%;border:2px solid rgba(201,168,76,.4);display:flex;flex-direction:column;align-items:center;justify-content:center;}
.cr-stamp-star{font-size:16px;color:#c9a84c;line-height:1;}
.cr-stamp-text{font-size:7px;font-weight:900;color:#c9a84c;letter-spacing:1px;line-height:1.1;}
.cr-stamp-sub{font-size:5px;font-weight:700;color:#c9a84c;letter-spacing:.5px;}
.cr-footnote{margin-top:10px;font-size:9px;color:#bbb;font-style:italic;text-align:center;}
.cr-rules{margin-top:14px;background:linear-gradient(135deg,#fefcf3,#fdf6e3);border:1px solid rgba(201,168,76,.35);border-radius:14px;padding:14px 18px;text-align:left;box-shadow:0 2px 8px rgba(201,168,76,.08);}
.cr-rules h3{font-size:13px;font-weight:800;margin-bottom:8px;border-bottom:2px solid rgba(201,168,76,.2);padding-bottom:6px;text-align:center;text-transform:uppercase;letter-spacing:2px;color:#8b6914;}
.cr-rules ol{margin:0;padding-left:16px;font-size:11px;line-height:1.8;color:#555;}
.cr-rules ol li{margin-bottom:3px;text-align:justify;}

/* ─── Employee Stats ─── */
.emp-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:14px;}
.emp-stat-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px;text-align:center;cursor:pointer;transition:.2s;}
.emp-stat-card:hover{border-color:rgba(99,102,241,.4);transform:translateY(-2px);}
.emp-stat-card.active{border-color:var(--p);background:rgba(239,68,68,.05);}
.emp-stat-icon{font-size:20px;margin-bottom:4px;color:var(--muted);}
.emp-stat-num{font-size:26px;font-weight:900;color:var(--text);}
.emp-stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-top:2px;}
.emp-stat-active .emp-stat-icon{color:var(--g);}
.emp-stat-inactive .emp-stat-icon{color:var(--s);}
.emp-stat-terminated .emp-stat-icon{color:var(--p);}
.emp-stat-certified .emp-stat-icon{color:#c9a84c;}

/* ─── Employee Profile Modal ─── */
.emp-profile{padding:5px 0;}
.emp-profile-h{display:flex;gap:16px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--border);margin-bottom:16px;flex-wrap:wrap;}
.emp-profile-avatar{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;flex-shrink:0;}
.emp-profile-info{flex:1;min-width:150px;}
.emp-profile-info h2{font-size:20px;font-weight:800;margin:0 0 2px;color:var(--text);}
.emp-profile-info p{margin:0;font-size:13px;color:var(--muted);}
.emp-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;}
.emp-profile-item{padding:10px 12px;background:var(--bg2);border-radius:10px;border:1px solid var(--border);}
.epi-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:3px;}
.epi-label i{width:14px;}
.epi-value{display:block;font-size:14px;font-weight:600;color:var(--text);}
.emp-profile-certs{padding-top:14px;border-top:1px solid var(--border);}
.emp-profile-certs h4{font-size:14px;font-weight:700;margin-bottom:10px;color:var(--text);}

/* ─── Experience Letter Design (EP Classes) ─── */
.ep-top-band{height:8px;background:linear-gradient(90deg,#0f172a,#334155,#475569,#334155,#0f172a);border-radius:14px 14px 0 0;}
.ep-bottom-band{height:8px;background:linear-gradient(90deg,#0f172a,#334155,#475569,#334155,#0f172a);border-radius:0 0 14px 14px;margin-top:-1px;}
.ep-border{position:relative;background:linear-gradient(180deg,#f8fafc,#e2e8f0,#f8fafc);border:2px solid #334155;padding:12px;border-top:none;border-bottom:none;}
.ep-corner{position:absolute;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#475569;font-size:16px;pointer-events:none;z-index:5;}
.ep-tl{top:0;left:0;border-top:3px solid #475569;border-left:3px solid #475569;border-radius:14px 0 0 0;}
.ep-tr{top:0;right:0;border-top:3px solid #475569;border-right:3px solid #475569;border-radius:0 14px 0 0;}
.ep-bl{bottom:0;left:0;border-bottom:3px solid #475569;border-left:3px solid #475569;border-radius:0 0 0 14px;}
.ep-br{bottom:0;right:0;border-bottom:3px solid #475569;border-right:3px solid #475569;border-radius:0 0 14px 0;}
.ep-inner{position:relative;z-index:1;padding:22px 25px 18px;text-align:center;background:rgba(255,255,255,.55);border-radius:12px;}
.ep-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-25deg);font-size:110px;font-weight:900;color:rgba(71,85,105,.035);letter-spacing:10px;pointer-events:none;white-space:nowrap;z-index:0;font-family:Arial,Helvetica,sans-serif;}
.ep-header{margin-bottom:6px;}
.ep-logo{height:44px;margin-bottom:4px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.08));}
.ep-org{font-size:13px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:#334155;line-height:1.3;}
.ep-org-sub{font-size:9px;color:#64748b;letter-spacing:2px;text-transform:uppercase;margin-top:-1px;}
.ep-ribbon{display:flex;align-items:center;justify-content:center;margin:8px auto 6px;max-width:450px;}
.ep-ribbon-left,.ep-ribbon-right{flex:1;height:2px;background:linear-gradient(90deg,transparent,#334155);}
.ep-ribbon-right{background:linear-gradient(270deg,transparent,#334155);}
.ep-ribbon-center{font-size:20px;font-weight:900;letter-spacing:3px;color:#0f172a;padding:0 16px;text-shadow:1px 1px 0 rgba(51,65,85,.15);}
.ep-flourish{margin:6px 0;display:flex;align-items:center;justify-content:center;gap:10px;color:#475569;font-size:10px;letter-spacing:6px;}
.ep-certify{font-size:14px;color:#64748b;margin-bottom:3px;font-style:italic;}
.ep-name-wrap{display:flex;align-items:center;justify-content:center;gap:14px;margin:6px 0;}
.ep-name-line{width:60px;height:1px;background:linear-gradient(90deg,transparent,#475569);}
.ep-name-line:last-child{background:linear-gradient(270deg,transparent,#475569);}
.ep-name{font-size:30px;font-weight:900;color:#0f172a;letter-spacing:1px;text-shadow:1px 2px 4px rgba(0,0,0,.06);}
.ep-tenure-badge{display:inline-block;background:linear-gradient(135deg,#1e293b,#334155);color:#f8fafc;padding:4px 16px;border-radius:20px;font-size:13px;font-weight:700;letter-spacing:.5px;margin:4px 0;box-shadow:0 2px 8px rgba(51,65,85,.15);}
.ep-period{font-size:13px;color:#64748b;margin:2px 0 6px;font-style:italic;}
.ep-role{font-size:18px;font-weight:700;color:#334155;margin:4px 0;background:linear-gradient(135deg,#334155,#64748b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.ep-dept{display:inline-block;background:rgba(71,85,105,.12);color:#475569;padding:1px 12px;border-radius:20px;font-size:14px;margin-left:4px;-webkit-text-fill-color:#475569;}
.ep-details{display:grid;grid-template-columns:1fr 1fr;gap:5px 20px;text-align:left;max-width:440px;margin:4px auto 0;}
.ep-dl{display:flex;justify-content:space-between;padding:5px 8px;border-bottom:1px dashed rgba(71,85,105,.25);font-size:12px;border-radius:4px;}
.ep-dl:nth-child(even){background:rgba(71,85,105,.04);}
.ep-dl span{color:#94a3b8;font-style:italic;}
.ep-dl strong{color:#0f172a;font-weight:700;}
.ep-thanks{margin:6px auto 0;padding:10px 16px;background:linear-gradient(135deg,rgba(71,85,105,.06),rgba(71,85,105,.03));border:1px dashed rgba(71,85,105,.35);border-radius:10px;font-size:12px;color:#475569;font-style:italic;max-width:500px;text-align:center;line-height:1.6;}
.ep-sig-section{display:flex;justify-content:space-between;margin-top:14px;gap:20px;padding:0 10px;}
.ep-sig{text-align:center;flex:1;}
.ep-sig img{display:block;margin:0 auto;max-height:36px;filter:brightness(1.1) contrast(1.1);}
.ep-sig-line{width:130px;border-top:2px solid #475569;margin:3px auto;padding-top:3px;}
.ep-sig-label{display:block;font-size:11px;color:#475569;font-weight:600;letter-spacing:.3px;}
.ep-sig-role{display:block;font-size:9px;color:#94a3b8;margin-top:1px;}
.ep-stamp{position:absolute;bottom:50px;right:35px;width:70px;height:70px;border-radius:50%;border:3px solid rgba(71,85,105,.3);display:flex;align-items:center;justify-content:center;transform:rotate(-12deg);opacity:.5;pointer-events:none;}
.ep-stamp-inner{width:56px;height:56px;border-radius:50%;border:2px solid rgba(71,85,105,.4);display:flex;flex-direction:column;align-items:center;justify-content:center;}
.ep-stamp-star{font-size:16px;color:#475569;line-height:1;}
.ep-stamp-text{font-size:7px;font-weight:900;color:#475569;letter-spacing:1px;line-height:1.1;}
.ep-stamp-sub{font-size:5px;font-weight:700;color:#475569;letter-spacing:.5px;}
.ep-footnote{margin-top:10px;font-size:9px;color:#94a3b8;font-style:italic;text-align:center;}
.ep-rules{margin-top:14px;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid rgba(71,85,105,.35);border-radius:14px;padding:14px 18px;text-align:left;box-shadow:0 2px 8px rgba(71,85,105,.08);}
.ep-rules h3{font-size:13px;font-weight:800;margin-bottom:8px;border-bottom:2px solid rgba(71,85,105,.2);padding-bottom:6px;text-align:center;text-transform:uppercase;letter-spacing:2px;color:#334155;}
.ep-rules ol{margin:0;padding-left:16px;font-size:11px;line-height:1.8;color:#475569;}
.ep-rules ol li{margin-bottom:3px;text-align:justify;}

/* ─── Employee Crown Badge ─── */
.emp-crown{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:9px;font-weight:800;letter-spacing:.3px;background:linear-gradient(135deg,#f59e0b,#d97706);color:var(--text-on-dark);}
.desig-badge{display:inline-block;background:rgba(99,102,241,.1);color:var(--p);padding:1px 8px;border-radius:12px;font-size:11px;font-weight:600;}

/* ─── Extra small btn ─── */
.btn-xs{padding:3px 10px;font-size:11px;border-radius:8px;}
.btn-pu{background:rgba(139,92,246,.15);color:#8b5cf6;border:1px solid rgba(139,92,246,.2);}
.btn-pu:hover{background:rgba(139,92,246,.25);}

/* ─── Print Styles ─── */
@media print {
  body{background:#fff!important;padding:0!important;}
  .sidebar,.topbar,.page-header,.sh,.role-filter,.emp-stats,.ilist .btn,.btn-sm,.btn-xs,.overlay{display:none!important;}
  .page{display:block!important;padding:0!important;margin:0!important;width:100%!important;}
  .page.active{display:block!important;}
  .modal{box-shadow:none!important;border:1px solid #ddd!important;position:static!important;}
  .modal-b,.modal-f{padding:8px 12px!important;}
  .cert-royal{max-width:100%!important;}
  .cr-stamp,.ep-stamp{opacity:1!important;}
  .cr-watermark,.ep-watermark{display:none!important;}
  table{font-size:10px!important;}
  th,td{padding:4px 6px!important;}
  .ilist .item{padding:6px!important;margin:0!important;border:1px solid #eee!important;break-inside:avoid;}
  @page{margin:8mm 10mm;}
}
.btn-r{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.3);color:#fca5a5;min-height:34px;padding:0 12px;font-size:12px;}
.btn-r:hover{background:rgba(239,68,68,.28);color:var(--text-on-dark);}
.card-h{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border);}
.card-h h3{font-size:14px;font-weight:800;}
.card-b{padding:16px 18px;}
.ok{color:var(--g);font-weight:700;font-size:12px;}
.err{color:var(--r);font-weight:700;font-size:12px;}

/* Dark mode overrides via data-theme attribute */
[data-theme="dark"] body{background:#0f172a;color:#e2e8f0;}
[data-theme="dark"] .sidebar{background:#1e293b;border-color:#334155;}
[data-theme="dark"] .sb-logo{border-color:#334155;}
[data-theme="dark"] .user-card{background:#1e293b;border-color:#334155;}
[data-theme="dark"] .nav-item{color:#94a3b8;}
[data-theme="dark"] .nav-item:hover{background:#1e293b;color:#e2e8f0;border-color:#334155;}
[data-theme="dark"] .nav-item.active{background:rgba(99,102,241,.15);color:#e2e8f0;border-color:rgba(99,102,241,.3);}
[data-theme="dark"] .nav-item.active .ni{color:#818cf8;}
[data-theme="dark"] .topbar{background:rgba(15,23,42,.9);border-color:#334155;}
[data-theme="dark"] .main{background:#0f172a;}
[data-theme="dark"] .sc{background:#1e293b;border-color:#334155;}
[data-theme="dark"] .card{background:#1e293b;border-color:#334155;}
[data-theme="dark"] .sh{border-color:#334155;}
[data-theme="dark"] input, [data-theme="dark"] select, [data-theme="dark"] textarea{background:#1e293b;border-color:#334155;color:#e2e8f0;}
[data-theme="dark"] select option{background:#1e293b;color:#e2e8f0;}
[data-theme="dark"] .btn{border-color:#334155;}
[data-theme="dark"] .chip{border-color:#334155;}
[data-theme="dark"] .modal{background:#1e293b;border-color:#334155;}
[data-theme="dark"] table{border-color:#334155;}
[data-theme="dark"] th{background:#1e293b;color:#94a3b8;border-color:#334155;}
[data-theme="dark"] td{border-color:#334155;}
[data-theme="dark"] tr:hover{background:rgba(99,102,241,.05);}
[data-theme="dark"] .it-tab{background:#1e293b;border-color:#334155;color:#94a3b8;}
[data-theme="dark"] .it-tab.active{background:#6366f1;color:#fff;border-color:#6366f1;}
[data-theme="dark"] .logout-btn{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.15);color:#fca5a5;}

/* ====== LIGHT WHITE THEME ====== */
[data-theme="light"]{--bg:#ffffff;--bg2:#f8fafc;--bg3:#f1f5f9;--card:rgba(239,68,68,.03);--text:#0f172a;--muted:#64748b;--input:#ffffff;--border:rgba(0,0,0,.08);--soft:rgba(0,0,0,.03);--text-on-dark:#0f172a;}
[data-theme="light"] body{background:#ffffff;color:#0f172a;}
[data-theme="light"] body::before{background:radial-gradient(ellipse 80% 60% at 5% 5%,rgba(239,68,68,.04) 0%,transparent 60%),radial-gradient(ellipse 60% 50% at 90% 85%,rgba(99,102,241,.03) 0%,transparent 60%);}
[data-theme="light"] .sidebar{background:#f8fafc;border-color:rgba(0,0,0,.08);}
[data-theme="light"] .sb-logo{border-color:rgba(0,0,0,.08);}
[data-theme="light"] .user-card{background:#f1f5f9;border-color:rgba(0,0,0,.06);}
[data-theme="light"] .nav-item{color:#475569;}
[data-theme="light"] .nav-item:hover{background:#f1f5f9;color:#0f172a;border-color:rgba(0,0,0,.06);}
[data-theme="light"] .nav-item.active{background:rgba(239,68,68,.06);color:#0f172a;border-color:rgba(239,68,68,.2);}
[data-theme="light"] .nav-item.active .ni{color:#ef4444;}
[data-theme="light"] .topbar{background:rgba(255,255,255,.9);border-color:rgba(0,0,0,.06);backdrop-filter:blur(12px);}
[data-theme="light"] .main{background:#ffffff;}
[data-theme="light"] .sc{background:#f8fafc;border-color:rgba(0,0,0,.06);}
[data-theme="light"] .card{background:#ffffff;border-color:rgba(0,0,0,.06);}
[data-theme="light"] .sh{border-color:rgba(0,0,0,.06);}
[data-theme="light"] input,[data-theme="light"] select,[data-theme="light"] textarea{background:#ffffff;border-color:rgba(0,0,0,.1);color:#0f172a;}
[data-theme="light"] select option{background:#ffffff;color:#0f172a;}
[data-theme="light"] .btn{border-color:rgba(0,0,0,.1);}
[data-theme="light"] .chip{border-color:rgba(0,0,0,.1);}
[data-theme="light"] .modal{background:#ffffff;border-color:rgba(0,0,0,.1);}
[data-theme="light"] table{border-color:rgba(0,0,0,.08);}
[data-theme="light"] th{background:#f8fafc;color:#64748b;border-color:rgba(0,0,0,.08);}
[data-theme="light"] td{border-color:rgba(0,0,0,.06);}
[data-theme="light"] tr:hover{background:rgba(239,68,68,.02);}
[data-theme="light"] .it-tab{background:#f1f5f9;border-color:rgba(0,0,0,.08);color:#64748b;}
[data-theme="light"] .it-tab.active{background:#ef4444;color:#fff;border-color:#ef4444;}
[data-theme="light"] .logout-btn{background:rgba(239,68,68,.06);border-color:rgba(239,68,68,.15);color:#dc2626;}
[data-theme="light"] .field input,[data-theme="light"] .field select,[data-theme="light"] .field textarea{background:#ffffff;color:#0f172a;border-color:rgba(0,0,0,.1);}
[data-theme="light"] .field select option{background:#ffffff;color:#0f172a;}
[data-theme="light"] .item{background:rgba(0,0,0,.02);border-color:rgba(0,0,0,.06);}
[data-theme="light"] .ov-card{background:rgba(0,0,0,.02);border-color:rgba(0,0,0,.06);}
[data-theme="light"] .search-bar input{background:#f1f5f9;color:#0f172a;border-color:rgba(0,0,0,.08);}
[data-theme="light"] .fi,[data-theme="light"] .inp{background:#ffffff;color:#0f172a;border-color:rgba(0,0,0,.1);}
[data-theme="light"] select.fi option,[data-theme="light"] select.inp option{background:#ffffff;color:#0f172a;}
[data-theme="light"] ::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);}
[data-theme="light"] .abar{background:rgba(0,0,0,.08);}
[data-theme="light"] .chip{color:inherit;}
[data-theme="light"] .chip-g{color:#059669;}
[data-theme="light"] .chip-a{color:#d97706;}
[data-theme="light"] .chip-c{color:#0891b2;}
[data-theme="light"] .chip-p{color:#6366f1;}
[data-theme="light"] .chip-y{color:#ca8a04;}
[data-theme="light"] .chip-r{color:#dc2626;}
[data-theme="light"] .btn-s{color:#d97706;}
[data-theme="light"] .btn-g{color:#059669;}
[data-theme="light"] .btn-c{color:#0891b2;}
[data-theme="light"] .btn-pu{color:#6366f1;}
[data-theme="light"] .btn-d{color:#dc2626;}
[data-theme="light"] .rf-btn.active{color:#dc2626;}
[data-theme="light"] .btn-r{color:#dc2626;}
[data-theme="light"] .pg-card:hover{border-color:rgba(239,68,68,.3);box-shadow:0 2px 12px rgba(0,0,0,.08);}

/* Pages Management */
.pg-card{transition:all .2s;}
.pg-card:hover{border-color:rgba(255,77,109,.3);box-shadow:0 2px 12px rgba(0,0,0,.15);}
.pg-cb{width:16px;height:16px;cursor:pointer;}
