
/* VORSHIA HRMS Batch 1 — grouped navigation, portal auth, theme and responsive safeguards */
:root{--v-accent:#3478c5;--v-accent-2:#6b5bd6;--v-panel:#fff;--v-bg:#f4f7fb;--v-text:#10243e;--v-line:#dce6ef;--v-shadow:0 18px 50px rgba(9,31,58,.09)}
html.hrms-dark{--v-bg:#0a1422;--v-panel:#101f32;--v-text:#e9f1f8;--v-line:#26384c;--v-shadow:0 18px 50px rgba(0,0,0,.28)}
body{background:var(--v-bg);color:var(--v-text)}
.card,.table-card,.form-card,.profile-hero{background:var(--v-panel);border-color:var(--v-line)}
.hrm-sidebar{transition:width .25s ease,transform .25s ease}.secondary-nav{position:fixed;left:245px;top:0;bottom:0;width:245px;background:var(--v-panel);border-right:1px solid var(--v-line);z-index:19;padding:24px 14px;transition:transform .25s ease,left .25s ease;box-shadow:12px 0 36px rgba(0,0,0,.05)}.secondary-nav.collapsed{transform:translateX(-100%)}.secondary-top{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 18px}.secondary-group{display:grid;gap:6px}.secondary-link{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;color:var(--v-text);font-weight:600}.secondary-link:hover,.secondary-link.active{background:#eaf3fb;color:#124e82}.secondary-link i{width:22px;text-align:center;font-style:normal}.module-nav{width:100%;display:flex;align-items:center;gap:10px;border:0;background:transparent;color:#fff;padding:11px 10px;border-radius:12px;text-align:left;margin:2px 0;font-weight:700}.module-nav:hover,.module-nav.active{background:rgba(255,255,255,.12)}.module-nav i{width:22px;font-style:normal}.module-nav b{margin-left:auto}.sidebar-toggle{border:1px solid var(--v-line);background:var(--v-panel);color:var(--v-text);width:38px;height:38px;border-radius:10px}.topbar-left{display:flex;align-items:center;gap:12px}.main-content{margin-left:490px;transition:margin-left .25s ease}.main-content.expanded{margin-left:245px}.sidebar.collapsed{width:74px}.sidebar.collapsed .sidebar-user>div,.sidebar.collapsed .module-nav span,.sidebar.collapsed .module-nav b,.sidebar.collapsed .sidebar-brand span,.sidebar.collapsed .sidebar-logout span{display:none}.sidebar.collapsed .module-nav{justify-content:center}.theme-toggle{border:1px solid var(--v-line);background:var(--v-panel);color:var(--v-text);width:38px;height:38px;border-radius:10px}.hrm-session-timer{position:fixed;right:18px;bottom:18px;z-index:100;color:#fff;background:#9b1c31;padding:8px 11px;border-radius:10px;font-size:12px;font-weight:800;box-shadow:0 8px 28px rgba(155,28,49,.25)}
.hrm-auth-body{background:linear-gradient(135deg,#eef4fb,#f8fbff)}.auth-split{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;background:var(--v-bg)}.auth-visual{position:relative;overflow:hidden;background:linear-gradient(135deg,#071a2f,#123c62,#4264bf);padding:54px;color:#fff;display:flex;flex-direction:column;justify-content:center}.auth-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:32px 32px;opacity:.5}.auth-orbit{position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:50%;animation:spin 16s linear infinite}.auth-orbit.o1{width:440px;height:440px;right:-120px;top:14%}.auth-orbit.o2{width:260px;height:260px;left:-90px;bottom:10%;animation-direction:reverse}.auth-logo{position:relative;width:118px;height:118px;object-fit:contain;background:#fff;border-radius:28px;padding:12px;box-shadow:0 20px 50px rgba(0,0,0,.22)}.auth-brand-pill{position:relative;margin-top:18px;display:inline-flex;width:max-content;padding:7px 11px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.09);border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.12em}.auth-visual h2{position:relative;max-width:620px;font-size:clamp(34px,4.6vw,64px);line-height:1.02;margin:22px 0}.auth-feature-stack{position:relative;display:grid;gap:10px;max-width:520px}.auth-feature-stack div{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}.auth-feature-stack i{font-style:normal;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14)}.auth-panel{align-self:center;justify-self:center;width:min(520px,92%);padding:42px}.otp-shell{width:min(520px,92%);margin:8vh auto;background:var(--v-panel);padding:44px;border-radius:24px;box-shadow:var(--v-shadow);border:1px solid var(--v-line)}.otp-logo{width:86px;height:86px;object-fit:contain}.otp-field{text-align:center;font-size:28px;letter-spacing:10px;font-weight:800}.otp-actions{display:flex;gap:10px;margin-top:10px}.otp-actions>*{flex:1}.auth-footnote{font-size:12px;color:#6f8198;line-height:1.5;margin-top:18px}.muted{color:#6f8198}.eyebrow{color:#3971a8}
@keyframes spin{to{transform:rotate(360deg)}}
html.hrms-dark .topbar,html.hrms-dark .secondary-nav,html.hrms-dark .card,html.hrms-dark .table-card,html.hrms-dark .form-card,html.hrms-dark .profile-hero{background:#101f32;color:#e9f1f8}html.hrms-dark input,html.hrms-dark textarea,html.hrms-dark select{background:#0d1a2a;color:#e9f1f8;border-color:#2b4055}html.hrms-dark .secondary-link{color:#e9f1f8}html.hrms-dark .secondary-link:hover,html.hrms-dark .secondary-link.active{background:#173b5d;color:#fff}
@media(max-width:1200px){.secondary-nav{left:84px}.main-content{margin-left:84px}.main-content.expanded{margin-left:84px}.sidebar{width:84px}.sidebar .sidebar-user>div,.sidebar .module-nav span,.sidebar .module-nav b,.sidebar .sidebar-brand span,.sidebar .sidebar-logout span{display:none}.sidebar .module-nav{justify-content:center}.auth-split{grid-template-columns:1fr}.auth-visual{min-height:340px}.auth-panel{padding:28px}}
@media(max-width:760px){.secondary-nav{left:0;width:280px;transform:translateX(-100%)}.secondary-nav:not(.collapsed){transform:translateX(0)}.main-content,.main-content.expanded{margin-left:0}.sidebar{width:74px}.sidebar-brand img{width:54px;height:54px}.topbar{padding-left:14px!important;padding-right:14px!important}.auth-visual{min-height:300px;padding:28px}.auth-visual h2{font-size:36px}.auth-panel{padding:22px}.otp-shell{padding:28px 22px}.hrm-session-timer{right:10px;bottom:10px}}
@media(max-width:480px){.auth-feature-stack{display:none}.auth-logo{width:84px;height:84px}.auth-visual h2{font-size:30px}.otp-field{font-size:24px;letter-spacing:7px}}
.report-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:20px}.report-hero h2{font-size:clamp(28px,3vw,42px);margin:.15rem 0 .35rem}.report-date{font-weight:700;color:#6b7d92}.report-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;margin:18px 0}.bar-chart{height:210px;display:flex;align-items:flex-end;gap:12px;padding:16px 6px 0}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:38px}.bar{width:100%;max-width:40px;background:linear-gradient(180deg,#3478c5,#6b5bd6);border-radius:9px 9px 4px 4px;box-shadow:0 8px 22px rgba(52,120,197,.18)}.bar-value{font-size:12px;font-weight:800;color:#64758a}.bar-col small{color:#7a8a9d;font-size:11px}.dept-list{display:grid;gap:10px}.dept-row{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--v-line)}.dept-dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#3478c5,#6b5bd6)}.quick-report-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quick-report-grid a{padding:16px;border:1px solid var(--v-line);border-radius:15px;color:var(--v-text);background:var(--v-panel);transition:.2s}.quick-report-grid a:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(10,30,55,.08)}.quick-report-grid strong,.quick-report-grid span{display:block}.quick-report-grid strong{margin-bottom:5px}.quick-report-grid span{font-size:13px;color:#70829a;min-height:38px}.quick-report-grid a{font-weight:700}.quick-report-grid a::after{content:''}.report-stats{margin-bottom:18px}html.hrms-dark .report-date,html.hrms-dark .bar-col small,html.hrms-dark .bar-value,html.hrms-dark .quick-report-grid span{color:#9eb0c4}.mobile-nav{display:none}@media(max-width:1000px){.report-grid{grid-template-columns:1fr}.quick-report-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.report-hero{align-items:flex-start;flex-direction:column}.quick-report-grid{grid-template-columns:1fr}.bar-chart{gap:6px}.bar-col{min-width:28px}.bar{max-width:28px}}
