@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";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Outfit: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}: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)}}.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%}.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-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}.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)}}.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}}:root{--primary-blue: #0A2647;--primary-teal: #14C38E;--accent-aqua: #00FFAB;--bg-light: #F8F9FD;--white: #FFFFFF;--text-dark: #1E293B;--text-gray: #64748B;--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, .05);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-glow: 0 0 30px rgba(20, 195, 142, .3);--radius-lg: 16px;--radius-xl: 24px}.services-page{width:100vw;max-width:100vw;min-width:100vw;min-height:100vh;background:linear-gradient(180deg,var(--white) 0%,var(--bg-light) 50%,var(--white) 100%);padding:80px 0 100px;overflow-x:hidden;box-sizing:border-box;margin:0;position:relative;display:block;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}.services-page .content-wrapper{max-width:1200px;margin:0 auto;padding:0 24px;width:100%;box-sizing:border-box;position:relative}.services-header{text-align:center;margin-bottom:80px;padding-top:40px;width:100%;box-sizing:border-box}.services-header h1{font-size:3rem;line-height:1.2;margin-bottom:20px;color:var(--text-dark);font-weight:700}.services-grid-section{margin-bottom:80px;width:100%;box-sizing:border-box}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;width:100%;box-sizing:border-box}.service-card{background:var(--white);border-radius:var(--radius-lg);padding:40px 32px;box-shadow:var(--shadow-sm);border:1px solid rgba(226,232,240,.8);position:relative;overflow:hidden;cursor:pointer;transition:all .4s cubic-bezier(.25,.46,.45,.94);display:flex;flex-direction:column;min-height:320px}.service-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--primary-teal),var(--accent-aqua));transform:scaleY(0);transition:transform .4s cubic-bezier(.25,.46,.45,.94);transform-origin:bottom}.service-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-lg),var(--shadow-glow);border-color:var(--primary-teal)}.service-card:hover:before{transform:scaleY(1)}.service-card:hover .icon-glow{opacity:1;transform:scale(1.2)}.service-card:hover .service-icon{transform:scale(1.1) rotate(5deg)}.service-card:hover .arrow{transform:translate(5px)}.card-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#14c38e08,#00ffab08);opacity:0;transition:opacity .4s ease;pointer-events:none}.service-card:hover .card-overlay{opacity:1}.service-icon-wrapper{position:relative;margin-bottom:24px;display:flex;justify-content:center;align-items:center}.service-icon{width:80px;height:80px;background:var(--bg-light);border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;position:relative;z-index:2;transition:all .4s cubic-bezier(.25,.46,.45,.94);border:2px solid transparent}.service-card:hover .service-icon{background:var(--icon-color, var(--primary-teal));border-color:var(--icon-color, var(--primary-teal));box-shadow:0 8px 20px #14c38e4d}.icon-glow{position:absolute;width:100px;height:100px;background:radial-gradient(circle,var(--primary-teal) 0%,transparent 70%);opacity:0;border-radius:50%;transition:all .4s ease;z-index:1}.service-content{flex:1;margin-bottom:20px}.service-content h3{font-size:1.4rem;color:var(--primary-blue);margin-bottom:12px;font-weight:700;line-height:1.3;transition:color .3s ease}.service-card:hover .service-content h3{color:var(--primary-teal)}.service-content p{color:var(--text-gray);font-size:.95rem;line-height:1.6;margin:0}.service-footer{margin-top:auto;padding-top:20px;border-top:1px solid rgba(226,232,240,.5)}.learn-more{color:var(--primary-teal);font-weight:600;font-size:.95rem;display:inline-flex;align-items:center;gap:8px;transition:all .3s ease;text-decoration:none}.arrow{display:inline-block;transition:transform .3s ease;font-size:1.2rem}.service-card:hover .learn-more{color:var(--primary-blue)}.services-cta{margin-top:100px;width:100%;box-sizing:border-box}.cta-card{background:linear-gradient(135deg,var(--primary-blue),#0d3b66);border-radius:var(--radius-xl);padding:60px 40px;text-align:center;color:var(--white);box-shadow:var(--shadow-lg);position:relative;overflow:hidden;width:100%;box-sizing:border-box}.btn{padding:14px 32px;font-size:1rem;font-weight:600;border-radius:50px;border:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;position:relative;z-index:1}.btn-primary{background:var(--primary-teal);color:var(--white)}.btn-primary:hover{background:var(--accent-aqua);box-shadow:0 8px 25px #14c38e66}@media(min-width:1024px)and (max-width:1440px){.services-page{width:100vw;max-width:100vw;min-width:100vw}.services-page .content-wrapper{max-width:100%;padding:0 5%;width:100%}.services-grid{grid-template-columns:repeat(3,1fr);gap:25px;width:100%}.services-header h1{font-size:2.5rem}}@media(max-width:1023px){.services-page{width:100vw;max-width:100vw;min-width:100vw;padding:60px 0 80px}.services-page .content-wrapper{width:100%;max-width:100%;padding:0 4%}.services-header{margin-bottom:60px;padding-top:20px}.services-header h1{font-size:2.2rem}.header-subtext{font-size:1rem}.services-grid{grid-template-columns:repeat(2,1fr);gap:24px;width:100%}.service-card{min-height:300px;padding:32px 24px}.cta-card{padding:50px 30px}.cta-card h2{font-size:1.8rem}}@media(max-width:768px){.services-page{width:100vw;max-width:100vw;min-width:100vw;padding:40px 0 60px}.services-page .content-wrapper{width:100%;max-width:100%;padding:0 20px;box-sizing:border-box}.services-header{margin-bottom:40px}.services-header h1{font-size:1.8rem}.header-subtext{font-size:.95rem}.services-grid{grid-template-columns:1fr;gap:20px;width:100%}.service-card{min-height:auto;padding:28px 20px;width:100%}.service-icon{width:70px;height:70px;font-size:2rem}.service-content h3{font-size:1.2rem}.cta-card{padding:40px 24px;width:100%;box-sizing:border-box}.cta-card h2{font-size:1.5rem}.cta-card p{font-size:.95rem}}@media(min-width:1441px){.services-page{width:100vw;max-width:100vw;min-width:100vw}.services-page .content-wrapper{max-width:1400px;width:100%}.services-grid{gap:40px;width:100%}}.booking-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.booking-modal-content{background:var(--white);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);position:relative;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.booking-modal-header{display:flex;justify-content:space-between;align-items:center;padding:30px 30px 20px;border-bottom:1px solid rgba(226,232,240,.8)}.booking-modal-header h2{font-size:1.8rem;color:var(--primary-blue);margin:0;font-weight:700}.close-button{background:none;border:none;font-size:2rem;color:var(--text-gray);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.close-button:hover{background:var(--bg-light);color:var(--primary-blue)}.form-group label{display:block;font-size:.95rem;font-weight:600;color:var(--text-dark);margin-bottom:8px}.form-select,.form-input{width:100%;padding:12px 16px;border:2px solid rgba(226,232,240,.8);border-radius:8px;font-size:1rem;color:var(--text-dark);background:var(--white);transition:all .2s ease;box-sizing:border-box}.form-select:disabled{background:var(--bg-light);cursor:not-allowed;opacity:.6}.form-hint{display:block;margin-top:6px;font-size:.85rem;color:var(--text-gray)}.form-hint.error-text{color:#ef4444}.booking-error-message{background:#fee2e2;color:#991b1b;padding:12px 20px;border-radius:8px;margin:20px 30px 0;font-size:.95rem;border-left:4px solid #ef4444}.booking-success-message{background:#d1fae5;color:#065f46;padding:12px 20px;border-radius:8px;margin:20px 30px 0;font-size:.95rem;border-left:4px solid var(--primary-teal)}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid rgba(226,232,240,.8)}.btn-secondary{background:var(--bg-light);color:var(--text-dark);padding:12px 24px;font-size:1rem;font-weight:600;border-radius:8px;border:2px solid rgba(226,232,240,.8);cursor:pointer;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:#e2e8f0;border-color:#cbd5e1}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.booking-form .btn-primary{padding:12px 32px;font-size:1rem;border-radius:8px}.booking-form .btn-primary:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.booking-modal-overlay{padding:10px}.booking-modal-content{max-height:95vh}.booking-modal-header{padding:20px 20px 15px}.booking-modal-header h2{font-size:1.5rem}.booking-form{padding:20px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.doctors-page{width:100vw!important;max-width:100vw!important;min-width:100vw!important;min-height:100vh;background:linear-gradient(180deg,var(--white) 0%,var(--bg-light) 50%,var(--white) 100%);padding:80px 0 100px;overflow-x:hidden;box-sizing:border-box;margin:0!important;padding-left:0!important;padding-right:0!important;position:relative;display:block!important;left:50%!important;right:50%!important;margin-left:-50vw!important;margin-right:-50vw!important;transform:translate(0);flex:none!important;align-self:stretch!important}#root,#root>div,body>div,body>div>div{width:100%!important;max-width:100vw!important;overflow-x:hidden;box-sizing:border-box}#root>div,body>div>div{display:block!important;place-items:unset!important;min-width:100vw}.doctors-page .content-wrapper{max-width:1200px;margin:0 auto;padding:0 24px;width:100%;box-sizing:border-box;position:relative;transform:translate(0)}.loading-message,.error-message{text-align:center;padding:60px 20px;font-size:1.1rem;color:var(--text-gray, #64748B)}.error-message{color:var(--error-red, #EF4444);background:#ef44441a;border-radius:12px;margin:40px auto;max-width:600px;padding:24px;border-left:4px solid var(--error-red, #EF4444)}.doctors-header{margin-bottom:60px;padding-top:20px;width:100%;box-sizing:border-box}.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--text-gray);text-decoration:none;font-size:.95rem;font-weight:600;margin-bottom:30px;transition:all .3s ease}.back-link:hover{color:var(--primary-teal);transform:translate(-5px)}.back-arrow{font-size:1.2rem;transition:transform .3s ease}.back-link:hover .back-arrow{transform:translate(-3px)}.header-content{text-align:center;width:100%;box-sizing:border-box}.doctors-header h1{font-size:3rem;line-height:1.2;margin-bottom:20px;color:var(--text-dark);font-weight:700}.doctors-grid-section{margin-bottom:80px;width:100%;box-sizing:border-box}.doctors-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;width:100%;box-sizing:border-box}.doctor-card{background:var(--white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid rgba(226,232,240,.8);position:relative;transition:all .4s cubic-bezier(.25,.46,.45,.94);cursor:pointer}.doctor-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-lg),var(--shadow-glow);border-color:var(--primary-teal)}.doctor-card:hover .image-overlay{opacity:1}.doctor-card:hover .doctor-emoji{transform:scale(1.1)}.doctor-card:hover .card-hover-effect{opacity:1}.card-hover-effect{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#14c38e0d,#00ffab0d);opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:1}.doctor-image-wrapper{position:relative;width:100%;height:280px;background:linear-gradient(135deg,var(--bg-light),#E2E8F0);display:flex;align-items:center;justify-content:center;overflow:hidden}.doctor-image{position:relative;z-index:2}.doctor-emoji{font-size:5rem;display:block;transition:transform .4s ease}.image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,transparent 0%,rgba(10,38,71,.3) 100%);opacity:0;transition:opacity .4s ease;z-index:1}.success-badge{position:absolute;top:20px;right:20px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 16px;border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-md);z-index:3;border:1px solid rgba(20,195,142,.2)}.success-rate{display:block;font-size:1.5rem;font-weight:700;color:var(--primary-teal);line-height:1;margin-bottom:4px}.success-label{display:block;font-size:.7rem;color:var(--text-gray);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.doctor-info{padding:28px 24px;position:relative;z-index:2}.specialty-badge{display:inline-block;background:#14c38e1a;color:var(--primary-teal);padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.doctor-info h3{font-size:1.4rem;color:var(--primary-blue);margin-bottom:8px;font-weight:700;line-height:1.3}.education{font-size:.85rem;color:var(--text-gray);margin-bottom:20px;line-height:1.5}.doctor-stats{display:flex;gap:20px;margin-bottom:20px;padding:16px 0;border-top:1px solid rgba(226,232,240,.5);border-bottom:1px solid rgba(226,232,240,.5)}.stat-item{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.stat-icon{font-size:1.2rem;margin-bottom:4px}.stat-value{font-size:1rem;font-weight:700;color:var(--primary-blue)}.stat-label{font-size:.75rem;color:var(--text-gray);text-transform:uppercase;letter-spacing:.5px}.services-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.service-tag{background:var(--bg-light);color:var(--text-dark);padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:600;border:1px solid rgba(226,232,240,.8);transition:all .3s ease}.service-tag.more{background:var(--primary-teal);color:var(--white);border-color:var(--primary-teal)}.doctor-card:hover .service-tag:not(.more){background:#14c38e1a;border-color:var(--primary-teal);color:var(--primary-teal)}.btn{padding:12px 24px;font-size:.95rem;font-weight:600;border-radius:50px;border:none;cursor:pointer;transition:all .3s ease;width:100%;text-decoration:none;display:inline-block;text-align:center}.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:hover{background:var(--primary-teal);box-shadow:0 8px 25px #14c38e66}.btn-white:hover{background:var(--primary-teal);color:var(--white)}.no-doctors-found{text-align:center;padding:80px 20px}.empty-icon{font-size:5rem;margin-bottom:20px;opacity:.5}.empty-state h3{font-size:1.8rem;color:var(--primary-blue);margin-bottom:12px}.empty-actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.empty-actions .btn{width:auto;min-width:180px}.doctors-cta{margin-top:80px;width:100%;box-sizing:border-box}.doctors-page .cta-card{background:linear-gradient(135deg,var(--primary-blue),#0d3b66);border-radius:var(--radius-xl);padding:60px 40px;text-align:center;color:var(--white);box-shadow:var(--shadow-lg);position:relative;overflow:hidden;width:100%;box-sizing:border-box}.cta-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(20,195,142,.1) 0%,transparent 70%);animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cta-card h2{font-size:2.2rem;margin-bottom:15px;position:relative;z-index:1}.cta-card p{font-size:1.1rem;opacity:.9;margin-bottom:30px;position:relative;z-index:1}.cta-card .btn{width:auto;min-width:280px;position:relative;z-index:1}@media(min-width:1024px)and (max-width:1440px){.doctors-page{width:100vw!important;max-width:100vw!important;min-width:100vw!important}.doctors-page .content-wrapper{max-width:100%;padding:0 5%;width:100%}.doctors-grid{grid-template-columns:repeat(3,1fr);gap:25px;width:100%}.doctors-header h1{font-size:2.5rem}}@media(max-width:1023px){.doctors-page{width:100vw!important;max-width:100vw!important;min-width:100vw!important;padding:60px 0 80px}.doctors-page .content-wrapper{width:100%;max-width:100%;padding:0 4%}.doctors-header{margin-bottom:50px}.doctors-header h1{font-size:2.2rem}.header-subtext{font-size:1rem}.doctors-grid{grid-template-columns:repeat(2,1fr);gap:24px;width:100%}.doctor-image-wrapper{height:250px}.cta-card{padding:50px 30px;width:100%;box-sizing:border-box}.cta-card h2{font-size:1.8rem}}@media(max-width:768px){.doctors-page{width:100vw!important;max-width:100vw!important;min-width:100vw!important;padding:40px 0 60px}.doctors-page .content-wrapper{width:100%;max-width:100%;padding:0 20px;box-sizing:border-box}.doctors-header{margin-bottom:40px}.doctors-header h1{font-size:1.8rem}.header-subtext{font-size:.95rem}.doctors-grid{grid-template-columns:1fr;gap:20px;width:100%}.doctor-card{width:100%}.doctor-image-wrapper{height:220px;width:100%}.doctor-emoji{font-size:4rem}.doctor-info{padding:24px 20px;width:100%;box-sizing:border-box}.doctor-info h3{font-size:1.2rem}.doctor-stats{flex-direction:column;gap:12px}.cta-card{padding:40px 24px;width:100%;box-sizing:border-box}.cta-card h2{font-size:1.5rem}.cta-card p{font-size:.95rem}.cta-card .btn{min-width:100%}.empty-actions{flex-direction:column}.empty-actions .btn{width:100%}}@media(min-width:1441px){.doctors-page{width:100vw!important;max-width:100vw!important;min-width:100vw!important}.doctors-page .content-wrapper{max-width:1400px;width:100%}.doctors-grid{gap:40px;width:100%}}:root{--primary-blue: #0A2647;--primary-teal: #14C38E;--accent-aqua: #00FFAB;--bg-light: #F8F9FD;--white: #FFFFFF;--text-dark: #1E293B;--text-gray: #64748B;--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, .05);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1);--radius-lg: 16px}.appointment-page{min-height:100vh;width:100vw;background:linear-gradient(180deg,var(--white) 0%,var(--bg-light) 50%,var(--white) 100%);padding:100px 20px 60px;color:var(--text-dark);font-family:inherit;box-sizing:border-box}.content-wrapper{max-width:1200px;margin:0 auto}.appointment-header{text-align:center;margin-bottom:50px}.header-content .badge{display:inline-block;background:#14c38e1a;color:var(--primary-blue);padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:700;margin-bottom:20px;letter-spacing:.5px}.header-content h1{font-size:3rem;margin:10px 0 20px;font-weight:700;color:var(--primary-blue)}.header-subtext{font-size:1.1rem;color:var(--text-gray);max-width:600px;margin:0 auto}.header-actions{margin-top:30px;display:flex;justify-content:center}.btn{padding:12px 24px;font-size:.95rem;font-weight:600;border-radius:50px;border:none;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:var(--primary-blue);color:var(--white);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--primary-teal);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:disabled{background:#cbd5e1;cursor:not-allowed;transform:none}.btn-secondary:hover{background:var(--primary-blue);color:var(--white)}.booking-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0a264766;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.booking-modal-content{background:var(--white);width:100%;max-width:550px;border-radius:var(--radius-lg);box-shadow:0 20px 40px #00000026;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s ease-out}.booking-modal-header{padding:25px 30px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.booking-modal-header h2{font-size:1.5rem;color:var(--primary-blue);margin:0}.close-button{background:#f1f5f9;border:none;width:32px;height:32px;border-radius:50%;font-size:1.2rem;display:flex;align-items:center;justify-content:center;color:var(--text-gray);cursor:pointer;transition:all .2s}.close-button:hover{background:#fee2e2;color:#ef4444}.booking-form{padding:30px}.form-group{margin-bottom:24px}.form-group label{display:block;font-size:.9rem;font-weight:600;color:var(--text-dark);margin-bottom:8px}.form-select,.form-input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;color:var(--text-dark);background:#fff;transition:all .2s;box-sizing:border-box}.form-select:focus,.form-input:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px #14c38e1a}.time-slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;margin-top:10px}.time-slot-btn{padding:10px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:var(--text-dark);font-size:.9rem;cursor:pointer;transition:all .2s}.time-slot-btn:hover{border-color:var(--primary-teal);color:var(--primary-teal)}.time-slot-btn.selected{background:var(--primary-blue);color:var(--white);border-color:var(--primary-blue)}.booking-form-section{background:var(--white);border-radius:var(--radius-lg);padding:40px;box-shadow:var(--shadow-md);margin-bottom:40px;border:1px solid #f1f5f9}.booking-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.appointment-filters{margin-bottom:30px}.filter-buttons{display:flex;gap:10px;justify-content:center}.filter-btn{padding:8px 20px;background:var(--white);border:1px solid #e2e8f0;border-radius:20px;color:var(--text-gray);font-weight:600;cursor:pointer;transition:all .3s}.filter-btn:hover{border-color:var(--primary-teal);color:var(--primary-teal)}.filter-btn.active{background:var(--primary-blue);color:var(--white);border-color:var(--primary-blue)}.appointments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:25px}.appointment-card{background:var(--white);border-radius:16px;padding:24px;box-shadow:var(--shadow-sm);border:1px solid #f1f5f9;transition:all .3s;position:relative;overflow:hidden}.appointment-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:var(--primary-teal)}.appointment-card.upcoming{border-left:5px solid var(--primary-teal)}.appointment-card.past{border-left:5px solid #cbd5e1;opacity:.9}.appointment-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #f1f5f9}.status-badge{padding:5px 12px;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase}.status-badge.status-pending{background:#fffbeb;color:#d97706}.status-badge.status-confirmed{background:#ecfdf5;color:#059669}.status-badge.status-completed{background:#f0f9ff;color:#0284c7}.status-badge.status-cancelled{background:#fef2f2;color:#dc2626}.upcoming-badge{background:var(--primary-blue);color:#fff;font-size:.7rem;padding:3px 8px;border-radius:4px;text-transform:uppercase;font-weight:600}.appointment-doctor{display:flex;align-items:center;gap:15px;margin-bottom:15px}.doctor-icon{width:48px;height:48px;border-radius:50%;background:#e0f2fe;color:var(--primary-blue);display:flex;align-items:center;justify-content:center;font-size:1.5rem}.appointment-doctor h3{font-size:1.1rem;color:var(--primary-blue);margin:0;font-weight:700}.service-name{color:var(--text-gray);font-size:.9rem;margin:2px 0 0}.detail-item{display:flex;align-items:center;gap:12px;margin-bottom:10px}.detail-icon{color:var(--primary-teal);font-size:1.1rem;width:24px;text-align:center}.detail-label{font-size:.8rem;color:var(--text-gray);display:block}.detail-value{font-size:.95rem;color:var(--text-dark);font-weight:600}.details-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0a264799;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.details-modal-content{background:var(--white);width:100%;max-width:700px;border-radius:16px;box-shadow:var(--shadow-lg);max-height:85vh;overflow-y:auto;animation:slideUp .3s ease-out}.details-header{padding:20px 30px;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.details-header h2{font-size:1.4rem;color:var(--primary-blue);margin:0}.close-details-btn{background:#fff;border:1px solid #cbd5e1;width:30px;height:30px;border-radius:50%;cursor:pointer;color:var(--text-dark);font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-details-btn:hover{background:#fee2e2;border-color:#ef4444;color:#ef4444}.details-body{padding:30px}.details-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#f8fafc;padding:20px;border-radius:12px;margin-bottom:25px}.details-info-grid div{color:var(--text-dark);font-size:.95rem}.details-info-grid strong{color:var(--primary-blue)}.detail-section h4{color:var(--primary-blue);border-bottom:2px solid #e2e8f0;padding-bottom:8px;margin-bottom:15px;font-size:1.1rem}.detail-tag{background:#f1f5f9;color:var(--text-dark);padding:5px 12px;border-radius:15px;font-size:.85rem;border:1px solid #cbd5e1;display:inline-block;margin-right:8px;margin-bottom:8px}.med-table{width:100%;border-collapse:collapse}.med-table th{background:#f1f5f9;padding:10px;text-align:left;font-size:.9rem;color:var(--primary-blue)}.med-table td{padding:10px;border-bottom:1px solid #e2e8f0;color:var(--text-dark);font-size:.9rem}.notes-text{background:#fffbeb;padding:15px;border-radius:8px;border:1px solid #fcd34d;color:#92400e}.error-message{background:#fee2e2;color:#b91c1c;padding:12px;border-radius:8px;margin-bottom:20px;font-size:.9rem;border:1px solid #fca5a5}.empty-state{text-align:center;padding:60px 20px}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.3}.empty-state h3{color:var(--primary-blue)}.empty-state p{color:var(--text-gray)}@media(max-width:768px){.appointment-page{padding:80px 15px 40px}.doctors-grid,.details-info-grid{grid-template-columns:1fr}}.lab-reports-page{width:100vw!important;max-width:100vw!important;min-width:100vw!important;min-height:100vh;background:linear-gradient(180deg,var(--white) 0%,var(--bg-light) 50%,var(--white) 100%);padding:80px 0 100px;overflow-x:hidden;box-sizing:border-box;margin:0!important;position:relative;display:block!important;left:50%!important;right:50%!important;margin-left:-50vw!important;margin-right:-50vw!important}.lab-reports-page .content-wrapper{max-width:1200px;margin:0 auto;padding:0 24px;width:100%;box-sizing:border-box;position:relative}.reports-header{margin-bottom:60px;padding-top:20px;width:100%;box-sizing:border-box}.reports-header h1{font-size:3rem;line-height:1.2;margin-bottom:20px;color:var(--text-dark);font-weight:700}.reports-controls{margin-bottom:50px;display:flex;flex-direction:column;gap:20px}.filter-btn:hover{border-color:var(--primary-teal);color:var(--primary-teal);transform:translateY(-2px)}.filter-btn.active{background:var(--primary-blue);border-color:var(--primary-blue);color:var(--white)}.filter-btn.active:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.reports-grid-section{margin-bottom:60px}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:30px}.report-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:all .3s ease;position:relative;border:1px solid #f0f0f0}.report-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--primary-teal)}.report-card-header{padding:20px 24px;background:linear-gradient(135deg,var(--bg-light) 0%,var(--white) 100%);border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center}.report-id{display:flex;flex-direction:column;gap:4px}.id-label{font-size:.75rem;color:var(--text-gray);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.id-value{font-size:1rem;color:var(--primary-blue);font-weight:700;font-family:Courier New,monospace}.status-badge{padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600;display:inline-flex;align-items:center;gap:6px}.status-completed{background:#14c38e1a;color:var(--primary-teal)}.status-pending{background:#ffc1071a;color:#ff9800}.report-card-body{padding:24px}.patient-info{margin-bottom:20px}.patient-info h3{font-size:1.5rem;color:var(--text-dark);margin-bottom:8px;font-weight:700}.test-type{font-size:1rem;color:var(--text-gray);font-weight:500}.report-meta{display:flex;flex-direction:column;gap:16px;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f0f0f0}.meta-icon{font-size:1.2rem;flex-shrink:0}.meta-label{font-size:.8rem;color:var(--text-gray);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.meta-value{font-size:.95rem;color:var(--text-dark);font-weight:500}.results-preview{margin-bottom:20px;padding:16px;background:var(--bg-light);border-radius:var(--radius-md)}.results-preview h4{font-size:.9rem;color:var(--primary-blue);margin-bottom:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.results-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.result-item{display:flex;flex-direction:column;gap:4px}.result-label{font-size:.75rem;color:var(--text-gray);font-weight:600;text-transform:capitalize}.result-value{font-size:.95rem;color:var(--primary-blue);font-weight:700}.report-notes{padding:16px;background:#14c38e0d;border-left:3px solid var(--primary-teal);border-radius:var(--radius-md);margin-bottom:20px}.report-notes p{font-size:.9rem;color:var(--text-dark);line-height:1.6;margin:0}.report-card-footer{padding:20px 24px;background:var(--bg-light);border-top:1px solid #f0f0f0;display:flex;gap:12px;justify-content:flex-end}.btn{padding:12px 24px;font-size:.95rem;font-weight:600;border-radius:50px;border:none;cursor:pointer;transition:all .3s ease;font-family:inherit;white-space:nowrap}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary{background:var(--primary-blue);color:var(--white)}.btn-primary:hover:not(:disabled){background:#0d3b66}.btn-secondary{background:transparent;border:2px solid var(--primary-blue);color:var(--primary-blue)}.btn-secondary:hover:not(:disabled){background:var(--primary-blue);color:var(--white)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-white{background:var(--white);color:var(--primary-blue);font-weight:700}.btn-white:hover{background:var(--bg-light)}.card-hover-effect{position:absolute;inset:0;background:linear-gradient(135deg,rgba(20,195,142,.05) 0%,transparent 100%);opacity:0;transition:opacity .3s ease;pointer-events:none;border-radius:var(--radius-lg)}.report-card:hover .card-hover-effect{opacity:1}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.loading-spinner{width:50px;height:50px;border:4px solid var(--bg-light);border-top:4px solid var(--primary-teal);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.no-reports-found{padding:80px 20px;text-align:center}.empty-state{max-width:500px;margin:0 auto}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-state h3{font-size:1.5rem;color:var(--text-dark);margin-bottom:12px;font-weight:700}.empty-state p{font-size:1rem;color:var(--text-gray);margin-bottom:30px;line-height:1.6}.reports-cta{margin-top:80px}.cta-card{background:linear-gradient(135deg,var(--primary-blue) 0%,#0d3b66 100%);border-radius:var(--radius-xl);padding:60px 40px;text-align:center;color:var(--white);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.cta-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(20,195,142,.1) 0%,transparent 70%);animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:.8}}.cta-card h2{font-size:2rem;margin-bottom:16px;font-weight:700;position:relative;z-index:1}.cta-card p{font-size:1.1rem;margin-bottom:30px;opacity:.9;position:relative;z-index:1}.cta-card .btn{position:relative;z-index:1}.animate-on-scroll{opacity:0;transition:all .8s cubic-bezier(.25,.46,.45,.94)}.slide-up{transform:translateY(40px)}.slide-up.visible{opacity:1;transform:translateY(0)}.fade-in{opacity:0}.fade-in.visible{opacity:1}@media(max-width:992px){.reports-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.reports-header h1{font-size:2.5rem}.report-card-footer{flex-direction:column}.report-card-footer .btn{width:100%}}@media(max-width:768px){.lab-reports-page{padding:60px 0 80px}.reports-header h1{font-size:2rem}.header-subtext{font-size:1rem}.reports-grid{grid-template-columns:1fr;gap:20px}.search-box{max-width:100%}.filter-buttons{width:100%}.filter-btn{flex:1;min-width:100px}.results-grid{grid-template-columns:1fr}.cta-card{padding:40px 30px}.cta-card h2{font-size:1.5rem}.report-meta{flex-direction:column}}@media(max-width:480px){.lab-reports-page .content-wrapper{padding:0 16px}.report-card-header{flex-direction:column;align-items:flex-start;gap:12px}.status-badge{align-self:flex-end}}:root{--brand-pink: #d91a8a;--brand-pink-gradient: linear-gradient(135deg, #d91a8a, #b0126e);--brand-pink-soft: #ffeaf5;--brand-teal: #0a7c86;--brand-teal-gradient: linear-gradient(135deg, #0a7c86, #065a61);--brand-teal-soft: #e0f7fa;--bg-warm: #fdfbf9;--bg-white: #ffffff;--text-heading: #2d2d2d;--text-body: #555555;--text-light: #999999;--radius-card: 20px;--radius-btn: 50px;--radius-tag: 12px;--shadow-soft: 0 10px 30px rgba(0,0,0,.05);--shadow-hover: 0 20px 40px rgba(217, 26, 138, .15);--font-heading: "Playfair Display", serif;--font-body: "Poppins", sans-serif;--transition: all .3s cubic-bezier(.4, 0, .2, 1)}.dashboard-page{width:100%;min-height:100vh;background-color:var(--bg-warm);background-image:radial-gradient(circle at 10% 20%,rgba(217,26,138,.03) 0%,transparent 20%),radial-gradient(circle at 90% 80%,rgba(10,124,134,.03) 0%,transparent 20%);padding:40px 20px;font-family:var(--font-body);color:var(--text-body);box-sizing:border-box}.content-wrapper{max-width:1400px;margin:0 auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-on-scroll{opacity:0;animation-fill-mode:forwards}.animate-on-scroll.visible{animation:slideUp .6s ease-out forwards}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.dashboard-header{text-align:center;margin-bottom:50px;padding:40px;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-card);border:1px solid rgba(255,255,255,1);box-shadow:var(--shadow-soft)}.badge{display:inline-block;background:var(--brand-teal-soft);color:var(--brand-teal);padding:8px 20px;border-radius:30px;font-size:.85rem;font-weight:700;margin-bottom:20px;letter-spacing:.5px;text-transform:uppercase}.dashboard-header h1{font-family:var(--font-heading);font-size:3rem;color:var(--text-heading);margin-bottom:15px;font-weight:700}.text-gradient{background:var(--brand-pink-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.patient-id-display{font-weight:600;color:var(--brand-teal);background:#0a7c8614;display:inline-block;padding:5px 15px;border-radius:10px;margin-bottom:10px}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:60px;align-items:stretch}.dashboard-column{background:var(--bg-white);border-radius:var(--radius-card);box-shadow:var(--shadow-soft);overflow:hidden;display:flex;flex-direction:column;transition:var(--transition);border:1px solid rgba(0,0,0,.02);height:100%}.dashboard-column:hover{transform:translateY(-8px);box-shadow:var(--shadow-hover)}.column-header{background:var(--brand-pink-gradient);color:#fff;padding:25px;display:flex;align-items:center;gap:18px}.dashboard-column:nth-child(2) .column-header{background:var(--brand-teal-gradient)}.dashboard-column:nth-child(3) .column-header{background:linear-gradient(135deg,#2d2d2d,#4a4a4a)}.column-icon{font-size:2rem;background:#fff3;width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.column-header h2{font-family:var(--font-heading);font-size:1.4rem;margin:0;font-weight:600}.column-count{font-size:.9rem;opacity:.8;margin:0;font-weight:400}.column-content{padding:25px;flex:1;background:#fff;min-height:350px}.column-footer{padding:20px 25px;border-top:1px solid #f0f0f0;background:#fbfbfb;text-align:center}.view-all-link{color:var(--brand-pink);text-decoration:none;font-weight:600;font-size:.95rem;transition:var(--transition);display:inline-block}.view-all-link:hover{transform:translate(5px);color:var(--text-heading)}.items-list{display:flex;flex-direction:column;gap:15px}.dashboard-item{background:#fff;border-radius:16px;padding:18px;border:1px solid #f0f0f0;box-shadow:0 4px 10px #00000005;transition:var(--transition);position:relative;overflow:hidden}.dashboard-item:hover{border-color:var(--brand-pink-soft);box-shadow:0 8px 20px #0000000f;transform:scale(1.02)}.dashboard-item.upcoming{border-left:4px solid var(--brand-teal);background:linear-gradient(to right,#0a7c8605,#fff)}.dashboard-item.past{opacity:.85}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.item-id{font-size:.75rem;font-weight:700;color:var(--text-light);background:#f5f5f5;padding:2px 8px;border-radius:4px}.item-body h3{font-family:var(--font-body);font-size:1.05rem;color:var(--text-heading);margin:0 0 8px;font-weight:600}.item-details{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.detail{font-size:.85rem;color:var(--text-body);background:#f9f9f9;padding:4px 10px;border-radius:6px}.status-badge{padding:4px 10px;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-badge.status-confirmed,.status-badge.status-completed,.status-badge.status-delivered{background:var(--brand-teal-soft);color:var(--brand-teal)}.status-badge.status-pending,.status-badge.status-processing{background:#fff8e1;color:#f57c00}.status-badge.status-cancelled{background:#ffebee;color:#c62828}.view-presc-btn{width:100%;padding:10px;background:#fff;border:1px solid var(--brand-pink);color:var(--brand-pink);border-radius:30px;font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition)}.view-presc-btn:hover{background:var(--brand-pink);color:#fff}.details-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease}.details-modal-content{background:#fff;width:100%;max-width:600px;border-radius:var(--radius-card);box-shadow:0 25px 50px #00000040;overflow:hidden;display:flex;flex-direction:column;max-height:90vh;animation:slideUp .3s ease-out}.details-header{background:var(--brand-pink-gradient);color:#fff;padding:20px 25px;display:flex;justify-content:space-between;align-items:center}.details-header h2{font-family:var(--font-heading);font-size:1.5rem;margin:0}.close-details-btn{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:.2s}.close-details-btn:hover{background:#fff6}.details-body{padding:25px;overflow-y:auto}.details-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;background:#fcfcfc;padding:15px;border-radius:12px;border:1px solid #f0f0f0;font-size:.95rem}.detail-section{margin-top:25px}.detail-section h4{color:var(--brand-pink);font-size:1rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;border-bottom:2px solid var(--brand-pink-soft);padding-bottom:5px;display:inline-block}.med-table{width:100%;border-collapse:collapse;font-size:.9rem}.med-table th{text-align:left;background:var(--brand-teal-soft);color:var(--brand-teal);padding:10px;font-weight:600}.med-table td{border-bottom:1px solid #eee;padding:10px}.files-list{display:flex;flex-direction:column;gap:8px}.file-link{display:block;padding:12px;border:1px solid #eee;border-radius:8px;color:var(--text-heading);text-decoration:none;font-weight:500;transition:.2s}.file-link:hover{border-color:var(--brand-pink);background:var(--brand-pink-soft);color:var(--brand-pink)}.auth-button{background:var(--text-heading);color:#fff;border:none;padding:10px 25px;border-radius:30px;font-weight:600;cursor:pointer;transition:.3s}.auth-button:hover{background:var(--brand-pink);transform:translateY(-2px)}.empty-state-small{text-align:center;padding:40px 20px;color:var(--text-light)}.empty-state-small p{margin-top:10px;font-weight:500}.loading-spinner{width:50px;height:50px;border:4px solid var(--brand-pink-soft);border-top-color:var(--brand-pink);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@media(max-width:1024px){.dashboard-grid{grid-template-columns:1fr}.dashboard-header h1{font-size:2rem}}:root{--primary-blue: #0A2647;--primary-teal: #14C38E;--accent-aqua: #00FFAB;--bg-light: #F8F9FD;--white: #FFFFFF;--text-dark: #1E293B;--text-gray: #64748B;--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, .05);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-glow: 0 0 30px rgba(20, 195, 142, .2);--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px}html,body{width:100%!important;max-width:100vw!important;overflow-x:hidden}body{display:block!important;place-items:unset!important}.pharmacy-page{width:100vw!important;max-width:100vw!important;min-width:100vw!important;min-height:100vh;background:linear-gradient(180deg,var(--white) 0%,var(--bg-light) 50%,var(--white) 100%);padding:80px 0 100px;overflow-x:hidden;box-sizing:border-box;margin:0!important;position:relative;display:block!important;left:50%!important;right:50%!important;margin-left:-50vw!important;margin-right:-50vw!important}.pharmacy-page .content-wrapper{max-width:1200px;margin:0 auto;padding:0 24px;width:100%;box-sizing:border-box;position:relative}.pharmacy-header{margin-bottom:60px;padding-top:20px;width:100%;box-sizing:border-box}.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--text-gray);text-decoration:none;font-size:.95rem;font-weight:500;margin-bottom:30px;transition:color .3s ease}.back-link:hover{color:var(--primary-teal)}.back-arrow{font-size:1.2rem}.header-content{text-align:center}.badge{display:inline-block;background:#14c38e1a;color:var(--primary-blue);padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:700;margin-bottom:20px;letter-spacing:.5px}.pharmacy-header h1{font-size:3rem;line-height:1.2;margin-bottom:20px;color:var(--text-dark);font-weight:700}.text-gradient{background:linear-gradient(135deg,var(--primary-blue),var(--primary-teal));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.header-subtext{font-size:1.125rem;color:var(--text-gray);max-width:700px;margin:0 auto;line-height:1.7}.user-greeting{font-size:1rem;color:var(--text-gray);margin-top:12px;font-style:italic}.user-greeting strong{color:var(--primary-teal);font-weight:600}.pharmacy-controls{margin-bottom:50px;display:flex;flex-direction:column;gap:20px}.search-box{position:relative;max-width:600px;margin:0 auto;width:100%}.search-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);font-size:1.2rem;color:var(--text-gray)}.search-input{width:100%;padding:16px 20px 16px 50px;border:2px solid #e2e8f0;border-radius:50px;font-size:1rem;font-family:inherit;background:var(--white);color:var(--text-dark);transition:all .3s ease;box-sizing:border-box}.search-input:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 4px #14c38e1a}.search-input::placeholder{color:var(--text-gray)}.filter-buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.filter-btn{padding:10px 24px;border:2px solid #e2e8f0;background:var(--white);color:var(--text-gray);border-radius:50px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.filter-btn:hover{border-color:var(--primary-teal);color:var(--primary-teal);background:#14c38e0d}.filter-btn.active{background:linear-gradient(135deg,var(--primary-teal),var(--accent-aqua));color:var(--white);border-color:transparent;box-shadow:var(--shadow-md)}.orders-grid-section{margin-bottom:60px}.orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:30px}.order-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all .3s ease;border:1px solid rgba(226,232,240,.8);position:relative;display:flex;flex-direction:column}.order-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--primary-teal)}.order-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;background:linear-gradient(135deg,#14c38e0d,#00ffab0d);border-bottom:1px solid rgba(226,232,240,.8)}.order-id{display:flex;flex-direction:column;gap:4px}.id-label{font-size:.75rem;color:var(--text-gray);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.id-value{font-size:1.1rem;color:var(--text-dark);font-weight:700;font-family:Courier New,monospace}.status-badge{padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:capitalize;white-space:nowrap}.status-badge.status-delivered{background:#14c38e1a;color:var(--primary-teal)}.status-badge.status-processing{background:#ffc1071a;color:#ff9800}.status-badge.status-pending{background:#2196f31a;color:#2196f3}.status-badge.status-cancelled{background:#f443361a;color:#f44336}.order-card-body{padding:24px;flex:1;display:flex;flex-direction:column;gap:20px}.order-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.meta-item{display:flex;align-items:flex-start;gap:12px}.meta-icon{font-size:1.3rem;flex-shrink:0}.meta-item>div{display:flex;flex-direction:column;gap:4px}.meta-label{font-size:.8rem;color:var(--text-gray);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.meta-value{font-size:.95rem;color:var(--text-dark);font-weight:600}.meta-value.payment-paid{color:var(--primary-teal)}.meta-value.payment-pending{color:#ff9800}.meta-value.payment-refunded{color:#f44336}.order-items{padding-top:20px;border-top:1px solid rgba(226,232,240,.8)}.order-items h4{font-size:1rem;color:var(--text-dark);margin-bottom:12px;font-weight:600}.items-list{display:flex;flex-direction:column;gap:10px}.item-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--bg-light);border-radius:var(--radius-md)}.item-info{display:flex;flex-direction:column;gap:4px;flex:1}.item-name{font-size:.95rem;color:var(--text-dark);font-weight:500}.item-quantity{font-size:.85rem;color:var(--text-gray)}.item-price{font-size:1rem;color:var(--primary-teal);font-weight:700}.delivery-address{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#14c38e0d;border-radius:var(--radius-md);border-left:3px solid var(--primary-teal)}.address-icon{font-size:1.2rem;flex-shrink:0}.address-text{font-size:.9rem;color:var(--text-dark);line-height:1.5}.order-card-footer{padding:20px 24px;border-top:1px solid rgba(226,232,240,.8);background:var(--bg-light);display:flex;gap:12px}.btn{padding:12px 24px;border:none;border-radius:var(--radius-md);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit;flex:1}.btn-primary{background:linear-gradient(135deg,var(--primary-teal),var(--accent-aqua));color:var(--white)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--white);color:var(--primary-teal);border:2px solid var(--primary-teal)}.btn-secondary:hover{background:var(--primary-teal);color:var(--white)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed;background:var(--white);color:var(--text-gray);border-color:#e2e8f0}.card-hover-effect{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#14c38e0d,#00ffab0d);opacity:0;transition:opacity .3s ease;pointer-events:none;border-radius:var(--radius-lg)}.order-card:hover .card-hover-effect{opacity:1}.no-orders-found{text-align:center;padding:80px 20px}.empty-state{display:flex;flex-direction:column;align-items:center;gap:20px;max-width:500px;margin:0 auto}.empty-icon{font-size:5rem;opacity:.5}.empty-state h3{font-size:1.75rem;color:var(--text-dark);margin:0;font-weight:700}.empty-state p{font-size:1rem;color:var(--text-gray);line-height:1.7;margin:0}.btn-white{background:var(--white);color:var(--primary-teal);border:2px solid var(--primary-teal);padding:12px 32px;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.btn-white:hover{background:var(--primary-teal);color:var(--white);transform:translateY(-2px);box-shadow:var(--shadow-md)}.pharmacy-cta{margin-top:60px;text-align:center}.cta-card{background:linear-gradient(135deg,var(--primary-blue),var(--primary-teal));color:var(--white);padding:48px 40px;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.cta-card h2{font-size:2rem;margin-bottom:12px;font-weight:700}.cta-card p{font-size:1.1rem;margin-bottom:24px;opacity:.9}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}.loading-spinner{width:50px;height:50px;border:4px solid rgba(20,195,142,.1);border-top-color:var(--primary-teal);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-state p{color:var(--text-gray);font-size:1.1rem}.animate-on-scroll{opacity:0;transition:opacity .6s ease,transform .6s ease}.animate-on-scroll.visible{opacity:1}.slide-up{transform:translateY(30px)}.slide-up.visible{transform:translateY(0)}.delay-100{transition-delay:.1s}.delay-200{transition-delay:.2s}.delay-300{transition-delay:.3s}.fade-in{transform:scale(.95)}.fade-in.visible{transform:scale(1)}@media(max-width:768px){.pharmacy-header h1{font-size:2rem}.orders-grid,.order-meta{grid-template-columns:1fr}.filter-buttons{justify-content:flex-start;overflow-x:auto;padding-bottom:10px}.filter-btn{white-space:nowrap;flex-shrink:0}}@media(max-width:480px){.pharmacy-page .content-wrapper{padding:0 16px}.pharmacy-header h1{font-size:1.75rem}.order-card-header{flex-direction:column;gap:12px;align-items:flex-start}.order-card-body{padding:20px}.cta-card{padding:32px 24px}.cta-card h2{font-size:1.5rem}}:root{--auth-bg: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);--accent-primary: #14b8a6;--accent-secondary: #0f172a;--text-main: #1e293b;--text-muted: #64748b;--glass-bg: rgba(255, 255, 255, .8);--glass-border: rgba(255, 255, 255, .4)}.auth-section{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--auth-bg);padding:2rem 1rem;position:relative;overflow:hidden;font-family:Inter,system-ui,-apple-system,sans-serif}.auth-container{width:100%;max-width:1040px;position:relative;z-index:10}.auth-blob{position:absolute;filter:blur(80px);z-index:1;opacity:.5}.blob-1{width:400px;height:400px;background:#14b8a633;top:-100px;left:-100px}.blob-2{width:300px;height:300px;background:#6366f126;bottom:-50px;right:-50px}.auth-card{display:grid;grid-template-columns:1.1fr .9fr;background:#fff;border-radius:24px;box-shadow:0 25px 50px -12px #00000014;overflow:hidden;border:1px solid rgba(0,0,0,.05);min-height:620px}.auth-form-container{padding:3.5rem 3rem;background:#fff;display:flex;flex-direction:column;justify-content:center}.auth-box{width:100%}.hospital-brand{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.hospital-logo{width:48px;height:48px;border-radius:12px;object-fit:cover;box-shadow:0 4px 12px #0000000d}.hospital-logo-placeholder{width:48px;height:48px;border-radius:12px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--accent-primary)}.hospital-brand-text h2{font-size:1.15rem;font-weight:800;color:var(--text-main);margin:0;line-height:1.2}.hospital-brand-text p{font-size:.75rem;color:var(--text-muted);font-weight:500;margin:0;text-transform:uppercase;letter-spacing:.05em}.auth-header{margin-bottom:2rem}.auth-header h3{font-size:1.75rem;font-weight:800;color:var(--text-main);margin-bottom:.5rem;letter-spacing:-.02em}.auth-header p{color:var(--text-muted);font-size:.9rem;font-weight:450}.modern-form .auth-input-group{margin-bottom:1.25rem;display:flex;flex-direction:column;width:100%}.auth-input-group label{display:block;font-size:.85rem;font-weight:600;color:var(--text-main);margin-bottom:.5rem;text-align:left}.input-field-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:1rem;font-size:1.25rem;color:#94a3b8;pointer-events:none;transition:color .2s}.input-field-wrapper input{width:100%;padding:.75rem 1rem .75rem 3rem;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;font-size:.95rem;color:var(--text-main);transition:all .2s;font-family:inherit}.input-field-wrapper input:focus{outline:none;background:#fff;border-color:var(--accent-primary);box-shadow:0 0 0 4px #14b8a61a}.input-field-wrapper input:focus+.input-icon{color:var(--accent-primary)}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.75rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input{accent-color:var(--accent-primary)}.checkbox-label span{font-size:.85rem;color:var(--text-muted);font-weight:500}.forgot-link{font-size:.85rem;color:var(--accent-primary);font-weight:600;text-decoration:none}.btn-primary.btn-block{width:100%;padding:.875rem;background:var(--accent-secondary);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 10px 15px -3px #0f172a1a}.btn-primary.btn-block:hover{transform:translateY(-1px);box-shadow:0 20px 25px -5px #0f172a26;background:#1e293b}.btn-primary.btn-block:disabled{opacity:.7;cursor:not-allowed}.btn-primary:active{transform:translateY(0)}.btn-block{width:100%;display:flex!important;justify-content:center;align-items:center;padding:1rem 1.75rem;font-size:1rem}.form-options{display:flex;justify-content:space-between;align-items:center;margin:1.5rem 0 2rem;font-size:.85rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--text-muted);-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:1rem;height:1rem;border-radius:4px;border:1.5px solid var(--border-color);accent-color:var(--accent-primary)}.forgot-link{color:var(--accent-primary);font-weight:600;text-decoration:none;transition:opacity .2s}.forgot-link:hover{opacity:.8}.auth-footer-note{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border-color);color:var(--text-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;text-align:center;opacity:.6}.auth-visual{position:relative;background:#0f172a;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem;color:#fff}.auth-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.4}.auth-visual-overlay{position:absolute;inset:0;background:linear-gradient(to top,#0f172a 0%,transparent 70%)}.visual-badge{background:#14b8a633;color:#14b8a6;padding:.35rem .85rem;border-radius:100px;font-size:.75rem;font-weight:700;display:inline-block;margin-bottom:1.5rem;border:1px solid rgba(20,184,166,.3)}.auth-content{position:relative;z-index:10}.auth-content h2{font-size:2.25rem;font-weight:800;line-height:1.1;margin-bottom:1rem;letter-spacing:-.03em}.auth-content p{color:#ffffffb3;line-height:1.6;font-size:1rem}.error-message{background:#fef2f2;border-left:4px solid #ef4444;color:#991b1b;padding:.75rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;margin-bottom:1.5rem}.back-button-new{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--text-muted);font-size:.85rem;font-weight:600;cursor:pointer;padding:0;margin-bottom:2rem;transition:color .2s}.back-button-new:hover{color:var(--accent-primary)}.back-button-new svg{font-size:1.1rem}@media(max-width:900px){.auth-card{grid-template-columns:1fr;max-width:500px}.auth-visual{display:none}}:root{--primary-gradient: linear-gradient(135deg, #6366f1 0%, #a855f7 100%);--secondary-gradient: linear-gradient(135deg, #3b82f6 0%, #2dd4bf 100%);--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(255, 255, 255, .5);--text-main: #1e293b;--text-muted: #64748b;--bg-color: #f8fafc;--error-red: #ef4444;--radius-xl: 24px;--radius-lg: 16px;--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--transition: all .3s cubic-bezier(.4, 0, .2, 1)}.auth-section,.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:radial-gradient(circle at 10% 20%,rgba(99,102,241,.1) 0%,transparent 50%),radial-gradient(circle at 90% 80%,rgba(168,85,247,.1) 0%,transparent 50%),linear-gradient(135deg,#f8fafc,#e2e8f0);position:relative;overflow:hidden;font-family:Outfit,Inter,sans-serif}.auth-blob{position:absolute;border-radius:50%;filter:blur(80px);z-index:0;opacity:.6}.blob-1{width:400px;height:400px;background:#6366f140;top:-80px;left:-80px;animation:float 10s infinite alternate}.blob-2{width:350px;height:350px;background:#a855f740;bottom:-40px;right:-40px;animation:float 12s infinite alternate-reverse}@keyframes float{0%{transform:translate(0)}to{transform:translate(30px,30px)}}.auth-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);width:100%;max-width:1100px;min-height:650px;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--glass-border);display:flex;overflow:hidden;position:relative;z-index:1}.auth-visual{flex:1;background:var(--secondary-gradient);position:relative;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;padding:40px;overflow:hidden}.auth-visual img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.2;mix-blend-mode:overlay}.auth-content{position:relative;z-index:2;max-width:400px}.auth-content h2{font-size:2.6rem;margin-bottom:20px;font-weight:800;line-height:1.1}.input-group{margin-bottom:16px}.input-group label{display:block;font-size:.85rem;font-weight:600;margin-bottom:6px;color:var(--text-main)}.input-wrapper i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:.95rem}.input-wrapper input{width:100%;padding:12px 16px 12px 44px;border:2px solid #e2e8f0;border-radius:12px;background:#f8fafc;font-size:.95rem;transition:var(--transition);color:var(--text-main);box-sizing:border-box}.input-wrapper input:focus{outline:none;background:#fff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.btn-primary{background:var(--primary-gradient);color:#fff!important;padding:14px 28px;border-radius:12px;font-weight:600;border:none;cursor:pointer;box-shadow:0 4px 12px #6366f140;transition:var(--transition);font-size:1rem}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #6366f166}.btn-block{width:100%;margin-top:10px}@media(max-width:900px){.auth-visual{display:none}.auth-form-container{padding:40px 24px}.auth-card{width:100%;max-width:550px;min-height:auto}}.auth-blob{position:absolute;border-radius:50%;z-index:0;opacity:.6;animation:authFloat 10s infinite alternate}.blob-1{width:300px;height:300px;background:var(--brand-pink-soft);top:-50px;left:-50px}.blob-2{width:250px;height:250px;background:#e0f7fa;bottom:50px;right:-50px}@keyframes authFloat{0%{transform:translateY(0)}to{transform:translateY(20px)}}.auth-card{background:#fff;width:100%;max-width:1100px;min-height:650px;border-radius:24px;box-shadow:0 20px 60px #00000014;display:flex;overflow:hidden;position:relative;z-index:1;animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-form-container{flex:1.2;padding:40px 50px;display:flex;flex-direction:column;justify-content:center}.auth-visual{flex:1;background:linear-gradient(135deg,var(--brand-teal),var(--brand-teal-dark));position:relative;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;padding:40px;overflow:hidden}.auth-visual img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.35;mix-blend-mode:overlay}.auth-content{position:relative;z-index:2;max-width:380px}.auth-content h2{color:#fff;font-size:2.5rem;margin-bottom:15px;font-family:Playfair Display,serif;line-height:1.2}.auth-box{transition:all .5s ease-in-out}.auth-box.show{display:block;opacity:1}.input-group{margin-bottom:15px}.input-group label{display:block;font-size:.85rem;font-weight:600;margin-bottom:6px;color:var(--text-heading)}.input-wrapper{position:relative}.input-wrapper i{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#aaa}.input-wrapper input{width:100%;padding:12px 15px 12px 45px;border:1px solid #eee;border-radius:12px;background:#f9f9f9;font-size:.95rem;transition:var(--transition);box-sizing:border-box}.input-wrapper input:focus{background:#fff;border-color:var(--brand-pink);outline:none;box-shadow:0 0 0 4px #d91a8a1a}.btn-primary{background:linear-gradient(135deg,var(--brand-pink),#b0126e);color:#fff!important;padding:14px 30px;border-radius:50px;display:inline-block;font-weight:600;border:none;cursor:pointer;box-shadow:0 10px 20px #d91a8a40;transition:var(--transition)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 15px 30px #d91a8a66}.btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-block{width:100%;font-size:1.05rem;margin-top:15px}.error-message{background:#ef44441a;color:var(--error-red);padding:10px 15px;border-radius:8px;margin-bottom:20px;font-size:.85rem;border-left:3px solid var(--error-red);text-align:left}.switch-text{text-align:center;color:#666;margin-top:20px;font-size:.9rem}.switch-link{color:var(--brand-pink);font-weight:700;cursor:pointer;text-decoration:underline}@media(max-width:900px){.auth-visual{display:none}.auth-form-container{padding:40px 25px}.auth-card{min-height:auto;max-width:500px}}@media(max-width:480px){.auth-section{padding:20px 15px}.auth-form-container{padding:30px 20px}}:root{--admin-bg-gradient: radial-gradient(circle at top right, #f8fafc, #edf2f7, #e2e8f0);--glass-bg: rgba(255, 255, 255, .75);--glass-border: rgba(255, 255, 255, .6);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .1);--primary-color: #0d9488;--accent-color: #0f766e;--text-dark: #0f172a;--text-muted: #64748b;--radius-lg: 24px}.superadmin-page{min-height:100vh;padding:40px;background:var(--admin-bg-gradient);font-family:Outfit,Inter,sans-serif;box-sizing:border-box}.superadmin-container{max-width:1400px;margin:0 auto}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:48px;padding:32px 40px;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.admin-header h1{font-size:2.2rem;font-weight:800;background:linear-gradient(135deg,#0d9488,#2dd4bf);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 8px}.admin-header p{color:var(--text-muted);font-size:1.1rem;margin:0;font-weight:500}.admin-user-info{display:flex;align-items:center;gap:20px}.admin-user-info span{font-weight:600;color:var(--text-dark);font-size:1.05rem}.logout-btn{padding:12px 24px;background:#ef4444;color:#fff;border:none;border-radius:12px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #ef44444d}.logout-btn:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 8px 20px #ef444466}.admin-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:var(--radius-lg);padding:40px;margin-bottom:32px;box-shadow:var(--glass-shadow);border:1px solid var(--glass-border);transition:transform .3s ease}.admin-card:hover{transform:translateY(-4px)}.admin-card h2{font-size:1.6rem;color:var(--text-dark);margin-bottom:24px;font-weight:700;display:flex;align-items:center;gap:12px}.staff-input{width:100%;padding:14px 16px;border-radius:12px;border:1px solid rgba(203,213,225,.8);background:#fff;color:var(--text-dark);font-size:1rem;box-sizing:border-box;transition:all .2s;font-family:inherit}.staff-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 4px #0d94881a;outline:none}.staff-input::placeholder{color:#94a3b8}.staff-label{display:block;margin-bottom:8px;font-weight:700;font-size:.9rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.user-form{display:flex;flex-direction:column;gap:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--text-dark);font-weight:700;font-size:.95rem;display:flex;align-items:center;gap:8px}.form-group input,.form-group select{width:100%;padding:14px 16px;border:1px solid rgba(203,213,225,.8);border-radius:12px;font-size:1rem;color:var(--text-dark);background:#fff;transition:all .2s;box-sizing:border-box}.form-group input:focus,.form-group select:focus{border-color:var(--primary-color);box-shadow:0 0 0 4px #0d94881a;outline:none}.availability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:16px}.availability-day{padding:16px;border:1px solid rgba(226,232,240,.8);border-radius:12px;background:#ffffff80}.availability-day label{margin-bottom:12px;font-weight:700}.time-inputs{display:flex;align-items:center;gap:8px}.time-inputs input[type=time]{padding:8px;border-radius:8px;border:1px solid #e2e8f0;font-size:.9rem}.submit-button{width:100%;padding:16px;background:linear-gradient(135deg,#0d9488,#14b8a6);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s;margin-top:12px;box-shadow:0 4px 15px #0d94884d}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #0d948866}.submit-button:disabled{background:#cbd5e1;cursor:not-allowed;box-shadow:none;transform:none}.error-message{background:#fef2f2;color:#ef4444;padding:16px;border-radius:12px;margin-bottom:24px;font-weight:600;border:1px solid #fee2e2;display:flex;align-items:center;gap:12px}.success-message{background:#f0fdfa;color:#0d9488;padding:16px;border-radius:12px;margin-bottom:24px;font-weight:600;border:1px solid #ccfbf1;display:flex;align-items:center;gap:12px}.users-table{overflow-x:auto;border-radius:16px;border:1px solid rgba(226,232,240,.6)}.users-table table{width:100%;border-collapse:collapse}.users-table thead{background:#f1f5f980}.users-table th{padding:18px 24px;text-align:left;font-weight:700;color:#64748b;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em;border-bottom:1px solid #e2e8f0}.users-table td{padding:18px 24px;border-bottom:1px solid #e2e8f0;color:var(--text-dark);font-weight:500}.users-table tbody tr{background:#fff6;transition:background .2s}.users-table tbody tr:hover{background:#fffc}.role-badge{display:inline-flex;padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.role-admin,.role-superadmin{background:#fee2e2;color:#dc2626;border:1px solid #fecaca}.role-doctor{background:#dbeafe;color:#2563eb;border:1px solid #bfdbfe}.role-lab{background:#f3e8ff;color:#9333ea;border:1px solid #e9d5ff}.role-pharmacy{background:#ffedd5;color:#ea580c;border:1px solid #fed7aa}.role-reception{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.role-user{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.action-buttons{display:flex;gap:10px;align-items:center}.btn-edit,.btn-delete,.btn-save,.btn-cancel{padding:8px 16px;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit{background:#eff6ff;color:#2563eb;border:1px solid #dbeafe}.btn-delete{background:#fef2f2;color:#ef4444;border:1px solid #fee2e2}.btn-delete:hover{background:#fee2e2}.btn-save{background:linear-gradient(135deg,#0d9488,#14b8a6);color:#fff;box-shadow:0 4px 10px #0d948833}.btn-save:hover{transform:translateY(-2px);box-shadow:0 6px 15px #0d94884d}.btn-cancel{background:#fff;color:#64748b;border:1px solid #cbd5e1}.btn-cancel:hover{background:#f8fafc;color:#1e293b}.no-action{color:#94a3b8;font-style:italic}.role-select{padding:8px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;background:#fff;color:var(--text-dark);cursor:pointer;outline:none}.role-select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #0d94881a}.modal-overlay{position:fixed;inset:0;background:#0f172a99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.modal-content{background:#fff;border-radius:24px;padding:40px;max-width:480px;width:90%;box-shadow:0 25px 50px -12px #00000040;animation:scaleUp .3s cubic-bezier(.16,1,.3,1)}.modal-content h3{margin:0 0 16px;color:var(--text-dark);font-size:1.5rem;font-weight:800}.modal-content p{margin:0 0 32px;color:#64748b;font-size:1.05rem;line-height:1.6}.modal-buttons{display:flex;gap:16px;justify-content:flex-end}.btn-confirm-delete{padding:12px 24px;background:#ef4444;color:#fff;border:none;border-radius:12px;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #ef44444d}.btn-confirm-delete:hover{background:#dc2626;transform:translateY(-2px)}@keyframes scaleUp{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:768px){.admin-header{flex-direction:column;gap:24px;align-items:flex-start;padding:24px}.form-row{grid-template-columns:1fr}.users-table th,.users-table td{padding:12px 16px}.superadmin-page{padding:20px}}.dpd-container{display:grid;grid-template-columns:45% 55%;height:calc(100vh - 74px);background:#f0f4ff;font-family:Inter,Segoe UI,system-ui,sans-serif;color:#1e293b;overflow:hidden;position:relative;box-sizing:border-box}.dpd-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:#f0f4ff;color:#64748b;font-family:Inter,system-ui,sans-serif;gap:16px}.dpd-spinner{width:44px;height:44px;border:4px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:dpd-spin .8s linear infinite}@keyframes dpd-spin{to{transform:rotate(360deg)}}.dpd-back-btn{padding:10px 24px;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:.9rem;font-family:inherit}.dpd-left{display:flex;flex-direction:column;border-right:1px solid #e2e8f0;background:linear-gradient(180deg,#f8fafc,#f1f5f9);overflow:hidden;min-height:0;height:100%}.dpd-patient-header{padding:20px 24px 16px;background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;position:relative;flex-shrink:0}.dpd-back-link{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#94a3b8;padding:6px 14px;border-radius:8px;cursor:pointer;font-size:.82rem;font-weight:600;font-family:inherit;margin-bottom:12px;display:inline-block;transition:all .2s}.dpd-back-link:hover{background:#ffffff26;color:#fff}.dpd-patient-identity{display:flex;align-items:flex-start;gap:16px;margin-bottom:14px}.dpd-patient-avatar{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;flex-shrink:0;box-shadow:0 4px 12px #3b82f666}.dpd-patient-meta h2{margin:0 0 8px;font-size:1.3rem;font-weight:800;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.dpd-patient-tags{display:flex;flex-wrap:wrap;gap:6px}.dpd-tag{padding:3px 10px;border-radius:6px;font-size:.72rem;font-weight:600}.tag-mrn{background:#3b82f626;color:#93c5fd}.tag-phone{background:#10b98126;color:#6ee7b7}.tag-age{background:#f59e0b26;color:#fcd34d}.tag-gender{background:#ec489926;color:#f9a8d4}.tag-blood{background:#ef444426;color:#fca5a5}.dpd-appt-info{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#ffffff0f;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.08)}.dpd-appt-item{display:flex;flex-direction:column;gap:3px}.dpd-appt-label{font-size:.68rem;text-transform:uppercase;color:#94a3b8;font-weight:700;letter-spacing:.04em}.dpd-appt-value{font-size:.88rem;font-weight:600;color:#e2e8f0}.dpd-appt-status{padding:3px 10px;border-radius:6px;font-size:.78rem;font-weight:700;text-transform:capitalize;display:inline-block;width:fit-content}.status-confirmed{background:#22c55e33;color:#86efac}.status-completed{background:#3b82f633;color:#93c5fd}.status-cancelled{background:#ef444433;color:#fca5a5}.status-pending{background:#f59e0b33;color:#fcd34d}.dpd-tabs-container{display:flex;align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;position:relative;flex-shrink:0}.dpd-tab-scroll-btn{background:#fff;border:none;color:#64748b;font-size:1.4rem;font-weight:700;cursor:pointer;padding:0 16px;height:100%;z-index:10;transition:all .2s;-webkit-user-select:none;user-select:none;box-shadow:0 0 10px #0000000d}.dpd-tab-scroll-btn:hover{color:#3b82f6;background:#f8fafc;box-shadow:0 0 15px #3b82f626}.dpd-tabs-nav{display:flex;gap:6px;padding:12px 0;overflow-x:auto;background:#fff;scrollbar-width:none;-ms-overflow-style:none;flex:1;scroll-behavior:auto;overscroll-behavior-x:contain}.dpd-tabs-nav::-webkit-scrollbar{display:none}.dpd-tab-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;border:none;background:#f1f5f9;border-radius:8px;cursor:pointer;font-weight:600;font-size:.85rem;color:#64748b;transition:all .25s;white-space:nowrap;font-family:inherit;flex-shrink:0}.dpd-tab-btn:hover{background:#e2e8f0;color:#334155}.dpd-tab-btn.active{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;box-shadow:0 2px 8px #3b82f64d}.dpd-tab-icon{font-size:.9rem}.dpd-tab-label{font-size:.78rem}.dpd-tab-content{flex:1;overflow-y:auto;padding:20px 24px;overscroll-behavior:contain;height:100%;min-height:0}.dpd-tab-content::-webkit-scrollbar{width:8px}.dpd-tab-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.dpd-tab-content::-webkit-scrollbar-thumb{background:#94a3b866;border-radius:4px}.dpd-tab-content::-webkit-scrollbar-thumb:hover{background:#94a3b8cc}.dpd-tab-panel{animation:fadeSlide .3s ease-out}@keyframes fadeSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dpd-panel-title{margin:0 0 20px;font-size:1.25rem;font-weight:800;color:#0f172a;border-bottom:2px solid #e2e8f0;padding-bottom:8px}.dpd-overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.dpd-ov-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;transition:all .2s}.dpd-ov-card:hover{border-color:#93c5fd;box-shadow:0 2px 8px #3b82f614}.dpd-ov-label{display:block;font-size:.7rem;text-transform:uppercase;color:#94a3b8;font-weight:700;letter-spacing:.04em;margin-bottom:4px}.dpd-ov-value{display:block;font-size:.92rem;font-weight:600;color:#1e293b;word-break:break-word}.dpd-partner-quick{margin-top:8px;padding:16px;background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-radius:14px;border:1px solid #bbf7d0}.dpd-partner-quick h4{margin:0 0 14px;font-size:.95rem;color:#166534}.dpd-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px}.dpd-grid-4{grid-template-columns:repeat(4,1fr)}.dpd-field{display:flex;flex-direction:column;gap:6px}.dpd-field label{font-size:.8rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.03em}.dpd-field input,.dpd-field select{padding:10px 14px;border:2px solid #e2e8f0;border-radius:10px;font-size:.92rem;color:#1e293b;font-family:inherit;transition:all .2s;background:#fff}.dpd-field input:focus,.dpd-field select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dpd-readonly{background:#f8fafc!important;color:#64748b!important;cursor:not-allowed}.dpd-field-full{margin-bottom:16px}.dpd-field-full label{display:block;font-size:.8rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px}.dpd-field-full input{width:100%;padding:10px 14px;border:2px solid #e2e8f0;border-radius:10px;font-size:.92rem;color:#1e293b;font-family:inherit;transition:all .2s;box-sizing:border-box}.dpd-field-full input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dpd-field-full textarea{width:100%;min-height:80px;padding:12px 14px;border:2px solid #e2e8f0;border-radius:12px;font-size:.92rem;color:#1e293b;font-family:inherit;resize:vertical;transition:all .2s;box-sizing:border-box;background:#fff}.dpd-field-full textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dpd-sub-title{margin:20px 0 14px;font-size:.95rem;font-weight:700;color:#334155;padding-top:16px;border-top:1px solid #e2e8f0}.dpd-save-section{width:100%;padding:12px;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:700;font-size:.9rem;font-family:inherit;transition:all .3s;box-shadow:0 4px 12px #3b82f640;margin-top:8px}.dpd-save-section:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f659}.dpd-save-section:disabled{opacity:.6;cursor:not-allowed;transform:none}.dpd-empty-hist{text-align:center;padding:40px;color:#94a3b8;border:2px dashed #e2e8f0;border-radius:14px}.dpd-history-list{display:flex;flex-direction:column;gap:12px}.dpd-history-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px 18px;transition:all .2s;position:relative}.dpd-history-card:hover{border-color:#93c5fd;box-shadow:0 2px 10px #3b82f614}.dpd-history-card.current{border-color:#3b82f6;background:linear-gradient(135deg,#eff6ff,#f0f4ff);border-width:2px}.dpd-hist-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.dpd-hist-date{font-weight:700;font-size:.92rem;color:#1e40af}.dpd-hist-status{padding:3px 10px;border-radius:6px;font-size:.72rem;font-weight:700;text-transform:capitalize}.dpd-hist-diagnosis{font-size:.9rem;color:#334155;margin-bottom:6px}.dpd-hist-notes{font-size:.85rem;color:#64748b;margin-bottom:6px}.dpd-hist-service{display:inline-block;padding:3px 8px;background:#f1f5f9;border-radius:6px;font-size:.75rem;color:#475569;font-weight:600}.dpd-hist-file{margin-top:6px;font-size:.85rem}.dpd-hist-file a{color:#2563eb;text-decoration:none;font-weight:600}.dpd-hist-file a:hover{text-decoration:underline}.dpd-current-badge{display:inline-block;margin-top:8px;padding:3px 10px;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border-radius:6px;font-size:.72rem;font-weight:700}.dpd-right{display:flex;flex-direction:column;background:#fff;overflow:hidden;height:100%;min-height:0}.dpd-right-header{padding:20px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#fafbff,#f5f3ff);flex-shrink:0}.dpd-right-header h2{margin:0;font-size:1.2rem;font-weight:800;color:#0f172a}.dpd-right-subtitle{font-size:.82rem;color:#94a3b8;margin:4px 0 0}.dpd-session-status{padding:5px 14px;border-radius:8px;font-size:.82rem;font-weight:700;text-transform:capitalize}.dpd-right-content{flex:1;overflow-y:auto;padding:24px 28px;display:flex;flex-direction:column;gap:20px;overscroll-behavior:contain;height:100%;min-height:0}.dpd-right-content::-webkit-scrollbar{width:8px}.dpd-right-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.dpd-right-content::-webkit-scrollbar-thumb{background:#94a3b866;border-radius:4px}.dpd-right-content::-webkit-scrollbar-thumb:hover{background:#94a3b8cc}.dpd-session-field{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.dpd-session-field label{font-size:.85rem;font-weight:700;color:#334155}.dpd-session-field input{padding:12px 16px;border:2px solid #e2e8f0;border-radius:12px;font-size:.95rem;color:#1e293b;font-family:inherit;transition:all .2s}.dpd-session-field input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f614}.dpd-diag-input{font-weight:700!important;font-size:1.05rem!important;border-color:#bfdbfe!important;background:#eff6ff!important}.dpd-diag-input:focus{background:#fff!important}.dpd-notes-field{display:flex;flex-direction:column;flex-shrink:0}.dpd-notes-textarea{flex:1;min-height:140px;padding:16px;border:2px solid #e2e8f0;border-radius:12px;font-size:.95rem;color:#1e293b;font-family:inherit;resize:vertical;transition:all .2s;line-height:1.6}.dpd-notes-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f614}.dpd-prescription-textarea{min-height:100px;padding:14px 16px;border:2px solid #e2e8f0;border-radius:12px;font-size:.95rem;color:#1e293b;font-family:inherit;resize:vertical;transition:all .2s;background:#fefce8;border-color:#fde68a}.dpd-prescription-textarea:focus{outline:none;border-color:#f59e0b;background:#fff;box-shadow:0 0 0 4px #f59e0b14}.dpd-right-footer{padding:16px 20px;display:flex;gap:12px;border-top:1px solid #e2e8f0;background:#fafbff;flex-wrap:wrap;flex-shrink:0}.dpd-btn-save-draft{padding:14px 24px;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;font-weight:700;font-size:.9rem;color:#475569;font-family:inherit;transition:all .2s}.dpd-btn-save-draft:hover{border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.dpd-btn-save-draft:disabled{opacity:.6;cursor:not-allowed}.dpd-btn-finish{flex:1;padding:14px 24px;background:linear-gradient(135deg,#059669,#10b981);color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:700;font-size:.92rem;font-family:inherit;transition:all .3s;box-shadow:0 4px 15px #0596694d}.dpd-btn-finish:hover{transform:translateY(-2px);box-shadow:0 8px 25px #05966966}.dpd-btn-finish:disabled{opacity:.6;cursor:not-allowed;transform:none}@media(max-width:1024px){.dpd-container{display:flex;flex-direction:column;height:auto;min-height:100vh}.dpd-left{width:100%;border-right:none;border-bottom:2px solid #e2e8f0}.dpd-right{width:100%}.dpd-overview-grid{grid-template-columns:repeat(2,1fr)}.dpd-form-grid{grid-template-columns:1fr}.dpd-grid-4,.dpd-appt-info{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.dpd-patient-header{padding:16px 20px}.dpd-tabs-nav{padding:10px 12px}.dpd-tab-content{padding:16px 20px}.dpd-right-content{padding:20px}.dpd-right-footer{flex-direction:column;padding:12px 20px}.dpd-overview-grid{grid-template-columns:1fr}.dpd-grid-4{grid-template-columns:1fr 1fr}}.upp-container{padding:24px;background-color:#f1f5f9;min-height:calc(100vh - 60px);font-family:Inter,sans-serif}.upp-header-card{background:#fff;padding:24px;border-radius:12px;box-shadow:0 4px 6px -1px #0000000d;display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.upp-identity{display:flex;align-items:center;gap:20px}.upp-avatar{width:80px;height:80px;border-radius:50%;background:#4f46e5;color:#fff;font-size:32px;font-weight:700;display:flex;align-items:center;justify-content:center;text-shadow:0 2px 4px rgba(0,0,0,.2)}.upp-info h1{margin:0 0 8px;color:#1e293b;font-size:24px}.upp-tags{display:flex;flex-wrap:wrap;gap:10px}.upp-tag{background:#f1f5f9;padding:6px 12px;border-radius:20px;font-size:13px;color:#475569;font-weight:500}.upp-actions{display:flex;gap:12px}.upp-btn-download{background-color:#22c55e;color:#fff;border:none;padding:10px 18px;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s}.upp-btn-download:hover{background-color:#16a34a}.upp-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:24px}.upp-metric-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 4px #00000005;display:flex;flex-direction:column}.upp-metric-card span:last-child{font-size:24px;font-weight:700;color:#0f172a;margin-top:8px}.upp-metric-label{font-size:14px;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.upp-content-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}.upp-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 4px #00000005}.upp-section h3{margin:0 0 20px;color:#0f172a;border-bottom:2px solid #f1f5f9;padding-bottom:12px}.upp-timeline-item{padding:16px;border-left:3px solid #cbd5e1;margin-bottom:16px;background:#f8fafc;border-radius:0 8px 8px 0;position:relative;transition:border-color .2s,background .2s}.upp-timeline-item:hover{background:#f1f5f9}.upp-timeline-item.type-appointment{border-left-color:#3b82f6}.upp-timeline-item.type-clinicalVisit{border-left-color:#8b5cf6}.upp-timeline-item.type-labReport{border-left-color:#f59e0b}.upp-timeline-item.type-pharmacyOrder{border-left-color:#ef4444}.upp-tl-header{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}.upp-tl-date{font-weight:600;color:#475569}.upp-tl-badge{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase}.badge-appointment{background:#dcece8;color:#2563eb}.badge-clinicalVisit{background:#ede9fe;color:#7c3aed}.badge-labReport{background:#fef3c7;color:#d97706}.badge-pharmacyOrder{background:#fee2e2;color:#dc2626}.upp-tl-body{font-size:14px;color:#334155;line-height:1.5}.upp-finance-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px dashed #e2e8f0;font-size:14px}.upp-finance-row:last-child{border-bottom:none}.upp-finance-status{padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600}.status-paid{background:#dcfce7;color:#166534}.status-pending{background:#fef9c3;color:#854d0e}@media(max-width:1024px){.upp-content-grid{grid-template-columns:1fr}}.roles-page-container{padding:32px 40px;background:#f8fafc;min-height:100vh;font-family:Outfit,Inter,sans-serif;color:#1e293b}.roles-header{margin-bottom:40px;position:relative;z-index:10}.roles-header h1{font-size:2.2rem;color:#0f172a;margin:0 0 8px;font-weight:800;letter-spacing:-.03em}.roles-header p{color:#64748b;font-size:1.1rem;max-width:600px}.roles-grid{display:grid;grid-template-columns:1.1fr 1.4fr;gap:32px;align-items:start}@media(max-width:1024px){.roles-grid{grid-template-columns:1fr}}.role-card{background:#fff;border-radius:24px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;border:1px solid #e2e8f0;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.role-card.create-card{position:sticky;top:32px}.role-card:hover{box-shadow:0 20px 25px -5px #0000000d,0 10px 10px -5px #00000003}.card-header{padding:24px 32px;background:#fff;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center}.card-header h2{font-size:1.25rem;color:#1e293b;margin:0;font-weight:700}.form-group{padding:24px 32px 0;margin-bottom:24px}.form-group label{display:block;font-weight:600;margin-bottom:10px;color:#334155;font-size:.9rem}.form-group input[type=text]{width:100%;padding:14px 18px;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .2s ease;color:#0f172a;box-sizing:border-box}.form-group input[type=text]:focus{outline:none;background:#fff;border-color:#6366f1;box-shadow:0 0 0 4px #6366f11a}.permissions-section{margin:24px 32px 32px;background:#f8fafc;padding:24px;border-radius:16px;border:1px solid #e2e8f0}.section-label{display:block;font-weight:700;margin-bottom:20px;color:#475569;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.permissions-list{max-height:400px;overflow-y:auto;padding-right:8px}.permissions-list::-webkit-scrollbar-track{background:transparent}.permissions-list::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:20px}.perm-category{margin-bottom:24px}.category-title{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;color:#64748b;margin-bottom:12px;font-weight:700;display:flex;align-items:center;gap:8px}.category-title:after{content:"";height:1px;flex:1;background:#e2e8f0}.perm-item{display:flex;align-items:center;padding:10px 14px;cursor:pointer;transition:all .2s ease;border-radius:10px;margin-bottom:4px;border:1px solid transparent}.perm-item:hover{background:#fff;border-color:#e2e8f0;transform:translate(4px)}.perm-item input{width:18px;height:18px;margin-right:14px;cursor:pointer;accent-color:#6366f1}.perm-text{font-size:.95rem;color:#334155;font-weight:500}.btn-create{width:calc(100% - 64px);margin:0 32px 32px;padding:16px;background:linear-gradient(135deg,#4f46e5,#4338ca);color:#fff;border:none;border-radius:14px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #4f46e54d}.btn-create:hover{transform:translateY(-2px);box-shadow:0 8px 16px #4f46e566}.btn-create:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed;transform:none}.role-item{padding:24px 32px;border-bottom:1px solid #f1f5f9;transition:background .2s;display:flex;justify-content:space-between;gap:20px}.role-title-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.role-item h3{font-size:1.15rem;margin:0;color:#1e293b;font-weight:700}.role-desc{color:#64748b;font-size:.95rem;margin-bottom:12px}.perm-badge{font-size:.75rem;background:#e0e7ff;color:#4338ca;padding:4px 10px;border-radius:20px;font-weight:600}.role-tags{display:flex;flex-wrap:wrap;gap:8px}.tag{font-size:.75rem;background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;padding:4px 10px;border-radius:8px;font-weight:500}.tag.more{background:#f8fafc;color:#64748b;border-style:dashed}.btn-icon-delete{width:40px;height:40px;border-radius:10px;border:none;background:#f1f5f9;color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:1.2rem}.btn-icon-delete:hover{background:#fee2e2;color:#ef4444;transform:scale(1.1)}.auto-nav-preview{gap:10px}.auto-nav-item{background:#fff;border-radius:12px;box-shadow:0 2px 4px #00000005}.auto-nav-default{background:#10b981}.status-message{margin:0 32px 24px;padding:16px;border-radius:12px;display:flex;align-items:center;gap:12px;font-weight:600}.roles-header{margin-bottom:28px}.roles-header h1{font-size:1.8rem;color:#1e293b;margin:0 0 6px;font-weight:700;letter-spacing:-.02em}.roles-header p{color:#64748b;font-size:.95rem}.roles-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:900px){.roles-grid{grid-template-columns:1fr}}.role-card{background:#fff;border-radius:20px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;padding:0;border:1px solid #E2E8F0;transition:all .3s ease;overflow:hidden}.role-card:hover{box-shadow:0 10px 15px -3px #00000014;border-color:#c7d2fe}.card-header{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-bottom:1px solid #D1D5DB}.card-header h2{font-size:1.2rem;color:#4338ca;margin:0;font-weight:700;text-shadow:none}.role-count{background:#fff;padding:5px 14px;border-radius:20px;font-size:.82rem;color:#4f46e5;font-weight:700;border:1px solid #E0E7FF}.roles-page-container .form-group{margin-bottom:20px;padding:0 28px}.roles-page-container .form-group label{display:block;font-weight:600;margin-bottom:8px;color:#475569;font-size:.9rem}.roles-page-container .form-group:first-of-type{padding-top:24px}.roles-page-container .form-group input[type=text]{width:100%;padding:12px 16px;background:#fff;border:1px solid #CBD5E1;border-radius:12px;font-size:.95rem;transition:all .2s ease;color:#1e293b;box-sizing:border-box}.roles-page-container .form-group input[type=text]::placeholder{color:#94a3b8}.roles-page-container .form-group input[type=text]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126;background:#fff}.permissions-section{margin:20px 28px 28px;background:#f8fafc;padding:18px;border-radius:14px;border:1px solid #E2E8F0}.section-label{display:block;font-weight:700;margin-bottom:16px;color:#475569;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.permissions-list{max-height:400px;overflow-y:auto;padding-right:6px}.permissions-list::-webkit-scrollbar{width:6px}.permissions-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.perm-category{margin-bottom:20px}.category-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.8px;color:#64748b;margin-bottom:10px;border-bottom:1px solid #E2E8F0;padding-bottom:6px;font-weight:600}.perm-item{display:flex;align-items:center;padding:8px 10px;cursor:pointer;transition:background .15s ease;border-radius:8px}.perm-item:hover{background:#eef2ff}.perm-item input{width:16px;height:16px;margin-right:12px;cursor:pointer;accent-color:#4F46E5}.perm-text{font-size:.92rem;color:#334155;font-weight:500}.btn-create{width:calc(100% - 56px);margin:20px 28px 28px;padding:14px;background:linear-gradient(135deg,#4f46e5,#4338ca);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 6px -1px #4f46e533}.btn-create:hover{transform:translateY(-1px);box-shadow:0 8px 12px -2px #4f46e54d}.btn-create:active{transform:translateY(0)}.btn-create:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed;transform:none;box-shadow:none}.role-item{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 28px;border-bottom:1px solid #F1F5F9;transition:all .2s ease;border-radius:0;margin-bottom:0}.role-item:last-child{border-bottom:none}.role-item:hover{background:#f8fafc}.role-title-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}.role-item h3{font-size:1.1rem;margin:0;color:#1e293b;font-weight:600}.perm-badge{font-size:.72rem;background:#eef2ff;color:#4f46e5;padding:3px 10px;border-radius:12px;font-weight:600;border:1px solid #E0E7FF}.role-desc{font-size:.88rem;color:#64748b;margin:0 0 10px}.role-tags{display:flex;flex-wrap:wrap;gap:6px}.tag{font-size:.72rem;background:#f1f5f9;border:1px solid #E2E8F0;color:#64748b;padding:3px 10px;border-radius:6px;font-weight:500}.tag.more{background:#eef2ff;color:#4338ca;border-color:#e0e7ff}.btn-icon-delete{background:none;border:none;font-size:1.2rem;cursor:pointer;opacity:.5;transition:all .2s ease;padding:6px;border-radius:8px;color:#94a3b8}.btn-icon-delete:hover{opacity:1;color:#ef4444;background:#fef2f2}.status-message{padding:12px 16px;border-radius:12px;margin-bottom:16px;font-size:.9rem;font-weight:600}.status-message.success{background:#ecfdf5;color:#059669;border:1px solid #10B981}.status-message.error{background:#fef2f2;color:#dc2626;border:1px solid #EF4444}.auto-nav-preview{display:flex;flex-direction:column;gap:8px}.auto-nav-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#f8fafc;border:1px solid #E2E8F0;border-radius:10px;transition:all .2s ease}.auto-nav-item:hover{background:#f1f5f9;border-color:#cbd5e1}.auto-nav-label{font-weight:600;color:#334155;font-size:.92rem;min-width:120px}.auto-nav-path{font-family:Consolas,Monaco,monospace;font-size:.82rem;color:#64748b;background:#e2e8f0;padding:3px 8px;border-radius:6px;flex:1}.auto-nav-default{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#4f46e5,#4338ca);color:#fff;padding:3px 10px;border-radius:10px;white-space:nowrap}.auto-nav-empty{padding:20px;text-align:center;color:#94a3b8;font-size:.88rem;background:#f8fafc;border:1px dashed #CBD5E1;border-radius:10px;font-style:italic}.admin-main-dashboard{min-height:100vh;background:var(--surface-1);padding:32px;font-family:var(--font-primary);color:var(--gray-800)}.admin-main-dashboard .dash-container{max-width:1280px;margin:0 auto}.admin-main-dashboard .dash-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;gap:20px}.admin-main-dashboard .dash-header-left h1{font-size:1.75rem;font-weight:800;color:var(--gray-900);margin:0;letter-spacing:-.03em;line-height:1.2}.admin-main-dashboard .dash-header-left h1 span{background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.admin-main-dashboard .dash-header-left p{color:var(--gray-500);margin:6px 0 0;font-size:.875rem;font-weight:400}.admin-main-dashboard .dash-header-actions{display:flex;gap:10px;flex-shrink:0;align-items:center}.admin-main-dashboard .btn-primary{background:var(--gradient-brand);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;font-family:var(--font-primary);box-shadow:var(--shadow-brand);transition:var(--transition-base);display:inline-flex;align-items:center;gap:6px}.admin-main-dashboard .btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px #14b8a64d}.admin-main-dashboard .btn-outline{background:var(--surface-0);border:1.5px solid var(--gray-200);color:var(--gray-600);padding:10px 20px;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;font-family:var(--font-primary);transition:var(--transition-fast)}.admin-main-dashboard .btn-outline:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-bg)}.admin-main-dashboard .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:36px}.admin-main-dashboard .stat-card{background:var(--surface-0);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:24px;position:relative;overflow:hidden;transition:var(--transition-base);cursor:default}.admin-main-dashboard .stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:transparent}.admin-main-dashboard .stat-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.admin-main-dashboard .stat-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:22px}.admin-main-dashboard .stat-trend{font-size:.75rem;font-weight:700;padding:3px 8px;border-radius:var(--radius-pill);background:var(--success-bg);color:var(--success)}.admin-main-dashboard .stat-value{font-size:2.2rem;font-weight:900;margin:0 0 4px;letter-spacing:-.04em;color:var(--gray-900);line-height:1}.admin-main-dashboard .stat-label{color:var(--gray-500);font-size:.8rem;font-weight:600;margin:0;text-transform:uppercase;letter-spacing:.06em}.admin-main-dashboard .stat-accent{position:absolute;bottom:0;left:0;right:0;height:3px;border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.admin-main-dashboard .section-label{display:flex;align-items:center;gap:10px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-400);margin-bottom:18px}.admin-main-dashboard .section-label:after{content:"";flex:1;height:1px;background:var(--gray-200)}.admin-main-dashboard .actions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:40px}.admin-main-dashboard .action-card{background:var(--surface-0);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:20px 22px;cursor:pointer;transition:var(--transition-base);display:flex;align-items:center;gap:16px;position:relative;overflow:hidden}.admin-main-dashboard .action-card:before{content:"";position:absolute;inset:0;background:var(--gradient-brand);opacity:0;transition:opacity .25s;border-radius:inherit}.admin-main-dashboard .action-card:hover{border-color:transparent;box-shadow:var(--shadow-md);transform:translateY(-3px)}.admin-main-dashboard .action-card:hover:before{opacity:.04}.admin-main-dashboard .action-icon{width:46px;height:46px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.admin-main-dashboard .action-content{flex:1;min-width:0}.admin-main-dashboard .action-content h3{color:var(--gray-900);font-size:.925rem;font-weight:700;margin:0 0 3px;letter-spacing:-.01em}.admin-main-dashboard .action-content p{color:var(--gray-500);font-size:.78rem;margin:0;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-main-dashboard .action-card-arrow{color:var(--gray-300);font-size:1rem;font-weight:700;transition:var(--transition-fast);flex-shrink:0}.admin-main-dashboard .action-card:hover .action-card-arrow{color:var(--brand-500);transform:translate(4px)}.admin-main-dashboard .loading-pulse{color:var(--gray-300);animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-100) 50%,var(--gray-200) 75%);background-size:200% 100%;border-radius:var(--radius-sm);display:inline-block;width:40px;height:24px}@media(max-width:1024px){.admin-main-dashboard .stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.admin-main-dashboard{padding:20px 16px}.admin-main-dashboard .stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.admin-main-dashboard .dash-header{flex-direction:column}.admin-main-dashboard .dash-header-actions{width:100%}}@media(max-width:480px){.admin-main-dashboard .stats-grid{grid-template-columns:1fr 1fr;gap:10px}.admin-main-dashboard .stat-value{font-size:1.8rem}.admin-main-dashboard .actions-grid{grid-template-columns:1fr}}:root{--teal: #1e847f;--ql-bg: #f8fafc;--ql-border: #e2e8f0;--ql-white: #ffffff;--ql-dark: #1e293b}.ql-admin-body{background-color:var(--ql-bg);margin:-32px;color:#334155;min-height:calc(100vh - 72px);font-size:12.5px;display:flex;flex-direction:column}.ql-admin-body>div:first-child{padding:10px 16px!important;background:#fff!important;border-bottom:1px solid var(--ql-border)!important;flex-shrink:0}.ql-admin-body>div:first-child h1{font-size:.95rem!important;margin:0 0 1px!important;font-weight:800;color:var(--ql-dark);line-height:1.3}.ql-admin-body>div:first-child p{font-size:.7rem!important;margin:0!important;color:#94a3b8;line-height:1.3}.gender-navbar{display:flex;gap:4px;background:var(--ql-white);padding:6px 16px;border-bottom:1px solid var(--ql-border);margin-bottom:0;overflow-x:auto;scrollbar-width:none;flex-shrink:0}.gender-navbar::-webkit-scrollbar{display:none}.gender-tab{padding:5px 12px;border-radius:5px;border:1.5px solid transparent;cursor:pointer;font-weight:600;color:#64748b;background:#f1f5f9;font-size:.72rem;transition:all .15s;white-space:nowrap;flex-shrink:0}.gender-tab:hover{background:#e2e8f0;color:#334155}.gender-tab.active{background:#1e847f14;color:var(--teal);border-color:var(--teal)}.ql-admin-container{display:grid;grid-template-columns:200px 1fr;gap:12px;padding:12px 16px;flex:1;min-height:0;overflow:hidden}.ql-admin-sidebar{overflow-y:auto;padding-right:2px;min-height:0}.ql-admin-sidebar::-webkit-scrollbar{width:3px}.ql-admin-sidebar::-webkit-scrollbar-thumb{background:var(--teal);border-radius:10px}.sidebar-item{background:var(--ql-white);padding:7px 10px;margin-bottom:4px;border-radius:6px;border:1px solid var(--ql-border);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .12s ease;font-size:.75rem;font-weight:500}.sidebar-item:hover{border-color:#94a3b8;background:#f8fafc}.sidebar-item.active{border:1.5px solid var(--teal);background-color:#1e847f0f;font-weight:700;color:var(--teal)}.sidebar-item .cat-actions{opacity:0;transition:opacity .12s}.sidebar-item:hover .cat-actions{opacity:1}.sidebar-item span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-category-box{display:flex;flex-direction:column;gap:6px}.input-card{background:var(--ql-white);padding:8px;border-radius:6px;border:1px dashed var(--teal)}#new-cat-input{width:100%;padding:6px 8px;box-sizing:border-box;border:1px solid var(--ql-border);border-radius:5px;font-size:.75rem;font-family:inherit}#new-cat-input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 2px #1e847f1a}.add-category-box .btn-action{width:100%;font-size:.72rem;padding:6px}.ql-admin-main{background:var(--ql-white);padding:14px 16px;border-radius:10px;border:1px solid var(--ql-border);overflow-y:auto;min-height:0}.ql-admin-main::-webkit-scrollbar{width:4px}.ql-admin-main::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.content-header{border-bottom:1px solid #f0f0f0;margin-bottom:12px;padding-bottom:8px;display:flex;justify-content:space-between;align-items:center;gap:12px}.content-header .btn-action{flex:none;width:auto}.content-header h2{color:var(--teal);font-size:.88rem;font-weight:800;margin:0;letter-spacing:.02em}.question-row{background:#fff;border:1px solid var(--ql-border);padding:10px 12px;border-radius:8px;margin-bottom:8px;transition:all .12s ease;position:relative}.question-row:hover{border-color:#93c5fd;box-shadow:0 1px 4px #3b82f60f}.question-row strong{display:block;margin-bottom:6px;color:var(--ql-dark);font-size:.78rem;padding-right:90px}.btn-delete-q{position:absolute;top:8px;right:8px;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:3px;padding:2px 6px;font-size:.65rem;cursor:pointer;font-weight:600}.btn-delete-q:hover{background:#ef4444;color:#fff;border-color:#ef4444}.btn-edit-q{background:#eff6ff!important;color:#2563eb!important;border:1px solid #bfdbfe!important;border-radius:3px!important;padding:2px 6px!important;font-size:.65rem!important;cursor:pointer!important;font-weight:600!important}.btn-edit-q:hover{background:#3b82f6!important;color:#fff!important}.input-group{display:flex;gap:6px;margin-top:6px}.input-group input:not([type=checkbox]),.input-group select,.input-group textarea{width:100%;padding:6px 8px;border:1px solid var(--ql-border);border-radius:5px;font-size:.75rem;font-family:inherit;outline-color:var(--teal);box-sizing:border-box;background:#f9fafb;color:#64748b}.input-group textarea{resize:vertical}.checkbox-box{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:4px;width:100%}.checkbox-box label{display:flex;align-items:center;gap:6px;cursor:default;font-size:.75rem;padding:4px 8px;background:#f8fafc;border-radius:4px;border:1px solid #e2e8f0}.checkbox-box input[type=checkbox]{width:13px;height:13px;margin:0;flex-shrink:0;accent-color:var(--teal)}.complex-group{display:flex;flex-direction:column;gap:4px;width:100%}.complex-row{display:flex;justify-content:space-between;align-items:center;background:#f9fafb;border:1px solid var(--ql-border);padding:4px 10px;border-radius:5px;font-size:.75rem}.complex-row label{display:flex;align-items:center;gap:6px;flex:1;cursor:default}.complex-row input:not([type=checkbox]){width:120px;min-width:100px;padding:4px 6px;margin-left:8px;border:1px solid #cbd5e1;border-radius:3px;font-size:.72rem}.extra-field{margin-top:8px;padding-top:8px;border-top:1px dashed var(--teal);display:flex;flex-direction:column;gap:3px}.extra-field span{font-weight:700;font-size:.7rem;color:var(--teal)}.btn-save{background:var(--teal);color:#fff;padding:6px 14px;border:none;border-radius:6px;cursor:pointer;font-weight:700;font-size:.75rem;font-family:inherit;transition:all .15s;white-space:nowrap;flex:none;width:fit-content}.btn-save:disabled{opacity:.5;cursor:not-allowed}.btn-action{padding:6px 10px;border-radius:5px;cursor:pointer;border:none;color:#fff;font-weight:700;font-size:.75rem;font-family:inherit;transition:all .12s;flex:none;width:fit-content;white-space:nowrap}.btn-action:hover{opacity:.9}.bg-teal{background:var(--teal)}.bg-dark{background:var(--ql-dark)}.modal-overlay{position:fixed;inset:0;background:#0006;z-index:1000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-content{background:#fff;padding:16px 18px;border-radius:12px;width:480px;max-width:90vw;display:flex;flex-direction:column;gap:10px;max-height:80vh;overflow-y:auto;box-shadow:0 16px 32px #00000026}.modal-content h3{font-size:.9rem!important;font-weight:800!important}.modal-input{width:100%;padding:6px 8px;border:1.5px solid #e2e8f0;border-radius:5px;font-size:.78rem;box-sizing:border-box;font-family:inherit}.modal-input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 2px #1e847f1a}.modal-label{font-weight:700;font-size:.7rem;color:#334155;margin-bottom:3px;display:block;text-transform:uppercase;letter-spacing:.03em}.modal-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}.modal-btn{padding:6px 14px;border:none;border-radius:6px;font-weight:700;cursor:pointer;font-size:.75rem;font-family:inherit}.modal-btn-cancel{background:#f1f5f9;color:#475569}.modal-btn-cancel:hover{background:#e2e8f0}.modal-btn-submit{background:var(--teal);color:#fff}.modal-btn-submit:hover{opacity:.9}@media(max-width:900px){.ql-admin-container{grid-template-columns:1fr}.ql-admin-sidebar{max-height:200px}}.test-pkg-tabs{display:flex;gap:4px;background:#f1f5f999;padding:6px;border-radius:16px;margin-bottom:32px;border:1px solid rgba(226,232,240,.6)}.test-pkg-tab{flex:1;padding:14px 24px;border:none;background:transparent;border-radius:12px;font-size:1rem;font-weight:600;color:#64748b;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:10px}.test-pkg-tab:hover{color:#0f172a;background:#ffffff80}.test-pkg-tab.active{background:#fff;color:#0d9488;box-shadow:0 4px 12px #0000000f}.test-pkg-tab .tab-count{background:#0d94881a;color:#0d9488;padding:2px 10px;border-radius:20px;font-size:.8rem;font-weight:700}.test-pkg-tab.active .tab-count{background:#0d948826}.test-pkg-toolbar{display:flex;gap:12px;margin-bottom:24px;align-items:center;flex-wrap:wrap}.test-pkg-search{flex:1;min-width:240px;position:relative}.test-pkg-search input{width:100%;padding:12px 16px 12px 44px;border-radius:12px;border:1px solid rgba(203,213,225,.8);background:#fff;font-size:.95rem;color:#0f172a;transition:all .2s;box-sizing:border-box}.test-pkg-search input:focus{border-color:#0d9488;box-shadow:0 0 0 4px #0d94881a;outline:none}.test-pkg-search .search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:1.1rem;pointer-events:none}.test-pkg-filter-select{padding:12px 16px;border-radius:12px;border:1px solid rgba(203,213,225,.8);background:#fff;font-size:.95rem;color:#0f172a;cursor:pointer;min-width:160px}.test-pkg-filter-select:focus{border-color:#0d9488;box-shadow:0 0 0 4px #0d94881a;outline:none}.packages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px;margin-top:16px}.package-card{background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(226,232,240,.6);padding:28px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.package-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#0d9488,#2dd4bf);opacity:0;transition:opacity .3s}.package-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px #00000014}.package-card:hover:before{opacity:1}.package-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.package-card-header h3{font-size:1.2rem;font-weight:700;color:#0f172a;margin:0 0 4px}.package-card-header .package-code{font-size:.85rem;color:#64748b;font-weight:500}.package-status{padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.package-status.active{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.package-status.inactive{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.package-description{color:#64748b;font-size:.9rem;margin-bottom:16px;line-height:1.5}.package-price-row{display:flex;align-items:center;gap:12px;margin-bottom:16px}.package-price{font-size:1.4rem;font-weight:800;color:#0d9488}.package-original-price{font-size:1rem;color:#94a3b8;text-decoration:line-through;font-weight:500}.package-discount-badge{background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#78350f;padding:3px 10px;border-radius:8px;font-size:.75rem;font-weight:700}.package-tests-list{margin-top:12px;border-top:1px solid rgba(226,232,240,.6);padding-top:12px}.package-tests-list h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:700;margin:0 0 10px}.test-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:#0d948814;color:#0f766e;border-radius:20px;font-size:.82rem;font-weight:600;margin:3px 4px 3px 0;border:1px solid rgba(13,148,136,.15)}.test-chip .test-chip-price{color:#94a3b8;font-weight:400;font-size:.78rem}.package-card-actions{display:flex;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(226,232,240,.6)}.test-selection-section{margin-top:8px}.test-selection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.test-selection-header .selected-count{font-size:.85rem;color:#0d9488;font-weight:600;background:#0d948814;padding:4px 12px;border-radius:20px}.test-checkboxes{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;max-height:320px;overflow-y:auto;padding:4px}.test-checkboxes::-webkit-scrollbar{width:6px}.test-checkboxes::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.test-checkboxes::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.test-checkbox-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;border:1px solid rgba(226,232,240,.6);background:#fff9;cursor:pointer;transition:all .2s}.test-checkbox-item:hover{background:#0d94880a;border-color:#0d948833}.test-checkbox-item.checked{background:#0d94880f;border-color:#0d94884d}.test-checkbox-item input[type=checkbox]{width:18px;height:18px;accent-color:#0d9488;cursor:pointer;flex-shrink:0}.test-checkbox-item .test-info{flex:1;min-width:0}.test-checkbox-item .test-name{font-weight:600;color:#0f172a;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.test-checkbox-item .test-meta{font-size:.78rem;color:#94a3b8;margin-top:2px}.price-preview{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,#0d94880f,#2dd4bf0f);border-radius:12px;border:1px solid rgba(13,148,136,.15);margin-top:12px}.price-preview .price-label{font-size:.9rem;color:#64748b;font-weight:600}.price-preview .price-value{font-size:1.4rem;font-weight:800;color:#0d9488}.empty-state{text-align:center;padding:60px 20px;color:#94a3b8}.empty-state .empty-icon{font-size:3rem;margin-bottom:16px;display:block}.empty-state h3{font-size:1.3rem;color:#64748b;margin:0 0 8px;font-weight:700}.empty-state p{font-size:.95rem;max-width:400px;margin:0 auto;line-height:1.6}.test-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:28px}.test-stat-mini{background:#ffffffbf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:20px;border:1px solid rgba(226,232,240,.6);box-shadow:0 2px 8px #00000008;transition:transform .2s}.test-stat-mini:hover{transform:translateY(-2px)}.test-stat-mini .stat-value{font-size:1.8rem;font-weight:800;color:#0f172a;margin:0 0 4px}.test-stat-mini .stat-label{font-size:.85rem;color:#64748b;font-weight:500}.test-stat-mini .stat-icon{font-size:1.6rem;margin-bottom:10px;display:block}.category-badge{display:inline-flex;padding:3px 10px;border-radius:8px;font-size:.78rem;font-weight:600;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}@media(max-width:768px){.packages-grid{grid-template-columns:1fr}.test-pkg-tabs,.test-pkg-toolbar{flex-direction:column}.test-checkboxes{grid-template-columns:1fr}.test-stats-row{grid-template-columns:repeat(2,1fr)}}.hbe-overlay{position:fixed;inset:0;background:#0a1428a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}.hbe-modal{width:100%;max-width:820px;max-height:92vh;background:var(--surface-0, #fff);border-radius:var(--radius-xl, 20px);box-shadow:0 32px 80px #0000004d,0 0 0 1px #ffffff1a;display:flex;flex-direction:column;overflow:hidden;animation:scaleIn .25s cubic-bezier(.34,1.56,.64,1)}.hbe-header{display:flex;align-items:flex-start;justify-content:space-between;padding:28px 32px 20px;background:linear-gradient(135deg,#0a2647,#0f2b5b);position:relative;overflow:hidden}.hbe-header:after{content:"";position:absolute;top:-30px;right:-30px;width:160px;height:160px;background:radial-gradient(circle,rgba(20,184,166,.2),transparent 70%);border-radius:50%;pointer-events:none}.hbe-header-badge{display:inline-block;background:#14b8a633;color:#5eead4;border:1px solid rgba(20,184,166,.3);border-radius:999px;padding:3px 12px;font-size:.65rem;font-weight:800;letter-spacing:.1em;margin-bottom:8px}.hbe-title{font-size:1.5rem;font-weight:900;color:#fff;margin:0 0 4px;letter-spacing:-.03em}.hbe-subtitle{font-size:.85rem;color:#fff9;margin:0}.hbe-subtitle strong{color:#ffffffe6}.hbe-close-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.875rem;flex-shrink:0;transition:background .15s;z-index:1}.hbe-close-btn:hover{background:#fff3}.hbe-preview-banner{background:linear-gradient(90deg,#14b8a6,#6366f1);color:#fff;text-align:center;padding:8px 20px;font-size:.85rem;font-weight:600}.hbe-error,.hbe-success{padding:12px 24px;font-size:.875rem;font-weight:600}.hbe-error{background:#fef2f2;color:#b91c1c;border-bottom:1px solid #fee2e2}.hbe-success{background:#f0fdf4;color:#15803d;border-bottom:1px solid #dcfce7}.hbe-tabs{display:flex;border-bottom:1px solid var(--gray-100, #f1f5f9);padding:0 24px;background:var(--surface-0, #fff);flex-shrink:0}.hbe-tab{padding:14px 20px;border:none;background:none;font-family:var(--font-primary, "Plus Jakarta Sans", sans-serif);font-size:.85rem;font-weight:600;color:var(--gray-500, #64748b);cursor:pointer;position:relative;transition:color .2s;white-space:nowrap}.hbe-tab:hover{color:var(--gray-800, #1e293b)}.hbe-tab-active{color:var(--brand-600, #14b8a6)}.hbe-tab-active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--brand-600, #14b8a6);border-radius:2px 2px 0 0}.hbe-loading{padding:60px;text-align:center;color:var(--gray-400, #94a3b8);font-size:.95rem}.hbe-body{flex:1;overflow-y:auto;padding:0}.hbe-section{padding:28px 32px}.hbe-section-title{font-size:.82rem;font-weight:800;color:var(--gray-500, #64748b);letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.hbe-section-desc{font-size:.85rem;color:var(--gray-400, #94a3b8);margin-bottom:20px;line-height:1.6}.hbe-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.hbe-field{display:flex;flex-direction:column;gap:6px}.hbe-field-label{font-size:.78rem;font-weight:700;color:var(--gray-700, #374151);letter-spacing:.01em}.hbe-field-hint{font-size:.73rem;color:var(--gray-400, #9ca3af);font-weight:400}.hbe-input{padding:10px 14px;border:1.5px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-md, 10px);font-size:.875rem;font-family:var(--font-primary, "Plus Jakarta Sans", sans-serif);color:var(--gray-800, #1e293b);background:var(--surface-1, #f8fafc);transition:border-color .2s,box-shadow .2s;outline:none;width:100%}.hbe-input:focus{border-color:var(--brand-500, #14b8a6);box-shadow:0 0 0 3px #14b8a61a;background:#fff}.hbe-color-field{display:flex;flex-direction:column;gap:6px}.hbe-color-row{display:flex;align-items:center;gap:10px}.hbe-color-swatch{width:44px;height:44px;border:2px solid var(--gray-200, #e2e8f0);border-radius:10px;cursor:pointer;padding:2px;background:none;flex-shrink:0}.hbe-hex-input{flex:1;padding:10px 14px;border:1.5px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-md, 10px);font-size:.875rem;font-family:monospace;color:var(--gray-800, #1e293b);background:var(--surface-1, #f8fafc);outline:none;transition:border-color .2s}.hbe-hex-input:focus{border-color:var(--brand-500, #14b8a6);box-shadow:0 0 0 3px #14b8a61a}.hbe-color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:8px}.hbe-color-preview-card{border-radius:14px;overflow:hidden;border:1.5px solid var(--gray-100, #f1f5f9);margin-bottom:24px;box-shadow:0 4px 20px #0000000f}.hbe-cp-header{padding:14px 20px;display:flex;align-items:center;justify-content:space-between}.hbe-cp-brand{font-size:.9rem;font-weight:800;color:#fff;letter-spacing:-.02em}.hbe-cp-dots{display:flex;gap:6px}.hbe-cp-dots span{width:8px;height:8px;border-radius:50%;display:block}.hbe-cp-body{padding:20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.hbe-cp-card{background:#ffffffb3;border:1px solid rgba(0,0,0,.06);border-radius:10px;padding:12px 20px;text-align:center}.hbe-cp-stat{font-size:1.6rem;font-weight:900}.hbe-cp-btns{display:flex;gap:10px;flex-wrap:wrap}.hbe-cp-btn-primary,.hbe-cp-btn-outline{padding:8px 18px;border-radius:8px;font-size:.8rem;font-weight:700;cursor:default}.hbe-cp-btn-primary{color:#fff}.hbe-cp-btn-outline{background:transparent}.hbe-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hbe-preset-btn{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1.5px solid var(--gray-200, #e2e8f0);border-radius:10px;background:var(--surface-0, #fff);cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .15s;text-align:left;font-family:var(--font-primary, "Plus Jakarta Sans", sans-serif)}.hbe-preset-btn:hover{border-color:var(--pc, #14b8a6);box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.hbe-preset-swatches{display:flex;gap:4px;flex-shrink:0}.hbe-preset-swatches span{width:14px;height:14px;border-radius:50%;display:block;box-shadow:0 1px 3px #00000026}.hbe-preset-name{font-size:.78rem;font-weight:600;color:var(--gray-700, #374151);line-height:1.3}.hbe-logo-preview{display:flex;flex-direction:column;gap:10px;margin-top:8px;margin-bottom:4px}.hbe-preview-label{font-size:.78rem;font-weight:700;color:var(--gray-500, #64748b)}.hbe-logo-box{display:flex;align-items:center;justify-content:center;background:var(--gray-50, #f8fafc);border:1.5px dashed var(--gray-300, #cbd5e1);border-radius:12px;padding:20px;min-height:80px}.hbe-logo-box img{max-height:70px;max-width:260px;object-fit:contain}.hbe-social-preview{display:flex;flex-wrap:wrap;gap:8px;padding:12px 14px;border:1.5px solid var(--gray-200, #e2e8f0);border-radius:10px;min-height:48px;align-items:center;background:var(--surface-1, #f8fafc)}.hbe-social-chip{background:var(--gray-100, #f1f5f9);color:var(--gray-700, #374151);padding:4px 12px;border-radius:999px;font-size:.78rem;font-weight:600;text-decoration:none;transition:background .15s}.hbe-social-chip:hover{background:var(--brand-100, rgba(20, 184, 166, .1));color:var(--brand-600, #14b8a6)}.hbe-footer{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-top:1px solid var(--gray-100, #f1f5f9);background:var(--surface-0, #fff);flex-shrink:0}.hbe-btn-ghost{background:none;border:1.5px solid var(--gray-200, #e2e8f0);color:var(--gray-500, #64748b);padding:10px 18px;border-radius:var(--radius-md, 10px);font-family:var(--font-primary, "Plus Jakarta Sans", sans-serif);font-size:.85rem;font-weight:600;cursor:pointer;transition:border-color .2s,color .2s}.hbe-btn-ghost:hover{border-color:var(--gray-400, #94a3b8);color:var(--gray-700, #374151)}.hbe-btn-preview{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1.5px solid #86efac;color:#15803d;padding:10px 20px;border-radius:var(--radius-md, 10px);font-family:var(--font-primary, "Plus Jakarta Sans", sans-serif);font-size:.875rem;font-weight:700;cursor:pointer;transition:all .2s}.hbe-btn-preview:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #15803d33}.hbe-btn-preview:disabled{opacity:.6;cursor:not-allowed}.hbe-btn-save{background:linear-gradient(135deg,var(--brand-500, #14b8a6),var(--brand-700, #0a2647));border:none;color:#fff;padding:10px 24px;border-radius:var(--radius-md, 10px);font-family:var(--font-primary, "Plus Jakarta Sans", sans-serif);font-size:.875rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #14b8a640}.hbe-btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #14b8a659}.hbe-btn-save:disabled{opacity:.6;cursor:not-allowed;transform:none}@media(max-width:640px){.hbe-modal{max-width:100%;max-height:100vh;border-radius:16px 16px 0 0;align-self:flex-end}.hbe-overlay{align-items:flex-end;padding:0}.hbe-grid-2{grid-template-columns:1fr}.hbe-color-grid,.hbe-presets{grid-template-columns:repeat(2,1fr)}.hbe-section{padding:20px}}.centraladmin-page{min-height:100vh;background:linear-gradient(135deg,#0f172a,#1e3a5f,#0f172a);font-family:Inter,Segoe UI,sans-serif}.centraladmin-container{max-width:1400px;margin:0 auto;padding:24px}.centraladmin-header{display:flex;justify-content:space-between;align-items:flex-start;background:linear-gradient(135deg,#ffffff14,#ffffff08);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:28px 36px;margin-bottom:24px;color:#fff}.brand-badge{display:inline-block;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-size:10px;font-weight:800;letter-spacing:2px;padding:4px 14px;border-radius:20px;margin-bottom:10px;text-transform:uppercase}.centraladmin-header h1{font-size:28px;font-weight:800;color:#fff;margin:0 0 6px}.centraladmin-header p{color:#fff9;margin:0;font-size:14px}.admin-user-info{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.admin-user-info span{color:#fffc;font-size:14px}.logout-btn{background:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.3);padding:8px 20px;border-radius:10px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.logout-btn:hover{background:#ef444459}.back-btn{background:#ffffff1a;color:#fffc;border:1px solid rgba(255,255,255,.2);padding:8px 18px;border-radius:10px;cursor:pointer;font-size:13px;margin-bottom:12px;transition:all .2s}.back-btn:hover{background:#fff3}.ca-tabs{display:flex;gap:8px;margin-bottom:20px}.ca-tab{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#ffffffa6;padding:10px 24px;border-radius:12px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.ca-tab:hover{background:#ffffff1f;color:#fff}.ca-tab-active{background:linear-gradient(135deg,#3b82f6,#6366f1)!important;border-color:transparent!important;color:#fff!important;font-weight:700}.admin-card{background:#fff;border-radius:18px;padding:28px;margin-bottom:20px;box-shadow:0 4px 24px #00000014}.admin-card h2{margin:0 0 4px;font-size:20px;color:#1e293b}.admin-card h3{margin:0 0 16px;font-size:17px;color:#1e293b}.detail-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.staff-breakdown-list{display:flex;flex-direction:column;gap:10px}.breakdown-item{display:flex;align-items:center;gap:12px;font-size:14px}.breakdown-role{min-width:120px;color:#374151;font-weight:500;text-transform:capitalize}.breakdown-bar-wrap{flex:1;background:#f1f5f9;border-radius:4px;height:8px;overflow:hidden}.breakdown-bar{height:100%;background:linear-gradient(90deg,#3b82f6,#6366f1);border-radius:4px;transition:width .5s}.breakdown-count{min-width:24px;text-align:right;font-weight:700;color:#1e293b}.revenue-chart{display:flex;align-items:flex-end;gap:16px;height:180px;padding:16px 0 0}.rev-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.rev-amount{font-size:10px;color:#6b7280;white-space:nowrap}.rev-bar{width:100%;background:linear-gradient(180deg,#3b82f6,#6366f1);border-radius:6px 6px 0 0;min-height:8px;transition:height .5s}.rev-month{font-size:11px;font-weight:600;color:#374151}.rev-visits{font-size:10px;color:#9ca3af}.hospitals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;margin-top:8px}.hospital-card{background:#f8fafc;border:2px solid #e2e8f0;border-radius:16px;padding:20px;transition:all .25s}.clickable-card{cursor:pointer}.clickable-card:hover{border-color:#3b82f6;transform:translateY(-3px);box-shadow:0 12px 30px #3b82f626;background:#fff}.hospital-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.hospital-icon{font-size:32px}.hospital-name{font-size:17px;font-weight:700;color:#1e293b;margin:0 0 10px}.hospital-meta{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#64748b;margin-bottom:12px}.hospital-click-hint{font-size:12px;color:#3b82f6;font-weight:600;margin-bottom:12px;opacity:.8}.hospital-inactive{opacity:.6;filter:grayscale(.3)}.hospital-actions{display:flex;gap:8px}.status-badge{padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700}.status-active{background:#dcfce7;color:#16a34a}.status-inactive{background:#fee2e2;color:#dc2626}.status-completed{background:#dcfce7;color:#16a34a}.status-pending{background:#fef3c7;color:#d97706}.status-confirmed{background:#dbeafe;color:#2563eb}.status-cancelled{background:#fee2e2;color:#dc2626}.ca-form-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:24px}.ca-form-box h3{margin:0 0 8px;font-size:16px;color:#1e293b}.user-form{display:flex;flex-direction:column;gap:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.staff-label{font-size:13px;font-weight:600;color:#475569}.staff-input{padding:10px 14px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14px;color:#1e293b;background:#fff;transition:border-color .2s;outline:none;width:100%;box-sizing:border-box}.staff-input:focus{border-color:#3b82f6}.submit-button{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border:none;padding:12px 28px;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s;align-self:flex-start}.submit-button:hover{opacity:.9;transform:translateY(-1px)}.submit-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-save{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border:none;padding:8px 18px;border-radius:10px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.btn-save:hover{opacity:.9}.btn-edit{background:#eff6ff;color:#3b82f6;border:1px solid #bfdbfe;padding:6px 14px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.btn-edit:hover{background:#dbeafe}.btn-delete{background:#fff1f2;color:#e11d48;border:1px solid #fecdd3;padding:6px 14px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.btn-delete:hover{background:#ffe4e6}.btn-cancel{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0;padding:8px 18px;border-radius:10px;cursor:pointer;font-size:13px;font-weight:600}.btn-cancel:hover{background:#e2e8f0}.btn-confirm-delete{background:#dc2626;color:#fff;border:none;padding:10px 20px;border-radius:10px;cursor:pointer;font-weight:700}.users-table{overflow-x:auto}.users-table table{width:100%;border-collapse:collapse;font-size:14px}.users-table th{background:#f8fafc;padding:12px 14px;text-align:left;font-weight:700;color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.users-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;color:#1e293b;vertical-align:middle}.users-table tr:hover td{background:#f8fafc}.users-table tr:last-child td{border-bottom:none}.role-badge{display:inline-block;background:#eff6ff;color:#1d4ed8;padding:3px 10px;border-radius:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.config-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.config-card{display:flex;align-items:center;gap:14px;padding:18px;border-radius:14px;cursor:pointer;transition:all .25s;border:2px solid transparent}.config-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a;border-color:#00000014}.config-icon{font-size:28px;flex-shrink:0}.config-card h4{margin:0 0 3px;font-size:14px}.config-card p{margin:0;font-size:12px}.error-message{background:#fff1f2;border:1px solid #fecdd3;color:#be123c;padding:12px 18px;border-radius:12px;margin-bottom:16px;font-size:14px;font-weight:500}.success-message{background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d;padding:12px 18px;border-radius:12px;margin-bottom:16px;font-size:14px;font-weight:500}.loading-message{color:#64748b;padding:32px;text-align:center;font-size:15px}.ca-empty{text-align:center;padding:48px 24px;color:#94a3b8;font-size:15px}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:20px;padding:32px;max-width:480px;width:90%;box-shadow:0 25px 80px #00000040}.modal-content h3{margin:0 0 10px;color:#1e293b;font-size:20px}.modal-content p{color:#64748b;margin:0 0 22px;line-height:1.6}.modal-buttons{display:flex;gap:12px}@media(max-width:900px){.hospital-kpi-grid{grid-template-columns:repeat(2,1fr)}.detail-two-col,.form-row{grid-template-columns:1fr}}@media(max-width:600px){.hospital-kpi-grid{grid-template-columns:1fr}.centraladmin-header{flex-direction:column;gap:16px}.admin-user-info{align-items:flex-start}.ca-tabs{flex-wrap:wrap}.date-filter-controls{flex-direction:column;align-items:flex-start}}.hospitaladmin-page{min-height:100vh;padding:40px;background:radial-gradient(circle at top right,var(--brand-50),var(--brand-100),var(--surface-1));font-family:var(--font-primary);box-sizing:border-box}.hospitaladmin-container{max-width:1400px;margin:0 auto}.hospitaladmin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding:32px 40px;background:var(--gradient-brand);border-radius:24px;border:1px solid rgba(255,255,255,.2);box-shadow:var(--shadow-brand);color:#fff}.hospitaladmin-header .admin-user-info span{color:#ffffffe6}.ha-header-content{display:flex;flex-direction:column;gap:6px}.ha-hospital-badge{display:inline-block;padding:4px 14px;border-radius:20px;background:#fff3;border:1px solid rgba(255,255,255,.3);font-size:.85rem;font-weight:700;color:#fff;width:fit-content;margin-bottom:4px}.hospitaladmin-header h1{font-size:2rem;font-weight:800;color:#fff;margin:0}.hospitaladmin-header p{color:#ffffffbf;font-size:1rem;margin:0}.ha-tabs{display:flex;gap:12px;margin-bottom:28px;background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;padding:8px;border:1px solid rgba(203,213,225,.5);box-shadow:0 4px 12px #0000000d}.ha-tab{flex:1;padding:14px 20px;border:none;border-radius:12px;background:transparent;color:#64748b;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:Outfit,sans-serif}.ha-tab:hover{background:var(--brand-50);color:var(--brand-700)}.ha-tab-active{background:var(--gradient-brand);color:#fff!important;box-shadow:var(--shadow-brand)}.ha-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:28px}.ha-stat-card{background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:20px;padding:28px;display:flex;align-items:center;gap:20px;border:1px solid rgba(16,185,129,.15);box-shadow:0 4px 16px #0000000f;transition:all .3s ease}.ha-stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #05966926}.ha-stat-icon{font-size:2.5rem;line-height:1}.ha-stat-value{font-size:2.2rem;font-weight:800;color:var(--brand-600);margin:0;line-height:1}.ha-stat-label{font-size:.9rem;color:#6b7280;margin:4px 0 0;font-weight:500}.ha-ops-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:8px}.ha-op-card{display:flex;align-items:center;gap:16px;padding:20px;border-radius:16px;border:1px solid;cursor:pointer;transition:all .2s}.ha-op-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000001a}.ha-op-icon{font-size:2rem;line-height:1;flex-shrink:0}.ha-op-card h4{margin:0 0 4px;font-size:1rem;font-weight:700}.ha-op-card p{margin:0;font-size:.85rem;color:#6b7280}.ha-hospital-info{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;padding:20px;background:#f0fdf4;border-radius:12px;border:1px solid #d1fae5}.ha-hospital-info div{font-size:.95rem;color:#374151}.ha-hospital-info strong{color:var(--brand-700)}.ha-restricted-notice{margin-top:24px;padding:16px 20px;background:#fffbeb;border:1px solid #fcd34d;border-radius:12px;color:#92400e;font-size:.9rem}.role-hospitaladmin{background:var(--brand-50);color:var(--brand-700);border:1px solid var(--brand-200)}.loading-message,.empty-message{text-align:center;padding:40px;color:#94a3b8;font-size:1rem}@media(max-width:768px){.hospitaladmin-page{padding:16px}.hospitaladmin-header{flex-direction:column;gap:20px;align-items:flex-start;padding:24px}.hospitaladmin-header h1{font-size:1.5rem}.ha-tabs{flex-direction:column}.ha-stats-grid{grid-template-columns:repeat(2,1fr)}.ha-ops-grid{grid-template-columns:1fr}}.date-filter-card{padding:20px 28px;margin-bottom:20px}.date-filter-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.preset-buttons{display:flex;gap:8px;flex-wrap:wrap}.preset-btn{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;padding:8px 16px;border-radius:8px;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s}.preset-btn:hover{background:#e2e8f0}.preset-btn.active{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.custom-date-inputs{display:flex;align-items:center;gap:10px;font-size:14px;color:#64748b}.date-input{padding:8px 12px;border:1px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:13px;color:#1e293b;outline:none;transition:border-color .2s}.date-input:focus{border-color:#3b82f6}.hospital-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.kpi-card{border-radius:16px;padding:22px 24px;color:#fff;position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:-30px;right:-30px;width:100px;height:100px;border-radius:50%;background:#ffffff14}.kpi-blue{background:linear-gradient(135deg,#3b82f6,#6366f1)}.kpi-green{background:linear-gradient(135deg,#10b981,#059669)}.kpi-purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.kpi-orange{background:linear-gradient(135deg,#f97316,#ea580c)}.kpi-teal{background:linear-gradient(135deg,#14b8a6,#0d9488)}.kpi-pink{background:linear-gradient(135deg,#ec4899,#db2777)}.kpi-icon{font-size:28px;margin-bottom:8px}.kpi-value{font-size:32px;font-weight:800;line-height:1;margin-bottom:4px}.kpi-label{font-size:13px;font-weight:700;opacity:.9;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.kpi-sub{font-size:12px;opacity:.75}@media(max-width:900px){.hospital-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.hospital-kpi-grid{grid-template-columns:1fr}.date-filter-controls{flex-direction:column;align-items:flex-start}}.clinic-dashboard{padding:0}.clinic-role-switcher{display:flex;align-items:center;gap:8px;background:#fff;border-radius:14px;padding:14px 20px;margin-bottom:20px;box-shadow:0 1px 4px #00000012;border:1px solid #e2e8f0;flex-wrap:wrap}.switcher-label{font-size:12px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-right:4px}.switcher-btn{display:flex;align-items:center;gap:6px;padding:9px 18px;border-radius:8px;border:2px solid #e2e8f0;background:#f8fafc;color:#475569;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s}.switcher-btn:hover{border-color:#c7d2fe;background:#eef2ff;color:#6366f1}.switcher-btn.active{box-shadow:0 2px 8px #00000026}.switcher-user{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:13px;color:#64748b;font-weight:600}.switcher-avatar{width:32px;height:32px;border-radius:50%;background:#e0e7ff;color:#6366f1;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.clinic-card{background:#fff;border-radius:14px;padding:24px;margin-bottom:16px;box-shadow:0 1px 4px #00000012;border:1px solid #e2e8f0}.clinic-card h3{font-size:1rem;font-weight:700;color:#1e293b;margin:0}.clinic-banner{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#eef2ff,#f0fdf4);border:1px solid #c7d2fe;border-radius:14px;padding:20px 24px;margin-bottom:20px}.clinic-banner-icon{font-size:40px}.clinic-banner h2{font-size:1.4rem;font-weight:800;color:#1e293b}.clinic-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:20px}.clinic-kpi-card{background:#fff;border-radius:12px;padding:18px 16px;text-align:center;box-shadow:0 1px 4px #00000012;border:1px solid #e2e8f0}.clinic-sub-tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.clinic-sub-tab{padding:8px 16px;border-radius:8px;border:2px solid #e2e8f0;background:#f8fafc;color:#475569;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.clinic-sub-tab:hover{border-color:#6366f1;color:#6366f1}.clinic-sub-tab.active{border-color:#6366f1;background:#6366f1;color:#fff}.clinic-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:600px){.clinic-form-grid{grid-template-columns:1fr}}.clinic-form-group{display:flex;flex-direction:column;gap:5px}.clinic-form-group label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.clinic-input{padding:9px 12px;border-radius:8px;border:1.5px solid #e2e8f0;font-size:14px;color:#1e293b;background:#f8fafc;transition:border .15s;width:100%;box-sizing:border-box}.clinic-input:focus{outline:none;border-color:#6366f1;background:#fff}.clinic-btn-primary{padding:10px 22px;border-radius:8px;background:#6366f1;color:#fff;font-weight:700;font-size:14px;border:none;cursor:pointer;transition:background .15s}.clinic-btn-primary:hover:not(:disabled){background:#4f46e5}.clinic-btn-primary:disabled{opacity:.6;cursor:not-allowed}.clinic-btn-secondary{padding:9px 18px;border-radius:8px;background:#f1f5f9;color:#475569;font-weight:600;font-size:14px;border:1.5px solid #e2e8f0;cursor:pointer;transition:all .15s}.clinic-btn-secondary:hover:not(:disabled){background:#e2e8f0}.clinic-btn-remove{padding:3px 8px;border-radius:4px;background:#fee2e2;color:#dc2626;font-weight:700;font-size:12px;border:none;cursor:pointer}.clinic-back-btn{padding:6px 14px;border-radius:6px;background:#f1f5f9;color:#475569;font-weight:600;font-size:13px;border:1.5px solid #e2e8f0;cursor:pointer;margin-bottom:4px}.clinic-table{width:100%;border-collapse:collapse;font-size:13px}.clinic-table th{text-align:left;padding:10px 12px;background:#f8fafc;color:#64748b;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0}.clinic-table td{padding:10px 12px;border-bottom:1px solid #f1f5f9;color:#1e293b}.clinic-table tr:hover td{background:#fafafa}.clinic-token-queue{display:flex;flex-direction:column;gap:10px}.clinic-token-card{display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:10px;border:2px solid #e2e8f0;background:#fff;cursor:pointer;transition:all .15s}.clinic-token-card:hover{border-color:#6366f1;box-shadow:0 2px 8px #6366f11a}.token-number{font-size:28px;font-weight:900;color:#6366f1;min-width:52px;text-align:center}.token-info{flex:1}.clinic-status{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:700;text-transform:uppercase}.clinic-status-pending{background:#fef9c3;color:#854d0e}.clinic-status-confirmed{background:#dbeafe;color:#1d4ed8}.clinic-status-completed{background:#dcfce7;color:#16a34a}.clinic-status-cancelled{background:#fee2e2;color:#dc2626}.clinic-badge{display:inline-block;padding:2px 8px;border-radius:4px;background:#eef2ff;color:#6366f1;font-size:11px;font-weight:700}.clinic-loading{text-align:center;padding:40px;color:#94a3b8;font-size:14px}.clinic-empty{text-align:center;padding:30px;color:#94a3b8;font-size:14px}.clinic-msg{padding:10px 16px;border-radius:8px;font-size:14px;font-weight:600;margin-bottom:14px}.clinic-msg-success{background:#dcfce7;color:#16a34a;border:1px solid #bbf7d0}.clinic-msg-error{background:#fee2e2;color:#dc2626;border:1px solid #fecaca}.clinic-success-banner{margin-top:16px;padding:14px 18px;border-radius:10px;background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;font-size:14px}.hospital-login-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f8fafc;color:#64748b;gap:16px}.hospital-login-spinner{width:42px;height:42px;border:3px solid rgba(20,184,166,.2);border-top-color:#14b8a6;border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hospital-login-error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f1f5f9;padding:24px}.hospital-login-error-card{background:#fff;border-radius:24px;padding:48px 40px;max-width:440px;text-align:center;color:#1e293b;box-shadow:0 20px 25px -5px #0000001a}.hospital-login-error-card .error-icon{font-size:3rem;display:block;margin-bottom:24px}.hospital-login-error-card h2{font-size:1.5rem;font-weight:700;margin-bottom:12px}.hospital-login-error-card p{color:#64748b;margin-bottom:24px}.hospital-login-error-card code{background:#f1f5f9;padding:4px 10px;border-radius:6px;font-size:.85rem;color:#0f172a;font-weight:600}.cashier-dashboard{padding:24px;background-color:#f8fafc;min-height:calc(100vh - 64px)}.cashier-header{margin-bottom:24px}.cashier-header h1{font-size:24px;color:#1e293b;margin:0}.search-section{background:#fff;padding:24px;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;display:flex;gap:12px;align-items:flex-end}.search-input{flex:1;max-width:400px}.search-input label{display:block;font-size:14px;font-weight:500;color:#475569;margin-bottom:8px}.search-input input{width:100%;padding:12px 16px;border:1px solid #cbd5e1;border-radius:8px;font-size:15px;outline:none;transition:all .2s}.search-input input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-btn{padding:12px 24px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:background .2s}.search-btn:hover{background:#2563eb}.search-btn:disabled{background:#94a3b8;cursor:not-allowed}.patient-info-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;border-left:4px solid #3b82f6}.billing-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}@media(max-width:1024px){.billing-grid{grid-template-columns:1fr}}.billing-section{background:#fff;padding:24px;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.billing-section h3{margin:0 0 16px;color:#334155;font-size:18px;display:flex;justify-content:space-between;align-items:center}.bill-items-table{width:100%;border-collapse:collapse}.bill-items-table th,.bill-items-table td{padding:12px;text-align:left;border-bottom:1px solid #e2e8f0}.bill-items-table th{font-weight:600;color:#64748b;font-size:13px;background:#f8fafc}.bill-items-table td{color:#334155;font-size:14px}.bill-items-table tr:hover{background:#f8fafc}.add-facility-form{display:flex;gap:12px;align-items:flex-end;background:#f0fdf4;padding:16px;border-radius:8px;border:1px dashed #22c55e;margin-bottom:20px}.add-facility-form .form-group{flex:1}.add-facility-form label{display:block;font-size:13px;font-weight:500;color:#166534;margin-bottom:6px}.add-facility-form select,.add-facility-form input{width:100%;padding:10px;border:1px solid #86efac;border-radius:6px;outline:none}.add-facility-form button{padding:10px 20px;background:#22c55e;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer}.add-facility-form button:hover{background:#16a34a}.summary-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;position:sticky;top:24px}.summary-header{padding:20px;border-bottom:1px solid #e2e8f0;background:#1e293b;color:#fff;border-radius:12px 12px 0 0}.summary-header h3{margin:0}.summary-body{padding:20px}.summary-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px dashed #e2e8f0;color:#475569}.summary-total{display:flex;justify-content:space-between;padding:16px 0;font-size:20px;font-weight:700;color:#0f172a;border-bottom:none}.pay-btn{width:100%;padding:16px;background:#10b981;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;margin-top:20px;transition:background .2s}.pay-btn:hover{background:#059669}.pay-btn:disabled{background:#94a3b8;cursor:not-allowed}.error-msg{color:#ef4444;font-size:14px;margin-top:8px}:root{--lab-primary: #3b82f6;--lab-secondary: #06b6d4;--lab-accent: #8b5cf6;--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .6);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .15);--text-dark: #1e293b;--text-light: #64748b}.lab-dashboard,.dashboard-page{min-height:100vh;padding:32px;background:radial-gradient(circle at top left,#eff6ff,#f0f9ff,#f5f3ff);font-family:Outfit,Inter,sans-serif;color:var(--text-dark)}.lab-header,.dashboard-header{margin-bottom:40px;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:24px 32px;border-radius:24px;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);display:flex;justify-content:space-between;align-items:center}.lab-header h1,.dashboard-header h1{font-size:2rem;font-weight:800;background:linear-gradient(135deg,var(--lab-primary),var(--lab-accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0}.lab-header p,.header-subtext{color:var(--text-light);font-size:1rem;margin-top:4px}.lab-stats-grid,.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:40px}.lab-stat-card,.dashboard-column{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:20px;padding:28px;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;box-shadow:0 4px 15px #0000000d;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.lab-stat-card:hover,.dashboard-column:hover{transform:translateY(-5px);box-shadow:0 12px 30px #3b82f626}.lab-stat-card h3{font-size:3rem;font-weight:800;margin:0 0 8px;color:var(--text-dark)}.lab-stat-card p{color:var(--text-light);font-size:1.1rem;font-weight:500;margin:0}.lab-stat-card.pending:before{content:"";position:absolute;top:0;left:0;width:6px;height:100%;background:linear-gradient(to bottom,#f59e0b,#fbbf24)}.lab-stat-card.completed:before{content:"";position:absolute;top:0;left:0;width:6px;height:100%;background:linear-gradient(to bottom,#10b981,#34d399)}.lab-stat-card.revenue:before{content:"";position:absolute;top:0;left:0;width:6px;height:100%;background:linear-gradient(to bottom,#8b5cf6,#a78bfa)}.lab-actions{display:flex;gap:20px}.action-btn{padding:16px 32px;border-radius:16px;border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,var(--lab-primary),var(--lab-secondary));color:#fff;box-shadow:0 8px 20px #3b82f64d}.action-btn:hover{transform:translateY(-2px);box-shadow:0 12px 25px #3b82f666}.action-btn.secondary{background:#fff;color:var(--lab-primary);border:1px solid rgba(59,130,246,.2);box-shadow:var(--glass-shadow)}.action-btn.secondary:hover{background:#f8fafc}.dashboard-column.full-width{grid-column:1 / -1}.list-item{padding:16px;border-bottom:1px solid rgba(0,0,0,.05);display:flex;justify-content:space-between;align-items:center}.list-item:last-child{border-bottom:none}.status-badge{padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:700}.status-badge.pending{background:#fef3c7;color:#d97706}.status-badge.completed{background:#d1fae5;color:#059669}@media(max-width:768px){.lab-dashboard{padding:20px}.lab-header{flex-direction:column;text-align:center;gap:12px}.lab-actions{flex-direction:column}.action-btn{width:100%;justify-content:center}}:root{--page-bg-gradient: radial-gradient(circle at top left, #eff6ff, #f0f9ff, #f5f3ff);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .6);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .15);--primary-color: #0ea5e9;--text-dark: #0f172a;--text-muted: #64748b;--radius-lg: 20px}.lab-page-container{padding:32px;background:var(--page-bg-gradient);min-height:100vh;font-family:Outfit,Inter,sans-serif;box-sizing:border-box}.lab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:24px 32px;border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);border:1px solid var(--glass-border)}.header-title h1{display:flex;align-items:center;gap:16px;margin:0;font-size:1.8rem;font-weight:800;background:linear-gradient(135deg,#0ea5e9,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-icon{color:#0ea5e9;font-size:1.6rem}.header-title p{margin:4px 0 0;color:var(--text-muted);font-size:1rem;font-weight:500}.header-actions{display:flex;gap:16px;align-items:center}.search-box{position:relative;display:flex;align-items:center}.search-box input{padding:12px 16px 12px 48px;border:1px solid rgba(226,232,240,.8);border-radius:14px;width:300px;font-size:.95rem;background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);outline:none;color:var(--text-dark)}.search-box input:focus{border-color:var(--primary-color);box-shadow:0 0 0 4px #0ea5e926;width:320px}.filter-badge{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0284c7;padding:10px 20px;border-radius:30px;font-weight:700;font-size:.9rem;display:flex;align-items:center;gap:8px;white-space:nowrap;box-shadow:0 4px 10px #0ea5e933;transition:transform .2s}.filter-badge:hover{transform:translateY(-2px)}.lab-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:24px}.lab-card{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--glass-border);box-shadow:0 4px 15px #0000000d;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.lab-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px -10px #00000026}.card-header{background:#ffffff80;padding:20px 24px;border-bottom:1px solid rgba(226,232,240,.6);display:flex;justify-content:space-between;align-items:center}.payment-badge{font-size:.75rem;padding:6px 14px;border-radius:20px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 5px #0000000d}.payment-badge.pending{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.payment-badge.paid{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.date-badge{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#64748b;font-weight:600}.card-body{padding:24px;flex:1}.info-row{display:flex;justify-content:space-between;margin-bottom:24px}.info-group label{display:flex;align-items:center;gap:6px;font-size:.75rem;text-transform:uppercase;color:#94a3b8;font-weight:800;margin-bottom:6px;letter-spacing:.05em}.info-group h4{margin:0;font-size:1.1rem;color:#1e293b;font-weight:700}.info-group span{font-size:.95rem;color:#64748b}.test-list{margin-bottom:24px}.test-list label{font-size:.85rem;color:#64748b;font-weight:700;display:block;margin-bottom:12px}.tags{display:flex;flex-wrap:wrap;gap:10px}.test-tag{background:#fff7ed;color:#ea580c;border:1px solid #ffedd5;padding:8px 14px;border-radius:12px;font-size:.85rem;font-weight:600}.prescription-link{background:#eff6ff;color:#2563eb;border:1px dashed #bfdbfe;width:100%;padding:12px;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .2s}.prescription-link:hover{background:#dbeafe;border-style:solid;box-shadow:0 4px 12px #2563eb26}.card-footer{padding:20px 24px;border-top:1px solid rgba(241,245,249,.8);background:#fff6}.btn-process{width:100%;background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;border:none;padding:14px;border-radius:14px;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:10px;font-size:1rem;box-shadow:0 4px 15px #0ea5e94d}.btn-process:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0ea5e966}.lab-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f172a99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease-out}.lab-modal{background:#fff;width:90%;max-width:600px;max-height:90vh;border-radius:24px;box-shadow:0 25px 50px -12px #00000080;overflow-y:auto;animation:slideUp .4s cubic-bezier(.16,1,.3,1)}.modal-header{padding:24px 32px;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;z-index:10}.modal-header h2{margin:0;font-size:1.5rem;color:#1e293b;font-weight:800}.close-btn{background:none;border:none;font-size:1.5rem;color:#94a3b8;cursor:pointer;transition:color .2s}.close-btn:hover{color:#ef4444}.modal-content{padding:32px}.payment-config-section{background:#f8fafc;padding:24px;border-radius:16px;margin-bottom:24px;border:1px solid #e2e8f0}.payment-config-section h3{margin:0 0 16px;font-size:1.1rem;color:#1e293b;display:flex;align-items:center;gap:10px}.payment-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:20px;margin-bottom:20px}.btn-payment-toggle{width:100%;padding:14px;border-radius:12px;border:2px solid #cbd5e1;background:#fff;color:#475569;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:10px}.btn-payment-toggle:hover{background:#f1f5f9}.btn-payment-toggle.is-paid{background:#059669;border-color:#059669;color:#fff;box-shadow:0 4px 15px #0596694d}.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:14px 16px;border:1px solid #cbd5e1;border-radius:12px;font-family:inherit;font-size:1rem;outline:none;box-sizing:border-box;background:#fff;transition:all .2s}.form-group input:focus,.form-group textarea:focus{border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91a}.drop-zone{border:2px dashed #cbd5e1;border-radius:16px;padding:3rem 1.5rem;text-align:center;cursor:pointer;transition:all .2s;background:#f8fafc}.drop-zone:hover{border-color:#94a3b8;background:#f1f5f9}.drop-zone.active{border-color:#0ea5e9;background:#f0f9ff}.modal-actions{display:flex;gap:16px;margin-top:32px}.btn-cancel{flex:1;padding:14px;border:1px solid #e2e8f0;background:#fff;color:#64748b;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#f8fafc;color:#334155}.btn-submit{flex:2;padding:14px;border:none;background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;border-radius:12px;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #0ea5e94d}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #0ea5e966}@keyframes slideUp{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:640px){.lab-header{flex-direction:column;align-items:flex-start;gap:24px;padding:24px}.header-actions{width:100%;flex-direction:column;align-items:stretch}.search-box input{width:100%}.lab-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}}:root{--page-bg-gradient: radial-gradient(circle at top right, #f0fdf4, #dcfce7, #f0fdfa);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .6);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .15);--primary-green: #22c55e;--text-dark: #0f172a;--radius-lg: 20px}.report-page-container{padding:32px;background:var(--page-bg-gradient);min-height:100vh;font-family:Outfit,Inter,sans-serif;box-sizing:border-box}.report-header{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:24px 32px;border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;border:1px solid var(--glass-border);flex-wrap:wrap;gap:24px}.header-title h1{display:flex;align-items:center;gap:16px;margin:0;font-size:1.8rem;color:var(--text-dark);font-weight:800}.header-icon{color:#22c55e;font-size:1.8rem}.header-title p{margin:4px 0 0;color:#64748b;font-size:1rem}.header-controls{display:flex;gap:16px;align-items:center}.search-group{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:16px;color:#94a3b8;font-size:1.1rem}.search-group input{padding:12px 16px 12px 48px;border:1px solid rgba(226,232,240,.8);border-radius:14px;width:320px;font-size:.95rem;background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);outline:none;color:var(--text-dark)}.search-group input:focus{border-color:var(--primary-green);box-shadow:0 0 0 4px #22c55e26;width:340px}.date-filter input{padding:12px;border:1px solid rgba(226,232,240,.8);border-radius:14px;color:#64748b;font-family:inherit;outline:none;background:#fff;cursor:pointer;transition:all .2s}.date-filter input:focus{border-color:var(--primary-green);box-shadow:0 0 0 4px #22c55e26}.stats-row{display:flex;gap:24px;margin-bottom:32px}.stat-card{background:#fff9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:20px 24px;border-radius:16px;border:1px solid white;display:flex;flex-direction:column;min-width:160px;box-shadow:0 4px 15px #00000008;transition:transform .2s}.stat-card:hover{transform:translateY(-4px)}.stat-label{font-size:.85rem;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:2rem;color:var(--text-dark);font-weight:800;margin-top:8px}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:24px}.report-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-lg);border:1px solid var(--glass-border);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:0 4px 10px #00000005}.report-card:hover{transform:translateY(-6px);box-shadow:0 15px 30px #00000014;border-color:#ffffffe6}.card-top{padding:20px 24px;border-bottom:1px solid rgba(226,232,240,.6);display:flex;justify-content:space-between;align-items:center;background:#fff6}.patient-meta{display:flex;flex-direction:column;gap:6px}.id-badge{font-family:monospace;font-weight:700;color:#64748b;font-size:.9rem;background:#0000000d;padding:2px 6px;border-radius:4px;width:fit-content}.date-meta{font-size:.8rem;color:#94a3b8;display:flex;align-items:center;gap:6px;font-weight:500}.status-pill{font-size:.75rem;padding:6px 14px;border-radius:20px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.status-pill.success{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0;box-shadow:0 2px 5px #15803d1a}.card-main{padding:24px;flex:1}.info-block{margin-bottom:20px}.info-block label{display:flex;align-items:center;gap:8px;font-size:.75rem;color:#94a3b8;font-weight:800;text-transform:uppercase;margin-bottom:8px;letter-spacing:.05em}.info-block h3{margin:0;font-size:1.25rem;color:var(--text-dark);font-weight:700}.info-block p{margin:0;color:#475569;font-size:1rem}.tests-block{margin-top:24px}.test-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.test-tags span{background:#fff;color:#475569;padding:8px 14px;border-radius:10px;font-size:.85rem;font-weight:600;border:1px solid #e2e8f0;box-shadow:0 2px 4px #00000005}.file-preview{margin:0 24px 24px;background:#fff9;border:1px solid rgba(226,232,240,.8);border-radius:12px;padding:16px;display:flex;align-items:center;gap:16px;transition:all .2s}.file-preview:hover{background:#fff;border-color:#cbd5e1;transform:scale(1.02)}.file-icon{font-size:1.8rem;color:#ef4444}.file-info .filename{font-size:.95rem;font-weight:600;color:#334155}.file-info .filesize{font-size:.8rem;color:#94a3b8}.card-actions{padding:20px 24px;border-top:1px solid rgba(226,232,240,.6);display:flex;gap:16px;background:#fff6}.btn-action{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-action.primary{background:#0f172a;color:#fff;border:none;box-shadow:0 4px 10px #0f172a33}.btn-action.primary:hover{background:#1e293b;transform:translateY(-2px);box-shadow:0 8px 20px #0f172a4d}.btn-action.secondary{background:#fff;color:#475569;border:1px solid #cbd5e1}.btn-action.secondary:hover{background:#f8fafc;border-color:#94a3b8;color:#1e293b}.empty-state{grid-column:1 / -1;text-align:center;padding:5rem;background:var(--glass-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:24px;border:1px dashed #cbd5e1;color:#64748b}.empty-icon{font-size:3rem;color:#cbd5e1;margin-bottom:1.5rem}.empty-state h3{color:#1e293b;margin:0 0 10px;font-size:1.5rem;font-weight:700}.btn-clear{margin-top:1rem;padding:8px 16px;background:none;border:1px solid #cbd5e1;border-radius:6px;color:#475569;cursor:pointer}.btn-clear:hover{background:#f1f5f9}@media(max-width:768px){.report-header{flex-direction:column;align-items:stretch;gap:20px;padding:20px}.header-controls{flex-direction:column}.search-group input,.date-filter{width:100%}.date-filter input{width:100%;box-sizing:border-box}}:root{--pharma-primary: #059669;--pharma-secondary: #0d9488;--pharma-accent: #10b981;--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .6);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .15);--text-dark: #064e3b;--text-light: #64748b;--radius-xl: 24px}.pharmacy-management-container{min-height:100vh;padding:32px;background:radial-gradient(circle at top right,#ecfdf5,#f0fdfa,#f8fafc);font-family:Outfit,Inter,sans-serif;color:var(--text-dark)}.pharmacy-header{margin-bottom:40px;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:24px 32px;border-radius:var(--radius-xl);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);display:flex;justify-content:space-between;align-items:center}.pharmacy-header h1{font-size:2rem;font-weight:800;background:linear-gradient(135deg,var(--pharma-primary),var(--pharma-secondary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0}.pharmacy-header p{color:var(--text-light);font-size:1rem;margin-top:4px}.inventory-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:20px}.search-bar{flex:1;max-width:500px;background:#fff;border-radius:16px;padding:12px 20px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 15px #00000008;border:1px solid #e2e8f0;transition:all .3s}.search-bar:focus-within{box-shadow:0 0 0 4px #10b9811a;border-color:var(--pharma-accent)}.search-bar input{border:none;background:transparent;width:100%;font-size:1rem;color:var(--text-dark);outline:none}.btn-add{background:linear-gradient(135deg,var(--pharma-primary),var(--pharma-accent));color:#fff;border:none;padding:14px 28px;border-radius:16px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 4px 15px #10b98166;transition:all .3s}.btn-add:hover{transform:translateY(-2px);box-shadow:0 8px 20px #10b98180}.inventory-table-wrapper{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-xl);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);overflow:hidden;padding:20px}.inventory-table{width:100%;border-collapse:separate;border-spacing:0 8px}.inventory-table th{text-align:left;padding:16px;color:var(--text-light);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.inventory-table tbody tr{background:#fff;box-shadow:0 2px 5px #00000005;transition:transform .2s,box-shadow .2s}.inventory-table tbody tr:hover{transform:scale(1.01);box-shadow:0 4px 12px #0000000d;z-index:1}.inventory-table td{padding:16px;border:none;vertical-align:middle}.inventory-table td:first-child{border-radius:12px 0 0 12px}.inventory-table td:last-child{border-radius:0 12px 12px 0}.med-name{font-weight:700;color:var(--text-dark)}.category-tag{background:#f0fdfa;color:#0d9488;padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600}.low-stock{color:#ef4444;font-weight:700}.good-stock{color:#10b981;font-weight:700}.action-btn{width:36px;height:36px;border-radius:10px;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.action-btn.delete{background:#fef2f2;color:#ef4444}.action-btn.delete:hover{background:#fee2e2;transform:scale(1.1)}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.modal-content.inventory-modal{background:#fff;width:90%;max-width:700px;border-radius:24px;padding:40px;box-shadow:0 20px 50px #0003;animation:slideIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.modal-header h2{font-size:1.8rem;color:var(--text-dark);margin:0}.section-title{color:var(--pharma-secondary);font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #f0fdfa;padding-bottom:8px;margin-bottom:20px;font-weight:700}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group label{display:block;font-size:.85rem;font-weight:600;color:var(--text-light);margin-bottom:8px}.form-group input,.form-group select{width:100%;padding:12px 16px;border-radius:12px;border:1px solid #e2e8f0;font-size:1rem;transition:all .3s;box-sizing:border-box}.form-group input:focus,.form-group select:focus{border-color:var(--pharma-accent);box-shadow:0 0 0 3px #10b9811a;outline:none}.modal-actions{display:flex;justify-content:flex-end;gap:16px;margin-top:40px}.btn-cancel{background:#f1f5f9;color:var(--text-light);border:none;padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer}.btn-save{background:linear-gradient(135deg,var(--pharma-primary),var(--pharma-accent));color:#fff;border:none;padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;box-shadow:0 4px 15px #10b9814d}.close-btn{background:transparent;border:none;font-size:1.5rem;color:var(--text-light);cursor:pointer}.status-badge{padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;display:inline-block}.status-active{background:#dcfce7;color:#166534;border:1px solid #bbf7d0;box-shadow:0 2px 4px #1665341a}.status-low{background:#fef2f2;color:#991b1b;border:1px solid #fee2e2}.loader{text-align:center;padding:40px;color:var(--text-light);font-size:1.2rem;font-weight:600}.reception-dashboard,.intake-full-page{padding:28px;background:var(--surface-1);min-height:100vh;font-family:var(--font-primary);box-sizing:border-box}.reception-dashboard *,.intake-full-page *{box-sizing:border-box}.reception-dashboard .dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;padding:20px 28px;background:var(--surface-0);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--gray-200)}.reception-dashboard .dashboard-header h1{color:var(--gray-900);font-size:1.6rem;font-weight:800;letter-spacing:-.03em;margin:0}.reception-dashboard .btn-save,.intake-full-page .btn-save{background:var(--gradient-brand);color:#fff;border:none;padding:11px 24px;border-radius:var(--radius-md);font-weight:700;cursor:pointer;font-size:.875rem;transition:var(--transition-base);box-shadow:var(--shadow-brand);font-family:var(--font-primary);display:inline-flex;align-items:center;gap:6px}.reception-dashboard .btn-save:hover:not(:disabled),.intake-full-page .btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 28px #14b8a659}.reception-dashboard .btn-save:disabled,.intake-full-page .btn-save:disabled{opacity:.55;cursor:not-allowed;transform:none}.search-section{background:var(--surface-0);border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow-xs);padding:20px;margin-bottom:20px;position:relative}.search-section input[type=text]{width:100%;padding:12px 18px 12px 46px;border:1.5px solid var(--gray-200);border-radius:var(--radius-md);font-size:.9rem;font-family:var(--font-primary);background:var(--surface-1);color:var(--gray-800);transition:var(--transition-fast);outline:none}.search-section input[type=text]:focus{border-color:var(--brand-500);background:var(--surface-0);box-shadow:0 0 0 3px #14b8a61a}.search-results-dropdown{position:absolute;top:calc(100% - 4px);left:20px;right:20px;background:var(--surface-0);border:1px solid var(--gray-200);box-shadow:var(--shadow-xl);z-index:200;max-height:320px;overflow-y:auto;border-radius:var(--radius-lg);animation:fadeIn .15s ease-out}.availability-widget{background:var(--surface-0);padding:22px 24px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:20px;border:1px solid var(--gray-200);border-left:4px solid var(--brand-500)}.availability-widget h3{font-size:1rem;font-weight:700;color:var(--gray-800);margin:0 0 16px}.widget-controls{display:flex;gap:12px;margin-bottom:14px;align-items:center;flex-wrap:wrap}.avail-select,.widget-controls input{padding:10px 14px;border:1.5px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;font-family:var(--font-primary);flex:1;color:var(--gray-800);transition:var(--transition-fast);outline:none;background:var(--surface-0)}.avail-select:focus,.widget-controls input:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px #14b8a61a}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;margin-top:12px}.slot-btn{padding:9px 6px;border:1.5px solid var(--gray-200);border-radius:var(--radius-md);cursor:pointer;font-size:.82rem;font-family:var(--font-primary);transition:var(--transition-base);text-align:center;font-weight:700;background:var(--surface-0);color:var(--gray-600)}.slot-btn:hover:not(.booked){background:var(--brand-50);border-color:var(--brand-400);color:var(--brand-700);transform:translateY(-2px);box-shadow:0 4px 10px #14b8a626}.slot-btn.booked{background:var(--danger-bg);color:var(--gray-400);border-color:var(--gray-200);cursor:not-allowed;text-decoration:line-through;opacity:.6}.slot-btn.selected{background:var(--gradient-brand);color:#fff;border-color:transparent;font-weight:800;transform:scale(1.04);box-shadow:0 4px 14px #14b8a659}.appointments-list{background:var(--surface-0);padding:22px 24px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--gray-200)}.appointments-list h3{font-size:1rem;font-weight:700;color:var(--gray-800);margin:0 0 18px}.table-responsive{width:100%;overflow-x:auto}.reception-table{width:100%;border-collapse:separate;border-spacing:0;min-width:600px}.reception-table th,.reception-table td{padding:12px 16px;text-align:left}.reception-table th{background:var(--gradient-surface);color:var(--gray-500);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--gray-200)}.reception-table th:first-child{border-radius:var(--radius-md) 0 0 0}.reception-table th:last-child{border-radius:0 var(--radius-md) 0 0}.reception-table td{border-bottom:1px solid var(--gray-100);color:var(--gray-700);font-size:.875rem}.reception-table tbody tr{transition:var(--transition-fast)}.reception-table tbody tr:hover td{background:var(--brand-50)}.status{padding:4px 12px;border-radius:var(--radius-pill);font-size:.72rem;text-transform:uppercase;font-weight:800;letter-spacing:.05em;display:inline-block}.status.pending{background:var(--warning-bg);color:var(--warning);border:1px solid rgba(245,158,11,.2)}.status.confirmed{background:var(--success-bg);color:var(--success);border:1px solid rgba(16,185,129,.2)}.status.completed{background:var(--info-bg);color:var(--info);border:1px solid rgba(59,130,246,.2)}.status.cancelled{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(239,68,68,.2)}.intake-full-page{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--surface-1);z-index:1000;overflow-y:auto;padding:0;display:flex;flex-direction:column}.context-bar{background:var(--gradient-navy);color:#fff;padding:14px 28px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:10;box-shadow:0 4px 20px #0003}.context-bar h3{margin:0;font-size:1rem;font-weight:700;letter-spacing:-.01em}.btn-cancel{background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:#fff;padding:9px 18px;border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:.825rem;font-family:var(--font-primary);transition:var(--transition-fast)}.btn-cancel:hover{background:#ffffff38;border-color:#ffffff59}.intake-container{max-width:860px;margin:28px auto;width:100%;padding:0 24px 120px}.form-section{background:var(--surface-0);padding:24px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:16px;border:1px solid var(--gray-200);animation:fadeIn .3s ease-out}.form-section h4{font-size:.875rem;font-weight:800;color:var(--gray-700);margin:0 0 18px;text-transform:uppercase;letter-spacing:.06em;padding-bottom:12px;border-bottom:1px solid var(--gray-100)}.form-row{display:flex;gap:14px;margin-bottom:14px;flex-wrap:wrap}.field{flex:1;min-width:160px;display:flex;flex-direction:column}.field label{font-size:.78rem;color:var(--gray-600);margin-bottom:5px;font-weight:700;letter-spacing:.01em}.field input,.field select,.field textarea{padding:10px 13px;border:1.5px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;font-family:var(--font-primary);transition:var(--transition-fast);color:var(--gray-800);background:var(--surface-0);outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px #14b8a61a}.field input:read-only{background:var(--surface-1);color:var(--gray-500);cursor:default}.form-footer{position:fixed;bottom:0;left:0;width:100%;background:var(--glass-white);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);padding:14px 24px;box-shadow:0 -4px 24px #00000014;display:flex;justify-content:flex-end;gap:12px;z-index:100;border-top:1px solid var(--gray-200)}@media(max-width:768px){.reception-dashboard,.intake-full-page{padding:16px}.reception-dashboard .dashboard-header{flex-direction:column;gap:12px;padding:16px 20px;align-items:flex-start}.form-row,.widget-controls{flex-direction:column}}.accountant-dashboard{min-height:100vh;padding:40px;background:radial-gradient(circle at top right,#f8fafc,#f1f5f9,#e2e8f0);font-family:Outfit,Inter,sans-serif;box-sizing:border-box}.acc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding:32px 40px;background:linear-gradient(135deg,#0f172a,#1e293b,#0f172a);border-radius:20px;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 60px #00000026;color:#fff}.acc-header h1{font-size:2.2rem;font-weight:800;margin:0 0 6px;background:linear-gradient(90deg,#10b981,#34d399);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.acc-header p{color:#94a3b8;margin:0;font-size:1rem}.acc-user-info{display:flex;align-items:center;gap:16px;font-size:.95rem;color:#cbd5e1}.logout-btn{background:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.3);padding:8px 20px;border-radius:10px;cursor:pointer;font-weight:600;transition:all .2s}.logout-btn:hover{background:#ef444466}.section-title{margin:32px 0 16px;font-size:1.4rem;color:#1e293b;font-weight:700}.acc-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:24px}.overall-kpi{grid-template-columns:repeat(3,1fr)}.acc-kpi-card{border-radius:20px;padding:24px;color:#fff;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s}.acc-kpi-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #00000026}.acc-kpi-card:before{content:"";position:absolute;top:-30px;right:-30px;width:120px;height:120px;border-radius:50%;background:#ffffff14}.acc-kpi-blue{background:linear-gradient(135deg,#1e3a8a,#3b82f6)}.acc-kpi-green{background:linear-gradient(135deg,#064e3b,#10b981)}.acc-kpi-purple{background:linear-gradient(135deg,#4c1d95,#8b5cf6)}.acc-kpi-orange{background:linear-gradient(135deg,#7c2d12,#f97316)}.acc-kpi-teal{background:linear-gradient(135deg,#134e4a,#14b8a6)}.acc-kpi-pink{background:linear-gradient(135deg,#831843,#ec4899)}.acc-kpi-icon{font-size:2.5rem;margin-bottom:12px}.acc-kpi-value{font-size:2.4rem;font-weight:800;line-height:1.1;margin-bottom:8px;letter-spacing:-1px}.acc-kpi-label{font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;opacity:.9;margin-bottom:4px}.acc-kpi-sub{font-size:.85rem;opacity:.75}@media(max-width:900px){.overall-kpi{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.overall-kpi{grid-template-columns:1fr}.acc-header{flex-direction:column;align-items:flex-start;gap:16px}.acc-kpi-grid{grid-template-columns:1fr}}.billing-profile-page{max-width:1100px;margin:0 auto;padding:24px;font-family:Segoe UI,sans-serif;color:#1e293b}.billing-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.billing-header h1{font-size:1.6rem;font-weight:700;margin:0 0 4px;color:#0f172a}.billing-header p{color:#64748b;margin:0;font-size:.9rem}.btn-back{padding:8px 18px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;cursor:pointer;font-size:.9rem;color:#475569;font-weight:500;transition:background .15s}.btn-back:hover{background:#e2e8f0}.billing-search-bar{display:flex;gap:10px;margin-bottom:20px}.billing-search-input{flex:1;padding:11px 16px;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;outline:none;transition:border-color .15s}.billing-search-input:focus{border-color:#3b82f6}.btn-search{padding:11px 26px;background:#3b82f6;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-search:hover:not(:disabled){background:#2563eb}.btn-search:disabled{opacity:.6;cursor:not-allowed}.billing-error{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:16px}.billing-success{background:#f0fdf4;border:1px solid #86efac;color:#16a34a;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-weight:500}.patient-info-card{display:flex;align-items:center;gap:20px;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;padding:20px 24px;border-radius:14px;margin-bottom:24px;box-shadow:0 4px 20px #3b82f64d}.patient-avatar{width:60px;height:60px;background:#ffffff40;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;flex-shrink:0}.patient-details{flex:1}.patient-details h2{margin:0 0 8px;font-size:1.3rem}.patient-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:.88rem;opacity:.9}.patient-outstanding{text-align:right}.outstanding-label{font-size:.8rem;opacity:.85;margin-bottom:4px}.outstanding-amount{font-size:1.6rem;font-weight:700}.billing-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:20px;overflow:hidden;box-shadow:0 1px 6px #0000000d}.section-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.section-header h3{margin:0;font-size:1rem;font-weight:600;color:#0f172a}.admitted-header{background:linear-gradient(90deg,#fef3c7,#fde68a)}.admitted-badge{background:#f59e0b;color:#fff;padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.btn-select-all{background:transparent;border:1px solid #94a3b8;color:#475569;padding:5px 12px;border-radius:6px;cursor:pointer;font-size:.82rem;font-weight:500;transition:all .15s}.btn-select-all:hover{background:#e2e8f0}.billing-table{width:100%;border-collapse:collapse;font-size:.9rem}.billing-table thead tr{background:#f1f5f9}.billing-table th{padding:10px 14px;text-align:left;font-weight:600;color:#475569;font-size:.82rem;text-transform:uppercase;letter-spacing:.4px}.billing-table td{padding:11px 14px;border-bottom:1px solid #f1f5f9;color:#334155}.billing-table tr:last-child td{border-bottom:none}.billing-table tr:hover td{background:#f8fafc}.billing-table .selected-row td{background:#eff6ff}.amount-cell{font-weight:600;color:#0f172a;text-align:right}.status-badge{display:inline-block;padding:3px 9px;border-radius:20px;font-size:.78rem;font-weight:600;background:#f1f5f9;color:#475569}.status-badge.status-confirmed{background:#dcfce7;color:#16a34a}.status-badge.status-pending{background:#fef9c3;color:#ca8a04}.status-badge.status-completed{background:#dbeafe;color:#1d4ed8}.status-badge.status-cancelled{background:#fee2e2;color:#dc2626}.admission-card{padding:16px 20px;border-bottom:1px solid #e2e8f0}.admission-card:last-child{border-bottom:none}.admission-card.active{background:#fffbeb}.admission-card.past{background:#f8fafc}.admission-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:10px;font-size:.9rem;color:#334155}.admission-actions{display:flex;align-items:center;gap:12px}.check-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.88rem;color:#475569}.badge-ward,.badge-bed{display:inline-block;margin-left:8px;background:#dbeafe;color:#1d4ed8;padding:2px 8px;border-radius:10px;font-size:.8rem;font-weight:600}.badge-bed{background:#f0fdf4;color:#15803d}.btn-discharge{padding:6px 16px;background:#dc2626;color:#fff;border:none;border-radius:7px;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .15s}.btn-discharge:hover:not(:disabled){background:#b91c1c}.btn-discharge:disabled{opacity:.5;cursor:not-allowed}.facility-table{width:100%;border-collapse:collapse;font-size:.88rem;margin-top:4px}.facility-table th{background:#fef3c7;padding:7px 12px;text-align:left;font-weight:600;color:#92400e;font-size:.8rem}.facility-table td{padding:8px 12px;border-bottom:1px solid #fde68a;color:#1e293b}.facility-table tfoot td{border-top:2px solid #f59e0b;border-bottom:none;background:#fef9c3;padding:8px 12px}.admission-notes{font-size:.85rem;color:#64748b;margin:8px 0 0;font-style:italic}.facility-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.facility-tag{background:#e0f2fe;color:#0369a1;padding:3px 10px;border-radius:20px;font-size:.8rem;font-weight:500}.paid-badge{background:#dcfce7;color:#16a34a;padding:3px 10px;border-radius:20px;font-size:.8rem;font-weight:600}.pending-badge{background:#fef9c3;color:#92400e;padding:3px 10px;border-radius:20px;font-size:.8rem;font-weight:600}.no-bills{text-align:center;padding:48px;color:#64748b;font-size:1.1rem;background:#f8fafc;border-radius:12px;border:1px dashed #cbd5e1}.payment-panel{position:sticky;bottom:0;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px 24px;margin-top:24px;box-shadow:0 -4px 24px #0000001a;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.payment-summary{display:flex;flex-direction:column;gap:4px}.payment-row{display:flex;align-items:center;gap:12px;font-size:.95rem;color:#475569}.selected-amount{font-size:1.4rem;color:#0f172a}.payment-controls{display:flex;align-items:center;gap:12px}.payment-mode-select{padding:10px 14px;border:2px solid #e2e8f0;border-radius:9px;font-size:.95rem;outline:none;background:#fff;cursor:pointer}.payment-mode-select:focus{border-color:#3b82f6}.btn-pay{padding:12px 28px;background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;transition:opacity .15s;white-space:nowrap}.btn-pay:hover:not(:disabled){opacity:.9}.btn-pay:disabled{opacity:.5;cursor:not-allowed}.past-admissions .section-header{background:#f8fafc}@media(max-width:640px){.billing-profile-page{padding:14px}.patient-info-card{flex-direction:column;align-items:flex-start}.patient-outstanding{text-align:left}.payment-panel{flex-direction:column;align-items:stretch}.payment-controls{flex-direction:column}.btn-pay{width:100%;text-align:center}}html,body{width:100%;max-width:100vw;overflow-x:hidden}
