@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;--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}html,body{width:100%;max-width:100vw;overflow-x:hidden}html{scroll-behavior:smooth}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}: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%}input:user-invalid,select:user-invalid,textarea:user-invalid{border:2px solid #ef4444!important;background-color:#fef2f2!important}html.modal-open,body.modal-open,html:has([class*=modal-overlay]),body:has([class*=modal-overlay]),html:has([class*=modal-backdrop]),body:has([class*=modal-backdrop]),html:has([class*=-modal-overlay]),body:has([class*=-modal-overlay]),html:has([class*=-modal-backdrop]),body:has([class*=-modal-backdrop]),html:has(.pkg-modal-overlay),body:has(.pkg-modal-overlay),html:has(.vm-modal-backdrop),body:has(.vm-modal-backdrop),html:has(.ha-bed-modal-overlay),body:has(.ha-bed-modal-overlay),html:has(.acc-modal-overlay),body:has(.acc-modal-overlay),html:has(.ql-modal-overlay),body:has(.ql-modal-overlay),html:has(.ipd-modal-backdrop),body:has(.ipd-modal-backdrop),html:has([role=dialog]),body:has([role=dialog]){overflow:hidden!important;overscroll-behavior:none!important;touch-action:none}html.modal-open .erp-layout,body.modal-open .erp-layout,html.modal-open .erp-main-area,body.modal-open .erp-main-area,html.modal-open .erp-page-content,body.modal-open .erp-page-content,body:has([class*=modal-overlay]) .erp-layout,body:has([class*=modal-overlay]) .erp-main-area,body:has([class*=modal-overlay]) .erp-page-content,body:has([class*=modal-backdrop]) .erp-layout,body:has([class*=modal-backdrop]) .erp-main-area,body:has([class*=modal-backdrop]) .erp-page-content,body:has([class*=-modal-overlay]) .erp-layout,body:has([class*=-modal-overlay]) .erp-main-area,body:has([class*=-modal-overlay]) .erp-page-content,body:has([class*=-modal-backdrop]) .erp-layout,body:has([class*=-modal-backdrop]) .erp-main-area,body:has([class*=-modal-backdrop]) .erp-page-content,body:has(.pkg-modal-overlay) .erp-layout,body:has(.pkg-modal-overlay) .erp-main-area,body:has(.pkg-modal-overlay) .erp-page-content,body:has(.vm-modal-backdrop) .erp-layout,body:has(.vm-modal-backdrop) .erp-main-area,body:has(.vm-modal-backdrop) .erp-page-content{overflow:hidden!important;max-height:100vh!important}[class*=modal-overlay],[class*=modal-backdrop],[class*=-modal-overlay],[class*=-modal-backdrop],.pkg-modal-overlay,.vm-modal-backdrop,.ha-bed-modal-overlay,.acc-modal-overlay,.ql-modal-overlay,.ipd-modal-backdrop,.ha-modal-backdrop,.modal-overlay,.modal-backdrop,.modal-overlay-custom,.confirm-modal-overlay{backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;background:#0f172ab8!important;overscroll-behavior:contain!important;overscroll-behavior-y:contain!important;-webkit-overflow-scrolling:touch}.pkg-modal-body,.vm-modal-body,.ha-bed-modal-box,.ipd-modal-box,.acc-modal-body,.ql-modal-body,.ql-modal-content,.modal-body,.modal-content,.modal-body-custom,.modal-content-custom,.confirm-modal-card,.dialog-content,.erp-modal-content{overflow-y:auto!important;max-height:85vh!important;overscroll-behavior:contain!important;overscroll-behavior-y:contain!important;touch-action:pan-y!important;pointer-events:auto!important;-webkit-overflow-scrolling:touch}.confirm-modal-overlay{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:20px!important;z-index:999999!important;cursor:pointer;animation:confirmOverlayFadeIn .18s ease-out}@keyframes confirmOverlayFadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal-card{position:relative;background:#fff;border-radius:22px;border:1px solid rgba(226,232,240,.9);box-shadow:0 25px 60px -15px #0f172a73,0 0 0 1px #fffc;width:100%;max-width:440px;max-height:90vh;display:flex;flex-direction:column;padding:26px 24px 22px;cursor:default;animation:confirmCardPopIn .22s cubic-bezier(.16,1,.3,1);overflow:hidden;box-sizing:border-box}@keyframes confirmCardPopIn{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-modal-close-btn{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:50%;background:#f1f5f9;border:1px solid #e2e8f0;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;transition:all .15s ease}.confirm-modal-close-btn:hover{background:#e2e8f0;color:#0f172a;transform:rotate(90deg)}.confirm-modal-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:8px}.confirm-modal-icon-wrap{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.confirm-modal-icon-wrap.danger{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1.5px solid #fca5a5;color:#dc2626;box-shadow:0 0 0 4px #ef44441a}.confirm-modal-icon-wrap.prompt{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1.5px solid #93c5fd;color:#2563eb;box-shadow:0 0 0 4px #2563eb1a}.confirm-modal-icon-wrap.success{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1.5px solid #86efac;color:#16a34a;box-shadow:0 0 0 4px #16a34a1a}.confirm-modal-content{flex:1;min-width:0;padding-right:20px}.confirm-modal-title{margin:0 0 6px;font-size:17px;font-weight:800;color:#0f172a;letter-spacing:-.01em}.confirm-modal-message{margin:0;font-size:13.5px;color:#475569;line-height:1.55;max-height:40vh;overflow-y:auto;word-break:break-word}.confirm-modal-input{width:100%;padding:11px 14px;border-radius:12px;border:1.5px solid #cbd5e1;font-size:14px;color:#0f172a;outline:none;box-sizing:border-box;margin-top:12px;margin-bottom:4px;transition:border-color .15s,box-shadow .15s;background:#fff;font-family:inherit}.confirm-modal-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb24}.confirm-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:22px}.confirm-btn-cancel{padding:10px 18px;border-radius:12px;border:1.5px solid #cbd5e1;background:#fff;color:#334155;font-size:13.5px;font-weight:700;cursor:pointer;transition:all .15s ease;font-family:inherit}.confirm-btn-cancel:hover{background:#f1f5f9;border-color:#94a3b8}.confirm-btn-danger{padding:10px 22px;border-radius:12px;border:none;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:13.5px;font-weight:750;cursor:pointer;box-shadow:0 4px 14px #ef444459;transition:all .15s ease;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.confirm-btn-danger:hover{transform:translateY(-1px);box-shadow:0 6px 18px #ef444473;background:linear-gradient(135deg,#f87171,#dc2626)}.confirm-btn-danger:active{transform:scale(.98)}.confirm-btn-primary{padding:10px 22px;border-radius:12px;border:none;background:linear-gradient(135deg,#059669,#047857);color:#fff;font-size:13.5px;font-weight:750;cursor:pointer;box-shadow:0 4px 14px #05966959;transition:all .15s ease;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.confirm-btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 18px #05966973}.confirm-btn-primary:active{transform:scale(.98)}.global-search-container{position:relative;width:280px;max-width:380px;font-family:var(--font-primary);z-index:100}.global-search-input-wrapper{position:relative;display:flex;align-items:center;background:var(--surface-0);border:1px solid var(--gray-200);border-radius:var(--radius-pill);padding:8px 16px;box-shadow:inset 0 2px 4px #00000005,var(--shadow-sm);transition:all .3s cubic-bezier(.4,0,.2,1)}.global-search-input-wrapper:hover{border-color:var(--gray-300);box-shadow:inset 0 2px 4px #00000005,var(--shadow-md)}.global-search-input-wrapper:focus-within{background:var(--surface-0);border-color:var(--brand-500);box-shadow:0 0 0 4px #14b8a626,var(--shadow-md);transform:translateY(-1px)}.global-search-icon-left{display:flex;align-items:center;justify-content:center;margin-right:12px;color:var(--brand-500);flex-shrink:0}.global-search-icon-right{display:flex;align-items:center;justify-content:center;margin-left:12px;width:20px;flex-shrink:0}.global-search-input-wrapper .clear-icon{color:var(--gray-400);transition:var(--transition-fast);cursor:pointer;display:block}.global-search-input-wrapper .clear-icon:hover{color:var(--danger);transform:scale(1.1)}.global-search-input{flex:1;background:transparent!important;border:none!important;outline:none!important;font-size:.95rem;font-weight:500;color:var(--gray-800);width:100%;padding:0!important;box-shadow:none!important;line-height:1.5}.global-search-input::placeholder{color:var(--gray-400);font-weight:400}.global-search-dropdown{position:absolute;top:calc(100% + 12px);left:0;width:100%;max-height:400px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--surface-0);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:99999;animation:scaleIn .2s cubic-bezier(.16,1,.3,1) forwards;transform-origin:top center}.global-search-group{padding:12px 0}.global-search-group:not(:last-child){border-bottom:1px solid var(--gray-100)}.global-search-group-title{padding:4px 20px 8px;font-size:.75rem;font-weight:800;text-transform:uppercase;color:var(--brand-600);letter-spacing:.08em}.global-search-item{padding:10px 20px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:2px;position:relative}.global-search-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--brand-500);transform:scaleY(0);transition:transform .2s ease}.global-search-item:hover,.global-search-item.highlighted{background:var(--brand-50)}.global-search-item:hover:before,.global-search-item.highlighted:before{transform:scaleY(1)}.global-search-item-title{font-size:.95rem;font-weight:600;color:var(--gray-900)}.global-search-item-subtitle{font-size:.8rem;font-weight:500;color:var(--gray-500)}.global-search-mobile-btn{display:none}@media(max-width:768px){.global-search-container{width:auto!important;max-width:none!important;margin:0!important;order:unset!important;z-index:1000}.global-search-mobile-btn{display:flex!important;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid #e2e8f0;color:#475569;cursor:pointer;box-shadow:0 1px 4px #0000000a;transition:all .2s ease}.global-search-mobile-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a;transform:scale(1.05)}.global-search-input-wrapper{display:none!important}.global-search-container.mobile-active .global-search-input-wrapper.mobile-expanded-bar{display:flex!important;position:fixed!important;top:60px!important;left:12px!important;right:12px!important;height:48px!important;z-index:99999!important;background:#fff!important;padding:6px 14px!important;border-radius:14px!important;border:1.5px solid #3b82f6!important;box-shadow:0 12px 32px #0f172a38!important;animation:mobileSearchSlideDown .2s cubic-bezier(.16,1,.3,1) forwards}@keyframes mobileSearchSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mobile-search-back-btn{background:transparent;border:none;color:#64748b;padding:4px;margin-right:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%}.global-search-container.mobile-active .global-search-dropdown{position:fixed!important;top:114px!important;left:12px!important;right:12px!important;width:auto!important;max-height:calc(100vh - 130px)!important;border-radius:14px!important;border:1px solid #e2e8f0!important;box-shadow:0 16px 40px #0f172a40!important;z-index:99999!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: 238px;--sidebar-collapsed: 72px;--topbar-height: 64px;--bg-erp: #f8fafc;--surface-erp: #ffffff;--brand-erp: #1e847f;--brand-light: rgba(30, 132, 127, .1);--text-dark: #1e293b;--text-muted: #64748b;--border-erp: #e2e8f0;--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 #e2e8f0;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 16px;gap:10px;font-weight:800;font-size:1rem;color:var(--text-dark);border-bottom:1px solid #e2e8f0;box-sizing:border-box}.ca-brand-container{display:flex;align-items:center}.brand-dot{width:12px;height:12px;background:linear-gradient(135deg,#1e847f,#3b82f6);border-radius:4px;transform:rotate(45deg);flex-shrink:0}.sidebar-nav{padding:14px 8px;flex:1;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.sidebar-nav::-webkit-scrollbar{display:none;width:0;height:0}.sidebar-link{display:flex;align-items:center;gap:10px;padding:9.5px 12px;text-decoration:none;color:#1e293b;font-weight:600;font-size:.855rem;border-radius:12px;margin-bottom:4px;border-left:4px solid transparent;transition:all .25s cubic-bezier(.16,1,.3,1);text-align:left;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;will-change:transform,background-color,border-color;transform:translateZ(0)}.sidebar-link-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;letter-spacing:-.15px;pointer-events:none}.sidebar-link:hover{background-color:#f1f5f9;color:#0f172a;transform:translate(3px)}.sidebar-link.active{background:#e0f2fe!important;color:#0284c7!important;border-left:4px solid #0284c7!important;border-radius:12px!important;box-shadow:0 2px 8px #0284c71f;font-weight:700;transform:translate(2px)}.sidebar-link.active .sidebar-link-icon{color:#0284c7!important}.sidebar-link-icon{font-size:1.18rem;display:flex;align-items:center;flex-shrink:0;pointer-events:none;color:#64748b}.sidebar-link{color:#64748b}.collapsed .sidebar-link-text,.collapsed .sidebar-brand span,.collapsed .sidebar-help-box,.collapsed .sidebar-bottom-meta{display:none}.collapsed .sidebar-link{justify-content:center;padding:14px}.sidebar-help-box{margin:20px 8px 10px;padding:18px 14px;background:linear-gradient(180deg,#f0f9ff,#f8fafc);border:1px solid #e0f2fe;border-radius:16px;text-align:center;display:flex;flex-direction:column;align-items:center;box-shadow:0 2px 6px #00000005}.sidebar-help-icon-wrap{width:42px;height:42px;border-radius:50%;background:#e0f2fe;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.sidebar-help-heading{font-size:.95rem;font-weight:750;color:#0f172a;margin:0 0 4px}.sidebar-help-text{font-size:.76rem;color:#64748b;margin:0 0 12px;line-height:1.35}.sidebar-help-contact-btn{display:flex;align-items:center;justify-content:center;width:100%;background:#2563eb;color:#fff;border:none;border-radius:10px;padding:9px 12px;font-size:.82rem;font-weight:650;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #2563eb40}.sidebar-help-contact-btn:hover{background:#1d4ed8}.sidebar-bottom-meta{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 4px;font-size:.74rem;color:#94a3b8;border-top:1px solid #f1f5f9;margin-top:8px}.sidebar-meta-version{font-weight:500;color:#94a3b8}.sidebar-meta-status{display:flex;align-items:center;gap:6px;font-weight:600;color:#475569}.sidebar-meta-dot{width:7px;height:7px;border-radius:50%;background-color:#10b981}.erp-topbar{height:var(--topbar-height);background-color:#fff;border-bottom:1px solid var(--border-erp);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:999}.topbar-left-section{display:flex;align-items:center;gap:16px;flex:1}.topbar-search-box-wrap{flex:1;max-width:480px}.topbar-right-section{display:flex;align-items:center;gap:14px;position:relative}.topbar-notif-bell-btn{width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;color:#1e293b;cursor:pointer;position:relative;transition:all .2s}.topbar-notif-bell-btn:hover{background:#f8fafc;border-color:#cbd5e1}.topbar-notif-red-dot{position:absolute;top:8px;right:9px;width:7px;height:7px;border-radius:50%;background:#ef4444;border:1.5px solid #ffffff}.topbar-user-profile-badge{display:flex;align-items:center;gap:10px;cursor:pointer;padding:4px 8px;border-radius:12px;transition:background .15s}.topbar-user-profile-badge:hover{background:#f8fafc}.topbar-user-avatar-wrap{position:relative}.topbar-user-avatar-circle{width:38px;height:38px;border-radius:50%;background:#2563eb;color:#fff;font-weight:700;font-size:.9rem;display:flex;align-items:center;justify-content:center}.topbar-user-avatar-circle img{width:100%;height:100%;border-radius:50%;object-fit:cover}.topbar-user-online-dot{position:absolute;bottom:0;right:0;width:9px;height:9px;border-radius:50%;background:#10b981;border:2px solid #ffffff}.topbar-user-text-info{display:flex;flex-direction:column}.topbar-user-name{font-size:.88rem;font-weight:700;color:#0f172a;line-height:1.2}.topbar-user-role-label{font-size:.74rem;color:#64748b;font-weight:500}.topbar-user-chevron{color:#64748b}.topbar-profile-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:240px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 10px 25px -5px #0000001a;padding:8px;z-index:100}.topbar-dropdown-header{padding:12px;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.topbar-dropdown-header strong{color:#0f172a;font-size:.92rem}.topbar-dropdown-header span{color:#64748b;font-size:.78rem}.topbar-dropdown-role-pill{background:#dbeafe;color:#1e40af;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:6px;width:fit-content;margin-top:6px}.topbar-dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:.85rem;font-weight:600;color:#334155;border-radius:8px;cursor:pointer;transition:background .15s}.topbar-dropdown-item:hover{background:#f1f5f9}.topbar-dropdown-logout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:#fef2f2;color:#dc2626;border:none;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;margin-top:6px;transition:background .15s}.topbar-dropdown-logout-btn:hover{background:#fee2e2}.erp-main-area{flex:1;transition:padding-left .3s;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.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:16px 20px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.erp-page-content.erp-fullbleed-content,.erp-page-content:has(.dpd-page-wrapper),.erp-page-content:has(.rtm-page),.erp-page-content:has(.centraladmin-page),.erp-page-content:has(.ha-billing-page),.erp-page-content:has(.rpm-main-wrapper),.erp-page-content:has(.consent-hub-wrapper),.erp-page-content:has(.srd-page),.erp-page-content:has(.ql-admin-body),.erp-page-content:has(.doc-main-dashboard-container),.erp-page-content:has(.doc-exact-patients-page),.erp-page-content:has(.upp-container),.erp-page-content:has(.acc-dashboard),.erp-page-content:has(.acc-financial-records),.erp-page-content:has(.acc-refunds-page),.erp-page-content:has(.acc-history-page){padding:0!important;background:transparent!important}.erp-page-content:has(.cca-exact-page-container),.erp-page-content:has(.cca-page-container),.erp-page-content:has(.staff-management-page),.erp-page-content:has(.superadmin-page){padding:8px 12px!important}.erp-page-content:has(.role-dashboard),.erp-page-content:has(.hospitaladmin-page),.erp-page-content:has(.reception-dashboard),.erp-page-content:has(.rec-welcome-wrap){padding:0 0 24px!important}.erp-page-content:has(.reg-page-root){padding:0!important;height:calc(100vh - var(--topbar-height, 64px));max-height:calc(100vh - var(--topbar-height, 64px));overflow:hidden!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.sidebar-overlay{display:none;position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;transition:opacity .3s ease}@media(min-width:1025px){.sidebar-toggle{display:none!important}}@media(max-width:1024px){.profile-text-info{display:none!important}.erp-topbar{padding:0 16px!important}.erp-page-content{padding:16px!important}.erp-page-content.erp-fullbleed-content,.erp-page-content:has(.rtm-page),.erp-page-content:has(.centraladmin-page),.erp-page-content:has(.rpm-main-wrapper),.erp-page-content:has(.consent-hub-wrapper),.erp-page-content:has(.srd-page),.erp-page-content:has(.ql-admin-body),.erp-page-content:has(.doc-main-dashboard-container),.erp-page-content:has(.doc-exact-patients-page),.erp-page-content:has(.ha-billing-page),.erp-page-content:has(.billing-profile-page),.erp-page-content:has(.upp-container),.erp-page-content:has(.acc-dashboard),.erp-page-content:has(.acc-financial-records),.erp-page-content:has(.acc-refunds-page),.erp-page-content:has(.acc-history-page){padding:0!important;background:transparent!important}.curr-page-name,.path-slash{display:none!important}.erp-sidebar{width:var(--sidebar-width)!important;left:calc(-1 * var(--sidebar-width))!important;box-shadow:4px 0 20px #00000026}.erp-sidebar.open{left:0!important}.erp-sidebar.collapsed{left:calc(-1 * var(--sidebar-width))!important}.erp-main-area.shifted,.erp-main-area.full{padding-left:0!important}.sidebar-overlay.show{display:block}}@media(max-width:768px){.erp-topbar{padding:0 10px!important}.erp-page-content{padding:10px 8px!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}.erp-page-content.erp-fullbleed-content,.erp-page-content:has(.rtm-page),.erp-page-content:has(.centraladmin-page),.erp-page-content:has(.rpm-main-wrapper),.erp-page-content:has(.consent-hub-wrapper),.erp-page-content:has(.srd-page),.erp-page-content:has(.ql-admin-body),.erp-page-content:has(.doc-main-dashboard-container),.erp-page-content:has(.doc-exact-patients-page),.erp-page-content:has(.ha-billing-page),.erp-page-content:has(.billing-profile-page),.erp-page-content:has(.upp-container),.erp-page-content:has(.acc-dashboard),.erp-page-content:has(.acc-financial-records),.erp-page-content:has(.acc-refunds-page),.erp-page-content:has(.acc-history-page){padding:0!important;background:transparent!important}.ca-profile-dropdown-card{width:calc(100vw - 24px)!important;max-width:310px!important;right:-4px!important}}.ca-erp-sidebar{background-color:#fff;border-right:1px solid #e2e8f0}.ca-sidebar-brand{border-bottom:1px solid #e2e8f0;padding:0 20px;height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;box-sizing:border-box}.ca-brand-container{display:flex;align-items:center;-webkit-user-select:none;user-select:none}.ca-brand-container img{height:38px!important;max-width:180px!important;width:auto;object-fit:contain;display:block}.ca-sidebar-link{font-weight:650;color:#1e293b;border-radius:12px;padding:9.5px 12px;font-size:.855rem;letter-spacing:-.15px;border-left:4px solid transparent;transition:all .25s cubic-bezier(.16,1,.3,1);margin-bottom:5px;display:flex;align-items:center;gap:10px;white-space:nowrap;will-change:transform,background-color,border-color;transform:translateZ(0)}.ca-sidebar-link .sidebar-link-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.ca-sidebar-link .sidebar-link-icon{font-size:1.15rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}.ca-sidebar-link:hover{background-color:#f1f5f9;color:#0f172a;transform:translate(3px)}.ca-sidebar-link.active,.ca-sidebar-link.theme-green.active{background:linear-gradient(135deg,#ecfdf5,#f0fdf4)!important;color:#059669!important;border-left:4px solid #059669!important;border-radius:12px!important;box-shadow:0 4px 14px #05966924;transform:translate(2px)}.ca-sidebar-link.active .sidebar-link-icon,.ca-sidebar-link.theme-green.active .sidebar-link-icon{color:#059669!important}.ca-sidebar-link.theme-blue.active{background-color:#f0f9ff!important;color:#0284c7!important;border-left:4px solid #0284c7!important;border-radius:12px!important;box-shadow:0 4px 14px #0284c724;transform:translate(2px)}.ca-sidebar-link.theme-blue.active .sidebar-link-icon{color:#0284c7}.ca-sidebar-link.theme-teal.active{background-color:#f0fdfa!important;color:#0d9488!important;border-left:4px solid #0d9488!important;border-radius:12px!important;box-shadow:0 4px 14px #0d948824;transform:translate(2px)}.ca-sidebar-link.theme-teal.active .sidebar-link-icon{color:#0d9488}.ca-sidebar-link.theme-purple.active{background-color:#faf5ff!important;color:#8b5cf6!important;border-left:4px solid #8b5cf6!important;border-radius:12px!important;box-shadow:0 4px 14px #8b5cf624;transform:translate(2px)}.ca-sidebar-link.theme-purple.active .sidebar-link-icon{color:#8b5cf6}.ca-sidebar-link.theme-pink.active{background-color:#fff1f2!important;color:#e11d48!important;border-left:4px solid #e11d48!important;border-radius:12px!important;box-shadow:0 4px 14px #e11d4824;transform:translate(2px)}.ca-sidebar-link.theme-pink.active .sidebar-link-icon{color:#e11d48}.ca-sidebar-help-card{margin:32px 6px 16px;padding:20px 14px 16px;background:linear-gradient(180deg,#f0fdf4,#fff);border:1px solid #dcfce7;border-radius:20px;text-align:center;box-shadow:0 4px 16px #0596690f;position:relative}.ca-sidebar-help-avatar-wrap{display:flex;justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto 10px;border-radius:50%;background:#ecfdf5;border:1.5px solid #a7f3d0;box-shadow:0 2px 8px #0596691f}.ca-sidebar-help-title{margin:0 0 4px;font-size:.95rem;font-weight:800;color:#064e3b}.ca-sidebar-help-desc{margin:0 0 14px;font-size:.78rem;color:#64748b;line-height:1.45;padding:0 4px}.ca-sidebar-help-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 14px;border-radius:10px;background:#fff;border:1.5px solid #a7f3d0;color:#059669;font-size:.82rem;font-weight:700;cursor:pointer;box-shadow:0 2px 4px #0596690d;transition:all .2s}.ca-sidebar-help-btn:hover{background:#ecfdf5;border-color:#059669;transform:translateY(-1px)}.ca-sidebar-footer{padding:12px 16px;border-top:1px solid #f1f5f9;display:flex;align-items:center}.ca-sidebar-collapse-btn{width:32px;height:32px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:all .15s}.ca-sidebar-collapse-btn:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.ca-erp-topbar{background-color:#fff;border-bottom:1px solid #e2e8f0;height:var(--topbar-height);position:sticky;top:0;z-index:999;box-sizing:border-box}.ca-topbar-breadcrumb{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600}.ca-bc-user-type{color:#334155;font-weight:600}.ca-bc-divider{color:#94a3b8;font-weight:400}.ca-bc-tag{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;padding:3px 10px;border-radius:20px;font-size:.72rem;font-weight:800;letter-spacing:.04em}.ca-topbar-actions{display:flex;align-items:center;gap:12px}.ca-action-circle-btn{width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:all .15s}.ca-action-circle-btn:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px)}.ca-notif-btn{position:relative}.ca-notif-badge{position:absolute;top:-2px;right:-2px;width:17px;height:17px;background-color:#ef4444;color:#fff;border-radius:50%;font-size:.65rem;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid #ffffff}.ca-profile-dropdown-container{position:relative;display:flex;align-items:center}.ca-user-profile-circle-btn{display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;cursor:pointer;position:relative;outline:none;border-radius:50%}.ca-user-profile-circle-btn:hover .ca-avatar-circle{transform:scale(1.05);box-shadow:0 0 0 3px #6366f140,0 4px 14px #6366f159}.ca-user-profile-circle-btn:active .ca-avatar-circle{transform:scale(.96)}.ca-user-profile-circle-btn.active .ca-avatar-circle{box-shadow:0 0 0 3px #6366f159,0 6px 18px #6366f173;transform:scale(1.04)}.ca-avatar-wrapper{position:relative}.ca-avatar-circle{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:800;overflow:hidden;box-shadow:0 2px 8px #6366f140;border:2px solid #ffffff;transition:all .15s ease}.ca-avatar-circle img{width:100%;height:100%;object-fit:cover}.ca-avatar-online{position:absolute;bottom:0;right:0;width:9px;height:9px;background-color:#22c55e;border:2px solid #ffffff;border-radius:50%;z-index:2}.ca-profile-dropdown-card{position:absolute;top:calc(100% + 10px);right:0;width:315px;max-width:calc(100vw - 20px);background:#fff;border-radius:18px;border:1px solid #cbd5e1;box-shadow:0 16px 36px -6px #0f172a26,0 4px 12px #0000000a;padding:14px;z-index:10001;cursor:default;transform-origin:top right;animation:caSnappyPopIn .16s cubic-bezier(.16,1,.3,1) forwards;text-align:left;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}@keyframes caSnappyPopIn{0%{opacity:0;transform:scale(.9) translateY(-6px)}to{opacity:1;transform:scale(1) translateY(0)}}.ca-dropdown-pointer{position:absolute;top:-6px;right:12px;width:11px;height:11px;background:#fff;border-left:1px solid #cbd5e1;border-top:1px solid #cbd5e1;transform:rotate(45deg);border-radius:2px 0 0}.ca-drop-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;position:relative;overflow:hidden}.ca-drop-cyber-wave{position:absolute;right:-5px;bottom:-3px;width:110px;height:32px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 25'%3E%3Cpath d='M0,18 C25,24 65,5 100,18 L100,25 L0,25 Z' fill='rgba(99,102,241,0.06)'/%3E%3C/svg%3E") no-repeat bottom;background-size:cover;pointer-events:none;z-index:1}.ca-drop-avatar-wrap{position:relative;width:42px;height:42px;flex-shrink:0;z-index:2}.ca-drop-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#0284c7,#2563eb,#7c3aed);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:900;box-shadow:0 3px 10px #2563eb59;overflow:hidden;position:relative;z-index:2;border:2px solid #ffffff;letter-spacing:.02em}.ca-drop-avatar img{width:100%;height:100%;object-fit:cover}.ca-avatar-orbital-ring{position:absolute;inset:-5px;border-radius:50%;border:1px dashed rgba(124,58,237,.45);pointer-events:none;animation:caOrbitSpin 14s linear infinite;z-index:1}@keyframes caOrbitSpin{to{transform:rotate(360deg)}}.ca-orbital-node{position:absolute;width:3.5px;height:3.5px;border-radius:50%}.ca-orbital-node.node-1{top:0;left:9px;background:#6366f1;box-shadow:0 0 5px #6366f1}.ca-orbital-node.node-2{bottom:2px;right:6px;background:#0284c7;box-shadow:0 0 5px #0284c7}.ca-avatar-shield-badge{position:absolute;bottom:-5px;left:9px;width:17px;height:17px;border-radius:5px;background:#fff;border:1.5px solid #c084fc;box-shadow:0 1px 5px #7c3aed33;display:flex;align-items:center;justify-content:center;z-index:4}.ca-drop-user-info{flex:1;min-width:0;z-index:2}.ca-drop-name{margin:0;font-size:.98rem;font-weight:850;color:#0f172a;line-height:1.25;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ca-drop-email{margin:2px 0 6px;font-size:.78rem;color:#334155;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:175px}.ca-drop-badge-tag{display:inline-flex;align-items:center;gap:4px;background:#ede9fe;color:#3730a3;padding:3px 9px;border-radius:7px;font-size:.68rem;font-weight:850;letter-spacing:.04em;border:1px solid #c7d2fe}.ca-crown-icon{font-size:.72rem}.ca-drop-shield-graphic{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:2}.ca-shield-hex-box{width:36px;height:36px;border-radius:10px;background:#fff;border:1.5px solid #c4b5fd;box-shadow:0 3px 10px #6366f129;display:flex;align-items:center;justify-content:center;position:relative;z-index:2}.ca-shield-hex-box svg{width:20px;height:20px}.ca-shield-orbit-ring{position:absolute;inset:-4px;border-radius:14px;border:1px dashed rgba(99,102,241,.3);pointer-events:none;z-index:1}.ca-shield-particle{position:absolute;top:0;left:2px;width:3.5px;height:3.5px;border-radius:50%;background:#6366f1}.ca-drop-login-card{display:flex;align-items:center;gap:10px;padding:9px 12px;background:#faf5ff;border:1px solid #ede9fe;border-radius:12px;margin-bottom:10px;transition:background-color .15s ease,border-color .15s ease}.ca-drop-login-card:hover{background:#f5f3ff;border-color:#ddd6fe}.ca-login-icon-box{width:26px;height:26px;border-radius:8px;background:#ede9fe;color:#6d28d9;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ca-login-texts{display:flex;flex-direction:column}.ca-login-label{font-size:.65rem;color:#475569;font-weight:750;text-transform:uppercase;letter-spacing:.04em}.ca-login-value{font-size:.82rem;font-weight:800;color:#5b21b6}.ca-drop-logout-btn{width:100%;padding:10px 14px;background:#fff5f5;border:1.5px solid #fecaca;border-radius:12px;color:#dc2626;font-weight:800;font-size:.86rem;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;font-family:inherit;-webkit-user-select:none;user-select:none;outline:none}.ca-drop-logout-btn:hover{background:#fee2e2;border-color:#f87171;color:#b91c1c;box-shadow:0 2px 8px #ef444426}.ca-drop-logout-btn:active{background:#fecaca;transform:scale(.98)}.ca-drop-logout-btn svg{flex-shrink:0;pointer-events:none}@media(max-width:768px){.erp-topbar{padding:0 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}.topbar-left{display:flex!important;align-items:center!important;gap:8px!important;flex-shrink:0!important}.topbar-right{margin-left:auto!important;display:flex!important;align-items:center!important;gap:8px!important;flex-shrink:0!important}.ca-user-profile-chip{display:none!important}.ca-topbar-actions{display:flex!important;align-items:center!important;gap:8px!important}.ca-bc-user-type,.ca-bc-divider{display:none!important}.ca-topbar-breadcrumb{gap:0}.ca-bc-tag{white-space:nowrap;font-size:.68rem;padding:2px 8px}}@media(max-width:480px){.erp-topbar{padding:0 8px!important;gap:6px!important}.topbar-left,.topbar-right,.ca-topbar-actions{gap:6px!important}.ca-bc-tag{font-size:.62rem;padding:2px 6px}.ca-action-circle-btn,.global-search-mobile-btn{width:32px!important;height:32px!important}.ca-profile-dropdown-card{right:-4px;width:min(305px,calc(100vw - 16px));padding:12px}.ca-dropdown-pointer{right:16px}}.ha-sidebar-ai-card{margin:16px 8px 12px;padding:12px 10px 14px;background:linear-gradient(145deg,#f8fafc,#f0fdfa 60%,#e0f2fe);border:1.5px solid #cffafe;border-radius:18px;box-shadow:0 4px 16px #06b6d414;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:hidden}.ha-sidebar-ai-bot-wrap{width:100%;height:98px;display:flex;align-items:center;justify-content:center;margin:0}.ha-sidebar-ai-bot-svg{width:110px;height:96px;filter:drop-shadow(0 4px 10px rgba(14,165,233,.18));animation:ha-bot-float 3.5s ease-in-out infinite}@keyframes ha-bot-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.ha-sidebar-ai-footer{width:100%;margin-top:4px}.ha-sidebar-ai-title{font-size:.88rem;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.2px}@media print{.erp-topbar,.ca-erp-topbar,.erp-sidebar,.sidebar-toggle,.hamburger,.sidebar-overlay,.sidebar-brand,.sidebar-nav,.ha-sidebar-ai-card{display:none!important;visibility:hidden!important;height:0!important;width:0!important;padding:0!important;margin:0!important}.erp-layout{display:block!important;background:#fff!important}.erp-main-area,.erp-page-content,.erp-fullbleed-content{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important}}.med365-route-loader-container{position:relative;width:100%;min-height:calc(100vh - 120px);padding:24px 32px;box-sizing:border-box;animation:med365FadeInFast .15s ease-out forwards}@keyframes med365FadeInFast{0%{opacity:0}to{opacity:1}}.med365-top-shimmer-bar{position:fixed;top:0;left:0;right:0;height:3.5px;background:linear-gradient(90deg,#1e60a4,#38b29b,#1e60a4);background-size:200% 100%;animation:med365ProgressShimmer 1.2s infinite linear;z-index:99999}@keyframes med365ProgressShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.med365-route-skeleton-body{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.med365-skel-line{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:med365SkelShimmer 1.4s infinite ease-in-out;border-radius:8px;height:16px}@keyframes med365SkelShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.med365-skel-header{display:flex;flex-direction:column;gap:8px;padding-bottom:8px}.med365-skel-title{width:240px;height:28px;border-radius:8px}.med365-skel-subtitle{width:380px;height:14px;border-radius:6px}.med365-skel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.med365-skel-card{background:#fff;border:1px solid #f1f5f9;border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 10px #0f172a05}.med365-skel-table-box{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:16px;box-shadow:0 4px 16px #0f172a08}.med365-skel-table-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:8px;background:#fafafa;gap:16px}.med365-skel-table-row.skel-header-row{background:#f8fafc;border-bottom:1px solid #e2e8f0}.skel-w10{width:10%}.skel-w20{width:20%}.skel-w30{width:30%}.skel-w40{width:40%}.skel-w50{width:50%}.skel-w60{width:60%}.skel-w70{width:70%}.skel-h28{height:28px}.invalid-portal-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#030712;position:relative;overflow:hidden;padding:20px;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}.invalid-portal-bg-mesh{position:absolute;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(99,102,241,.08) 0%,transparent 60%),radial-gradient(ellipse at 80% 50%,rgba(239,68,68,.06) 0%,transparent 60%),radial-gradient(ellipse at 50% 0%,rgba(14,165,233,.05) 0%,transparent 50%);pointer-events:none}.invalid-portal-bg-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;animation:invalidOrbFloat 12s ease-in-out infinite}.invalid-portal-bg-orb-1{width:400px;height:400px;top:-100px;right:-100px;background:#ef444412;animation-delay:0s}.invalid-portal-bg-orb-2{width:350px;height:350px;bottom:-80px;left:-80px;background:#6366f10f;animation-delay:-6s}@keyframes invalidOrbFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-30px) scale(1.05)}}.invalid-portal-card{position:relative;z-index:2;background:#0f172ab3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(99,102,241,.15);border-radius:24px;padding:48px 40px 36px;max-width:480px;width:100%;text-align:center;box-shadow:0 0 0 1px #ffffff08,0 24px 64px #0006,0 0 80px #ef44440a;animation:invalidCardAppear .5s ease-out}@keyframes invalidCardAppear{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.invalid-portal-logo-wrap{margin-bottom:28px}.invalid-portal-logo{height:40px;max-width:180px;object-fit:contain;opacity:.7;filter:grayscale(.3)}.invalid-portal-icon{width:88px;height:88px;margin:0 auto 24px;display:flex;align-items:center;justify-content:center;border-radius:22px;background:linear-gradient(135deg,#ef44441f,#ef44440a);border:1px solid rgba(239,68,68,.2);color:#f87171;animation:invalidIconPulse 3s ease-in-out infinite}.invalid-portal-icon.network-error{background:linear-gradient(135deg,#eab3081f,#eab3080a);border-color:#eab30833;color:#fbbf24}@keyframes invalidIconPulse{0%,to{box-shadow:0 0 #ef44441a}50%{box-shadow:0 0 20px 4px #ef444414}}.invalid-portal-title{font-size:24px;font-weight:800;color:#f1f5f9;margin:0 0 14px;letter-spacing:-.3px}.invalid-portal-desc{font-size:14.5px;color:#94a3b8;line-height:1.6;margin:0 0 24px}.invalid-portal-hostname{color:#f87171;font-family:JetBrains Mono,Fira Code,monospace;font-size:13px;background:#ef44441a;padding:2px 8px;border-radius:6px;border:1px solid rgba(239,68,68,.15);font-weight:600;word-break:break-all}.invalid-portal-guidance{margin-bottom:28px}.invalid-portal-hint{font-size:13px;color:#64748b;margin:0 0 18px}.invalid-portal-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;font-size:14px;font-weight:700;border:none;border-radius:12px;cursor:pointer;text-decoration:none;transition:all .2s ease;box-shadow:0 4px 16px #6366f14d}.invalid-portal-btn:hover{transform:translateY(-1px);box-shadow:0 6px 24px #6366f166}.invalid-portal-btn-retry{background:linear-gradient(135deg,#eab308,#ca8a04);box-shadow:0 4px 16px #eab3084d}.invalid-portal-btn-retry:hover{box-shadow:0 6px 24px #eab30866}.invalid-portal-footer{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:#475569;padding-top:20px;border-top:1px solid rgba(99,102,241,.08)}.invalid-portal-sep{opacity:.4}@media(max-width:520px){.invalid-portal-card{padding:36px 24px 28px;border-radius:20px}.invalid-portal-title{font-size:20px}.invalid-portal-icon{width:72px;height:72px}.invalid-portal-icon svg{width:44px;height:44px}}
