@import url(https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap);@import url(https://cdn.jsdelivr.net/npm/@tabler/icons-webfont@latest/tabler-icons.min.css);*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--navy:#0b2440;--navy-mid:#1a3f66;--blue:#2563eb;--blue-dark:#1d4ed8;--blue-light:#2563eb1a;--blue-mid:#3b82f6;--sidebar-w:248px;--white:#fff;--bg:#f3f7fc;--bg2:#eef3f9;--border:#e3ebf4;--border2:#0b24401a;--text:#0b2440;--text2:#334e68;--text3:#627d98;--green:#15803d;--green-bg:#f0fdf4;--amber:#c2410c;--amber-bg:#fff7ed;--red:#dc2626;--red-bg:#fef2f2;--purple:#5b6ee1;--purple-bg:#eef0ff;--teal:#0f766e;--teal-bg:#f0fdfa;--radius:14px;--radius-sm:10px;--radius-pill:100px;--shadow-sm:0 1px 2px #0b24400a,0 4px 12px #0b24400d;--shadow:0 4px 16px #0b244012,0 12px 32px #0b24400f;--shadow-md:0 12px 40px #0b24401f;--glow:0 0 24px #2563eb1f;--glass-bg:#fff;--glass-border:#e3ebf4;--glass-blur:blur(14px) saturate(140%);--grad-accent:linear-gradient(135deg,#1a3f66,#2563eb);--font:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,sans-serif;--mono:"JetBrains Mono",monospace;--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-in-out:cubic-bezier(0.45,0,0.55,1);--ease-spring:cubic-bezier(0.34,1.12,0.64,1);--dur-instant:0.12s;--dur-fast:0.18s;--dur-normal:0.3s;--dur-slow:0.45s}body{-webkit-font-smoothing:antialiased;background:linear-gradient(160deg,#eef4fb,#e4edf7 48%,#dce8f4);color:#0b2440;color:var(--text);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:14px;letter-spacing:-.01em;line-height:1.55}body,html{overflow-x:hidden}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#0b244029;background-clip:padding-box;border:2px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#0b244047;background-clip:padding-box}@keyframes fadeInUp{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{transform:scaleX(1)}50%{transform:scale3d(1.03,1.03,1)}}@keyframes slideUp{0%{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes countUp{0%{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes successPop{0%{opacity:0;transform:scale3d(.88,.88,1)}70%{opacity:1;transform:scale3d(1.02,1.02,1)}to{opacity:1;transform:scaleX(1)}}@keyframes successRing{0%{opacity:.5;transform:scale3d(.85,.85,1)}to{opacity:0;transform:scale3d(1.4,1.4,1)}}@keyframes taskSlideIn{0%{opacity:0;transform:translate3d(-10px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse-dot{0%,to{transform:scaleX(1)}50%{transform:scale3d(1.2,1.2,1)}}@keyframes pageEnter{0%{opacity:0}to{opacity:1}}@keyframes cardRise{0%{opacity:0}to{opacity:1}}@keyframes countPop{0%{opacity:0;transform:translate3d(0,10px,0) scale3d(.96,.96,1)}65%{opacity:1;transform:translate3d(0,-1px,0) scale3d(1.01,1.01,1)}to{opacity:1;transform:translateZ(0) scaleX(1)}}@keyframes modalPop{0%{opacity:0}to{opacity:1}}@keyframes toastSlide{0%{opacity:0;transform:translate3d(16px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes badgePulse{0%,to{transform:scaleX(1)}50%{transform:scale3d(1.08,1.08,1)}}.page{animation:pageEnter .3s cubic-bezier(.22,1,.36,1) both;animation:pageEnter var(--dur-normal) var(--ease-out) both}.card,.stat-card{animation:cardRise .3s cubic-bezier(.22,1,.36,1) both;animation:cardRise var(--dur-normal) var(--ease-out) both}.page .card:first-child,.stat-card:first-child{animation-delay:.05s}.page .card:nth-child(2),.stat-card:nth-child(2){animation-delay:.1s}.page .card:nth-child(3),.stat-card:nth-child(3){animation-delay:.15s}.page .card:nth-child(4),.stat-card:nth-child(4){animation-delay:.2s}.stat-card:nth-child(5){animation-delay:.25s}.stat-card:nth-child(6){animation-delay:.3s}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.loading-spinner-wrap{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center}.loading-spinner-wrap.loading-spinner-inline{flex-direction:row;gap:8px}.loading-spinner{animation:spin .72s linear infinite;border:3px solid #eef3f9;border-radius:50%;border-top-color:#2563eb;border:3px solid var(--bg2);border-top-color:var(--blue)}.loading-spinner-sm .loading-spinner{border-width:2px;height:18px;width:18px}.loading-spinner-md .loading-spinner{height:32px;width:32px}.loading-spinner-lg .loading-spinner{border-width:4px;height:44px;width:44px}.loading-spinner-label{color:#627d98;color:var(--text3);font-size:13px;font-weight:500}.loading-overlay{align-items:center;animation:fadeInUp .18s cubic-bezier(.22,1,.36,1) both;animation:fadeInUp var(--dur-fast) var(--ease-out) both;display:flex;justify-content:center;min-height:160px;padding:48px 24px}.loading-overlay-full{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffbf;border-radius:inherit;inset:0;position:absolute;z-index:10}.skeleton{animation:shimmer 1.2s linear infinite;background:linear-gradient(90deg,#eef3f9 25%,#e8edf3 50%,#eef3f9 75%);background:linear-gradient(90deg,var(--bg2) 25%,#e8edf3 50%,var(--bg2) 75%);background-size:200% 100%;border-radius:6px}.btn.is-loading{opacity:.85;pointer-events:none;position:relative}.btn.is-loading .btn-spinner{animation:spin .7s linear infinite;border:2px solid #ffffff59;border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;margin-right:8px;vertical-align:-2px;width:14px}.task-row-enter{animation:taskSlideIn .3s cubic-bezier(.22,1,.36,1) forwards;animation:taskSlideIn var(--dur-normal) var(--ease-out) forwards}.submit-success-overlay{align-items:center;animation:overlayFadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a254059;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.submit-success-card{animation:fadeInUp .3s cubic-bezier(.22,1,.36,1) both;animation:fadeInUp var(--dur-normal) var(--ease-out) both;background:#fff;background:var(--white);border-radius:14px;border-radius:var(--radius);box-shadow:0 12px 40px #0b24401f;box-shadow:var(--shadow-md);min-width:280px;padding:36px 40px;position:relative;text-align:center}.submit-success-ring{animation:successRing .8s ease-out forwards;border:3px solid #15803d;border:3px solid var(--green);border-radius:50%;height:72px;left:50%;margin-left:-36px;position:absolute;top:28px;width:72px}.submit-success-icon{align-items:center;animation:successPop .3s cubic-bezier(.34,1.12,.64,1) forwards;animation:successPop var(--dur-normal) var(--ease-spring) forwards;background:#f0fdf4;background:var(--green-bg);border-radius:50%;color:#15803d;color:var(--green);display:flex;font-size:32px;height:72px;justify-content:center;margin:0 auto 16px;width:72px}.submit-success-title{color:#0b2440;color:var(--text);font-size:18px;font-weight:600;margin-bottom:6px}.submit-success-sub{color:#627d98;color:var(--text3);font-size:13px}.profile-hero{align-items:center;animation:fadeInUp .3s cubic-bezier(.22,1,.36,1) both;animation:fadeInUp var(--dur-normal) var(--ease-out) both;background:linear-gradient(135deg,#0c2848f2,#1e4a72e6 55%,#2563ebd9);border:1px solid #fff3;border-radius:18px;box-shadow:0 16px 40px #081e3c47;display:flex;gap:22px;margin-bottom:20px;overflow:hidden;padding:28px 30px;position:relative}.profile-hero:before{background:#ffffff14;height:280px;right:-70px;top:-90px;width:280px}.profile-hero:after,.profile-hero:before{border-radius:50%;content:"";position:absolute}.profile-hero:after{background:#ffffff0f;bottom:-120px;height:210px;right:150px;width:210px}.profile-hero>*{position:relative;z-index:1}.profile-avatar{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:3px solid #ffffff80;border-radius:50%;box-shadow:0 8px 24px #0000002e;color:#fff;display:flex;flex-shrink:0;font-size:30px;font-weight:700;height:84px;justify-content:center;width:84px}.profile-hero-name{color:#fff;font-size:23px;font-weight:700;letter-spacing:-.4px;margin-bottom:7px}.profile-hero-meta{align-items:center;display:flex;flex-wrap:wrap;gap:14px}.profile-hero-meta>span{align-items:center;color:#ffffffe0;display:inline-flex;font-size:13px;gap:5px}.profile-hero-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff2e!important;border-radius:20px;color:#fff!important;font-size:12px;font-weight:600;padding:3px 12px}.profile-hero-last{align-items:center;color:#ffffffb8;display:flex;font-size:12px;gap:5px;margin-top:9px}.profile-hero-btn{align-items:center;background:#fff;border:none;border-radius:10px;box-shadow:0 4px 14px #00000026;color:#1e40af;cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13px;font-weight:600;gap:7px;padding:9px 16px;transition:all .18s ease}.profile-hero-btn:hover{box-shadow:0 8px 20px #00000038;transform:translateY(-2px)}.profile-hero-btn.ghost{background:#ffffff26;box-shadow:none;color:#fff}.profile-hero-btn.ghost:hover{background:#ffffff42}.profile-stats-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}@media (max-width:900px){.profile-stats-grid{grid-template-columns:repeat(2,1fr)}}.profile-stat-card{animation:fadeInUp .3s cubic-bezier(.22,1,.36,1) both;animation:fadeInUp var(--dur-normal) var(--ease-out) both;background:#fff;background:var(--white);border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);overflow:hidden;padding:20px 18px;position:relative;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.profile-stat-card:before{background:#0000;background:var(--accent,#0000);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease}.profile-stat-card:hover:before{opacity:1}.profile-stat-card:first-child{animation-delay:.05s}.profile-stat-card:nth-child(2){animation-delay:.1s}.profile-stat-card:nth-child(3){animation-delay:.15s}.profile-stat-card:nth-child(4){animation-delay:.2s}.profile-stat-card:hover{box-shadow:0 4px 16px #0b244012,0 12px 32px #0b24400f;box-shadow:var(--shadow);transform:translateY(-3px)}.profile-stat-icon{align-items:center;border-radius:12px;display:flex;font-size:22px;height:48px;justify-content:center;margin:0 auto 12px;width:48px}.profile-stat-value{animation:countUp .3s cubic-bezier(.22,1,.36,1) both;animation:countUp var(--dur-normal) var(--ease-out) both;font-size:32px;font-weight:500;letter-spacing:-1px;line-height:1}.profile-stat-label{color:#627d98;color:var(--text3);font-size:12px;font-weight:500;margin-top:8px}.app-layout{display:flex;min-height:100vh;position:relative}.app-scene-bg{background:linear-gradient(165deg,#e8f1fa,#d9e7f5 52%,#d0e0f0);inset:0;pointer-events:none;position:fixed;z-index:0}.app-scene-bg-art{opacity:.42}.app-scene-overlay{background:linear-gradient(165deg,#f3f7fc80,#e8f1fa94 45%,#dce8f4ad);inset:0;position:absolute}.sidebar{backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);background:#0c2848f0;border-right:1px solid #ffffff1f;bottom:0;box-shadow:4px 0 32px #081e3c38;display:flex;flex-direction:column;height:100dvh;left:0;max-height:100dvh;min-height:0;position:fixed;top:0;width:248px;width:var(--sidebar-w);z-index:100}.sidebar-brand{border-bottom:1px solid #ffffff0f;gap:12px;min-height:72px;padding:18px 14px}.brand-icon,.sidebar-brand{align-items:center;display:flex}.brand-icon{background:#0000;border:none;border-radius:11px;box-shadow:none;flex-shrink:0;height:40px;justify-content:center;overflow:hidden;padding:0;width:40px}.brand-icon-img{border-radius:11px;display:block;height:100%;object-fit:cover;width:100%}.brand-text{flex:1 1;line-height:1.25;min-width:0}.brand-name{color:#fff;font-size:15px;font-weight:700;letter-spacing:-.3px}.brand-name,.brand-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-sub{color:#94a3b8;font-size:11px;font-weight:500;margin-top:2px}.sidebar-nav{-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;overflow-y:auto;padding:12px 10px}.nav-section-label{color:#475569;font-size:10px;font-weight:600;letter-spacing:1px;padding:12px 10px 5px;text-transform:uppercase}.nav-item{align-items:center;background:none;border:1px solid #0000;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13.5px;font-weight:400;gap:11px;letter-spacing:-.01em;margin-bottom:2px;padding:9px 13px;position:relative;text-decoration:none;transition:background .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);width:100%}.nav-item:hover{background:#ffffff0f;color:#e2e8f0}.nav-item.active{background:#ffffff24;border:1px solid #0000;color:#fff;font-weight:500}.nav-item.active:before{content:none}.nav-icon{flex-shrink:0;font-size:17px}.nav-badge{background:#3b82f6;border-radius:9px;box-shadow:0 2px 6px #3b82f666;color:#fff;font-size:10px;font-weight:700;margin-left:auto;min-width:18px;padding:1px 7px;text-align:center}.nav-item:not(.active) .nav-badge{background:#3b82f640;box-shadow:none;color:#93c5fd}.sidebar-footer{border-top:1px solid #ffffff0f;flex-shrink:0;padding:12px 12px calc(12px + env(safe-area-inset-bottom, 0px))}.sidebar-logout-row{align-items:center;background:#ef44441f;border:1px solid #f8717159;border-radius:10px;color:#fca5a5;cursor:pointer;display:none;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:14px;font-weight:600;gap:8px;justify-content:center;margin-top:10px;min-height:44px;transition:background .15s;width:100%}.sidebar-logout-row:hover{background:#ef444433}.user-card{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff1a;border-radius:12px;cursor:pointer;display:flex;gap:10px;padding:10px;transition:background .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out)}.user-card:hover{background:#ffffff24;border-color:#ffffff29}.user-info{flex:1 1;line-height:1.25;min-width:0}.user-avatar{align-items:center;background:#fff3;border:1px solid #ffffff40;border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:36px;justify-content:center;width:36px}.user-name{color:#fff;font-size:12px;font-weight:600}.user-name,.user-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{color:#94a3b8;font-size:10px}.user-card-actions{align-items:center;display:flex;flex-shrink:0;gap:2px}.user-card-chevron{color:#64748b;font-size:14px;padding:4px}.logout-btn{align-items:center;background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;justify-content:center;padding:6px;transition:color .18s,background .18s;transition:color var(--dur-fast),background var(--dur-fast)}.logout-btn:hover{background:#ef44441f;color:#f87171}.topbar-logout-btn{align-items:center;background:#fef2f2e6;border:1px solid #ef444440;border-radius:10px;color:#dc2626;cursor:pointer;display:none;flex-shrink:0;font-size:18px;height:40px;justify-content:center;transition:background .15s,border-color .15s;width:40px}.topbar-logout-btn:hover{background:#fee2e2;border-color:#ef444466}.main-content{background:#0000;display:flex;flex:1 1;flex-direction:column;height:100dvh;margin-left:248px;margin-left:var(--sidebar-w);max-height:100dvh;min-width:0;overflow:hidden;position:relative;z-index:1}.topbar{backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);background:#ffffffe0;border-bottom:1px solid #e3ebf4e6;box-shadow:0 1px 0 #fffc,0 8px 24px #0b24400a;display:flex;gap:16px;height:64px;padding:0 28px;position:-webkit-sticky;position:sticky;top:0;z-index:50}.topbar,.topbar-menu-btn{align-items:center;flex-shrink:0}.topbar-menu-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #ffffffe6;border-radius:10px;color:#1a3f66;color:var(--navy-mid);cursor:pointer;display:none;font-size:20px;height:38px;justify-content:center;width:38px}.topbar-menu-btn:hover{border-color:#0c284833;color:#0b2440;color:var(--navy)}.sidebar-close-btn{align-items:center;background:none;border:none;color:#94a3b8;cursor:pointer;display:none;font-size:20px;justify-content:center;margin-left:auto;padding:4px}.sidebar-close-btn:hover{color:#fff}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c284873;display:none;inset:0;opacity:0;position:fixed;transition:opacity .25s ease;z-index:99}.topbar-greeting{flex:1 1}.topbar-greeting,.topbar-greeting-row{align-items:center;display:flex;min-width:0}.topbar-greeting-row{flex-wrap:wrap;gap:8px}.topbar-greeting-label{color:#627d98;color:var(--text3);font-size:14px;font-weight:500;white-space:nowrap}.topbar-greeting-name{color:#0b2440;color:var(--text);font-size:18px;font-weight:700;letter-spacing:-.4px;white-space:nowrap}.topbar-role-badge{border:1px solid #0000000a;border-radius:20px;font-size:10px;font-weight:700;letter-spacing:.2px;padding:4px 10px;text-transform:uppercase;white-space:nowrap}.topbar-right{gap:12px;margin-left:auto}.topbar-right,.view-mode-toggle{align-items:center;display:flex;flex-shrink:0}.view-mode-toggle{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd1;border:1px solid #ffffffd9;border-radius:10px;cursor:pointer;height:36px;padding:3px;position:relative;-webkit-user-select:none;user-select:none;width:138px}.view-mode-toggle .toggle-pill{background:#ffffffd9;border-radius:8px;bottom:3px;box-shadow:0 2px 8px #081e3c1a;left:3px;position:absolute;top:3px;transition:left .18s cubic-bezier(.22,1,.36,1);transition:left var(--dur-fast) var(--ease-out);width:calc(50% - 3px)}.view-mode-toggle.is-user .toggle-pill{left:50%}.view-mode-toggle .toggle-option{color:#627d98;color:var(--text3);flex:1 1;font-size:11px;font-weight:600;line-height:30px;text-align:center;transition:color .18s cubic-bezier(.22,1,.36,1);transition:color var(--dur-fast) var(--ease-out);z-index:1}.view-mode-toggle .toggle-option.active{color:#0b2440;color:var(--navy)}.topbar-actions{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;border:1px solid #ffffffd9;display:flex;gap:6px;padding:5px 6px 5px 10px}.topbar-icon-btn{align-items:center;background:#0000;border:none;border-radius:10px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;position:relative;transition:background .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);width:36px}.topbar-icon-btn:hover{background:#ffffffb3;box-shadow:0 2px 8px #081e3c14;color:#0b2440;color:var(--navy)}.topbar-icon-btn i{font-size:18px}.topbar-avatar{align-items:center;background:#0b2440;background:var(--navy);border:1px solid #ffffff40;border-radius:10px;box-shadow:0 2px 10px #081e3c40;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:36px;justify-content:center;transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);width:36px}.topbar-avatar:hover{box-shadow:0 4px 14px #081e3c59;transform:translate3d(0,-1px,0)}.notif-badge{background:#dc2626;background:var(--red);border:2px solid #f8fafc;border-radius:10px;color:#fff;font-size:9px;font-weight:700;line-height:14px;min-width:16px;padding:1px 5px;position:absolute;right:4px;text-align:center;top:4px}.topbar-notif-wrap{position:relative}.topbar-notif-panel{background:#fff;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000001f;margin-top:6px;overflow:hidden;position:absolute;right:0;top:100%;width:min(360px,calc(100vw - 24px));z-index:1000}.main-outlet{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:auto}.main-outlet:has(.history-page){overflow:hidden}.main-outlet>.page.page-scroll{flex:1 1;min-height:0;overflow:hidden}.page{box-sizing:border-box;flex:1 1;max-width:none;min-width:0;padding:28px 28px 28px 32px;width:100%}.page.page-tasks,.page.page-tickets{display:flex;flex-direction:column;max-width:none;min-height:0;overflow:hidden;padding-bottom:16px;width:100%}.page.page-scroll{max-width:none;width:100%}.page.page-tasks .page-header,.page.page-tickets .page-header{flex-shrink:0;margin-bottom:16px}.tasks-history-card{background:#fffffff0;border:1px solid #e3ebf4;border:1px solid var(--border);box-shadow:0 1px 2px #0b24400a,0 4px 12px #0b24400d;box-shadow:var(--shadow-sm);display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.tasks-history-filters{flex-shrink:0}.tasks-history-scroll{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow:auto}.tasks-history-scroll table thead th{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;box-shadow:0 1px 0 #e3ebf4;box-shadow:0 1px 0 var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:2}.page.page-scroll{display:flex;flex:1 1;flex-direction:column;height:auto;max-height:100%;min-height:0;overflow:hidden;padding-bottom:20px}.page-scroll-top{flex-shrink:0}.page-scroll .card.table-card,.page-scroll-body{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.page-scroll .card.table-card{margin-bottom:0}.page-scroll .table-scroll{flex:1 1;min-height:0;overflow:auto}.page-scroll .table-scroll thead th{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;box-shadow:0 1px 0 #e6eef8f2;position:-webkit-sticky;position:sticky;top:0;z-index:2}.history-layout{grid-gap:16px;display:grid;flex:1 1;gap:16px;grid-template-columns:280px minmax(0,1fr);grid-template-rows:minmax(0,1fr);min-height:0;overflow:hidden}.history-page{display:flex;flex:1 1;flex-direction:column;max-height:100%;max-width:none;min-height:0;overflow:hidden;width:100%}.history-page-header{flex-shrink:0}.history-page-header .page-header{margin-bottom:16px}.history-employee-list{display:flex;flex-direction:column;margin-bottom:0;max-height:100%;min-height:0;overflow:hidden;padding:0}.history-employee-list-search{border-bottom:1px solid #e3ebf4;border-bottom:1px solid var(--border);flex-shrink:0;padding:14px 16px}.history-employee-list-body{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.history-employee-list.card{overflow:hidden!important}.history-detail-panel{display:flex;flex-direction:column;max-height:100%;min-height:0;overflow:hidden;position:relative}.history-detail-panel.is-empty{overflow:hidden;touch-action:none}.history-detail-panel.is-empty>.card{display:flex;flex:1 1;flex-direction:column;justify-content:center;margin-bottom:0;min-height:0;overflow:hidden!important}.history-detail-panel .card{overflow:hidden!important}.history-detail-header{flex-shrink:0}.history-detail-content{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.history-detail-panel.is-empty .history-detail-content,.history-detail-panel:not(.is-empty) .history-detail-content:empty{overflow:hidden}.history-profile-card{margin-bottom:14px;padding:18px 22px}.history-tabs{-webkit-overflow-scrolling:touch;background:#eef3f9;background:var(--bg2);border-radius:100px;border-radius:var(--radius-pill);display:flex;gap:4px;margin-bottom:14px;max-width:100%;overflow-x:auto;padding:4px;scrollbar-width:none;width:-webkit-fit-content;width:fit-content}.history-tabs::-webkit-scrollbar{display:none}.history-tabs button{flex-shrink:0;white-space:nowrap}.history-detail-content .card{margin-bottom:0}.history-detail-content table thead th{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;box-shadow:0 1px 0 #e6eef8f2;position:-webkit-sticky;position:sticky;top:0;z-index:2}.page-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:22px}.page-title{color:#0b2440;color:var(--navy);font-size:24px;font-weight:800;letter-spacing:-.55px;line-height:1.15}.page-sub{color:#627d98;color:var(--text3);margin-top:5px}.btn,.page-sub{font-size:13px;font-weight:500}.btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);gap:7px;letter-spacing:-.01em;padding:9px 17px;transition:background .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),opacity .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.btn:active{transform:scale(.97)}.btn-primary{background:#2563eb;background:var(--blue);box-shadow:none;color:#fff;font-weight:500}.btn-primary:hover{background:#1d4ed8;background:var(--blue-dark);box-shadow:none}.btn-primary:active{box-shadow:none;transform:scale(.97)}.btn-ghost{background:#eef3f9;background:var(--bg2);border:none;color:#334e68;color:var(--text2)}.btn-ghost:hover{background:#e3ebf4;box-shadow:none;color:#0b2440;color:var(--navy)}.btn-danger{background:#fef2f2;background:var(--red-bg);border:none;color:#dc2626;color:var(--red)}.btn-danger:hover{background:#fde3e3}.btn:disabled{cursor:not-allowed;opacity:.4;transform:none!important}.card{background:#fff;border:none;border-radius:18px;box-shadow:0 1px 3px #0b24400d,0 6px 20px #0b24400d;margin-bottom:16px;overflow:hidden;transition:box-shadow .3s cubic-bezier(.22,1,.36,1);transition:box-shadow var(--dur-normal) var(--ease-out)}.card:hover{box-shadow:0 1px 3px #0b24400f,0 10px 28px #0b244014}.card-header{align-items:center;background:none;border-bottom:1px solid #e3ebf4;border-bottom:1px solid var(--border);display:flex;gap:10px;padding:16px 20px}.card-title{color:#0b2440;color:var(--navy);font-size:15px;font-weight:500;letter-spacing:-.02em}.card-count{font-feature-settings:"tnum";background:#f3f7fc;background:var(--bg);border:none;border-radius:999px;color:#627d98;color:var(--text3);font-size:12px;font-variant-numeric:tabular-nums;font-weight:400;padding:3px 10px}.card-actions{gap:8px}.card-actions,.view-all-link{display:flex;margin-left:auto}.view-all-link{align-items:center;background:none;border:none;color:#2563eb;color:var(--blue);cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:12px;font-weight:600;gap:4px;transition:gap .2s}.view-all-link:hover{gap:7px}.stats-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));margin-bottom:20px}.assets-stats-collapse{display:grid;grid-template-rows:1fr;margin-bottom:0;opacity:1;transition:grid-template-rows .28s ease,opacity .22s ease,margin .28s ease}.assets-stats-collapse-inner{min-height:0;overflow:hidden}.assets-stats-collapse .stats-grid{margin-bottom:20px}.assets-stats-collapse.is-collapsed{grid-template-rows:0fr;margin-bottom:0;opacity:0;pointer-events:none}.assets-stats-collapse.is-collapsed .stats-grid{margin-bottom:0}.responsive-grid-2{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.responsive-grid-3{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.emp-detail-modal{display:flex;flex-direction:column;margin:24px auto;max-height:min(90vh,calc(100vh - 48px));overflow:hidden;width:min(680px,100%)}.emp-detail-header{align-items:stretch;border-radius:16px 16px 0 0;border-radius:calc(var(--radius) + 2px) calc(var(--radius) + 2px) 0 0;flex-direction:column;flex-shrink:0;gap:14px;padding:20px 22px 16px;position:relative;top:auto}.emp-detail-body{flex:1 1;min-height:0;overflow-y:auto;padding-top:18px}.emp-detail-top{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.emp-detail-identity{align-items:center;display:flex;flex:1 1;gap:14px;min-width:0}.emp-detail-avatar{align-items:center;background:#2563eb;background:var(--blue);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:600;height:48px;justify-content:center;width:48px}.emp-detail-text{flex:1 1;min-width:0}.emp-detail-name{color:#0b2440;color:var(--text);font-size:18px;font-weight:600;line-height:1.3;padding-right:8px;word-break:break-word}.emp-detail-sub{color:#627d98;color:var(--text3);font-size:13px;line-height:1.4;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emp-detail-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.emp-detail-meta{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.emp-detail-meta-card{background:#f3f7fc;background:var(--bg);border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-sm);min-width:0;padding:12px 14px}.emp-detail-meta-card.is-wide{grid-column:1/-1}.emp-detail-meta-label{align-items:center;color:#627d98;color:var(--text3);display:flex;font-size:10px;font-weight:600;gap:6px;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.emp-detail-meta-label i{color:#627d98;color:var(--text3);font-size:14px}.emp-detail-meta-value{color:#0b2440;color:var(--text);font-size:13px;font-weight:500;line-height:1.45;overflow-wrap:break-word;word-break:normal}.emp-page-back{align-items:center;background:none;border:none;color:#2563eb;color:var(--blue);cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:15px;font-weight:500;gap:2px;letter-spacing:-.01em;margin-bottom:14px;padding:6px 0;transition:opacity .18s cubic-bezier(.22,1,.36,1);transition:opacity var(--dur-fast) var(--ease-out)}.emp-page-back i{font-size:19px}.emp-page-back:hover{color:#2563eb;color:var(--blue);opacity:.65}.emp-page-header-card{border:none;border-radius:18px;box-shadow:0 1px 3px #0b24400d,0 8px 28px #0b24400f;margin-bottom:14px;overflow:visible;padding:20px 22px}.emp-page-header-card .emp-detail-top{margin-bottom:18px}.emp-page-header-card .emp-detail-actions{border-bottom:1px solid #e3ebf4;border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:20px}.emp-page-avatar{font-size:19px;height:52px;width:52px}.emp-page-avatar,.emp-page-name{font-weight:500;letter-spacing:-.02em}.emp-page-name{font-size:20px;line-height:1.25}.emp-page-meta{margin-bottom:18px}.emp-page-body-card{border:none;border-radius:20px;box-shadow:0 1px 3px #0b24400d,0 8px 28px #0b24400f;padding:22px 26px 26px}.emp-segmented{background:#eef3f9;background:var(--bg2);border-radius:12px;display:flex;gap:2px;margin-bottom:20px;padding:3px}.emp-segmented-item{align-items:center;background:none;border:none;border-radius:8px;color:#334e68;color:var(--text2);cursor:pointer;display:flex;flex:1 1;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13px;font-weight:400;gap:6px;justify-content:center;letter-spacing:-.01em;padding:6px 12px;transition:all .18s cubic-bezier(.22,1,.36,1);transition:all var(--dur-fast) var(--ease-out);white-space:nowrap}.emp-segmented-item.is-active,.emp-segmented-item:hover{color:#0b2440;color:var(--text)}.emp-segmented-item.is-active{background:#fff;background:var(--white);box-shadow:0 1px 3px #0b24401a;font-weight:500}.emp-segmented-count{font-feature-settings:"tnum";color:#627d98;color:var(--text3);font-size:12px;font-variant-numeric:tabular-nums}.emp-segmented-item.is-active .emp-segmented-count{color:#2563eb;color:var(--blue)}@media (max-width:720px){.emp-segmented{flex-wrap:wrap}.emp-segmented-item{flex:1 1 auto}}.emp-page-identity-row{align-items:flex-start;display:flex;gap:14px;margin-bottom:18px}.emp-page-identity-text{flex:1 1;min-width:0}.emp-page-name-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.emp-page-actions{align-items:center;display:flex;flex-shrink:0;gap:8px;position:relative}.emp-page-more-btn{font-size:12px;line-height:1;padding:6px 10px}.emp-page-more-btn i{font-size:16px}.emp-page-menu{background:#fff;background:var(--white);border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-sm);box-shadow:0 4px 16px #0b244012,0 12px 32px #0b24400f;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:194px;padding:5px;position:absolute;right:0;top:calc(100% + 6px);z-index:60}.emp-page-menu button{align-items:center;background:none;border:none;border-radius:7px;color:#334e68;color:var(--text2);cursor:pointer;display:flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13px;gap:9px;padding:9px 11px;text-align:left;width:100%}.emp-page-menu button:hover{background:#eef3f9;background:var(--bg2);color:#0b2440;color:var(--text)}.emp-page-menu button.is-danger{color:#dc2626;color:var(--red)}.emp-page-menu button.is-danger:hover{background:#fef2f2;background:var(--red-bg)}.emp-page-menu button i{font-size:16px}.emp-page-meta-strip{grid-gap:2px;background:#f3f7fc;background:var(--bg);border-radius:12px;display:grid;gap:2px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));padding:4px}.emp-page-meta-item{border-radius:8px;min-width:0;padding:9px 12px}.emp-page-meta-label{color:#627d98;color:var(--text3);font-size:11px;letter-spacing:0;margin-bottom:2px}.emp-page-meta-value{color:#0b2440;color:var(--text);font-size:13px;font-weight:500;letter-spacing:-.01em;min-width:0;overflow-wrap:break-word}.emp-page-meta-hint{color:#627d98;color:var(--text3);font-size:11px;margin-top:2px}.emp-referral-row{align-items:center;border-bottom:1px solid #eef3f9;border-bottom:1px solid var(--bg2);display:flex;gap:12px;padding:11px 0}.emp-referral-row:last-child{border-bottom:none}.emp-referral-icon{align-items:center;background:#eef0ff;background:var(--purple-bg);border-radius:8px;color:#5b6ee1;color:var(--purple);display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.emp-referral-icon i{font-size:18px}.emp-referral-body{flex:1 1;min-width:0}.emp-referral-name{color:#0b2440;color:var(--text);font-size:13px;font-weight:500}.emp-referral-meta{color:#627d98;color:var(--text3);font-size:11px;line-height:1.45;margin-top:2px;overflow-wrap:break-word}.emp-referral-status{border-radius:100px;border-radius:var(--radius-pill);flex-shrink:0;font-size:11px;font-weight:500;padding:3px 10px;white-space:nowrap}.emp-referral-status.is-green{background:#f0fdf4;background:var(--green-bg);color:#15803d;color:var(--green)}.emp-referral-status.is-red{background:#fef2f2;background:var(--red-bg);color:#dc2626;color:var(--red)}.emp-referral-status.is-blue{background:#2563eb1a;background:var(--blue-light);color:#2563eb;color:var(--blue)}.emp-referral-status.is-amber{background:#fff7ed;background:var(--amber-bg);color:#c2410c;color:var(--amber)}.emp-page-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:18px}.emp-page-stat{background:#fff;background:var(--white);border:none;border-radius:14px;box-shadow:0 1px 3px #0b24400d,0 6px 18px #0b24400d;min-width:0;padding:14px 16px}.emp-page-stat-label{color:#627d98;color:var(--text3);font-size:12px;letter-spacing:0;margin-bottom:3px}.emp-page-stat-value{font-feature-settings:"tnum";color:#0b2440;color:var(--text);font-size:24px;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:-.03em;line-height:1.15}.emp-page-stat-sub{color:#627d98;color:var(--text3);font-size:15px;font-weight:400;letter-spacing:-.01em}.emp-page-stat-phase{color:#0b2440;color:var(--text);font-size:16px;font-weight:500;letter-spacing:-.01em;line-height:1.3;margin-top:2px;overflow-wrap:break-word}.emp-page-stat-bar{background:#eef3f9;background:var(--bg2);height:6px;margin-top:12px;overflow:hidden}.emp-page-stat-bar,.emp-page-stat-bar>div{border-radius:100px;border-radius:var(--radius-pill)}.emp-page-stat-bar>div{background:#2563eb;background:var(--blue);height:100%;transition:width .3s cubic-bezier(.22,1,.36,1);transition:width var(--dur-normal) var(--ease-out)}.emp-page-stat-note{align-items:center;color:#627d98;color:var(--text3);display:flex;font-size:12px;gap:5px;margin-top:9px}.emp-page-stat-note.is-warn{color:#c2410c;color:var(--amber)}.emp-page-stat-note i{font-size:14px}@media (max-width:640px){.emp-page-identity-row{flex-wrap:wrap}.emp-page-actions{justify-content:flex-end;width:100%}}@media (min-width:720px){.emp-page-meta{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1100px){.emp-page-meta{grid-template-columns:repeat(4,minmax(0,1fr))}}.emp-form-answers{padding:14px 16px 16px}.emp-form-answers-note{color:#627d98;color:var(--text3);font-size:11px;margin-bottom:12px}.emp-form-section+.emp-form-section{border-top:1px solid #e3ebf4;border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.emp-form-section-title{color:#1a3f66;color:var(--navy-mid,var(--text2));font-size:12px;font-weight:700;letter-spacing:.04em;margin-bottom:12px;text-transform:uppercase}.emp-form-grid{grid-gap:12px 16px;display:grid;gap:12px 16px;grid-template-columns:repeat(2,minmax(0,1fr))}.emp-form-field{background:#f3f7fc;background:var(--bg);border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:10px;min-width:0;padding:10px 12px}.emp-form-field--wide{grid-column:1/-1}.emp-form-field-label{color:#627d98;color:var(--text3);font-size:11px;font-weight:600;line-height:1.35;margin-bottom:4px}.emp-form-field-value{color:#0b2440;color:var(--text);font-size:13px;font-weight:500;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}.emp-form-file-btn{align-items:center;background:#fff;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:6px;color:#0b2440;color:var(--text);cursor:pointer;display:inline-flex;font-size:12px;gap:6px;padding:6px 12px}.emp-form-file-btn:hover{border-color:#2563eb;border-color:var(--blue);color:#2563eb;color:var(--blue)}.emp-form-signature{background:#fff;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:8px;display:inline-block;max-width:100%;padding:10px}.emp-form-signature img{display:block;height:auto;max-height:140px;max-width:100%;width:auto}@media (max-width:560px){.emp-form-grid{grid-template-columns:1fr}}.emp-status-pill{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:4px 12px}.emp-status-dot{background:currentColor;border-radius:50%;flex-shrink:0;height:7px;width:7px}.emp-status-active{background:#f0fdf4;background:var(--green-bg);color:#15803d;color:var(--green)}.emp-status-offboarding{background:#fff7ed;background:var(--amber-bg);color:#c2410c;color:var(--amber)}.emp-status-inactive{background:#eef3f9;background:var(--bg2);color:#627d98;color:var(--text3)}.emp-status-onboarding{background:#2563eb1a;background:var(--blue-light);color:#2563eb;color:var(--blue)}.emp-workflow{display:flex;flex-direction:column;gap:14px}.emp-workflow-progress{margin-bottom:2px}.emp-workflow-progress-head{align-items:center;color:#334e68;color:var(--text2);display:flex;font-size:12px;gap:12px;justify-content:space-between;margin-bottom:6px}.emp-workflow-progress-head span:last-child{color:#2563eb;color:var(--blue);font-weight:600;white-space:nowrap}.emp-workflow-progress-bar{background:#eef3f9;background:var(--bg2);border-radius:4px;height:8px;overflow:hidden}.emp-workflow-progress-bar>div{background:#2563eb;background:var(--blue);border-radius:4px;height:100%;transition:width .4s ease}.emp-workflow-hint{color:#627d98;color:var(--text3);font-size:11px;line-height:1.4;margin-top:6px}.emp-phase{background:#fff;border:none;border-radius:16px;box-shadow:0 1px 3px #0b24400d,0 6px 20px #0b24400d;overflow:hidden}.emp-phase.is-locked{opacity:.62}.emp-phase.is-done .emp-phase-head{background:#f0fdf4;background:var(--green-bg);border-bottom-color:#1e8e3e2e}.emp-phase.is-done .emp-phase-count,.emp-phase.is-done .emp-phase-head i,.emp-phase.is-done .emp-phase-title{color:#15803d;color:var(--green)}.emp-phase-head{align-items:center;background:#f3f7fc;background:var(--bg);border-bottom:1px solid #e3ebf4;border-bottom:1px solid var(--border);display:flex;gap:9px;padding:11px 14px}.emp-phase-head.is-toggle{border-left:none;border-radius:0;border-right:none;border-top:none;cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);text-align:left;transition:background .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out);width:100%}.emp-phase-head.is-toggle:hover{background:#eef3f9;background:var(--bg2)}.emp-phase.is-collapsed .emp-phase-head.is-toggle{border-bottom-color:#0000}.emp-phase-chevron{color:#627d98!important;color:var(--text3)!important;flex-shrink:0;font-size:17px!important;transition:transform .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-fast) var(--ease-out)}.emp-phase-chevron.is-open{transform:rotate(180deg)}.emp-phase-toolbar{display:flex;gap:8px;justify-content:flex-end;margin-bottom:4px}.emp-phase-toolbar button{align-items:center;background:none;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:100px;border-radius:var(--radius-pill);color:#334e68;color:var(--text2);cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:12px;gap:5px;padding:5px 13px;transition:all .18s cubic-bezier(.22,1,.36,1);transition:all var(--dur-fast) var(--ease-out)}.emp-phase-toolbar button:hover{background:#eef3f9;background:var(--bg2);border-color:#0b24401a;border-color:var(--border2);color:#0b2440;color:var(--text)}.emp-phase-toolbar button i{font-size:15px}.emp-phase-head i{color:#2563eb;color:var(--blue);flex-shrink:0;font-size:16px}.emp-phase.is-locked .emp-phase-head i{color:#627d98;color:var(--text3)}.emp-phase-title{align-items:center;color:#0b2440;color:var(--text);display:flex;flex:1 1;flex-wrap:wrap;font-size:13.5px;font-weight:500;gap:8px;letter-spacing:-.01em;min-width:0}.emp-phase-locked-tag{background:#eef3f9;background:var(--bg2);border-radius:999px;color:#627d98;color:var(--text3);font-size:10px;font-weight:500;padding:1px 7px}.emp-phase-count{font-feature-settings:"tnum";color:#627d98;color:var(--text3);font-size:11.5px;font-variant-numeric:tabular-nums;font-weight:400;letter-spacing:0;white-space:nowrap}.emp-phase-tasks{display:flex;flex-direction:column}.emp-phase-tasks[hidden]{display:none}.emp-task-row{align-items:flex-start;border-bottom:1px solid #e3ebf4;border-bottom:1px solid var(--border);display:flex;gap:11px;padding:10px 14px;transition:background .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out)}.emp-task-row:last-child{border-bottom:none}.emp-task-row:hover{background:#f3f7fc;background:var(--bg)}.emp-task-row.is-locked{opacity:.55}.emp-task-check{accent-color:#2563eb;accent-color:var(--blue);border-radius:50%;cursor:pointer;flex-shrink:0;height:17px;margin-top:1px;width:17px}.emp-task-check:disabled{cursor:not-allowed}.emp-task-body{display:flex;flex:1 1;flex-direction:column;gap:5px;min-width:0}.emp-task-title{color:#0b2440;color:var(--text);font-size:13.5px;font-weight:400;letter-spacing:-.01em;line-height:1.4;word-break:break-word}.emp-task-row.is-done .emp-task-title{color:#627d98;color:var(--text3);text-decoration:line-through}.emp-task-waiting{color:#627d98;color:var(--text3);display:inline-block;font-size:10px;font-weight:500;margin-left:6px;text-decoration:none}.emp-task-meta{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.emp-task-form,.emp-task-role{border-radius:4px;font-size:10px;font-weight:500;padding:2px 7px;white-space:nowrap}.emp-task-role{background:#eef3f9;background:var(--bg2);color:#627d98;color:var(--text3)}.emp-task-form{background:#2563eb1a;background:var(--blue-light);color:#2563eb;color:var(--blue)}.emp-task-desc{line-height:1.45}.emp-task-desc,.emp-task-subtasks{color:#627d98;color:var(--text3);font-size:11px}.emp-task-subtasks{line-height:1.5;margin:0;padding-left:16px}.emp-task-due{align-items:center;background:#0000;border:none;color:#627d98;color:var(--text3);display:inline-flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:11px;gap:4px;line-height:1.2;padding:0;white-space:nowrap}.emp-task-due i{font-size:12px}.emp-task-due .ti-pencil{font-size:10px;opacity:.55}.emp-task-due.is-editable{background:#f3f7fc;background:var(--bg);border:1px dashed #e3ebf4;border:1px dashed var(--border);border-radius:4px;cursor:pointer;padding:2px 7px}.emp-task-due.is-editable:hover{background:#2563eb1a;background:var(--blue-light);border-color:#2563eb;border-color:var(--blue);color:#2563eb;color:var(--blue)}.emp-task-due.is-overdue{color:#dc2626;color:var(--red);font-weight:600}.emp-task-due.is-overdue.is-editable{background:#fef2f2;background:var(--red-bg,#fef2f2);border-color:#dc262640}.emp-task-due-input{border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:4px;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:11px;max-width:130px;padding:2px 6px}.responsive-auto-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));margin-bottom:20px}.responsive-split{grid-gap:16px;display:grid;gap:16px;grid-template-columns:minmax(200px,240px) 1fr;min-height:0}.quick-links-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr))}.quick-link-btn{background:#fff;border:none;border-radius:14px;box-shadow:0 1px 3px #0b24400d,0 4px 14px #0b24400a;cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);padding:16px 18px;text-align:left;transition:box-shadow .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1);transition:box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.quick-link-btn:hover{box-shadow:0 1px 2px #0b24400a,0 4px 12px #0b24400d;box-shadow:var(--shadow-sm);transform:translateY(-2px)}.pill-tabs{-webkit-overflow-scrolling:touch;background:#eef3f9;background:var(--bg2);border-radius:100px;border-radius:var(--radius-pill);display:flex;gap:4px;max-width:100%;overflow-x:auto;padding:4px;scrollbar-width:none;width:-webkit-fit-content;width:fit-content}.pill-tabs::-webkit-scrollbar{display:none}.pill-tabs button{flex-shrink:0;white-space:nowrap}.responsive-card-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}.responsive-card-grid.sm-gap{gap:12px}.stat-card{animation:fadeInUp .3s cubic-bezier(.22,1,.36,1) both;animation:fadeInUp var(--dur-normal) var(--ease-out) both;background:#fff;border:none;border-radius:16px;box-shadow:0 1px 3px #0b24400d,0 6px 20px #0b24400d;cursor:default;padding:18px 20px;transition:all .3s cubic-bezier(.22,1,.36,1);transition:all var(--dur-normal) var(--ease-out)}.stat-card:after{border-radius:3px 3px 0 0;content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s}.stat-card:hover{box-shadow:0 12px 40px #0b24401f,0 0 24px #2563eb1f;box-shadow:var(--shadow-md),var(--glow);transform:translate3d(0,-3px,0)}.stat-card:hover:after{opacity:1}.stat-card.stat-blue:after{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.stat-card.stat-amber:after{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.stat-card.stat-red:after{background:linear-gradient(90deg,#ef4444,#f87171)}.stat-card.stat-green:after{background:linear-gradient(90deg,#10b981,#34d399)}.stat-card:first-child{animation-delay:.04s}.stat-card:nth-child(2){animation-delay:.08s}.stat-card:nth-child(3){animation-delay:.12s}.stat-card:nth-child(4){animation-delay:.16s}.stat-head{justify-content:space-between;margin-bottom:14px}.stat-head,.stat-icon{align-items:center;display:flex}.stat-icon{border-radius:13px;height:42px;justify-content:center;width:42px}.stat-icon i{font-size:20px}.stat-label{color:#627d98;color:var(--text3);font-size:12.5px;font-weight:400;letter-spacing:-.01em;margin-top:6px}.stat-value{font-feature-settings:"tnum";color:#0b2440;color:var(--text);font-size:30px;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:-.04em;line-height:1}.stat-sub{color:#627d98;color:var(--text3);font-size:11px;margin-top:5px}.welcome-banner{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#0c2848f0,#1e4a72e6 55%,#2563ebdb);border:none;border-radius:20px;box-shadow:0 2px 6px #081e3c1a,0 14px 36px #081e3c2e;display:flex;gap:18px;margin-bottom:20px;overflow:hidden;padding:24px 28px;position:relative}.welcome-banner:before{background:#ffffff14;height:280px;right:-60px;top:-80px;width:280px}.welcome-banner:after,.welcome-banner:before{border-radius:50%;content:"";pointer-events:none;position:absolute}.welcome-banner:after{background:#ffffff0d;bottom:-100px;height:200px;right:120px;width:200px}.banner-emoji{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff2e;border-radius:14px;box-shadow:inset 0 1px 0 #fff3;display:flex;flex-shrink:0;font-size:26px;height:54px;justify-content:center;width:54px}.banner-emoji,.banner-text{position:relative;z-index:1}.banner-text h2{color:#fff;font-size:19px;font-weight:700;letter-spacing:-.3px;margin-bottom:4px}.banner-text p{color:#ffffffd9;font-size:13px}.hero-sub{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.hero-pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border-radius:999px;color:#fff;font-size:11.5px;font-weight:400;letter-spacing:-.01em;padding:3px 11px}.banner-action,.hero-btn{background:#fff;border:none;border-radius:12px;box-shadow:0 4px 16px #00000026;color:#1e40af;cursor:pointer;flex-shrink:0;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13px;font-weight:500;margin-left:auto;padding:11px 22px;position:relative;transition:all .2s;white-space:nowrap;z-index:1}.banner-action:hover,.hero-btn:hover{box-shadow:0 8px 24px #0003;transform:translateY(-2px)}table{border-collapse:collapse;width:100%}thead th{background:#fbfcfe;border-bottom:1px solid #e3ebf4;border-bottom:1px solid var(--border);color:#627d98;color:var(--text3);font-size:12px;font-weight:500;padding:13px 18px;text-align:left;text-transform:none}tbody td,thead th{letter-spacing:-.01em}tbody td{border-bottom:1px solid #f0f4f9;color:#0b2440;color:var(--text);font-size:13.5px;padding:15px 18px;transition:background .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out);vertical-align:middle}tbody tr{transition:background-color .18s cubic-bezier(.22,1,.36,1);transition:background-color var(--dur-fast) var(--ease-out)}tbody tr:hover{background:rgba(37,99,235,.035)}tbody tr:last-child td{border-bottom:none}.td-main{color:#0b2440;color:var(--navy);font-weight:500;letter-spacing:-.01em}.asset-id-badge{background:linear-gradient(135deg,#2563eb24,#2563eb14);border:1px solid #2563eb38;border-radius:8px;color:#1d4ed8;color:var(--blue-dark);display:inline-block;font-family:JetBrains Mono,monospace;font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.05em;line-height:1;margin-bottom:7px;padding:5px 11px}.asset-cell{max-width:340px;min-width:220px}.asset-cell-name{color:#0b2440;color:var(--navy);font-size:14px;font-weight:600;line-height:1.35}.asset-cell-meta{color:#627d98;color:var(--text3);font-size:11px;line-height:1.45;margin-top:4px}.asset-type-pill{background:#0c28480f;border-radius:5px;color:#627d98;color:var(--text3);display:inline-block;font-size:10px;font-weight:600;letter-spacing:.04em;margin-right:6px;padding:2px 7px;text-transform:uppercase}.asset-category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.asset-category-tab{align-items:center;background:#ffffffe0;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:100px;border-radius:var(--radius-pill);color:#334e68;color:var(--text2);cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13px;font-weight:500;gap:8px;padding:9px 16px;transition:all .15s ease}.asset-category-tab:hover{border-color:#2563eb4d;color:#0b2440;color:var(--navy)}.asset-category-tab.active{background:#2563eb;background:var(--blue);border-color:#2563eb;border-color:var(--blue);box-shadow:0 4px 14px #2563eb47;color:#fff}.asset-category-count{background:#00000014;border-radius:10px;font-size:11px;font-weight:700;min-width:20px;padding:1px 7px;text-align:center}.asset-category-tab.active .asset-category-count{background:#ffffff38}.asset-unassigned{color:#627d98;color:var(--text3);font-size:12px;font-style:italic}.asset-warranty-cell{min-width:110px}.asset-warranty-date{margin-top:4px}.asset-warranty-date,.td-id{color:#627d98;color:var(--text3);font-size:11px}.td-id{background:#ffffffd9;border-radius:6px;display:inline-block;font-family:JetBrains Mono,monospace;font-family:var(--mono);font-weight:600;padding:3px 8px}td.col-actions,th.col-actions{min-width:168px;white-space:nowrap;width:1%}.table-actions{align-items:center;display:inline-flex;flex-wrap:nowrap;gap:4px}.table-actions-compact .btn-table-icon{height:32px;justify-content:center;padding:0;width:32px}.table-actions-compact .table-actions-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%234a6a8a' stroke-width='2'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;cursor:pointer;min-width:34px;padding:0 4px;text-indent:-9999px;width:34px}.table-actions-compact .table-actions-select option{text-indent:0}.btn-table{align-items:center;border-radius:6px;cursor:pointer;display:inline-flex;flex-shrink:0;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:11px;font-weight:500;gap:3px;justify-content:center;line-height:1.2;padding:5px 8px;white-space:nowrap}.btn-table i{font-size:13px}.btn-table-ghost{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffd9;border:1px solid #0c28481a;color:#334e68;color:var(--text2)}.btn-table-blue{background:#ffffffe6;border:1px solid #0c28481f;color:#0b2440;color:var(--navy)}.btn-table-amber{background:#fff7ed;background:var(--amber-bg);border:1px solid #d9770640;color:#c2410c;color:var(--amber)}.btn-table-green{background:#f0fdf4;background:var(--green-bg);border:1px solid #16a34a40;color:#15803d;color:var(--green)}.table-actions-select{background:#fff;background:var(--white);border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:6px;color:#334e68;color:var(--text2);cursor:pointer;flex-shrink:0;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:11px;padding:5px 6px;width:108px}.user-cell{align-items:center;display:flex;gap:8px}.av-sm{border-radius:8px;color:#fff;flex-shrink:0;font-size:10px;font-weight:700;height:26px;justify-content:center;width:26px}.av-sm,.badge{align-items:center;display:inline-flex}.badge{border-radius:999px;font-size:11.5px;font-weight:500;gap:5px;letter-spacing:-.01em;padding:4px 11px}.badge-Open{background:#eff6ff;color:#1d4ed8}.badge-In-Progress{background:#fffbeb;color:#b45309}.badge-Resolved{background:#f0fdf4;color:#15803d}.badge-Closed{background:#f1f5f9;color:#64748b}.badge-dot{border-radius:50%;height:6px;width:6px}.badge-Open .badge-dot{background:#3b82f6}.badge-In-Progress .badge-dot{background:#f59e0b}.badge-Resolved .badge-dot{background:#22c55e}.badge-Closed .badge-dot{background:#94a3b8}.chip{align-items:center;border-radius:999px;display:inline-flex;font-size:11.5px;font-weight:500;gap:5px;letter-spacing:-.01em;padding:4px 11px}.chip-IT{background:#eff6ff;color:#1d4ed8}.chip-HR{background:#f0fdf4;color:#15803d}.chip-Admin{background:#fffbeb;color:#b45309}.chip-Facilities{background:#f0fdfa;color:#0f766e}.priority-Critical,.priority-High,.priority-Low,.priority-Medium{font-size:12px;font-weight:600}.priority-Critical:before,.priority-High:before,.priority-Low:before,.priority-Medium:before{content:"● ";font-size:10px}.priority-Low{color:#16a34a}.priority-Medium{color:#2563eb}.priority-High{color:#d97706}.priority-Critical{color:#dc2626}.form-group{margin-bottom:16px}.form-group label{color:#1a3f66;color:var(--navy-mid);display:block;font-size:12px;font-weight:700;letter-spacing:-.01em;margin-bottom:6px}.form-group input:not([type=checkbox]):not([type=radio]):not([type=file]),.form-group select,.form-group textarea{background:#f3f7fc;background:var(--bg);border:1px solid #0000;border-radius:10px;color:#0b2440;color:var(--text);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13.5px;letter-spacing:-.01em;outline:none;padding:11px 14px;transition:border-color .18s,box-shadow .18s,background .18s;transition:border-color var(--dur-fast),box-shadow var(--dur-fast),background var(--dur-fast);width:100%}.form-group input:not([type=checkbox]):not([type=radio]):not([type=file]):hover,.form-group select:hover{background:#eef3f9;background:var(--bg2);border-color:#0000}.form-group input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,.form-group select:focus,.form-group textarea:focus{background:#fff;border-color:#2563eb;border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.form-group textarea{line-height:1.6;min-height:96px;resize:vertical}.form-checkbox,.form-group--checkbox{text-align:left}.form-checkbox{align-items:flex-start;color:#0b2440;color:var(--text);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:10px;justify-content:flex-start;line-height:1.45;margin:0}.form-checkbox input[type=checkbox]{accent-color:#2563eb;accent-color:var(--blue);cursor:pointer;flex-shrink:0;height:16px;margin:2px 0 0;min-width:16px;padding:0;width:16px}.form-checkbox span{text-align:left}.form-row{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.field-error,.required{color:#dc2626;color:var(--red)}.field-error{align-items:flex-start;display:flex;font-size:12px;gap:5px;letter-spacing:-.01em;line-height:1.4;margin-top:6px}.field-error i{flex-shrink:0;font-size:14px;margin-top:1px}.form-group input.has-error,.form-group select.has-error,.form-group textarea.has-error{background:#fef2f2;background:var(--red-bg);border-color:#dc2626;border-color:var(--red)}.form-group input.has-error:focus,.form-group select.has-error:focus,.form-group textarea.has-error:focus{border-color:#dc2626;border-color:var(--red);box-shadow:0 0 0 3px #dc26261f}.form-fill-body{width:100%}.form-fill-body .form-group label{color:#0b2440;color:var(--text);font-size:13px;font-weight:500;line-height:1.55}.form-fill-body .form-checkbox,.form-fill-body .form-group--checkbox{text-align:left}.form-fill-body .form-group--checkbox .form-checkbox{align-items:flex-start;color:#0b2440;color:var(--text);display:flex;font-weight:500;gap:10px;justify-content:flex-start;margin:0}.form-fill-heading{border-top:1px solid #e3ebf4;border-top:1px solid var(--border);margin:0 0 8px;padding:22px 0 10px}.form-fill-heading--first{border-top:none;padding-top:0}.form-fill-heading-text{color:#0b2440;color:var(--text);font-size:14px;font-weight:600;line-height:1.55;margin:0}.form-fill-info{border-top:1px solid #e3ebf4;border-top:1px solid var(--border);margin:0 0 12px;padding:18px 0 4px}.form-fill-info--first{border-top:none;padding-top:0}.form-fill-info-text{color:#334e68;color:var(--text2);font-size:13px;line-height:1.7;white-space:pre-wrap}.form-signature-canvas-wrap{position:relative;width:100%}.form-signature-canvas{background:#fff;border:1px dashed #e3ebf4;border:1px dashed var(--border);border-radius:8px;cursor:crosshair;display:block;height:120px;touch-action:none;width:100%}.settings-layout{align-items:flex-start;display:flex;gap:20px}.settings-nav{flex-shrink:0;width:200px}.settings-nav-inner{background:#fff;background:var(--white);border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);overflow:hidden}.settings-content{flex:1 1;min-width:0}.settings-nav-item{align-items:center;border-left:3px solid #0000;cursor:pointer;display:flex;font-size:13px;gap:10px;padding:12px 16px;transition:all .15s}.settings-nav-item.active{background:#eef3f9;background:var(--bg2);border-left-color:#0000;color:#0b2440;color:var(--navy);font-weight:500}.filter-bar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.search-wrap{flex:1 1;min-width:0;position:relative}.search-icon{color:#627d98;color:var(--text3);font-size:16px;left:11px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-input{background:#f3f7fc;background:var(--bg);border:1px solid #0000;border-radius:11px;color:#0b2440;color:var(--text);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13px;outline:none;padding:10px 12px 10px 38px;transition:border-color .18s,box-shadow .18s;transition:border-color var(--dur-fast),box-shadow var(--dur-fast);width:100%}.search-input:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.filter-select{background:#f3f7fc;background:var(--bg);border:1px solid #0000;border-radius:10px;color:#334e68;color:var(--text2);cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13px;outline:none;padding:10px 12px;transition:border-color .18s,box-shadow .18s;transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.filter-select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.modal-overlay{align-items:flex-start;animation:overlayFadeIn .18s cubic-bezier(.22,1,.36,1) both;animation:overlayFadeIn var(--dur-fast) var(--ease-out) both;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#081c346b;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:24px;position:fixed;z-index:1000}.modal{animation:modalPop .3s cubic-bezier(.22,1,.36,1) both;animation:modalPop var(--dur-normal) var(--ease-out) both;backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);background:#fffffff0;border:1px solid #ffffffe6;border-radius:22px;box-shadow:0 12px 40px #081e3c1f;flex-shrink:0;margin:auto;max-height:min(88vh,calc(100vh - 48px));max-width:100%;overflow-y:auto;width:560px}.modal-header{align-items:flex-start;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border-bottom:1px solid #ffffff73;display:flex;gap:12px;padding:18px 22px;position:-webkit-sticky;position:sticky;top:0;z-index:1}.modal-body{padding:22px}.modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#627d98;color:var(--text3);cursor:pointer;display:flex;font-size:20px;justify-content:center;line-height:1;padding:3px;transition:all .12s}.modal-close:hover{background:#f3f7fc;background:var(--bg)}.modal-meta{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:16px}.modal-meta.cols-3{grid-template-columns:repeat(3,1fr)}.meta-item{background:#ffffffd9;border:1px solid #ffffffe6;border-radius:10px;border-radius:var(--radius-sm);padding:10px 12px}.meta-label{color:#627d98;color:var(--text3);font-weight:600;letter-spacing:.5px;margin-bottom:4px}.meta-value{color:#0b2440;color:var(--text);font-size:13px;font-weight:500}.section-label{color:#627d98;color:var(--text3);font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.desc-box{background:#ffffffd9;border:1px solid #ffffffe6;border-radius:var(--radius-sm);color:#334e68;color:var(--text2);font-size:13px;margin-bottom:16px;padding:12px}.comment{background:#f3f7fc;background:var(--bg);border-left:3px solid #e3ebf4;border-left:3px solid var(--border);border-radius:10px;border-radius:var(--radius-sm);margin-bottom:8px;padding:11px 14px}.comment.admin-comment{background:#2563eb1a;background:var(--blue-light);border-left-color:#2563eb;border-left-color:var(--blue)}.comment-author{align-items:center;color:#0b2440;color:var(--text);display:flex;font-size:12px;font-weight:600;gap:6px;margin-bottom:3px}.admin-tag{background:#2563eb;background:var(--blue);border-radius:5px;color:#fff;font-size:10px;font-weight:500;padding:1px 7px}.comment-text{color:#334e68;color:var(--text2);font-size:13px;line-height:1.6}.comment-time{color:#627d98;color:var(--text3);font-size:11px;margin-top:4px}.toast-wrap{bottom:24px;display:flex;flex-direction:column;gap:8px;position:fixed;right:24px;z-index:9999}.toast{align-items:center;animation:toastSlide .3s cubic-bezier(.22,1,.36,1) both;animation:toastSlide var(--dur-normal) var(--ease-out) both;background:#0b2440eb;border:none;border-radius:14px;box-shadow:0 8px 24px #081e3c2e,0 2px 6px #081e3c1f;color:#fff;display:flex;font-size:13.5px;font-weight:400;gap:10px;letter-spacing:-.01em;min-width:260px;padding:13px 20px}.toast.success{background:#166534}.toast.error{background:#dc2626;background:var(--red)}.stat-skeleton{animation:statShimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#eef3f9 25%,#f3f7fc 50%,#eef3f9 75%);background:linear-gradient(90deg,var(--bg2) 25%,var(--bg) 50%,var(--bg2) 75%);background-size:200% 100%;border-radius:8px;height:30px;width:56px}@keyframes statShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.confirm-modal{margin:auto;max-width:calc(100vw - 40px);overflow:visible!important;width:400px!important}.confirm-modal-body{padding:26px 26px 20px;text-align:center}.confirm-modal-icon{align-items:center;background:#2563eb1a;background:var(--blue-light);border-radius:50%;color:#2563eb;color:var(--blue);display:flex;height:48px;justify-content:center;margin:0 auto 14px;width:48px}.confirm-modal-icon i{font-size:24px}.confirm-modal-icon.is-danger{background:#fef2f2;background:var(--red-bg);color:#dc2626;color:var(--red)}.confirm-modal-title{color:#0b2440;color:var(--text);font-size:16px;font-weight:500;letter-spacing:-.02em;line-height:1.35}.confirm-modal-message{color:#334e68;color:var(--text2);font-size:13.5px;letter-spacing:-.01em;line-height:1.55;margin-top:7px;overflow-wrap:break-word}.confirm-modal-actions{display:flex;gap:10px;padding:0 26px 24px}.confirm-modal-actions .btn{flex:1 1;justify-content:center;padding:10px 16px}.empty-state{color:#627d98;color:var(--text3);padding:56px 32px;text-align:center}.empty-icon{font-size:40px;margin-bottom:14px;opacity:.85}.empty-state p{font-size:14px;line-height:1.5}.pagination{align-items:center;border-top:1px solid #e3ebf4;border-top:1px solid var(--border);display:flex;gap:6px;justify-content:center;padding:14px 0}.page-info{color:#627d98;color:var(--text3);font-size:12px;padding:0 12px}.login-scene-page{background:linear-gradient(180deg,#dceefb,#b8d4f0 45%,#8ec0ea);color:#0c2848;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);min-height:100vh;min-height:100dvh;overflow:hidden;position:relative}.login-scene-bg{inset:0;position:fixed;z-index:0}.scene-app-svg{display:block;height:100%;inset:0;position:absolute;transform:translateZ(0);width:100%;will-change:transform}.login-scene-bg .scene-app-svg{animation:loginBgReveal .5s cubic-bezier(.22,1,.36,1) both;animation:loginBgReveal .5s var(--ease-out) both}@keyframes loginBgReveal{0%{opacity:.92}to{opacity:1}}.login-scene-overlay{background:linear-gradient(180deg,#ffffff1a,#0c28480f);inset:0;pointer-events:none;position:absolute}.login-scene-nav{align-items:center;display:flex;gap:24px;padding:20px 40px;position:relative;z-index:10}.login-scene-logo{font-size:18px;font-weight:700;gap:10px;letter-spacing:-.3px;margin-right:auto;text-decoration:none}.login-scene-logo,.login-scene-logo-mark{align-items:center;color:#0c2848;display:flex}.login-scene-logo-mark{background:#0c284814;border:1px solid #0c28481f;border-radius:10px;font-size:16px;font-weight:800;height:36px;justify-content:center;width:36px}.login-scene-links{align-items:center;display:flex;gap:28px}.login-scene-links a{color:#123a66;font-size:14px;font-weight:500;text-decoration:none;transition:opacity .18s;transition:opacity var(--dur-fast)}.login-scene-links a:hover{opacity:.7}.login-scene-nav-btn{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff8c;border:1.5px solid #0c284833;border-radius:8px;color:#0c2848;font-size:13px;font-weight:600;padding:8px 22px}.login-scene-main{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 76px);min-height:calc(100dvh - 76px);padding:24px 20px 40px;position:relative;z-index:5}.login-glass-card{animation:loginGlassIn .55s cubic-bezier(.22,1,.36,1) both;animation:loginGlassIn .55s var(--ease-out) both;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#ffffffc2;border:none;border-radius:22px;box-shadow:0 24px 64px #081e3c47;max-width:400px;padding:36px 34px 30px;position:relative;width:100%}@keyframes loginGlassIn{0%{opacity:0;transform:translate3d(0,12px,0) scale3d(.98,.98,1)}to{opacity:1;transform:translateZ(0) scaleX(1)}}.login-glass-close{align-items:center;background:#0000;border:none;border-radius:6px;color:#1a3a5c;cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;position:absolute;right:14px;text-decoration:none;top:14px;transition:background .18s;transition:background var(--dur-fast);width:28px}.login-glass-close:hover{background:#ffffff40}.login-glass-title{color:#0c2848;font-size:26px;font-weight:700;letter-spacing:-.4px;margin-bottom:22px;text-align:center}.login-glass-tabs{display:flex;gap:6px;justify-content:center;margin-bottom:26px}.login-glass-tabs button{background:#ffffff26;border:1px solid #0c284826;border-radius:20px;color:#1e4a72;cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:12px;font-weight:600;padding:6px 16px;transition:all .18s cubic-bezier(.22,1,.36,1);transition:all var(--dur-fast) var(--ease-out)}.login-glass-tabs button:hover{background:#ffffff4d}.login-glass-tabs button.active{background:#0c2848d9;border-color:#0c2848e6;color:#fff}.login-glass-form{margin-bottom:4px}.login-glass-field{margin-bottom:22px}.login-glass-field label{color:#0c2848;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.login-glass-input-wrap{border-bottom:1.5px solid #0c28488c;padding-bottom:6px;position:relative;transition:border-color .18s;transition:border-color var(--dur-fast)}.login-glass-input-wrap:focus-within{border-bottom-color:#0c2848}.login-glass-input-wrap input{background:#0000;border:none;color:#0c2848;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:14px;outline:none;padding:4px 32px 4px 0;width:100%}.login-glass-input-wrap input::placeholder{color:#0c284873}.login-glass-input-wrap i{bottom:8px;color:#1e4a72;font-size:17px;pointer-events:none;position:absolute;right:0}.login-glass-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px}.login-glass-check{align-items:center;color:#1e4a72;cursor:pointer;display:flex;font-size:12px;gap:8px;-webkit-user-select:none;user-select:none}.login-glass-check input{accent-color:#0c2848;cursor:pointer;height:14px;width:14px}.login-glass-hint{color:#0c2848a6;font-size:11px;font-weight:500}.login-glass-submit{background:#0c2848;border:none;border-radius:6px;box-shadow:0 8px 24px #081e3c59;color:#fff;cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:15px;font-weight:700;padding:13px 20px;transition:transform .18s,box-shadow .18s,opacity .18s;transition:transform var(--dur-fast),box-shadow var(--dur-fast),opacity var(--dur-fast);width:100%}.login-glass-submit:hover:not(:disabled){box-shadow:0 12px 28px #081e3c6b;transform:translate3d(0,-1px,0)}.login-glass-submit:disabled{cursor:not-allowed;opacity:.65}.login-glass-divider{align-items:center;color:#0c28488c;display:flex;font-size:12px;gap:12px;margin:20px 0 16px}.login-glass-divider:after,.login-glass-divider:before{background:#0c284833;content:"";flex:1 1;height:1px}.login-glass-zoho{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd9;border:1px solid #0c284833;border-radius:6px;color:#0c2848;display:flex;font-size:13px;font-weight:600;gap:10px;justify-content:center;padding:11px 16px;text-decoration:none;transition:background .18s;transition:background var(--dur-fast);width:100%}.login-glass-zoho:hover{background:#fffffff2}.login-glass-zoho-icon{align-items:center;background:#e42527;border-radius:4px;color:#fff;display:flex;font-size:12px;font-weight:800;height:22px;justify-content:center;width:22px}.login-glass-footer{color:#0c2848bf;font-size:12px;margin-top:22px;text-align:center}.login-glass-footer a{color:#0c2848;font-weight:700;text-decoration:none}.login-glass-footer a:hover{text-decoration:underline}.login-split-page{align-items:center;background:#0b1f3f;display:flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);justify-content:center;min-height:100vh;min-height:100dvh;overflow:hidden;padding:40px 24px;position:relative}.login-split-blobs{inset:0;overflow:hidden;pointer-events:none;position:absolute}.login-blob{background:#5082c838;border-radius:50%;filter:blur(2px);position:absolute}.login-blob--1{background:#5a8cd247;height:min(52vw,520px);left:-12%;top:-18%;width:min(52vw,520px)}.login-blob--2{background:#3c6eb438;bottom:-16%;height:min(44vw,440px);right:-10%;width:min(44vw,440px)}.login-blob--3{background:#78a0dc2e;height:min(28vw,280px);right:18%;top:8%;width:min(28vw,280px)}.login-split-shell{animation:loginGlassIn .5s cubic-bezier(.22,1,.36,1) both;animation:loginGlassIn .5s var(--ease-out) both;background:#fff;border:2px solid #1e4f84;border-radius:18px;box-shadow:0 24px 64px #14376424;display:grid;grid-template-columns:minmax(320px,.92fr) minmax(340px,1.08fr);max-width:980px;min-height:620px;overflow:hidden;position:relative;width:100%;z-index:1}.login-split-left{background:#fff;display:flex;flex-direction:column;justify-content:center;padding:44px 52px 40px}.login-split-brand{align-items:center;display:flex;gap:10px;margin-bottom:42px}.login-brand-mark{border-radius:8px;display:block;flex-shrink:0;height:36px;object-fit:contain;width:36px}.login-brand-logo{display:block;height:auto;object-fit:contain;width:min(280px,100%)}.login-brand-logo--mobile{margin:0 auto;width:min(240px,85vw)}.login-brand-logo--card{margin:0 auto;width:min(240px,100%)}.login-split-logo{align-items:center;color:#2563eb;display:flex;height:40px;justify-content:center;width:40px}.login-split-logo svg{height:36px;width:36px}.login-split-brand-name{color:#123a66;font-size:22px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.login-split-hello{color:#123a66;font-size:42px;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:0 0 10px;text-transform:none}.login-split-welcome{color:#7b93ad;font-size:14px;line-height:1.5;margin:0 0 36px;max-width:280px}.login-split-tabs{display:flex;gap:8px;margin-bottom:28px}.login-split-tabs button{background:#fff;border:1.5px solid #e2e8f0;border-radius:999px;color:#64748b;cursor:pointer;flex:1 1;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13px;font-weight:600;padding:9px 14px;transition:all .15s}.login-split-tabs button.active{background:#fff;border-color:#2563eb;box-shadow:0 0 0 1px #2563eb26;color:#2563eb}.login-split-form{margin-bottom:4px}.login-split-field{border-bottom:1.5px solid #c5d4e6;margin-bottom:28px;transition:border-color .15s}.login-split-field:focus-within{border-bottom-color:#2f6fad}.login-split-field label{color:#8a9fb5;display:block;font-size:13px;font-weight:500;margin-bottom:2px}.login-split-field input{background:#0000;border:none;color:#123a66;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:15px;outline:none;padding:8px 0 10px;width:100%}.login-split-field input::placeholder{color:#a8b8c9}.login-split-password{align-items:center;display:flex;gap:8px}.login-split-password input{flex:1 1;min-width:0}.login-split-eye{align-items:center;background:#0000;border:none;border-radius:6px;color:#8a9fb5;cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;padding:4px}.login-split-eye:hover{background:#f0f6fc;color:#2f6fad}.login-split-eye i{font-size:18px}.login-split-row{align-items:center;display:flex;font-size:12px;gap:12px;justify-content:space-between;margin-bottom:30px}.login-split-check{align-items:center;color:#7b93ad;cursor:pointer;display:flex;gap:8px}.login-split-check input{accent-color:#2f6fad;cursor:pointer;height:15px;width:15px}.login-split-forgot{color:#2563eb;cursor:default;font-weight:500;white-space:nowrap}.login-split-mode-link{background:none;border:none;color:#2563eb;cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:12px;font-weight:600;padding:0;white-space:nowrap}.login-split-mode-link:hover{text-decoration:underline}.login-split-submit{background:#3d7cbc;border:none;border-radius:8px;box-shadow:0 10px 22px #2d6eb452;color:#fff;cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:15px;font-weight:700;letter-spacing:.12em;padding:14px;text-transform:uppercase;transition:background .15s,transform .15s,box-shadow .15s;width:100%}.login-split-submit:hover:not(:disabled){background:#2f6fad;transform:translateY(-1px)}.login-split-submit:disabled{cursor:not-allowed;opacity:.7}.login-split-session-note{color:#94a3b8;font-size:12px;line-height:1.4;margin:12px 0 0;text-align:center}.login-split-signup{color:#64748b;font-size:13px;margin:20px 0 0;text-align:center}.login-split-signup a{color:#2563eb;font-weight:600;text-decoration:none}.login-split-signup a:hover{text-decoration:underline}.login-split-divider{align-items:center;color:#a8b8c9;display:flex;font-size:11px;font-weight:600;gap:14px;letter-spacing:.08em;margin:22px 0 12px}.login-split-divider:after,.login-split-divider:before{background:#d7e2ee;content:"";flex:1 1;height:1px}.login-split-sso-label{display:none}.login-split-zoho{align-items:center;background:#fff;border:1.5px solid #d0deec;border-radius:8px;color:#123a66;display:flex;font-size:14px;font-weight:600;gap:10px;justify-content:center;min-height:48px;padding:12px 16px;text-decoration:none;transition:all .15s;width:100%}.login-split-zoho:hover{background:#f5f9fd;border-color:#8bb4db;transform:translateY(-1px)}.login-split-zoho--primary{background:#2563eb;border:none;box-shadow:0 8px 22px #2563eb47;color:#fff;margin-top:12px}.login-split-zoho--primary:hover{background:#1d4ed8;border-color:#0000;color:#fff}.login-split-zoho-icon{align-items:center;background:#eef5fb;border:1px solid #d7e6f5;border-radius:7px;color:#2f6fad;display:flex;flex-shrink:0;font-size:13px;font-weight:800;height:26px;justify-content:center;width:26px}.login-split-zoho--primary .login-split-zoho-icon{background:#fff;border-color:#0000;color:#2563eb}.login-split-zoho:hover .login-split-zoho-icon{background:#eef5fb;border-color:#8bb4db}.login-split-zoho--primary:hover .login-split-zoho-icon{background:#fff;border-color:#0000}.login-split-left--sso{justify-content:center}.login-mobile-shell--sso{display:flex;flex-direction:column;justify-content:center;min-height:min(70vh,520px)}.login-split-right{align-items:center;background:linear-gradient(165deg,#eaf2fa,#d4e4f4 55%,#c5d9ef);border-left:1px solid #d0deec;display:flex;justify-content:center;padding:28px 24px}.login-split-illustration{-webkit-user-drag:none;display:block;height:auto;max-width:520px;object-fit:contain;-webkit-user-select:none;user-select:none;width:100%}.login-desktop-only{display:block}.login-mobile-only{display:none}@media (max-width:920px){.login-split-shell{grid-template-columns:1fr;max-width:480px;min-height:0}.login-split-right{display:none}.login-split-left{padding:36px 32px 32px}}.login-mobile-page{align-items:flex-start;background:#0b1f3f;display:flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);justify-content:center;min-height:100vh;min-height:100dvh;overflow:hidden;padding:max(20px,env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom, 0px));position:relative}.login-mobile-shell{background:#fff;border:2px solid #1e4f84;border-radius:18px;box-shadow:0 20px 60px #1437641f;max-width:440px;padding:32px 24px 28px;position:relative;width:100%;z-index:1}.login-mobile-brand{align-items:center;display:flex;gap:10px;justify-content:flex-start;margin-bottom:28px}.login-mobile-shell .login-split-hello{font-size:34px}.login-mobile-shell .login-split-welcome{margin-bottom:28px;max-width:none}.login-mobile-shell .login-split-field input{font-size:16px}.login-mobile-shell .login-split-submit{min-height:50px}.login-mobile-shell .login-split-zoho{min-height:48px}.role-tabs{background:#f3f7fc;background:var(--bg);border-radius:10px;border-radius:var(--radius-sm);display:flex;gap:3px;margin-bottom:24px;padding:3px}.role-tab{align-items:center;background:none;border:none;border-radius:6px;color:#334e68;color:var(--text2);cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:12px;font-weight:400;gap:3px;padding:8px 4px;transition:all .15s}.role-tab.active{background:#fff;background:var(--white);box-shadow:0 1px 2px #0b24400a,0 4px 12px #0b24400d;box-shadow:var(--shadow-sm);color:#2563eb;color:var(--blue);font-weight:500}.login-btn{background:#2563eb;background:var(--blue);border:none;border-radius:12px;box-shadow:none;color:#fff;cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:14px;font-weight:500;letter-spacing:-.01em;margin-top:4px;padding:12px;transition:all .15s;width:100%}.login-btn:hover{background:#1d4ed8;background:var(--blue-dark);box-shadow:none;transform:none}.login-btn:active{transform:scale(.98)}.demo-info{background:#2563eb1a;background:var(--blue-light);border:1px solid #0570de26;border-radius:10px;border-radius:var(--radius-sm);color:#2563eb;color:var(--blue);font-size:12px;margin-top:14px;padding:10px 14px}.login-screen{align-items:center;background:#f3f7fc;background:var(--bg);display:flex;justify-content:center;min-height:100vh;min-height:100dvh;padding:48px;position:relative}.login-card{background:#fff;background:var(--white);border:none;border-radius:20px;box-shadow:0 12px 40px #0b24401f;box-shadow:var(--shadow-md);max-width:420px;padding:36px 32px;position:relative;width:100%;z-index:1}.login-glow{display:none}.login-logo{align-items:center;display:flex;gap:10px;margin-bottom:24px}.login-logo--full{justify-content:center;margin-bottom:20px}.logo-icon{align-items:center;background:linear-gradient(135deg,#0570de,#1a73e8);border-radius:12px;color:#fff;display:flex;font-size:18px;font-weight:700;height:40px;justify-content:center;width:40px}.logo-text{color:#0b2440;color:var(--text);font-size:16px;font-weight:600}.logo-sub{color:#627d98;color:var(--text3);font-size:10px;letter-spacing:.5px;text-transform:uppercase}.login-title{color:#0b2440;color:var(--text);font-size:24px;font-weight:600;margin-bottom:6px}.login-sub{color:#627d98;color:var(--text3);font-size:14px;margin-bottom:28px}.form-card{background:#fff;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);box-shadow:0 8px 32px #0f285014;max-width:640px;padding:28px 30px}.form-tip{align-items:flex-start;background:#fff7ed;background:var(--amber-bg);border-left:3px solid #c2410c;border-left:3px solid var(--amber);border-radius:10px;border-radius:var(--radius-sm);color:#c2410c;color:var(--amber);display:flex;font-size:12px;gap:9px;margin-bottom:18px;padding:11px 14px}.form-group .optional{color:#627d98;color:var(--text3);font-weight:400}.ticket-screenshot-drop{align-items:center;background:#f3f7fc;background:var(--bg);border:2px dashed #e3ebf4;border:2px dashed var(--border);border-radius:10px;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:14px;padding:16px 18px;transition:border-color .15s,background .15s}.ticket-screenshot-drop:hover{background:#2563eb1a;background:var(--blue-light);border-color:#2563eb73}.ticket-screenshot-drop input{display:none}.ticket-screenshot-drop .ti{color:#2563eb;color:var(--blue);flex-shrink:0;font-size:28px}.ticket-screenshot-drop-title{color:#0b2440;color:var(--text);font-size:13px;font-weight:600}.ticket-screenshot-drop-hint{color:#627d98;color:var(--text3);font-size:11px;margin-top:2px}.ticket-screenshot-preview{background:#fff;background:var(--white);border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-sm);overflow:hidden}.ticket-screenshot-preview img{background:#f8fafc;display:block;max-height:220px;object-fit:contain;width:100%}.ticket-screenshot-preview-meta{align-items:center;border-top:1px solid #e3ebf4;border-top:1px solid var(--border);display:flex;gap:10px;justify-content:space-between;padding:10px 12px}.ticket-screenshot-name{color:#334e68;color:var(--text2);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-attachment-preview img{background:#f8fafc;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-sm);display:block;max-height:280px;object-fit:contain;width:100%}.success-wrap{flex-direction:column;margin:0 auto;max-width:440px;padding:60px 40px;text-align:center}.success-icon,.success-wrap{align-items:center;display:flex}.success-icon{animation:pulse 2s infinite;background:#f0fdf4;background:var(--green-bg);border-radius:50%;font-size:26px;height:62px;justify-content:center;margin-bottom:18px;width:62px}.ticket-id-chip{background:#2563eb1a;background:var(--blue-light);border:1px solid #0570de26;border-radius:10px;border-radius:var(--radius-sm);color:#2563eb;color:var(--blue);display:inline-block;font-family:JetBrains Mono,monospace;font-family:var(--mono);font-size:13px;margin:12px 0 18px;padding:5px 14px}@keyframes modalIn{0%{opacity:0;transform:scale3d(.97,.97,1) translate3d(0,8px,0)}to{opacity:1;transform:scaleX(1) translateZ(0)}}@media (max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.page{padding:22px 20px}.responsive-grid-3{grid-template-columns:repeat(2,1fr)}.kanban{-webkit-overflow-scrolling:touch;display:flex;gap:12px;overflow-x:auto}.kanban-col{flex-shrink:0;min-width:240px;width:240px}}@media (max-width:900px){.sidebar{transform:translate3d(-100%,0,0);transition:transform .3s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-normal) var(--ease-out);width:min(300px,88vw)}.sidebar.open{transform:translateZ(0)}.sidebar-close-btn{display:flex}.sidebar-overlay{display:block;pointer-events:none}.sidebar-overlay.show{opacity:1;pointer-events:auto}.sidebar-logout-row{display:flex}.logout-btn{color:#fca5a5;min-height:40px;min-width:40px}.main-content{margin-left:0;max-width:100vw;width:100%}.topbar-logout-btn,.topbar-menu-btn{display:flex}.topbar-greeting-label{display:none}.topbar-greeting{display:flex;flex:1 1;min-width:0}.topbar-greeting-name{font-size:16px}.topbar-right{flex-shrink:1;min-width:0}.topbar-view-toggle{height:34px;width:108px}.btn,.btn-ghost,.btn-primary,.login-split-submit{min-height:44px}input,select,textarea{font-size:16px}.nav-item{min-height:44px;padding:11px 12px}.responsive-grid-2,.responsive-split{grid-template-columns:1fr}.history-layout{grid-template-columns:280px minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.card-header{flex-wrap:wrap}.card-header .btn,.card-header .btn-ghost,.card-header .view-all-link{margin-left:auto}.filter-bar{flex-wrap:wrap}.filter-bar .search-wrap{flex:1 1 100%;min-width:0}.filter-bar .filter-select{flex:1 1 auto;min-width:120px}.page-title{font-size:20px}.quick-links-grid,.responsive-auto-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.history-layout{grid-template-columns:1fr;grid-template-rows:minmax(0,min(200px,28dvh)) minmax(0,1fr)}.page{padding:16px 14px}.page.page-scroll{padding-bottom:12px}.page-header{align-items:stretch;flex-direction:column;gap:12px}.page-header .btn,.page-header>button,.page-header>div{justify-content:center;width:100%}.page-header>div{display:flex;flex-wrap:wrap;gap:8px}.table-card{overflow:hidden}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}table:not(.assets-table){min-width:560px}.assets-table{min-width:0;width:100%}.assets-table .asset-cell{min-width:0}.card:not(.history-employee-list):not(.table-card){overflow-x:auto}.history-detail-content .card,.history-detail-panel .card,.history-page .card{overflow:hidden!important}.asset-category-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.asset-category-tabs::-webkit-scrollbar{display:none}.asset-category-tab{flex-shrink:0}.modal{max-height:92dvh;max-width:100%;width:calc(100vw - 20px)!important}.modal-overlay{align-items:flex-end;padding:10px}.modal-body{max-height:calc(92dvh - 120px);overflow-y:auto}.form-row{grid-template-columns:1fr}.modal-meta,.modal-meta.cols-3{grid-template-columns:1fr 1fr!important}.login-desktop-only{display:none!important}.login-mobile-only{display:block!important}.login-screen{align-items:flex-start;padding:max(20px,env(safe-area-inset-top)) 16px 16px}.login-card{max-width:100%;padding:24px 18px}.history-profile-card>div{flex-wrap:wrap;gap:10px}.history-status-badge{margin-left:0!important}.topbar{gap:10px;height:56px;padding:0 12px}.topbar-right{gap:6px}.topbar-actions{gap:4px;padding:3px 4px 3px 8px}.filter-bar{align-items:stretch;flex-direction:column;gap:10px}.filter-bar .filter-select,.filter-bar .search-wrap{width:100%}.stats-grid{gap:10px}.stat-card{padding:14px}.settings-layout{flex-direction:column;gap:14px}.settings-nav{width:100%}.settings-nav-inner{-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto;scrollbar-width:none}.settings-nav-inner::-webkit-scrollbar{display:none}.settings-nav-item{border-bottom:3px solid #0000;border-left:none!important;flex-shrink:0;white-space:nowrap}.settings-nav-item.active{border-bottom-color:#2563eb;border-bottom-color:var(--blue)}}@media (max-width:600px){.stats-grid{grid-template-columns:1fr}.topbar{gap:8px;padding:0 10px}.topbar-view-toggle{display:none}.profile-stats-grid{grid-template-columns:1fr 1fr}.kanban{-webkit-overflow-scrolling:touch;display:flex;gap:12px;overflow-x:auto;padding-bottom:12px}.kanban-col{flex-shrink:0;min-width:min(300px,78vw);width:min(300px,78vw)}.kanban-col-inner{max-height:calc(100vh - 200px);min-height:calc(100vh - 240px)}.quick-links-grid,.responsive-auto-grid,.responsive-grid-3{grid-template-columns:1fr}.responsive-auto-grid{margin-bottom:16px}.modal-meta,.modal-meta.cols-3{grid-template-columns:1fr!important}.page-title{font-size:18px}.page-sub{font-size:12px}.stat-value{font-size:26px}.history-employee-list{max-height:100%}.page-header{margin-bottom:16px}.form-card{padding:20px 16px}.card{border-radius:10px;border-radius:var(--radius-sm)}.card-body,.card-header{padding:14px 16px}}@media (max-width:480px){.topbar-actions{gap:2px;padding:2px 3px 2px 6px}.topbar-icon-btn{height:36px;width:36px}.topbar-avatar{font-size:11px;height:34px;width:34px}.topbar-logout-btn{font-size:17px}.topbar-logout-btn,.topbar-menu-btn{height:36px;width:36px}.page{padding:12px 10px}.profile-hero{padding:20px 16px!important}.profile-hero-btn{justify-content:center;width:100%}.topbar-notif-panel{left:10px;max-height:calc(100dvh - 72px);overflow-y:auto;position:fixed;right:10px;top:58px;width:auto}body,html{overflow-x:hidden}}.profile-chart{grid-gap:10px;align-items:end;display:grid;gap:10px;grid-template-columns:repeat(6,1fr);height:160px}.profile-chart-col{align-items:center;display:flex;flex-direction:column;gap:6px;min-width:0}.profile-chart-value{font-size:12px;font-weight:600;line-height:1}.profile-chart-bar-wrap{align-items:flex-end;display:flex;height:100px;justify-content:center;max-width:48px;width:100%}.profile-chart-bar{background:linear-gradient(180deg,#60a5fa,#2563eb);background:linear-gradient(180deg,#60a5fa,var(--blue));border-radius:6px 6px 2px 2px;transition:height .5s ease,filter .15s ease;width:100%}.profile-chart-col:hover .profile-chart-bar{filter:brightness(1.08) saturate(1.1)}.profile-chart-label{color:#627d98;color:var(--text3);font-size:10px;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}@media (max-width:700px){.profile-chart{grid-template-columns:repeat(3,1fr);height:auto;row-gap:20px}}.tab-pills{background:#eef3f9;background:var(--bg2);border-radius:10px;display:inline-flex;gap:4px;padding:4px}.tab-pill{align-items:center;background:#0000;border:none;border-radius:8px;color:#334e68;color:var(--text2);cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:7px 14px;transition:background .15s ease,color .15s ease}.tab-pill.active,.tab-pill:hover{color:#0b2440;color:var(--text)}.tab-pill.active{background:#fff;box-shadow:0 1px 2px #0b24400a,0 4px 12px #0b24400d;box-shadow:var(--shadow-sm)}.kanban{grid-gap:12px;display:grid;flex:1 1;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr));min-height:0;overflow:hidden;padding:2px 0 8px;width:100%}.kanban-col{flex-shrink:1;min-height:0;min-width:0;width:auto}.kanban-col,.kanban-col-inner{display:flex;flex-direction:column}.kanban-col-inner{backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);background:#ffffffb8;border:none;border-radius:18px;box-shadow:0 1px 3px #0b24400d,0 6px 20px #0b24400d;box-shadow:0 1px 2px #0b24400a,0 4px 12px #0b24400d;box-shadow:var(--shadow-sm);flex:1 1;max-height:calc(100vh - 190px);min-height:calc(100vh - 210px);overflow:hidden;transition:box-shadow .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1);transition:box-shadow var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.kanban-col-inner:hover{box-shadow:0 1px 3px #0b24400f,0 10px 28px #0b244014}.kanban-col-bar{flex-shrink:0;height:3px}.kanban-col-head{align-items:center;background:#ffffff8c;border-bottom:1px solid #e3ebf4e6;display:flex;flex-shrink:0;gap:8px;padding:12px 14px}.kanban-col-head>i{font-size:15px}.kanban-col-title{color:#0b2440;color:var(--navy);font-size:13.5px;font-weight:500;letter-spacing:-.01em;text-transform:none}.kanban-col-count{font-feature-settings:"tnum";border-radius:999px;font-size:12px;font-variant-numeric:tabular-nums;font-weight:500;margin-left:auto;min-width:24px;padding:2px 9px;text-align:center}.kanban-col-body{flex:1 1;min-height:0;overflow-y:auto;padding:10px}.kanban-empty{color:#94a3b8;font-size:12px;font-weight:500;padding:40px 14px;text-align:center}.kanban-empty i{display:block;font-size:26px;margin-bottom:8px;opacity:.4}.kanban-card{animation:fadeInUp .18s cubic-bezier(.22,1,.36,1) both;animation:fadeInUp var(--dur-fast) var(--ease-out) both;background:#fff;border:none;border-radius:14px;box-shadow:0 1px 2px #0b24400d,0 3px 10px #0b24400a;margin-bottom:9px;padding:13px 13px 13px 16px;position:relative;transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.kanban-card:before{background:#cbd5e1;background:var(--accent,#cbd5e1);border-radius:0 3px 3px 0;bottom:10px;content:"";left:0;position:absolute;top:10px;width:3px}.kanban-card:hover{box-shadow:0 1px 3px #0b24400f,0 8px 22px #0b244014;transform:none}.kanban-card-title{color:#0b2440;color:var(--navy);font-size:13.5px;font-weight:500;letter-spacing:-.02em;line-height:1.4;margin-bottom:8px}.kanban-card.is-done{opacity:.7}.kanban-card.is-done .kanban-card-title{color:#627d98;color:var(--text3);text-decoration:line-through}.kanban-meta{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.kanban-tag{border-radius:6px;font-size:10px;font-weight:600;padding:2px 9px}.kanban-foot{gap:8px;justify-content:space-between}.kanban-date,.kanban-foot{align-items:center;display:flex}.kanban-date{color:#627d98;color:var(--text3);font-size:11px;gap:4px}.kanban-date i{font-size:13px}.kanban-date.is-late{color:#dc2626;color:var(--red);font-weight:600}.kanban-date-edit{background:#0000;border:1px dashed #0000;border-radius:6px;cursor:pointer;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);max-width:100%;padding:2px 6px}.kanban-date-edit:hover{background:#eef3f9;background:var(--bg2);border-color:#e3ebf4;border-color:var(--border)}.kanban-date-edit-icon{font-size:10px!important;margin-left:2px;opacity:.55}.kanban-date-input{background:#fff;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:6px;color:#0b2440;color:var(--text);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:11px;max-width:132px;padding:2px 6px}.kanban-date-input.is-late{color:#dc2626;color:var(--red)}.kanban-check{align-items:center;background:#ffffff80;border:1.5px solid #0c284826;border-radius:7px;color:#627d98;color:var(--text3);cursor:pointer;display:flex;flex-shrink:0;height:26px;justify-content:center;transition:all .14s ease;width:26px}.kanban-check i{font-size:14px}.kanban-check:hover{background:#15803d;background:var(--green);border-color:#15803d;border-color:var(--green);color:#fff;transform:scale(1.05)}.kanban-check.done{background:#10b981;border-color:#10b981;color:#fff;cursor:default}.kanban-check.is-completing{background:#ecfdf5;border-color:#10b981;cursor:wait;pointer-events:none;transform:scale(.95)}.kanban-check.is-completing:hover{background:#ecfdf5;border-color:#10b981;color:#94a3b8;transform:scale(.95)}.kanban-check-spinner{animation:kanban-check-spin .55s linear infinite;border:2px solid #bbf7d0;border-radius:50%;border-top-color:#10b981;height:14px;width:14px}@keyframes kanban-check-spin{to{transform:rotate(1turn)}}.kanban-card.is-completing{opacity:.55;pointer-events:none}.spin-icon{animation:kanban-check-spin .7s linear infinite;display:inline-block}.ticket-kanban-card{border:none;display:block;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font)}.ticket-history-row{cursor:pointer;transition:background .12s ease}.ticket-history-row:hover{background:#2563eb0a}@media (max-width:1100px){.page-tickets .kanban{grid-template-columns:repeat(3,minmax(220px,1fr));overflow-x:auto}}@media (max-width:768px){.page-tickets .kanban{grid-template-columns:repeat(5,minmax(240px,1fr));overflow-x:auto}}.page-announcements{isolation:isolate;max-width:none;position:relative;width:100%}.ann-bg-art{-webkit-user-drag:none;height:auto;left:50%;max-width:520px;object-fit:contain;opacity:.14;pointer-events:none;position:absolute;top:52%;transform:translate(-50%,-50%);-webkit-user-select:none;user-select:none;width:min(520px,70vw);z-index:0}.page-announcements>:not(.ann-bg-art){position:relative;z-index:1}.ann-page-header{margin-bottom:16px}.ann-wrap{max-width:none;width:100%}.ann-toolbar{align-items:center;gap:12px;margin-bottom:18px}.ann-filters,.ann-toolbar{display:flex;flex-wrap:wrap}.ann-filters{gap:8px}.ann-chip{align-items:center;background:#fff;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:999px;color:#334e68;color:var(--text2);cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:12.5px;font-weight:600;gap:6px;padding:7px 13px;transition:all .15s ease}.ann-chip:hover{border-color:#cbd9ea;color:#0b2440;color:var(--text)}.ann-chip.active{background:#2563eb;background:var(--chip,var(--blue));border-color:#0000;box-shadow:none;color:#fff}.ann-chip-count{align-items:center;background:#0000000f;border-radius:9px;color:inherit;display:inline-flex;font-size:11px;font-weight:700;height:18px;justify-content:center;min-width:18px;padding:0 6px}.ann-chip.active .ann-chip-count{background:#ffffff40}.ann-search{margin-left:auto;min-width:220px;position:relative}.ann-search i{color:#627d98;color:var(--text3);font-size:16px;left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.ann-search input{background:#fff;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:10px;color:#0b2440;color:var(--text);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);font-size:13px;padding:9px 12px 9px 36px;transition:all .15s ease;width:100%}.ann-search input:focus{border-color:#2563eb;border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f;outline:none}.ann-section-label{align-items:center;color:#627d98;color:var(--text3);display:flex;font-size:11px;font-weight:700;gap:7px;letter-spacing:.6px;margin:4px 2px 12px;text-transform:uppercase}.ann-card{animation:fadeInUp .3s cubic-bezier(.22,1,.36,1) both;animation:fadeInUp var(--dur-normal) var(--ease-out) both;backdrop-filter:blur(14px) saturate(140%);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:var(--glass-blur);background:#fff;background:var(--glass-bg);border:1px solid #e3ebf4;border-left:3px solid #cbd5e1;border:1px solid var(--glass-border);border-left:3px solid var(--accent,#cbd5e1);border-radius:14px;box-shadow:none;margin-bottom:14px;overflow:hidden;padding:0;position:relative;transition:transform .16s ease,border-color .16s ease}.ann-card:hover{border-color:#c5d4e6;box-shadow:none;transform:none}.ann-card.pinned{background:linear-gradient(180deg,#fffdf5cc,#ffffff80 60%)}.ann-pin-banner{align-items:center;background:#fff8e6;border-bottom:1px solid #fcecc4;color:#d97706;display:flex;font-size:11px;font-weight:700;gap:6px;letter-spacing:.3px;padding:6px 20px}.ann-body{padding:18px 20px}.ann-head{align-items:flex-start;display:flex;gap:13px}.ann-icon{align-items:center;background:#eff6ff;background:var(--accent-bg,#eff6ff);border-radius:12px;display:flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.ann-icon i{color:#2563eb;color:var(--accent,var(--blue));font-size:21px}.ann-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.ann-title{color:#0b2440;color:var(--text);font-size:15.5px;font-weight:700}.ann-badge{border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.2px;padding:2px 9px}.ann-badge.dept{background:#f1f5f9;color:#64748b}.ann-meta{align-items:center;color:#627d98;color:var(--text3);display:flex;font-size:12px;gap:6px}.ann-actions{display:flex;gap:5px;margin-left:auto;opacity:0;transition:opacity .15s ease}.ann-card:hover .ann-actions{opacity:1}.ann-act-btn{align-items:center;background:#fff;border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:8px;color:#627d98;color:var(--text3);cursor:pointer;display:flex;height:31px;justify-content:center;transition:all .13s ease;width:31px}.ann-act-btn i{font-size:15px}.ann-act-btn:hover{border-color:#cbd9ea;color:#0b2440;color:var(--text)}.ann-act-btn.active{background:#fff8e6;border-color:#fcecc4;color:#d97706}.ann-act-btn.danger:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.ann-msg{color:#475569;font-size:14px;line-height:1.7;margin-top:12px;padding-left:55px;white-space:pre-wrap}.ann-foot{color:#627d98;color:var(--text3);font-size:11.5px;gap:14px;margin-top:14px;padding-left:55px}.ann-foot,.ann-foot-item{align-items:center;display:flex}.ann-foot-item{gap:5px}.ann-foot-item i{font-size:14px}@media (max-width:600px){.ann-search{margin-left:0;width:100%}.ann-foot,.ann-msg{padding-left:0}.ann-actions{opacity:1}}.card,.stat-card{transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-normal) var(--ease-out),box-shadow var(--dur-normal) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.card:hover,.stat-card:hover{border-color:#c5d4e6!important;box-shadow:0 12px 40px #0b24401f,0 0 24px #2563eb1f,inset 0 1px 0 #ffffffa6!important;box-shadow:var(--shadow-md),var(--glow),inset 0 1px 0 #ffffffa6!important;transform:translate3d(0,-3px,0)}.stat-card{overflow:hidden;position:relative}.stat-card:before{background:linear-gradient(135deg,#1a3f66,#2563eb);background:var(--grad-accent);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .18s cubic-bezier(.22,1,.36,1);transition:opacity var(--dur-fast) var(--ease-out)}.stat-card:hover:before{opacity:1}.stat-number,.stat-value{animation:countPop .3s cubic-bezier(.34,1.12,.64,1) both;animation:countPop var(--dur-normal) var(--ease-spring) both;color:#0b2440;color:var(--text);display:inline-block}.stat-icon{transition:transform .3s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-normal) var(--ease-out)}.card:hover .stat-icon,.stat-card:hover .stat-icon{transform:scale3d(1.06,1.06,1) rotate(-2deg)}.btn,button:not(.nav-item){transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1),background-color .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.btn:hover{transform:none}.btn:active{transform:scale3d(.97,.97,1)}.btn-primary{box-shadow:none!important;transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s cubic-bezier(.22,1,.36,1)!important;transition:transform var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)!important}.btn-primary:hover{box-shadow:none!important;transform:none}.btn-primary:active{transform:scale3d(.97,.97,1)}.nav-item{transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1)!important;transition:transform var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)!important}.nav-item:hover{transform:translate3d(4px,0,0)}.nav-badge{animation:badgePulse 2.4s cubic-bezier(.45,0,.55,1) infinite;animation:badgePulse 2.4s var(--ease-in-out) infinite}.modal{animation:modalPop .3s cubic-bezier(.22,1,.36,1) both!important;animation:modalPop var(--dur-normal) var(--ease-out) both!important;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);background:#fffffff5!important;border:none!important;border-radius:22px!important;box-shadow:0 8px 24px #081e3c1a,0 24px 64px #081e3c29!important}.modal-overlay{animation:overlayFadeIn .18s cubic-bezier(.22,1,.36,1) both!important;animation:overlayFadeIn var(--dur-fast) var(--ease-out) both!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#0c284859!important}.toast{animation:toastSlide .3s cubic-bezier(.22,1,.36,1) both!important;animation:toastSlide var(--dur-normal) var(--ease-out) both!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}tbody tr{transition:background-color .18s cubic-bezier(.22,1,.36,1)!important;transition:background-color var(--dur-fast) var(--ease-out)!important}tbody tr:hover{background:rgba(11,36,64,.045)!important}.avatar,.user-avatar{transition:transform .3s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-normal) var(--ease-out)}.avatar:hover,.user-avatar:hover{transform:scale3d(1.06,1.06,1)}.view-toggle,[class*=toggle]{transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.clickable,a{transition:color .18s cubic-bezier(.22,1,.36,1),opacity .18s cubic-bezier(.22,1,.36,1);transition:color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.stat-card{padding:14px 16px!important}.stat-card .stat-icon{border-radius:9px!important;height:34px!important;margin-bottom:10px!important;width:34px!important}.stat-card .stat-icon i{font-size:17px!important}.stat-card .stat-number,.stat-card .stat-value{font-size:26px!important;line-height:1!important;margin-bottom:4px!important}.stat-card .stat-label{color:#627d98!important;color:var(--text3)!important;font-size:12px!important}.login-split-page{align-items:center!important;background:#0b1f3f!important;display:flex!important;justify-content:center!important;min-height:100vh!important;overflow:hidden!important;padding:48px 40px!important;position:relative!important}.login-split-blobs{inset:0!important;pointer-events:none!important;position:absolute!important}.login-blob{border-radius:50%!important;filter:blur(1px);position:absolute!important}.login-blob--1{animation:blobFloat1 18s ease-in-out infinite;background:#3d6eb8!important;border-radius:58% 42% 45% 55%/52% 48% 52% 48%!important;height:560px!important;opacity:.35!important;right:-140px!important;top:-180px!important;width:620px!important}.login-blob--2{animation:blobFloat2 22s ease-in-out infinite;background:#2a5a9e!important;border-radius:48% 52% 60% 40%/44% 56% 44% 56%!important;bottom:-240px!important;height:620px!important;left:-180px!important;opacity:.28!important;width:700px!important}.login-blob--3{animation:blobFloat1 26s ease-in-out infinite reverse;background:#4a7cc4!important;border-radius:55% 45% 42% 58%/48% 52% 48% 52%!important;bottom:-60px!important;height:340px!important;opacity:.25!important;right:14%!important;width:380px!important}@keyframes blobFloat1{0%,to{transform:translate(0) rotate(0deg)}50%{transform:translate(-24px,22px) rotate(6deg)}}@keyframes blobFloat2{0%,to{transform:translate(0) rotate(0deg)}50%{transform:translate(28px,-20px) rotate(-5deg)}}.login-split-shell{animation:loginCardIn .7s cubic-bezier(.16,1,.3,1);background:#fbfcfe!important;border:2px solid #2f6ac4!important;border-radius:26px!important;box-shadow:0 40px 90px #1e407c2e!important;display:grid!important;grid-template-columns:380px 1fr!important;max-width:1020px!important;overflow:hidden!important;position:relative!important;width:100%!important;z-index:2!important}@keyframes loginCardIn{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.login-split-left{background:#0000!important;border-right:none!important;padding:44px 40px!important}.login-split-right{align-items:center!important;background:#0000!important;border:none!important;border-radius:0!important;display:flex!important;justify-content:center!important;padding:20px 30px!important}.login-split-right>*{background:#0000!important;border:none!important;box-shadow:none!important}.login-split-left>*{animation:loginItemIn .6s cubic-bezier(.16,1,.3,1) backwards}.login-split-left>:first-child{animation-delay:.12s}.login-split-left>:nth-child(2){animation-delay:.2s}.login-split-left>:nth-child(3){animation-delay:.28s}.login-split-left>:nth-child(4){animation-delay:.36s}@keyframes loginItemIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.job-card{display:flex;flex-direction:column;gap:0;padding:20px}.job-card--closed{opacity:.7}.job-card-top{align-items:flex-start;display:flex;gap:10px;justify-content:space-between;margin-bottom:10px}.job-card-badges{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:4px}.job-card-title{color:#0b2440;color:var(--text);font-size:16px;font-weight:700;line-height:1.3;margin-bottom:0}.job-card-top .job-card-title{flex:1 1;min-width:0}.job-bonus-banner{align-items:center;background:#ecfdf5;border:1px solid #bbf7d0;border-radius:10px;color:#047857;display:flex;font-size:13px;gap:8px;margin:0 0 12px;padding:10px 12px}.job-bonus-banner i{font-size:16px}.job-bonus-banner strong{color:#059669;font-weight:700}.job-card-desc--empty{color:#627d98;color:var(--text3);font-style:italic}.job-card-actions--admin{flex-wrap:wrap}.job-card-actions--admin .btn{flex:0 1 auto}.job-card-delete{align-items:center;background:#fef2f2;border:1px solid #fee2e2;border-radius:8px;color:#dc2626;cursor:pointer;display:inline-flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.job-meta-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.job-chip{align-items:center;background:#eef3f9;background:var(--bg2);border-radius:8px;color:#334e68;color:var(--text2);display:inline-flex;font-size:11px;font-weight:500;gap:4px;line-height:1.3;padding:4px 10px}.job-chip i{font-size:12px;opacity:.85}.job-chip--dept{background:#2563eb1a;background:var(--blue-light);color:#2563eb;color:var(--blue);font-weight:600}.job-chip--bonus{background:#ecfdf5;color:#059669;font-weight:600}.job-card-exp{align-items:center;color:#627d98;color:var(--text3);display:inline-flex;font-size:12px;gap:6px;margin-bottom:10px}.job-card-desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#334e68;color:var(--text2);display:-webkit-box;flex:1 1;font-size:13px;line-height:1.55;margin-bottom:16px;overflow:hidden}.job-card-actions{display:flex;gap:8px}.job-card-actions .btn{flex:1 1;font-size:12px;justify-content:center}.job-detail-modal{display:flex;flex-direction:column;max-height:min(88vh,720px);overflow:hidden;padding:0;width:min(580px,100%)}.job-detail-hero{align-items:flex-start;background:linear-gradient(180deg,#f0f6ff,#fff);border-bottom:1px solid #e3ebf4;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:14px;padding:20px 20px 16px}.job-detail-hero-icon{align-items:center;background:#2563eb;background:var(--blue);border-radius:12px;color:#fff;display:flex;flex-shrink:0;font-size:20px;height:44px;justify-content:center;width:44px}.job-detail-hero-text{flex:1 1;min-width:0;padding-right:8px}.job-detail-title{color:#0b2440;color:var(--text);font-size:18px;font-weight:700;line-height:1.3;margin-bottom:10px}.job-detail-hero .modal-close{flex-shrink:0;margin-top:-4px}.job-detail-body{flex:1 1;min-height:0;overflow-y:auto;padding:16px 20px 8px}.job-detail-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.job-stat{background:#f3f7fc;background:var(--bg);border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:10px;min-width:0;padding:12px 12px 11px}.job-stat--bonus{background:#f0fdf4;border-color:#bbf7d0}.job-stat-label{color:#627d98;color:var(--text3);font-size:10px;font-weight:700;letter-spacing:.04em;margin-bottom:4px;text-transform:uppercase}.job-stat-value{color:#0b2440;color:var(--text);font-size:14px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}.job-stat--bonus .job-stat-value{color:#059669}.job-detail-section-title{color:#627d98;color:var(--text3);font-size:12px;font-weight:700;letter-spacing:.04em;margin-bottom:10px;text-transform:uppercase}.job-detail-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.job-detail-list li{background:#f3f7fc;background:var(--bg);border:1px solid #e3ebf4;border:1px solid var(--border);border-radius:10px;color:#334e68;color:var(--text2);font-size:13px;line-height:1.55;padding:10px 12px 10px 32px;position:relative}.job-detail-list li:before{background:#2563eb;background:var(--blue);border-radius:50%;box-shadow:0 0 0 3px #2563eb1a;box-shadow:0 0 0 3px var(--blue-light);content:"";height:8px;left:12px;position:absolute;top:16px;width:8px}.job-detail-footer{background:#fff;border-top:1px solid #e3ebf4;border-top:1px solid var(--border);flex-shrink:0;padding:14px 20px 18px}.job-detail-cta{font-size:14px;gap:8px;justify-content:center;padding:12px 16px;width:100%}@media (max-width:560px){.job-detail-stats{grid-template-columns:1fr}}.btn{transition:background .18s cubic-bezier(.34,1.12,.64,1),box-shadow .18s cubic-bezier(.34,1.12,.64,1),transform .18s cubic-bezier(.34,1.12,.64,1),border-color .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),filter .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-spring),box-shadow var(--dur-fast) var(--ease-spring),transform var(--dur-fast) var(--ease-spring),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),filter var(--dur-fast) var(--ease-out)}.btn-primary:hover:not(:disabled){background:#1d4ed8;background:var(--blue-dark);box-shadow:0 8px 20px #2563eb47;transform:translateY(-2px)}.btn-primary:active:not(:disabled){box-shadow:0 2px 8px #2563eb33;transform:translateY(0)}.btn-ghost:hover:not(:disabled){background:#eef3f9;border-color:#2563eb47;box-shadow:0 6px 16px #0b244014;color:#2563eb;color:var(--blue);transform:translateY(-1px)}.btn-danger:hover:not(:disabled){background:#fee2e2;border-color:#dc262647;box-shadow:0 6px 16px #dc26261f;transform:translateY(-1px)}.card{transition:transform .3s cubic-bezier(.34,1.12,.64,1),box-shadow .3s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-normal) var(--ease-spring),box-shadow var(--dur-normal) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.card:hover{background:#f7fafc;border-color:#c5d4e6;box-shadow:0 4px 16px #0b244012,0 12px 32px #0b24400f,inset 0 1px 0 #ffffffb3;box-shadow:var(--shadow),0 1px 0 #ffffffb3 inset;transform:translate3d(0,-2px,0)}.job-card:hover,.responsive-card-grid>.card:hover{background:#f5f8fc;border-color:#2563eb38;box-shadow:0 14px 36px #0b24401f;transform:translate3d(0,-4px,0)}.stat-card{transition:transform .3s cubic-bezier(.34,1.12,.64,1),box-shadow .3s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1),background .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-normal) var(--ease-spring),box-shadow var(--dur-normal) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.stat-card:hover{background:#f3f7fc;border-color:#2563eb33;box-shadow:0 14px 36px #0b24401f;transform:translate3d(0,-4px,0)}.stat-card .stat-icon{transition:transform .18s cubic-bezier(.34,1.12,.64,1),background .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-fast) var(--ease-spring),background var(--dur-fast) var(--ease-out)}.stat-card:hover .stat-icon{transform:scale(1.08)}.stat-card .stat-value{transition:transform .18s cubic-bezier(.34,1.12,.64,1);transition:transform var(--dur-fast) var(--ease-spring)}.stat-card:hover .stat-value{transform:translateY(-1px)}.nav-item{transition:background .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.34,1.12,.64,1),padding-left .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring),padding-left var(--dur-fast) var(--ease-out)}.nav-item:hover:not(.active){background:#ffffff17;color:#f1f5f9;transform:translateX(2px)}.nav-item .nav-icon{transition:transform .18s cubic-bezier(.34,1.12,.64,1);transition:transform var(--dur-fast) var(--ease-spring)}.nav-item:hover .nav-icon{transform:scale(1.08)}tbody tr{transition:background-color .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1);transition:background-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}tbody tr:hover{background:rgba(11,36,64,.045)}tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 #2563eb;box-shadow:inset 3px 0 0 var(--blue)}.btn-table{transition:background .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.34,1.12,.64,1),box-shadow .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-fast) var(--ease-out)}.btn-table:hover{box-shadow:0 4px 12px #0b24401a;filter:brightness(.96);transform:translateY(-1px) scale(1.04)}.btn-table-ghost:hover{background:#e8eef6;border-color:#2563eb4d;color:#2563eb;color:var(--blue)}.btn-table-blue:hover{background:#dbe7f8;border-color:#2563eb59;color:#2563eb;color:var(--blue)}.btn-table-amber:hover{background:#ffedd5;border-color:#c2410c59}.btn-table-green:hover{background:#dcfce7;border-color:#15803d59}.asset-category-tab:hover:not(.active){background:#e8eef6;border-color:#2563eb59;box-shadow:0 4px 12px #0b244014;color:#0b2440;color:var(--navy);transform:translateY(-1px)}.asset-category-tab.active:hover{box-shadow:0 6px 18px #2563eb52;filter:brightness(.94);transform:translateY(-1px)}.pill-tabs button:hover{background:#0b24400f;color:#2563eb;color:var(--blue);transform:translateY(-1px)}.quick-link-btn:hover{background:#eef3f9;border-color:#2563eb40;box-shadow:0 10px 24px #0b24401a;transform:translateY(-3px)}.modal-close{transition:background .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.34,1.12,.64,1);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.modal-close:hover{background:#eef3f9;background:var(--bg2);color:#0b2440;color:var(--text);transform:rotate(90deg) scale(1.05)}.job-chip{transition:transform .18s cubic-bezier(.34,1.12,.64,1),background .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-fast) var(--ease-spring),background var(--dur-fast) var(--ease-out)}.job-card:hover .job-chip{transform:translateY(-1px)}.job-bonus-banner{transition:transform .18s cubic-bezier(.34,1.12,.64,1),box-shadow .18s cubic-bezier(.22,1,.36,1);transition:transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-fast) var(--ease-out)}.job-card:hover .job-bonus-banner{box-shadow:0 4px 12px #0596691f;transform:translateY(-1px)}.job-card-delete{transition:background .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.34,1.12,.64,1),box-shadow .18s cubic-bezier(.22,1,.36,1);transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-fast) var(--ease-out)}.job-card-delete:hover{background:#fee2e2;box-shadow:0 4px 12px #dc262626;transform:translateY(-1px) scale(1.05)}.topbar-icon-btn{transition:background .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.34,1.12,.64,1);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.topbar-icon-btn:hover{transform:translateY(-1px) scale(1.05)}a:not(.nav-item):not(.btn){transition:color .18s cubic-bezier(.22,1,.36,1),opacity .18s cubic-bezier(.22,1,.36,1);transition:color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}@media (prefers-reduced-motion:reduce){.asset-category-tab:hover,.btn-table:hover,.btn:hover,.card:hover,.job-card-delete:hover,.modal-close:hover,.nav-item:hover,.pill-tabs button:hover,.quick-link-btn:hover,.stat-card:hover,.topbar-icon-btn:hover{transform:none!important}}.modal-meta{gap:12px;margin-bottom:20px}.meta-item{background:#fff;border:1px solid #e8eef5;border-radius:12px;box-shadow:0 1px 3px #0f28500a;padding:13px 15px;transition:border-color .18s ease,box-shadow .18s ease}.meta-item:hover{border-color:#d3e0f0;box-shadow:0 4px 14px #0f285012}.meta-label{color:#94a3b8;font-size:10px;font-weight:700;letter-spacing:.6px;margin-bottom:5px;text-transform:uppercase}.meta-value{color:#0a2540;font-size:14px;font-weight:600;line-height:1.4}.desc-box{background:#f8fafc;border:1px solid #e8eef5;border-left:3px solid #2563eb;border-radius:10px;color:#475569;font-size:13.5px;line-height:1.7;margin-bottom:20px;padding:14px 16px}.section-label{color:#64748b;font-size:11px;font-weight:700;letter-spacing:.6px;margin-bottom:10px}.ref-filter-bar{display:flex;flex-wrap:wrap;gap:8px;padding:12px 14px 0}
/*# sourceMappingURL=main.cbdbee59.css.map*/