@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Plus+Jakarta+Sans:wght@400;500;600;700;800;900&display=swap";:root{--brand-50: #f0fdf9;--brand-100: #ccfbef;--brand-200: #99f6de;--brand-300: #5eead4;--brand-400: #2dd4bf;--brand-500: #14b8a6;--brand-600: #0d9488;--brand-700: #0f766e;--brand-800: #115e59;--brand-900: #134e4a;--brand-pink: #d91a8a;--brand-pink-gradient: linear-gradient(135deg, #d91a8a, #b0126e);--brand-pink-soft: #ffeaf5;--navy-50: #f0f4ff;--navy-100: #e0e9ff;--navy-200: #c7d6ff;--navy-300: #a4bbff;--navy-400: #7c96ff;--navy-500: #5c6ef5;--navy-600: #4f46e5;--navy-700: #4338ca;--navy-800: #3730a3;--navy-900: #0A2647;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--success: #10b981;--success-bg: #ecfdf5;--warning: #f59e0b;--warning-bg: #fffbeb;--danger: #ef4444;--danger-bg: #fef2f2;--info: #3b82f6;--info-bg: #eff6ff;--surface-0: #ffffff;--surface-1: #f8fafc;--surface-2: #f1f5f9;--surface-dark: #0f172a;--font-primary: "Plus Jakarta Sans", "Inter", system-ui, -apple-system, sans-serif;--font-mono: "Fira Code", "JetBrains Mono", monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 32px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 48px rgba(0, 0, 0, .12);--shadow-brand: 0 8px 24px rgba(20, 184, 166, .25);--shadow-navy: 0 8px 24px rgba(79, 70, 229, .25);--transition-fast: all .15s cubic-bezier(.4, 0, .2, 1);--transition-base: all .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: all .4s cubic-bezier(.4, 0, .2, 1);--transition-spring: all .5s cubic-bezier(.34, 1.56, .64, 1);--gradient-brand: linear-gradient(135deg, var(--brand-500) 0%, var(--navy-600) 100%);--gradient-navy: linear-gradient(135deg, var(--navy-700) 0%, var(--navy-900) 100%);--gradient-warm: linear-gradient(135deg, #f59e0b 0%, #ef4444 100%);--gradient-cool: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-surface: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);--glass-white: rgba(255, 255, 255, .88);--glass-dark: rgba(15, 23, 42, .88);--glass-border: rgba(255, 255, 255, .6);--glass-blur: blur(16px)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{font-family:var(--font-primary);line-height:1.6;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden;font-family:var(--font-primary);color:var(--gray-800);background-color:var(--surface-1)}#root{width:100%;min-height:100vh}a{font-weight:500;color:var(--brand-600);text-decoration:none;transition:var(--transition-fast)}a:hover{color:var(--brand-700)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}::selection{background:#14b8a62e;color:var(--navy-900)}.gradient-brand{background:var(--gradient-brand)}.gradient-navy{background:var(--gradient-navy)}.gradient-success{background:var(--gradient-success)}.gradient-cool{background:var(--gradient-cool)}.gradient-warm{background:var(--gradient-warm)}.text-gradient-brand{background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.text-gradient-cool{background:var(--gradient-cool);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.text-gradient-navy{background:var(--gradient-navy);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.glass-card{background:var(--glass-white);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.card{background:var(--surface-0);border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:4px 12px;border-radius:var(--radius-pill);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.badge-success{background:var(--success-bg);color:var(--success);border:1px solid rgba(16,185,129,.2)}.badge-warning{background:var(--warning-bg);color:var(--warning);border:1px solid rgba(245,158,11,.2)}.badge-danger{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(239,68,68,.2)}.badge-info{background:var(--info-bg);color:var(--info);border:1px solid rgba(59,130,246,.2)}.badge-neutral{background:var(--gray-100);color:var(--gray-600);border:1px solid var(--gray-200)}.badge-brand{background:var(--brand-50);color:var(--brand-700);border:1px solid rgba(20,184,166,.2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:10px 20px;font-size:.9rem;font-weight:600;font-family:var(--font-primary);border-radius:var(--radius-md);border:none;cursor:pointer;transition:var(--transition-base);letter-spacing:-.01em;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-primary{background:var(--gradient-brand);color:#fff;box-shadow:var(--shadow-brand)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #14b8a659}.btn-secondary{background:var(--navy-600);color:#fff;box-shadow:var(--shadow-navy)}.btn-secondary:hover:not(:disabled){background:var(--navy-700);transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--gray-700);border:1.5px solid var(--gray-200)}.btn-ghost:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-300)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-2px)}.input{width:100%;padding:11px 14px;border:1.5px solid var(--gray-200);border-radius:var(--radius-md);font-size:.9rem;font-family:var(--font-primary);color:var(--gray-800);background:var(--surface-0);transition:var(--transition-fast);outline:none}.input:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px #14b8a61f}.input:hover:not(:focus){border-color:var(--gray-300)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #14b8a64d}50%{box-shadow:0 0 0 8px #14b8a600}}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade{animation:fadeIn .4s ease-out forwards}.animate-slide{animation:slideIn .35s ease-out forwards}.animate-scale{animation:scaleIn .3s ease-out forwards}.skeleton{background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-100) 50%,var(--gray-200) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.divider{height:1px;background:var(--gray-200);margin:var(--space-4) 0}.container{max-width:1300px;margin:0 auto;padding:0 var(--space-6);width:100%}button.btn-cancel,.btn-cancel{background-color:#f1f5f9!important;color:#475569!important;border:1px solid #cbd5e1!important;padding:10px 20px!important;border-radius:8px!important;font-size:.9rem!important;font-weight:600!important;cursor:pointer!important;transition:all .2s ease!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;height:auto!important;flex:0 0 auto!important;align-self:center!important}button.btn-cancel:hover,.btn-cancel:hover{background-color:#e2e8f0!important;color:#1e293b!important;border-color:#94a3b8!important;transform:translateY(-1px)!important;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008!important}button.btn-cancel:active,.btn-cancel:active{transform:translateY(0)!important;box-shadow:none!important}select option{color:#000!important;background-color:#fff!important}.navbar{width:100%;background:var(--glass-white);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:0 1px #0000000f,0 4px 24px #0000000a;position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(226,232,240,.7);transition:var(--transition-base)}.navbar-container{max-width:1400px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;height:68px}.navbar-brand{display:flex;align-items:center;gap:10px;text-decoration:none;transition:var(--transition-base)}.navbar-brand:hover{opacity:.85;transform:translateY(-1px)}.navbar-logo-icon{width:38px;height:38px;background:var(--gradient-brand);border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #14b8a64d;flex-shrink:0;overflow:hidden}.navbar-custom-logo{width:100%;height:100%;object-fit:contain;padding:2px}.navbar-logo-icon:has(.navbar-custom-logo){background:#fff;border:1px solid var(--gray-200);box-shadow:var(--shadow-sm)}.navbar-logo-icon svg{width:22px;height:22px;color:#fff;fill:#fff}.navbar-logo-text{display:flex;flex-direction:column;line-height:1.1}.navbar-logo-main{font-size:1.05rem;font-weight:800;color:var(--gray-900);letter-spacing:-.03em}.navbar-logo-sub{font-size:.62rem;font-weight:600;color:var(--gray-400);letter-spacing:.12em;text-transform:uppercase}.navbar-links{display:flex;align-items:center;gap:4px}.nav-link{padding:8px 16px;text-decoration:none;color:var(--gray-600);font-weight:600;font-size:.875rem;border-radius:var(--radius-md);transition:var(--transition-fast);display:flex;align-items:center;gap:6px}.nav-link:hover{background:var(--gray-100);color:var(--gray-900)}.nav-link.active{background:var(--brand-50);color:var(--brand-700)}.notification-wrapper{position:relative;display:flex;align-items:center}.notification-btn{background:transparent;border:none;cursor:pointer;position:relative;padding:8px;color:var(--gray-600);display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition-fast)}.notification-btn:hover{background:var(--gray-100);color:var(--gray-900)}.notification-badge{position:absolute;top:2px;right:2px;background:var(--danger);color:#fff;font-size:.6rem;font-weight:800;height:16px;min-width:16px;border-radius:var(--radius-pill);display:flex;align-items:center;justify-content:center;padding:0 3px;box-shadow:0 2px 6px #ef444480;border:2px solid white}.notification-dropdown{position:absolute;top:calc(100% + 12px);right:0;width:340px;background:var(--surface-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--gray-200);overflow:hidden;z-index:1001;animation:fadeIn .2s ease-out}.notification-header{padding:14px 18px;border-bottom:1px solid var(--gray-100);background:var(--gradient-surface);display:flex;align-items:center;justify-content:space-between}.notification-header h4{margin:0;font-size:.9rem;font-weight:700;color:var(--gray-800)}.notification-list{max-height:320px;overflow-y:auto}.no-notifications{padding:28px 20px;text-align:center;color:var(--gray-400);font-size:.875rem;margin:0}.notification-item{padding:14px 18px;border-bottom:1px solid var(--gray-100);cursor:pointer;transition:var(--transition-fast)}.notification-item:hover{background:var(--gray-50)}.notification-item.unread{background:var(--brand-50);border-left:3px solid var(--brand-500)}.notification-item.unread:hover{background:var(--brand-100)}.notification-msg{margin:0 0 4px;font-size:.875rem;color:var(--gray-800);line-height:1.4}.notification-time{font-size:.75rem;color:var(--gray-400);font-weight:500}.notification-footer{padding:10px 18px;border-top:1px solid var(--gray-100);background:var(--gradient-surface);text-align:center}.notification-footer button{background:none;border:none;color:var(--brand-600);font-size:.825rem;font-weight:700;cursor:pointer;padding:4px 8px;font-family:var(--font-primary);border-radius:var(--radius-sm);transition:var(--transition-fast)}.notification-footer button:hover{background:var(--brand-50)}.settings-dropdown{position:relative;margin-left:8px}.settings-link{display:flex;align-items:center;gap:8px;padding:7px 14px;background:var(--surface-0);border:1.5px solid var(--gray-200);border-radius:var(--radius-pill);cursor:pointer;font-size:.875rem;font-weight:600;color:var(--gray-700);transition:var(--transition-fast);-webkit-user-select:none;user-select:none}.settings-link:hover{border-color:var(--gray-300);background:var(--gray-50);color:var(--gray-900)}.dropdown-arrow{font-size:.7rem;color:var(--gray-400);transition:transform .25s ease;margin-left:2px}.settings-dropdown:hover .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:calc(100% + 10px);right:0;background:var(--surface-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);min-width:240px;opacity:0;visibility:hidden;transform:translateY(-8px) scale(.97);transition:all .2s cubic-bezier(.16,1,.3,1);border:1px solid var(--gray-200);overflow:hidden;z-index:1001}.settings-dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.dropdown-user-info{padding:16px 18px;background:var(--gradient-surface);border-bottom:1px solid var(--gray-100);display:flex;flex-direction:column;gap:3px}.user-name{font-weight:700;color:var(--gray-900);font-size:.95rem;letter-spacing:-.01em}.user-email{font-size:.8rem;color:var(--gray-500);word-break:break-all}.user-role-badge{display:inline-flex;align-items:center;font-size:.68rem;text-transform:uppercase;font-weight:800;background:var(--gradient-brand);color:#fff;padding:3px 10px;border-radius:var(--radius-pill);width:fit-content;margin-top:6px;letter-spacing:.06em;box-shadow:0 2px 6px #14b8a640}.dropdown-item{display:flex;align-items:center;gap:12px;padding:12px 18px;text-decoration:none;color:var(--gray-700);font-size:.875rem;transition:var(--transition-fast);border:none;background:transparent;width:100%;text-align:left;cursor:pointer;font-weight:500;font-family:var(--font-primary)}.dropdown-item:hover{background:var(--gray-50);color:var(--gray-900);padding-left:22px}.dropdown-icon{font-size:1.05rem;width:20px;display:flex;align-items:center;justify-content:center}.logout-btn{color:var(--danger);border-top:1px solid var(--gray-100)!important;margin-top:4px}.logout-btn:hover{background:var(--danger-bg)!important;color:#dc2626;padding-left:22px}.nav-divider{width:1px;height:24px;background:var(--gray-200);margin:0 4px}@media(max-width:900px){.navbar-container{padding:0 20px;height:60px}.navbar-logo-text{display:none}.nav-link{padding:8px 12px;font-size:.825rem}.settings-dropdown{margin-left:4px}}@media(max-width:600px){.settings-link .dropdown-arrow{display:none}.navbar-links{gap:2px}.nav-link span{display:none}}:root{--sidebar-width: 270px;--sidebar-collapsed: 85px;--topbar-height: 72px;--bg-erp: #f8fafc;--surface-erp: #ffffff;--brand-erp: #1e847f;--brand-light: rgba(30, 132, 127, .1);--text-dark: #1e293b;--text-muted: #64748b;--border-erp: rgba(226, 232, 240, .8);--shadow-erp: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-profile: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1)}.erp-layout{display:flex;min-height:100vh;background-color:var(--bg-erp);font-family:Inter,-apple-system,sans-serif}.erp-sidebar{position:fixed;left:0;top:0;bottom:0;background-color:#fff;border-right:1px solid var(--border-erp);transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000;display:flex;flex-direction:column}.erp-sidebar.open{width:var(--sidebar-width)}.erp-sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar-brand{height:var(--topbar-height);display:flex;align-items:center;padding:0 24px;gap:12px;font-weight:800;font-size:1.1rem;color:var(--text-dark);border-bottom:1px solid var(--border-erp)}.brand-dot{width:14px;height:14px;background:linear-gradient(135deg,#1e847f,#3b82f6);border-radius:4px;transform:rotate(45deg);flex-shrink:0}.sidebar-nav{padding:24px 12px;flex:1;overflow-y:auto}.sidebar-group-wrap{margin-bottom:12px}.sidebar-category-header{font-size:.725rem;font-weight:700;text-transform:uppercase;color:var(--text-muted);padding:12px 14px 6px;letter-spacing:.05em;display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;user-select:none;transition:color .2s}.sidebar-category-header:hover{color:var(--text-dark)}.sidebar-group-links{display:flex;flex-direction:column}.sidebar-group-wrap.has-header .sidebar-group-links{padding-left:8px}.caret-icon{display:flex;align-items:center;color:var(--text-muted)}.sidebar-link{display:flex;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;color:var(--text-muted);font-weight:500;font-size:.925rem;border-radius:12px;margin-bottom:4px;transition:all .2s}.sidebar-link:hover{background-color:var(--bg-erp);color:var(--text-dark)}.sidebar-link.active{background-color:var(--brand-light);color:var(--brand-erp)}.sidebar-link-icon{font-size:1.25rem;display:flex;align-items:center}.collapsed .sidebar-link-text,.collapsed .sidebar-brand span{display:none}.collapsed .sidebar-link{justify-content:center;padding:14px}.erp-topbar{height:var(--topbar-height);background-color:#ffffffd9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-erp);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:999}.erp-main-area{flex:1;transition:padding-left .3s;min-width:0}.erp-main-area.shifted{padding-left:var(--sidebar-width)}.erp-main-area.full{padding-left:var(--sidebar-collapsed)}.topbar-left{display:flex;align-items:center;gap:20px}.sidebar-toggle{background:none;border:none;cursor:pointer;padding:8px;border-radius:8px}.sidebar-toggle:hover{background:var(--bg-erp)}.breadcrumb-wrap{display:flex;align-items:center;gap:8px;font-size:.875rem}.curr-page-name{font-weight:700;color:var(--text-dark);text-transform:capitalize}.path-slash{color:var(--text-muted)}.path-user-role{color:var(--brand-erp);font-weight:600;background:var(--brand-light);padding:2px 8px;border-radius:6px;text-transform:uppercase;font-size:.75rem}.user-profile-widget{display:flex;align-items:center;gap:16px;cursor:pointer;position:relative}.profile-text-info{display:flex;flex-direction:column;text-align:right}.user-disp-name{font-weight:700;font-size:.9rem;color:var(--text-dark)}.user-disp-role{font-size:.75rem;color:var(--text-muted)}.profile-avatar-wrap{position:relative}.profile-avatar{width:44px;height:44px;background:linear-gradient(135deg,#1e847f,#3b82f6);border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:.95rem;border:4px solid var(--surface-erp);box-shadow:0 4px 12px #00000014}.online-indicator{position:absolute;bottom:-2px;right:-2px;width:14px;height:14px;background-color:#10b981;border:3px solid #ffffff;border-radius:50%}.profile-avatar-wrap:hover .profile-dropdown-content{opacity:1;visibility:visible;transform:translateY(12px)}.profile-dropdown-content{position:absolute;top:100%;right:0;width:280px;background-color:#fff;border-radius:16px;box-shadow:var(--shadow-profile);border:1px solid var(--border-erp);padding:8px;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .2s cubic-bezier(.16,1,.3,1);z-index:1001}.p-header{padding:24px;display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--border-erp);margin-bottom:8px}.p-header strong{font-size:1rem;color:var(--text-dark)}.p-header span{font-size:.825rem;color:var(--text-muted)}.p-role-badge{background:var(--brand-light);color:var(--brand-erp);padding:4px 10px;border-radius:8px;font-size:.7rem;font-weight:800;text-transform:uppercase;margin-top:8px;width:fit-content}.p-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;font-size:.88rem;color:var(--text-dark);font-weight:600;cursor:pointer;transition:all .2s}.p-item:hover{background:var(--bg-erp)}.btn-p-logout{width:100%;padding:12px;background-color:#fef2f2;color:#dc2626;border:none;border-radius:10px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;cursor:pointer;transition:all .2s}.btn-p-logout:hover{background-color:#fee2e2}.erp-page-content{padding:32px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes wc-fade-in{0%{opacity:0}to{opacity:1}}@keyframes wc-fade-out{0%{opacity:1}to{opacity:0}}@keyframes wc-card-in{0%{opacity:0;transform:translateY(-20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes wc-card-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-16px) scale(.97)}}@keyframes wc-progress{0%{width:100%}to{width:0%}}.wc-overlay{position:fixed;inset:0;z-index:9990;background:#0f172a59;display:flex;align-items:center;justify-content:center;padding:24px}.wc-overlay--in{animation:wc-fade-in .3s ease forwards}.wc-overlay--out{animation:wc-fade-out .38s ease forwards}.wc-card{background:#fff;border-radius:20px;width:100%;max-width:400px;box-shadow:0 24px 64px #00000024,0 4px 16px #0000000f;overflow:hidden;position:relative}.wc-card--in{animation:wc-card-in .38s cubic-bezier(.16,1,.3,1) forwards}.wc-card--out{animation:wc-card-out .32s cubic-bezier(.4,0,1,1) forwards}.wc-accent-bar{height:5px;background:linear-gradient(90deg,#1e847f,#0ea5e9);width:100%}.wc-header{display:flex;align-items:center;gap:16px;padding:24px 24px 0}.wc-avatar{width:58px;height:58px;border-radius:16px;background:linear-gradient(135deg,#1e847f,#0ea5e9);color:#fff;font-size:1.25rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;box-shadow:0 4px 14px #1e847f4d}.wc-avatar img{width:100%;height:100%;object-fit:cover}.wc-header-text{flex:1;min-width:0}.wc-role-badge{display:inline-flex;align-items:center;gap:5px;background:#f0fdf9;color:#1e847f;border:1px solid #d1fae5;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:capitalize;padding:3px 10px;margin-bottom:6px;letter-spacing:.02em}.wc-name{margin:0 0 2px;font-size:1.15rem;font-weight:800;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wc-email{margin:0;font-size:.775rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wc-divider{height:1px;background:#f1f5f9;margin:20px 24px}.wc-body{padding:0 24px}.wc-greeting{margin:0 0 6px;font-size:1.05rem;font-weight:700;color:#1e293b}.wc-message{margin:0;font-size:.86rem;color:#64748b;line-height:1.6}.wc-footer{padding:20px 24px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px}.wc-btn-start{background:#1e847f;color:#fff;border:none;border-radius:10px;padding:10px 22px;font-size:.88rem;font-weight:700;cursor:pointer;transition:background .2s,transform .15s;white-space:nowrap}.wc-btn-start:hover{background:#166e6a;transform:translateY(-1px)}.wc-btn-start:active{transform:translateY(0)}.wc-auto-close{margin:0;font-size:.73rem;color:#94a3b8;text-align:right;line-height:1.4}.wc-progress-bar{position:absolute;bottom:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,#1e847f,#0ea5e9);animation:wc-progress 7s linear forwards;border-radius:0}.role-dashboard{min-height:100vh;background:radial-gradient(circle at 15% 25%,rgba(20,184,166,.07) 0%,transparent 55%),radial-gradient(circle at 85% 80%,rgba(99,102,241,.07) 0%,transparent 55%),var(--surface-1);padding:40px 20px;font-family:var(--font-primary)}.role-dashboard .dashboard-container{max-width:1100px;margin:0 auto}.role-dashboard .welcome-hero{text-align:center;padding:56px 40px 48px;margin-bottom:44px;background:var(--glass-white);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-2xl);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.role-dashboard .welcome-hero:before{content:"";position:absolute;top:-60%;left:-30%;width:160%;height:160%;background:radial-gradient(circle at 30% 40%,rgba(20,184,166,.12) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(99,102,241,.1) 0%,transparent 45%);animation:pulse-glow 10s ease-in-out infinite alternate;pointer-events:none}@keyframes pulse-glow{0%{transform:scale(1);opacity:.6}to{transform:scale(1.08);opacity:1}}.role-dashboard .welcome-hero>*{position:relative;z-index:1}.role-dashboard .welcome-emoji{font-size:60px;margin-bottom:20px;display:inline-block;animation:wave 2.5s ease-in-out infinite;filter:drop-shadow(0 8px 16px rgba(0,0,0,.12))}@keyframes wave{0%,to{transform:rotate(0)}20%{transform:rotate(18deg)}40%{transform:rotate(0)}60%{transform:rotate(-12deg)}80%{transform:rotate(0)}}.role-dashboard .role-badge-large{display:inline-flex;align-items:center;padding:5px 16px;background:var(--gradient-brand);color:#fff;border-radius:var(--radius-pill);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:20px;box-shadow:0 4px 12px #14b8a64d}.role-dashboard .welcome-hero h1{font-size:2.8rem;font-weight:900;margin:0 0 12px;color:var(--gray-900);letter-spacing:-.04em;line-height:1.1}.role-dashboard .welcome-hero h1 span{background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.role-dashboard .welcome-hero p{font-size:1.05rem;color:var(--gray-500);max-width:500px;margin:0 auto;font-weight:400;line-height:1.6}.role-dashboard .section-title{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-400);margin-bottom:20px;display:flex;align-items:center;gap:10px}.role-dashboard .section-title:after{content:"";height:1px;flex:1;background:var(--gray-200)}.role-dashboard .nav-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px;margin-bottom:52px}.role-dashboard .nav-card{background:var(--surface-0);border-radius:var(--radius-lg);padding:26px 24px 24px;border:1px solid var(--gray-200);box-shadow:var(--shadow-xs);cursor:pointer;transition:var(--transition-spring);position:relative;overflow:hidden;display:flex;align-items:flex-start;gap:18px}.role-dashboard .nav-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gradient-brand);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.role-dashboard .nav-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:#14b8a633}.role-dashboard .nav-card:hover:after{transform:scaleX(1)}.role-dashboard .nav-card-icon{width:52px;height:52px;border-radius:var(--radius-md);background:var(--surface-1);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;transition:var(--transition-base);border:1px solid var(--gray-100)}.role-dashboard .nav-card:hover .nav-card-icon{background:var(--gradient-brand);border-color:transparent;transform:rotate(-8deg) scale(1.1);box-shadow:0 8px 20px #14b8a64d}.role-dashboard .nav-card-content{flex:1;min-width:0}.role-dashboard .nav-card-content h3{font-size:1rem;font-weight:700;color:var(--gray-900);margin:0 0 6px;letter-spacing:-.01em}.role-dashboard .nav-card-content p{font-size:.82rem;color:var(--gray-500);margin:0;line-height:1.5}.role-dashboard .nav-card-arrow{position:absolute;top:20px;right:20px;width:28px;height:28px;border-radius:50%;background:var(--gray-100);display:flex;align-items:center;justify-content:center;color:var(--gray-400);font-size:.8rem;transition:var(--transition-base);opacity:0;transform:translate(-6px)}.role-dashboard .nav-card:hover .nav-card-arrow{opacity:1;transform:translate(0);background:var(--brand-500);color:#fff}.role-dashboard .permissions-section{background:var(--surface-0);border-radius:var(--radius-lg);padding:26px 28px;border:1px solid var(--gray-200);margin-bottom:20px}.role-dashboard .permissions-section h3{font-size:.72rem;font-weight:800;color:var(--gray-400);text-transform:uppercase;letter-spacing:.1em;margin:0 0 18px}.role-dashboard .perm-tags{display:flex;flex-wrap:wrap;gap:8px}.role-dashboard .perm-tag{font-size:.78rem;padding:5px 13px;background:var(--surface-1);border:1px solid var(--gray-200);border-radius:var(--radius-pill);color:var(--gray-600);font-weight:600;transition:var(--transition-fast);cursor:default}.role-dashboard .perm-tag:hover{border-color:var(--brand-400);color:var(--brand-700);background:var(--brand-50);transform:translateY(-1px)}.role-dashboard .empty-state{text-align:center;padding:64px 40px;background:var(--surface-0);border-radius:var(--radius-xl);border:1px dashed var(--gray-300);color:var(--gray-500)}.role-dashboard .empty-icon{font-size:52px;margin-bottom:20px;display:block;opacity:.45}.role-dashboard .empty-state h3{font-size:1.2rem;font-weight:700;color:var(--gray-700);margin-bottom:8px}.role-dashboard .empty-state p{font-size:.9rem;color:var(--gray-400);max-width:400px;margin:0 auto;line-height:1.6}@media(max-width:768px){.role-dashboard .welcome-hero{padding:40px 20px 36px}.role-dashboard .welcome-hero h1{font-size:2rem}.role-dashboard .nav-cards-grid{grid-template-columns:1fr}}html,body{width:100%;max-width:100vw;overflow-x:hidden}
