@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.toast-container{position:fixed;top:1rem;right:1rem;z-index:9999;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.toast{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:300px;max-width:500px;pointer-events:all;animation:slideInRight .3s ease,fadeIn .3s ease;border-left:4px solid}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.toast-success{border-color:#48bb78;background:#f0fff4}.toast-error{border-color:#f56565;background:#fff5f5}.toast-warning{border-color:#ed8936;background:#fffaf0}.toast-info{border-color:#4299e1;background:#ebf8ff}.toast-icon{font-size:1.25rem;flex-shrink:0}.toast-message{flex:1;color:#1a202c;font-weight:500;line-height:1.5}.toast-close{background:none;border:none;color:#718096;cursor:pointer;padding:.25rem;font-size:1.25rem;line-height:1;border-radius:4px;transition:all .2s;flex-shrink:0}.toast-close:hover{background:#0000000d;color:#1a202c}@media (max-width: 768px){.toast-container{left:1rem;right:1rem}.toast{min-width:unset;width:100%}}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.error-content{background:#fff;border-radius:16px;padding:3rem;max-width:600px;width:100%;text-align:center;box-shadow:0 20px 60px #0000004d}.error-icon{font-size:5rem;margin-bottom:1rem}.error-content h1{color:#1a202c;margin-bottom:1rem}.error-message{color:#718096;margin-bottom:2rem;font-size:1.125rem}.error-details{text-align:left;margin:2rem 0;padding:1rem;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px}.error-details summary{cursor:pointer;font-weight:600;color:#667eea;margin-bottom:1rem}.error-details pre{background:#1a202c;color:#48bb78;padding:1rem;border-radius:6px;overflow-x:auto;font-size:.875rem;margin:.5rem 0}.error-actions{display:flex;gap:1rem;justify-content:center}.error-actions button{padding:.875rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;font-size:1rem;transition:all .2s}.error-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.error-actions .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.error-actions .btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.error-actions .btn-secondary:hover{background:#f7fafc}@media (max-width: 768px){.error-content{padding:2rem}.error-actions{flex-direction:column}}.loading-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#ffffffe6;z-index:9999}.loading-inline{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;gap:1rem}.spinner{border:3px solid rgba(102,126,234,.1);border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.loading-text{color:#718096;font-weight:500;margin:0;margin-top:1rem}.main-layout{display:flex;height:100vh;overflow:hidden;background:var(--bg-page, #f1f5f9);--sidebar-w: var(--sidebar-width, 260px);--sidebar-collapsed-w: var(--sidebar-collapsed, 64px);--header-h: var(--header-height, 60px)}.sidebar{width:var(--sidebar-w);background:var(--sidebar-bg, #0f172a);color:var(--sidebar-text, rgba(255,255,255,.65));display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;position:relative;z-index:100;transition:width .25s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sidebar, 2px 0 20px rgba(0,0,0,.25))}.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed-w)}.sidebar-header{height:var(--header-h);padding:0 14px;display:flex;align-items:center;gap:10px;flex-shrink:0;border-bottom:1px solid var(--sidebar-border, rgba(255,255,255,.07))}.sidebar-logo{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#4f46e5 60%,#4338ca);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 0 0 1px #6366f166,0 4px 14px #6366f173}.sidebar-logo svg{color:#fff}.sidebar-brand{flex:1;min-width:0;overflow:hidden}.sidebar-brand h1{margin:0;font-size:.875rem;font-weight:700;color:#fff;line-height:1.2;white-space:nowrap;letter-spacing:-.01em}.sidebar-brand p{margin:2px 0 0;font-size:.65rem;color:#ffffff61;white-space:nowrap;letter-spacing:.02em}.collapse-btn{width:28px;height:28px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:transparent;color:#ffffff59;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s,color .15s,border-color .15s;margin-left:auto}.collapse-btn:hover{background:#ffffff14;border-color:#fff3;color:#fff}.nav-section-label{padding:18px 16px 5px;display:flex;align-items:center}.nav-section-label span{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff9}.nav-section-divider{height:1px;background:var(--sidebar-border, rgba(255,255,255,.07));margin:10px 14px}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:6px 0 12px}.sidebar-nav::-webkit-scrollbar{width:3px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:2px}.nav-item{display:flex;align-items:center;gap:9px;padding:7.5px 12px;margin:1px 8px;border-radius:8px;color:var(--sidebar-text, rgba(255,255,255,.8));text-decoration:none;cursor:pointer;border:none;background:transparent;width:calc(100% - 16px);text-align:left;font-size:.82rem;font-weight:500;font-family:inherit;transition:background .14s,color .14s;position:relative;box-sizing:border-box;line-height:1.4}.nav-item:hover{background:var(--sidebar-hover-bg, rgba(255,255,255,.07));color:#fff;text-decoration:none}.nav-item.active{background:var(--sidebar-active-bg, rgba(99,102,241,.2));color:#fff;font-weight:600}.nav-item.active:before{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);width:3px;height:18px;background:var(--sidebar-active-border, #6366f1);border-radius:0 3px 3px 0}.nav-item-collapsed{justify-content:center;padding:9px 0;margin:2px 10px;width:calc(100% - 20px);border-radius:8px;cursor:pointer;position:relative;display:flex;align-items:center;color:#ffffffb3;transition:background .14s,color .14s}.nav-item-collapsed:hover{background:#ffffff12;color:#fff}.nav-item-collapsed.active{background:#6366f138;color:#fff}.collapsed-badge-dot{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:#ef4444;border:1.5px solid var(--sidebar-bg, #0f172a)}.nav-icon{flex-shrink:0;opacity:.75;transition:opacity .14s}.nav-item:hover .nav-icon,.nav-item.active .nav-icon{opacity:1}.nav-item.active .nav-icon{color:#a5b4fc}.nav-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chevron{flex-shrink:0;opacity:.45;transition:transform .18s ease,opacity .14s}.chevron.open{opacity:.7}.nav-item:hover .chevron{opacity:.4}.nav-group{width:100%}.group-header{font-weight:600;color:#ffffffd9}.nav-children{animation:navChildIn .15s ease forwards}@keyframes navChildIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.nav-children .nav-item{font-size:.79rem;color:#ffffffb3;padding-top:5.5px;padding-bottom:5.5px}.nav-children .nav-item:hover,.nav-children .nav-item.active{color:#fff}.badge{flex-shrink:0;padding:2px 7px;border-radius:999px;font-size:.59rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-left:auto}.badge-red{background:#ef444433;color:#fca5a5}.badge-green{background:#10b98133;color:#6ee7b7}.badge-orange{background:#f59e0b33;color:#fcd34d}.badge-blue{background:#3b82f633;color:#93c5fd}.badge-purple{background:#8b5cf633;color:#c4b5fd}.sidebar-footer{padding:10px 10px 12px;border-top:1px solid var(--sidebar-border, rgba(255,255,255,.07));flex-shrink:0;display:flex;flex-direction:column;gap:6px}.user-info{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);transition:background .15s}.user-info:hover{background:#ffffff14}.user-avatar{width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,#6366f1,#4338ca);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.72rem;color:#fff;flex-shrink:0;letter-spacing:.5px;box-shadow:0 2px 8px #6366f173}.user-details{flex:1;min-width:0}.user-details .user-name{margin:0;font-size:.78rem;font-weight:600;color:#fff!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-details .user-role{margin:2px 0 0;font-size:.64rem;color:#ffffff8c!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{width:100%;padding:7px 12px;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#fff6;font-size:.78rem;font-weight:500;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;transition:background .15s,border-color .15s,color .15s}.logout-btn:hover{background:#ef44441f;border-color:#ef44444d;color:#fca5a5}.sidebar-collapsed .user-info{justify-content:center;padding:8px 6px}.sidebar-collapsed .logout-btn{padding:7px 6px}.main-body{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.top-header{height:var(--header-h);background:#fff;border-bottom:1px solid var(--header-border, #e2e8f0);display:flex;align-items:center;padding:0 22px;gap:16px;flex-shrink:0;z-index:50;box-shadow:0 1px #0000000a,0 2px 8px #0000000a}.header-breadcrumb{display:flex;align-items:center;gap:6px;font-size:.79rem;color:var(--text-muted, #94a3b8);flex-shrink:0}.crumb-root{color:var(--text-muted, #94a3b8)}.crumb-sep{color:#cbd5e1}.crumb-current{font-weight:700;color:var(--text-primary, #0f172a)}.header-search{flex:1;max-width:440px;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:11px;color:var(--text-muted, #94a3b8);pointer-events:none}.search-input{width:100%;height:36px;padding:0 72px 0 35px;border:1px solid var(--border, #e2e8f0);border-radius:9px;background:var(--bg-muted, #f8fafc);font-size:.82rem;color:var(--text-primary, #0f172a);font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.search-input::placeholder{color:var(--text-muted, #94a3b8)}.search-input:focus{border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f11f}.search-kbd{position:absolute;right:10px;padding:2px 7px;font-size:.62rem;font-family:inherit;color:var(--text-muted, #94a3b8);border:1px solid var(--border, #e2e8f0);border-radius:5px;background:#fff;pointer-events:none}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.icon-btn{width:36px;height:36px;border-radius:9px;border:1px solid var(--border, #e2e8f0);background:var(--bg-muted, #f8fafc);color:var(--text-secondary, #64748b);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:background .14s,border-color .14s,color .14s,box-shadow .14s}.icon-btn:hover{background:#fff;border-color:#c7d2de;color:var(--text-primary, #0f172a);box-shadow:var(--shadow-sm)}.notif-dot{position:absolute;top:7px;right:7px;width:7px;height:7px;border-radius:50%;background:#ef4444;border:1.5px solid var(--bg-muted, #f8fafc);animation:pulseDot 2s ease-in-out infinite}@keyframes pulseDot{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 4px #ef444400}}.notif-wrapper{position:relative}.notif-panel{position:absolute;top:calc(100% + 10px);right:0;width:330px;background:#fff;border:1px solid var(--border, #e2e8f0);border-radius:14px;box-shadow:0 12px 40px #00000024;z-index:200;overflow:hidden;animation:panelIn .15s cubic-bezier(.4,0,.2,1)}@keyframes panelIn{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.notif-header{display:flex;align-items:center;justify-content:space-between;padding:13px 16px 11px;border-bottom:1px solid #f1f5f9}.notif-header span{font-size:.83rem;font-weight:700;color:var(--text-primary, #0f172a)}.notif-clear{font-size:.72rem;color:#6366f1;background:none;border:none;cursor:pointer;font-family:inherit;font-weight:600}.notif-item{display:flex;align-items:flex-start;gap:10px;padding:10px 16px;border-bottom:1px solid #f8fafc;transition:background .12s}.notif-item:hover{background:#fafbfc}.notif-item.unread{background:#fafbff}.notif-item.unread:hover{background:#f5f6ff}.notif-icon{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.notif-icon-red{background:#fef2f2;color:#ef4444}.notif-icon-orange{background:#fffbeb;color:#f59e0b}.notif-icon-green{background:#f0fdf4;color:#10b981}.notif-body{flex:1;min-width:0}.notif-body p{margin:0;font-size:.79rem;color:#1e293b;font-weight:500;line-height:1.4}.notif-body span{font-size:.7rem;color:var(--text-muted, #94a3b8);margin-top:2px;display:block}.notif-footer{padding:10px 16px;text-align:center;font-size:.75rem;color:#6366f1;font-weight:600;cursor:pointer;transition:background .12s}.notif-footer:hover{background:#f5f6ff}.header-status{display:flex;align-items:center;gap:6px;padding:5px 13px;background:var(--bg-muted, #f8fafc);border:1px solid var(--border, #e2e8f0);border-radius:999px;font-size:.72rem;font-weight:600;color:var(--text-secondary, #475569);white-space:nowrap}.header-status-dot{width:7px;height:7px;border-radius:50%;background:var(--color-success, #10b981);box-shadow:0 0 6px #10b9818c;flex-shrink:0}.main-content{flex:1;overflow-y:auto;background:var(--bg-page, #f1f5f9);padding:0}.main-content::-webkit-scrollbar{width:6px}.main-content::-webkit-scrollbar-track{background:transparent}.main-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.main-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.nav-item:focus-visible,.logout-btn:focus-visible,.collapse-btn:focus-visible,.icon-btn:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.mobile-menu-btn{display:none;width:36px;height:36px;border-radius:9px;border:1px solid var(--border, #e2e8f0);background:var(--bg-muted, #f8fafc);color:var(--text-secondary, #64748b);align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .14s,border-color .14s}.mobile-menu-btn:hover{background:#fff;border-color:#c7d2de}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media (max-width: 768px){.mobile-menu-btn{display:flex}.main-layout{display:block;position:relative}.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:100;transform:translate(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1);width:var(--sidebar-w)!important}.sidebar-open .sidebar{transform:translate(0)}.sidebar-open .sidebar-overlay{display:block}.main-body{display:flex;flex-direction:column;width:100%;height:100vh;overflow:hidden}.header-search{display:none}.top-header{padding:0 14px;gap:10px}}.auth-split{display:flex;min-height:100vh;height:100vh}.auth-panel-left{width:42%;flex-shrink:0;display:flex;flex-direction:column;position:relative;overflow:hidden}.auth-panel-left .auth-slide{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;opacity:0;animation:authSlide 25s infinite;transform:scale(1.08);animation-timing-function:ease-in-out}.auth-panel-left .auth-slide:nth-child(1){background-image:url(https://images.unsplash.com/photo-1576091160550-2173dba999ef?w=900&q=80&auto=format&fit=crop);animation-delay:0s}.auth-panel-left .auth-slide:nth-child(2){background-image:url(https://images.unsplash.com/photo-1551601651-2a8555f1a136?w=900&q=80&auto=format&fit=crop);animation-delay:5s}.auth-panel-left .auth-slide:nth-child(3){background-image:url(https://images.unsplash.com/photo-1579684385127-1ef15d508118?w=900&q=80&auto=format&fit=crop);animation-delay:10s}.auth-panel-left .auth-slide:nth-child(4){background-image:url(https://images.unsplash.com/photo-1516549655169-df83a0774514?w=900&q=80&auto=format&fit=crop);animation-delay:15s}.auth-panel-left .auth-slide:nth-child(5){background-image:url(https://images.unsplash.com/photo-1579684385127-1ef15d508118?w=900&q=80&auto=format&fit=crop);animation-delay:20s}@keyframes authSlide{0%{opacity:0;transform:scale(1.08)}8%{opacity:1;transform:scale(1.04)}20%{opacity:1;transform:scale(1)}28%{opacity:0;transform:scale(1)}to{opacity:0;transform:scale(1.08)}}.auth-panel-left:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(160deg,#082812cc,#0c3719b8,#051c0ce0);z-index:1;pointer-events:none}.auth-panel-left:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;border:60px solid rgba(255,255,255,.05);bottom:-120px;right:-120px;pointer-events:none;z-index:1}.auth-panel-left-inner{position:relative;z-index:2;display:flex;flex-direction:column;padding:2.75rem 3rem;height:100%}.auth-brand{margin-bottom:2.5rem}.auth-brand-icon{width:52px;height:52px;background:#ffffff26;border-radius:14px;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-brand-icon svg{width:28px;height:28px;color:#fff}.auth-panel-text{margin-bottom:2.5rem}.auth-panel-text h1{font-size:2.4rem;font-weight:800;color:#fff;line-height:1.15;letter-spacing:-.025em;margin-bottom:1rem}.auth-panel-text p{font-size:.92rem;color:#ffffffa6;line-height:1.65;max-width:340px}.auth-features{list-style:none;padding:0;margin:0 0 auto;display:flex;flex-direction:column;gap:.7rem}.auth-features li{display:flex;align-items:center;gap:.65rem;font-size:.88rem;color:#fffc;font-weight:500}.auth-feature-dot{width:8px;height:8px;border-radius:50%;background:#fff9;flex-shrink:0}.auth-panel-footer{margin-top:2rem;font-size:.72rem;color:#ffffff4d;letter-spacing:.01em}.auth-panel-right{flex:1;background:#fff;display:flex;align-items:center;justify-content:center;overflow-y:auto;padding:2rem}.auth-form-wrapper{width:100%;max-width:440px}.auth-form-header{margin-bottom:2rem}.auth-form-header h2{font-size:2rem;font-weight:800;color:#0f172a;letter-spacing:-.025em;margin-bottom:.35rem}.auth-form-header p{font-size:.9rem;color:#64748b}.auth-form{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column;gap:.45rem}.form-group-row{display:flex;justify-content:space-between;align-items:center}.form-group label{font-size:.83rem;font-weight:600;color:#1e293b}.input-icon-wrap{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:12px;display:flex;align-items:center;color:#94a3b8;pointer-events:none;z-index:1}.input-icon svg{width:16px;height:16px}.input-icon-wrap input,.input-icon-wrap input[type=email],.input-icon-wrap input[type=password],.input-icon-wrap input[type=text]{width:100%;padding:.72rem 2.75rem .72rem 2.5rem;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.93rem;font-family:inherit;background:#f8fafc;color:#0f172a;transition:border-color .18s,box-shadow .18s,background .18s;outline:none}.input-icon-wrap input::placeholder{color:#94a3b8}.input-icon-wrap input:focus{border-color:#1a6b3a;background:#fff;box-shadow:0 0 0 3px #1a6b3a1f}.input-icon-right{position:absolute;right:11px;background:none;border:none;cursor:pointer;padding:4px;color:#94a3b8;display:flex;align-items:center;transition:color .15s}.input-icon-right:hover{color:#475569}.input-icon-right svg{width:16px;height:16px}.link-muted{font-size:.78rem;font-weight:600;color:#1a6b3a;text-decoration:none;transition:color .15s}.link-muted:hover{color:#145c30;text-decoration:underline}.btn-primary{width:100%;padding:.82rem 1.5rem;background:#1a6b3a;color:#fff;border:none;border-radius:10px;font-size:.95rem;font-weight:700;font-family:inherit;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s;box-shadow:0 4px 14px #1a6b3a4d;letter-spacing:.01em}.btn-primary:hover:not(:disabled){background:#145c30;box-shadow:0 6px 20px #1a6b3a66;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.error-message{padding:.8rem 1rem;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:9px;font-size:.87rem}.success-message{padding:.8rem 1rem;background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;border-radius:9px;font-size:.87rem}.demo-section{margin-top:.5rem}.demo-divider{display:flex;align-items:center;gap:.75rem;color:#94a3b8;font-size:.78rem;margin-bottom:.85rem}.demo-divider:before,.demo-divider:after{content:"";flex:1;height:1px;background:#e2e8f0}.demo-cards{display:flex;flex-direction:column;gap:.4rem;max-height:340px;overflow-y:auto;padding-right:2px;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.demo-cards::-webkit-scrollbar{width:4px}.demo-cards::-webkit-scrollbar-track{background:transparent}.demo-cards::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.demo-card{display:flex;align-items:center;justify-content:space-between;padding:.55rem .9rem;border:1.5px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s;font-family:inherit;width:100%}.demo-card:hover{border-color:#1a6b3a;background:#f0fdf4;box-shadow:0 2px 8px #1a6b3a1a}.demo-card-left{display:flex;flex-direction:column;gap:1px}.demo-card-role{font-size:.75rem;font-weight:700;color:#1a6b3a;text-transform:uppercase;letter-spacing:.04em}.demo-card-email{font-size:.78rem;color:#475569}.demo-card-label{font-size:.7rem;color:#94a3b8;font-style:italic}.demo-card-action{font-size:.72rem;color:#94a3b8;white-space:nowrap;opacity:0;transition:opacity .15s}.demo-card:hover .demo-card-action{opacity:1;color:#1a6b3a}.demo-pw-note{text-align:center;font-size:.77rem;color:#94a3b8;margin-top:.75rem}.demo-pw-note strong{color:#475569}.auth-footer{text-align:center;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #f1f5f9;font-size:.84rem;color:#64748b}.link{color:#1a6b3a;font-weight:600;text-decoration:none;transition:color .15s}.link:hover{color:#145c30;text-decoration:underline}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#4a5568;font-size:.88rem}.checkbox-label input[type=checkbox]{width:auto}@media (max-width: 860px){.auth-split{flex-direction:column;height:auto;min-height:100vh}.auth-panel-left{width:100%;padding:0}.auth-panel-left-inner{padding:2rem 1.75rem 2.25rem}.auth-panel-left:after{display:none}.auth-panel-text h1{font-size:1.8rem}.auth-features{display:none}.auth-panel-right{padding:2rem 1.5rem 2.5rem;align-items:flex-start}.auth-form-wrapper{max-width:100%}}@media (max-width: 480px){.auth-form-header h2{font-size:1.6rem}.auth-panel-left-inner{padding:1.5rem}.form-row{grid-template-columns:1fr}}.dashboard{max-width:1400px;margin:0 auto;padding:2rem 2.5rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.dashboard-header h1{font-size:2rem;margin:0 0 .5rem;color:#1a202c}.dashboard-header p{color:#718096;margin:0}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-secondary:hover{background:#f7fafc}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;gap:1rem;box-shadow:0 2px 8px #0000000d;transition:all .3s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.75rem;flex-shrink:0}.stat-info{flex:1}.stat-info h3{font-size:2rem;margin:0 0 .25rem;color:#1a202c}.stat-info p{color:#718096;margin:0 0 .5rem;font-size:.875rem;font-weight:600}.stat-change{font-size:.8rem;padding:.25rem .5rem;border-radius:4px;display:inline-block}.stat-change.positive{background-color:#c6f6d5;color:#2f855a}.stat-change.negative{background-color:#fed7d7;color:#c53030}.stat-change.neutral{background-color:#bee3f8;color:#2c5282}.dashboard-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:start}.modules-section h2,.activity-section h2{font-size:1.5rem;margin:0 0 1.5rem;color:#1a202c}.modules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.module-card{background:#fff;border-radius:12px;overflow:hidden;text-decoration:none;display:block;transition:all .3s;box-shadow:0 2px 8px #0000000d}.module-card:hover{transform:translateY(-6px);box-shadow:0 12px 24px #00000026}.module-header{padding:1.5rem;display:flex;align-items:center;justify-content:center}.module-icon{font-size:2.5rem}.module-body{padding:1.5rem}.module-body h3{margin:0 0 .5rem;color:#1a202c;font-size:1.125rem}.module-body p{color:#718096;margin:0 0 1rem;font-size:.9rem}.module-stats{display:flex;gap:1.5rem;padding-top:1rem;border-top:1px solid #e2e8f0}.module-stat{display:flex;flex-direction:column}.stat-value{font-size:1.25rem;font-weight:700;color:#1a202c}.stat-label{font-size:.75rem;color:#a0aec0;text-transform:uppercase;letter-spacing:.5px}.activity-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d;height:fit-content}.activity-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.activity-item{display:flex;gap:1rem;padding:1rem;border-radius:8px;background-color:#f7fafc;transition:all .2s}.activity-item:hover{background-color:#edf2f7}.activity-icon{font-size:1.5rem;flex-shrink:0}.activity-content{flex:1}.activity-message{margin:0 0 .25rem;color:#2d3748;font-size:.9rem}.activity-time{font-size:.8rem;color:#a0aec0}.view-all-btn{width:100%;padding:.75rem;background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-weight:600;color:#667eea;transition:all .2s}.view-all-btn:hover{background-color:#f7fafc;border-color:#667eea}@media (max-width: 1280px){.stats-grid,.modules-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1024px){.dashboard{padding:1.5rem}.dashboard-content{grid-template-columns:1fr}}@media (max-width: 640px){.dashboard{padding:1rem}.dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem}.header-actions{width:100%;flex-direction:column}.stats-grid,.modules-grid{grid-template-columns:1fr}}.bed-management{max-width:1600px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{font-size:2rem;margin:0 0 .5rem;color:#1a202c}.page-header p{color:#718096;margin:0}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-box{background:#fff;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 2px 8px #0000000d}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.75rem}.stat-icon.green{background:#c6f6d5}.stat-icon.blue{background:#bee3f8}.stat-icon.orange{background:#fed7d7}.stat-icon.red{background:#fbb6ce}.stat-box h3{font-size:1.75rem;margin:0;color:#1a202c}.stat-box p{font-size:.875rem;color:#718096;margin:0}.tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e2e8f0}.tab{padding:1rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-weight:600;color:#718096;transition:all .2s}.tab:hover{color:#667eea}.tab.active{color:#667eea;border-bottom-color:#667eea}.tab-content{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000000d;min-height:400px}.department-section{margin-bottom:3rem}.department-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e2e8f0}.department-header h2{font-size:1.5rem;color:#1a202c;margin:0}.department-stats{display:flex;gap:1rem}.stat-badge{background:#f7fafc;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;color:#4a5568}.beds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem}.bed-card{border:2px solid #e2e8f0;border-radius:12px;padding:1rem;transition:all .3s}.bed-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.bed-card.status-available{border-color:#48bb78;background:#f0fff4}.bed-card.status-occupied{border-color:#4299e1;background:#ebf8ff}.bed-card.status-cleaning{border-color:#ed8936;background:#fffaf0}.bed-card.status-maintenance{border-color:#f56565;background:#fff5f5}.bed-card.status-reserved{border-color:#9f7aea;background:#faf5ff}.bed-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.bed-header strong{font-size:1.125rem;color:#1a202c}.bed-status{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.bed-status.status-available{background:#48bb78;color:#fff}.bed-status.status-occupied{background:#4299e1;color:#fff}.bed-status.status-cleaning{background:#ed8936;color:#fff}.bed-status.status-maintenance{background:#f56565;color:#fff}.bed-details{font-size:.9rem}.bed-details p{margin:.5rem 0;color:#4a5568}.patient-name{font-weight:600;color:#2d3748!important;margin-top:.75rem!important}.los{font-size:.85rem;color:#718096!important}.bed-features{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.feature{background:#edf2f7;padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:600}.data-table{width:100%;border-collapse:collapse}.data-table thead{background:#f7fafc}.data-table th{padding:1rem;text-align:left;font-weight:600;color:#4a5568;border-bottom:2px solid #e2e8f0}.data-table td{padding:1rem;border-bottom:1px solid #e2e8f0;color:#2d3748}.data-table tbody tr:hover{background:#f7fafc}.priority-badge{padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;display:inline-block}.priority-critical{background:#fed7d7;color:#c53030}.priority-high{background:#feebc8;color:#c05621}.priority-medium{background:#bee3f8;color:#2c5282}.priority-low{background:#c6f6d5;color:#2f855a}.status-badge{padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;background:#edf2f7;color:#4a5568;display:inline-block}.btn-small{padding:.5rem 1rem;font-size:.875rem;border-radius:6px;border:none;cursor:pointer;font-weight:600;transition:all .2s}.btn-small.btn-primary{background:#667eea;color:#fff}.btn-small.btn-primary:hover{background:#5a67d8}.loading{text-align:center;padding:4rem 2rem;color:#718096;font-size:1.125rem}.mt-2{margin-top:.5rem}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.beds-grid{grid-template-columns:1fr}.department-header{flex-direction:column;align-items:flex-start;gap:1rem}.data-table{font-size:.85rem}.data-table th,.data-table td{padding:.75rem .5rem}}.bed-board-page{padding:2rem;max-width:1800px;margin:0 auto;background:#f5f5f5;min-height:100vh}.subtitle{color:#666;font-size:1rem;margin-bottom:.5rem}.last-updated{color:#999;font-size:.875rem;font-style:italic}.stat-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;gap:1rem;transition:transform .2s,box-shadow .2s}.stat-card svg{flex-shrink:0}.stat-card h3{font-size:2rem;font-weight:700;margin:0;line-height:1}.stat-card p{color:#666;font-size:.875rem;margin:.5rem 0 0;text-transform:uppercase;letter-spacing:.05em}.stat-card .percentage{display:block;font-size:.75rem;color:#999;margin-top:.25rem}.stat-card.total{border-left:4px solid #6366f1}.stat-card.total svg{color:#6366f1}.stat-card.total h3{color:#6366f1}.stat-card.occupied{border-left:4px solid #ef4444}.stat-card.occupied svg{color:#ef4444}.stat-card.occupied h3{color:#ef4444}.stat-card.available{border-left:4px solid #10b981}.stat-card.available svg{color:#10b981}.stat-card.available h3{color:#10b981}.stat-card.cleaning{border-left:4px solid #f59e0b}.stat-card.cleaning svg{color:#f59e0b}.stat-card.cleaning h3{color:#f59e0b}.stat-card.reserved{border-left:4px solid #8b5cf6}.stat-card.reserved svg{color:#8b5cf6}.stat-card.reserved h3{color:#8b5cf6}.stat-card.maintenance{border-left:4px solid #6b7280}.stat-card.maintenance svg{color:#6b7280}.stat-card.maintenance h3{color:#6b7280}.filter-results{margin-left:auto;color:#666;font-size:.875rem;font-weight:500}.beds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.bed-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;transition:transform .2s,box-shadow .2s;border-left:4px solid transparent}.bed-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.bed-card.bed-occupied{border-left-color:#ef4444;background:linear-gradient(to right,#ef44440d,#fff)}.bed-card.bed-available{border-left-color:#10b981;background:linear-gradient(to right,#10b9810d,#fff)}.bed-card.bed-cleaning{border-left-color:#f59e0b;background:linear-gradient(to right,#f59e0b0d,#fff)}.bed-card.bed-reserved{border-left-color:#8b5cf6;background:linear-gradient(to right,#8b5cf60d,#fff)}.bed-card.bed-maintenance{border-left-color:#6b7280;background:linear-gradient(to right,#6b72800d,#fff)}.bed-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.bed-info h3{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.department-badge{display:inline-block;background:#e5e7eb;color:#374151;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500}.bed-status-icon{padding:.5rem;border-radius:8px;background:#f9fafb}.bed-status-label{margin-bottom:1rem}.status-badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge.occupied{background:#fef2f2;color:#ef4444}.status-badge.available{background:#f0fdf4;color:#10b981}.status-badge.cleaning{background:#fffbeb;color:#f59e0b}.status-badge.reserved{background:#faf5ff;color:#8b5cf6}.status-badge.maintenance{background:#f9fafb;color:#6b7280}.patient-info{background:#f9fafb;padding:1rem;border-radius:8px;margin-bottom:1rem}.patient-detail{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.patient-detail svg{color:#6366f1;flex-shrink:0;margin-top:.25rem}.patient-detail strong{display:block;color:#1a1a1a;font-size:1rem;margin-bottom:.25rem}.patient-detail .mrn{color:#666;font-size:.875rem;font-family:Courier New,monospace;margin:0}.admission-time,.expected-arrival{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.875rem;margin-top:.5rem}.admission-time svg,.expected-arrival svg{color:#6366f1}.no-patient{text-align:center;padding:2rem 1rem;color:#9ca3af}.no-patient svg{margin-bottom:.5rem;opacity:.5}.no-patient p{margin:0;font-size:.875rem}.cleaning-info{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f0fdf4;border-radius:6px;margin-bottom:1rem;font-size:.875rem;color:#059669}.cleaning-info svg{flex-shrink:0}.bed-actions{display:flex;gap:.5rem;margin-top:1rem}.bed-actions .btn{flex:1}.loading-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a}.spinning{animation:spin .8s linear infinite}.loading-state p{color:#6b7280;font-size:1rem}@media (max-width: 1400px){.stats-dashboard{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.beds-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.stats-dashboard{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.bed-board-page{padding:1rem}.page-header{flex-direction:column;gap:1rem}.stats-dashboard,.beds-grid{grid-template-columns:1fr}.filters-section{flex-direction:column;align-items:stretch}.filter-group,.filter-group select{width:100%}.filter-results{margin-left:0;text-align:center}}@media (max-width: 480px){.bed-actions{flex-direction:column}.stat-card{flex-direction:column;text-align:center}}.bed-requests-page{padding:2rem;max-width:1800px;margin:0 auto;background:#f5f5f5;min-height:100vh}.stat-card.approved{border-left-color:#10b981}.stat-card.approved svg{color:#10b981}.stat-card.assigned{border-left-color:#6366f1}.stat-card.assigned svg{color:#6366f1}.stat-card.rejected{border-left-color:#ef4444}.stat-card.rejected svg{color:#ef4444}.stat-card.stat-priority{border-left-color:#dc2626}.stat-card.stat-priority svg{color:#dc2626}.stat-card.urgent{border-left-color:#f59e0b}.stat-card.urgent svg{color:#f59e0b}.requests-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(500px,1fr));gap:1.5rem}.request-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;transition:transform .2s,box-shadow .2s;border-left:4px solid #6366f1}.request-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.request-card.stat-border{border-left-color:#dc2626;background:linear-gradient(to right,#dc26260d,#fff)}.request-card.urgent-border{border-left-color:#f59e0b;background:linear-gradient(to right,#f59e0b0d,#fff)}.request-card.normal-border{border-left-color:#10b981}.request-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.request-info h3{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.request-info .mrn{font-family:Courier New,monospace;color:#6366f1;font-weight:500;font-size:.875rem;margin:0}.request-badges{display:flex;gap:.5rem;flex-wrap:wrap}.priority-badge{display:inline-block;padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.priority-badge.priority-stat{background:#fef2f2;color:#dc2626;border:1px solid #fca5a5}.priority-badge.priority-urgent{background:#fffbeb;color:#f59e0b;border:1px solid #fcd34d}.priority-badge.priority-normal{background:#f0fdf4;color:#10b981;border:1px solid #86efac}.status-badge{display:inline-block;padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge.status-approved{background:#f0fdf4;color:#10b981}.status-badge.status-assigned{background:#eff6ff;color:#3b82f6}.status-badge.status-rejected{background:#fef2f2;color:#ef4444}.request-details{margin-bottom:1rem}.detail-row{display:flex;gap:1rem;margin-bottom:.75rem}.detail-item{flex:1;display:flex;flex-direction:column;gap:.25rem}.detail-item.full-width{flex:1 0 100%}.detail-item strong{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.detail-item span{font-size:.95rem;color:#1a1a1a}.time-ago{font-size:.75rem!important;color:#9ca3af!important;font-style:italic}.condition-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600}.condition-badge.condition-critical{background:#fef2f2;color:#dc2626}.condition-badge.condition-stable{background:#f0fdf4;color:#10b981}.approval-info,.assignment-info,.rejection-info{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-radius:8px;font-size:.875rem;margin-top:.75rem}.approval-info{background:#f0fdf4;color:#059669}.approval-info svg{color:#10b981}.assignment-info{background:#eff6ff;color:#1d4ed8}.assignment-info svg{color:#3b82f6}.rejection-info{background:#fef2f2;color:#b91c1c}.rejection-info svg{color:#ef4444}.request-actions{display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.request-actions .btn{flex:1}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-success{background-color:#10b981;color:#fff}.btn-success:hover:not(:disabled){background-color:#059669;box-shadow:0 4px 6px #10b9814d}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626;box-shadow:0 4px 6px #ef44444d}@media (max-width: 1200px){.requests-container{grid-template-columns:1fr}}@media (max-width: 1024px){.stats-dashboard{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.bed-requests-page{padding:1rem}.page-header{flex-direction:column;gap:1rem}.stats-dashboard{grid-template-columns:1fr}.filters-section{flex-direction:column;align-items:stretch}.search-box{min-width:auto}.filter-results{margin-left:0;text-align:center}.detail-row{flex-direction:column;gap:.5rem}.request-actions{flex-direction:column}}.all-bills-page{padding:2rem;max-width:1800px;margin:0 auto;background:#f5f5f5;min-height:100vh}.page-header{background:#fff;padding:2rem;border-radius:12px;margin-bottom:2rem;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:flex-start}.page-header h1{font-size:2rem;color:#1a1a1a;margin-bottom:.5rem}.stats-dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;gap:1rem;border-left:4px solid #6366f1;transition:transform .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.stat-card h3{font-size:1.75rem;font-weight:700;margin:0;color:#1a1a1a}.stat-card p{color:#666;font-size:.875rem;margin:.25rem 0 0;text-transform:uppercase;letter-spacing:.05em}.stat-card.paid{border-left-color:#10b981}.stat-card.paid svg{color:#10b981}.stat-card.pending{border-left-color:#f59e0b}.stat-card.pending svg{color:#f59e0b}.stat-card.partial{border-left-color:#3b82f6}.stat-card.partial svg{color:#3b82f6}.stat-card.overdue{border-left-color:#ef4444}.stat-card.overdue svg{color:#ef4444}.stat-card.revenue{border-left-color:#8b5cf6}.stat-card.revenue svg{color:#8b5cf6}.stat-card.collected{border-left-color:#10b981}.stat-card.collected svg{color:#10b981}.stat-card.outstanding{border-left-color:#ef4444}.stat-card.outstanding svg{color:#ef4444}.filters-section{background:#fff;padding:1.5rem;border-radius:12px;margin-bottom:2rem;box-shadow:0 2px 4px #0000001a;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.search-box{flex:1;min-width:300px;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f9fafb;border:1px solid #d1d5db;border-radius:8px;transition:border-color .2s}.search-box:focus-within{border-color:#6366f1;background:#fff}.search-box input{flex:1;border:none;background:transparent;outline:none;font-size:.95rem;color:#1a1a1a}.search-box input::placeholder{color:#9ca3af}.filter-group select{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;background:#fff;cursor:pointer;transition:border-color .2s}.filter-group select:hover{border-color:#6366f1}.filter-results{color:#666;font-size:.875rem;font-weight:500;margin-left:auto}.bills-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.bills-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.bills-table th{text-align:left;padding:1rem 1.5rem;font-weight:600;font-size:.875rem;color:#374151;text-transform:uppercase;letter-spacing:.05em}.bills-table tbody tr:hover{background:#f9fafb}.bills-table tbody tr.overdue-row{background:#fef2f2}.bills-table tbody tr.overdue-row:hover{background:#fee2e2}.bills-table td{padding:1rem 1.5rem;font-size:.95rem;color:#1a1a1a}.bills-table td.mrn{font-family:Courier New,monospace;color:#6366f1;font-weight:500}.bills-table td.amount{font-weight:600;text-align:right}.bills-table td.paid-amount{color:#10b981}.bills-table td.balance-amount{color:#ef4444}.overdue-date{color:#ef4444;font-weight:600}.overdue-badge{display:inline-block;background:#ef4444;color:#fff;padding:.125rem .5rem;border-radius:4px;font-size:.625rem;font-weight:700;margin-left:.5rem;letter-spacing:.05em}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge.status-paid{background:#f0fdf4;color:#10b981}.status-badge.status-pending{background:#fffbeb;color:#f59e0b}.status-badge.status-partial{background:#eff6ff;color:#3b82f6}.status-badge.status-overdue{background:#fef2f2;color:#ef4444}.action-buttons{display:flex;gap:.5rem;align-items:center}.btn-icon{padding:.5rem;border:1px solid #d1d5db;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:#6b7280}.btn-icon:hover{background:#f9fafb;border-color:#6366f1;color:#6366f1}.btn-icon.btn-primary-icon{background:#6366f1;border-color:#6366f1;color:#fff}.btn-icon.btn-primary-icon:hover{background:#4f46e5;box-shadow:0 2px 4px #6366f14d}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary:hover:not(:disabled){background-color:#4f46e5;box-shadow:0 4px 6px #6366f14d}.loading-state,.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a}.empty-state h3{color:#1a1a1a;margin-bottom:.5rem}.empty-state p{color:#6b7280}@media (max-width: 1400px){.stats-dashboard{grid-template-columns:repeat(4,1fr)}}@media (max-width: 1024px){.stats-dashboard{grid-template-columns:repeat(2,1fr)}.bills-table-container{overflow-x:auto}.bills-table{min-width:1000px}}@media (max-width: 768px){.all-bills-page{padding:1rem}.page-header{flex-direction:column;gap:1rem}.stats-dashboard{grid-template-columns:1fr}.filters-section{flex-direction:column;align-items:stretch}.search-box{min-width:auto}.filter-results{margin-left:0;text-align:center}}.patients-page{max-width:1600px;margin:0 auto}.filters-section{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000d;display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.search-box{flex:1;min-width:300px;position:relative}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-size:1.25rem}.search-input{width:100%;padding:.875rem 1rem .875rem 3rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.filter-buttons{display:flex;gap:.5rem}.filter-btn{padding:.75rem 1.25rem;border:2px solid #e2e8f0;background:#fff;border-radius:8px;cursor:pointer;font-weight:600;color:#4a5568;transition:all .2s}.filter-btn:hover{border-color:#667eea;color:#667eea}.filter-btn.active{background:#667eea;color:#fff;border-color:#667eea}.content-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000000d}.empty-state{text-align:center;padding:4rem 2rem;color:#718096}.empty-state p{font-size:1.125rem}.stat-icon.purple{background:#e9d8fd}.status-active{background:#c6f6d5;color:#2f855a}.status-admitted{background:#bee3f8;color:#2c5282}.status-discharged{background:#e2e8f0;color:#4a5568}.status-emergency{background:#fed7d7;color:#c53030}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:#fff;border-radius:12px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header h2{margin:0;color:#1a202c}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#718096;padding:.5rem;border-radius:8px;transition:all .2s}.patient-details{display:flex;flex-direction:column;gap:2rem}.detail-section h3{font-size:1.25rem;margin:0 0 1rem;color:#1a202c;padding-bottom:.75rem;border-bottom:2px solid #e2e8f0}.detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.detail-item label{display:block;font-weight:600;color:#718096;font-size:.875rem;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.detail-item p{margin:0;color:#1a202c;font-size:1rem}.patient-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:#2d3748;font-size:.9rem}.form-group input,.form-group select{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:2px solid #e2e8f0}@media (max-width: 768px){.filters-section{flex-direction:column;align-items:stretch}.search-box{min-width:100%}.filter-buttons{flex-wrap:wrap}.modal-overlay{padding:1rem}.detail-grid,.form-row{grid-template-columns:1fr}}.patient-registration{max-width:1200px;margin:0 auto;padding:2rem;background:#fff}.registration-header{margin-bottom:2rem;border-bottom:2px solid #e0e0e0;padding-bottom:1rem}.registration-header h1{font-size:2rem;color:#333;margin-bottom:.5rem}.alert{padding:1rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.registration-form{display:flex;flex-direction:column;gap:2rem}.form-section{background:#f9f9f9;padding:1.5rem;border-radius:8px;border:1px solid #e0e0e0}.section-title{font-size:1.25rem;color:#333;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:2px solid #6366f1}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1rem}.form-row:last-child{margin-bottom:0}.form-group label{font-weight:500;margin-bottom:.5rem;color:#333;font-size:.95rem}.form-group label.required:after{content:" *";color:#dc2626}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input.error,.form-group select.error{border-color:#dc2626}.error-message{color:#dc2626;font-size:.875rem;margin-top:.25rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:2rem;border-top:2px solid #e0e0e0}.spinner{width:1rem;height:1rem;border:2px solid #ffffff;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite}@media (max-width: 768px){.patient-registration{padding:1rem}.form-row{grid-template-columns:1fr}.registration-header h1{font-size:1.5rem}.form-actions{flex-direction:column-reverse}.btn{width:100%;justify-content:center}}.patient-search{max-width:1400px;margin:0 auto;padding:2rem}.search-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.search-header h1{font-size:2rem;color:#333}.search-container{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 4px #0000001a}.quick-search{display:flex;flex-direction:column;gap:1rem}.search-input-group{display:flex;align-items:center;gap:.75rem;background:#f9f9f9;padding:.75rem;border-radius:8px;border:2px solid #e0e0e0}.search-input-group:focus-within{border-color:#6366f1}.search-input-group .icon-search{color:#6b7280;font-size:1.25rem}.search-input-group input{flex:1;border:none;background:transparent;font-size:1rem;padding:.5rem;outline:none}.btn-link{background:none;color:#6366f1;text-decoration:underline;padding:.5rem}.btn-link:hover{color:#4f46e5}.advanced-search{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e0e0e0}.advanced-search h3{font-size:1.1rem;color:#333;margin-bottom:1rem}.search-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.search-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.search-results{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e0e0e0}.results-header h2{font-size:1.5rem;color:#333}.results-count{color:#6b7280;font-size:.95rem}.loading-state{text-align:center;padding:3rem;color:#6b7280}.loading-state .spinner{width:3rem;height:3rem;border:4px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;margin:0 auto 1rem;animation:spin .8s linear infinite}.empty-state{text-align:center;padding:3rem;color:#6b7280}.empty-state .icon-users{font-size:4rem;color:#d1d5db;margin-bottom:1rem}.empty-state h3{font-size:1.25rem;color:#333;margin-bottom:.5rem}.empty-state p{margin-bottom:1.5rem}.patients-table{overflow-x:auto}.patients-table table{width:100%;border-collapse:collapse}.patients-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.patients-table th{text-align:left;padding:.75rem 1rem;font-weight:600;color:#374151;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.patients-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.patient-row{cursor:pointer}.patient-row:hover{background-color:#f9fafb}.patients-table td{padding:1rem;font-size:.95rem;color:#374151}.mrn{font-family:Courier New,monospace;color:#6366f1;font-weight:500}.name-container{display:flex;flex-direction:column;gap:.25rem}.full-name{font-weight:500;color:#111827}.allergy-badge{display:inline-flex;align-items:center;gap:.25rem;background:#fef3c7;color:#92400e;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;width:fit-content}.blood-type{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-weight:500;font-size:.875rem}.blood-type-Apos,.blood-type-Aneg{background:#fee2e2;color:#991b1b}.blood-type-Bpos,.blood-type-Bneg{background:#dbeafe;color:#1e40af}.blood-type-ABpos,.blood-type-ABneg{background:#fce7f3;color:#9f1239}.blood-type-Opos,.blood-type-Oneg{background:#d1fae5;color:#065f46}.contact-info{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem}.email{color:#6b7280}.pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.page-numbers{display:flex;gap:.25rem}.pagination .btn-sm{padding:.5rem .75rem;font-size:.875rem;min-width:2.5rem}.pagination .btn-sm.active{background-color:#6366f1;color:#fff}.ellipsis{padding:.5rem;color:#6b7280}.page-info{margin-left:1rem;color:#6b7280;font-size:.875rem}.btn-outline{background-color:transparent;border:1px solid #d1d5db;color:#374151}.btn-outline:hover:not(:disabled){background-color:#f9fafb;border-color:#6366f1;color:#6366f1}.form-group label{font-weight:500;margin-bottom:.5rem;color:#374151;font-size:.875rem}.form-group input,.form-group select{padding:.625rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}@media (max-width: 768px){.patient-search{padding:1rem}.search-header{flex-direction:column;align-items:flex-start;gap:1rem}.search-header .btn{width:100%}.search-grid{grid-template-columns:1fr}.search-actions{flex-direction:column}.search-actions .btn{width:100%}.patients-table{font-size:.875rem}.patients-table th,.patients-table td{padding:.5rem}.pagination{flex-wrap:wrap}}.export-patients-page{padding:2rem;max-width:1600px;margin:0 auto;height:calc(100vh - 4rem)}.page-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.export-container{display:grid;grid-template-columns:350px 1fr;gap:2rem;height:calc(100% - 120px)}.export-sidebar{background:#fff;border-radius:8px;padding:1.5rem;overflow-y:auto;box-shadow:0 2px 4px #0000001a}.section{margin-bottom:2rem}.section:last-child{margin-bottom:0}.section h3{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;color:#111827;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.form-group{margin-bottom:1rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:#374151;font-size:.9rem}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.date-range{display:flex;align-items:center;gap:.5rem}.date-range input{flex:1}.date-range span{color:#6b7280;font-size:.85rem}.format-options{display:grid;grid-template-columns:1fr;gap:1rem}.format-option{cursor:pointer}.format-option input[type=radio]{display:none}.format-card{display:flex;flex-direction:column;align-items:center;padding:1.25rem;border:2px solid #e5e7eb;border-radius:8px;transition:all .2s;text-align:center}.format-card svg{color:#6366f1;margin-bottom:.75rem}.format-card span{font-weight:600;color:#111827;margin-bottom:.25rem}.format-card small{color:#6b7280;font-size:.8rem}.format-option input[type=radio]:checked+.format-card{border-color:#6366f1;background:#eff6ff}.format-option:hover .format-card{border-color:#6366f1}.field-options{display:flex;flex-direction:column;gap:.75rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;padding:.75rem;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s}.checkbox-label:hover{background:#f9fafb;border-color:#6366f1}.checkbox-label input[type=checkbox]{width:1.125rem;height:1.125rem;cursor:pointer;accent-color:#6366f1}.checkbox-label span{font-size:.9rem;color:#374151}.export-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;overflow:hidden}.content-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.selection-info{display:flex;align-items:center;gap:.75rem;font-size:1rem;font-weight:500;color:#111827}.selection-info svg{color:#6366f1}.patients-list{flex:1;overflow-y:auto;padding:1rem}.patient-item{border:1px solid #e5e7eb;border-radius:6px;margin-bottom:.75rem;transition:all .2s}.patient-item:hover{border-color:#6366f1;box-shadow:0 2px 4px #6366f11a}.patient-item.selected{border-color:#6366f1;background:#eff6ff}.patient-checkbox{display:flex;align-items:center;gap:1rem;padding:1rem;cursor:pointer;width:100%}.patient-checkbox input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer;accent-color:#6366f1}.patient-name{font-weight:600;color:#111827;font-size:1rem;margin-bottom:.5rem}.patient-details{display:flex;gap:1rem;font-size:.85rem;color:#6b7280}.patient-details .mrn{font-family:Courier New,monospace;color:#6366f1;font-weight:500}.patient-details .blood-type{background:#fee2e2;color:#991b1b;padding:.125rem .5rem;border-radius:4px;font-weight:500}.export-actions{padding:1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.btn-large{width:100%;padding:1rem 1.5rem;font-size:1.1rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#6b7280;height:100%}.spinner{width:3rem;height:3rem;border:4px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;margin-bottom:1rem;animation:spin .8s linear infinite}@media (max-width: 1024px){.export-container{grid-template-columns:1fr}.export-sidebar{max-height:none}}@media (max-width: 768px){.export-patients-page{padding:1rem}.content-header{flex-direction:column;gap:1rem;align-items:flex-start}.patient-details{flex-direction:column;gap:.25rem}}.appointments-page{padding:2rem;max-width:1400px;margin:0 auto}.appointments-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.appointments-header h1{font-size:2rem;color:#333;margin-bottom:.5rem}.appointments-filters{background:#f9f9f9;padding:1rem;border-radius:8px;margin-bottom:2rem;display:flex;gap:1rem;flex-wrap:wrap}.filter-group select{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:.95rem}.calendar-container{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.calendar-header h2{font-size:1.5rem;color:#333}.calendar-grid{display:flex;flex-direction:column}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:#e0e0e0;border:1px solid #e0e0e0;border-bottom:none}.weekday{background:#f9f9f9;padding:.75rem;text-align:center;font-weight:600;color:#666;font-size:.875rem;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:#e0e0e0;border:1px solid #e0e0e0;min-height:500px}.calendar-day{background:#fff;min-height:100px;padding:.5rem;position:relative;cursor:pointer;transition:background-color .2s}.calendar-day:hover{background:#f9f9f9}.calendar-day.other-month{background:#fafafa;opacity:.5}.calendar-day.today{background:#e0e7ff;border:2px solid #6366f1}.day-number{font-weight:500;color:#333;margin-bottom:.5rem}.appointment-pill{background:#6366f1;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;margin-bottom:.25rem;display:flex;align-items:center;gap:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointments-list{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.appointments-table{width:100%;border-collapse:collapse}.appointments-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.appointments-table th{text-align:left;padding:.75rem 1rem;font-weight:600;color:#374151;font-size:.875rem;text-transform:uppercase}.appointments-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.appointments-table tbody tr:hover{background-color:#f9fafb}.appointments-table td{padding:1rem;color:#374151}.datetime{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.type-badge{background:#e0e7ff;color:#3730a3;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.status-scheduled{background:#dbeafe;color:#1e40af}.status-confirmed{background:#d1fae5;color:#065f46}.status-completed{background:#d1d5db;color:#374151}.status-cancelled{background:#fee2e2;color:#991b1b}.status-no-show{background:#fef3c7;color:#92400e}.close-btn{background:none;border:none;cursor:pointer;padding:.5rem;color:#6b7280;transition:color .2s}.appointment-form{padding:1.5rem}.btn-icon{padding:.5rem;min-width:auto}@media (max-width: 768px){.appointments-page{padding:1rem}.appointments-header{flex-direction:column;gap:1rem}.header-actions{width:100%;flex-direction:column}.header-actions .btn{width:100%;justify-content:center}.calendar-days{min-height:400px}.calendar-day{min-height:60px;font-size:.875rem}.appointment-pill{font-size:.65rem;padding:.125rem .25rem}.form-row{grid-template-columns:1fr}.modal-content{width:95%}}.medical-records-page{padding:2rem;max-width:1600px;margin:0 auto;height:calc(100vh - 4rem)}.records-container{display:grid;grid-template-columns:300px 1fr;gap:2rem;height:calc(100% - 120px)}.patient-sidebar{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;overflow:hidden}.sidebar-header{padding:1rem;border-bottom:1px solid #e5e7eb}.sidebar-header h3{margin-bottom:1rem;color:#111827}.search-box{display:flex;align-items:center;gap:.5rem;background:#f9fafb;padding:.5rem;border-radius:6px;border:1px solid #d1d5db}.search-box input{flex:1;border:none;background:transparent;outline:none;font-size:.9rem}.patient-list{flex:1;overflow-y:auto}.patient-item{padding:1rem;border-bottom:1px solid #e5e7eb;cursor:pointer;transition:background-color .2s;display:flex;justify-content:space-between;align-items:center}.patient-item:hover{background-color:#f9fafb}.patient-item.active{background-color:#e0e7ff;border-left:3px solid #6366f1}.patient-name{font-weight:500;color:#111827;margin-bottom:.25rem}.patient-meta{display:flex;gap:.75rem;font-size:.85rem;color:#6b7280}.mrn{font-family:Courier New,monospace}.allergy-indicator{font-size:1.2rem}.records-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;overflow-y:auto}.patient-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.patient-details h2{color:#111827;margin-bottom:1rem}.patient-stats{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem;font-size:.9rem}.patient-stats span{color:#6b7280}.patient-stats strong{color:#111827;margin-right:.25rem}.allergies-warning{background:#fef3c7;border:1px solid #fde047;padding:.75rem 1rem;border-radius:6px;color:#92400e;margin-top:1rem}.record-filters{display:flex;align-items:center;gap:.5rem;margin-top:1rem}.record-filters select{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff}.records-timeline{display:flex;flex-direction:column;gap:1.5rem}.record-card{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:box-shadow .2s}.record-card:hover{box-shadow:0 4px 6px #0000001a}.record-header{background:#f9fafb;padding:1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e7eb}.record-meta{display:flex;gap:1.5rem;flex-wrap:wrap;align-items:center}.record-type{background:#6366f1;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.record-date,.record-provider{display:flex;align-items:center;gap:.25rem;font-size:.85rem;color:#6b7280}.record-actions{display:flex;gap:.5rem}.btn-icon{background:none;border:none;padding:.5rem;cursor:pointer;color:#6b7280;border-radius:4px;transition:all .2s}.btn-icon:hover{background:#f3f4f6;color:#111827}.record-content{padding:1.5rem}.record-section{margin-bottom:1.5rem}.record-section:last-child{margin-bottom:0}.record-section strong{display:block;color:#111827;margin-bottom:.5rem;font-weight:600}.record-section p{color:#374151;line-height:1.6;margin:0}.vitals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-top:.5rem}.vitals-grid div{background:#f9fafb;padding:.75rem;border-radius:6px;border:1px solid #e5e7eb}.vitals-grid span{font-weight:600;color:#6366f1;margin-right:.5rem}.record-form{padding:1.5rem}.form-section{background:#f9fafb;padding:1rem;border-radius:6px;margin-bottom:1rem}.form-section h3{font-size:1.1rem;color:#111827;margin-bottom:1rem}.vitals-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}@media (max-width: 1024px){.records-container{grid-template-columns:250px 1fr}}@media (max-width: 768px){.medical-records-page{padding:1rem}.records-container{grid-template-columns:1fr}.patient-sidebar{max-height:300px}.vitals-form{grid-template-columns:1fr}.modal-content{width:95%;max-height:95vh}}.prescriptions-page{padding:2rem;max-width:1400px;margin:0 auto}.prescriptions-filters{background:#f9f9f9;padding:1rem;border-radius:8px;margin-bottom:2rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.prescriptions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.prescription-card{background:#fff;border-radius:8px;border:1px solid #e5e7eb;overflow:hidden;transition:box-shadow .2s}.prescription-card:hover{box-shadow:0 4px 6px #0000001a}.card-header{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:1.25rem;display:flex;justify-content:space-between;align-items:flex-start}.medication-info h3{font-size:1.25rem;margin-bottom:.25rem}.dosage{font-size:.9rem;opacity:.9}.status-active{background:#ffffff40;color:#fff}.status-expired{background:#ef444426;color:#dc2626;border:1px solid rgba(239,68,68,.3)}.status-cancelled{background:#6b728026;color:#6b7280;border:1px solid rgba(107,114,128,.3)}.info-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;color:#374151;font-size:.95rem}.info-row:last-of-type{margin-bottom:1.25rem}.info-row svg{color:#6366f1;flex-shrink:0}.info-row div{display:flex;flex-direction:column;gap:.25rem}.prescription-details{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem;background:#f9fafb;border-radius:6px;margin-bottom:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item span{font-size:.85rem;color:#6b7280}.detail-item strong{color:#111827;font-size:1rem}.instructions{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px;font-size:.9rem;color:#92400e}.instructions svg{flex-shrink:0;margin-top:.125rem}.card-actions{padding:1rem 1.25rem;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:.5rem}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.prescription-form{padding:1.5rem}.loading-state,.empty-state{text-align:center;padding:3rem;color:#6b7280}@media (max-width: 768px){.prescriptions-page{padding:1rem}.page-header{flex-direction:column;gap:1rem}.prescriptions-filters{flex-direction:column}.search-box{min-width:100%}.prescriptions-grid,.form-row{grid-template-columns:1fr}.modal-content{width:95%}}.lab-orders-page{padding:2rem;max-width:1600px;margin:0 auto}.lab-orders-filters{background:#f9f9f9;padding:1rem;border-radius:8px;margin-bottom:2rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.orders-table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.orders-table{width:100%;border-collapse:collapse}.orders-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.orders-table th{text-align:left;padding:1rem;font-weight:600;color:#374151;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.orders-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.orders-table tbody tr:hover{background-color:#f9fafb}.orders-table td{padding:1rem;color:#374151}.order-number{font-family:Courier New,monospace;color:#6366f1;font-weight:500}.patient-cell{display:flex;flex-direction:column;gap:.25rem}.patient-cell strong{color:#111827}.priority-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.priority-stat{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.priority-urgent{background:#fef3c7;color:#92400e;border:1px solid #fde047}.priority-normal{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-in-progress{background:#dbeafe;color:#1e40af}.status-completed{background:#d1fae5;color:#065f46}.status-cancelled{background:#f3f4f6;color:#6b7280}.date-cell{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#6b7280}.date-cell svg{color:#9ca3af}.lab-order-form{padding:1.5rem}.btn-danger{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca}.btn-danger:hover:not(:disabled){background-color:#fee2e2;border-color:#fca5a5}@media (max-width: 1024px){.orders-table{font-size:.875rem}}@media (max-width: 768px){.lab-orders-page{padding:1rem}.page-header{flex-direction:column;gap:1rem}.lab-orders-filters{flex-direction:column}.search-box{min-width:100%}.orders-table-container{overflow-x:auto}.orders-table{min-width:1000px}.form-row{grid-template-columns:1fr}.modal-content{width:95%}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}.lab-results-page{padding:2rem;max-width:1600px;margin:0 auto}.lab-results-filters{background:#f9f9f9;padding:1rem;border-radius:8px;margin-bottom:2rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.search-box{flex:1;min-width:300px;display:flex;align-items:center;gap:.5rem;background:#fff;padding:.75rem;border-radius:6px;border:1px solid #d1d5db}.search-box input{flex:1;border:none;outline:none;font-size:.95rem}.filter-group select{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:.95rem}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.result-card{background:#fff;border-radius:8px;border:1px solid #e5e7eb;overflow:hidden;transition:box-shadow .2s;position:relative}.result-card:hover{box-shadow:0 4px 6px #0000001a}.result-card.critical{border:2px solid #dc2626}.critical-banner{background:#dc2626;color:#fff;padding:.5rem 1rem;display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.85rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.card-header{background:#f9fafb;padding:1.25rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:flex-start}.order-info h3{font-size:1.1rem;color:#111827;margin-bottom:.25rem}.order-number{font-size:.85rem;color:#6366f1;font-family:Courier New,monospace;font-weight:500}.status-badge{padding:.375rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-verified{background:#d1fae5;color:#065f46}.status-pending{background:#fef3c7;color:#92400e}.status-rejected{background:#fee2e2;color:#991b1b}.patient-info{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.patient-info svg{color:#6366f1}.patient-info div{display:flex;flex-direction:column;gap:.25rem}.patient-info strong{color:#111827}.mrn{font-size:.85rem;color:#6b7280;font-family:Courier New,monospace}.info-row{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.9rem}.info-row .label{color:#6b7280;font-weight:500}.results-section{background:#f9fafb;padding:1rem;border-radius:6px;margin:1rem 0}.results-section strong{display:block;color:#111827;margin-bottom:.5rem}.results-text{color:#374151;line-height:1.6;margin:0;font-family:Courier New,monospace;font-size:.9rem}.interpretation-section{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.interpretation-badge{padding:.375rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.interpretation-normal{background:#d1fae5;color:#065f46}.interpretation-abnormal{background:#fef3c7;color:#92400e}.interpretation-critical{background:#fee2e2;color:#991b1b}.abnormal-flags{display:flex;align-items:flex-start;gap:.5rem;background:#fef3c7;border-left:3px solid #f59e0b;padding:.75rem;border-radius:4px;margin-bottom:1rem;font-size:.9rem;color:#92400e}.abnormal-flags svg{flex-shrink:0;margin-top:.125rem}.personnel-info{background:#f9fafb;padding:.75rem;border-radius:6px;margin-top:1rem}.personnel-info .info-row{margin-bottom:.5rem}.personnel-info .info-row:last-child{margin-bottom:0}.card-actions{padding:1rem 1.25rem;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:.5rem;flex-wrap:wrap}.results-form{padding:1.5rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb;transition:all .2s}.checkbox-label:hover{background:#f3f4f6}.checkbox-label input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer}.checkbox-label span{font-weight:500;color:#374151}.btn-sm{padding:.5rem 1rem;font-size:.875rem}@media (max-width: 768px){.lab-results-page{padding:1rem}.page-header{flex-direction:column;gap:1rem}.lab-results-filters{flex-direction:column}.search-box{min-width:100%}.results-grid,.form-row{grid-template-columns:1fr}.modal-content{width:95%}.card-actions{flex-direction:column}.card-actions .btn{width:100%}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:12px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-small{max-width:400px}.modal-medium{max-width:600px}.modal-large{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid #e2e8f0}.modal-title{margin:0;color:#1a202c;font-size:1.5rem}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#718096;padding:.5rem;border-radius:8px;transition:all .2s;line-height:1}.modal-close:hover{background:#f7fafc;color:#1a202c}.modal-body{padding:2rem}.modal-footer{padding:1rem 2rem;background:#f7fafc;border-top:2px solid #e2e8f0;display:flex;justify-content:flex-end;gap:1rem}@media (max-width: 768px){.modal-overlay{padding:1rem}.modal-content{max-height:95vh}.modal-small,.modal-medium,.modal-large{max-width:100%}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;position:relative;overflow:hidden}.btn:focus{outline:none;box-shadow:0 0 0 3px #667eea4d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.btn-secondary:hover:not(:disabled){background:#f7fafc}.btn-danger{background:#f56565;color:#fff}.btn-danger:hover:not(:disabled){background:#e53e3e;transform:translateY(-2px);box-shadow:0 6px 20px #f5656566}.btn-success{background:#48bb78;color:#fff}.btn-success:hover:not(:disabled){background:#38a169}.btn-ghost{background:transparent;color:#667eea}.btn-ghost:hover:not(:disabled){background:#f7fafc}.btn-small{padding:.5rem 1rem;font-size:.875rem}.btn-medium{padding:.75rem 1.5rem;font-size:1rem}.btn-large{padding:1rem 2rem;font-size:1.125rem}.btn:disabled,.btn-disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-loading{pointer-events:none}.btn-full-width{width:100%}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.btn-icon,.btn-text{display:flex;align-items:center}.admissions-page{max-width:1600px;margin:0 auto}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.status-active{background:#bee3f8;color:#2c5282}.status-discharged{background:#c6f6d5;color:#2f855a}.status-transferred{background:#feebc8;color:#c05621}.status-pending{background:#fed7d7;color:#c53030}.admit-form,.discharge-form{padding:1rem 0}.discharge-form p{font-size:1.125rem;color:#2d3748;margin-bottom:1.5rem}@media (max-width: 768px){.action-buttons{flex-direction:column}}.emergency-page{max-width:1600px;margin:0 auto}.stat-card.urgent{border-left:4px solid #f56565}.ed-dashboard{display:flex;flex-direction:column;gap:2rem}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem}.dashboard-card{background:#f7fafc;border-radius:12px;padding:1.5rem}.dashboard-card h3{margin:0 0 1.5rem;color:#1a202c;font-size:1.125rem}.acuity-breakdown,.department-breakdown{display:flex;flex-direction:column;gap:1rem}.patient-row{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#fff;border-radius:8px;border-left:4px solid #e2e8f0;transition:all .2s}.patient-row:hover{transform:translate(4px);box-shadow:0 4px 8px #0000001a}.patient-info strong{color:#1a202c;font-size:1rem}.patient-info .mrn{color:#718096;font-size:.875rem}.patient-meta{display:flex;align-items:center;gap:1rem}.acuity-badge{padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.acuity-critical{background:#fed7d7;color:#c53030;border:2px solid #fc8181}.acuity-emergent{background:#feebc8;color:#c05621;border:2px solid #f6ad55}.acuity-urgent{background:#fef5e7;color:#975a16;border:2px solid #f6ad55}.acuity-less-urgent{background:#bee3f8;color:#2c5282;border:2px solid #90cdf4}.acuity-non-urgent{background:#c6f6d5;color:#2f855a;border:2px solid #9ae6b4}.wait-time{color:#718096;font-size:.875rem;font-weight:600}.dept-row{display:flex;align-items:center;gap:1rem}.dept-name{min-width:120px;font-weight:600;color:#2d3748;font-size:.9rem}.dept-bar{flex:1;height:32px;background:#e2e8f0;border-radius:6px;position:relative;overflow:hidden}.dept-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);transition:width .3s ease}.dept-count{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);font-weight:700;color:#1a202c;font-size:.875rem}.alerts-section{background:#fed7d7;border:2px solid #fc8181;border-radius:12px;padding:1.5rem}.alerts-section h3{margin:0 0 1rem;color:#c53030}.alerts-list{display:flex;flex-direction:column;gap:.75rem}.alert-item{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:#fff;border-radius:8px;border-left:4px solid #f56565}.alert-icon{font-size:1.25rem}.alert-text{color:#2d3748;font-weight:600}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.metric-box{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;text-align:center}.metric-box h4{margin:0 0 .75rem;color:#718096;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:2rem;font-weight:700;color:#1a202c;margin:0 0 .5rem}.metric-trend{font-size:.875rem;font-weight:600;padding:.25rem .75rem;border-radius:12px;display:inline-block}.metric-trend.up{background:#fed7d7;color:#c53030}.metric-trend.down{background:#c6f6d5;color:#2f855a}.metric-trend.neutral{background:#e2e8f0;color:#4a5568}.triage-section{padding:2rem}.triage-info{margin-bottom:2rem}.triage-info h3{font-size:1.5rem;margin:0 0 .5rem;color:#1a202c}.triage-info p{color:#718096;margin:0}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr}.patient-row{flex-direction:column;align-items:flex-start;gap:.75rem}.patient-meta{width:100%;justify-content:space-between}.metrics-grid{grid-template-columns:repeat(2,1fr)}.dept-name{min-width:80px;font-size:.8rem}}.er-dashboard{padding:20px 24px 32px;min-height:100%;background:var(--bg-page, #f1f5f9)}.er-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px}.er-header-left h1{font-size:1.35rem;font-weight:700;color:var(--text-primary, #0f172a);margin:0 0 3px;display:flex;align-items:center;gap:8px}.er-header-left p{font-size:.8rem;color:var(--text-muted, #94a3b8);margin:0}.er-header-actions{display:flex;align-items:center;gap:10px}.er-live-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;background:#dcfce7;border:1px solid #86efac;border-radius:999px;font-size:.72rem;font-weight:700;color:#15803d;text-transform:uppercase;letter-spacing:.4px}.er-live-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 6px #22c55eb3;animation:pulse 2s ease infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.er-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-bottom:22px}.er-stat-card{background:#fff;border-radius:12px;padding:14px 16px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;gap:4px}.er-stat-card.critical{border-left:3px solid #ef4444}.er-stat-card.warning{border-left:3px solid #f59e0b}.er-stat-card.info{border-left:3px solid #3b82f6}.er-stat-card.success{border-left:3px solid #10b981}.er-stat-card.neutral{border-left:3px solid #6366f1}.er-stat-value{font-size:1.6rem;font-weight:700;color:#0f172a;line-height:1}.er-stat-label{font-size:.72rem;color:#64748b;font-weight:500}.er-filters{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}.er-filter-btn{padding:6px 14px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:inherit}.er-filter-btn:hover{background:#f8fafc}.er-filter-btn.active{background:#6366f1;border-color:#6366f1;color:#fff}.er-filter-btn.all.active{background:#6366f1;border-color:#6366f1}.er-filter-btn.occupied.active{background:#ef4444;border-color:#ef4444}.er-filter-btn.available.active{background:#10b981;border-color:#10b981}.er-filter-btn.cleaning.active{background:#f59e0b;border-color:#f59e0b}.er-filter-btn.reserved.active{background:#3b82f6;border-color:#3b82f6}.er-bed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.bed-card{background:#fff;border-radius:14px;border:2px solid transparent;box-shadow:0 2px 8px #00000012;overflow:hidden;transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease;cursor:pointer}.bed-card:hover{box-shadow:0 6px 20px #0000001f;transform:translateY(-2px)}.bed-card.occupied{border-color:#fca5a5}.bed-card.available{border-color:#86efac;cursor:default}.bed-card.cleaning{border-color:#fcd34d;cursor:default}.bed-card.reserved{border-color:#93c5fd}.bed-card.maintenance{border-color:#d1d5db;cursor:default}.bed-card.selected{border-color:#6366f1;box-shadow:0 0 0 3px #6366f133}.bed-card.critical-patient{border-color:#ef4444}.bed-card.critical-patient .bed-card-header{background:#fef2f2}.bed-card-header{padding:12px 14px 10px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f1f5f9}.bed-card-header.available{background:#f0fdf4}.bed-card-header.cleaning{background:#fffbeb}.bed-card-header.reserved{background:#eff6ff}.bed-card-header.maintenance{background:#f9fafb}.bed-card-header.occupied{background:#fff7f7}.bed-id{font-size:.92rem;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:6px}.bed-status-pill{padding:3px 9px;border-radius:999px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.pill-occupied{background:#fee2e2;color:#b91c1c}.pill-available{background:#dcfce7;color:#15803d}.pill-cleaning{background:#fef9c3;color:#92400e}.pill-reserved{background:#dbeafe;color:#1d4ed8}.pill-maintenance{background:#f3f4f6;color:#6b7280}.bed-card-body{padding:12px 14px 14px}.bed-available-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 0 6px;gap:8px}.bed-available-icon{width:44px;height:44px;border-radius:12px;background:#dcfce7;display:flex;align-items:center;justify-content:center;color:#16a34a}.bed-available-text{font-size:.85rem;font-weight:600;color:#15803d}.bed-available-sub{font-size:.72rem;color:#86efac;margin-top:-4px}.bed-admit-btn{width:100%;padding:8px;border-radius:8px;border:1.5px dashed #86efac;background:transparent;color:#15803d;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease;font-family:inherit;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:5px}.bed-admit-btn:hover{background:#dcfce7;border-style:solid}.bed-status-state{display:flex;flex-direction:column;align-items:center;padding:18px 0 6px;gap:6px}.bed-status-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center}.bed-status-icon.cleaning{background:#fef9c3;color:#d97706}.bed-status-icon.maintenance{background:#f3f4f6;color:#6b7280}.bed-status-icon.reserved{background:#dbeafe;color:#2563eb}.bed-status-label{font-size:.83rem;font-weight:600;color:#374151}.bed-status-sub{font-size:.7rem;color:#9ca3af}.patient-info{display:flex;flex-direction:column;gap:8px}.patient-name-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.patient-name{font-size:.93rem;font-weight:700;color:#0f172a;line-height:1.2}.patient-mrn{font-size:.7rem;color:#64748b;margin-top:2px}.triage-badge{flex-shrink:0;padding:3px 8px;border-radius:6px;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.4px}.triage-Critical{background:#ef4444;color:#fff}.triage-Urgent{background:#f97316;color:#fff}.triage-Semi-Urgent{background:#eab308;color:#000}.triage-Non-Urgent{background:#22c55e;color:#fff}.triage-Unknown{background:#94a3b8;color:#fff}.patient-complaint{font-size:.78rem;color:#374151;line-height:1.4;background:#f8fafc;padding:6px 8px;border-radius:6px;border-left:3px solid #e2e8f0}.patient-vitals{display:grid;grid-template-columns:1fr 1fr;gap:4px}.vital-chip{display:flex;align-items:center;gap:4px;font-size:.72rem;color:#475569;background:#f8fafc;padding:4px 7px;border-radius:6px}.vital-chip svg{color:#94a3b8;flex-shrink:0}.vital-chip.alert{background:#fef2f2;color:#dc2626}.vital-chip.alert svg{color:#dc2626}.patient-meta{display:flex;align-items:center;justify-content:space-between;font-size:.7rem;color:#64748b}.wait-time{display:flex;align-items:center;gap:3px}.wait-time.over-target{color:#dc2626;font-weight:600}.findings-section{margin-top:10px;padding-top:10px;border-top:1px solid #f1f5f9}.findings-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;margin-bottom:5px}.findings-text{font-size:.77rem;color:#374151;line-height:1.5;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:7px 9px;white-space:pre-wrap}.findings-empty{font-size:.77rem;color:#94a3b8;font-style:italic}.bed-card-footer{padding:8px 14px 12px;display:flex;gap:7px}.bed-action-btn{flex:1;padding:6px 8px;border-radius:7px;border:1px solid #e2e8f0;background:#f8fafc;color:#475569;font-size:.73rem;font-weight:600;cursor:pointer;transition:all .14s ease;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap}.bed-action-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#0f172a}.bed-action-btn.danger:hover{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.bed-action-btn.primary:hover{background:#ede9fe;border-color:#c4b5fd;color:#6d28d9}.er-detail-panel{position:fixed;right:0;top:0;bottom:0;width:420px;background:#fff;box-shadow:-4px 0 30px #0000001f;z-index:400;display:flex;flex-direction:column;animation:slideIn .22s cubic-bezier(.4,0,.2,1)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.panel-header{padding:18px 20px 14px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#f8fafc;flex-shrink:0}.panel-header h2{font-size:.98rem;font-weight:700;color:#0f172a;margin:0}.panel-close{width:30px;height:30px;border-radius:7px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#64748b;transition:all .14s}.panel-close:hover{background:#f1f5f9;color:#0f172a}.panel-body{flex:1;overflow-y:auto;padding:18px 20px;display:flex;flex-direction:column;gap:18px}.panel-section h3{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;margin:0 0 8px}.panel-field{display:flex;flex-direction:column;gap:3px;margin-bottom:10px}.panel-field label{font-size:.72rem;color:#94a3b8;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.panel-field span{font-size:.85rem;color:#1e293b;font-weight:500}.panel-vitals-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.panel-vital{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px}.panel-vital-label{font-size:.67rem;color:#94a3b8;text-transform:uppercase;font-weight:600;letter-spacing:.3px}.panel-vital-value{font-size:1.1rem;font-weight:700;color:#0f172a;margin-top:2px}.panel-vital-value.alert{color:#dc2626}.panel-notes-area{width:100%;min-height:100px;border:1px solid #e2e8f0;border-radius:8px;padding:10px;font-size:.83rem;font-family:inherit;color:#1e293b;resize:vertical;line-height:1.5;transition:border-color .15s;box-sizing:border-box}.panel-notes-area:focus{outline:none;border-color:#6366f1}.panel-footer{padding:14px 20px;border-top:1px solid #e2e8f0;display:flex;gap:8px;flex-shrink:0}.panel-btn{flex:1;padding:9px 14px;border-radius:8px;border:none;font-size:.82rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s ease}.panel-btn.primary{background:#6366f1;color:#fff}.panel-btn.primary:hover{background:#4f46e5}.panel-btn.secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.panel-btn.secondary:hover{background:#e2e8f0}.panel-btn.danger{background:#fef2f2;color:#dc2626;border:1px solid #fca5a5}.panel-btn.danger:hover{background:#fee2e2}.er-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;z-index:399;animation:fadeIn .15s ease}.er-empty{grid-column:1 / -1;text-align:center;padding:48px 20px;color:#94a3b8}.er-empty h3{font-size:1rem;color:#64748b;margin-bottom:6px}@media (max-width: 768px){.er-dashboard{padding:14px 14px 24px}.er-bed-grid{grid-template-columns:1fr 1fr}.er-detail-panel{width:100%}}@media (max-width: 480px){.er-bed-grid{grid-template-columns:1fr}}.dispense-page{padding:20px 24px 32px;background:var(--bg-page, #f1f5f9);min-height:100%}.dispense-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px}.dispense-header h1{font-size:1.3rem;font-weight:700;color:#0f172a;margin:0 0 3px;display:flex;align-items:center;gap:8px}.dispense-header p{font-size:.8rem;color:#94a3b8;margin:0}.dispense-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-bottom:20px}.dstat{background:#fff;border-radius:12px;padding:14px 16px;border:1px solid #e2e8f0;border-left:3px solid;box-shadow:0 1px 3px #0000000d}.dstat.pending{border-left-color:#f59e0b}.dstat.dispensed{border-left-color:#10b981}.dstat.urgent{border-left-color:#ef4444}.dstat.total{border-left-color:#6366f1}.dstat-val{font-size:1.6rem;font-weight:700;color:#0f172a;line-height:1}.dstat-lbl{font-size:.72rem;color:#64748b;font-weight:500}.dispense-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.dispense-search{flex:1;min-width:220px;padding:8px 12px 8px 34px;border:1px solid #e2e8f0;border-radius:8px;font-size:.83rem;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") no-repeat 10px center;font-family:inherit;color:#374151}.dispense-search:focus{outline:none;border-color:#6366f1}.dispense-tab{padding:6px 14px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-size:.8rem;font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s}.dispense-tab:hover{background:#f8fafc}.dispense-tab.active{background:#6366f1;border-color:#6366f1;color:#fff}.dispense-table-wrap{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 4px #0000000d}.dispense-table{width:100%;border-collapse:collapse}.dispense-table th{background:#f8fafc;padding:11px 14px;text-align:left;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#64748b;border-bottom:1px solid #e2e8f0}.dispense-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;font-size:.83rem;color:#374151;vertical-align:middle}.dispense-table tr:last-child td{border-bottom:none}.dispense-table tr:hover td{background:#fafbff}.patient-cell strong{display:block;font-weight:600;color:#0f172a}.patient-cell span{font-size:.72rem;color:#64748b}.med-cell strong{display:block;font-weight:600;color:#0f172a}.med-cell span{font-size:.72rem;color:#6366f1}.status-pill{padding:3px 9px;border-radius:999px;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.status-Pending{background:#fef9c3;color:#92400e}.status-Dispensed{background:#dcfce7;color:#15803d}.status-Cancelled{background:#fee2e2;color:#b91c1c}.status-OnHold{background:#e0e7ff;color:#3730a3}.btn-dispense{padding:5px 12px;border-radius:7px;border:none;background:#6366f1;color:#fff;font-size:.75rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}.btn-dispense:hover{background:#4f46e5}.btn-dispense:disabled{background:#c7d2fe;cursor:not-allowed}.btn-cancel-small{padding:5px 10px;border-radius:7px;border:1px solid #fca5a5;background:#fef2f2;color:#dc2626;font-size:.73rem;font-weight:600;cursor:pointer;font-family:inherit;margin-left:5px}.dispense-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:500;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease}.dispense-modal{background:#fff;border-radius:16px;padding:28px 30px;width:480px;max-width:95vw;box-shadow:0 20px 60px #0003}.dispense-modal h2{font-size:1.05rem;font-weight:700;margin:0 0 16px;color:#0f172a;display:flex;align-items:center;gap:8px}.modal-field{margin-bottom:14px}.modal-field label{display:block;font-size:.74rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-bottom:5px}.modal-field input,.modal-field select,.modal-field textarea{width:100%;padding:8px 10px;border:1px solid #e2e8f0;border-radius:8px;font-size:.85rem;font-family:inherit;color:#1e293b;box-sizing:border-box}.modal-field input:focus,.modal-field select:focus,.modal-field textarea:focus{outline:none;border-color:#6366f1}.modal-info{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:10px 14px;margin-bottom:14px;font-size:.8rem;color:#15803d}.modal-info strong{display:block;font-size:.9rem;color:#065f46;margin-bottom:4px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.btn-modal-primary{padding:9px 20px;border-radius:8px;border:none;background:#6366f1;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;font-family:inherit}.btn-modal-primary:hover{background:#4f46e5}.btn-modal-secondary{padding:9px 20px;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc;color:#475569;font-size:.85rem;font-weight:600;cursor:pointer;font-family:inherit}.empty-queue{text-align:center;padding:48px 20px;color:#94a3b8}.empty-queue h3{font-size:1rem;color:#64748b;margin-bottom:6px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.dispense-page{padding:14px}.dispense-table{font-size:.78rem}}.staff-page{max-width:1600px;margin:0 auto}.on-duty-section{display:flex;flex-direction:column;gap:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:2px solid #e2e8f0}.section-header h2{margin:0;color:#1a202c}.timestamp{color:#718096;font-size:.9rem;margin:0}.staff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.staff-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;position:relative;transition:all .3s}.staff-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.staff-card.on-duty{border-color:#48bb78;background:linear-gradient(to bottom,#f0fff4,#fff)}.staff-status-badge{position:absolute;top:1rem;right:1rem;background:#48bb78;color:#fff;padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.status-dot{width:8px;height:8px;border-radius:50%;background:#fff}.status-dot.active{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.staff-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;margin:0 auto 1rem}.staff-card h3{text-align:center;margin:0 0 .5rem;color:#1a202c}.specialization{text-align:center;color:#667eea;font-weight:600;margin:0 0 1.5rem}.staff-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.detail-item{display:flex;justify-content:space-between;padding:.5rem;background:#f7fafc;border-radius:6px}.detail-item .label{color:#718096;font-weight:600;font-size:.875rem}.detail-item span:last-child{color:#2d3748;font-weight:500}.staff-actions{display:flex;justify-content:center;gap:.75rem}.all-staff-section{display:flex;flex-direction:column;gap:1.5rem}.filters-section{display:flex;gap:1rem;align-items:center}.filter-select{padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;min-width:200px;cursor:pointer}.staff-name{display:flex;align-items:center;gap:1rem}.staff-avatar-small{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;flex-shrink:0}.status-badge.available{background:#c6f6d5;color:#2f855a;padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.status-badge.unavailable{background:#fed7d7;color:#c53030;padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.schedules-section h2{margin-bottom:1.5rem;color:#1a202c}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.schedule-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;overflow:hidden}.schedule-header{background:#f7fafc;padding:1rem 1.5rem;border-bottom:2px solid #e2e8f0}.schedule-header h3{margin:0 0 .25rem;color:#1a202c}.schedule-header p{margin:0;color:#667eea;font-weight:600;font-size:.9rem}.schedule-body{padding:1.5rem}.schedule-info{color:#718096;text-align:center;font-style:italic}@media (max-width: 768px){.staff-grid{grid-template-columns:1fr}.filters-section{flex-direction:column;align-items:stretch}.schedule-grid{grid-template-columns:1fr}}.laboratory-page{max-width:1600px;margin:0 auto}.orders-section{display:flex;flex-direction:column}.priority-badge{padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase}.priority-stat{background:#fed7d7;color:#c53030;border:2px solid #fc8181}.priority-urgent{background:#feebc8;color:#c05621;border:2px solid #f6ad55}.priority-routine{background:#bee3f8;color:#2c5282;border:2px solid #90cdf4}.status-pending{background:#fef5e7;color:#975a16}.status-collected{background:#bee3f8;color:#2c5282}.status-progress{background:#e9d8fd;color:#6b46c1}.status-completed{background:#c6f6d5;color:#2f855a}.status-verified{background:#9ae6b4;color:#22543d}.status-cancelled{background:#fed7d7;color:#c53030}.tests-section{padding:1rem 0}.tests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.test-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .3s}.test-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a;border-color:#667eea}.test-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;display:flex;justify-content:space-between;align-items:center}.test-header h3{margin:0;font-size:1.125rem}.test-code{background:#fff3;padding:.375rem .75rem;border-radius:8px;font-weight:600;font-size:.875rem}.test-body{padding:1.5rem}.test-category{color:#667eea;font-weight:600;margin-bottom:.75rem;font-size:.9rem}.test-description{color:#4a5568;margin-bottom:1rem;line-height:1.6}.test-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.test-details .detail-item{display:flex;justify-content:space-between;padding:.5rem;background:#f7fafc;border-radius:6px}.fasting-badge{background:#fef5e7;color:#975a16;border:2px solid #f6ad55;padding:.5rem 1rem;border-radius:8px;text-align:center;font-weight:600;font-size:.875rem}.results-section{padding:2rem;text-align:center}.results-section h2{color:#1a202c;margin-bottom:1rem}.info-text{color:#718096;font-size:1.125rem}.order-form,.results-form{padding:1rem 0}.results-form h3{color:#1a202c;margin-bottom:.5rem}.results-form p{color:#718096;margin-bottom:1.5rem}@media (max-width: 768px){.tests-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}}.billing-page{max-width:1600px;margin:0 auto}.bills-section{display:flex;flex-direction:column}.amount-cell{text-align:right;font-weight:600;font-family:Courier New,monospace}.amount-cell.paid{color:#2f855a}.amount-cell.balance{color:#c05621}.payment-unpaid{background:#fed7d7;color:#c53030}.payment-partial{background:#feebc8;color:#c05621}.payment-paid{background:#c6f6d5;color:#2f855a}.payment-overdue{background:#fc8181;color:#742a2a}.reports-section{padding:2rem 0}.reports-section h2{color:#1a202c;margin-bottom:1.5rem}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.report-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .3s}.report-card h3{color:#1a202c;margin-bottom:.75rem}.report-card p{color:#718096;margin-bottom:1.5rem;line-height:1.6}.bill-form,.payment-form{padding:1rem 0}.payment-summary{background:#f7fafc;padding:1.5rem;border-radius:12px;margin-bottom:1.5rem}.payment-summary h3{color:#1a202c;margin-bottom:.5rem}.payment-summary p{color:#718096;margin-bottom:1rem}.payment-amounts{display:flex;flex-direction:column;gap:.75rem}.amount-row{display:flex;justify-content:space-between;padding:.75rem;background:#fff;border-radius:8px}.amount-row.highlight{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:1.125rem}.amount-row.highlight span,.amount-row.highlight strong{color:#fff}@media (max-width: 768px){.reports-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}}.clinical-support-page{max-width:1600px;margin:0 auto}.drug-checker{display:flex;flex-direction:column;gap:2rem}.checker-section{background:#f7fafc;border-radius:12px;padding:2rem}.checker-section h3{margin:0 0 .5rem;color:#1a202c;font-size:1.5rem}.checker-section>p{color:#718096;margin:0 0 1.5rem}.medication-inputs{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.med-input-row{display:flex;gap:1rem;align-items:center}.med-input{flex:1;padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s}.med-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-remove{padding:.75rem 1rem;background:#fed7d7;border:2px solid #fc8181;border-radius:8px;color:#c53030;cursor:pointer;font-weight:600;transition:all .2s}.btn-remove:hover{background:#fc8181;color:#fff}.checker-actions{display:flex;gap:1rem;justify-content:flex-end}.results-section{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:2rem}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e2e8f0}.results-header h3{margin:0;color:#1a202c}.result-badge{padding:.5rem 1rem;border-radius:12px;font-weight:600;font-size:.9rem}.result-badge.warning{background:#feebc8;color:#c05621}.result-badge.safe{background:#c6f6d5;color:#2f855a}.interactions-list{display:flex;flex-direction:column;gap:1.5rem}.interaction-card{border:2px solid;border-radius:12px;padding:1.5rem;background:#fff}.interaction-card.severity-critical{border-color:#fc8181;background:#fff5f5}.interaction-card.severity-major{border-color:#f6ad55;background:#fffaf0}.interaction-card.severity-moderate{border-color:#90cdf4;background:#ebf8ff}.interaction-card.severity-minor{border-color:#9ae6b4;background:#f0fff4}.interaction-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.interaction-header h4{margin:0 0 .5rem;color:#1a202c;font-size:1.125rem}.severity-badge{padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.severity-badge.severity-critical{background:#fed7d7;color:#c53030}.severity-badge.severity-major{background:#feebc8;color:#c05621}.severity-badge.severity-moderate{background:#bee3f8;color:#2c5282}.severity-badge.severity-minor{background:#c6f6d5;color:#2f855a}.interaction-body p{margin:.75rem 0;color:#2d3748;line-height:1.6}.interaction-body strong{color:#1a202c}.no-interactions{text-align:center;padding:3rem 2rem}.check-icon{font-size:4rem;display:block;margin-bottom:1rem}.no-interactions p{color:#2d3748;font-size:1.125rem}.alerts-tab{display:flex;flex-direction:column;gap:1.5rem}.alerts-filter{display:flex;gap:1rem}.search-input{flex:1;padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem}.filter-select{padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;min-width:200px}.alerts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.alert-card{border:2px solid;border-radius:12px;padding:1.5rem;background:#fff;display:flex;flex-direction:column;gap:.75rem}.alert-card.alert-drug{border-color:#f6ad55;background:#fffaf0}.alert-card.alert-allergy{border-color:#fc8181;background:#fff5f5}.alert-card.alert-lab{border-color:#9f7aea;background:#faf5ff}.alert-card.alert-dosage{border-color:#90cdf4;background:#ebf8ff}.alert-card-header{display:flex;justify-content:space-between;align-items:center}.alert-time{color:#718096;font-size:.875rem}.alert-card h4{margin:0;color:#1a202c;font-size:1.125rem}.alert-message{color:#2d3748;margin:0;line-height:1.6}.alert-meta{padding-top:.75rem;border-top:1px solid #e2e8f0}.patient-info{color:#718096;font-size:.875rem}.alert-actions{display:flex;gap:.75rem;padding-top:.75rem;border-top:1px solid #e2e8f0}.guidelines-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.guideline-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:2rem;text-align:center;transition:all .3s}.guideline-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a;border-color:#667eea}.guideline-icon{font-size:3rem;margin-bottom:1rem}.guideline-card h3{margin:0 0 .75rem;color:#1a202c}.guideline-card p{color:#718096;margin:0 0 1.5rem;line-height:1.6}@media (max-width: 768px){.checker-actions,.alerts-filter{flex-direction:column}.alerts-grid,.guidelines-grid{grid-template-columns:1fr}.results-header{flex-direction:column;gap:1rem;align-items:flex-start}}.terminology-page{padding:2rem 2.5rem;max-width:1400px}.terminology-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.terminology-header h1{font-size:1.75rem;font-weight:700;color:#1a202c;margin:0 0 .25rem}.terminology-header p{font-size:.875rem;color:#718096;margin:0}.btn-import{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s;flex-shrink:0}.btn-import:hover{background:#1d4ed8}.terminology-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-box{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1rem;text-align:center}.stat-box .stat-num{font-size:1.5rem;font-weight:700;color:#1a202c;margin-bottom:.4rem}.system-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.72rem;font-weight:600}.badge-snomed{background:#dbeafe;color:#1d4ed8}.badge-icd10{background:#dcfce7;color:#15803d}.badge-icd11{background:#ccfbf1;color:#0f766e}.badge-loinc{background:#f3e8ff;color:#7c3aed}.badge-cpt{background:#ffedd5;color:#c2410c}.badge-default{background:#f1f5f9;color:#475569}.terminology-tabs{display:flex;gap:4px;background:#f1f5f9;padding:4px;border-radius:12px;width:fit-content;margin-bottom:1.5rem}.tab-btn{display:flex;align-items:center;gap:6px;padding:.5rem 1rem;border-radius:8px;border:none;background:transparent;font-size:.875rem;font-weight:500;color:#718096;cursor:pointer;transition:all .15s}.tab-btn:hover{color:#374151}.tab-btn.active{background:#fff;color:#2563eb;box-shadow:0 1px 4px #0000001a;font-weight:600}.search-row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem}.search-input-wrap{flex:1;min-width:220px;position:relative}.search-input-wrap svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.search-input-wrap input{width:100%;padding:.6rem .75rem .6rem 2.2rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#1a202c;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.search-input-wrap input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.system-select{padding:.6rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#374151;background:#fff;outline:none;cursor:pointer;width:150px;flex-shrink:0}.btn-search{padding:.6rem 1.2rem;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap;flex-shrink:0}.btn-search:hover{background:#1d4ed8}.results-table-wrap{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow:hidden}.results-table{width:100%;border-collapse:collapse;font-size:.875rem}.results-table thead tr{background:#f8fafc}.results-table th{padding:.75rem 1.25rem;text-align:left;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#718096;border-bottom:1px solid #e2e8f0}.results-table td{padding:.75rem 1.25rem;color:#374151;border-bottom:1px solid #f1f5f9}.results-table tbody tr:hover{background:#f8fafc}.results-table tbody tr:last-child td{border-bottom:none}.code-mono{font-family:monospace;font-size:.8rem;color:#1a202c}.no-results{text-align:center;padding:2.5rem;color:#9ca3af;font-size:.875rem}.dist-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1.5rem}.dist-card h3{font-size:1rem;font-weight:600;color:#1a202c;margin:0 0 1.25rem}.dist-row{margin-bottom:.875rem}.dist-row-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:.3rem;font-size:.875rem}.dist-count{color:#718096}.dist-bar-bg{height:8px;background:#f1f5f9;border-radius:999px;overflow:hidden}.dist-bar-fill{height:100%;background:#3b82f6;border-radius:999px;transition:width .4s ease}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-box{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:520px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2{font-size:1rem;font-weight:700;margin:0;color:#1a202c}.modal-close{background:none;border:none;cursor:pointer;color:#9ca3af;display:flex;padding:4px;border-radius:6px;transition:color .15s,background .15s}.modal-close:hover{color:#374151;background:#f1f5f9}.modal-body{padding:1.5rem}.modal-hint{font-size:.75rem;color:#718096;margin:0 0 .75rem}.modal-hint code{background:#f1f5f9;padding:1px 5px;border-radius:4px;font-family:monospace}.modal-textarea{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem;font-family:monospace;font-size:.78rem;color:#1a202c;resize:vertical;outline:none;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.modal-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;border-top:1px solid #e2e8f0}.btn-cancel{padding:.6rem 1.2rem;border:1px solid #e2e8f0;background:#fff;border-radius:8px;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:background .15s}.btn-cancel:hover{background:#f8fafc}.btn-confirm{padding:.6rem 1.2rem;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s}.btn-confirm:hover{background:#1d4ed8}.btn-confirm:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.terminology-page{padding:1rem}.terminology-header{flex-direction:column;align-items:flex-start}.search-row{flex-direction:column;align-items:stretch}.system-select,.btn-search{width:100%}}.analytics-page{max-width:1600px;margin:0 auto}.date-range-select{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;background:#fff;transition:all .2s}.date-range-select:focus{outline:none;border-color:#667eea}.metrics-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .3s}.metric-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.metric-label{font-size:.875rem;color:#718096;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.trend-indicator{padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:700}.trend-indicator.up{background:#c6f6d5;color:#2f855a}.trend-indicator.down{background:#fed7d7;color:#c53030}.metric-value{font-size:2.5rem;font-weight:700;color:#1a202c;margin-bottom:1rem}.progress-bar{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;transition:width .3s ease}.metric-subchart{display:flex;justify-content:center;align-items:center;height:40px}.mini-chart{font-size:2rem}.reports-section{margin:3rem 0}.reports-section h2{font-size:1.75rem;color:#1a202c;margin-bottom:1.5rem}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.report-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:2rem;text-align:center;cursor:pointer;transition:all .3s}.report-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a;border-color:#667eea}.report-card.selected{border-color:#667eea;background:#f7fafc}.report-icon{font-size:3rem;margin-bottom:1rem}.report-card h3{margin:0 0 .75rem;color:#1a202c;font-size:1.125rem}.report-card p{color:#718096;margin:0 0 1.5rem;font-size:.9rem;line-height:1.5}.dashboard-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:2rem;margin:3rem 0}.chart-container{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:2rem}.chart-container h3{margin:0 0 1.5rem;color:#1a202c}.chart-placeholder{height:300px;background:#f7fafc;border:2px dashed #cbd5e0;border-radius:8px;display:flex;align-items:center;justify-content:center}.placeholder-content{text-align:center;padding:2rem}.placeholder-icon{font-size:4rem;display:block;margin-bottom:1rem}.placeholder-content p{color:#4a5568;margin:.5rem 0}.placeholder-note{font-size:.875rem;color:#a0aec0!important;font-style:italic}.summary-section{margin:3rem 0}.summary-section h2{font-size:1.75rem;color:#1a202c;margin-bottom:1.5rem}.insights-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.insight-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;display:flex;gap:1rem;align-items:flex-start;transition:all .3s}.insight-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.insight-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.insight-icon.green{background:#c6f6d5}.insight-icon.orange{background:#feebc8}.insight-icon.blue{background:#bee3f8}.insight-icon.purple{background:#e9d8fd}.insight-card h4{margin:0 0 .5rem;color:#1a202c;font-size:1rem}.insight-card p{margin:0;color:#4a5568;font-size:.9rem;line-height:1.5}@media (max-width: 1024px){.dashboard-charts{grid-template-columns:1fr}}@media (max-width: 768px){.metrics-row,.reports-grid,.insights-grid{grid-template-columns:1fr}.date-range-select{width:100%}}.not-found-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.not-found-content{background:#fff;border-radius:16px;padding:3rem;max-width:600px;width:100%;text-align:center;box-shadow:0 20px 60px #0000004d}.not-found-code{font-size:8rem;font-weight:900;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:1rem}.not-found-content h1{color:#1a202c;margin-bottom:1rem;font-size:2rem}.not-found-content p{color:#718096;margin-bottom:2rem;font-size:1.125rem}.not-found-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.not-found-actions button{padding:.875rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;font-size:1rem;transition:all .2s;display:flex;align-items:center;gap:.5rem}.not-found-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.not-found-actions .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.not-found-actions .btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.not-found-actions .btn-secondary:hover{background:#f7fafc}.quick-links{padding-top:2rem;border-top:2px solid #e2e8f0;text-align:left}.quick-links h3{color:#1a202c;margin-bottom:1rem;font-weight:600}.quick-links ul{list-style:none;padding:0;margin:0}.quick-links li{margin-bottom:.75rem}.quick-links a{color:#667eea;text-decoration:none;font-weight:600;transition:all .2s;display:flex;align-items:center;gap:.5rem}.quick-links a:hover{color:#5a67d8;text-decoration:underline}@media (max-width: 768px){.not-found-content{padding:2rem}.not-found-code{font-size:6rem}.not-found-actions{flex-direction:column}.not-found-actions button{justify-content:center}}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;color:#000;border:1px solid #d1d5db;border-radius:6px;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem;font-weight:400;cursor:pointer;transition:all .2s ease;min-width:200px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23000000' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px}select:hover:not(:disabled){border-color:#9ca3af;background-color:#f9fafb}select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;background-color:#fff}select:disabled{background-color:#f3f4f6;color:#6b7280;border-color:#e5e7eb;cursor:not-allowed;opacity:.6;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E")}select option{background-color:#fff;color:#000;padding:.75rem 1rem;font-size:1rem}select option:checked{background-color:#eff6ff;color:#000}select.select-sm{padding:.5rem 2rem .5rem .75rem;font-size:.875rem;min-width:150px}select.select-lg{padding:1rem 2.5rem 1rem 1.25rem;font-size:1.125rem;min-width:250px}select.select-light{background-color:#fff;color:#000;border-color:#d1d5db}select.select-dark{background-color:#374151;color:#fff;border-color:#4b5563;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E")}select.select-dark:hover:not(:disabled){background-color:#4b5563;border-color:#6366f1}select.select-dark option{background-color:#374151;color:#fff}@media (max-width: 768px){select{min-width:auto;width:100%}}select:focus-visible{outline:2px solid #6366f1;outline-offset:2px}:root{font-family:Inter,system-ui,-apple-system,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--brand-50: #eef2ff;--brand-100: #e0e7ff;--brand-200: #c7d2fe;--brand-400: #818cf8;--brand-500: #6366f1;--brand-600: #4f46e5;--brand-700: #4338ca;--brand-900: #1e1b4b;--accent-400: #34d399;--accent-500: #10b981;--accent-600: #059669;--sidebar-bg: #0f172a;--sidebar-surface: #1e293b;--sidebar-border: rgba(255,255,255,.06);--sidebar-text: rgba(255,255,255,.8);--sidebar-text-hi: #ffffff;--sidebar-active-bg: rgba(99,102,241,.2);--sidebar-active-border: #6366f1;--sidebar-hover-bg: rgba(255,255,255,.06);--sidebar-width: 260px;--sidebar-collapsed: 64px;--header-height: 60px;--header-bg: rgba(255,255,255,.85);--header-border: #e2e8f0;--bg-page: #f1f5f9;--bg-surface: #ffffff;--bg-muted: #f8fafc;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-inverse: #ffffff;--border: #e2e8f0;--border-strong: #cbd5e1;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-info: #3b82f6;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--shadow-lg: 0 8px 30px rgba(0,0,0,.14);--shadow-sidebar: 2px 0 20px rgba(0,0,0,.25);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--transition: .18s ease;--transition-slow: .3s cubic-bezier(.4,0,.2,1);color:var(--text-primary);background-color:var(--bg-page);line-height:1.5}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg-page);color:var(--text-primary)}#root{width:100%;min-height:100vh}.page-container{padding:28px 32px;max-width:1440px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:16px}.page-title{display:flex;align-items:center;gap:14px}.page-title h1{font-size:1.6rem;font-weight:700;color:var(--text-primary);line-height:1.2}.page-title p,.page-subtitle{font-size:.875rem;color:var(--text-secondary);margin-top:3px}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px 24px}button{font-family:inherit;cursor:pointer}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;background:var(--brand-500);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:background var(--transition),box-shadow var(--transition),transform var(--transition);white-space:nowrap}.btn-primary:hover{background:var(--brand-600);box-shadow:0 4px 12px #6366f159;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;background:var(--bg-muted);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition)}.btn-secondary:hover{background:var(--bg-surface);border-color:var(--border-strong)}.btn-outline{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;background:transparent;color:var(--brand-500);border:1px solid var(--brand-200);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition)}.btn-outline:hover{background:var(--brand-50);border-color:var(--brand-400)}.btn-outline.danger{color:var(--color-danger);border-color:#fecaca}.btn-outline.danger:hover{background:#fff5f5}.btn-outline:disabled{opacity:.55;cursor:not-allowed}.btn-ghost{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;background:transparent;color:var(--text-secondary);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition)}.btn-ghost:hover{background:var(--bg-muted);color:var(--text-primary)}.btn-large{padding:12px 24px;font-size:1rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-md);border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition)}.icon-btn:hover{background:var(--bg-muted);color:var(--text-primary);border-color:var(--border-strong)}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.badge.success{background:#d1fae5;color:#065f46}.badge.warning{background:#fef3c7;color:#92400e}.badge.danger{background:#fee2e2;color:#991b1b}.badge.info{background:#dbeafe;color:#1e40af}.data-table{width:100%;overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-surface)}.data-table table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{background:var(--bg-muted);color:var(--text-secondary);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;padding:12px 16px;text-align:left;border-bottom:1px solid var(--border)}.data-table td{padding:12px 16px;border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:middle}.data-table tr:hover td{background:var(--bg-muted)}.empty-state{text-align:center;color:var(--text-muted);padding:40px!important}.form-input,input[type=text],input[type=email],input[type=number],input[type=password],input[type=date],input[type=tel],select,textarea{width:100%;padding:9px 13px;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.875rem;font-family:inherit;color:var(--text-primary);background:var(--bg-surface);transition:border var(--transition),box-shadow var(--transition);outline:none}.form-input:focus,input:focus,select:focus,textarea:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px #6366f126}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}.search-box{display:flex;align-items:center;gap:8px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:8px 14px;min-width:240px}.search-box svg{color:var(--text-muted);flex-shrink:0}.search-box input{border:none;background:transparent;outline:none;font-size:.875rem;color:var(--text-primary);width:100%;padding:0}.search-box:focus-within{border-color:var(--brand-500);box-shadow:0 0 0 3px #6366f126}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition)}.stat-card:hover{box-shadow:var(--shadow-md)}.stat-card svg{color:var(--brand-500);flex-shrink:0}.stat-value{font-size:1.75rem;font-weight:800;color:var(--text-primary);line-height:1}.stat-label{font-size:.8rem;color:var(--text-secondary);margin-top:3px}.loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--brand-500);font-size:1rem}.success-text{color:var(--color-success);font-size:.875rem;font-weight:500;padding:8px 0}.error-text{color:var(--color-danger);font-size:.875rem;font-weight:500;padding:8px 0}.text-center{text-align:center}.mono{font-family:JetBrains Mono,Fira Mono,monospace;font-size:.8rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.revenue-reports-container{padding:2rem;max-width:1600px;margin:0 auto}.revenue-reports-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.revenue-reports-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.revenue-reports-header p{color:#6b7280;margin:0}.header-actions{display:flex;gap:1rem}.btn-export{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#fff;border:1px solid #d1d5db;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-export:hover{background:#f3f4f6;border-color:#6366f1;color:#6366f1}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;gap:1rem;box-shadow:0 1px 3px #0000001a;transition:transform .2s}.metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.metric-card.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.metric-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#fff3;flex-shrink:0}.metric-card.primary .metric-icon{background:#ffffff4d}.metric-icon svg{width:24px;height:24px}.metric-card:not(.primary) .metric-icon{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.metric-content{flex:1}.metric-label{font-size:.875rem;opacity:.9;margin-bottom:.5rem}.metric-value{font-size:2rem;font-weight:700;line-height:1;margin-bottom:.5rem}.metric-trend{display:flex;align-items:center;gap:.25rem;font-size:.875rem;font-weight:600}.metric-trend.positive{color:#10b981}.metric-card.primary .metric-trend.positive{color:#d1fae5}.metric-subtitle{font-size:.8rem;opacity:.7;margin-top:.25rem}.filters-section{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:2rem;display:flex;gap:1rem;box-shadow:0 1px 3px #0000001a}.filter-group svg{color:#6b7280}.chart-container{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.chart-legend{display:flex;gap:1.5rem}.legend-color{width:16px;height:16px;border-radius:4px}.legend-color.revenue{background:linear-gradient(135deg,#667eea,#764ba2)}.legend-color.bills{background:#10b981}.chart-content{height:300px;position:relative}.chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:100%;gap:1rem;padding:0 1rem}.bar-group{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.bar-container{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;position:relative}.bar{width:100%;max-width:60px;background:linear-gradient(to top,#667eea,#764ba2);border-radius:8px 8px 0 0;position:relative;transition:all .3s;cursor:pointer;display:flex;align-items:flex-start;justify-content:center;padding-top:.5rem}.bar:hover{opacity:.8;transform:scaleY(1.02)}.bar-value{font-size:.75rem;font-weight:600;color:#fff;writing-mode:vertical-rl;text-orientation:mixed}.bar-label{margin-top:.5rem;font-size:.75rem;color:#6b7280;text-align:center}.two-column-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:2rem;margin-bottom:2rem}.breakdown-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.breakdown-card h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.breakdown-list{display:flex;flex-direction:column;gap:1.5rem}.breakdown-item{position:relative}.breakdown-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.breakdown-name{font-weight:600;color:#1a1a1a;font-size:.95rem}.breakdown-details{font-size:.8rem;color:#6b7280}.breakdown-amount{position:absolute;right:0;top:0;font-weight:700;color:#059669;font-size:1rem}.breakdown-bar-container{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-top:.5rem}.breakdown-bar{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;transition:width .3s}.breakdown-bar.payment{background:linear-gradient(90deg,#10b981,#059669)}.revenue-table-container{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.revenue-table-container h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.revenue-table{width:100%;border-collapse:collapse}.revenue-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.revenue-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase}.revenue-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.revenue-table tbody tr:hover{background-color:#f9fafb}.revenue-table td{padding:1rem;font-size:.9rem}.revenue-table .amount{font-weight:700;color:#059669}.growth-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600}.growth-badge.positive{background:#d1fae5;color:#065f46}.growth-badge.negative{background:#fee2e2;color:#991b1b}@media (max-width: 1024px){.two-column-layout{grid-template-columns:1fr}}@media (max-width: 768px){.revenue-reports-container{padding:1rem}.revenue-reports-header{flex-direction:column;align-items:flex-start;gap:1rem}.header-actions{width:100%;flex-direction:column}.btn-export{width:100%;justify-content:center}.metrics-grid{grid-template-columns:1fr}.filters-section{flex-direction:column}.chart-content{height:250px}.bar-value{font-size:.65rem}.revenue-table-container{overflow-x:auto}.revenue-table{min-width:700px}}.bed-analytics-container{padding:2rem;max-width:1600px;margin:0 auto}.bed-analytics-header{margin-bottom:2rem}.bed-analytics-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.bed-analytics-header p{color:#6b7280;margin:0}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;margin-bottom:2rem}.kpi-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;gap:1rem;box-shadow:0 1px 3px #0000001a;transition:transform .2s}.kpi-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.kpi-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.kpi-icon.total{background:linear-gradient(135deg,#667eea,#764ba2)}.kpi-icon.occupancy{background:linear-gradient(135deg,#10b981,#059669)}.kpi-icon.turnover{background:linear-gradient(135deg,#f59e0b,#d97706)}.kpi-icon.stay{background:linear-gradient(135deg,#3b82f6,#2563eb)}.kpi-content{flex:1}.kpi-label{font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.kpi-value{font-size:2rem;font-weight:700;color:#1a1a1a;line-height:1}.kpi-breakdown{font-size:.8rem;color:#9ca3af;margin-top:.5rem}.kpi-progress{width:100%;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;margin-top:.75rem}.kpi-progress-bar{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:3px;transition:width .3s}.chart-section{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.chart-header h3{font-size:1.25rem;color:#1a1a1a;margin:0;font-weight:600}.occupancy-chart{display:flex;gap:1rem;height:300px;margin-bottom:1rem}.chart-y-axis{display:flex;flex-direction:column;justify-content:space-between;font-size:.75rem;color:#9ca3af;padding:.5rem 0}.chart-bars{flex:1;display:flex;align-items:flex-end;justify-content:space-around;gap:.5rem;border-left:2px solid #e5e7eb;border-bottom:2px solid #e5e7eb;padding:0 .5rem 0 1rem}.chart-bar-group{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.stacked-bars{flex:1;width:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:2px}.bar{width:100%;max-width:50px;border-radius:4px 4px 0 0;transition:all .3s;cursor:pointer;display:flex;align-items:flex-start;justify-content:center;padding-top:.25rem}.bar.occupied{background:linear-gradient(to top,#667eea,#764ba2)}.bar.available{background:linear-gradient(to top,#10b981,#059669)}.bar:hover{opacity:.8}.bar-label{font-size:.7rem;font-weight:600;color:#fff}.bar-x-label{margin-top:.5rem;font-size:.75rem;color:#6b7280;text-align:center}.chart-legend{display:flex;justify-content:center;gap:2rem;margin-top:1rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280}.legend-color{width:20px;height:12px;border-radius:2px}.legend-color.occupied{background:linear-gradient(90deg,#667eea,#764ba2)}.legend-color.available{background:linear-gradient(90deg,#10b981,#059669)}.department-performance{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.department-performance h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.department-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.department-card{background:#f9fafb;border-radius:8px;padding:1.5rem;transition:transform .2s}.department-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.department-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.department-name{font-weight:600;color:#1a1a1a;font-size:1rem}.department-rate{font-size:1.5rem;font-weight:700}.department-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.75rem;color:#6b7280}.stat-value{font-size:1.125rem;font-weight:700;color:#1a1a1a}.department-progress{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.department-progress-fill{height:100%;border-radius:4px;transition:width .3s}.two-column-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:2rem;margin-bottom:2rem}.utilization-card,.peak-hours-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.utilization-card h3,.peak-hours-card h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.utilization-chart{display:flex;gap:1rem}.utilization-segment{flex:1;text-align:center;padding:2rem 1rem;border-radius:8px}.utilization-segment.under{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.utilization-segment.optimal{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.utilization-segment.over{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.segment-value{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.segment-label{font-weight:600;margin-bottom:.25rem}.segment-description{font-size:.8rem;opacity:.8}.peak-hours-chart{display:flex;flex-direction:column;gap:1rem}.peak-hour-item{display:flex;align-items:center;gap:1rem}.hour-label{font-weight:600;color:#374151;width:60px}.hour-bars{flex:1;display:flex;flex-direction:column;gap:.5rem}.hour-bar-group{display:flex}.hour-bar{height:24px;border-radius:4px;display:flex;align-items:center;justify-content:flex-end;padding:0 .5rem;font-size:.75rem;font-weight:600;color:#fff;transition:width .3s}.hour-bar.admissions{background:linear-gradient(90deg,#3b82f6,#2563eb)}.hour-bar.discharges{background:linear-gradient(90deg,#10b981,#059669)}.peak-hours-legend{display:flex;gap:2rem;justify-content:center;margin-top:1rem;font-size:.875rem;color:#6b7280}.legend-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:.5rem}.legend-dot.admissions{background:#3b82f6}.legend-dot.discharges{background:#10b981}.insights-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.insights-section h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.insights-grid{display:grid;gap:1rem}.insight-card{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;border-radius:8px;border-left:4px solid}.insight-card.high-priority{background:#fee2e2;border-color:#ef4444;color:#991b1b}.insight-card.medium-priority{background:#dbeafe;border-color:#3b82f6;color:#1e40af}.insight-card.low-priority{background:#fef3c7;border-color:#f59e0b;color:#92400e}.insight-card strong{display:block;margin-bottom:.25rem;font-size:1rem}.insight-card p{margin:0;font-size:.875rem;opacity:.9}@media (max-width: 1024px){.two-column-grid{grid-template-columns:1fr}}@media (max-width: 768px){.bed-analytics-container{padding:1rem}.kpi-grid,.department-grid{grid-template-columns:1fr}.utilization-chart{flex-direction:column}.occupancy-chart{height:250px}.chart-bars{padding:0 .25rem 0 .5rem}}.bed-assignments-container{padding:2rem;max-width:1600px;margin:0 auto}.bed-assignments-header{margin-bottom:2rem}.bed-assignments-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.bed-assignments-header p{color:#6b7280;margin:0}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;gap:1rem;box-shadow:0 1px 3px #0000001a;transition:transform .2s}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.stat-card.pending .stat-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-card.assigned .stat-icon{background:linear-gradient(135deg,#10b981,#059669)}.stat-card.stat-priority .stat-icon{background:linear-gradient(135deg,#ef4444,#dc2626)}.stat-card.urgent .stat-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-label{font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.stat-value{font-size:2rem;font-weight:700;color:#1a1a1a}.filters-section{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:2rem;display:flex;gap:1.5rem;align-items:center;box-shadow:0 1px 3px #0000001a;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:.75rem}.filter-group label{font-weight:600;color:#374151;font-size:.9rem}.results-info{margin-left:auto;font-size:.875rem;color:#6b7280}.assignments-list{display:flex;flex-direction:column;gap:1.5rem}.assignment-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;border-left:4px solid #e5e7eb;transition:all .2s}.assignment-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.assignment-card.pending{border-left-color:#f59e0b}.assignment-card.assigned{border-left-color:#10b981;background:#f0fdf4}.assignment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.patient-info{flex:1}.patient-name{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:700;color:#1a1a1a;margin-bottom:.25rem}.patient-details{font-size:.875rem;color:#6b7280}.assignment-badges{display:flex;gap:.5rem}.priority-badge,.condition-badge{padding:.375rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase}.priority-stat{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.priority-urgent{background:#fef3c7;color:#92400e;border:1px solid #f59e0b}.priority-normal{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.condition-critical{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.condition-stable{background:#d1fae5;color:#065f46;border:1px solid #10b981}.assignment-details{display:flex;flex-direction:column;gap:.75rem}.detail-row{display:flex;gap:2rem;flex-wrap:wrap}.detail-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#6b7280}.detail-item svg{flex-shrink:0}.detail-item strong{color:#1a1a1a}.assignment-info{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;margin-top:.5rem}.assignment-info.success{background:#d1fae5;color:#065f46}.assignment-info strong{display:block;margin-bottom:.25rem}.assignment-meta{font-size:.8rem;opacity:.8}.assignment-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.available-beds{margin-bottom:1rem}.available-beds label{display:block;font-weight:600;color:#374151;margin-bottom:.75rem}.beds-list{display:flex;flex-wrap:wrap;gap:.5rem}.bed-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:2px solid #d1d5db;border-radius:8px;font-weight:600;color:#374151;cursor:pointer;transition:all .2s}.bed-button:hover{border-color:#6366f1;background:#ede9fe;color:#6366f1;transform:translateY(-2px)}.btn-quick-assign{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;width:100%;justify-content:center}.btn-quick-assign:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.no-results{padding:4rem 2rem;text-align:center;color:#9ca3af;background:#fff;border-radius:12px}@media (max-width: 768px){.bed-assignments-container{padding:1rem}.stats-grid{grid-template-columns:1fr}.filters-section{flex-direction:column;align-items:stretch}.filter-group{width:100%}.results-info{margin-left:0}.assignment-header{flex-direction:column;gap:1rem}.assignment-badges{width:100%;justify-content:flex-start}.detail-row{flex-direction:column;gap:.5rem}.beds-list{flex-direction:column}.bed-button{width:100%;justify-content:center}}.departments-page{padding:2rem;max-width:1600px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.page-header h1{font-size:2rem;color:#333;margin-bottom:.5rem}.subtitle{color:#666;font-size:1rem}.departments-filters{margin-bottom:2rem}.search-box{display:flex;align-items:center;gap:.75rem;background:#f9f9f9;padding:1rem;border-radius:8px;border:1px solid #d1d5db;max-width:600px}.search-box input{flex:1;border:none;background:transparent;outline:none;font-size:.95rem}.departments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.department-card{background:#fff;border-radius:8px;border:1px solid #e5e7eb;overflow:hidden;transition:box-shadow .2s}.department-card:hover{box-shadow:0 4px 6px #0000001a}.card-header{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:1.25rem;display:flex;justify-content:space-between;align-items:center}.dept-title{display:flex;align-items:center;gap:1rem}.dept-title h3{font-size:1.25rem;margin-bottom:.25rem}.dept-code{font-size:.85rem;opacity:.9;font-weight:500;background:#fff3;padding:.25rem .5rem;border-radius:4px}.card-actions{display:flex;gap:.5rem}.btn-icon{background:#fff3;border:none;padding:.5rem;cursor:pointer;color:#fff;border-radius:4px;transition:background .2s}.btn-icon:hover{background:#ffffff4d}.card-content{padding:1.25rem}.description{color:#6b7280;margin-bottom:1.25rem;line-height:1.5}.info-section{background:#f9fafb;padding:1rem;border-radius:6px;margin-bottom:1.25rem}.info-item{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.9rem}.info-item:last-child{margin-bottom:0}.info-item .label{color:#6b7280;font-weight:500}.info-item .value{color:#111827;text-align:right}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:1.25rem}.stat-card{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.stat-card svg{color:#6366f1}.stat-value{font-size:1.25rem;font-weight:600;color:#111827}.stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.occupancy-section{background:#f9fafb;padding:1rem;border-radius:6px}.occupancy-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.9rem;font-weight:500}.occupancy-percentage{font-weight:600}.occupancy-percentage.occupancy-low{color:#059669}.occupancy-percentage.occupancy-moderate{color:#d97706}.occupancy-percentage.occupancy-high{color:#dc2626}.occupancy-percentage.occupancy-critical{color:#991b1b}.occupancy-bar{height:.5rem;background:#e5e7eb;border-radius:1rem;overflow:hidden}.occupancy-fill{height:100%;transition:width .3s ease;border-radius:1rem}.occupancy-fill.occupancy-low{background:#10b981}.occupancy-fill.occupancy-moderate{background:#f59e0b}.occupancy-fill.occupancy-high{background:#ef4444}.occupancy-fill.occupancy-critical{background:#dc2626}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-content.large{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:1.5rem;color:#111827}.close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#6b7280;padding:0;line-height:1;transition:color .2s}.close-btn:hover{color:#111827}.department-form{padding:1.5rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;margin-bottom:1rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e5e7eb}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background-color:#6366f1;color:#fff}.btn-primary:hover:not(:disabled){background-color:#4f46e5;box-shadow:0 4px 6px #6366f140}.btn-secondary{background-color:#e5e7eb;color:#374151}.btn-secondary:hover:not(:disabled){background-color:#d1d5db}.btn:disabled{opacity:.6;cursor:not-allowed}.loading-state,.empty-state{text-align:center;padding:3rem;color:#6b7280;background:#fff;border-radius:8px}.spinner{width:3rem;height:3rem;border:4px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;margin:0 auto 1rem;animation:spin .8s linear infinite}.empty-state h3{color:#111827;margin-bottom:.5rem}@media (max-width: 768px){.departments-page{padding:1rem}.page-header{flex-direction:column;gap:1rem}.departments-grid,.stats-grid,.form-row{grid-template-columns:1fr}.modal-content{width:95%}}.pending-bills-container{padding:2rem;max-width:1600px;margin:0 auto}.pending-bills-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.pending-bills-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.pending-bills-header p{color:#6b7280;margin:0;font-size:1rem}.stat-icon.total{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-icon.current{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.overdue{background:linear-gradient(135deg,#ef4444,#dc2626)}.stat-icon.priority{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-amount.danger{color:#dc2626}.bills-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.bills-table{width:100%;border-collapse:collapse}.bills-table thead{background:linear-gradient(135deg,#667eea,#764ba2)}.bills-table thead tr{color:#fff}.bills-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.bills-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.bills-table tbody tr:hover{background-color:#f9fafb}.bills-table tbody tr.overdue-warning{background-color:#fef3c7}.bills-table tbody tr.overdue-warning:hover{background-color:#fde68a}.bills-table tbody tr.overdue-critical{background-color:#fee2e2}.bills-table tbody tr.overdue-critical:hover{background-color:#fecaca}.bills-table td{padding:1rem;font-size:.9rem}.overdue-badge{display:inline-block;background:#dc2626;color:#fff;font-size:.75rem;padding:.25rem .5rem;border-radius:4px;margin-top:.25rem;font-weight:600}.btn-action{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-view{background:#ede9fe;color:#6366f1}.btn-view:hover{background:#6366f1;color:#fff}.btn-remind{background:#fef3c7;color:#d97706}.btn-remind:hover{background:#f59e0b;color:#fff}.no-results{padding:4rem 2rem;text-align:center;color:#9ca3af}.no-results svg{margin-bottom:1rem;opacity:.5}.no-results p{font-size:1.1rem;margin:0}@media (max-width: 768px){.pending-bills-container{padding:1rem}.pending-bills-header{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid{grid-template-columns:1fr}.filters{flex-direction:column}.filter-group,.filter-group select{width:100%}.bills-table-container{overflow-x:auto}.bills-table{min-width:1000px}.action-buttons{flex-direction:column}.btn-action{width:100%}}.all-payments-container{padding:2rem;max-width:1600px;margin:0 auto}.all-payments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.all-payments-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.all-payments-header p{color:#6b7280;margin:0;font-size:1rem}.stat-icon.total{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.current{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-icon.trend{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-icon.calendar{background:linear-gradient(135deg,#f59e0b,#d97706)}.payments-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.payments-table{width:100%;border-collapse:collapse}.payments-table thead{background:linear-gradient(135deg,#10b981,#059669)}.payments-table thead tr{color:#fff}.payments-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.payments-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.payments-table tbody tr:hover{background-color:#f9fafb}.payments-table td{padding:1rem;font-size:.9rem}.payment-number{font-weight:600;color:#10b981;font-family:Courier New,monospace}.bill-id{font-weight:600;color:#6366f1;font-family:Courier New,monospace}.method-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-completed{background:#d1fae5;color:#065f46;border:1px solid #10b981}.status-pending{background:#fef3c7;color:#92400e;border:1px solid #fbbf24}.status-failed{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.status-refunded{background:#f3f4f6;color:#374151;border:1px solid #9ca3af}@media (max-width: 768px){.all-payments-container{padding:1rem}.all-payments-header{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid{grid-template-columns:1fr}.filters{flex-direction:column}.filter-group,.filter-group select{width:100%}.payments-table-container{overflow-x:auto}.payments-table{min-width:1200px}}.payment-history-container{padding:2rem;max-width:1800px;margin:0 auto}.payment-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.payment-history-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.payment-history-header p{color:#6b7280;margin:0;font-size:1rem}.stat-icon.today{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.processor{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-amount{font-size:.875rem;color:#059669;font-weight:600;margin-top:.25rem}.history-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.history-table{width:100%;border-collapse:collapse}.history-table thead{background:linear-gradient(135deg,#6366f1,#4f46e5)}.history-table thead tr{color:#fff}.history-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.history-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.history-table tbody tr:hover{background-color:#f9fafb}.history-table td{padding:1rem;font-size:.9rem}.payment-number{font-weight:600;color:#6366f1;font-family:Courier New,monospace}.bill-number{font-weight:600;color:#8b5cf6;font-family:Courier New,monospace}.amount{font-weight:700;color:#059669;font-size:1rem}.reference-number{font-family:Courier New,monospace;font-size:.85rem;color:#6b7280}.processed-by{color:#4b5563;font-size:.875rem}.notes{color:#6b7280;font-size:.85rem;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.method-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.method-card{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.method-cash{background:#d1fae5;color:#065f46;border:1px solid #10b981}.method-check{background:#fef3c7;color:#92400e;border:1px solid #fbbf24}.method-online{background:#e0e7ff;color:#3730a3;border:1px solid #6366f1}.method-insurance{background:#e9d5ff;color:#6b21a8;border:1px solid #a855f7}.method-other{background:#f3f4f6;color:#374151;border:1px solid #9ca3af}@media (max-width: 768px){.payment-history-container{padding:1rem}.payment-history-header{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid{grid-template-columns:1fr}.filters{flex-direction:column}.filter-group,.filter-group select{width:100%}.history-table-container{overflow-x:auto}.history-table{min-width:1400px}.notes{max-width:150px}}.bed-turnovers-container{padding:2rem;max-width:1800px;margin:0 auto}.bed-turnovers-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.bed-turnovers-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.bed-turnovers-header p{color:#6b7280;margin:0;font-size:1rem}.stat-icon.total{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-icon.available{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.cleaning{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-icon.average{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.search-box input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;background:#fff}.filter-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.turnovers-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.turnovers-table{width:100%;border-collapse:collapse}.turnovers-table thead{background:linear-gradient(135deg,#3b82f6,#2563eb)}.turnovers-table thead tr{color:#fff}.turnovers-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.turnovers-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.turnovers-table tbody tr:hover{background-color:#f9fafb}.turnovers-table td{padding:1rem;font-size:.9rem}.bed-number{font-weight:700;color:#3b82f6;font-family:Courier New,monospace;font-size:1rem}.department{color:#4b5563;font-weight:500}.patient-info{display:flex;flex-direction:column;gap:.25rem}.patient-name{font-weight:600;color:#1a1a1a}.patient-mrn{font-size:.8rem;color:#6b7280;font-family:Courier New,monospace}.turnaround-time{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600}.turnaround-time.on-time{background:#d1fae5;color:#065f46;border:1px solid #10b981}.turnaround-time.delayed{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.turnaround-time.in-progress{background:#fef3c7;color:#92400e;border:1px solid #fbbf24}.staff-name{color:#4b5563;font-size:.875rem}.status-available{background:#d1fae5;color:#065f46;border:1px solid #10b981}.status-cleaning{background:#fef3c7;color:#92400e;border:1px solid #fbbf24}.status-pending{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.status-inspection{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.priority-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase}.priority-high{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.priority-medium{background:#fef3c7;color:#92400e;border:1px solid #fbbf24}.priority-low{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6}@media (max-width: 768px){.bed-turnovers-container{padding:1rem}.bed-turnovers-header{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid{grid-template-columns:1fr}.filters{flex-direction:column}.filter-group,.filter-group select{width:100%}.turnovers-table-container{overflow-x:auto}.turnovers-table{min-width:1200px}}.nurses-container{padding:2rem;max-width:1800px;margin:0 auto}.nurses-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.nurses-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.nurses-header p{color:#6b7280;margin:0;font-size:1rem}.stat-icon.total{background:linear-gradient(135deg,#ec4899,#db2777)}.stat-icon.patients{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-icon.rating{background:linear-gradient(135deg,#f59e0b,#d97706)}.search-box input:focus{outline:none;border-color:#ec4899;box-shadow:0 0 0 3px #ec48991a;background:#fff}.filter-group select:focus{outline:none;border-color:#ec4899;box-shadow:0 0 0 3px #ec48991a}.nurses-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.nurses-table{width:100%;border-collapse:collapse}.nurses-table thead{background:linear-gradient(135deg,#ec4899,#db2777)}.nurses-table thead tr{color:#fff}.nurses-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.nurses-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.nurses-table tbody tr:hover{background-color:#fdf2f8}.nurses-table td{padding:1rem;font-size:.9rem}.employee-id{font-weight:600;color:#ec4899;font-family:Courier New,monospace}.nurse-info{display:flex;flex-direction:column;gap:.5rem}.nurse-name{font-weight:600;color:#1a1a1a;font-size:.95rem}.certifications{display:flex;gap:.25rem;flex-wrap:wrap}.cert-badge{display:inline-block;background:#fce7f3;color:#be185d;padding:.125rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;border:1px solid #fbcfe8}.cert-badge.more{background:#f3f4f6;color:#6b7280;border-color:#d1d5db}.specialization{color:#4b5563;font-weight:500}.experience{color:#4b5563}.patient-badge{display:inline-block;background:#dbeafe;color:#1e40af;padding:.375rem .75rem;border-radius:6px;font-weight:700;font-size:.9rem;border:1px solid #3b82f6}.shift-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.shift-day{background:#fef3c7;color:#92400e;border:1px solid #fbbf24}.shift-evening{background:#e0e7ff;color:#3730a3;border:1px solid #6366f1}.shift-night{background:#e9d5ff;color:#6b21a8;border:1px solid #a855f7}.shift-other{background:#f3f4f6;color:#374151;border:1px solid #9ca3af}.contact-info{display:flex;flex-direction:column;gap:.25rem}.contact-phone{font-family:Courier New,monospace;font-size:.85rem;color:#4b5563}@media (max-width: 768px){.nurses-container{padding:1rem}.nurses-header{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid{grid-template-columns:1fr}.filters{flex-direction:column}.filter-group,.filter-group select{width:100%}.nurses-table-container{overflow-x:auto}.nurses-table{min-width:1400px}}.staff-overview-container{padding:2rem;max-width:1800px;margin:0 auto}.staff-overview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.staff-overview-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.staff-overview-header p{color:#6b7280;margin:0;font-size:1rem}.stat-icon.on-duty{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.patients{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-icon.rating{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-subtitle{font-size:.75rem;color:#9ca3af;margin-top:.25rem}.role-distribution{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.role-distribution h2{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.role-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.role-card{padding:1.5rem;border-radius:8px;text-align:center;transition:transform .2s}.role-card:hover{transform:translateY(-2px)}.role-card.doctor{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.role-card.nurse{background:linear-gradient(135deg,#ec4899,#db2777);color:#fff}.role-card.technician{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.role-card.admin{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.role-count{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.role-name{font-size:1rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.staff-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.staff-table{width:100%;border-collapse:collapse}.staff-table thead{background:linear-gradient(135deg,#6366f1,#4f46e5)}.staff-table thead tr{color:#fff}.staff-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.staff-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.staff-table tbody tr:hover{background-color:#f9fafb}.staff-table td{padding:1rem;font-size:.9rem}.employee-id{font-weight:600;color:#6366f1;font-family:Courier New,monospace}.staff-info{display:flex;flex-direction:column;gap:.25rem}.staff-name{font-weight:600;color:#1a1a1a;font-size:.95rem}.contact-email{font-size:.75rem;color:#6b7280}.department{color:#6b7280}.specialization{color:#4b5563;font-size:.875rem}.shift,.experience{color:#4b5563}.patients-count{text-align:center}.patient-count-badge{display:inline-block;background:#dbeafe;color:#1e40af;padding:.375rem .75rem;border-radius:6px;font-weight:700;font-size:.9rem;border:1px solid #3b82f6}.no-patients{color:#9ca3af;font-style:italic}.role-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.role-doctor{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.role-nurse{background:#fce7f3;color:#be185d;border:1px solid #ec4899}.role-technician{background:#d1fae5;color:#065f46;border:1px solid #10b981}.role-admin{background:#e9d5ff;color:#6b21a8;border:1px solid #a855f7}.role-other{background:#f3f4f6;color:#374151;border:1px solid #9ca3af}.status-on-duty{background:#d1fae5;color:#065f46;border:1px solid #10b981}.status-off-duty{background:#f3f4f6;color:#374151;border:1px solid #9ca3af}.status-on-break{background:#fef3c7;color:#92400e;border:1px solid #fbbf24}.status-on-leave{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.status-other{background:#f3f4f6;color:#374151;border:1px solid #9ca3af}.rating{display:flex;align-items:center;gap:.5rem}.rating-icon{color:#f59e0b}.rating-value{font-weight:700;color:#1a1a1a;font-size:.95rem}@media (max-width: 1200px){.stats-grid,.role-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.staff-overview-container{padding:1rem}.staff-overview-header{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid,.role-cards{grid-template-columns:1fr}.filters{flex-direction:column}.filter-group,.filter-group select{width:100%}.staff-table-container{overflow-x:auto}.staff-table{min-width:1300px}}.add-staff-container{padding:2rem;max-width:1200px;margin:0 auto}.add-staff-header{margin-bottom:2rem}.add-staff-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.add-staff-header p{color:#6b7280;margin:0;font-size:1rem}.add-staff-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}@media (max-width: 768px){.add-staff-container{padding:1rem}.form-grid{grid-template-columns:1fr}.form-section{padding:1.5rem}.form-actions{flex-direction:column-reverse;padding:1.5rem}.btn-cancel,.btn-submit{width:100%;justify-content:center}}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{opacity:1}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.user-management-container{padding:2rem;max-width:1800px;margin:0 auto}.user-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.user-management-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.user-management-header p{color:#6b7280;margin:0;font-size:1rem}.btn-add-user{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-user:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);box-shadow:0 4px 12px #6366f14d}.stat-icon.total{background:linear-gradient(135deg,#6366f1,#4f46e5)}.stat-icon.active{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.inactive{background:linear-gradient(135deg,#ef4444,#dc2626)}.stat-icon.admins{background:linear-gradient(135deg,#f59e0b,#d97706)}.filters-section{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.filters{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-icon{color:#6b7280;width:20px;height:20px}.filter-group select{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;background:#fff;cursor:pointer;transition:all .2s}.results-count{font-size:.875rem;color:#6b7280;padding-top:.5rem;border-top:1px solid #e5e7eb}.users-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.users-table{width:100%;border-collapse:collapse}.users-table thead{background:linear-gradient(135deg,#6366f1,#4f46e5)}.users-table thead tr{color:#fff}.users-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.users-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.users-table tbody tr:hover{background-color:#f9fafb}.users-table td{padding:1rem;font-size:.9rem}.username{font-weight:700;color:#6366f1;font-family:Courier New,monospace}.full-name{font-weight:600;color:#1a1a1a}.email{color:#6b7280;font-size:.85rem}.role-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;background:#e0e7ff;color:#3730a3;border:1px solid #6366f1}.department{color:#4b5563}.last-login{color:#6b7280;font-size:.85rem}.status-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-active{background:#d1fae5;color:#065f46;border:1px solid #10b981}.status-inactive{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.action-buttons{display:flex;gap:.5rem}.btn-action{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.user-management-container{padding:1rem}.user-management-header{flex-direction:column;align-items:flex-start;gap:1rem}.btn-add-user{width:100%;justify-content:center}.stats-grid{grid-template-columns:1fr}.filters{flex-direction:column}.filter-group,.filter-group select{width:100%}.users-table-container{overflow-x:auto}.users-table{min-width:1200px}}.add-user-container{padding:2rem;max-width:1200px;margin:0 auto}.add-user-header{margin-bottom:2rem}.add-user-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.add-user-header p{color:#6b7280;margin:0;font-size:1rem}.add-user-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.form-group label{display:flex;align-items:center;gap:.5rem;font-weight:500;margin-bottom:.5rem;color:#374151;font-size:.9rem}.form-group label svg{width:16px;height:16px;color:#6b7280}.form-group input.error,.form-group select.error{border-color:#ef4444;background:#fef2f2}.form-group input.error:focus,.form-group select.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.permission-checkbox:hover{background:#f3f4f6;border-color:#6366f1}.permission-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#6366f1}.btn-submit{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}.btn-submit:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);box-shadow:0 4px 12px #6366f14d}@media (max-width: 768px){.add-user-container{padding:1rem}.form-grid,.permissions-grid{grid-template-columns:1fr}.form-section{padding:1.5rem}.form-actions{flex-direction:column-reverse;padding:1.5rem}.btn-cancel,.btn-submit{width:100%;justify-content:center}}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem}.user-activity-container{padding:2rem;max-width:1200px;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;color:#1a1a1a;display:flex;align-items:center;gap:1rem}.page-header p{color:#6b7280;margin-top:.5rem}.activity-list{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.activity-item{display:flex;gap:1rem;padding:1rem;border-bottom:1px solid #e5e7eb}.activity-item:last-child{border-bottom:none}.activity-icon{width:40px;height:40px;background:#e0e7ff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#6366f1}.activity-details{flex:1}.activity-user{font-weight:600;color:#1a1a1a}.activity-action{color:#4b5563;margin-top:.25rem}.activity-time{display:flex;align-items:center;gap:.5rem;color:#9ca3af;font-size:.875rem;margin-top:.5rem}.roles-container{padding:2rem;max-width:1400px;margin:0 auto}.roles-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.roles-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:1rem}.roles-header p{color:#6b7280;margin:0;font-size:1rem}.btn-add-role{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-role:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 4px 12px #8b5cf64d}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #0000001a;transition:transform .2s,box-shadow .2s}.stat-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#8b5cf6,#7c3aed);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon svg{width:24px;height:24px;color:#fff}.stat-details{flex:1}.stat-label{font-size:.875rem;color:#6b7280;margin-bottom:.25rem;font-weight:500}.stat-value{font-size:1.875rem;font-weight:700;color:#1a1a1a;line-height:1.2}.roles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.role-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:transform .2s,box-shadow .2s;border-left:4px solid #8b5cf6}.role-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.role-header{display:flex;gap:1rem;margin-bottom:1.5rem}.role-icon{width:48px;height:48px;background:#ede9fe;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.role-icon svg{color:#8b5cf6}.role-info{flex:1}.role-info h3{font-size:1.125rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:600}.role-info p{font-size:.875rem;color:#6b7280;margin:0;line-height:1.5}.role-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:1rem;background:#f9fafb;border-radius:8px}.role-stat{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#4b5563}.role-stat svg{color:#8b5cf6}.role-actions{display:flex;gap:.5rem}.btn-action{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit{background:#dbeafe;color:#1e40af}.btn-edit:hover{background:#3b82f6;color:#fff}.btn-delete{background:#fee2e2;color:#991b1b}.btn-delete:hover{background:#ef4444;color:#fff}@media (max-width: 768px){.roles-container{padding:1rem}.roles-header{flex-direction:column;align-items:flex-start;gap:1rem}.btn-add-role{width:100%;justify-content:center}.roles-grid{grid-template-columns:1fr}}.create-role-container{padding:2rem;max-width:1200px;margin:0 auto}.create-role-header{margin-bottom:2rem}.create-role-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:1rem}.create-role-header p{color:#6b7280;margin:0;font-size:1rem}.create-role-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.section-title svg{color:#8b5cf6}.required{color:#ef4444;font-weight:700}.form-group input,.form-group textarea{padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;transition:all .2s;background:#f8f9fa;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a;background:#fff}.form-group input.error,.form-group textarea.error{border-color:#ef4444;background:#fef2f2}.form-group input.error:focus,.form-group textarea.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-group textarea{resize:vertical;min-height:100px}.error-message{color:#ef4444;font-size:.8rem;margin-top:.25rem;font-weight:500}.permission-category{margin-bottom:2rem}.permission-category:last-child{margin-bottom:0}.category-title{font-size:1rem;color:#1a1a1a;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.permissions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.permission-checkbox{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.permission-checkbox:hover{background:#f3f4f6;border-color:#8b5cf6}.permission-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#8b5cf6}.permission-checkbox span{font-size:.9rem;color:#374151;font-weight:500}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding:2rem;background:#f9fafb;border-radius:0 0 12px 12px}.btn-cancel,.btn-submit{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel{background:#e5e7eb;color:#374151}.btn-cancel:hover{background:#d1d5db}.btn-submit{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.btn-submit:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 4px 12px #8b5cf64d}.btn-submit:active{transform:translateY(1px)}@media (max-width: 768px){.create-role-container{padding:1rem}.form-grid,.permissions-grid{grid-template-columns:1fr}.form-section{padding:1.5rem}.form-actions{flex-direction:column-reverse;padding:1.5rem}.btn-cancel,.btn-submit{width:100%;justify-content:center}}.permission-matrix-container{padding:2rem;max-width:1400px;margin:0 auto}.permission-matrix-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.permission-matrix-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:1rem}.permission-matrix-header p{color:#6b7280;margin:0;font-size:1rem}.btn-save{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-save:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d}.role-selector{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;display:flex;align-items:center;gap:1rem}.role-selector label{font-weight:600;color:#1a1a1a;font-size:1rem}.role-selector select{flex:1;max-width:300px;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;background:#f8f9fa;cursor:pointer;transition:all .2s}.role-selector select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;background:#fff}.matrix-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.matrix-scroll{overflow-x:auto}.permission-matrix{width:100%;border-collapse:collapse;min-width:600px}.permission-matrix thead{background:linear-gradient(135deg,#6366f1,#4f46e5)}.permission-matrix thead tr{color:#fff}.permission-matrix th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.permission-header{text-align:center!important}.permission-matrix tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.permission-matrix tbody tr:hover{background-color:#f9fafb}.permission-matrix tbody tr:last-child{border-bottom:none}.permission-matrix td{padding:1rem}.module-name{font-weight:600;color:#1a1a1a;font-size:.95rem}.permission-cell{text-align:center}.checkbox-wrapper{display:inline-flex;align-items:center;justify-content:center;position:relative;cursor:pointer}.checkbox-wrapper input[type=checkbox]{width:24px;height:24px;cursor:pointer;accent-color:#6366f1;margin:0}.checkbox-wrapper input[type=checkbox]:checked{accent-color:#10b981}.matrix-footer{background:#fff;padding:1.5rem;border-radius:0 0 12px 12px;border-top:2px solid #e5e7eb;margin-top:-1px}.permission-summary{font-size:.95rem;color:#4b5563}.permission-summary strong{color:#1a1a1a;margin-right:.5rem}@media (max-width: 768px){.permission-matrix-container{padding:1rem}.permission-matrix-header{flex-direction:column;align-items:flex-start;gap:1rem}.btn-save{width:100%;justify-content:center}.role-selector{flex-direction:column;align-items:stretch}.role-selector select{max-width:none}.permission-matrix th,.permission-matrix td{padding:.75rem .5rem}}.matrix-toast{padding:.75rem 1.25rem;border-radius:6px;margin-bottom:1rem;font-weight:500}.matrix-toast--success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.matrix-toast--error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.perm-na{color:#cbd5e1;font-size:.85rem}.unsaved-badge{color:#d97706;font-weight:600}.matrix-loading{padding:2rem;text-align:center;color:#64748b}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}.general-settings-container{padding:2rem;max-width:1000px;margin:0 auto}.general-settings-header{margin-bottom:2rem}.general-settings-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:1rem}.general-settings-header p{color:#6b7280;margin:0;font-size:1rem}.settings-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.form-section{padding:2rem;border-bottom:1px solid #e5e7eb}.section-title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.section-title svg{color:#6366f1}.form-group label{font-weight:500;margin-bottom:.5rem;color:#374151;font-size:.9rem}.form-group input,.form-group select{padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;transition:all .2s;background:#f8f9fa}.form-group input:focus,.form-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;background:#fff}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem}.form-actions{display:flex;justify-content:flex-end;padding:2rem;background:#f9fafb;border-radius:0 0 12px 12px}.btn-save{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-save:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);box-shadow:0 4px 12px #6366f14d}.btn-save:active{transform:translateY(1px)}@media (max-width: 768px){.general-settings-container{padding:1rem}.form-grid{grid-template-columns:1fr}.form-section,.form-actions{padding:1.5rem}.btn-save{width:100%;justify-content:center}}.operating-hours-container{padding:2rem;max-width:1000px;margin:0 auto}.operating-hours-header{margin-bottom:2rem}.operating-hours-header h1{font-size:2rem;color:#1a1a1a;display:flex;align-items:center;gap:1rem;margin:0 0 .5rem}.operating-hours-header p{color:#6b7280;margin:0}.success-message{display:flex;align-items:center;gap:1rem;background:#d1fae5;color:#065f46;padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem;border:1px solid #059669}.hours-form{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.hours-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.day-hours{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;transition:all .2s}.day-hours:hover{box-shadow:0 2px 8px #0000000d;border-color:#d1d5db}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.day-name{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:1.1rem;color:#1a1a1a}.day-name svg{color:#6366f1}.toggle-24hours{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-24hours input[type=checkbox]{width:18px;height:18px;cursor:pointer}.toggle-24hours span{font-size:.9rem;color:#374151;font-weight:500}.time-inputs{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border-radius:6px}.time-group{display:flex;flex-direction:column;gap:.5rem;flex:1}.time-group label{font-size:.875rem;font-weight:600;color:#374151}.time-group input[type=time]{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;color:#1a1a1a;background:#fff;transition:all .2s}.time-group input[type=time]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.time-separator{font-weight:600;color:#6b7280;margin-top:1.5rem}.hours-24{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#fff;border-radius:6px;color:#059669;font-weight:500}.hours-24 svg{color:#059669}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:2rem;border-top:1px solid #e5e7eb}.btn-primary,.btn-secondary{padding:.75rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;gap:.5rem;font-size:1rem}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}@media (max-width: 768px){.operating-hours-container{padding:1rem}.hours-form{padding:1.5rem}.time-inputs{flex-direction:column;align-items:stretch}.time-separator{margin-top:0;text-align:center}.day-header{flex-direction:column;align-items:flex-start;gap:1rem}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%;justify-content:center}}.subscription-plan-container{padding:2rem;max-width:1400px;margin:0 auto}.subscription-header{margin-bottom:2rem}.subscription-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.subscription-header p{color:#6b7280;margin:0;font-size:1rem}.current-plan-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:3rem;border:2px solid #6366f1}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.plan-header h3{font-size:1.5rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:600}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.active{background:#d1fae5;color:#065f46}.plan-price{text-align:right}.plan-price .amount{font-size:2.5rem;font-weight:700;color:#6366f1}.plan-price .period{font-size:1rem;color:#6b7280}.usage-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-bottom:1.5rem}.usage-item{display:flex;flex-direction:column;gap:.75rem}.usage-header{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#374151;font-size:.95rem}.usage-header svg{color:#6366f1}.usage-bar{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.usage-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:4px;transition:width .3s ease}.usage-text{font-size:.875rem;color:#6b7280}.billing-info{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#f9fafb;border-radius:8px;color:#374151;font-size:.95rem}.billing-info svg{color:#6366f1}.billing-info strong{color:#1a1a1a}.plans-section{margin-bottom:3rem}.plans-section h2{font-size:1.75rem;color:#1a1a1a;margin:0 0 2rem;font-weight:600}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.plan-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:2rem;position:relative;transition:all .3s ease}.plan-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f;border-color:#6366f1}.plan-card.popular{border-color:#6366f1;box-shadow:0 4px 16px #6366f133}.plan-card.current{border-color:#10b981;background:#f0fdf4}.popular-badge,.current-badge{position:absolute;top:-14px;left:50%;transform:translate(-50%);padding:.4rem 1.2rem;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;z-index:10}.popular-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}.current-badge{background:#10b981;color:#fff}.plan-name{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin-bottom:1rem}.plan-price-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.plan-price-section .price{font-size:2.5rem;font-weight:700;color:#6366f1}.plan-price-section .period{font-size:1rem;color:#6b7280;margin-left:.25rem}.features-list{list-style:none;padding:0;margin:0 0 2rem}.features-list li{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;color:#374151;font-size:.95rem}.features-list li svg{color:#10b981;flex-shrink:0}.btn-plan{width:100%;padding:.875rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;border:none;font-size:1rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.btn-plan:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #6366f166}.btn-plan:disabled,.btn-plan.current{background:#e5e7eb;color:#9ca3af;cursor:not-allowed;transform:none}.features-comparison{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.features-comparison h2{font-size:1.75rem;color:#1a1a1a;margin:0 0 2rem;font-weight:600}.comparison-table{width:100%;border-collapse:collapse}.comparison-table thead{background:#f9fafb}.comparison-table th{padding:1rem;text-align:left;font-weight:600;color:#1a1a1a;border-bottom:2px solid #e5e7eb;font-size:.95rem}.comparison-table td{padding:1rem;color:#374151;border-bottom:1px solid #e5e7eb;font-size:.95rem}.comparison-table tbody tr:hover{background:#f9fafb}.comparison-table tbody tr:last-child td{border-bottom:none}@media (max-width: 1024px){.plans-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.subscription-plan-container{padding:1rem}.plans-grid{grid-template-columns:1fr}.usage-stats{grid-template-columns:1fr;gap:1.5rem}.plan-header{flex-direction:column;gap:1rem}.plan-price{text-align:left}.comparison-table{font-size:.875rem}.comparison-table th,.comparison-table td{padding:.75rem .5rem}}.usage-statistics-container{padding:2rem;max-width:1400px;margin:0 auto}.usage-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.usage-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.usage-header p{color:#6b7280;margin:0;font-size:1rem}.usage-header select{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;color:#1a1a1a;background:#fff;cursor:pointer;transition:all .2s}.usage-header select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;transition:all .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.users{background:#dbeafe;color:#1e40af}.stat-icon.storage{background:#d1fae5;color:#065f46}.stat-icon.api{background:#fce7f3;color:#9f1239}.stat-icon.patients{background:#ede9fe;color:#6b21a8}.stat-label{font-size:.875rem;color:#6b7280;margin-bottom:.5rem;font-weight:500}.stat-value{font-size:2rem;font-weight:700;color:#1a1a1a;margin-bottom:.25rem}.stat-limit{font-size:.875rem;color:#6b7280;margin-bottom:.75rem}.stat-progress{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;margin-top:.75rem}.progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:3px;transition:width .3s ease}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;margin-bottom:3rem}.chart{height:250px;position:relative}.chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:200px;gap:1rem;padding:1rem 0}.bar{width:100%;background:linear-gradient(180deg,#6366f1,#8b5cf6);border-radius:8px 8px 0 0;position:relative;min-height:20px;transition:all .3s ease;display:flex;align-items:flex-start;justify-content:center;padding-top:.5rem}.bar:hover{filter:brightness(1.1)}.bar span{font-size:.75rem;font-weight:600;color:#fff}.bar.storage-bar{background:linear-gradient(180deg,#10b981,#059669)}.bar-label{font-size:.875rem;color:#6b7280;font-weight:500}.details-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.details-section h3{font-size:1.5rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.usage-table{width:100%;border-collapse:collapse}.usage-table thead{background:#f9fafb}.usage-table th{padding:1rem;text-align:left;font-weight:600;color:#1a1a1a;border-bottom:2px solid #e5e7eb;font-size:.95rem}.usage-table td{padding:1rem;color:#374151;border-bottom:1px solid #e5e7eb;font-size:.95rem}.usage-table tbody tr:hover{background:#f9fafb}.usage-table tbody tr:last-child td{border-bottom:none}.status-badge{display:inline-block;padding:.35rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.ok{background:#d1fae5;color:#065f46}.status-badge.warning{background:#fed7aa;color:#92400e}.status-badge.critical{background:#fecaca;color:#991b1b}@media (max-width: 1024px){.charts-section{grid-template-columns:1fr}}@media (max-width: 768px){.usage-statistics-container{padding:1rem}.usage-header{flex-direction:column;gap:1rem;align-items:stretch}.stats-grid{grid-template-columns:1fr}.chart{height:200px}.chart-bars{height:150px}.usage-table{font-size:.875rem}.usage-table th,.usage-table td{padding:.75rem .5rem}}.process-payment-container{padding:2rem;max-width:1200px;margin:0 auto}.process-payment-header{margin-bottom:2rem}.process-payment-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.process-payment-header p{color:#6b7280;margin:0;font-size:1rem}.success-message,.error-message{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem}.success-message{background:#d1fae5;color:#065f46;border:1px solid #059669}.error-message{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.success-message strong,.error-message strong{display:block;margin-bottom:.25rem}.success-message p,.error-message p{margin:0;font-size:.875rem}.payment-form-container{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.search-box{position:relative;margin-bottom:1rem}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af;width:20px;height:20px}.search-box input{width:100%;padding:.875rem 1rem .875rem 3rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;transition:all .2s;background:#f8f9fa}.search-box input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;background:#fff}.bill-preview{background:#f0fdf4;border:2px solid #059669;border-radius:8px;padding:1.5rem;margin-top:1rem}.bill-preview-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-weight:600;color:#059669}.success-icon{width:20px;height:20px}.bill-preview-details{display:flex;flex-direction:column;gap:.75rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #d1fae5}.detail-row:last-child{border-bottom:none}.detail-row span{color:#6b7280;font-size:.875rem}.detail-row strong{color:#1a1a1a;font-size:.95rem}.detail-row .amount{color:#059669;font-size:1.25rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;transition:all .2s;background:#f8f9fa}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;background:#fff}.form-group input:read-only{background:#e5e7eb;cursor:not-allowed}.form-group textarea{resize:vertical;font-family:inherit}.input-with-icon{position:relative}.input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#6b7280;width:20px;height:20px}.input-with-icon input{padding-left:3rem}.payment-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.payment-method-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem 1rem;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s;background:#fff}.payment-method-option:hover{border-color:#6366f1;background:#f8f9fa}.payment-method-option.active{border-color:#6366f1;background:#ede9fe}.payment-method-option input[type=radio]{position:absolute;opacity:0}.payment-method-option svg,.payment-method-option .icon{color:#6b7280;font-size:2rem}.payment-method-option.active svg,.payment-method-option.active .icon{color:#6366f1}.payment-method-option span:last-child{font-size:.875rem;font-weight:600;color:#374151;text-align:center}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:2rem;border-top:1px solid #e5e7eb;margin-top:2rem}.btn-primary,.btn-secondary{padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover{background:#f3f4f6}@media (max-width: 768px){.process-payment-container{padding:1rem}.payment-form-container{padding:1.5rem}.form-grid{grid-template-columns:1fr}.payment-methods{grid-template-columns:repeat(2,1fr)}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}@media (max-width: 480px){.payment-methods{grid-template-columns:1fr}}.billing-history-container{padding:2rem;max-width:1400px;margin:0 auto}.billing-history-header{margin-bottom:2rem}.billing-history-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.billing-history-header p{color:#6b7280;margin:0;font-size:1rem}.billing-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-icon.paid{background:#d1fae5;color:#065f46}.summary-icon.method{background:#ede9fe;color:#6b21a8}.summary-icon.next{background:#fce7f3;color:#9f1239}.billing-filters{display:flex;gap:1rem;margin-bottom:2rem;padding:1rem;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.filter-btn{padding:.625rem 1.25rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#374151;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.filter-btn:hover{border-color:#6366f1;color:#6366f1}.filter-btn.active{background:#6366f1;border-color:#6366f1;color:#fff}.billing-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;margin-bottom:2rem}.billing-table{width:100%;border-collapse:collapse}.billing-table thead{background:#f9fafb}.billing-table th{padding:1rem;text-align:left;font-weight:600;color:#1a1a1a;border-bottom:2px solid #e5e7eb;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.billing-table td{padding:1rem;color:#374151;border-bottom:1px solid #e5e7eb;font-size:.95rem}.billing-table tbody tr{transition:background .2s}.billing-table tbody tr:hover{background:#f9fafb}.billing-table tbody tr:last-child td{border-bottom:none}.invoice-number{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#6366f1}.invoice-number svg{flex-shrink:0}.plan-badge{display:inline-block;padding:.35rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;background:#ede9fe;color:#6b21a8}.amount{font-weight:700;color:#1a1a1a;font-size:1rem}.status-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.status-paid{background:#d1fae5;color:#065f46}.status-badge.status-pending{background:#fed7aa;color:#92400e}.status-badge.status-overdue{background:#fecaca;color:#991b1b}.download-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s}.download-btn:hover{background:#f9fafb;border-color:#6366f1;color:#6366f1}.payment-method-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.payment-method-section h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.payment-method-card{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border:2px solid #e5e7eb;border-radius:12px;background:#f9fafb}.card-info{display:flex;align-items:center;gap:1rem}.card-info svg{color:#6366f1}.card-type{font-weight:600;color:#1a1a1a;margin-bottom:.25rem}.card-expires{font-size:.875rem;color:#6b7280}.btn-secondary{padding:.75rem 1.5rem;border:2px solid #6366f1;border-radius:8px;background:#fff;color:#6366f1;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#6366f1;color:#fff}@media (max-width: 1024px){.billing-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.billing-history-container{padding:1rem}.billing-summary{grid-template-columns:1fr}.billing-filters{flex-direction:column}.filter-btn{width:100%}.billing-table-container{overflow-x:auto}.billing-table{min-width:800px}.payment-method-card{flex-direction:column;gap:1rem;align-items:stretch}.btn-secondary{width:100%}}.upgrade-plan-container{padding:2rem;max-width:1400px;margin:0 auto}.upgrade-header{text-align:center;margin-bottom:3rem}.upgrade-header h1{font-size:2.5rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.upgrade-header p{color:#6b7280;margin:0;font-size:1.125rem}.billing-cycle-toggle{display:flex;justify-content:center;gap:0;margin-bottom:3rem;background:#fff;padding:.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;max-width:400px;margin-left:auto;margin-right:auto}.billing-cycle-toggle button{flex:1;padding:.875rem 1.5rem;border:none;background:transparent;color:#6b7280;font-weight:600;cursor:pointer;border-radius:8px;transition:all .2s;position:relative;display:flex;align-items:center;justify-content:center;gap:.5rem}.billing-cycle-toggle button.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.save-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:6px;background:#10b98133;color:#059669;font-weight:700}.billing-cycle-toggle button.active .save-badge{background:#ffffff4d;color:#fff}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:4rem}.plan-card{background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:2rem;position:relative;transition:all .3s ease;display:flex;flex-direction:column}.plan-card:hover{transform:translateY(-8px);box-shadow:0 12px 32px #00000026}.plan-card.popular{border-color:#6366f1;border-width:3px;box-shadow:0 8px 24px #6366f133}.plan-card.current{border-color:#10b981;background:linear-gradient(to bottom,#f0fdf4,#fff)}.popular-badge,.current-plan-badge{position:absolute;top:-14px;right:2rem;padding:.5rem 1rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:.35rem}.popular-badge{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.current-plan-badge{background:#10b981;color:#fff}.plan-header{margin-bottom:1.5rem}.plan-header h3{font-size:1.75rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700}.plan-description{color:#6b7280;margin:0;font-size:.95rem}.plan-pricing{margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid #e5e7eb}.price{display:flex;align-items:baseline;gap:.25rem}.price .currency{font-size:1.5rem;font-weight:600;color:#6b7280}.price .amount{font-size:3.5rem;font-weight:800;color:#1a1a1a;line-height:1}.price .period{font-size:1.25rem;color:#6b7280}.savings{margin-top:.75rem;font-size:.95rem;color:#059669;font-weight:600;background:#d1fae5;padding:.5rem 1rem;border-radius:8px;display:inline-block}.features-list{list-style:none;padding:0;margin:0 0 2rem;flex:1}.features-list li{display:flex;align-items:center;gap:.75rem;padding:.875rem 0;color:#374151;font-size:.95rem}.features-list li.included{color:#1a1a1a}.features-list li.not-included{color:#9ca3af}.check-icon{color:#10b981;flex-shrink:0}.x-icon{color:#d1d5db;flex-shrink:0}.plan-limits{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;padding:1.25rem;background:#f9fafb;border-radius:12px}.limit-item{display:flex;align-items:center;gap:.75rem;color:#374151;font-size:.95rem;font-weight:500}.limit-item svg{color:#6366f1;flex-shrink:0}.plan-action-btn{width:100%;padding:1rem 1.5rem;border-radius:12px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;justify-content:center;gap:.5rem}.plan-action-btn.upgrade{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.plan-action-btn.upgrade:hover{transform:translateY(-2px);box-shadow:0 8px 20px #6366f166}.plan-action-btn.downgrade{background:#fff;color:#6b7280;border:2px solid #e5e7eb}.plan-action-btn.downgrade:hover{background:#f9fafb;border-color:#d1d5db}.plan-action-btn.current{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.additional-features{margin-bottom:4rem}.additional-features h2{text-align:center;font-size:2rem;color:#1a1a1a;margin:0 0 2.5rem;font-weight:700}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.feature-item{text-align:center;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:all .2s}.feature-item:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.feature-icon{width:64px;height:64px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;border-radius:16px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.feature-item h4{color:#1a1a1a;margin:0 0 .75rem;font-size:1.125rem;font-weight:600}.feature-item p{color:#6b7280;margin:0;font-size:.95rem;line-height:1.6}.faq-section{background:#fff;border-radius:16px;padding:3rem;box-shadow:0 2px 8px #0000001a}.faq-section h2{text-align:center;font-size:2rem;color:#1a1a1a;margin:0 0 2.5rem;font-weight:700}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.faq-item h4{color:#1a1a1a;margin:0 0 .75rem;font-size:1.125rem;font-weight:600}.faq-item p{color:#6b7280;margin:0;font-size:.95rem;line-height:1.6}@media (max-width: 1200px){.plans-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (max-width: 768px){.upgrade-plan-container{padding:1rem}.upgrade-header h1{font-size:2rem}.plans-grid{grid-template-columns:1fr}.billing-cycle-toggle{max-width:100%}.price .amount{font-size:2.5rem}.features-grid,.faq-grid{grid-template-columns:1fr}.faq-section{padding:2rem 1.5rem}}.audit-logs-container{padding:2rem;max-width:1600px;margin:0 auto}.audit-logs-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.audit-logs-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.audit-logs-header h1 svg{color:#6366f1}.audit-logs-header p{color:#6b7280;margin:0;font-size:1rem}.audit-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;align-items:center;transition:all .2s}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.summary-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.summary-icon.total{background:#dbeafe;color:#1e40af}.summary-icon.success{background:#d1fae5;color:#065f46}.summary-icon.failure{background:#fecaca;color:#991b1b}.summary-icon.today{background:#ede9fe;color:#6b21a8}.summary-label{font-size:.875rem;color:#6b7280;margin-bottom:.25rem;font-weight:500}.summary-value{font-size:1.5rem;font-weight:700;color:#1a1a1a}.audit-filters{display:flex;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.search-box input{width:100%;padding:.75rem 1rem .75rem 3rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;transition:all .2s}.filter-group{display:flex;gap:1rem}.filter-group select{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;color:#1a1a1a;background:#fff;cursor:pointer;transition:all .2s}.filter-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.audit-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;margin-bottom:2rem}.audit-table{width:100%;border-collapse:collapse}.audit-table thead{background:#f9fafb}.audit-table th{padding:1rem;text-align:left;font-weight:600;color:#1a1a1a;border-bottom:2px solid #e5e7eb;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.audit-table td{padding:1rem;color:#374151;border-bottom:1px solid #e5e7eb;font-size:.95rem}.audit-table tbody tr{transition:background .2s}.audit-table tbody tr:hover{background:#f9fafb}.audit-table tbody tr.row-failure{background:#fef2f2}.audit-table tbody tr.row-failure:hover{background:#fee2e2}.audit-table tbody tr:last-child td{border-bottom:none}.timestamp{color:#6b7280;font-size:.875rem;white-space:nowrap}.user-info,.entity-info{display:flex;flex-direction:column;gap:.25rem}.user-info strong,.entity-info strong{color:#1a1a1a;font-weight:600}.user-id,.entity-id{font-size:.75rem;color:#9ca3af;font-family:Courier New,monospace}.entity-type{font-weight:500;color:#6366f1}.action-badge{display:inline-block;padding:.35rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.action-badge.action-read{background:#dbeafe;color:#1e40af}.action-badge.action-create{background:#d1fae5;color:#065f46}.action-badge.action-update{background:#fef3c7;color:#92400e}.action-badge.action-delete{background:#fecaca;color:#991b1b}.action-badge.action-auth{background:#ede9fe;color:#6b21a8}.action-badge.action-default{background:#f3f4f6;color:#374151}.status-container{display:flex;align-items:center;gap:.5rem}.status-icon{flex-shrink:0}.status-icon.success{color:#10b981}.status-icon.failure{color:#ef4444}.status-icon.warning{color:#f59e0b}.ip-address{font-family:Courier New,monospace;font-size:.875rem;color:#6b7280}.details{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state h3{color:#1a1a1a;margin:0 0 .5rem;font-size:1.25rem}.empty-state p{margin:0;font-size:.95rem}.pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.pagination span{color:#6b7280;font-size:.95rem}.pagination-controls{display:flex;gap:.5rem}.pagination-controls button{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-weight:500;cursor:pointer;transition:all .2s}.pagination-controls button:hover:not(:disabled){background:#f9fafb;border-color:#6366f1;color:#6366f1}.pagination-controls button:disabled{opacity:.5;cursor:not-allowed}.pagination-controls button.active{background:#6366f1;color:#fff;border-color:#6366f1}@media (max-width: 1024px){.audit-filters{flex-direction:column}.filter-group{flex-wrap:wrap}}@media (max-width: 768px){.audit-logs-container{padding:1rem}.audit-logs-header{flex-direction:column;gap:1rem}.btn-export{width:100%;justify-content:center}.audit-summary{grid-template-columns:1fr}.audit-table-container{overflow-x:auto}.audit-table{min-width:1200px}.pagination{flex-direction:column;gap:1rem}.pagination-controls{width:100%;justify-content:center}}.audit-statistics-container{padding:2rem;max-width:1600px;margin:0 auto}.audit-statistics-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.audit-statistics-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.audit-statistics-header h1 svg{color:#6366f1}.audit-statistics-header p{color:#6b7280;margin:0}.audit-statistics-header select{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;color:#1a1a1a;background:#fff;font-size:.95rem;cursor:pointer}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;align-items:center}.stat-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.total{background:#dbeafe;color:#1e40af}.stat-icon.failure{background:#fecaca;color:#991b1b}.stat-icon.users{background:#ede9fe;color:#6b21a8}.stat-value{font-size:1.75rem;font-weight:700;color:#1a1a1a;margin-bottom:.25rem}.stat-trend{font-size:.875rem;font-weight:600}.stat-trend.positive{color:#10b981}.stat-trend.negative{color:#ef4444}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:2rem;margin-bottom:2rem}.chart-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.chart-card h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.bar-chart{display:flex;align-items:flex-end;justify-content:space-between;height:250px;gap:.5rem;padding:1rem 0}.bar-group{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem}.bar{width:100%;background:linear-gradient(180deg,#6366f1,#8b5cf6);border-radius:6px 6px 0 0;min-height:20px;position:relative;display:flex;align-items:flex-start;justify-content:center;padding-top:.5rem;transition:all .3s}.bar:hover{filter:brightness(1.1);transform:scaleY(1.05)}.bar-value{font-size:.75rem;font-weight:600;color:#fff}.bar-label{font-size:.75rem;color:#6b7280;font-weight:500}.horizontal-bar-chart{display:flex;flex-direction:column;gap:1rem}.h-bar-group{display:grid;grid-template-columns:100px 1fr 60px;gap:1rem;align-items:center}.h-bar-label{font-weight:600;color:#1a1a1a;font-size:.95rem}.h-bar-container{background:#f3f4f6;border-radius:6px;overflow:hidden;height:32px}.h-bar{height:100%;display:flex;align-items:center;justify-content:flex-end;padding-right:.75rem;transition:width .5s ease}.h-bar span{font-size:.875rem;font-weight:600;color:#fff}.h-bar-read{background:linear-gradient(90deg,#3b82f6,#2563eb)}.h-bar-update{background:linear-gradient(90deg,#f59e0b,#d97706)}.h-bar-create{background:linear-gradient(90deg,#10b981,#059669)}.h-bar-delete{background:linear-gradient(90deg,#ef4444,#dc2626)}.h-bar-login{background:linear-gradient(90deg,#8b5cf6,#7c3aed)}.h-bar-percentage{font-weight:600;color:#6b7280;text-align:right}.top-lists-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:2rem;margin-bottom:2rem}.top-list-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.top-list-card h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.top-users-list{display:flex;flex-direction:column;gap:1rem}.top-user-item{display:grid;grid-template-columns:40px 40px 1fr 120px;gap:1rem;align-items:center;padding:.75rem;border-radius:8px;transition:background .2s}.top-user-item:hover{background:#f9fafb}.user-rank{font-weight:700;font-size:1.25rem;color:#6366f1;text-align:center}.user-info{flex:1}.user-name{font-weight:600;color:#1a1a1a;margin-bottom:.25rem}.user-count{font-size:.875rem;color:#6b7280}.user-bar{width:120px;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.user-bar-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);transition:width .5s ease}.top-entities-list{display:flex;flex-direction:column;gap:1rem}.top-entity-item{display:grid;grid-template-columns:40px 1fr 120px;gap:1rem;align-items:center;padding:.75rem;border-radius:8px;transition:background .2s}.top-entity-item:hover{background:#f9fafb}.entity-icon{width:40px;height:40px;border-radius:10px;background:#f3f4f6;color:#6366f1;display:flex;align-items:center;justify-content:center}.entity-info{flex:1}.entity-type{font-weight:600;color:#1a1a1a;margin-bottom:.25rem}.entity-count{font-size:.875rem;color:#6b7280}.entity-bar{width:120px;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.entity-bar-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);transition:width .5s ease}.security-events-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.security-events-card h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.security-events-card h3 svg{color:#ef4444}.security-events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.security-event-item{padding:1.25rem;border-radius:8px;border-left:4px solid}.security-event-item.severity-high{background:#fef2f2;border-color:#ef4444}.security-event-item.severity-medium{background:#fef3c7;border-color:#f59e0b}.security-event-item.severity-low{background:#f0f9ff;border-color:#3b82f6}.security-event-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.event-type{font-weight:600;color:#1a1a1a}.severity-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:700}.severity-badge.high{background:#ef4444;color:#fff}.severity-badge.medium{background:#f59e0b;color:#fff}.severity-badge.low{background:#3b82f6;color:#fff}.event-count{font-size:1.5rem;font-weight:700;color:#1a1a1a}@media (max-width: 1024px){.charts-grid,.top-lists-grid{grid-template-columns:1fr}}@media (max-width: 768px){.audit-statistics-container{padding:1rem}.audit-statistics-header{flex-direction:column;gap:1rem}.stats-overview{grid-template-columns:1fr}.bar-chart{height:200px}.h-bar-group{grid-template-columns:80px 1fr 50px;gap:.5rem}.top-user-item{grid-template-columns:30px 40px 1fr}.user-bar{display:none}.top-entity-item{grid-template-columns:40px 1fr}.entity-bar{display:none}}.user-activity-container{padding:2rem;max-width:1400px;margin:0 auto}.user-activity-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.user-activity-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.user-activity-header h1 svg{color:#6366f1}.user-activity-header p{color:#6b7280;margin:0}.btn-export{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-export:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6366f166}.user-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.user-stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;align-items:center}.stat-icon{width:56px;height:56px;border-radius:12px;background:#dbeafe;color:#1e40af;display:flex;align-items:center;justify-content:center}.stat-icon.success{background:#d1fae5;color:#065f46}.stat-content{flex:1}.stat-label{font-size:.875rem;color:#6b7280;margin-bottom:.25rem}.activity-filters{display:flex;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.search-box{flex:1;position:relative}.activity-filters select{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;color:#1a1a1a;background:#fff;cursor:pointer}.activity-timeline{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.activity-timeline h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 2rem;font-weight:600}.timeline-container{position:relative;padding-left:2rem}.timeline-container:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:#e5e7eb}.timeline-item{position:relative;margin-bottom:2rem}.timeline-marker{position:absolute;left:-2.45rem;top:.5rem;width:12px;height:12px;border-radius:50%;background:#6366f1;border:3px solid white;box-shadow:0 0 0 2px #6366f1}.timeline-content{background:#f9fafb;border-radius:8px;padding:1.5rem;border-left:3px solid #6366f1}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.activity-user{display:flex;align-items:center;gap:1rem}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem}.user-details{display:flex;flex-direction:column;gap:.25rem}.user-details strong{color:#1a1a1a;font-weight:600}.user-id{font-size:.75rem;color:#9ca3af;font-family:Courier New,monospace}.activity-time{color:#6b7280;font-size:.875rem}.activity-body{display:flex;flex-direction:column;gap:.75rem}.activity-action{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.action-badge{padding:.35rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.action-badge.read{background:#dbeafe;color:#1e40af}.action-badge.create{background:#d1fae5;color:#065f46}.action-badge.update{background:#fef3c7;color:#92400e}.action-badge.delete{background:#fecaca;color:#991b1b}.entity-type{font-weight:600;color:#6366f1}.entity-id{font-size:.875rem;color:#6b7280;font-family:Courier New,monospace}.activity-details{color:#374151;margin:0}.activity-meta{display:flex;gap:1.5rem;font-size:.875rem;color:#6b7280}.status-success{color:#10b981;font-weight:600}.empty-state{text-align:center;padding:4rem 2rem;color:#6b7280}@media (max-width: 768px){.user-activity-container{padding:1rem}.user-activity-header{flex-direction:column;gap:1rem}.btn-export{width:100%;justify-content:center}.user-stats-grid{grid-template-columns:1fr}.activity-filters{flex-direction:column}.activity-header{flex-direction:column;align-items:flex-start;gap:.75rem}.activity-action{flex-direction:column;align-items:flex-start}.activity-meta{flex-direction:column;gap:.5rem}}.entity-history-container{padding:2rem;max-width:1400px;margin:0 auto}.entity-history-header{margin-bottom:2rem}.entity-history-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.entity-history-header h1 svg{color:#6366f1}.entity-history-header p{color:#6b7280;margin:0}.history-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;align-items:center}.summary-icon{width:56px;height:56px;border-radius:12px;background:#dbeafe;color:#1e40af;display:flex;align-items:center;justify-content:center}.summary-content{flex:1}.summary-label{font-size:.875rem;color:#6b7280;margin-bottom:.25rem}.summary-value{font-size:1.75rem;font-weight:700;color:#1a1a1a}.search-entity{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.search-row{display:grid;grid-template-columns:200px 1fr auto;gap:1rem;align-items:center}.search-row select{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;color:#1a1a1a;background:#fff;font-size:.95rem;cursor:pointer}.search-box{position:relative}.search-box svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af}.search-box input{width:100%;padding:.75rem 1rem .75rem 3rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem}.search-box input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.btn-search{padding:.75rem 2rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s}.btn-search:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6366f166}.history-timeline-container{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.history-timeline-container h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 2rem;font-weight:600}.history-timeline{position:relative;padding-left:3rem}.history-timeline:before{content:"";position:absolute;left:20px;top:0;bottom:0;width:2px;background:#e5e7eb}.history-item{position:relative;margin-bottom:2rem}.version-badge{position:absolute;left:-3rem;top:0;width:48px;height:48px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;box-shadow:0 0 0 4px #fff,0 0 0 6px #6366f1}.history-content{background:#f9fafb;border-radius:12px;padding:1.5rem;border-left:4px solid #6366f1}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.user-info{display:flex;align-items:center;gap:1rem}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem}.user-info strong{color:#1a1a1a;font-weight:600}.user-id{font-size:.75rem;color:#9ca3af;font-family:Courier New,monospace;margin-top:.25rem}.timestamp{display:flex;align-items:center;gap:.5rem;color:#6b7280;font-size:.875rem}.changes-list{display:flex;flex-direction:column;gap:1rem}.change-item{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e5e7eb}.field-name{font-weight:600;color:#6366f1;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.value-change{display:flex;flex-direction:column;gap:.5rem}.old-value,.new-value{display:grid;grid-template-columns:80px 1fr;gap:1rem;align-items:center}.value-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase}.old-value .value-text{padding:.5rem .75rem;background:#fef2f2;border-left:3px solid #ef4444;border-radius:4px;color:#991b1b;font-family:Courier New,monospace;font-size:.875rem}.new-value .value-text{padding:.5rem .75rem;background:#f0fdf4;border-left:3px solid #10b981;border-radius:4px;color:#065f46;font-family:Courier New,monospace;font-size:.875rem}.empty-state{background:#fff;border-radius:12px;padding:4rem 2rem;box-shadow:0 2px 8px #0000001a;text-align:center;color:#6b7280}.empty-state svg{color:#d1d5db;margin-bottom:1rem}.empty-state h3{color:#1a1a1a;margin:0 0 .5rem}@media (max-width: 768px){.entity-history-container{padding:1rem}.search-row{grid-template-columns:1fr}.history-timeline{padding-left:2rem}.history-timeline:before{left:10px}.version-badge{left:-2rem;width:36px;height:36px}.history-header{flex-direction:column;align-items:flex-start;gap:.75rem}.value-change{gap:.75rem}.old-value,.new-value{grid-template-columns:1fr}}.export-logs-container{padding:2rem;max-width:1400px;margin:0 auto}.export-header{margin-bottom:2rem}.export-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.export-header h1 svg{color:#6366f1}.export-header p{color:#6b7280;margin:0}.export-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:2rem}.export-form-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.export-form-card h3{font-size:1.5rem;color:#1a1a1a;margin:0 0 2rem;font-weight:600}.form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e5e7eb}.form-section:last-of-type{border-bottom:none}.form-section h4{font-size:1.125rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.form-section h4 svg{color:#6366f1}.date-inputs{display:flex;align-items:flex-end;gap:1rem;margin-bottom:1rem}.input-group{flex:1;display:flex;flex-direction:column;gap:.5rem}.input-group label{font-size:.875rem;font-weight:600;color:#374151}.input-group input[type=date]{padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;color:#1a1a1a;background-color:#fff;color-scheme:light}.input-group input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(0)}.input-group input[type=date]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;background-color:#fff}.date-separator{color:#6b7280;font-weight:600;padding-bottom:.75rem}.quick-dates{display:flex;gap:.5rem;flex-wrap:wrap}.quick-dates button{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.quick-dates button:hover{background:#f9fafb;border-color:#6366f1;color:#6366f1}.format-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.format-options label{cursor:pointer}.format-options input[type=radio]{display:none}.format-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;transition:all .2s}.format-card svg{color:#6b7280;flex-shrink:0}.format-card strong{display:block;color:#1a1a1a;font-weight:600;margin-bottom:.25rem}.format-card span{display:block;font-size:.875rem;color:#6b7280}.format-options label.active .format-card{border-color:#6366f1;background:#f0f4ff}.format-options label.active .format-card svg{color:#6366f1}.fields-checkboxes{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:6px;cursor:pointer;transition:background .2s}.checkbox-label:hover{background:#f9fafb}.btn-export-large{width:100%;padding:1rem 2rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:1.125rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .2s;margin-top:1rem}.btn-export-large:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #6366f166}.btn-export-large:disabled{opacity:.6;cursor:not-allowed}.success-message{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#d1fae5;border:1px solid #059669;border-radius:8px;color:#065f46;font-weight:600;margin-top:1rem}.success-message svg{color:#059669}.export-history-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;height:fit-content}.export-history-card h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.history-list{display:flex;flex-direction:column;gap:1rem}.history-item{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s}.history-item:hover{background:#f9fafb;border-color:#d1d5db}.history-icon{width:40px;height:40px;border-radius:8px;background:#f3f4f6;color:#6366f1;display:flex;align-items:center;justify-content:center;flex-shrink:0}.history-details{flex:1}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.history-header strong{color:#1a1a1a;font-weight:600}.history-date{font-size:.875rem;color:#6b7280}.history-meta{display:flex;gap:.5rem;font-size:.875rem;color:#6b7280}.btn-download-small{padding:.5rem;background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;color:#6366f1;cursor:pointer;transition:all .2s}.btn-download-small:hover{background:#6366f1;color:#fff}.info-box{display:flex;gap:1rem;padding:1.5rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;color:#0c4a6e}.info-box svg{flex-shrink:0;color:#0284c7}.info-box strong{display:block;margin-bottom:.5rem}.info-box ul{margin:0;padding-left:1.5rem}.info-box li{margin-bottom:.25rem;font-size:.95rem}@media (max-width: 1024px){.export-content{grid-template-columns:1fr}}@media (max-width: 768px){.export-logs-container{padding:1rem}.date-inputs{flex-direction:column;align-items:stretch}.date-separator{text-align:center;padding-bottom:0}.format-options,.fields-checkboxes{grid-template-columns:1fr}.history-item{flex-wrap:wrap}}.advanced-filter-container{padding:2rem;max-width:1200px;margin:0 auto}.filter-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.filter-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.filter-header h1 svg{color:#6366f1}.filter-header p{color:#6b7280;margin:0}.btn-clear{padding:.75rem 1.5rem;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#ef4444;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s}.btn-clear:hover{background:#fef2f2;border-color:#ef4444}.filter-builder-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.filter-builder-card h3{font-size:1.5rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:600}.builder-hint{color:#6b7280;margin:0 0 2rem;font-size:.95rem}.filter-conditions{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.filter-row{display:grid;grid-template-columns:40px 1fr 1fr 2fr 40px;gap:1rem;align-items:center;padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.filter-row-number{width:32px;height:32px;border-radius:50%;background:#6366f1;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.filter-select,.filter-input{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;background:#fff;color:#1a1a1a}.filter-select:focus,.filter-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.btn-remove{width:36px;height:36px;padding:0;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#ef4444;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-remove:hover:not(:disabled){background:#fef2f2;border-color:#ef4444}.btn-remove:disabled{opacity:.5;cursor:not-allowed}.btn-add-filter{padding:.75rem 1.5rem;background:#fff;border:2px dashed #d1d5db;border-radius:8px;color:#6366f1;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s;width:100%}.btn-add-filter:hover{border-color:#6366f1;background:#f0f4ff}.filter-actions-section{display:grid;grid-template-columns:1fr auto;gap:1rem;margin-bottom:2rem}.save-filter-group{display:flex;gap:1rem}.filter-name-input{flex:1;padding:.875rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;background:#fff;color:#1a1a1a}.filter-name-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.btn-save-filter,.btn-apply-filter{padding:.875rem 1.75rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s;white-space:nowrap}.btn-save-filter{background:#fff;border:1px solid #d1d5db;color:#374151}.btn-save-filter:hover:not(:disabled){background:#f9fafb;border-color:#6366f1;color:#6366f1}.btn-save-filter:disabled{opacity:.5;cursor:not-allowed}.btn-apply-filter{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.btn-apply-filter:hover{transform:translateY(-2px);box-shadow:0 6px 16px #6366f166}.saved-filters-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.saved-filters-card h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:600}.saved-hint{color:#6b7280;margin:0 0 1.5rem;font-size:.95rem}.empty-saved{text-align:center;padding:3rem 2rem;color:#9ca3af}.empty-saved svg{margin:0 auto 1rem;opacity:.3}.empty-saved p{font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.empty-saved span{font-size:.95rem}.saved-filters-list{display:flex;flex-direction:column;gap:.75rem}.saved-filter-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s}.saved-filter-item:hover{background:#fff;border-color:#d1d5db;box-shadow:0 2px 4px #0000000d}.saved-filter-info{display:flex;flex-direction:column;gap:.25rem}.saved-filter-info strong{color:#1a1a1a;font-weight:600}.conditions-count{font-size:.875rem;color:#6b7280}.saved-filter-actions{display:flex;gap:.5rem}.btn-icon-action{width:36px;height:36px;padding:0;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#6366f1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-icon-action:hover{background:#f0f4ff;border-color:#6366f1}.btn-icon-action.danger{color:#ef4444}.btn-icon-action.danger:hover{background:#fef2f2;border-color:#ef4444}.query-preview-card{background:#1f2937;border-radius:12px;padding:1.5rem}.query-preview-card h4{color:#f3f4f6;margin:0 0 1rem;font-weight:600}.query-code{font-family:Courier New,monospace;font-size:.9rem;color:#d1d5db;line-height:1.8}.query-line{display:flex;gap:.5rem;align-items:center;padding:.25rem 0}.query-operator{color:#f59e0b;font-weight:700}.query-field{color:#60a5fa}.query-operator-symbol{color:#a78bfa}.query-value{color:#34d399}@media (max-width: 1024px){.filter-actions-section{grid-template-columns:1fr}.btn-apply-filter{width:100%;justify-content:center}}@media (max-width: 768px){.advanced-filter-container{padding:1rem}.filter-header{flex-direction:column;gap:1rem}.btn-clear{width:100%;justify-content:center}.filter-row{grid-template-columns:1fr;gap:.75rem}.filter-row-number{margin:0 auto}.save-filter-group{flex-direction:column}}.log-cleanup-container{padding:2rem;max-width:1200px;margin:0 auto}.cleanup-header{margin-bottom:2rem}.cleanup-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.cleanup-header h1 svg{color:#ef4444}.cleanup-header p{color:#6b7280;margin:0}.cleanup-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card.warning svg{color:#ef4444}.stat-value{font-size:1.5rem;font-weight:700;color:#1a1a1a}.cleanup-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:2rem}.retention-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.retention-card h3{font-size:1.5rem;color:#1a1a1a;margin:0 0 2rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.retention-card h3 svg{color:#6366f1}.setting-group{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e5e7eb}.setting-group:last-of-type{border-bottom:none;margin-bottom:1.5rem}.setting-label{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1rem}.setting-label>span:first-child{font-weight:600;color:#1a1a1a}.setting-hint{font-size:.875rem;color:#6b7280}.retention-slider{padding:0 .5rem}.slider{width:100%;height:8px;border-radius:4px;background:#e5e7eb;outline:none;margin-bottom:1rem}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:#6366f1;cursor:pointer;box-shadow:0 2px 4px #0003}.slider::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#6366f1;cursor:pointer;border:none;box-shadow:0 2px 4px #0003}.slider-labels{display:flex;justify-content:space-between;color:#6b7280;font-size:.875rem}.current-value{color:#6366f1;font-weight:600}.checkbox-setting{display:flex;align-items:flex-start;gap:1rem;cursor:pointer;padding:1rem;border-radius:8px;transition:background .2s}.checkbox-setting:hover{background:#f9fafb}.checkbox-setting input[type=checkbox]{width:20px;height:20px;cursor:pointer;margin-top:2px}.checkbox-setting>div{display:flex;flex-direction:column;gap:.25rem}.checkbox-setting strong{color:#1a1a1a;font-weight:600}.checkbox-setting span{font-size:.875rem;color:#6b7280}.log-types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.log-type-checkbox{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:6px;cursor:pointer;transition:background .2s}.log-type-checkbox:hover{background:#f9fafb}.log-type-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.log-type-checkbox span{color:#374151;font-weight:500;text-transform:capitalize}.btn-save-settings,.btn-run-cleanup{width:100%;padding:1rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.btn-save-settings{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.btn-save-settings:hover{transform:translateY(-2px);box-shadow:0 6px 16px #6366f166}.btn-run-cleanup{background:#ef4444;color:#fff;margin-top:1rem}.btn-run-cleanup:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 6px 16px #ef444466}.cleanup-history-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;height:fit-content}.cleanup-history-card h3{font-size:1.25rem;color:#1a1a1a;margin:0 0 1.5rem;font-weight:600}.history-item{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1rem}.history-item:last-of-type{margin-bottom:1.5rem}.history-icon{width:40px;height:40px;border-radius:8px;background:#d1fae5;color:#059669;display:flex;align-items:center;justify-content:center;flex-shrink:0}.history-details{display:flex;flex-direction:column;gap:.25rem}.history-details strong{color:#1a1a1a;font-weight:600}.history-details span{font-size:.875rem;color:#6b7280}.warning-box{display:flex;gap:1rem;padding:1.5rem;background:#fef3c7;border:1px solid #fbbf24;border-radius:12px;color:#78350f}.warning-box svg{flex-shrink:0;color:#f59e0b}.warning-box strong{display:block;margin-bottom:.5rem;font-weight:600}.warning-box p{margin:0;line-height:1.6}@media (max-width: 1024px){.cleanup-content{grid-template-columns:1fr}}@media (max-width: 768px){.log-cleanup-container{padding:1rem}.cleanup-stats,.log-types-grid{grid-template-columns:1fr}}.system-page-container{padding:2rem;max-width:1400px;margin:0 auto}.system-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.system-header h1{font-size:2rem;color:#1a1a1a;margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.system-header h1 svg{color:#6366f1}.system-header p{color:#6b7280;margin:0}.header-actions{display:flex;gap:1rem;align-items:center}.btn-primary,.btn-outline,.btn-action{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s;border:none}.btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #6366f166}.btn-outline{background:#fff;border:1px solid #d1d5db;color:#374151}.btn-outline:hover{border-color:#6366f1;color:#6366f1}.btn-outline.danger{color:#ef4444}.btn-outline.danger:hover{border-color:#ef4444;background:#fef2f2}.btn-action{padding:.5rem 1rem;font-size:.875rem}.btn-action.danger{color:#ef4444;background:#fff;border:1px solid #fee2e2}.btn-action.danger:hover{background:#fef2f2;border-color:#ef4444}.btn-large{width:100%;justify-content:center;padding:1rem 2rem;font-size:1.125rem;margin-top:2rem}.system-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:1rem}.stat-card svg{color:#6366f1;flex-shrink:0}.stat-card>div{display:flex;flex-direction:column;gap:.25rem}.stat-value{font-size:1.75rem;font-weight:700;color:#1a1a1a}.stat-label{font-size:.875rem;color:#6b7280}.data-table{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.data-table h3{margin:0 0 1rem;font-size:1.25rem;color:#1a1a1a}.data-table table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:.75rem;font-weight:600;color:#6b7280;font-size:.875rem;border-bottom:2px solid #e5e7eb}.data-table td{padding:1rem .75rem;border-bottom:1px solid #e5e7eb;color:#374151}.data-table tr:last-child td{border-bottom:none}.data-table td strong{color:#1a1a1a;font-weight:600}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .75rem;border-radius:6px;font-size:.875rem;font-weight:600}.badge.active,.badge.success{background:#d1fae5;color:#065f46}.badge.trial{background:#fef3c7;color:#78350f}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.plan-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;border:2px solid #e5e7eb;transition:all .2s}.plan-card:hover{border-color:#6366f1;transform:translateY(-4px);box-shadow:0 12px 24px #00000026}.plan-header h3{margin:0 0 1rem;font-size:1.5rem;color:#1a1a1a}.plan-price{font-size:2.5rem;font-weight:700;color:#6366f1;margin-bottom:1.5rem}.plan-price span{font-size:1rem;color:#6b7280;font-weight:400}.plan-limits{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.plan-limits>div{display:flex;align-items:center;gap:.5rem;color:#6b7280}.plan-features{list-style:none;padding:0;margin:0 0 1.5rem}.plan-features li{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;color:#374151}.plan-features li svg{color:#10b981;flex-shrink:0}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.settings-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.settings-card h3{display:flex;align-items:center;gap:.5rem;margin:0 0 1.5rem;font-size:1.25rem;color:#1a1a1a}.settings-card h3 svg{color:#6366f1}.setting-item{margin-bottom:1.5rem}.setting-item label{display:block;margin-bottom:.5rem;font-weight:600;color:#374151}.form-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;background:#fff;color:#1a1a1a}.form-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-label span{color:#374151;font-weight:500}.backup-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.action-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;text-align:center}.action-card svg{color:#6366f1;margin:0 auto 1rem}.action-card h3{margin:0 0 .5rem;font-size:1.25rem;color:#1a1a1a}.action-card p{color:#6b7280;margin:0 0 1.5rem}.search-box{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fff;border:1px solid #d1d5db;border-radius:8px}.search-box svg{color:#6b7280}.search-box input{border:none;outline:none;background:transparent;color:#1a1a1a;width:200px}@media (max-width: 768px){.system-page-container{padding:1rem}.system-header{flex-direction:column;gap:1rem}.header-actions{width:100%;flex-direction:column}.search-box input{width:100%}.plans-grid,.settings-grid,.backup-actions{grid-template-columns:1fr}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:light;color:#0f172a;background-color:#f1f5f9;--brand-400: #818cf8;--brand-500: #6366f1;--brand-600: #4f46e5;--brand-700: #4338ca;--sidebar-width: 256px;--sidebar-collapsed-width: 60px;--header-height: 56px;--bg-page: #f1f5f9;--bg-surface: #ffffff;--bg-muted: #f8fafc;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border: #e2e8f0;--border-strong: #cbd5e1;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--shadow-lg: 0 8px 24px rgba(0,0,0,.12);--transition: .18s ease;--transition-slow: .3s cubic-bezier(.4,0,.2,1)}html,body{height:100%;min-width:320px}body{background:var(--bg-page);color:var(--text-primary)}#root{width:100%;height:100%}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--text-primary)}a{color:var(--brand-500);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer;border:none;background:none}button:focus-visible{outline:2px solid var(--brand-500);outline-offset:2px}input,textarea,select{font-family:inherit;font-size:inherit}img,svg{display:block;max-width:100%}ul,ol{list-style:none}
