.guide-page{max-width:1200px;margin:auto}.guide-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex}.guide-tools h1{margin:0 0 8px;font-size:24px}.guide-filters{grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:20px;margin:16px 0;padding:20px;display:grid}.guide-filters label{gap:8px;display:grid}.guide-layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:20px;display:grid}.guide-index{gap:12px;padding:18px;display:grid;position:sticky;top:16px}.guide-index a{color:var(--text2);font-size:14px;line-height:1.4}.guide-article{overflow-wrap:anywhere;margin-bottom:18px;padding:26px;scroll-margin-top:24px}.guide-article h2{margin-bottom:14px;font-size:20px}.guide-article p,.guide-article li{line-height:1.7}.guide-article ol{margin:16px 0;padding-left:22px}.guide-article li{margin:10px 0;padding-left:4px}.guide-note{color:var(--text2);border-left:3px solid var(--border);margin:12px 0;padding-left:14px}.guide-open{margin-top:12px}@media (width<=800px){.guide-layout,.guide-filters{grid-template-columns:1fr}.guide-index{position:static}.guide-article{padding:20px}}@media print{body:has(.guide-page) .sidebar{display:none!important}body:has(.guide-page) header:not(.guide-tools){display:none!important}body:has(.guide-page) .announcement-banner{display:none!important}body:has(.guide-page) .guide-filters{display:none!important}body:has(.guide-page) .guide-index{display:none!important}body:has(.guide-page) button{display:none!important}body:has(.guide-page) .guide-open{display:none!important}.guide-layout{display:block}.guide-article{break-inside:auto;margin:0;padding:12px 0;color:#000!important;box-shadow:none!important;background:#fff!important;border:0!important}.guide-article h2{break-after:avoid}.guide-article p,.guide-article li{color:#000!important}.guide-tools{box-shadow:none!important;color:#000!important;background:#fff!important;border:0!important}.page-content{padding:0!important}.main-area{width:100%!important;margin-left:0!important}body:has(.guide-page) .sidebar-veil{display:none!important}.guide-page{max-width:none}@page{margin:18mm}:is(body:has(.guide-page) .ann-banner,body:has(.guide-page) .assistant-fab,body:has(.guide-page) .assistant-panel){display:none!important}body:has(.guide-page) .app-layout{display:block!important}body:has(.guide-page){background:#fff!important}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f4f6fb;--bg2:#fff;--bg3:#f0f3f9;--bg4:#e6ebf4;--border:#dde3ee;--border2:#cbd4e3;--text:#1a2238;--text2:#4a5878;--text3:#5d6a82;--accent:#c4002c;--accent2:#9e0023;--accent-soft:#fbe4e8;--green:#16a34a;--green-soft:#dcfce7;--amber:#d97706;--amber-soft:#fef3c7;--red:#dc2626;--red-soft:#fee2e2;--purple:#7c3aed;--purple-soft:#ede9fe;--teal:#0d9488;--teal-soft:#ccfbf1;--radius:10px;--radius-lg:16px;--sb-bg:#16181f;--sb-bg-hover:#22252f;--sb-text:#9ba3b4;--sb-text-active:#fff;--sb-border:#262a35}[data-theme=dark]{--bg:#0f1117;--bg2:#161b27;--bg3:#1e2535;--bg4:#252d40;--border:#2a3348;--border2:#3a4460;--text:#e8edf8;--text2:#8fa3c8;--text3:#a0aec6;--accent:#f0436a;--accent2:#c4002c;--accent-soft:#3a0d18;--green:#22c55e;--green-soft:#0d2d1a;--amber:#f59e0b;--amber-soft:#2d1e06;--red:#ef4444;--red-soft:#2d0f0f;--purple:#a78bfa;--purple-soft:#1e1535;--teal:#14b8a6;--teal-soft:#0a2320;--radius:10px;--radius-lg:16px;--sb-bg:#0c0e13;--sb-bg-hover:#1a1d26;--sb-text:#8a93a6;--sb-text-active:#fff;--sb-border:#1e222c}html,body,#root{background:var(--bg);height:100%;color:var(--text);-webkit-font-smoothing:antialiased;font-family:Segoe UI,system-ui,sans-serif;font-size:14px;line-height:1.5;transition:background .2s,color .2s}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}.app-layout{height:100vh;display:flex;overflow:hidden}.main-area{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.page-content{flex:1;padding:24px;overflow-y:auto}.text-muted{color:var(--text3)}.text-sm{font-size:13px}.text-xs{font-size:12px}.font-bold{font-weight:700}.font-semibold{font-weight:600}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.flex-1{flex:1}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;padding:20px}.card-title{font-size:16px;font-weight:700}.card-sub{color:var(--text3);margin-top:2px;font-size:13px}.card-header{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.stat-card{background:var(--bg2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-lg);padding:18px 20px}.stat-card.sc-amber{border-left-color:var(--amber,#d97706)}.stat-card.sc-teal{border-left-color:var(--teal)}.stat-card.sc-blue{border-left-color:#2563eb}.stat-card.sc-green{border-left-color:#16a34a}.stat-icon{margin-bottom:10px;font-size:22px}.stat-label{color:var(--text3);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px;font-size:12px}.stat-value{font-size:28px;font-weight:800;line-height:1}.stat-sub{color:var(--text3);margin-top:6px;font-size:12px}.btn{white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:7px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.btn-sm{padding:5px 12px;font-size:12px}.btn-lg{padding:11px 22px;font-size:14px}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent2)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{color:var(--text2);border:1px solid var(--border2);background:0 0}.btn-ghost:hover{background:var(--bg3);color:var(--text)}.btn-success{background:var(--green-soft);color:var(--green);border:1px solid #0d3d1a}.btn-success:hover{background:#0d3d1a}.btn-danger{background:var(--red-soft);color:var(--red);border:1px solid #3d1515}.btn-danger:hover{background:#3d1515}.badge{border-radius:20px;align-items:center;gap:4px;padding:3px 11px;font-size:11px;font-weight:600;display:inline-flex}.badge-pending{background:var(--amber-soft);color:var(--amber);border:1px solid #3d2a06}.badge-tl{background:var(--teal-soft);color:var(--teal);border:1px solid #0a3530}.badge-approved{background:var(--green-soft);color:var(--green);border:1px solid #0d3d1a}.badge-rejected{background:var(--red-soft);color:var(--red);border:1px solid #3d1515}.badge-info{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent2)}.role-badge{border-radius:20px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.role-hr{background:var(--purple-soft);color:var(--purple)}.role-hr_officer{background:var(--teal-soft);color:var(--teal)}.role-groupadmin{background:var(--amber-soft);color:var(--amber)}.role-teamlead{background:var(--teal-soft);color:var(--teal)}.role-staff{background:var(--accent-soft);color:var(--accent)}.tag{background:var(--bg4);color:var(--text2);border:1px solid var(--border);border-radius:5px;padding:2px 8px;font-size:11px;display:inline-block}.form-group{margin-bottom:14px}.form-label{color:var(--text2);margin-bottom:5px;font-size:12px;font-weight:600;display:block}.form-input,.form-select,.form-textarea{background:var(--bg3);border:1px solid var(--border2);width:100%;color:var(--text);border-radius:8px;outline:none;padding:9px 12px;font-size:13px;transition:border .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent)}.form-textarea{resize:vertical;min-height:80px}.form-select option{background:var(--bg3)}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-error{color:var(--red);margin-top:4px;font-size:11px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:var(--text3);text-transform:uppercase;letter-spacing:.8px;border-bottom:1px solid var(--border);padding:8px 12px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}tr:last-child td{border-bottom:none}tr:hover td{background:var(--bg3)}.modal-overlay{z-index:100;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--radius-lg);width:100%;max-width:540px;max-height:90vh;padding:24px;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-title{font-size:16px;font-weight:800}.modal-close{color:var(--text3);background:0 0;border:none;border-radius:6px;padding:4px;font-size:20px;line-height:1}.modal-close:hover{background:var(--bg4);color:var(--text)}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;display:flex}.info-box{background:var(--accent-soft);border:1px solid var(--accent2);color:var(--text2);border-radius:8px;align-items:flex-start;gap:8px;margin-bottom:14px;padding:10px 14px;font-size:12px;display:flex}.info-box i{color:var(--accent);flex-shrink:0;margin-top:1px}.progress-bar{background:var(--bg4);border-radius:3px;height:6px;margin-top:6px;overflow:hidden}.progress-fill{border-radius:3px;height:100%;transition:width .4s}.avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.empty-state{text-align:center;color:var(--text3);padding:48px 20px}.empty-state i{opacity:.35;margin-bottom:12px;font-size:40px;display:block}.empty-state p{font-size:13px}.spinner{justify-content:center;align-items:center;padding:48px;display:flex}.spinner-ring{border:3px solid var(--border2);border-top-color:var(--accent);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toast-container{z-index:200;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.toast{border-radius:10px;align-items:center;gap:10px;padding:12px 18px;font-size:13px;font-weight:600;animation:.2s slideUp;display:flex;box-shadow:0 4px 20px #0006}.toast-success{background:var(--green-soft);color:var(--green);border:1px solid #0d3d1a}.toast-error{background:var(--red-soft);color:var(--red);border:1px solid #3d1515}.toast-info{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent2)}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.pto-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.pto-row:last-child{border-bottom:none}.pto-name{flex-shrink:0;width:130px;font-size:13px}.pto-bar{background:var(--bg4);border-radius:4px;flex:1;height:8px;overflow:hidden}.pto-fill{border-radius:4px;height:100%}.pto-nums{color:var(--text2);white-space:nowrap;text-align:right;min-width:150px;font-size:12px}.flow-step{border:1px solid var(--border);background:var(--bg3);border-radius:8px;align-items:center;gap:10px;margin-bottom:8px;padding:12px;display:flex}.flow-step-num{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;font-weight:800;display:flex}.timeline{list-style:none}.timeline-item{gap:12px;margin-bottom:14px;display:flex}.timeline-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:4px}.sidebar{background:var(--sb-bg);border-right:1px solid var(--sb-border);flex-direction:column;flex-shrink:0;width:240px;display:flex}.logo{border-bottom:1px solid var(--sb-border);background:0 0;align-items:center;gap:11px;padding:18px 18px 16px;display:flex}.logo-icon{background:var(--accent);color:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:19px;display:flex}.logo-text{letter-spacing:-.2px;color:#fff;font-size:15px;font-weight:800;line-height:1.1}.logo-sub{color:#ffffff8c;letter-spacing:1px;text-transform:uppercase;margin-top:1px;font-size:10px}.nav{flex:1;padding:12px 10px;overflow-y:auto}.nav-section{color:#ffffff59;text-transform:uppercase;letter-spacing:1.2px;margin-top:6px;padding:10px 10px 4px;font-size:10px;font-weight:700}.nav-item{color:var(--sb-text);border-radius:9px;align-items:center;gap:11px;margin-bottom:2px;padding:9px 12px;font-size:13px;font-weight:500;transition:all .15s;display:flex;position:relative}.nav-item:hover{background:var(--sb-bg-hover);color:var(--sb-text-active)}.nav-item.active{background:var(--accent);color:#fff;font-weight:600}.nav-item.active:before{content:none}.nav-item i{text-align:center;width:18px;font-size:17px}.nav-badge{background:var(--red);color:#fff;border-radius:10px;margin-left:auto;padding:2px 6px;font-size:10px;font-weight:700}.sidebar-logos{border-top:1px solid var(--sb-border);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:12px 14px;display:flex}.sidebar-logos img{object-fit:contain;border-radius:6px;width:auto;height:32px}.sidebar-user-wrap{border-top:1px solid var(--sb-border);position:relative}.sidebar-user{cursor:pointer;background:0 0;align-items:center;gap:10px;width:100%;padding:12px 14px;transition:background .12s;display:flex}.sidebar-user:hover{background:var(--sb-bg-hover)}.acct-backdrop{z-index:40;position:fixed;inset:0}.acct-menu{z-index:50;background:var(--bg2);border:1px solid var(--border2);border-radius:11px;padding:6px;position:absolute;bottom:64px;left:12px;right:12px;box-shadow:0 -8px 30px #0000002e}.acct-menu-top{min-width:210px;inset:46px 0 auto auto;box-shadow:0 10px 30px #0000002e}.acct-switch{position:relative}.acct-trigger{border:1px solid var(--border2);background:var(--bg3);border-radius:9px;align-items:center;gap:5px;padding:4px 8px 4px 4px;transition:all .15s;display:flex}.acct-trigger:hover{background:var(--bg4);border-color:var(--accent)}.acct-header{align-items:center;gap:10px;padding:8px 10px;display:flex}.acct-item{width:100%;color:var(--text2);text-align:left;border-radius:8px;align-items:center;gap:11px;padding:10px 12px;font-size:13px;font-weight:500;transition:all .12s;display:flex}.acct-item:hover{background:var(--bg3);color:var(--text)}.acct-item i{text-align:center;width:18px;font-size:17px}.acct-divider{background:var(--border);height:1px;margin:6px 4px}.acct-danger{color:var(--red)}.acct-danger:hover{color:var(--red);background:#dc262614}.topbar{background:var(--bg2);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex}.topbar-title{font-size:16px;font-weight:700}.topbar-sub{color:var(--text3);margin-top:1px;font-size:12px}.theme-toggle{border:1px solid var(--border2);background:var(--bg3);width:38px;height:38px;color:var(--text2);border-radius:9px;justify-content:center;align-items:center;gap:5px;font-size:18px;transition:all .15s;display:flex}.theme-toggle:hover{background:var(--bg4);color:var(--accent);border-color:var(--accent)}.topbar-actions{align-items:center;gap:8px;display:flex}.lang-switch{position:relative}.lang-switch .theme-toggle{width:auto;padding:0 11px}.lang-current{letter-spacing:.3px;font-size:12px;font-weight:700}.lang-backdrop{z-index:40;position:fixed;inset:0}.lang-menu{z-index:50;background:var(--bg2);border:1px solid var(--border2);border-radius:11px;min-width:170px;padding:6px;position:absolute;top:46px;right:0;box-shadow:0 10px 30px #0000002e}.lang-option{width:100%;color:var(--text2);text-align:left;border-radius:8px;align-items:center;gap:10px;padding:9px 11px;font-size:13px;transition:all .12s;display:flex}.lang-option:hover{background:var(--bg3);color:var(--text)}.lang-option.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.lang-flag{background:var(--bg4);color:var(--text2);letter-spacing:.5px;border-radius:5px;padding:2px 6px;font-size:11px;font-weight:700}.lang-option.active .lang-flag{background:var(--accent);color:#fff}.login-page{background:radial-gradient(circle at 50% 0%, var(--accent-soft), var(--bg));justify-content:center;align-items:center;height:100vh;display:flex}.login-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:400px;padding:36px}.login-logo{justify-content:center;align-items:center;gap:10px;margin-bottom:8px;display:flex}.demo-accounts{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.demo-acc{background:var(--bg3);cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:7px 10px;font-size:12px;transition:all .15s;display:flex}.demo-acc:hover{border-color:var(--accent)}@media (width<=768px){.grid-2,.grid-3,.grid-4,.form-row{grid-template-columns:1fr}.sidebar{display:none}}.request-leave-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;max-width:1000px;display:grid}@media (width<=900px){.request-leave-grid{grid-template-columns:1fr}}.cal{-webkit-user-select:none;user-select:none}.cal-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.cal-title{color:var(--text);font-size:14px;font-weight:700}.cal-nav{border:1px solid var(--border2);background:var(--bg3);width:32px;height:32px;color:var(--text2);border-radius:8px;justify-content:center;align-items:center;font-size:16px;transition:all .12s;display:flex}.cal-nav:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-weekdays{margin-bottom:6px}.cal-weekday{text-align:center;color:var(--text3);text-transform:uppercase;letter-spacing:.5px;padding:4px 0;font-size:10px;font-weight:700}.cal-day{aspect-ratio:1;color:var(--text2);background:0 0;border-radius:8px;justify-content:center;align-items:center;font-size:13px;transition:all .12s;display:flex;position:relative}.cal-day:not(.empty):hover{background:var(--bg3);color:var(--text)}.cal-day.empty{pointer-events:none}.cal-day.today{box-shadow:inset 0 0 0 1px var(--border2);font-weight:700}.cal-day.in-range{background:var(--accent-soft);color:var(--accent);border-radius:0}.cal-day.selected{background:var(--accent);color:#fff;font-weight:700}.cal-day.exist-approved:after{content:"";background:var(--green);border-radius:50%;width:5px;height:5px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.cal-day.exist-pending:after{content:"";background:var(--amber);border-radius:50%;width:5px;height:5px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.cal-day.selected.exist-approved:after,.cal-day.selected.exist-pending:after{background:#fff}.cal-legend{border-top:1px solid var(--border);flex-wrap:wrap;gap:16px;margin-top:14px;padding-top:12px;display:flex}.cal-leg{color:var(--text2);align-items:center;gap:6px;font-size:11px;display:flex}.cal-leg .dot{border-radius:50%;width:9px;height:9px;display:inline-block}.dot-selected{background:var(--accent)}.dot-approved{background:var(--green)}.dot-pending{background:var(--amber)}.cal-summary{background:var(--accent-soft);color:var(--accent);border-radius:9px;align-items:center;gap:8px;margin-top:14px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.tabs{border-bottom:1px solid var(--border);gap:4px;display:flex}.tab{color:var(--text2);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 18px;font-size:13px;font-weight:600;transition:all .15s}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.tree{padding:6px 0}.tree-row{border-radius:9px;align-items:center;gap:10px;padding:8px 10px;transition:background .12s;display:flex}.tree-row:hover{background:var(--bg3)}.tree-toggle{width:22px;height:22px;color:var(--text2);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;display:flex}.tree-toggle:hover{background:var(--bg4);color:var(--accent)}.tree-toggle.invisible{visibility:hidden}.tree-info{flex:1;min-width:0}.tree-name{color:var(--text);font-size:14px;font-weight:600}.tree-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:flex}.tree-dept,.tree-company{color:var(--text3);font-size:11px}.tree-company{background:var(--bg3);border-radius:5px;padding:1px 7px}.tree-count{color:var(--text2);background:var(--bg3);border-radius:10px;padding:2px 9px;font-size:11px;font-weight:700}.tree-children{position:relative}.tree-children:before{content:"";background:var(--border2);width:1px;position:absolute;top:0;bottom:14px;left:21px}.login-split{height:100vh;display:flex;overflow:hidden}.login-left{background:var(--bg2);z-index:3;flex-shrink:0;justify-content:center;align-items:center;width:440px;max-width:42%;padding:40px;display:flex;position:relative;box-shadow:0 0 40px #00000014}.login-right{background:linear-gradient(135deg,var(--accent),var(--accent2));flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-form-wrap{width:100%;max-width:340px}@media (width<=760px){.login-right{display:none}.login-left{width:100%;max-width:100%}}.login-bg-logos{z-index:2;align-items:center;gap:28px;display:flex;position:relative}.login-bg-logo{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;border-radius:24px;justify-content:center;align-items:center;width:120px;height:120px;padding:18px;animation:4s ease-in-out infinite logoFloat;display:flex;box-shadow:0 12px 40px #0003}.login-bg-logo:nth-child(2){animation-delay:.8s}.login-bg-logo img{object-fit:contain;filter:drop-shadow(0 4px 10px #00000040);width:100%;height:100%}@keyframes logoFloat{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-16px)rotate(2deg)}}.login-bg-deco{background:#ffffff12;border-radius:50%;position:absolute}.login-bg-deco.d1{width:340px;height:340px;animation:9s ease-in-out infinite floatSlow;top:-80px;right:-60px}.login-bg-deco.d2{width:220px;height:220px;animation:7s ease-in-out infinite reverse floatSlow;bottom:-40px;left:-50px}.login-bg-deco.d3{width:120px;height:120px;animation:11s ease-in-out infinite floatSlow;top:50%;left:20%}@keyframes floatSlow{0%,to{transform:translate(0)}50%{transform:translate(20px,-24px)}}.login-tagline{text-align:center;color:#ffffffeb;z-index:2;position:absolute;bottom:42px;left:0;right:0}.login-tagline h2{letter-spacing:-.4px;margin-bottom:6px;font-size:22px;font-weight:800}.login-tagline p{color:#ffffffb3;font-size:13px}.link-btn{color:var(--accent);background:0 0;font-weight:600;transition:opacity .12s}.link-btn:hover{opacity:.7;text-decoration:underline}.birthday-list{flex-direction:column;gap:8px;display:flex}.birthday-row{border:1px solid var(--border);border-radius:11px;align-items:center;gap:14px;padding:12px 14px;transition:all .12s;display:flex}.birthday-row:hover{border-color:var(--border2);background:var(--bg3)}.birthday-row.is-today{border-color:var(--accent);background:var(--accent-soft)}.birthday-date{background:var(--bg3);border-radius:10px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.birthday-row.is-today .birthday-date{background:var(--accent);color:#fff}.birthday-day{font-size:18px;font-weight:800;line-height:1}.birthday-month{text-transform:uppercase;letter-spacing:.5px;opacity:.7;font-size:10px;font-weight:600}.matrix-table th{text-align:center;white-space:nowrap;padding:10px 8px;font-size:12px}.matrix-table td{vertical-align:middle;padding:8px}.perm-cell{background:var(--bg3);width:30px;height:30px;color:var(--text3);border:1px solid var(--border);border-radius:7px;justify-content:center;align-items:center;font-size:15px;transition:all .12s;display:inline-flex}.perm-cell:hover{border-color:var(--accent)}.perm-cell.on{background:var(--green);color:#fff;border-color:var(--green)}.perm-cell.locked{opacity:.6;cursor:not-allowed}.perm-cell.locked:hover{border-color:var(--border)}.audit-filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.audit-filters .form-select,.audit-filters .form-input{flex:0 auto;width:auto;min-width:130px}.settings-layout{grid-template-columns:260px 1fr;align-items:start;gap:20px;display:grid}.settings-nav{background:var(--bg2);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:4px;padding:10px;display:flex;position:sticky;top:20px}.settings-group{flex-direction:column;display:flex}.settings-group-head{color:var(--text);background:0 0;border-radius:8px;align-items:center;gap:9px;padding:9px 10px;font-size:13px;font-weight:700;transition:background .12s;display:flex}.settings-group-head:hover{background:var(--bg3)}.settings-group-head i:first-child{color:var(--accent);font-size:16px}.settings-items{flex-direction:column;gap:2px;padding:2px 0 6px 8px;display:flex}.settings-item{color:var(--text2);text-align:left;background:0 0;border-radius:8px;align-items:center;gap:9px;padding:8px 10px 8px 16px;font-size:13px;transition:all .12s;display:flex}.settings-item:hover{background:var(--bg3);color:var(--text)}.settings-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.settings-item i{font-size:15px}.settings-content{min-width:0}@media (width<=760px){.settings-layout{grid-template-columns:1fr}.settings-nav{position:static}}.sidebar-collapse-btn{color:var(--sb-text);background:0 0;border-radius:9px;align-items:center;gap:10px;margin:6px;padding:10px 14px;font-size:13px;font-weight:600;transition:all .12s;display:flex}.sidebar-collapse-btn:hover{background:var(--sb-bg-hover);color:var(--sb-text-active)}.app-layout.sidebar-collapsed .sidebar{width:64px;min-width:64px}.app-layout.sidebar-collapsed .logo-text,.app-layout.sidebar-collapsed .logo-sub,.app-layout.sidebar-collapsed .nav-item span,.app-layout.sidebar-collapsed .nav-section,.app-layout.sidebar-collapsed .sidebar-user>div,.app-layout.sidebar-collapsed .sidebar-logos,.app-layout.sidebar-collapsed .collapse-label,.app-layout.sidebar-collapsed .nav-badge{display:none}.app-layout.sidebar-collapsed .nav-item,.app-layout.sidebar-collapsed .sidebar-collapse-btn,.app-layout.sidebar-collapsed .sidebar-user{justify-content:center}.sidebar{transition:width .18s,min-width .18s}.status-pill{border:1px solid #0000;border-radius:20px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.status-active{background:var(--green-soft);color:var(--green)}.status-inactive{background:var(--bg4);color:var(--text3)}.status-terminated{background:var(--red-soft,#fde8e8);color:var(--accent)}.settings-stack{flex-direction:column;gap:18px;display:flex}.settings-stack .section-heading{color:var(--text);align-items:center;gap:9px;margin:6px 0 2px;padding-top:6px;font-size:15px;font-weight:700;display:flex}.settings-stack .section-heading i{color:var(--accent);font-size:18px}.announcement-card.is-pinned{border-left:3px solid var(--accent)}.ann-banner{background:var(--accent-soft);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 16px;display:flex;overflow:hidden}.ann-banner-icon{color:var(--accent);flex-shrink:0;font-size:18px}.ann-banner-track{white-space:nowrap;flex:1;overflow:hidden}.ann-banner-scroll{white-space:nowrap;animation:30s linear infinite ann-scroll;display:inline-block}.ann-banner-item{color:var(--text2);margin-right:8px;font-size:13px}.ann-banner-item strong{color:var(--accent)}.ann-banner-sep{color:var(--accent);opacity:.5;margin:0 18px}.ann-banner:hover .ann-banner-scroll{animation-play-state:paused}@keyframes ann-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.filter-pills{background:var(--bg2);border-radius:8px;gap:2px;padding:3px;display:inline-flex}.filter-pill{color:var(--text2);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 12px;font-size:13px;font-weight:600;transition:all .15s}.filter-pill:hover{color:var(--text)}.filter-pill.active{background:var(--accent);color:#fff}.sidebar-footer{color:var(--sb-text,#ffffff73);opacity:.65;text-align:center;letter-spacing:.2px;padding:10px 16px;font-size:10.5px}.assistant-fab{background:var(--accent);color:#fff;cursor:pointer;z-index:90;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:22px;transition:transform .15s;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 24px #c4002c59}.assistant-fab:hover{transform:scale(1.07)}.assistant-panel{background:var(--bg2);border:1px solid var(--border);z-index:90;border-radius:14px;width:300px;position:fixed;bottom:84px;right:22px;overflow:hidden;box-shadow:0 16px 48px #00000040}.assistant-head{background:var(--accent);color:#fff;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:700;display:flex}.assistant-body{padding:14px}.assistant-q{text-align:left;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);cursor:pointer;border-radius:10px;align-items:center;gap:9px;margin-bottom:8px;padding:11px 13px;font-size:13px;font-weight:600;transition:border-color .12s;display:flex}.assistant-q:hover{border-color:var(--accent)}.assistant-q i{color:var(--accent);font-size:17px}.assistant-back{color:var(--text3);cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;margin-bottom:10px;padding:0;font-size:12px;display:flex}.assistant-answer{flex-direction:column;gap:7px;display:flex}.assistant-line{background:var(--bg);border:1px solid var(--border);border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;font-size:12.5px;display:flex}.assistant-line span{color:var(--text2)}.assistant-line strong{color:var(--text);white-space:nowrap}.link-btn{cursor:pointer;text-decoration:underline;background:0 0!important;border:none!important;padding:0!important}.link-btn:hover{opacity:.8}.login-right{position:relative;overflow:hidden}.login-carousel-bg{z-index:0;position:absolute;inset:0}.carousel-slide-bg{opacity:0;background-position:50%;background-size:cover;transition:opacity 2s ease-in-out;position:absolute;inset:0}.carousel-overlay-bg{background:linear-gradient(135deg,#dc2646e0,#b41937eb);position:absolute;inset:0}.login-right>:not(.login-carousel-bg){z-index:1;position:relative}.login-right .login-tagline{text-align:center;width:100%;padding:0 24px;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.login-right{background:0 0!important}.login-bg-logos{display:none!important}.dash-hero{border-radius:14px;align-items:center;min-height:130px;margin-bottom:20px;display:flex;position:relative;overflow:hidden}.dash-hero-img{background:url(/images/photo1.jpg) 50%/cover;position:absolute;inset:0}.dash-hero-veil{background:linear-gradient(100deg,#c81e3ceb 30%,#c81e3c8c 100%);position:absolute;inset:0}.dash-hero-txt{z-index:1;color:#fff;padding:0 30px;position:relative}.dash-hero-txt h2{margin:0 0 4px;font-size:26px;font-weight:800}.dash-hero-txt p{opacity:.85;text-transform:capitalize;margin:0;font-size:14px}.carousel-slide-bg.active{opacity:1!important}.carousel-overlay-bg{background:linear-gradient(#0000 50%,#00000026 75%,#0000008c 100%)!important}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.table-wrap::-webkit-scrollbar{height:10px}.table-wrap th:first-child,.table-wrap td:first-child{z-index:2;background:var(--bg2);box-shadow:1px 0 0 var(--border);position:sticky;left:0}.table-wrap{max-height:70vh;overflow:auto}.burger-btn{color:var(--text);cursor:pointer;background:0 0;border:none;padding:6px 10px;font-size:22px;display:none}@media (width<=768px){.burger-btn{align-items:center;display:inline-flex}.sidebar{z-index:1200;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:4px 0 24px #0006;display:flex!important}.sidebar.mobile-open{transform:translate(0)}.sidebar-veil{z-index:1100;background:#00000080;position:fixed;inset:0}}.table-wrap table{min-width:1050px}.table-wrap{display:block;max-height:70vh!important;overflow:auto!important}.table-wrap::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:6px}.table-wrap{scrollbar-width:thin;scrollbar-color:var(--accent) transparent}.table-wrap::-webkit-scrollbar{width:14px;height:14px}.table-wrap::-webkit-scrollbar-track{background:var(--bg3);border-radius:8px}.table-wrap::-webkit-scrollbar-thumb{background:var(--accent);border:3px solid var(--bg2);border-radius:8px}.table-wrap::-webkit-scrollbar-thumb:hover{background:var(--accent2)}@media (width<=768px){.form-input,.form-select,.form-textarea,input,select,textarea{font-size:16px!important}.topbar{padding-top:calc(env(safe-area-inset-top) + 8px)}.sidebar{padding-top:env(safe-area-inset-top)}}.ann-notice-title{text-align:left;min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:1;padding:4px 0;font-size:14px;font-weight:600;overflow:hidden}.ann-notice-link{flex-shrink:0;font-size:13px;text-decoration:underline}.ann-notice-title:focus-visible,.ann-notice-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=480px){.ann-banner{flex-wrap:wrap}.ann-notice-link{margin-left:28px}}.badge-cancelled{color:var(--text3);background:var(--bg);border:1px solid var(--border)}.assistant-panel{flex-direction:column;width:380px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 104px);display:flex}.assistant-panel .assistant-head{flex-shrink:0;justify-content:space-between}.assistant-head h2{margin:0;font-size:15px}.assistant-close{color:inherit;cursor:pointer;background:0 0;border:0;min-width:36px;min-height:36px;font-size:20px}.assistant-panel .assistant-body{overscroll-behavior:contain;min-height:0;overflow-y:auto}.assistant-panel .assistant-q{min-height:44px;font-size:14px;text-decoration:none}.assistant-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.assistant-toolbar .assistant-back{min-height:36px;font-size:13px}.assistant-view-title{margin:0 0 12px;font-size:15px}.assistant-entry{border-bottom:1px solid var(--border);overflow-wrap:anywhere;flex-direction:column;gap:6px;padding:12px 0;font-size:14px;display:flex}.assistant-panel .assistant-answer{margin-bottom:14px}.assistant-panel :is(button,a):focus-visible,.assistant-fab:focus-visible{outline:2px solid var(--text);outline-offset:3px}@media (width<=480px){.assistant-panel{bottom:82px;right:16px}.assistant-fab{bottom:16px;right:16px}}@media (width<=768px){html,body{height:100%}body{flex-direction:column;height:100dvh;display:flex}#root{flex:1 1 0;height:auto;min-height:0}.app-layout{height:100%;min-height:0}.main-area,.page-content{min-height:0}.topbar{height:auto;min-height:calc(64px + env(safe-area-inset-top,0px));padding:calc(8px + env(safe-area-inset-top,0px)) 12px 8px;flex:none;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.topbar>div:not(.topbar-actions){overflow-wrap:anywhere;min-width:0}.topbar-actions{flex-shrink:0;gap:6px}.topbar .burger-btn,.topbar .theme-toggle,.topbar .acct-trigger{min-height:44px}.ann-banner{flex:none;min-width:0}.ann-notice-link{white-space:normal}.page-content{padding:16px 12px calc(16px + env(safe-area-inset-bottom,0px))}.page-content>.flex.items-center.justify-between,.announcement-card>.flex.justify-between{flex-wrap:wrap;gap:12px}.announcement-card>.flex.justify-between>div:first-child{min-width:0;flex-basis:220px!important}.announcement-card .flex.items-center{flex-wrap:wrap}.announcement-card{overflow-wrap:anywhere}.announcement-card>.flex.justify-between>.flex.gap-1{align-self:flex-start}body>[id^=myhr-uat-banner-v]{flex:none;padding-top:calc(7px + env(safe-area-inset-top,0px))!important;position:static!important}body>[id^=myhr-uat-banner-v]+div[aria-hidden=true]{display:none}body:has(>[id^=myhr-uat-banner-v]) .topbar{min-height:64px;padding-top:8px}}@media (width<=480px){.topbar{grid-template-columns:44px minmax(0,1fr)}.topbar>.burger-btn{grid-area:1/1}.topbar>.topbar-actions{grid-area:1/2;justify-self:end}.topbar>div:not(.topbar-actions){grid-area:2/1/auto/-1}}
